diff options
| author | Arda Serdar Pektezol <1669855+pektezol@users.noreply.github.com> | 2023-07-03 23:16:42 +0300 |
|---|---|---|
| committer | Arda Serdar Pektezol <1669855+pektezol@users.noreply.github.com> | 2023-07-03 23:16:42 +0300 |
| commit | c071eeca829a18941fc29f4e4eb8b8f93a65b5c4 (patch) | |
| tree | 1c68bda13a67ce902e01a89d4b2434e91f457339 | |
| parent | fix: save uploaded demos as .dem in order for parser to work (#42) (diff) | |
| download | lphub-c071eeca829a18941fc29f4e4eb8b8f93a65b5c4.tar.gz lphub-c071eeca829a18941fc29f4e4eb8b8f93a65b5c4.tar.bz2 lphub-c071eeca829a18941fc29f4e4eb8b8f93a65b5c4.zip | |
docs: refactor docs
Former-commit-id: 3f3833af352d8758ca509a4fe3badedd5250b1ba
Diffstat (limited to '')
| -rw-r--r-- | backend/controllers/homeController.go | 26 | ||||
| -rw-r--r-- | backend/controllers/loginController.go | 38 | ||||
| -rw-r--r-- | backend/controllers/mapController.go | 68 | ||||
| -rw-r--r-- | backend/controllers/modController.go | 54 | ||||
| -rw-r--r-- | backend/controllers/recordController.go | 44 | ||||
| -rw-r--r-- | backend/controllers/userController.go | 74 | ||||
| -rw-r--r-- | docs/docs.go | 112 | ||||
| -rw-r--r-- | docs/swagger.json | 112 | ||||
| -rw-r--r-- | docs/swagger.yaml | 80 |
9 files changed, 304 insertions, 304 deletions
diff --git a/backend/controllers/homeController.go b/backend/controllers/homeController.go index b5c6b60..2780e63 100644 --- a/backend/controllers/homeController.go +++ b/backend/controllers/homeController.go | |||
| @@ -23,12 +23,12 @@ func Home(c *gin.Context) { | |||
| 23 | 23 | ||
| 24 | // GET Rankings | 24 | // GET Rankings |
| 25 | // | 25 | // |
| 26 | // @Summary Get rankings of every player. | 26 | // @Description Get rankings of every player. |
| 27 | // @Tags rankings | 27 | // @Tags rankings |
| 28 | // @Produce json | 28 | // @Produce json |
| 29 | // @Success 200 {object} models.Response{data=models.RankingsResponse} | 29 | // @Success 200 {object} models.Response{data=models.RankingsResponse} |
| 30 | // @Failure 400 {object} models.Response | 30 | // @Failure 400 {object} models.Response |
| 31 | // @Router /demo [get] | 31 | // @Router /rankings [get] |
| 32 | func Rankings(c *gin.Context) { | 32 | func Rankings(c *gin.Context) { |
| 33 | rows, err := database.DB.Query(`SELECT steam_id, user_name FROM users`) | 33 | rows, err := database.DB.Query(`SELECT steam_id, user_name FROM users`) |
| 34 | if err != nil { | 34 | if err != nil { |
| @@ -125,13 +125,13 @@ func Rankings(c *gin.Context) { | |||
| 125 | 125 | ||
| 126 | // GET Search With Query | 126 | // GET Search With Query |
| 127 | // | 127 | // |
| 128 | // @Summary Get all user and map data matching to the query. | 128 | // @Description Get all user and map data matching to the query. |
| 129 | // @Tags search | 129 | // @Tags search |
| 130 | // @Produce json | 130 | // @Produce json |
| 131 | // @Param q query string false "Search user or map name." | 131 | // @Param q query string false "Search user or map name." |
| 132 | // @Success 200 {object} models.Response{data=models.SearchResponse} | 132 | // @Success 200 {object} models.Response{data=models.SearchResponse} |
| 133 | // @Failure 400 {object} models.Response | 133 | // @Failure 400 {object} models.Response |
| 134 | // @Router /search [get] | 134 | // @Router /search [get] |
| 135 | func SearchWithQuery(c *gin.Context) { | 135 | func SearchWithQuery(c *gin.Context) { |
| 136 | query := c.Query("q") | 136 | query := c.Query("q") |
| 137 | query = strings.ToLower(query) | 137 | query = strings.ToLower(query) |
diff --git a/backend/controllers/loginController.go b/backend/controllers/loginController.go index b30d26e..ae6e957 100644 --- a/backend/controllers/loginController.go +++ b/backend/controllers/loginController.go | |||
| @@ -17,13 +17,13 @@ import ( | |||
| 17 | 17 | ||
| 18 | // Login | 18 | // Login |
| 19 | // | 19 | // |
| 20 | // @Summary Get (redirect) login page for Steam auth. | 20 | // @Description Get (redirect) login page for Steam auth. |
| 21 | // @Tags login | 21 | // @Tags login |
| 22 | // @Accept json | 22 | // @Accept json |
| 23 | // @Produce json | 23 | // @Produce json |
| 24 | // @Success 200 {object} models.Response{data=models.LoginResponse} | 24 | // @Success 200 {object} models.Response{data=models.LoginResponse} |
| 25 | // @Failure 400 {object} models.Response | 25 | // @Failure 400 {object} models.Response |
| 26 | // @Router /login [get] | 26 | // @Router /login [get] |
| 27 | func Login(c *gin.Context) { | 27 | func Login(c *gin.Context) { |
| 28 | openID := steam_go.NewOpenId(c.Request) | 28 | openID := steam_go.NewOpenId(c.Request) |
| 29 | switch openID.Mode() { | 29 | switch openID.Mode() { |
| @@ -95,13 +95,13 @@ func Login(c *gin.Context) { | |||
| 95 | 95 | ||
| 96 | // GET Token | 96 | // GET Token |
| 97 | // | 97 | // |
| 98 | // @Summary Gets the token cookie value from the user. | 98 | // @Description Gets the token cookie value from the user. |
| 99 | // @Tags auth | 99 | // @Tags auth |
| 100 | // @Produce json | 100 | // @Produce json |
| 101 | // | 101 | // |
| 102 | // @Success 200 {object} models.Response{data=models.LoginResponse} | 102 | // @Success 200 {object} models.Response{data=models.LoginResponse} |
| 103 | // @Failure 404 {object} models.Response | 103 | // @Failure 404 {object} models.Response |
| 104 | // @Router /token [get] | 104 | // @Router /token [get] |
| 105 | func GetCookie(c *gin.Context) { | 105 | func GetCookie(c *gin.Context) { |
| 106 | cookie, err := c.Cookie("token") | 106 | cookie, err := c.Cookie("token") |
| 107 | if err != nil { | 107 | if err != nil { |
| @@ -119,13 +119,13 @@ func GetCookie(c *gin.Context) { | |||
| 119 | 119 | ||
| 120 | // DELETE Token | 120 | // DELETE Token |
| 121 | // | 121 | // |
| 122 | // @Summary Deletes the token cookie from the user. | 122 | // @Description Deletes the token cookie from the user. |
| 123 | // @Tags auth | 123 | // @Tags auth |
| 124 | // @Produce json | 124 | // @Produce json |
| 125 | // | 125 | // |
| 126 | // @Success 200 {object} models.Response{data=models.LoginResponse} | 126 | // @Success 200 {object} models.Response{data=models.LoginResponse} |
| 127 | // @Failure 404 {object} models.Response | 127 | // @Failure 404 {object} models.Response |
| 128 | // @Router /token [delete] | 128 | // @Router /token [delete] |
| 129 | func DeleteCookie(c *gin.Context) { | 129 | func DeleteCookie(c *gin.Context) { |
| 130 | cookie, err := c.Cookie("token") | 130 | cookie, err := c.Cookie("token") |
| 131 | if err != nil { | 131 | if err != nil { |
diff --git a/backend/controllers/mapController.go b/backend/controllers/mapController.go index 7a26554..52b6623 100644 --- a/backend/controllers/mapController.go +++ b/backend/controllers/mapController.go | |||
| @@ -11,13 +11,13 @@ import ( | |||
| 11 | 11 | ||
| 12 | // GET Map Summary | 12 | // GET Map Summary |
| 13 | // | 13 | // |
| 14 | // @Summary Get map summary with specified id. | 14 | // @Description Get map summary with specified id. |
| 15 | // @Tags maps | 15 | // @Tags maps |
| 16 | // @Produce json | 16 | // @Produce json |
| 17 | // @Param id path int true "Map ID" | 17 | // @Param id path int true "Map ID" |
| 18 | // @Success 200 {object} models.Response{data=models.MapSummaryResponse} | 18 | // @Success 200 {object} models.Response{data=models.MapSummaryResponse} |
| 19 | // @Failure 400 {object} models.Response | 19 | // @Failure 400 {object} models.Response |
| 20 | // @Router /maps/{id}/summary [get] | 20 | // @Router /maps/{id}/summary [get] |
| 21 | func FetchMapSummary(c *gin.Context) { | 21 | func FetchMapSummary(c *gin.Context) { |
| 22 | id := c.Param("id") | 22 | id := c.Param("id") |
| 23 | response := models.MapSummaryResponse{Map: models.Map{}, Summary: models.MapSummary{Routes: []models.MapRoute{}}} | 23 | response := models.MapSummaryResponse{Map: models.Map{}, Summary: models.MapSummary{Routes: []models.MapRoute{}}} |
| @@ -69,13 +69,13 @@ func FetchMapSummary(c *gin.Context) { | |||
| 69 | 69 | ||
| 70 | // GET Map Leaderboards | 70 | // GET Map Leaderboards |
| 71 | // | 71 | // |
| 72 | // @Summary Get map leaderboards with specified id. | 72 | // @Description Get map leaderboards with specified id. |
| 73 | // @Tags maps | 73 | // @Tags maps |
| 74 | // @Produce json | 74 | // @Produce json |
| 75 | // @Param id path int true "Map ID" | 75 | // @Param id path int true "Map ID" |
| 76 | // @Success 200 {object} models.Response{data=models.Map{data=models.MapRecords}} | 76 | // @Success 200 {object} models.Response{data=models.Map{data=models.MapRecords}} |
| 77 | // @Failure 400 {object} models.Response | 77 | // @Failure 400 {object} models.Response |
| 78 | // @Router /maps/{id}/leaderboards [get] | 78 | // @Router /maps/{id}/leaderboards [get] |
| 79 | func FetchMapLeaderboards(c *gin.Context) { | 79 | func FetchMapLeaderboards(c *gin.Context) { |
| 80 | // TODO: make new response type | 80 | // TODO: make new response type |
| 81 | id := c.Param("id") | 81 | id := c.Param("id") |
| @@ -186,12 +186,12 @@ func FetchMapLeaderboards(c *gin.Context) { | |||
| 186 | 186 | ||
| 187 | // GET Games | 187 | // GET Games |
| 188 | // | 188 | // |
| 189 | // @Summary Get games from the leaderboards. | 189 | // @Description Get games from the leaderboards. |
| 190 | // @Tags games & chapters | 190 | // @Tags games & chapters |
| 191 | // @Produce json | 191 | // @Produce json |
| 192 | // @Success 200 {object} models.Response{data=[]models.Game} | 192 | // @Success 200 {object} models.Response{data=[]models.Game} |
| 193 | // @Failure 400 {object} models.Response | 193 | // @Failure 400 {object} models.Response |
| 194 | // @Router /games [get] | 194 | // @Router /games [get] |
| 195 | func FetchGames(c *gin.Context) { | 195 | func FetchGames(c *gin.Context) { |
| 196 | rows, err := database.DB.Query(`SELECT id, name FROM games`) | 196 | rows, err := database.DB.Query(`SELECT id, name FROM games`) |
| 197 | if err != nil { | 197 | if err != nil { |
| @@ -216,13 +216,13 @@ func FetchGames(c *gin.Context) { | |||
| 216 | 216 | ||
| 217 | // GET Chapters of a Game | 217 | // GET Chapters of a Game |
| 218 | // | 218 | // |
| 219 | // @Summary Get chapters from the specified game id. | 219 | // @Description Get chapters from the specified game id. |
| 220 | // @Tags games & chapters | 220 | // @Tags games & chapters |
| 221 | // @Produce json | 221 | // @Produce json |
| 222 | // @Param id path int true "Game ID" | 222 | // @Param id path int true "Game ID" |
| 223 | // @Success 200 {object} models.Response{data=models.ChaptersResponse} | 223 | // @Success 200 {object} models.Response{data=models.ChaptersResponse} |
| 224 | // @Failure 400 {object} models.Response | 224 | // @Failure 400 {object} models.Response |
| 225 | // @Router /games/{id} [get] | 225 | // @Router /games/{id} [get] |
| 226 | func FetchChapters(c *gin.Context) { | 226 | func FetchChapters(c *gin.Context) { |
| 227 | gameID := c.Param("id") | 227 | gameID := c.Param("id") |
| 228 | intID, err := strconv.Atoi(gameID) | 228 | intID, err := strconv.Atoi(gameID) |
| @@ -258,13 +258,13 @@ func FetchChapters(c *gin.Context) { | |||
| 258 | 258 | ||
| 259 | // GET Maps of a Chapter | 259 | // GET Maps of a Chapter |
| 260 | // | 260 | // |
| 261 | // @Summary Get maps from the specified chapter id. | 261 | // @Description Get maps from the specified chapter id. |
| 262 | // @Tags games & chapters | 262 | // @Tags games & chapters |
| 263 | // @Produce json | 263 | // @Produce json |
| 264 | // @Param id path int true "Chapter ID" | 264 | // @Param id path int true "Chapter ID" |
| 265 | // @Success 200 {object} models.Response{data=models.ChapterMapsResponse} | 265 | // @Success 200 {object} models.Response{data=models.ChapterMapsResponse} |
| 266 | // @Failure 400 {object} models.Response | 266 | // @Failure 400 {object} models.Response |
| 267 | // @Router /chapters/{id} [get] | 267 | // @Router /chapters/{id} [get] |
| 268 | func FetchChapterMaps(c *gin.Context) { | 268 | func FetchChapterMaps(c *gin.Context) { |
| 269 | chapterID := c.Param("id") | 269 | chapterID := c.Param("id") |
| 270 | intID, err := strconv.Atoi(chapterID) | 270 | intID, err := strconv.Atoi(chapterID) |
diff --git a/backend/controllers/modController.go b/backend/controllers/modController.go index f1874f7..d6dc4d4 100644 --- a/backend/controllers/modController.go +++ b/backend/controllers/modController.go | |||
| @@ -11,15 +11,15 @@ import ( | |||
| 11 | 11 | ||
| 12 | // POST Map Summary | 12 | // POST Map Summary |
| 13 | // | 13 | // |
| 14 | // @Summary Create map summary with specified map id. | 14 | // @Description Create map summary with specified map id. |
| 15 | // @Tags maps | 15 | // @Tags maps |
| 16 | // @Produce json | 16 | // @Produce json |
| 17 | // @Param Authorization header string true "JWT Token" | 17 | // @Param Authorization header string true "JWT Token" |
| 18 | // @Param id path int true "Map ID" | 18 | // @Param id path int true "Map ID" |
| 19 | // @Param request body models.CreateMapSummaryRequest true "Body" | 19 | // @Param request body models.CreateMapSummaryRequest true "Body" |
| 20 | // @Success 200 {object} models.Response{data=models.CreateMapSummaryRequest} | 20 | // @Success 200 {object} models.Response{data=models.CreateMapSummaryRequest} |
| 21 | // @Failure 400 {object} models.Response | 21 | // @Failure 400 {object} models.Response |
| 22 | // @Router /maps/{id}/summary [post] | 22 | // @Router /maps/{id}/summary [post] |
| 23 | func CreateMapSummary(c *gin.Context) { | 23 | func CreateMapSummary(c *gin.Context) { |
| 24 | // Check if user exists | 24 | // Check if user exists |
| 25 | user, exists := c.Get("user") | 25 | user, exists := c.Get("user") |
| @@ -97,15 +97,15 @@ func CreateMapSummary(c *gin.Context) { | |||
| 97 | 97 | ||
| 98 | // PUT Map Summary | 98 | // PUT Map Summary |
| 99 | // | 99 | // |
| 100 | // @Summary Edit map summary with specified map id. | 100 | // @Description Edit map summary with specified map id. |
| 101 | // @Tags maps | 101 | // @Tags maps |
| 102 | // @Produce json | 102 | // @Produce json |
| 103 | // @Param Authorization header string true "JWT Token" | 103 | // @Param Authorization header string true "JWT Token" |
| 104 | // @Param id path int true "Map ID" | 104 | // @Param id path int true "Map ID" |
| 105 | // @Param request body models.EditMapSummaryRequest true "Body" | 105 | // @Param request body models.EditMapSummaryRequest true "Body" |
| 106 | // @Success 200 {object} models.Response{data=models.EditMapSummaryRequest} | 106 | // @Success 200 {object} models.Response{data=models.EditMapSummaryRequest} |
| 107 | // @Failure 400 {object} models.Response | 107 | // @Failure 400 {object} models.Response |
| 108 | // @Router /maps/{id}/summary [put] | 108 | // @Router /maps/{id}/summary [put] |
| 109 | func EditMapSummary(c *gin.Context) { | 109 | func EditMapSummary(c *gin.Context) { |
| 110 | // Check if user exists | 110 | // Check if user exists |
| 111 | user, exists := c.Get("user") | 111 | user, exists := c.Get("user") |
| @@ -180,15 +180,15 @@ func EditMapSummary(c *gin.Context) { | |||
| 180 | 180 | ||
| 181 | // DELETE Map Summary | 181 | // DELETE Map Summary |
| 182 | // | 182 | // |
| 183 | // @Summary Delete map summary with specified map id. | 183 | // @Description Delete map summary with specified map id. |
| 184 | // @Tags maps | 184 | // @Tags maps |
| 185 | // @Produce json | 185 | // @Produce json |
| 186 | // @Param Authorization header string true "JWT Token" | 186 | // @Param Authorization header string true "JWT Token" |
| 187 | // @Param id path int true "Map ID" | 187 | // @Param id path int true "Map ID" |
| 188 | // @Param request body models.DeleteMapSummaryRequest true "Body" | 188 | // @Param request body models.DeleteMapSummaryRequest true "Body" |
| 189 | // @Success 200 {object} models.Response{data=models.DeleteMapSummaryRequest} | 189 | // @Success 200 {object} models.Response{data=models.DeleteMapSummaryRequest} |
| 190 | // @Failure 400 {object} models.Response | 190 | // @Failure 400 {object} models.Response |
| 191 | // @Router /maps/{id}/summary [delete] | 191 | // @Router /maps/{id}/summary [delete] |
| 192 | func DeleteMapSummary(c *gin.Context) { | 192 | func DeleteMapSummary(c *gin.Context) { |
| 193 | // Check if user exists | 193 | // Check if user exists |
| 194 | user, exists := c.Get("user") | 194 | user, exists := c.Get("user") |
diff --git a/backend/controllers/recordController.go b/backend/controllers/recordController.go index 409a2e7..af8eb63 100644 --- a/backend/controllers/recordController.go +++ b/backend/controllers/recordController.go | |||
| @@ -21,20 +21,20 @@ import ( | |||
| 21 | 21 | ||
| 22 | // POST Record | 22 | // POST Record |
| 23 | // | 23 | // |
| 24 | // @Summary Post record with demo of a specific map. | 24 | // @Description Post record with demo of a specific map. |
| 25 | // @Tags maps | 25 | // @Tags maps |
| 26 | // @Accept mpfd | 26 | // @Accept mpfd |
| 27 | // @Produce json | 27 | // @Produce json |
| 28 | // @Param id path int true "Map ID" | 28 | // @Param id path int true "Map ID" |
| 29 | // @Param Authorization header string true "JWT Token" | 29 | // @Param Authorization header string true "JWT Token" |
| 30 | // @Param host_demo formData file true "Host Demo" | 30 | // @Param host_demo formData file true "Host Demo" |
| 31 | // @Param partner_demo formData file false "Partner Demo" | 31 | // @Param partner_demo formData file false "Partner Demo" |
| 32 | // @Param is_partner_orange formData boolean false "Is Partner Orange" | 32 | // @Param is_partner_orange formData boolean false "Is Partner Orange" |
| 33 | // @Param partner_id formData string false "Partner ID" | 33 | // @Param partner_id formData string false "Partner ID" |
| 34 | // @Success 200 {object} models.Response | 34 | // @Success 200 {object} models.Response |
| 35 | // @Failure 400 {object} models.Response | 35 | // @Failure 400 {object} models.Response |
| 36 | // @Failure 401 {object} models.Response | 36 | // @Failure 401 {object} models.Response |
| 37 | // @Router /maps/{id}/record [post] | 37 | // @Router /maps/{id}/record [post] |
| 38 | func CreateRecordWithDemo(c *gin.Context) { | 38 | func CreateRecordWithDemo(c *gin.Context) { |
| 39 | mapId := c.Param("id") | 39 | mapId := c.Param("id") |
| 40 | // Check if user exists | 40 | // Check if user exists |
| @@ -189,14 +189,14 @@ func CreateRecordWithDemo(c *gin.Context) { | |||
| 189 | 189 | ||
| 190 | // GET Demo | 190 | // GET Demo |
| 191 | // | 191 | // |
| 192 | // @Summary Get demo with specified demo uuid. | 192 | // @Description Get demo with specified demo uuid. |
| 193 | // @Tags demo | 193 | // @Tags demo |
| 194 | // @Accept json | 194 | // @Accept json |
| 195 | // @Produce octet-stream | 195 | // @Produce octet-stream |
| 196 | // @Param uuid query int true "Demo UUID" | 196 | // @Param uuid query string true "Demo UUID" |
| 197 | // @Success 200 {file} binary "Demo File" | 197 | // @Success 200 {file} binary "Demo File" |
| 198 | // @Failure 400 {object} models.Response | 198 | // @Failure 400 {object} models.Response |
| 199 | // @Router /demos [get] | 199 | // @Router /demos [get] |
| 200 | func DownloadDemoWithID(c *gin.Context) { | 200 | func DownloadDemoWithID(c *gin.Context) { |
| 201 | uuid := c.Query("uuid") | 201 | uuid := c.Query("uuid") |
| 202 | var locationID string | 202 | var locationID string |
diff --git a/backend/controllers/userController.go b/backend/controllers/userController.go index cbce0fe..e73b1fe 100644 --- a/backend/controllers/userController.go +++ b/backend/controllers/userController.go | |||
| @@ -13,15 +13,15 @@ import ( | |||
| 13 | 13 | ||
| 14 | // GET Profile | 14 | // GET Profile |
| 15 | // | 15 | // |
| 16 | // @Summary Get profile page of session user. | 16 | // @Description Get profile page of session user. |
| 17 | // @Tags users | 17 | // @Tags users |
| 18 | // @Accept json | 18 | // @Accept json |
| 19 | // @Produce json | 19 | // @Produce json |
| 20 | // @Param Authorization header string true "JWT Token" | 20 | // @Param Authorization header string true "JWT Token" |
| 21 | // @Success 200 {object} models.Response{data=models.ProfileResponse} | 21 | // @Success 200 {object} models.Response{data=models.ProfileResponse} |
| 22 | // @Failure 400 {object} models.Response | 22 | // @Failure 400 {object} models.Response |
| 23 | // @Failure 401 {object} models.Response | 23 | // @Failure 401 {object} models.Response |
| 24 | // @Router /profile [get] | 24 | // @Router /profile [get] |
| 25 | func Profile(c *gin.Context) { | 25 | func Profile(c *gin.Context) { |
| 26 | // Check if user exists | 26 | // Check if user exists |
| 27 | user, exists := c.Get("user") | 27 | user, exists := c.Get("user") |
| @@ -100,15 +100,15 @@ func Profile(c *gin.Context) { | |||
| 100 | 100 | ||
| 101 | // GET User | 101 | // GET User |
| 102 | // | 102 | // |
| 103 | // @Summary Get profile page of another user. | 103 | // @Description Get profile page of another user. |
| 104 | // @Tags users | 104 | // @Tags users |
| 105 | // @Accept json | 105 | // @Accept json |
| 106 | // @Produce json | 106 | // @Produce json |
| 107 | // @Param id path int true "User ID" | 107 | // @Param id path int true "User ID" |
| 108 | // @Success 200 {object} models.Response{data=models.ProfileResponse} | 108 | // @Success 200 {object} models.Response{data=models.ProfileResponse} |
| 109 | // @Failure 400 {object} models.Response | 109 | // @Failure 400 {object} models.Response |
| 110 | // @Failure 404 {object} models.Response | 110 | // @Failure 404 {object} models.Response |
| 111 | // @Router /users/{id} [get] | 111 | // @Router /users/{id} [get] |
| 112 | func FetchUser(c *gin.Context) { | 112 | func FetchUser(c *gin.Context) { |
| 113 | id := c.Param("id") | 113 | id := c.Param("id") |
| 114 | // Check if id is all numbers and 17 length | 114 | // Check if id is all numbers and 17 length |
| @@ -202,15 +202,15 @@ func FetchUser(c *gin.Context) { | |||
| 202 | 202 | ||
| 203 | // PUT Profile | 203 | // PUT Profile |
| 204 | // | 204 | // |
| 205 | // @Summary Update profile page of session user. | 205 | // @Description Update profile page of session user. |
| 206 | // @Tags users | 206 | // @Tags users |
| 207 | // @Accept json | 207 | // @Accept json |
| 208 | // @Produce json | 208 | // @Produce json |
| 209 | // @Param Authorization header string true "JWT Token" | 209 | // @Param Authorization header string true "JWT Token" |
| 210 | // @Success 200 {object} models.Response{data=models.ProfileResponse} | 210 | // @Success 200 {object} models.Response{data=models.ProfileResponse} |
| 211 | // @Failure 400 {object} models.Response | 211 | // @Failure 400 {object} models.Response |
| 212 | // @Failure 401 {object} models.Response | 212 | // @Failure 401 {object} models.Response |
| 213 | // @Router /profile [post] | 213 | // @Router /profile [post] |
| 214 | func UpdateUser(c *gin.Context) { | 214 | func UpdateUser(c *gin.Context) { |
| 215 | // Check if user exists | 215 | // Check if user exists |
| 216 | user, exists := c.Get("user") | 216 | user, exists := c.Get("user") |
| @@ -245,16 +245,16 @@ func UpdateUser(c *gin.Context) { | |||
| 245 | 245 | ||
| 246 | // PUT Profile/CountryCode | 246 | // PUT Profile/CountryCode |
| 247 | // | 247 | // |
| 248 | // @Summary Update country code of session user. | 248 | // @Description Update country code of session user. |
| 249 | // @Tags users | 249 | // @Tags users |
| 250 | // @Accept json | 250 | // @Accept json |
| 251 | // @Produce json | 251 | // @Produce json |
| 252 | // @Param Authorization header string true "JWT Token" | 252 | // @Param Authorization header string true "JWT Token" |
| 253 | // @Param country_code query string true "Country Code [XX]" | 253 | // @Param country_code query string true "Country Code [XX]" |
| 254 | // @Success 200 {object} models.Response | 254 | // @Success 200 {object} models.Response |
| 255 | // @Failure 400 {object} models.Response | 255 | // @Failure 400 {object} models.Response |
| 256 | // @Failure 401 {object} models.Response | 256 | // @Failure 401 {object} models.Response |
| 257 | // @Router /profile [put] | 257 | // @Router /profile [put] |
| 258 | func UpdateCountryCode(c *gin.Context) { | 258 | func UpdateCountryCode(c *gin.Context) { |
| 259 | // Check if user exists | 259 | // Check if user exists |
| 260 | user, exists := c.Get("user") | 260 | user, exists := c.Get("user") |
diff --git a/docs/docs.go b/docs/docs.go index bb14382..57984f4 100644 --- a/docs/docs.go +++ b/docs/docs.go | |||
| @@ -22,13 +22,13 @@ const docTemplate = `{ | |||
| 22 | "paths": { | 22 | "paths": { |
| 23 | "/chapters/{id}": { | 23 | "/chapters/{id}": { |
| 24 | "get": { | 24 | "get": { |
| 25 | "description": "Get maps from the specified chapter id.", | ||
| 25 | "produces": [ | 26 | "produces": [ |
| 26 | "application/json" | 27 | "application/json" |
| 27 | ], | 28 | ], |
| 28 | "tags": [ | 29 | "tags": [ |
| 29 | "games \u0026 chapters" | 30 | "games \u0026 chapters" |
| 30 | ], | 31 | ], |
| 31 | "summary": "Get maps from the specified chapter id.", | ||
| 32 | "parameters": [ | 32 | "parameters": [ |
| 33 | { | 33 | { |
| 34 | "type": "integer", | 34 | "type": "integer", |
| @@ -66,45 +66,9 @@ const docTemplate = `{ | |||
| 66 | } | 66 | } |
| 67 | } | 67 | } |
| 68 | }, | 68 | }, |
| 69 | "/demo": { | ||
| 70 | "get": { | ||
| 71 | "produces": [ | ||
| 72 | "application/json" | ||
| 73 | ], | ||
| 74 | "tags": [ | ||
| 75 | "rankings" | ||
| 76 | ], | ||
| 77 | "summary": "Get rankings of every player.", | ||
| 78 | "responses": { | ||
| 79 | "200": { | ||
| 80 | "description": "OK", | ||
| 81 | "schema": { | ||
| 82 | "allOf": [ | ||
| 83 | { | ||
| 84 | "$ref": "#/definitions/models.Response" | ||
| 85 | }, | ||
| 86 | { | ||
| 87 | "type": "object", | ||
| 88 | "properties": { | ||
| 89 | "data": { | ||
| 90 | "$ref": "#/definitions/models.RankingsResponse" | ||
| 91 | } | ||
| 92 | } | ||
| 93 | } | ||
| 94 | ] | ||
| 95 | } | ||
| 96 | }, | ||
| 97 | "400": { | ||
| 98 | "description": "Bad Request", | ||
| 99 | "schema": { | ||
| 100 | "$ref": "#/definitions/models.Response" | ||
| 101 | } | ||
| 102 | } | ||
| 103 | } | ||
| 104 | } | ||
| 105 | }, | ||
| 106 | "/demos": { | 69 | "/demos": { |
| 107 | "get": { | 70 | "get": { |
| 71 | "description": "Get demo with specified demo uuid.", | ||
| 108 | "consumes": [ | 72 | "consumes": [ |
| 109 | "application/json" | 73 | "application/json" |
| 110 | ], | 74 | ], |
| @@ -114,10 +78,9 @@ const docTemplate = `{ | |||
| 114 | "tags": [ | 78 | "tags": [ |
| 115 | "demo" | 79 | "demo" |
| 116 | ], | 80 | ], |
| 117 | "summary": "Get demo with specified demo uuid.", | ||
| 118 | "parameters": [ | 81 | "parameters": [ |
| 119 | { | 82 | { |
| 120 | "type": "integer", | 83 | "type": "string", |
| 121 | "description": "Demo UUID", | 84 | "description": "Demo UUID", |
| 122 | "name": "uuid", | 85 | "name": "uuid", |
| 123 | "in": "query", | 86 | "in": "query", |
| @@ -142,13 +105,13 @@ const docTemplate = `{ | |||
| 142 | }, | 105 | }, |
| 143 | "/games": { | 106 | "/games": { |
| 144 | "get": { | 107 | "get": { |
| 108 | "description": "Get games from the leaderboards.", | ||
| 145 | "produces": [ | 109 | "produces": [ |
| 146 | "application/json" | 110 | "application/json" |
| 147 | ], | 111 | ], |
| 148 | "tags": [ | 112 | "tags": [ |
| 149 | "games \u0026 chapters" | 113 | "games \u0026 chapters" |
| 150 | ], | 114 | ], |
| 151 | "summary": "Get games from the leaderboards.", | ||
| 152 | "responses": { | 115 | "responses": { |
| 153 | "200": { | 116 | "200": { |
| 154 | "description": "OK", | 117 | "description": "OK", |
| @@ -182,13 +145,13 @@ const docTemplate = `{ | |||
| 182 | }, | 145 | }, |
| 183 | "/games/{id}": { | 146 | "/games/{id}": { |
| 184 | "get": { | 147 | "get": { |
| 148 | "description": "Get chapters from the specified game id.", | ||
| 185 | "produces": [ | 149 | "produces": [ |
| 186 | "application/json" | 150 | "application/json" |
| 187 | ], | 151 | ], |
| 188 | "tags": [ | 152 | "tags": [ |
| 189 | "games \u0026 chapters" | 153 | "games \u0026 chapters" |
| 190 | ], | 154 | ], |
| 191 | "summary": "Get chapters from the specified game id.", | ||
| 192 | "parameters": [ | 155 | "parameters": [ |
| 193 | { | 156 | { |
| 194 | "type": "integer", | 157 | "type": "integer", |
| @@ -228,6 +191,7 @@ const docTemplate = `{ | |||
| 228 | }, | 191 | }, |
| 229 | "/login": { | 192 | "/login": { |
| 230 | "get": { | 193 | "get": { |
| 194 | "description": "Get (redirect) login page for Steam auth.", | ||
| 231 | "consumes": [ | 195 | "consumes": [ |
| 232 | "application/json" | 196 | "application/json" |
| 233 | ], | 197 | ], |
| @@ -237,7 +201,6 @@ const docTemplate = `{ | |||
| 237 | "tags": [ | 201 | "tags": [ |
| 238 | "login" | 202 | "login" |
| 239 | ], | 203 | ], |
| 240 | "summary": "Get (redirect) login page for Steam auth.", | ||
| 241 | "responses": { | 204 | "responses": { |
| 242 | "200": { | 205 | "200": { |
| 243 | "description": "OK", | 206 | "description": "OK", |
| @@ -268,13 +231,13 @@ const docTemplate = `{ | |||
| 268 | }, | 231 | }, |
| 269 | "/maps/{id}/leaderboards": { | 232 | "/maps/{id}/leaderboards": { |
| 270 | "get": { | 233 | "get": { |
| 234 | "description": "Get map leaderboards with specified id.", | ||
| 271 | "produces": [ | 235 | "produces": [ |
| 272 | "application/json" | 236 | "application/json" |
| 273 | ], | 237 | ], |
| 274 | "tags": [ | 238 | "tags": [ |
| 275 | "maps" | 239 | "maps" |
| 276 | ], | 240 | ], |
| 277 | "summary": "Get map leaderboards with specified id.", | ||
| 278 | "parameters": [ | 241 | "parameters": [ |
| 279 | { | 242 | { |
| 280 | "type": "integer", | 243 | "type": "integer", |
| @@ -326,6 +289,7 @@ const docTemplate = `{ | |||
| 326 | }, | 289 | }, |
| 327 | "/maps/{id}/record": { | 290 | "/maps/{id}/record": { |
| 328 | "post": { | 291 | "post": { |
| 292 | "description": "Post record with demo of a specific map.", | ||
| 329 | "consumes": [ | 293 | "consumes": [ |
| 330 | "multipart/form-data" | 294 | "multipart/form-data" |
| 331 | ], | 295 | ], |
| @@ -335,7 +299,6 @@ const docTemplate = `{ | |||
| 335 | "tags": [ | 299 | "tags": [ |
| 336 | "maps" | 300 | "maps" |
| 337 | ], | 301 | ], |
| 338 | "summary": "Post record with demo of a specific map.", | ||
| 339 | "parameters": [ | 302 | "parameters": [ |
| 340 | { | 303 | { |
| 341 | "type": "integer", | 304 | "type": "integer", |
| @@ -401,13 +364,13 @@ const docTemplate = `{ | |||
| 401 | }, | 364 | }, |
| 402 | "/maps/{id}/summary": { | 365 | "/maps/{id}/summary": { |
| 403 | "get": { | 366 | "get": { |
| 367 | "description": "Get map summary with specified id.", | ||
| 404 | "produces": [ | 368 | "produces": [ |
| 405 | "application/json" | 369 | "application/json" |
| 406 | ], | 370 | ], |
| 407 | "tags": [ | 371 | "tags": [ |
| 408 | "maps" | 372 | "maps" |
| 409 | ], | 373 | ], |
| 410 | "summary": "Get map summary with specified id.", | ||
| 411 | "parameters": [ | 374 | "parameters": [ |
| 412 | { | 375 | { |
| 413 | "type": "integer", | 376 | "type": "integer", |
| @@ -445,13 +408,13 @@ const docTemplate = `{ | |||
| 445 | } | 408 | } |
| 446 | }, | 409 | }, |
| 447 | "put": { | 410 | "put": { |
| 411 | "description": "Edit map summary with specified map id.", | ||
| 448 | "produces": [ | 412 | "produces": [ |
| 449 | "application/json" | 413 | "application/json" |
| 450 | ], | 414 | ], |
| 451 | "tags": [ | 415 | "tags": [ |
| 452 | "maps" | 416 | "maps" |
| 453 | ], | 417 | ], |
| 454 | "summary": "Edit map summary with specified map id.", | ||
| 455 | "parameters": [ | 418 | "parameters": [ |
| 456 | { | 419 | { |
| 457 | "type": "string", | 420 | "type": "string", |
| @@ -505,13 +468,13 @@ const docTemplate = `{ | |||
| 505 | } | 468 | } |
| 506 | }, | 469 | }, |
| 507 | "post": { | 470 | "post": { |
| 471 | "description": "Create map summary with specified map id.", | ||
| 508 | "produces": [ | 472 | "produces": [ |
| 509 | "application/json" | 473 | "application/json" |
| 510 | ], | 474 | ], |
| 511 | "tags": [ | 475 | "tags": [ |
| 512 | "maps" | 476 | "maps" |
| 513 | ], | 477 | ], |
| 514 | "summary": "Create map summary with specified map id.", | ||
| 515 | "parameters": [ | 478 | "parameters": [ |
| 516 | { | 479 | { |
| 517 | "type": "string", | 480 | "type": "string", |
| @@ -565,13 +528,13 @@ const docTemplate = `{ | |||
| 565 | } | 528 | } |
| 566 | }, | 529 | }, |
| 567 | "delete": { | 530 | "delete": { |
| 531 | "description": "Delete map summary with specified map id.", | ||
| 568 | "produces": [ | 532 | "produces": [ |
| 569 | "application/json" | 533 | "application/json" |
| 570 | ], | 534 | ], |
| 571 | "tags": [ | 535 | "tags": [ |
| 572 | "maps" | 536 | "maps" |
| 573 | ], | 537 | ], |
| 574 | "summary": "Delete map summary with specified map id.", | ||
| 575 | "parameters": [ | 538 | "parameters": [ |
| 576 | { | 539 | { |
| 577 | "type": "string", | 540 | "type": "string", |
| @@ -627,6 +590,7 @@ const docTemplate = `{ | |||
| 627 | }, | 590 | }, |
| 628 | "/profile": { | 591 | "/profile": { |
| 629 | "get": { | 592 | "get": { |
| 593 | "description": "Get profile page of session user.", | ||
| 630 | "consumes": [ | 594 | "consumes": [ |
| 631 | "application/json" | 595 | "application/json" |
| 632 | ], | 596 | ], |
| @@ -636,7 +600,6 @@ const docTemplate = `{ | |||
| 636 | "tags": [ | 600 | "tags": [ |
| 637 | "users" | 601 | "users" |
| 638 | ], | 602 | ], |
| 639 | "summary": "Get profile page of session user.", | ||
| 640 | "parameters": [ | 603 | "parameters": [ |
| 641 | { | 604 | { |
| 642 | "type": "string", | 605 | "type": "string", |
| @@ -680,6 +643,7 @@ const docTemplate = `{ | |||
| 680 | } | 643 | } |
| 681 | }, | 644 | }, |
| 682 | "put": { | 645 | "put": { |
| 646 | "description": "Update country code of session user.", | ||
| 683 | "consumes": [ | 647 | "consumes": [ |
| 684 | "application/json" | 648 | "application/json" |
| 685 | ], | 649 | ], |
| @@ -689,7 +653,6 @@ const docTemplate = `{ | |||
| 689 | "tags": [ | 653 | "tags": [ |
| 690 | "users" | 654 | "users" |
| 691 | ], | 655 | ], |
| 692 | "summary": "Update country code of session user.", | ||
| 693 | "parameters": [ | 656 | "parameters": [ |
| 694 | { | 657 | { |
| 695 | "type": "string", | 658 | "type": "string", |
| @@ -728,6 +691,7 @@ const docTemplate = `{ | |||
| 728 | } | 691 | } |
| 729 | }, | 692 | }, |
| 730 | "post": { | 693 | "post": { |
| 694 | "description": "Update profile page of session user.", | ||
| 731 | "consumes": [ | 695 | "consumes": [ |
| 732 | "application/json" | 696 | "application/json" |
| 733 | ], | 697 | ], |
| @@ -737,7 +701,6 @@ const docTemplate = `{ | |||
| 737 | "tags": [ | 701 | "tags": [ |
| 738 | "users" | 702 | "users" |
| 739 | ], | 703 | ], |
| 740 | "summary": "Update profile page of session user.", | ||
| 741 | "parameters": [ | 704 | "parameters": [ |
| 742 | { | 705 | { |
| 743 | "type": "string", | 706 | "type": "string", |
| @@ -781,15 +744,52 @@ const docTemplate = `{ | |||
| 781 | } | 744 | } |
| 782 | } | 745 | } |
| 783 | }, | 746 | }, |
| 747 | "/rankings": { | ||
| 748 | "get": { | ||
| 749 | "description": "Get rankings of every player.", | ||
| 750 | "produces": [ | ||
| 751 | "application/json" | ||
| 752 | ], | ||
| 753 | "tags": [ | ||
| 754 | "rankings" | ||
| 755 | ], | ||
| 756 | "responses": { | ||
| 757 | "200": { | ||
| 758 | "description": "OK", | ||
| 759 | "schema": { | ||
| 760 | "allOf": [ | ||
| 761 | { | ||
| 762 | "$ref": "#/definitions/models.Response" | ||
| 763 | }, | ||
| 764 | { | ||
| 765 | "type": "object", | ||
| 766 | "properties": { | ||
| 767 | "data": { | ||
| 768 | "$ref": "#/definitions/models.RankingsResponse" | ||
| 769 | } | ||
| 770 | } | ||
| 771 | } | ||
| 772 | ] | ||
| 773 | } | ||
| 774 | }, | ||
| 775 | "400": { | ||
| 776 | "description": "Bad Request", | ||
| 777 | "schema": { | ||
| 778 | "$ref": "#/definitions/models.Response" | ||
| 779 | } | ||
| 780 | } | ||
| 781 | } | ||
| 782 | } | ||
| 783 | }, | ||
| 784 | "/search": { | 784 | "/search": { |
| 785 | "get": { | 785 | "get": { |
| 786 | "description": "Get all user and map data matching to the query.", | ||
| 786 | "produces": [ | 787 | "produces": [ |
| 787 | "application/json" | 788 | "application/json" |
| 788 | ], | 789 | ], |
| 789 | "tags": [ | 790 | "tags": [ |
| 790 | "search" | 791 | "search" |
| 791 | ], | 792 | ], |
| 792 | "summary": "Get all user and map data matching to the query.", | ||
| 793 | "parameters": [ | 793 | "parameters": [ |
| 794 | { | 794 | { |
| 795 | "type": "string", | 795 | "type": "string", |
| @@ -828,13 +828,13 @@ const docTemplate = `{ | |||
| 828 | }, | 828 | }, |
| 829 | "/token": { | 829 | "/token": { |
| 830 | "get": { | 830 | "get": { |
| 831 | "description": "Gets the token cookie value from the user.", | ||
| 831 | "produces": [ | 832 | "produces": [ |
| 832 | "application/json" | 833 | "application/json" |
| 833 | ], | 834 | ], |
| 834 | "tags": [ | 835 | "tags": [ |
| 835 | "auth" | 836 | "auth" |
| 836 | ], | 837 | ], |
| 837 | "summary": "Gets the token cookie value from the user.", | ||
| 838 | "responses": { | 838 | "responses": { |
| 839 | "200": { | 839 | "200": { |
| 840 | "description": "OK", | 840 | "description": "OK", |
| @@ -863,13 +863,13 @@ const docTemplate = `{ | |||
| 863 | } | 863 | } |
| 864 | }, | 864 | }, |
| 865 | "delete": { | 865 | "delete": { |
| 866 | "description": "Deletes the token cookie from the user.", | ||
| 866 | "produces": [ | 867 | "produces": [ |
| 867 | "application/json" | 868 | "application/json" |
| 868 | ], | 869 | ], |
| 869 | "tags": [ | 870 | "tags": [ |
| 870 | "auth" | 871 | "auth" |
| 871 | ], | 872 | ], |
| 872 | "summary": "Deletes the token cookie from the user.", | ||
| 873 | "responses": { | 873 | "responses": { |
| 874 | "200": { | 874 | "200": { |
| 875 | "description": "OK", | 875 | "description": "OK", |
| @@ -900,6 +900,7 @@ const docTemplate = `{ | |||
| 900 | }, | 900 | }, |
| 901 | "/users/{id}": { | 901 | "/users/{id}": { |
| 902 | "get": { | 902 | "get": { |
| 903 | "description": "Get profile page of another user.", | ||
| 903 | "consumes": [ | 904 | "consumes": [ |
| 904 | "application/json" | 905 | "application/json" |
| 905 | ], | 906 | ], |
| @@ -909,7 +910,6 @@ const docTemplate = `{ | |||
| 909 | "tags": [ | 910 | "tags": [ |
| 910 | "users" | 911 | "users" |
| 911 | ], | 912 | ], |
| 912 | "summary": "Get profile page of another user.", | ||
| 913 | "parameters": [ | 913 | "parameters": [ |
| 914 | { | 914 | { |
| 915 | "type": "integer", | 915 | "type": "integer", |
diff --git a/docs/swagger.json b/docs/swagger.json index 3530d2c..ef422ab 100644 --- a/docs/swagger.json +++ b/docs/swagger.json | |||
| @@ -15,13 +15,13 @@ | |||
| 15 | "paths": { | 15 | "paths": { |
| 16 | "/chapters/{id}": { | 16 | "/chapters/{id}": { |
| 17 | "get": { | 17 | "get": { |
| 18 | "description": "Get maps from the specified chapter id.", | ||
| 18 | "produces": [ | 19 | "produces": [ |
| 19 | "application/json" | 20 | "application/json" |
| 20 | ], | 21 | ], |
| 21 | "tags": [ | 22 | "tags": [ |
| 22 | "games \u0026 chapters" | 23 | "games \u0026 chapters" |
| 23 | ], | 24 | ], |
| 24 | "summary": "Get maps from the specified chapter id.", | ||
| 25 | "parameters": [ | 25 | "parameters": [ |
| 26 | { | 26 | { |
| 27 | "type": "integer", | 27 | "type": "integer", |
| @@ -59,45 +59,9 @@ | |||
| 59 | } | 59 | } |
| 60 | } | 60 | } |
| 61 | }, | 61 | }, |
| 62 | "/demo": { | ||
| 63 | "get": { | ||
| 64 | "produces": [ | ||
| 65 | "application/json" | ||
| 66 | ], | ||
| 67 | "tags": [ | ||
| 68 | "rankings" | ||
| 69 | ], | ||
| 70 | "summary": "Get rankings of every player.", | ||
| 71 | "responses": { | ||
| 72 | "200": { | ||
| 73 | "description": "OK", | ||
| 74 | "schema": { | ||
| 75 | "allOf": [ | ||
| 76 | { | ||
| 77 | "$ref": "#/definitions/models.Response" | ||
| 78 | }, | ||
| 79 | { | ||
| 80 | "type": "object", | ||
| 81 | "properties": { | ||
| 82 | "data": { | ||
| 83 | "$ref": "#/definitions/models.RankingsResponse" | ||
| 84 | } | ||
| 85 | } | ||
| 86 | } | ||
| 87 | ] | ||
| 88 | } | ||
| 89 | }, | ||
| 90 | "400": { | ||
| 91 | "description": "Bad Request", | ||
| 92 | "schema": { | ||
| 93 | "$ref": "#/definitions/models.Response" | ||
| 94 | } | ||
| 95 | } | ||
| 96 | } | ||
| 97 | } | ||
| 98 | }, | ||
| 99 | "/demos": { | 62 | "/demos": { |
| 100 | "get": { | 63 | "get": { |
| 64 | "description": "Get demo with specified demo uuid.", | ||
| 101 | "consumes": [ | 65 | "consumes": [ |
| 102 | "application/json" | 66 | "application/json" |
| 103 | ], | 67 | ], |
| @@ -107,10 +71,9 @@ | |||
| 107 | "tags": [ | 71 | "tags": [ |
| 108 | "demo" | 72 | "demo" |
| 109 | ], | 73 | ], |
| 110 | "summary": "Get demo with specified demo uuid.", | ||
| 111 | "parameters": [ | 74 | "parameters": [ |
| 112 | { | 75 | { |
| 113 | "type": "integer", | 76 | "type": "string", |
| 114 | "description": "Demo UUID", | 77 | "description": "Demo UUID", |
| 115 | "name": "uuid", | 78 | "name": "uuid", |
| 116 | "in": "query", | 79 | "in": "query", |
| @@ -135,13 +98,13 @@ | |||
| 135 | }, | 98 | }, |
| 136 | "/games": { | 99 | "/games": { |
| 137 | "get": { | 100 | "get": { |
| 101 | "description": "Get games from the leaderboards.", | ||
| 138 | "produces": [ | 102 | "produces": [ |
| 139 | "application/json" | 103 | "application/json" |
| 140 | ], | 104 | ], |
| 141 | "tags": [ | 105 | "tags": [ |
| 142 | "games \u0026 chapters" | 106 | "games \u0026 chapters" |
| 143 | ], | 107 | ], |
| 144 | "summary": "Get games from the leaderboards.", | ||
| 145 | "responses": { | 108 | "responses": { |
| 146 | "200": { | 109 | "200": { |
| 147 | "description": "OK", | 110 | "description": "OK", |
| @@ -175,13 +138,13 @@ | |||
| 175 | }, | 138 | }, |
| 176 | "/games/{id}": { | 139 | "/games/{id}": { |
| 177 | "get": { | 140 | "get": { |
| 141 | "description": "Get chapters from the specified game id.", | ||
| 178 | "produces": [ | 142 | "produces": [ |
| 179 | "application/json" | 143 | "application/json" |
| 180 | ], | 144 | ], |
| 181 | "tags": [ | 145 | "tags": [ |
| 182 | "games \u0026 chapters" | 146 | "games \u0026 chapters" |
| 183 | ], | 147 | ], |
| 184 | "summary": "Get chapters from the specified game id.", | ||
| 185 | "parameters": [ | 148 | "parameters": [ |
| 186 | { | 149 | { |
| 187 | "type": "integer", | 150 | "type": "integer", |
| @@ -221,6 +184,7 @@ | |||
| 221 | }, | 184 | }, |
| 222 | "/login": { | 185 | "/login": { |
| 223 | "get": { | 186 | "get": { |
| 187 | "description": "Get (redirect) login page for Steam auth.", | ||
| 224 | "consumes": [ | 188 | "consumes": [ |
| 225 | "application/json" | 189 | "application/json" |
| 226 | ], | 190 | ], |
| @@ -230,7 +194,6 @@ | |||
| 230 | "tags": [ | 194 | "tags": [ |
| 231 | "login" | 195 | "login" |
| 232 | ], | 196 | ], |
| 233 | "summary": "Get (redirect) login page for Steam auth.", | ||
| 234 | "responses": { | 197 | "responses": { |
| 235 | "200": { | 198 | "200": { |
| 236 | "description": "OK", | 199 | "description": "OK", |
| @@ -261,13 +224,13 @@ | |||
| 261 | }, | 224 | }, |
| 262 | "/maps/{id}/leaderboards": { | 225 | "/maps/{id}/leaderboards": { |
| 263 | "get": { | 226 | "get": { |
| 227 | "description": "Get map leaderboards with specified id.", | ||
| 264 | "produces": [ | 228 | "produces": [ |
| 265 | "application/json" | 229 | "application/json" |
| 266 | ], | 230 | ], |
| 267 | "tags": [ | 231 | "tags": [ |
| 268 | "maps" | 232 | "maps" |
| 269 | ], | 233 | ], |
| 270 | "summary": "Get map leaderboards with specified id.", | ||
| 271 | "parameters": [ | 234 | "parameters": [ |
| 272 | { | 235 | { |
| 273 | "type": "integer", | 236 | "type": "integer", |
| @@ -319,6 +282,7 @@ | |||
| 319 | }, | 282 | }, |
| 320 | "/maps/{id}/record": { | 283 | "/maps/{id}/record": { |
| 321 | "post": { | 284 | "post": { |
| 285 | "description": "Post record with demo of a specific map.", | ||
| 322 | "consumes": [ | 286 | "consumes": [ |
| 323 | "multipart/form-data" | 287 | "multipart/form-data" |
| 324 | ], | 288 | ], |
| @@ -328,7 +292,6 @@ | |||
| 328 | "tags": [ | 292 | "tags": [ |
| 329 | "maps" | 293 | "maps" |
| 330 | ], | 294 | ], |
| 331 | "summary": "Post record with demo of a specific map.", | ||
| 332 | "parameters": [ | 295 | "parameters": [ |
| 333 | { | 296 | { |
| 334 | "type": "integer", | 297 | "type": "integer", |
| @@ -394,13 +357,13 @@ | |||
| 394 | }, | 357 | }, |
| 395 | "/maps/{id}/summary": { | 358 | "/maps/{id}/summary": { |
| 396 | "get": { | 359 | "get": { |
| 360 | "description": "Get map summary with specified id.", | ||
| 397 | "produces": [ | 361 | "produces": [ |
| 398 | "application/json" | 362 | "application/json" |
| 399 | ], | 363 | ], |
| 400 | "tags": [ | 364 | "tags": [ |
| 401 | "maps" | 365 | "maps" |
| 402 | ], | 366 | ], |
| 403 | "summary": "Get map summary with specified id.", | ||
| 404 | "parameters": [ | 367 | "parameters": [ |
| 405 | { | 368 | { |
| 406 | "type": "integer", | 369 | "type": "integer", |
| @@ -438,13 +401,13 @@ | |||
| 438 | } | 401 | } |
| 439 | }, | 402 | }, |
| 440 | "put": { | 403 | "put": { |
| 404 | "description": "Edit map summary with specified map id.", | ||
| 441 | "produces": [ | 405 | "produces": [ |
| 442 | "application/json" | 406 | "application/json" |
| 443 | ], | 407 | ], |
| 444 | "tags": [ | 408 | "tags": [ |
| 445 | "maps" | 409 | "maps" |
| 446 | ], | 410 | ], |
| 447 | "summary": "Edit map summary with specified map id.", | ||
| 448 | "parameters": [ | 411 | "parameters": [ |
| 449 | { | 412 | { |
| 450 | "type": "string", | 413 | "type": "string", |
| @@ -498,13 +461,13 @@ | |||
| 498 | } | 461 | } |
| 499 | }, | 462 | }, |
| 500 | "post": { | 463 | "post": { |
| 464 | "description": "Create map summary with specified map id.", | ||
| 501 | "produces": [ | 465 | "produces": [ |
| 502 | "application/json" | 466 | "application/json" |
| 503 | ], | 467 | ], |
| 504 | "tags": [ | 468 | "tags": [ |
| 505 | "maps" | 469 | "maps" |
| 506 | ], | 470 | ], |
| 507 | "summary": "Create map summary with specified map id.", | ||
| 508 | "parameters": [ | 471 | "parameters": [ |
| 509 | { | 472 | { |
| 510 | "type": "string", | 473 | "type": "string", |
| @@ -558,13 +521,13 @@ | |||
| 558 | } | 521 | } |
| 559 | }, | 522 | }, |
| 560 | "delete": { | 523 | "delete": { |
| 524 | "description": "Delete map summary with specified map id.", | ||
| 561 | "produces": [ | 525 | "produces": [ |
| 562 | "application/json" | 526 | "application/json" |
| 563 | ], | 527 | ], |
| 564 | "tags": [ | 528 | "tags": [ |
| 565 | "maps" | 529 | "maps" |
| 566 | ], | 530 | ], |
| 567 | "summary": "Delete map summary with specified map id.", | ||
| 568 | "parameters": [ | 531 | "parameters": [ |
| 569 | { | 532 | { |
| 570 | "type": "string", | 533 | "type": "string", |
| @@ -620,6 +583,7 @@ | |||
| 620 | }, | 583 | }, |
| 621 | "/profile": { | 584 | "/profile": { |
| 622 | "get": { | 585 | "get": { |
| 586 | "description": "Get profile page of session user.", | ||
| 623 | "consumes": [ | 587 | "consumes": [ |
| 624 | "application/json" | 588 | "application/json" |
| 625 | ], | 589 | ], |
| @@ -629,7 +593,6 @@ | |||
| 629 | "tags": [ | 593 | "tags": [ |
| 630 | "users" | 594 | "users" |
| 631 | ], | 595 | ], |
| 632 | "summary": "Get profile page of session user.", | ||
| 633 | "parameters": [ | 596 | "parameters": [ |
| 634 | { | 597 | { |
| 635 | "type": "string", | 598 | "type": "string", |
| @@ -673,6 +636,7 @@ | |||
| 673 | } | 636 | } |
| 674 | }, | 637 | }, |
| 675 | "put": { | 638 | "put": { |
| 639 | "description": "Update country code of session user.", | ||
| 676 | "consumes": [ | 640 | "consumes": [ |
| 677 | "application/json" | 641 | "application/json" |
| 678 | ], | 642 | ], |
| @@ -682,7 +646,6 @@ | |||
| 682 | "tags": [ | 646 | "tags": [ |
| 683 | "users" | 647 | "users" |
| 684 | ], | 648 | ], |
| 685 | "summary": "Update country code of session user.", | ||
| 686 | "parameters": [ | 649 | "parameters": [ |
| 687 | { | 650 | { |
| 688 | "type": "string", | 651 | "type": "string", |
| @@ -721,6 +684,7 @@ | |||
| 721 | } | 684 | } |
| 722 | }, | 685 | }, |
| 723 | "post": { | 686 | "post": { |
| 687 | "description": "Update profile page of session user.", | ||
| 724 | "consumes": [ | 688 | "consumes": [ |
| 725 | "application/json" | 689 | "application/json" |
| 726 | ], | 690 | ], |
| @@ -730,7 +694,6 @@ | |||
| 730 | "tags": [ | 694 | "tags": [ |
| 731 | "users" | 695 | "users" |
| 732 | ], | 696 | ], |
| 733 | "summary": "Update profile page of session user.", | ||
| 734 | "parameters": [ | 697 | "parameters": [ |
| 735 | { | 698 | { |
| 736 | "type": "string", | 699 | "type": "string", |
| @@ -774,15 +737,52 @@ | |||
| 774 | } | 737 | } |
| 775 | } | 738 | } |
| 776 | }, | 739 | }, |
| 740 | "/rankings": { | ||
| 741 | "get": { | ||
| 742 | "description": "Get rankings of every player.", | ||
| 743 | "produces": [ | ||
| 744 | "application/json" | ||
| 745 | ], | ||
| 746 | "tags": [ | ||
| 747 | "rankings" | ||
| 748 | ], | ||
| 749 | "responses": { | ||
| 750 | "200": { | ||
| 751 | "description": "OK", | ||
| 752 | "schema": { | ||
| 753 | "allOf": [ | ||
| 754 | { | ||
| 755 | "$ref": "#/definitions/models.Response" | ||
| 756 | }, | ||
| 757 | { | ||
| 758 | "type": "object", | ||
| 759 | "properties": { | ||
| 760 | "data": { | ||
| 761 | "$ref": "#/definitions/models.RankingsResponse" | ||
| 762 | } | ||
| 763 | } | ||
| 764 | } | ||
| 765 | ] | ||
| 766 | } | ||
| 767 | }, | ||
| 768 | "400": { | ||
| 769 | "description": "Bad Request", | ||
| 770 | "schema": { | ||
| 771 | "$ref": "#/definitions/models.Response" | ||
| 772 | } | ||
| 773 | } | ||
| 774 | } | ||
| 775 | } | ||
| 776 | }, | ||
| 777 | "/search": { | 777 | "/search": { |
| 778 | "get": { | 778 | "get": { |
| 779 | "description": "Get all user and map data matching to the query.", | ||
| 779 | "produces": [ | 780 | "produces": [ |
| 780 | "application/json" | 781 | "application/json" |
| 781 | ], | 782 | ], |
| 782 | "tags": [ | 783 | "tags": [ |
| 783 | "search" | 784 | "search" |
| 784 | ], | 785 | ], |
| 785 | "summary": "Get all user and map data matching to the query.", | ||
| 786 | "parameters": [ | 786 | "parameters": [ |
| 787 | { | 787 | { |
| 788 | "type": "string", | 788 | "type": "string", |
| @@ -821,13 +821,13 @@ | |||
| 821 | }, | 821 | }, |
| 822 | "/token": { | 822 | "/token": { |
| 823 | "get": { | 823 | "get": { |
| 824 | "description": "Gets the token cookie value from the user.", | ||
| 824 | "produces": [ | 825 | "produces": [ |
| 825 | "application/json" | 826 | "application/json" |
| 826 | ], | 827 | ], |
| 827 | "tags": [ | 828 | "tags": [ |
| 828 | "auth" | 829 | "auth" |
| 829 | ], | 830 | ], |
| 830 | "summary": "Gets the token cookie value from the user.", | ||
| 831 | "responses": { | 831 | "responses": { |
| 832 | "200": { | 832 | "200": { |
| 833 | "description": "OK", | 833 | "description": "OK", |
| @@ -856,13 +856,13 @@ | |||
| 856 | } | 856 | } |
| 857 | }, | 857 | }, |
| 858 | "delete": { | 858 | "delete": { |
| 859 | "description": "Deletes the token cookie from the user.", | ||
| 859 | "produces": [ | 860 | "produces": [ |
| 860 | "application/json" | 861 | "application/json" |
| 861 | ], | 862 | ], |
| 862 | "tags": [ | 863 | "tags": [ |
| 863 | "auth" | 864 | "auth" |
| 864 | ], | 865 | ], |
| 865 | "summary": "Deletes the token cookie from the user.", | ||
| 866 | "responses": { | 866 | "responses": { |
| 867 | "200": { | 867 | "200": { |
| 868 | "description": "OK", | 868 | "description": "OK", |
| @@ -893,6 +893,7 @@ | |||
| 893 | }, | 893 | }, |
| 894 | "/users/{id}": { | 894 | "/users/{id}": { |
| 895 | "get": { | 895 | "get": { |
| 896 | "description": "Get profile page of another user.", | ||
| 896 | "consumes": [ | 897 | "consumes": [ |
| 897 | "application/json" | 898 | "application/json" |
| 898 | ], | 899 | ], |
| @@ -902,7 +903,6 @@ | |||
| 902 | "tags": [ | 903 | "tags": [ |
| 903 | "users" | 904 | "users" |
| 904 | ], | 905 | ], |
| 905 | "summary": "Get profile page of another user.", | ||
| 906 | "parameters": [ | 906 | "parameters": [ |
| 907 | { | 907 | { |
| 908 | "type": "integer", | 908 | "type": "integer", |
diff --git a/docs/swagger.yaml b/docs/swagger.yaml index d4420e2..2fed413 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml | |||
| @@ -242,6 +242,7 @@ info: | |||
| 242 | paths: | 242 | paths: |
| 243 | /chapters/{id}: | 243 | /chapters/{id}: |
| 244 | get: | 244 | get: |
| 245 | description: Get maps from the specified chapter id. | ||
| 245 | parameters: | 246 | parameters: |
| 246 | - description: Chapter ID | 247 | - description: Chapter ID |
| 247 | in: path | 248 | in: path |
| @@ -264,40 +265,19 @@ paths: | |||
| 264 | description: Bad Request | 265 | description: Bad Request |
| 265 | schema: | 266 | schema: |
| 266 | $ref: '#/definitions/models.Response' | 267 | $ref: '#/definitions/models.Response' |
| 267 | summary: Get maps from the specified chapter id. | ||
| 268 | tags: | 268 | tags: |
| 269 | - games & chapters | 269 | - games & chapters |
| 270 | /demo: | ||
| 271 | get: | ||
| 272 | produces: | ||
| 273 | - application/json | ||
| 274 | responses: | ||
| 275 | "200": | ||
| 276 | description: OK | ||
| 277 | schema: | ||
| 278 | allOf: | ||
| 279 | - $ref: '#/definitions/models.Response' | ||
| 280 | - properties: | ||
| 281 | data: | ||
| 282 | $ref: '#/definitions/models.RankingsResponse' | ||
| 283 | type: object | ||
| 284 | "400": | ||
| 285 | description: Bad Request | ||
| 286 | schema: | ||
| 287 | $ref: '#/definitions/models.Response' | ||
| 288 | summary: Get rankings of every player. | ||
| 289 | tags: | ||
| 290 | - rankings | ||
| 291 | /demos: | 270 | /demos: |
| 292 | get: | 271 | get: |
| 293 | consumes: | 272 | consumes: |
| 294 | - application/json | 273 | - application/json |
| 274 | description: Get demo with specified demo uuid. | ||
| 295 | parameters: | 275 | parameters: |
| 296 | - description: Demo UUID | 276 | - description: Demo UUID |
| 297 | in: query | 277 | in: query |
| 298 | name: uuid | 278 | name: uuid |
| 299 | required: true | 279 | required: true |
| 300 | type: integer | 280 | type: string |
| 301 | produces: | 281 | produces: |
| 302 | - application/octet-stream | 282 | - application/octet-stream |
| 303 | responses: | 283 | responses: |
| @@ -309,11 +289,11 @@ paths: | |||
| 309 | description: Bad Request | 289 | description: Bad Request |
| 310 | schema: | 290 | schema: |
| 311 | $ref: '#/definitions/models.Response' | 291 | $ref: '#/definitions/models.Response' |
| 312 | summary: Get demo with specified demo uuid. | ||
| 313 | tags: | 292 | tags: |
| 314 | - demo | 293 | - demo |
| 315 | /games: | 294 | /games: |
| 316 | get: | 295 | get: |
| 296 | description: Get games from the leaderboards. | ||
| 317 | produces: | 297 | produces: |
| 318 | - application/json | 298 | - application/json |
| 319 | responses: | 299 | responses: |
| @@ -332,11 +312,11 @@ paths: | |||
| 332 | description: Bad Request | 312 | description: Bad Request |
| 333 | schema: | 313 | schema: |
| 334 | $ref: '#/definitions/models.Response' | 314 | $ref: '#/definitions/models.Response' |
| 335 | summary: Get games from the leaderboards. | ||
| 336 | tags: | 315 | tags: |
| 337 | - games & chapters | 316 | - games & chapters |
| 338 | /games/{id}: | 317 | /games/{id}: |
| 339 | get: | 318 | get: |
| 319 | description: Get chapters from the specified game id. | ||
| 340 | parameters: | 320 | parameters: |
| 341 | - description: Game ID | 321 | - description: Game ID |
| 342 | in: path | 322 | in: path |
| @@ -359,13 +339,13 @@ paths: | |||
| 359 | description: Bad Request | 339 | description: Bad Request |
| 360 | schema: | 340 | schema: |
| 361 | $ref: '#/definitions/models.Response' | 341 | $ref: '#/definitions/models.Response' |
| 362 | summary: Get chapters from the specified game id. | ||
| 363 | tags: | 342 | tags: |
| 364 | - games & chapters | 343 | - games & chapters |
| 365 | /login: | 344 | /login: |
| 366 | get: | 345 | get: |
| 367 | consumes: | 346 | consumes: |
| 368 | - application/json | 347 | - application/json |
| 348 | description: Get (redirect) login page for Steam auth. | ||
| 369 | produces: | 349 | produces: |
| 370 | - application/json | 350 | - application/json |
| 371 | responses: | 351 | responses: |
| @@ -382,11 +362,11 @@ paths: | |||
| 382 | description: Bad Request | 362 | description: Bad Request |
| 383 | schema: | 363 | schema: |
| 384 | $ref: '#/definitions/models.Response' | 364 | $ref: '#/definitions/models.Response' |
| 385 | summary: Get (redirect) login page for Steam auth. | ||
| 386 | tags: | 365 | tags: |
| 387 | - login | 366 | - login |
| 388 | /maps/{id}/leaderboards: | 367 | /maps/{id}/leaderboards: |
| 389 | get: | 368 | get: |
| 369 | description: Get map leaderboards with specified id. | ||
| 390 | parameters: | 370 | parameters: |
| 391 | - description: Map ID | 371 | - description: Map ID |
| 392 | in: path | 372 | in: path |
| @@ -414,13 +394,13 @@ paths: | |||
| 414 | description: Bad Request | 394 | description: Bad Request |
| 415 | schema: | 395 | schema: |
| 416 | $ref: '#/definitions/models.Response' | 396 | $ref: '#/definitions/models.Response' |
| 417 | summary: Get map leaderboards with specified id. | ||
| 418 | tags: | 397 | tags: |
| 419 | - maps | 398 | - maps |
| 420 | /maps/{id}/record: | 399 | /maps/{id}/record: |
| 421 | post: | 400 | post: |
| 422 | consumes: | 401 | consumes: |
| 423 | - multipart/form-data | 402 | - multipart/form-data |
| 403 | description: Post record with demo of a specific map. | ||
| 424 | parameters: | 404 | parameters: |
| 425 | - description: Map ID | 405 | - description: Map ID |
| 426 | in: path | 406 | in: path |
| @@ -464,11 +444,11 @@ paths: | |||
| 464 | description: Unauthorized | 444 | description: Unauthorized |
| 465 | schema: | 445 | schema: |
| 466 | $ref: '#/definitions/models.Response' | 446 | $ref: '#/definitions/models.Response' |
| 467 | summary: Post record with demo of a specific map. | ||
| 468 | tags: | 447 | tags: |
| 469 | - maps | 448 | - maps |
| 470 | /maps/{id}/summary: | 449 | /maps/{id}/summary: |
| 471 | delete: | 450 | delete: |
| 451 | description: Delete map summary with specified map id. | ||
| 472 | parameters: | 452 | parameters: |
| 473 | - description: JWT Token | 453 | - description: JWT Token |
| 474 | in: header | 454 | in: header |
| @@ -502,10 +482,10 @@ paths: | |||
| 502 | description: Bad Request | 482 | description: Bad Request |
| 503 | schema: | 483 | schema: |
| 504 | $ref: '#/definitions/models.Response' | 484 | $ref: '#/definitions/models.Response' |
| 505 | summary: Delete map summary with specified map id. | ||
| 506 | tags: | 485 | tags: |
| 507 | - maps | 486 | - maps |
| 508 | get: | 487 | get: |
| 488 | description: Get map summary with specified id. | ||
| 509 | parameters: | 489 | parameters: |
| 510 | - description: Map ID | 490 | - description: Map ID |
| 511 | in: path | 491 | in: path |
| @@ -528,10 +508,10 @@ paths: | |||
| 528 | description: Bad Request | 508 | description: Bad Request |
| 529 | schema: | 509 | schema: |
| 530 | $ref: '#/definitions/models.Response' | 510 | $ref: '#/definitions/models.Response' |
| 531 | summary: Get map summary with specified id. | ||
| 532 | tags: | 511 | tags: |
| 533 | - maps | 512 | - maps |
| 534 | post: | 513 | post: |
| 514 | description: Create map summary with specified map id. | ||
| 535 | parameters: | 515 | parameters: |
| 536 | - description: JWT Token | 516 | - description: JWT Token |
| 537 | in: header | 517 | in: header |
| @@ -565,10 +545,10 @@ paths: | |||
| 565 | description: Bad Request | 545 | description: Bad Request |
| 566 | schema: | 546 | schema: |
| 567 | $ref: '#/definitions/models.Response' | 547 | $ref: '#/definitions/models.Response' |
| 568 | summary: Create map summary with specified map id. | ||
| 569 | tags: | 548 | tags: |
| 570 | - maps | 549 | - maps |
| 571 | put: | 550 | put: |
| 551 | description: Edit map summary with specified map id. | ||
| 572 | parameters: | 552 | parameters: |
| 573 | - description: JWT Token | 553 | - description: JWT Token |
| 574 | in: header | 554 | in: header |
| @@ -602,13 +582,13 @@ paths: | |||
| 602 | description: Bad Request | 582 | description: Bad Request |
| 603 | schema: | 583 | schema: |
| 604 | $ref: '#/definitions/models.Response' | 584 | $ref: '#/definitions/models.Response' |
| 605 | summary: Edit map summary with specified map id. | ||
| 606 | tags: | 585 | tags: |
| 607 | - maps | 586 | - maps |
| 608 | /profile: | 587 | /profile: |
| 609 | get: | 588 | get: |
| 610 | consumes: | 589 | consumes: |
| 611 | - application/json | 590 | - application/json |
| 591 | description: Get profile page of session user. | ||
| 612 | parameters: | 592 | parameters: |
| 613 | - description: JWT Token | 593 | - description: JWT Token |
| 614 | in: header | 594 | in: header |
| @@ -635,12 +615,12 @@ paths: | |||
| 635 | description: Unauthorized | 615 | description: Unauthorized |
| 636 | schema: | 616 | schema: |
| 637 | $ref: '#/definitions/models.Response' | 617 | $ref: '#/definitions/models.Response' |
| 638 | summary: Get profile page of session user. | ||
| 639 | tags: | 618 | tags: |
| 640 | - users | 619 | - users |
| 641 | post: | 620 | post: |
| 642 | consumes: | 621 | consumes: |
| 643 | - application/json | 622 | - application/json |
| 623 | description: Update profile page of session user. | ||
| 644 | parameters: | 624 | parameters: |
| 645 | - description: JWT Token | 625 | - description: JWT Token |
| 646 | in: header | 626 | in: header |
| @@ -667,12 +647,12 @@ paths: | |||
| 667 | description: Unauthorized | 647 | description: Unauthorized |
| 668 | schema: | 648 | schema: |
| 669 | $ref: '#/definitions/models.Response' | 649 | $ref: '#/definitions/models.Response' |
| 670 | summary: Update profile page of session user. | ||
| 671 | tags: | 650 | tags: |
| 672 | - users | 651 | - users |
| 673 | put: | 652 | put: |
| 674 | consumes: | 653 | consumes: |
| 675 | - application/json | 654 | - application/json |
| 655 | description: Update country code of session user. | ||
| 676 | parameters: | 656 | parameters: |
| 677 | - description: JWT Token | 657 | - description: JWT Token |
| 678 | in: header | 658 | in: header |
| @@ -699,11 +679,32 @@ paths: | |||
| 699 | description: Unauthorized | 679 | description: Unauthorized |
| 700 | schema: | 680 | schema: |
| 701 | $ref: '#/definitions/models.Response' | 681 | $ref: '#/definitions/models.Response' |
| 702 | summary: Update country code of session user. | ||
| 703 | tags: | 682 | tags: |
| 704 | - users | 683 | - users |
| 684 | /rankings: | ||
| 685 | get: | ||
| 686 | description: Get rankings of every player. | ||
| 687 | produces: | ||
| 688 | - application/json | ||
| 689 | responses: | ||
| 690 | "200": | ||
| 691 | description: OK | ||
| 692 | schema: | ||
| 693 | allOf: | ||
| 694 | - $ref: '#/definitions/models.Response' | ||
| 695 | - properties: | ||
| 696 | data: | ||
| 697 | $ref: '#/definitions/models.RankingsResponse' | ||
| 698 | type: object | ||
| 699 | "400": | ||
| 700 | description: Bad Request | ||
| 701 | schema: | ||
| 702 | $ref: '#/definitions/models.Response' | ||
| 703 | tags: | ||
| 704 | - rankings | ||
| 705 | /search: | 705 | /search: |
| 706 | get: | 706 | get: |
| 707 | description: Get all user and map data matching to the query. | ||
| 707 | parameters: | 708 | parameters: |
| 708 | - description: Search user or map name. | 709 | - description: Search user or map name. |
| 709 | in: query | 710 | in: query |
| @@ -725,11 +726,11 @@ paths: | |||
| 725 | description: Bad Request | 726 | description: Bad Request |
| 726 | schema: | 727 | schema: |
| 727 | $ref: '#/definitions/models.Response' | 728 | $ref: '#/definitions/models.Response' |
| 728 | summary: Get all user and map data matching to the query. | ||
| 729 | tags: | 729 | tags: |
| 730 | - search | 730 | - search |
| 731 | /token: | 731 | /token: |
| 732 | delete: | 732 | delete: |
| 733 | description: Deletes the token cookie from the user. | ||
| 733 | produces: | 734 | produces: |
| 734 | - application/json | 735 | - application/json |
| 735 | responses: | 736 | responses: |
| @@ -746,10 +747,10 @@ paths: | |||
| 746 | description: Not Found | 747 | description: Not Found |
| 747 | schema: | 748 | schema: |
| 748 | $ref: '#/definitions/models.Response' | 749 | $ref: '#/definitions/models.Response' |
| 749 | summary: Deletes the token cookie from the user. | ||
| 750 | tags: | 750 | tags: |
| 751 | - auth | 751 | - auth |
| 752 | get: | 752 | get: |
| 753 | description: Gets the token cookie value from the user. | ||
| 753 | produces: | 754 | produces: |
| 754 | - application/json | 755 | - application/json |
| 755 | responses: | 756 | responses: |
| @@ -766,13 +767,13 @@ paths: | |||
| 766 | description: Not Found | 767 | description: Not Found |
| 767 | schema: | 768 | schema: |
| 768 | $ref: '#/definitions/models.Response' | 769 | $ref: '#/definitions/models.Response' |
| 769 | summary: Gets the token cookie value from the user. | ||
| 770 | tags: | 770 | tags: |
| 771 | - auth | 771 | - auth |
| 772 | /users/{id}: | 772 | /users/{id}: |
| 773 | get: | 773 | get: |
| 774 | consumes: | 774 | consumes: |
| 775 | - application/json | 775 | - application/json |
| 776 | description: Get profile page of another user. | ||
| 776 | parameters: | 777 | parameters: |
| 777 | - description: User ID | 778 | - description: User ID |
| 778 | in: path | 779 | in: path |
| @@ -799,7 +800,6 @@ paths: | |||
| 799 | description: Not Found | 800 | description: Not Found |
| 800 | schema: | 801 | schema: |
| 801 | $ref: '#/definitions/models.Response' | 802 | $ref: '#/definitions/models.Response' |
| 802 | summary: Get profile page of another user. | ||
| 803 | tags: | 803 | tags: |
| 804 | - users | 804 | - users |
| 805 | swagger: "2.0" | 805 | swagger: "2.0" |