Files
grecia/app/components/sdg_management/local_targets/form_component.rb
2020-12-11 16:10:37 +01:00

41 lines
962 B
Ruby

class SDGManagement::LocalTargets::FormComponent < ApplicationComponent
delegate :back_link_to, to: :helpers
include SDGManagement::Header
include TranslatableFormHelper
include GlobalizeHelper
attr_reader :local_target
def initialize(local_target)
@local_target = local_target
end
private
def title
t("sdg_management.local_targets.new.title")
end
def form_url
if local_target.persisted?
sdg_management_local_target_path(local_target)
else
sdg_management_local_targets_path
end
end
def target_options
grouped_targets = SDG::Goal.order(:code).map do |goal|
[
code_and_title(goal),
goal.targets.sort.map { |target| [code_and_title(target), target.id] }
]
end
grouped_options_for_select(grouped_targets, local_target.target_id)
end
def code_and_title(resource)
"#{resource.code} #{resource.title}"
end
end