Sha256: 1fa4b2ed96a51a4d031f5f17a426478561b0f6916bf0d337525f24bea0f6532f

Contents?: true

Size: 1.06 KB

Versions: 6

Compression:

Stored size: 1.06 KB

Contents

namespace "SensuDashboard.Collections", (exports) ->

  class exports.Stashes extends SensuDashboard.Collections.Base
    model: SensuDashboard.Models.Stash,
    url: "/stashes"

    getSelected: ->
      @where(selected: true)

    toggleSelected: ->
      selected = true
      selected = false if @getSelected().length == @length
      @each (stash) ->
        stash.set(selected: selected)

    selectAll: ->
      @each (stash) ->
        stash.set(selected: true)

    selectNone: ->
      @each (stash) ->
        stash.set(selected: false)

    removeSelected: (options = {}) ->
      @successCallback = options.success
      @errorCallback = options.error
      for stash in @getSelected()
        stash.remove
          success: (model, xhr, opts) =>
            @successCallback.call(this, model) if @successCallback
          error: (model, xhr, opts) =>
            @errorCallback.call(this, model) if @errorCallback

    create: (attributes, options) ->
      options ||= {}
      options.wait = true
      Backbone.Collection.prototype.create.call(this, attributes, options)

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
sensu-dashboard-0.10.4 lib/sensu-dashboard/assets/javascripts/collections/stashes.coffee
sensu-dashboard-0.10.3 lib/sensu-dashboard/assets/javascripts/collections/stashes.coffee
sensu-dashboard-0.10.2 lib/sensu-dashboard/assets/javascripts/collections/stashes.coffee
sensu-dashboard-0.10.1 lib/sensu-dashboard/assets/javascripts/collections/stashes.coffee
sensu-dashboard-0.10.0 lib/sensu-dashboard/assets/javascripts/collections/stashes.coffee
sensu-dashboard-0.9.9 lib/sensu-dashboard/assets/javascripts/collections/stashes.coffee