diff options
Diffstat (limited to 'pages/mail/users.go')
| -rw-r--r-- | pages/mail/users.go | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/pages/mail/users.go b/pages/mail/users.go index 8700c80..6fe057d 100644 --- a/pages/mail/users.go +++ b/pages/mail/users.go @@ -1,6 +1,8 @@ package mail import ( + "strconv" + mailService "dove/services/mail" "dove/utils/meta" "dove/utils/shortcuts" @@ -13,6 +15,21 @@ func NewUser(context *fiber.Ctx) error { return shortcuts.Render(context, "mail/newuser", nil) } +func EditUser(context *fiber.Ctx) error { + userID, parseError := strconv.ParseUint(meta.Request(context).Param("id"), 10, 64) + if parseError != nil { + return shortcuts.BadRequestError(context, parseError) + } + + formData, serviceError := mailService.EditUserFormData(uint(userID)) + if serviceError != nil { + return shortcuts.HandleError(context, serviceError) + } + + meta.SetPageTitle(context, "Edit User") + return shortcuts.Render(context, "mail/edituser", formData) +} + func Users(context *fiber.Ctx) error { meta.SetPageTitle(context, "Users") @@ -21,4 +38,4 @@ func Users(context *fiber.Ctx) error { search := context.Query("search") return shortcuts.Render(context, "mail/users", mailService.ListUsers(pagination, sorting, search)) -} +}
\ No newline at end of file |
