From 8350ab9b5715342a6e5e27a6b46becd62b82405d Mon Sep 17 00:00:00 2001 From: William Mantly Date: Tue, 28 Jul 2026 12:52:39 -0400 Subject: [PATCH] Fix HTML-escaped loading indicator in formAJAX MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Same fix as sso-manager-node: formAJAX's loading indicator passed a raw
string to app.messages.action, which HTML-escapes its message by design (@simpleworkjs/frontend) -- so every form submit briefly showed the literal markup as text instead of a spinner. Replaced with plain text ("Saving…"). Co-Authored-By: Claude Sonnet 5 --- nodejs/public/lib/js/app-base.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/nodejs/public/lib/js/app-base.js b/nodejs/public/lib/js/app-base.js index 7fe4a17..3d4398d 100644 --- a/nodejs/public/lib/js/app-base.js +++ b/nodejs/public/lib/js/app-base.js @@ -679,13 +679,10 @@ function formAJAX(btn){ return false; } - app.messages.action( - `
- Loading... -
`, - $form, - 'info' - ); + // Plain text: app.messages.action HTML-escapes its message (by design, + // see @simpleworkjs/frontend), so raw markup like a spinner
would + // render literally instead of as an element. + app.messages.action('Saving…', $form, 'info'); app.api[method]($form.attr('action'), formData, function(error, data){ app.messages.action(data.message, $form, error ? 'danger' : 'success'); //re-populate table