Sha256: 3bb3a385c667cd4f1222fd43abd587bc5e92c382e7c516763dcc28e1536f6962

Contents?: true

Size: 1.48 KB

Versions: 6

Compression:

Stored size: 1.48 KB

Contents

namespace "SensuDashboard.Views.Events", (exports) ->

  class exports.List extends SensuDashboard.Views.List

    name: "events/list"

    initialize: ->
      @autocomplete_view = @options.autocomplete_view
      @autocomplete_view.delegate = this
      super

    itemClass: ->
      exports.ListItem

    resolvedCollection: ->
      resolved = @collection.chain()
      for token in @autocomplete_view.tokens
        model = token.object
        resolved = if model instanceof SensuDashboard.Models.Check
          resolved.filter (record) ->
            record.get("check") == model.get("name")
        else if model instanceof SensuDashboard.Models.Client
          resolved.filter (record) ->
            record.get("client") == model.get("name")
        else if _.isString(model)
          resolved.filter (record) ->
            output = record.get("output").toLowerCase()
            result = output.indexOf(model.toLowerCase()) != -1
            result || record.get("check").toLowerCase() == model.toLowerCase()

      resolved

    resolved: ->
      _(@resolvedCollection().map().value())

    renderCollection: (collection) ->
      super(collection || @resolved())

    renderEmpty: (collection) ->
      super(collection || @resolved())

    #
    # Autocomplete delegate
    #

    filtersUpdated: ->
      filtered = @resolved()
      @collection.each (model) ->
        model.set(selected: false) unless filtered.contains(model)

      @$el.html(@template())
      @renderCollection(filtered)

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
sensu-dashboard-0.10.4 lib/sensu-dashboard/assets/javascripts/views/events/list.coffee
sensu-dashboard-0.10.3 lib/sensu-dashboard/assets/javascripts/views/events/list.coffee
sensu-dashboard-0.10.2 lib/sensu-dashboard/assets/javascripts/views/events/list.coffee
sensu-dashboard-0.10.1 lib/sensu-dashboard/assets/javascripts/views/events/list.coffee
sensu-dashboard-0.10.0 lib/sensu-dashboard/assets/javascripts/views/events/list.coffee
sensu-dashboard-0.9.9 lib/sensu-dashboard/assets/javascripts/views/events/list.coffee