From 229e843e4c3965a501db69282dc772e45339393f Mon Sep 17 00:00:00 2001 From: Mo Tarbin Date: Sat, 10 Aug 2024 14:28:24 -0400 Subject: update `updateAssignee` to retrieve the current user and use their ID as the `UpdatedBy` field. --- internal/chore/handler.go | 16 +++++++++++----- internal/user/handler.go | 2 +- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/internal/chore/handler.go b/internal/chore/handler.go index 01490cc..7ae97b0 100644 --- a/internal/chore/handler.go +++ b/internal/chore/handler.go @@ -594,6 +594,13 @@ func (h *Handler) deleteChore(c *gin.Context) { // } func (h *Handler) updateAssignee(c *gin.Context) { + currentUser, ok := auth.CurrentUser(c) + if !ok { + c.JSON(500, gin.H{ + "error": "Error getting current user", + }) + return + } rawID := c.Param("id") id, err := strconv.Atoi(rawID) if err != nil { @@ -603,8 +610,7 @@ func (h *Handler) updateAssignee(c *gin.Context) { return } type AssigneeReq struct { - AssignedTo int `json:"assignedTo" binding:"required"` - UpdatedBy int `json:"updatedBy" binding:"required"` + Assignee int `json:"assignee" binding:"required"` } var assigneeReq AssigneeReq @@ -626,7 +632,7 @@ func (h *Handler) updateAssignee(c *gin.Context) { assigneeFound := false for _, assignee := range chore.Assignees { - if assignee.UserID == assigneeReq.AssignedTo { + if assignee.UserID == assigneeReq.Assignee { assigneeFound = true break } @@ -638,8 +644,8 @@ func (h *Handler) updateAssignee(c *gin.Context) { return } - chore.UpdatedBy = assigneeReq.UpdatedBy - chore.AssignedTo = assigneeReq.AssignedTo + chore.UpdatedBy = currentUser.ID + chore.AssignedTo = assigneeReq.Assignee if err := h.choreRepo.UpsertChore(c, chore); err != nil { c.JSON(500, gin.H{ "error": "Error updating assignee", diff --git a/internal/user/handler.go b/internal/user/handler.go index ff885f3..d45f05c 100644 --- a/internal/user/handler.go +++ b/internal/user/handler.go @@ -102,7 +102,7 @@ func (h *Handler) signUp(c *gin.Context) { UpdatedAt: time.Now(), }); err != nil { c.JSON(500, gin.H{ - "error": "Error creating user", + "error": "Error creating user, email already exists or username is taken", }) return } -- cgit