Sha256: befaf23cc6a4acd7add542228701250e703296d4d02916a8775c2b0399abd5d7

Contents?: true

Size: 775 Bytes

Versions: 4

Compression:

Stored size: 775 Bytes

Contents

class @RjmcDatatable
  constructor: (table, columns, opts={}) ->
    @table = $(table)
    @columns = columns
    @ordering = opts.ordering ? true
    @searching = opts.searching ? true
    @order = opts.order ? []
    @reload = $("[data-behavior='reload']")
    @initializeTable()
    @setEvents()

  initializeTable: ->
    @data = @table.DataTable
      pagingType: 'full_numbers'
      responsive: true
      ajax: @table.data('source')
      processing: true
      serverSide: true
      columns: @columns
      ordering: @ordering
      searching: @searching
      order: @order

  setEvents: ->
    @reload.on 'click', @reloadTable

  reloadTable: =>
    icon = @reload.find('i')
    icon.addClass('fa-spin')
    @data.ajax.reload ->
      icon.removeClass('fa-spin')

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rocketjob_mission_control-2.1.0 app/assets/javascripts/rocket_job_mission_control/datatable.js.coffee
rocketjob_mission_control-2.0.0 app/assets/javascripts/rocket_job_mission_control/datatable.js.coffee
rocketjob_mission_control-2.0.0.rc2 app/assets/javascripts/rocket_job_mission_control/datatable.js.coffee
rocketjob_mission_control-2.0.0.rc1 app/assets/javascripts/rocket_job_mission_control/datatable.js.coffee