Fixes error in double_submission button
It did not take into account that some forms can have more than 1 submit button, which made the code not include the button values in some puts and posts.
This commit is contained in:
@@ -1,26 +1,28 @@
|
||||
App.PreventDoubleSubmission =
|
||||
disable_button: (button) ->
|
||||
unless button.hasClass('disabled')
|
||||
loading = button.data('loading') ? '...'
|
||||
button.addClass('disabled').attr('disabled', 'disabled')
|
||||
button.data('text', button.val())
|
||||
button.val(loading)
|
||||
disable_button: (buttons) ->
|
||||
buttons.each (button)->
|
||||
unless button.hasClass('disabled')
|
||||
loading = button.data('loading') ? '...'
|
||||
button.addClass('disabled').attr('disabled', 'disabled')
|
||||
button.data('text', button.val())
|
||||
button.val(loading)
|
||||
|
||||
reset_button: (button) ->
|
||||
if button.hasClass('disabled')
|
||||
button_text = button.data('text')
|
||||
button.removeClass('disabled').attr('disabled', null)
|
||||
if button_text
|
||||
button.val(button_text)
|
||||
button.data('text', null)
|
||||
reset_button: (buttons) ->
|
||||
buttons.each (button)->
|
||||
if button.hasClass('disabled')
|
||||
button_text = button.data('text')
|
||||
button.removeClass('disabled').attr('disabled', null)
|
||||
if button_text
|
||||
button.val(button_text)
|
||||
button.data('text', null)
|
||||
|
||||
initialize: ->
|
||||
$('form').on('submit', event, ->
|
||||
button = $(this).find(':button, :submit')
|
||||
App.PreventDoubleSubmission.disable_button(button)
|
||||
buttons = $(this).find(':button, :submit')
|
||||
App.PreventDoubleSubmission.disable_buttons(buttons)
|
||||
).on('ajax:success', ->
|
||||
button = $(this).find(':button, :submit')
|
||||
App.PreventDoubleSubmission.reset_button(button)
|
||||
buttons = $(this).find(':button, :submit')
|
||||
App.PreventDoubleSubmission.reset_buttons(buttons)
|
||||
)
|
||||
|
||||
false
|
||||
|
||||
Reference in New Issue
Block a user