Sha256: 1ee7397e831d89950057627ed552e7a43a13acac571b8be5da1068b93fd2ceb1

Contents?: true

Size: 949 Bytes

Versions: 2

Compression:

Stored size: 949 Bytes

Contents

# -----------------------------------------------------------------------------
# LIST SEARCH
# -----------------------------------------------------------------------------
@_listBindSearch = (listEl) ->
  $input     = listEl.$search
  arrayStore = listEl.config.arrayStore

  runSearch = (input) ->
    query = $(input).val()
    listEl._show_spinner()
    arrayStore.search(query)

  showSearch = ->
    listEl.$el.addClass 'list-search'
    $input.find('input').focus()

  cancelSearch = ->
    listEl.$el.removeClass 'list-search'
    $input.find('input').val('')
    listEl._show_spinner()
    arrayStore.reset()

  $input.show()

  $input.on 'keyup', 'input', (e) =>
    if e.keyCode == 27 # esc
      return cancelSearch()

    if e.keyCode == 13 # enter
      return runSearch(e.target)

  $input.on 'click', '.icon', (e)   => e.preventDefault() ; showSearch()
  $input.on 'click', '.cancel', (e) => e.preventDefault() ; cancelSearch()




Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
chr-0.2.1 app/assets/javascripts/chr/core/list-search.coffee
chr-0.2.0 app/assets/javascripts/chr/core/list-search.coffee