Sha256: fe123c2e1e8b748ef6c3e78461434863ffbd594edf0154b53abfc211153b851d

Contents?: true

Size: 1.24 KB

Versions: 18

Compression:

Stored size: 1.24 KB

Contents

window.Alchemy = {} if typeof(window.Alchemy) is 'undefined'

Alchemy.Buttons =

  observe: (scope) ->
    $('form', scope).not('.button_with_label form').on 'submit', (event) ->
      $form = $(this)
      $btn = $form.find(':submit')
      $outside_button = $('[data-alchemy-button][form="'+$form.attr('id')+'"]')

      if ($btn.attr('disabled') == 'disabled') || ($outside_button.attr('disabled') == 'disabled')
        event.preventDefault()
        event.stopPropagation()
        false
      else
        Alchemy.Buttons.disable($btn)
        if $outside_button
          Alchemy.Buttons.disable($outside_button)
        true

  disable: (button) ->
    $button = $(button)
    spinner = new Alchemy.Spinner('small')
    $button.data('content', $button.html())
    $button.attr('disabled', true)
    $button.addClass('disabled')
    $button.css
      width: $button.outerWidth()
    $button.empty()
    spinner.spin($button)
    return true

  enable: (scope) ->
    $buttons = $('form :submit:disabled, [data-alchemy-button].disabled', scope)
    $.each $buttons, ->
      $button = $(this)
      $button.removeClass('disabled')
      $button.removeAttr('disabled')
      $button.css("width", "")
      $button.html($button.data('content'))
    return true

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
alchemy_cms-4.0.6 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-3.6.7 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-3.6.6 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-4.0.5 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-4.0.4 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-4.0.3 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-3.6.5 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-4.0.2 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-4.0.1 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-3.6.4 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-4.0.0 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-3.6.3 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-3.6.2 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-4.0.0.rc2 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-4.0.0.rc1 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-3.6.1 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-4.0.0.beta app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
alchemy_cms-3.6.0 app/assets/javascripts/alchemy/alchemy.buttons.js.coffee