Class: Decidim::Meetings::MeetingPresenter
- Inherits:
-
SimpleDelegator
- Object
- SimpleDelegator
- Decidim::Meetings::MeetingPresenter
- Includes:
- ResourceHelper, SanitizeHelper, TranslationsHelper
- Defined in:
- app/presenters/decidim/meetings/meeting_presenter.rb
Overview
Decorator for meetings
Instance Method Summary collapse
- #avatar_url ⇒ Object
- #badge ⇒ Object
- #can_be_contacted? ⇒ Boolean
- #closing_report(links: false, all_locales: false) ⇒ Object
- #deleted? ⇒ Boolean
- #description(links: false, all_locales: false) ⇒ Object
- #formatted_proposals_titles ⇒ Object
- #has_tooltip? ⇒ Boolean
- #location(all_locales: false) ⇒ Object
- #location_hints(all_locales: false) ⇒ Object
- #meeting ⇒ Object
-
#name ⇒ Object
Next methods are used for present a Meeting As Proposal Author.
- #nickname ⇒ Object
- #profile_path ⇒ Object
- #proposals ⇒ Object
- #registration_terms(all_locales: false) ⇒ Object
- #title(links: false, all_locales: false) ⇒ Object
Instance Method Details
#avatar_url ⇒ Object
85 86 87 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 85 def avatar_url ActionController::Base.helpers.asset_path("decidim/meetings/icon.svg") end |
#badge ⇒ Object
77 78 79 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 77 def badge "" end |
#can_be_contacted? ⇒ Boolean
93 94 95 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 93 def can_be_contacted? false end |
#closing_report(links: false, all_locales: false) ⇒ Object
59 60 61 62 63 64 65 66 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 59 def closing_report(links: false, all_locales: false) return unless meeting handle_locales(meeting.closing_report, all_locales) do |content| renderer = Decidim::ContentRenderers::HashtagRenderer.new(decidim_sanitize(content)) renderer.render(links: links).html_safe end end |
#deleted? ⇒ Boolean
89 90 91 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 89 def deleted? false end |
#description(links: false, all_locales: false) ⇒ Object
26 27 28 29 30 31 32 33 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 26 def description(links: false, all_locales: false) return unless meeting handle_locales(meeting.description, all_locales) do |content| renderer = Decidim::ContentRenderers::HashtagRenderer.new(decidim_sanitize(content)) renderer.render(links: links).html_safe end end |
#formatted_proposals_titles ⇒ Object
107 108 109 110 111 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 107 def formatted_proposals_titles return unless meeting proposals.map.with_index { |proposal, index| "#{index + 1}) #{proposal.title}\n" } end |
#has_tooltip? ⇒ Boolean
97 98 99 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 97 def has_tooltip? false end |
#location(all_locales: false) ⇒ Object
35 36 37 38 39 40 41 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 35 def location(all_locales: false) return unless meeting handle_locales(meeting.location, all_locales) do |content| content end end |
#location_hints(all_locales: false) ⇒ Object
43 44 45 46 47 48 49 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 43 def location_hints(all_locales: false) return unless meeting handle_locales(meeting.location_hints, all_locales) do |content| content end end |
#meeting ⇒ Object
13 14 15 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 13 def meeting __getobj__ end |
#name ⇒ Object
Next methods are used for present a Meeting As Proposal Author
69 70 71 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 69 def name title end |
#nickname ⇒ Object
73 74 75 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 73 def nickname "" end |
#profile_path ⇒ Object
81 82 83 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 81 def profile_path resource_locator(meeting).path end |
#proposals ⇒ Object
101 102 103 104 105 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 101 def proposals return unless meeting @proposals ||= meeting..load end |
#registration_terms(all_locales: false) ⇒ Object
51 52 53 54 55 56 57 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 51 def registration_terms(all_locales: false) return unless meeting handle_locales(meeting.registration_terms, all_locales) do |content| content end end |
#title(links: false, all_locales: false) ⇒ Object
17 18 19 20 21 22 23 24 |
# File 'app/presenters/decidim/meetings/meeting_presenter.rb', line 17 def title(links: false, all_locales: false) return unless meeting handle_locales(meeting.title, all_locales) do |content| renderer = Decidim::ContentRenderers::HashtagRenderer.new(decidim_html_escape(content)) renderer.render(links: links).html_safe end end |