Class: Decidim::Meetings::MeetingForm
- Inherits:
-
Form
- Object
- Form
- Decidim::Meetings::MeetingForm
- Defined in:
- app/forms/decidim/meetings/meeting_form.rb
Overview
This class holds a Form to create/update meetings for Participants and UserGroups.
Instance Method Summary collapse
- #category ⇒ Object
-
#decidim_scope_id ⇒ Object
Scope identifier.
- #geocoded? ⇒ Boolean
- #geocoding_enabled? ⇒ Boolean
- #has_address? ⇒ Boolean
- #map_model(model) ⇒ Object
-
#scope ⇒ Object
Finds the Scope from the given decidim_scope_id, uses the compoenent scope if missing.
Instance Method Details
#category ⇒ Object
59 60 61 62 63 |
# File 'app/forms/decidim/meetings/meeting_form.rb', line 59 def category return unless current_component @category ||= categories.find_by(id: decidim_category_id) end |
#decidim_scope_id ⇒ Object
Scope identifier
Returns the scope identifier related to the meeting
55 56 57 |
# File 'app/forms/decidim/meetings/meeting_form.rb', line 55 def decidim_scope_id @decidim_scope_id || scope&.id end |
#geocoded? ⇒ Boolean
73 74 75 |
# File 'app/forms/decidim/meetings/meeting_form.rb', line 73 def geocoded? latitude.present? && longitude.present? end |
#geocoding_enabled? ⇒ Boolean
65 66 67 |
# File 'app/forms/decidim/meetings/meeting_form.rb', line 65 def geocoding_enabled? Decidim::Map.available?(:geocoding) end |
#has_address? ⇒ Boolean
69 70 71 |
# File 'app/forms/decidim/meetings/meeting_form.rb', line 69 def has_address? geocoding_enabled? && address.present? end |
#map_model(model) ⇒ Object
36 37 38 39 40 41 |
# File 'app/forms/decidim/meetings/meeting_form.rb', line 36 def map_model(model) self.decidim_category_id = model.categorization.decidim_category_id if model.categorization presenter = MeetingPresenter.new(model) self.title = presenter.title(all_locales: false) self.description = presenter.description(all_locales: false) end |
#scope ⇒ Object
Finds the Scope from the given decidim_scope_id, uses the compoenent scope if missing.
Returns a Decidim::Scope
48 49 50 |
# File 'app/forms/decidim/meetings/meeting_form.rb', line 48 def scope @scope ||= @decidim_scope_id ? current_component.scopes.find_by(id: @decidim_scope_id) : current_component.scope end |