diff --git a/internal/handlers/auth.go b/internal/handlers/auth.go index e97bdec8..198dd362 100644 --- a/internal/handlers/auth.go +++ b/internal/handlers/auth.go @@ -693,6 +693,15 @@ func (h *AuthHandler) UpdateProfile(c *echo.Context) error { } } + // Browser path (htmx modal + profile page): refresh so every rendered + // value (timezone select, table rows, header) reflects the save and the + // modal closes. A bare JSON body swapped into #profile-result read as + // "nothing happened" — the save DID land, invisibly. + if c.Request().Header.Get("HX-Request") == "true" { + c.Response().Header().Set("HX-Refresh", "true") + return c.HTML(http.StatusOK, `