From 8bbdaf54acae7903e93e95a27ae9719b0cee9005 Mon Sep 17 00:00:00 2001 From: cclohmar Date: Mon, 15 Jun 2026 06:35:02 +0000 Subject: [PATCH] feat(ui): show success message on user/group save, auto-refresh list --- src/core/admin/templates/user-dashboard.templ | 4 ++-- src/core/admin/templates/user-dashboard_templ.go | 2 +- src/core/admin/ui.go | 15 +++++++++++---- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/core/admin/templates/user-dashboard.templ b/src/core/admin/templates/user-dashboard.templ index cfa4999..6fbfd29 100644 --- a/src/core/admin/templates/user-dashboard.templ +++ b/src/core/admin/templates/user-dashboard.templ @@ -171,8 +171,8 @@ templ EditUserForm(u UserRow, groups []string) {

Edit User

-
+
diff --git a/src/core/admin/templates/user-dashboard_templ.go b/src/core/admin/templates/user-dashboard_templ.go index 95c130a..11911be 100644 --- a/src/core/admin/templates/user-dashboard_templ.go +++ b/src/core/admin/templates/user-dashboard_templ.go @@ -420,7 +420,7 @@ func EditUserForm(u UserRow, groups []string) templ.Component { if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 26, "\" hx-target=\"#user-list-body\" hx-swap=\"innerHTML\" hx-on::after-request=\"htmx.trigger('#user-detail', 'click')\">
Group updated successfully
+ `)) } func (h *Handler) editUserForm(w http.ResponseWriter, r *http.Request) { @@ -423,10 +424,16 @@ func (h *Handler) updateUser(w http.ResponseWriter, r *http.Request) { groupVals := r.Form["group"] groups := "" for i, g := range groupVals { - if i > 0 { groups += "," } + if i > 0 { + groups += "," + } groups += g } h.store.GetDB().Exec(`UPDATE users SET role = ?, groups = ?, updated_at = CURRENT_TIMESTAMP WHERE username = ?`, role, groups, username) h.syncWriter.Sync() - h.userRowsHandler(w, r) + // Return success message and refresh user list + w.Header().Set("Content-Type", "text/html") + w.Write([]byte(`
User updated successfully
+ `)) + // Trigger the refresh of the user list via HTMX }