Sha256: 9f1245a066418027571a4a52b66e5173c008d01d74cce7aa79c9c2f995cf6fe2

Contents?: true

Size: 1.05 KB

Versions: 1

Compression:

Stored size: 1.05 KB

Contents

jQuery ->
  $.cookie.json = true
  $('<div id="flashlight-container"></div>').prependTo 'body'

  $(document).on 'page:load', ->
    $('<div id="flashlight-container"></div>').prependTo 'body'

  Flashlight.show()

  $(document).on 'ajaxComplete', (event, request) ->
    Flashlight.show()

Flashlight = (->
  hideFlash = (flash) ->
    flash.slideUp 100, ->
      flash.remove()

  flashMessage = (message, options) ->
    options = $.extend(type: "notice", timeout: 5000, options)

    flash = $("<div class='flashlight-wrapper'><div class='flash #{message['type']}'>#{message['message']}</div></div>")
    $("#flashlight-container").prepend flash
    flash.hide().delay(300).slideDown 100
    flash.click ->
      hideFlash flash

    setTimeout (->
      hideFlash flash
    ), options.timeout

  getFlashFromCookies = (request) ->
    if flash = $.cookie('flash')
      $.removeCookie('flash');
      flash

  show: ->
    flashMessages = getFlashFromCookies() || []
    $.each flashMessages, (_, message) ->
      flashMessage(type: message[0], message: message[1])

)()


Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
flashlight-0.1 app/assets/javascripts/flashlight/flashlight.js.coffee