aboutsummaryrefslogtreecommitdiff
path: root/backend/handlers/map.go
diff options
context:
space:
mode:
authorArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-09-02 16:26:48 +0300
committerArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-09-02 16:26:48 +0300
commitdd9a047dc6512b3b6419ac4bd05a77bc22be95b0 (patch)
tree6ab30abac6f5785c812a268070c148283168f588 /backend/handlers/map.go
parentfix: optimize rankings (diff)
downloadlphub-dd9a047dc6512b3b6419ac4bd05a77bc22be95b0.tar.gz
lphub-dd9a047dc6512b3b6419ac4bd05a77bc22be95b0.tar.bz2
lphub-dd9a047dc6512b3b6419ac4bd05a77bc22be95b0.zip
fix: imrpoved user models on responses
Former-commit-id: 3aeb7e76928081664f33a4012bd1d84c81eef77c
Diffstat (limited to 'backend/handlers/map.go')
-rw-r--r--backend/handlers/map.go42
1 files changed, 18 insertions, 24 deletions
diff --git a/backend/handlers/map.go b/backend/handlers/map.go
index 0a0206e..1d9cee8 100644
--- a/backend/handlers/map.go
+++ b/backend/handlers/map.go
@@ -31,31 +31,25 @@ type ChapterMapsResponse struct {
31} 31}
32 32
33type RecordSingleplayer struct { 33type RecordSingleplayer struct {
34 Placement int `json:"placement"` 34 Placement int `json:"placement"`
35 RecordID int `json:"record_id"` 35 RecordID int `json:"record_id"`
36 ScoreCount int `json:"score_count"` 36 ScoreCount int `json:"score_count"`
37 ScoreTime int `json:"score_time"` 37 ScoreTime int `json:"score_time"`
38 UserID string `json:"user_id"` 38 User models.UserShortWithAvatar `json:"user"`
39 UserName string `json:"user_name"` 39 DemoID string `json:"demo_id"`
40 UserAvatar string `json:"user_avatar"` 40 RecordDate time.Time `json:"record_date"`
41 DemoID string `json:"demo_id"`
42 RecordDate time.Time `json:"record_date"`
43} 41}
44 42
45type RecordMultiplayer struct { 43type RecordMultiplayer struct {
46 Placement int `json:"placement"` 44 Placement int `json:"placement"`
47 RecordID int `json:"record_id"` 45 RecordID int `json:"record_id"`
48 ScoreCount int `json:"score_count"` 46 ScoreCount int `json:"score_count"`
49 ScoreTime int `json:"score_time"` 47 ScoreTime int `json:"score_time"`
50 HostID string `json:"host_id"` 48 Host models.UserShortWithAvatar `json:"host"`
51 HostName string `json:"host_name"` 49 Partner models.UserShortWithAvatar `json:"partner"`
52 HostAvatar string `json:"host_avatar"` 50 HostDemoID string `json:"host_demo_id"`
53 PartnerID string `json:"partner_id"` 51 PartnerDemoID string `json:"partner_demo_id"`
54 PartnerName string `json:"partner_name"` 52 RecordDate time.Time `json:"record_date"`
55 PartnerAvatar string `json:"partner_avatar"`
56 HostDemoID string `json:"host_demo_id"`
57 PartnerDemoID string `json:"partner_demo_id"`
58 RecordDate time.Time `json:"record_date"`
59} 53}
60 54
61// GET Map Summary 55// GET Map Summary
@@ -195,7 +189,7 @@ func FetchMapLeaderboards(c *gin.Context) {
195 ties := 0 189 ties := 0
196 for rows.Next() { 190 for rows.Next() {
197 var record RecordMultiplayer 191 var record RecordMultiplayer
198 err := rows.Scan(&record.RecordID, &record.HostID, &record.HostName, &record.HostAvatar, &record.PartnerID, &record.PartnerName, &record.PartnerAvatar, &record.ScoreCount, &record.ScoreTime, &record.HostDemoID, &record.PartnerDemoID, &record.RecordDate) 192 err := rows.Scan(&record.RecordID, &record.Host.SteamID, &record.Host.UserName, &record.Host.AvatarLink, &record.Partner.SteamID, &record.Partner.UserName, &record.Partner.AvatarLink, &record.ScoreCount, &record.ScoreTime, &record.HostDemoID, &record.PartnerDemoID, &record.RecordDate)
199 if err != nil { 193 if err != nil {
200 c.JSON(http.StatusBadRequest, models.ErrorResponse(err.Error())) 194 c.JSON(http.StatusBadRequest, models.ErrorResponse(err.Error()))
201 return 195 return
@@ -230,7 +224,7 @@ func FetchMapLeaderboards(c *gin.Context) {
230 ties := 0 224 ties := 0
231 for rows.Next() { 225 for rows.Next() {
232 var record RecordSingleplayer 226 var record RecordSingleplayer
233 err := rows.Scan(&record.RecordID, &record.UserID, &record.UserName, &record.UserAvatar, &record.ScoreCount, &record.ScoreTime, &record.DemoID, &record.RecordDate) 227 err := rows.Scan(&record.RecordID, &record.User.SteamID, &record.User.UserName, &record.User.AvatarLink, &record.ScoreCount, &record.ScoreTime, &record.DemoID, &record.RecordDate)
234 if err != nil { 228 if err != nil {
235 c.JSON(http.StatusBadRequest, models.ErrorResponse(err.Error())) 229 c.JSON(http.StatusBadRequest, models.ErrorResponse(err.Error()))
236 return 230 return