From 6421377c86b0809d391970e7734ba9022950546a Mon Sep 17 00:00:00 2001 From: Jeff Emmett Date: Wed, 3 Dec 2025 21:36:44 -0800 Subject: [PATCH] Fix double-submit bug in task creation form MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add isSubmitting flag to prevent duplicate submissions - Disable submit button and show "Creating..." text while processing - Re-enable button after completion or error 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- src/aggregator/web/index.html | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/aggregator/web/index.html b/src/aggregator/web/index.html index 3996ba9..ca1688e 100644 --- a/src/aggregator/web/index.html +++ b/src/aggregator/web/index.html @@ -589,9 +589,19 @@ } }; + let isSubmitting = false; document.getElementById('new-task-form').onsubmit = async (e) => { e.preventDefault(); + // Prevent double submission + if (isSubmitting) return; + isSubmitting = true; + + const submitBtn = e.target.querySelector('button[type="submit"]'); + const originalText = submitBtn.textContent; + submitBtn.textContent = 'Creating...'; + submitBtn.disabled = true; + const projectPath = document.getElementById('task-project').value; const title = document.getElementById('task-title').value; const description = document.getElementById('task-description').value; @@ -626,6 +636,10 @@ } catch (err) { console.error('Create error:', err); showToast(err.message || 'Failed to create task', 'error'); + } finally { + isSubmitting = false; + submitBtn.textContent = originalText; + submitBtn.disabled = false; } };