diff options
author | Azul <azul@leap.se> | 2013-09-25 10:12:08 +0200 |
---|---|---|
committer | Azul <azul@leap.se> | 2013-09-25 10:12:08 +0200 |
commit | 4f8414298750193b6de3daff08364ec745a6a761 (patch) | |
tree | f13b9b550d0179f6b82227345f02f97e3949ad6c /users/app/assets | |
parent | 193bf6446b384dce1699e8fb82be6f16cb8cb5f6 (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')
-rw-r--r-- | users/app/assets/javascripts/users.js | 13 |
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); |