Class: Decidim::Admin::TaxonomyFilterForm
- Inherits:
-
Form
- Object
- Form
- Decidim::Admin::TaxonomyFilterForm
- Includes:
- TranslatableAttributes
- Defined in:
- app/forms/decidim/admin/taxonomy_filter_form.rb
Overview
A form object to create or update areas.
Defined Under Namespace
Instance Method Summary collapse
- #available_participatory_space_manifests ⇒ Object
- #filter_items ⇒ Object
- #items_collection ⇒ Object
- #map_model(model) ⇒ Object
- #participatory_space_manifests ⇒ Object
- #root_taxonomy ⇒ Object
- #taxonomy_items ⇒ Object
Instance Method Details
#available_participatory_space_manifests ⇒ Object
54 55 56 57 58 59 60 61 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 54 def available_participatory_space_manifests @participatory_space_manifests ||= Decidim.participatory_space_manifests.map do |manifest| Manifest.new( id: manifest.name.to_s, name: I18n.t("decidim.admin.taxonomy_filters.space_filter_for.#{manifest.name}") ) end end |
#filter_items ⇒ Object
38 39 40 41 42 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 38 def filter_items taxonomy_items.map do |item| Decidim::TaxonomyFilterItem.new(taxonomy_item_id: item) end end |
#items_collection ⇒ Object
44 45 46 47 48 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 44 def items_collection return [] unless root_taxonomy @items_collection ||= map_items_collection(root_taxonomy) end |
#map_model(model) ⇒ Object
23 24 25 26 27 28 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 23 def map_model(model) self.root_taxonomy_id = model.root_taxonomy_id self.taxonomy_items = model.filter_items.map(&:taxonomy_item_id) self.name = {} if model.attributes["name"]&.compact_blank.blank? self.internal_name = {} if model.attributes["internal_name"]&.compact_blank.blank? end |
#participatory_space_manifests ⇒ Object
34 35 36 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 34 def participatory_space_manifests super.compact_blank end |
#root_taxonomy ⇒ Object
50 51 52 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 50 def root_taxonomy @root_taxonomy ||= current_organization.taxonomies.find_by(id: root_taxonomy_id) end |
#taxonomy_items ⇒ Object
30 31 32 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 30 def taxonomy_items super.compact_blank end |