From c6e49b3e62b0bdfa9681b2e5cd1b3fb6f27727dc Mon Sep 17 00:00:00 2001 From: Stefan Ritt Date: Tue, 7 Dec 2010 08:30:13 +0000 Subject: [PATCH] Fixed problem with hitting "submit" twice SVN revision: 2345 --- src/elogd.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/elogd.c b/src/elogd.c index 8349b8b9..28dfce56 100755 --- a/src/elogd.c +++ b/src/elogd.c @@ -9619,11 +9619,19 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL rsprintf("var entry_modified = false;\n"); } else rsprintf("var entry_modified = false;\n"); - rsprintf("var submission_blocked = true;\n"); + rsprintf("var last_key = 0;\n"); rsprintf("\n"); rsprintf("function chkform()\n"); rsprintf("{\n"); + rsprintf(" if (last_key == 13) {\n"); + rsprintf(" var ret = confirm('%s');", loc("Really submit this entry?")); + rsprintf(" if (!ret) {\n"); + rsprintf(" last_key = 0;\n"); + rsprintf(" return false;\n"); + rsprintf(" }\n"); + rsprintf(" }\n"); + for (i = 0; i < n_attr; i++) { if ((attr_flags[i] & AF_REQUIRED)) { @@ -9761,12 +9769,6 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL } - /* check if sumbission is not blocked. Needed to avoid submission by hitting */ - rsprintf(" if (submission_blocked) {\n"); - rsprintf(" submission_blocked = false;\n"); - rsprintf(" return false;\n"); - rsprintf(" }\n"); - rsprintf(" submitted = true;\n"); rsprintf(" return true;\n"); rsprintf("}\n\n"); @@ -9826,7 +9828,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL rsprintf("function kp(e)\n"); rsprintf("{\n"); rsprintf(" var e = e || window.event;\n"); - rsprintf(" submission_blocked = (e.keyCode == 13)\n"); + rsprintf(" last_key = e.keyCode;\n"); rsprintf("}\n\n"); /* switch_smileys turn on/off the smiley bar by setting the smcmd, which in turn @@ -11000,11 +11002,11 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL if (enc_selected == 1) /* use hard wrapping only for plain text */ - rsprintf("