From c8dca444564d4ef2cd70b23a81b3b5e642ddccd2 Mon Sep 17 00:00:00 2001 From: Arda Serdar Pektezol <1669855+pektezol@users.noreply.github.com> Date: Mon, 20 Nov 2023 12:21:03 +0300 Subject: feat: add content to discussions list (#59) --- backend/handlers/discussions.go | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) (limited to 'backend/handlers/discussions.go') diff --git a/backend/handlers/discussions.go b/backend/handlers/discussions.go index 6687a53..600c612 100644 --- a/backend/handlers/discussions.go +++ b/backend/handlers/discussions.go @@ -15,7 +15,7 @@ type MapDiscussionResponse struct { } type MapDiscussionsResponse struct { - Discussions []MapDiscussionOnlyTitle `json:"discussions"` + Discussions []MapDiscussion `json:"discussions"` } type MapDiscussion struct { @@ -28,15 +28,6 @@ type MapDiscussion struct { Comments []MapDiscussionComment `json:"comments"` } -type MapDiscussionOnlyTitle struct { - ID int `json:"id"` - Creator models.UserShortWithAvatar `json:"creator"` - Title string `json:"title"` - // Upvotes int `json:"upvotes"` - UpdatedAt time.Time `json:"updated_at"` - Comments []MapDiscussionComment `json:"comments"` -} - type MapDiscussionComment struct { User models.UserShortWithAvatar `json:"user"` Comment string `json:"comment"` @@ -69,7 +60,7 @@ func FetchMapDiscussions(c *gin.Context) { c.JSON(http.StatusOK, models.ErrorResponse(err.Error())) return } - sql := `SELECT md.id, u.steam_id, u.user_name, u.avatar_link, md.title, md.updated_at FROM map_discussions md + sql := `SELECT md.id, u.steam_id, u.user_name, u.avatar_link, md.title, md.content, md.updated_at FROM map_discussions md INNER JOIN users u ON md.user_id = u.steam_id WHERE md.map_id = $1 ORDER BY md.updated_at DESC` rows, err := database.DB.Query(sql, mapID) @@ -79,8 +70,8 @@ func FetchMapDiscussions(c *gin.Context) { } // Get discussion data for rows.Next() { - discussion := MapDiscussionOnlyTitle{} - err := rows.Scan(&discussion.ID, &discussion.Creator.SteamID, &discussion.Creator.UserName, &discussion.Creator.AvatarLink, &discussion.Title, &discussion.UpdatedAt) + discussion := MapDiscussion{} + err := rows.Scan(&discussion.ID, &discussion.Creator.SteamID, &discussion.Creator.UserName, &discussion.Creator.AvatarLink, &discussion.Title, &discussion.Content, &discussion.UpdatedAt) if err != nil { c.JSON(http.StatusOK, models.ErrorResponse(err.Error())) return -- cgit v1.2.3