skill-assessment-app/app/helpers/application_helper.rb
2017-02-14 16:39:53 -06:00

55 lines
1.9 KiB
Ruby

# frozen_string_literal: true
module ApplicationHelper
def experience_options val
options_for_select([
["Please select", ""],
["0-3 Years", "0-3"],
["4-6 Years", "4-6"],
["7-9 Years", "7-9"],
["10-14 Years", "10-14"],
["15+ Years", "15+"]
], disabled: "-", selected: (val.blank? ? '' : val))
end
def quiz_options quizzes, selected_val
options_from_collection_for_select(quizzes, 'id', 'name', selected_val)
end
def admin_role_options val
options_for_select([
%w(Reviewer reviewer),
%w(Recruiter recruiter),
%w(Manager manager),
%w(Admin admin)
], disabled: "-", selected: (val.blank? ? '' : val))
end
def question_type_options val
options_for_select([
%w(Text text),
%w(Radio radio),
['Radio with other', 'radio_other'],
%w(Checkbox checkbox),
['Checkbox with other', 'checkbox_other'],
%w(Coder live_code)
], selected: (val.blank? ? '' : val))
end
# include javascript only once
# Allows the safe loading of js dependencies in partials multiple times.
def content_for_javascript_once code_label, &block
@js_blocks ||= []
return if @js_blocks.include? code_label
@js_blocks << code_label
content_for :custom_javascipt, &block
end
def sortable(column, title = nil)
title ||= column.titleize
css_class = column == sort_column ? sort_direction.to_s : nil
direction = column == sort_column && sort_direction == "desc" ? "asc" : "desc"
link_to title, { sort: column, direction: direction }, class: css_class
end
end