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
53 54 55 56 57 58 59 60 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 53 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
37 38 39 40 41 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 37 def filter_items taxonomy_items.map do |item| Decidim::TaxonomyFilterItem.new(taxonomy_item_id: item) end end |
#items_collection ⇒ Object
43 44 45 46 47 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 43 def items_collection return [] unless root_taxonomy @items_collection ||= map_items_collection(root_taxonomy) end |
#map_model(model) ⇒ Object
22 23 24 25 26 27 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 22 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
33 34 35 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 33 def participatory_space_manifests super.compact_blank end |
#root_taxonomy ⇒ Object
49 50 51 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 49 def root_taxonomy @root_taxonomy ||= current_organization.taxonomies.find_by(id: root_taxonomy_id) end |
#taxonomy_items ⇒ Object
29 30 31 |
# File 'app/forms/decidim/admin/taxonomy_filter_form.rb', line 29 def taxonomy_items super.compact_blank end |