summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--public/javascripts/application.js15
1 files changed, 9 insertions, 6 deletions
diff --git a/public/javascripts/application.js b/public/javascripts/application.js
index c95c34da6..29c34c4eb 100644
--- a/public/javascripts/application.js
+++ b/public/javascripts/application.js
@@ -521,13 +521,16 @@ function hideOnLoad() {
}
function addFormObserversForDoubleSubmit() {
- $$('form[method=post]').each(function(el) {
- Event.observe(el, 'submit', function(e) {
- var form = Event.element(e);
- form.select('input[type=submit]').each(function(btn) {
- btn.disable();
+ $$('form[method=post]').each(function(form) {
+ if (!form.hasClassName('multiple-submit')) {
+ form.on('submit', function(form_submission) {
+ if (form.getStorage().get('submitted')) {
+ form_submission.stop();
+ } else {
+ form.getStorage().set('submitted', true);
+ }
});
- });
+ }
});
}