app/helpers/interventions_helper.rb
module InterventionsHelper
def tiered_intervention_definition_select(intervention_definitions, include_blank=true, selected = nil)
opts = ""
opts += content_tag :option,"",:value => "" if include_blank
c=intervention_definitions.group_by{|e| e.tier.to_s}
selected = selected.id if selected.present?
d=c.keys.sort
opts << selected.to_s
d.each do |group|
opts << content_tag(:optgroup, :label => h(group.to_s)) do
options_from_collection_for_select( c[group], :id, :title, :selected => selected) if c[group]
end
end
select_tag("intervention_definition_id", opts.html_safe, :class => "fixed_width sim_submit",
:name => "intervention_definition[id]")
end
def tiered_quicklist(quicklist_items)
if quicklist_items.blank?
"Quicklist is empty."
else
form_tag "/interventions/quicklists" do
concat(label_tag(:intervention_definition_id, "Intervention Quicklist "))
options = ""
options << content_tag( :option,"",:value => "")
gqi=quicklist_items.sort_by(&:tier).group_by{|q| "#{q.objective_definition} : #{q.tier}"}
gqi.sort.each do |group,col|
options << content_tag(:optgroup, :label => h(group.to_s)) do
options_from_collection_for_select(col, :id, :title)
end
end
concat(select_tag("intervention_definition_id",options.html_safe))
concat(content_tag(:noscript, submit_tag("Pick from Quicklist")))
end
end
end
def custom_intervention?
(params[:custom_intervention] == "true") && custom_intervention_enabled?
end
def custom_intervention_enabled?
current_user.custom_interventions_enabled?
end
def goal_select
intervention_dropdown_select(:goal_id, goals,@goal_definition)
end
def intervention_dropdown_select(obj_id,collection,selected_obj)
select_tag(obj_id,
options_from_collection_for_select(
collection,:id,:title,selected_obj.try(:id)),
{:prompt => "", :class => "fixed_width sim_submit"}
)
end
def objective_select
intervention_dropdown_select(:objective_id, objectives,@objective_definition)
end
def category_select
intervention_dropdown_select(:category_id, categories,@intervention_cluster)
end
def definition_select
intervention_dropdown_select(:definition_id, definitions,@intervention_definition)
end
def goals
@goal_definitions
end
def objectives
@objective_definitions
end
def categories
@intervention_clusters
end
def definitions
@intervention_definitions
end
end