# hack ujs for adding loading icon on disabled buttons/links prependLoadingIcon = (element) -> $element = $ element if $element.is('button') && $element.data('loading') $element.addClass('text-with-icon') .prepend Tao.iconTag('loading', class: 'spin') # jquery-ujs if $.rails? originDisableElement = $.rails.disableElement $.rails.disableElement = (element) -> originDisableElement element prependLoadingIcon element originDisableFormElement = $.rails.disableFormElement $.rails.disableFormElement = (element) -> originDisableFormElement element prependLoadingIcon element originEnableElement = $.rails.enableElement $.rails.enableElement = (element) -> originEnableElement element $(element).removeClass 'text-with-icon' originEnableFormElement = $.rails.enableFormElement $.rails.enableFormElement = (element) -> originEnableFormElement element $(element).removeClass 'text-with-icon' # rails-ujs else if Rails? originDisableElement = Rails.disableElement Rails.disableElement = (e) -> originDisableElement e element = if e instanceof Event then e.target else e if Rails.matches(element, Rails.formSubmitSelector) Rails.formElements(element, Rails.formDisableSelector).forEach (el) -> prependLoadingIcon el else prependLoadingIcon element originEnableElement = Rails.enableElement Rails.enableElement = (e) -> originEnableElement e element = if e instanceof Event then e.target else e if Rails.matches(element, Rails.formSubmitSelector) Rails.formElements(element, Rails.formDisableSelector).forEach (el) -> $(el).removeClass 'text-with-icon' else $(el).removeClass 'text-with-icon'