Sha256: 1540591ce9c600c39b7210f0de2d6ac5aac524cc56abca29f8787f7a9f1468ab

Contents?: true

Size: 1.22 KB

Versions: 2

Compression:

Stored size: 1.22 KB

Contents

class Lanes.Components.RecordFinder.Dialog extends Lanes.Components.ModalDialog

    domEvents:
        'click .add-clause': 'addClause'
        'click .run-query':  'runQuery'
        'select-row .grid': 'onSelect'
        'shown.bs.modal' : 'onShown'

    subviews:
        grid:
            hook: 'grid'
            component: 'Grid'
            options: ->
                _.extend(@gridOptions||{}, { recordQuery: @recordQuery, options: @gridOptions })
        query_clauses:
             container: '.query-clauses'
             view: Lanes.Components.RecordFinder.Clause, collection: 'clauses'

    bodyTemplateName: 'dialog'
    bodyClass: "record-finder"

    session:
        recordQuery: 'model'
        gridOptions: 'object'
        clauses: 'collection'

    initialize:(options)->
        @clauses = @recordQuery.clauses
        @debounceMethod( 'runQuery')
        this.listenTo(@recordQuery,'change',@runQuery)
        _.bindAll(this,'hide')

    onShown: ->
        this.grid.adjustColumnWidth()

    onSelect: (ev, model)->
        @record = model
        ev.preventDefault()
        _.delay(this.hide, 500)

    addClause: ->
        @recordQuery.addNewClause()

    runQuery: ->
        this.grid.reload() if @recordQuery.isValid()

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
lanes-0.1.9 client/lanes/components/record-finder/Dialog.coffee
lanes-0.1.8 client/lanes/components/record-finder/Dialog.coffee