summaryrefslogtreecommitdiff
path: root/users/app/assets/javascripts/users.js
diff options
context:
space:
mode:
authorAzul <azul@leap.se>2013-09-25 10:12:08 +0200
committerAzul <azul@leap.se>2013-09-25 10:12:08 +0200
commit4f8414298750193b6de3daff08364ec745a6a761 (patch)
treef13b9b550d0179f6b82227345f02f97e3949ad6c /users/app/assets/javascripts/users.js
parent193bf6446b384dce1699e8fb82be6f16cb8cb5f6 (diff)
visual feedback when submitting forms (#3164)
This also helps with the failing integration test. We needed a way to tell the ajax request was back. Observing the button state now works for that.
Diffstat (limited to 'users/app/assets/javascripts/users.js')
-rw-r--r--users/app/assets/javascripts/users.js13
1 files changed, 12 insertions, 1 deletions
diff --git a/users/app/assets/javascripts/users.js b/users/app/assets/javascripts/users.js
index 9d1a0f0..aaeba6e 100644
--- a/users/app/assets/javascripts/users.js
+++ b/users/app/assets/javascripts/users.js
@@ -28,12 +28,22 @@
var form = submitEvent.target;
var token = form.dataset.token;
var url = form.action;
- return $.ajax({
+ var req = $.ajax({
url: url,
type: 'PUT',
headers: { Authorization: 'Token token="' + token + '"' },
data: $(form).serialize()
});
+ req.done( function() {
+ $(form).find('input[type="submit"]').button('reset');
+ });
+ };
+
+ markAsSubmitted = function(submitEvent) {
+ var form = submitEvent.target;
+ $(form).addClass('submitted')
+ // bootstrap loading state:
+ $(form).find('input[type="submit"]').button('loading');
};
//
@@ -86,6 +96,7 @@
//
$(document).ready(function() {
+ $('form').submit(markAsSubmitted);
$('#new_user').submit(prevent_default);
$('#new_user').submit(srp.signup);
$('#new_session').submit(prevent_default);