Sha256: 118f73f0052b5188cd9117c5943ba16c122b26734261d956376765928ef86615

Contents?: true

Size: 1.28 KB

Versions: 9

Compression:

Stored size: 1.28 KB

Contents

class CheckinDatatable < AjaxDatatablesRails::Base
  def_delegators :@view, :link_to, :manage_checkin_path, :display_datetime, :bold

  def view_columns
    @view_columns ||= {
      first_name: { source: 'Questionnaire.first_name' },
      last_name: { source: 'Questionnaire.last_name' },
      checked_in: { source: 'Questionnaire.checked_in_at', searchable: false },
    }
  end

  private

  def about(record)
    output = ''
    output += [record.first_name, record.last_name].join(' ') + ' '
    output += '<span class="badge badge-warning"><i class="fa fa-exclamation-triangle icon-space-r"></i>Minor</span>' if record.minor?
    output += '<br /><small>' + record.school.name + '</small>'
    output.html_safe
  end

  def data
    records.map do |record|
      {
        first_name: record.first_name,
        last_name: record.last_name,
        about: about(record),
        checked_in: record.checked_in? ? "<span class=\"text-success\">Yes</span>".html_safe : 'No',
        actions: "<a class=\"btn btn-primary btn-sm\" href=\"#{manage_checkin_path(record)}\">View</a>".html_safe
      }
    end
  end

  # rubocop:disable Naming/AccessorMethodName
  def get_raw_records
    Questionnaire.includes(:user, :school).references(:user, :school)
  end
  # rubocop:enable Naming/AccessorMethodName
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
hackathon_manager-0.14.1 app/datatables/checkin_datatable.rb
hackathon_manager-0.14.0 app/datatables/checkin_datatable.rb
hackathon_manager-0.13.12 app/datatables/checkin_datatable.rb
hackathon_manager-0.13.11 app/datatables/checkin_datatable.rb
hackathon_manager-0.13.10 app/datatables/checkin_datatable.rb
hackathon_manager-0.13.9 app/datatables/checkin_datatable.rb
hackathon_manager-0.13.8 app/datatables/checkin_datatable.rb
hackathon_manager-0.13.7 app/datatables/checkin_datatable.rb
hackathon_manager-0.13.6 app/datatables/checkin_datatable.rb