marky

Lightweight bookmarking + plaintext archive
Log | Files | Refs | README | LICENSE

commit f4c3b098dbf4621e09ef7fd414b8adf5901d6e5a
parent e846c637f8c5fcde85333efa492ca0424fff1b52
Author: David Eisinger <[email protected]>
Date:   Thu, 29 Jan 2026 12:29:04 -0500

Add saving ... state

Diffstat:
Minternal/api.go | 11++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/internal/api.go b/internal/api.go @@ -204,7 +204,7 @@ func NewHandlerWithConfig(db *DB, cfg HandlerConfig) (http.Handler, error) { </label> <label><input id="pub" type="checkbox" %[4]s> Public</label> <div class="actions"> - <button type="submit">Save</button> + <button id="saveBtn" type="submit">Save</button> <button class="secondary" type="button" onclick="window.close()">Cancel</button> </div> <p class="small">Saves to %[5]s</p> @@ -216,6 +216,7 @@ func NewHandlerWithConfig(db *DB, cfg HandlerConfig) (http.Handler, error) { const uname = %[7]s; const form = document.getElementById('f'); const msg = document.getElementById('msg'); + const saveBtn = document.getElementById('saveBtn'); const refInput = document.getElementById('ref'); const refClear = document.getElementById('refClear'); const refPaste = document.getElementById('refPaste'); @@ -235,6 +236,10 @@ func NewHandlerWithConfig(db *DB, cfg HandlerConfig) (http.Handler, error) { form.addEventListener('submit', async function(e){ e.preventDefault(); msg.textContent = ''; + if (saveBtn) { + saveBtn.disabled = true; + saveBtn.textContent = 'Saving ...'; + } const payload = { url: document.getElementById('url').value.trim(), title: document.getElementById('title').value.trim(), @@ -265,6 +270,10 @@ func NewHandlerWithConfig(db *DB, cfg HandlerConfig) (http.Handler, error) { } catch (err) { msg.textContent = 'Error: '+ err.message; msg.className = 'small error'; + if (saveBtn) { + saveBtn.disabled = false; + saveBtn.textContent = 'Save'; + } } }); })();