Class: Decidim::Assemblies::Admin::AssemblyForm
- Inherits:
-
Form
- Object
- Form
- Decidim::Assemblies::Admin::AssemblyForm
- Includes:
- TranslatableAttributes
- Defined in:
- app/forms/decidim/assemblies/admin/assembly_form.rb
Overview
A form object used to create assemblies from the admin dashboard.
Constant Summary collapse
- ASSEMBLY_TYPES =
%w(government executive consultative_advisory participatory working_group commission others).freeze
- CREATED_BY =
%w(city_council public others).freeze
Instance Method Summary collapse
- #area ⇒ Object
- #assembly_types_for_select ⇒ Object
- #created_by_for_select ⇒ Object
- #map_model(model) ⇒ Object
- #parent ⇒ Object
- #processes_for_select ⇒ Object
- #scope ⇒ Object
Instance Method Details
#area ⇒ Object
84 85 86 |
# File 'app/forms/decidim/assemblies/admin/assembly_form.rb', line 84 def area @area ||= current_organization.areas.find_by(id: area_id) end |
#assembly_types_for_select ⇒ Object
88 89 90 91 92 93 94 95 |
# File 'app/forms/decidim/assemblies/admin/assembly_form.rb', line 88 def assembly_types_for_select ASSEMBLY_TYPES.map do |type| [ I18n.t("assembly_types.#{type}", scope: "decidim.assemblies"), type ] end end |
#created_by_for_select ⇒ Object
97 98 99 100 101 102 103 104 |
# File 'app/forms/decidim/assemblies/admin/assembly_form.rb', line 97 def created_by_for_select CREATED_BY.map do |by| [ I18n.t("created_by.#{by}", scope: "decidim.assemblies"), by ] end end |
#map_model(model) ⇒ Object
76 77 78 |
# File 'app/forms/decidim/assemblies/admin/assembly_form.rb', line 76 def map_model(model) self.scope_id = model.decidim_scope_id end |
#parent ⇒ Object
106 107 108 |
# File 'app/forms/decidim/assemblies/admin/assembly_form.rb', line 106 def parent @parent ||= OrganizationAssemblies.new(current_organization).query.find_by(id: parent_id) end |
#processes_for_select ⇒ Object
110 111 112 113 114 115 116 117 118 |
# File 'app/forms/decidim/assemblies/admin/assembly_form.rb', line 110 def processes_for_select @processes_for_select ||= Decidim.find_participatory_space_manifest(:participatory_processes) .participatory_spaces.call(current_organization)&.order(title: :asc)&.map do |process| [ translated_attribute(process.title), process.id ] end end |
#scope ⇒ Object
80 81 82 |
# File 'app/forms/decidim/assemblies/admin/assembly_form.rb', line 80 def scope @scope ||= current_organization.scopes.find_by(id: scope_id) end |