device: add copyToClipboard and fix regenerate token HTMX button
Phase 3: Complete device page functionality fixes - Add copyToClipboard function to device-management.ts: - Uses navigator.clipboard.writeText() for copying - Shows success/error toast notifications - Already exported in Alpine.store, now properly defined - Fix typo in devices.templ: change 'regerate-token' to 'regenerate-token' - Add HTMX support to RegenerateDeviceToken handler: - Returns HTML with reload script for HTMX requests - Preserves JSON response for API calls The regenerate token button now works via HTMX (hx-put) instead of Alpine.js, matching the pattern used elsewhere in the app.
This commit is contained in:
@@ -554,6 +554,11 @@ func (h *DeviceHandler) RegenerateDeviceToken(c *echo.Context) error {
|
||||
syncURLs["bookmarks"] = fmt.Sprintf("%s/api/sync/koreader/bookmarks", baseURL)
|
||||
}
|
||||
|
||||
// Handle HTMX requests - return HTML with page reload script
|
||||
if c.Request().Header.Get("HX-Request") == "true" {
|
||||
html := fmt.Sprintf(`<div class="text-green-500">Token regenerated! Reloading ... </div><script>window.location.reload();`)
|
||||
return c.HTML(http.StatusOK, html)
|
||||
}
|
||||
return c.JSON(http.StatusOK, map[string]interface{}{
|
||||
"message": "Token regenerated successfully",
|
||||
"auth_token": newToken,
|
||||
|
||||
Reference in New Issue
Block a user