Class: Decidim::Meetings::ContentBlocks::UpcomingEventsCell

Inherits:
ViewModel
  • Object
show all
Includes:
CardHelper
Defined in:
decidim-meetings/app/cells/decidim/meetings/content_blocks/upcoming_events_cell.rb

Instance Method Summary collapse

Methods included from CardHelper

#card_for

Methods inherited from ViewModel

#call, #current_user

Methods included from FilterParamsHelper

#filter_link_params

Methods included from Decidim::MarkupHelper

#element_id

Methods included from ReplaceButtonsHelper

#button_to, #submit_tag

Methods included from ActionAuthorizationHelper

#action_authorized_button_to, #action_authorized_link_to, #logged_button_to, #logged_link_to

Methods included from ScopesHelper

#has_visible_scopes?, #scope_name_for_picker, #scopes_picker_field, #scopes_picker_filter, #scopes_picker_tag

Methods included from TranslatableAttributes

#default_locale?

Methods included from DecidimFormHelper

#areas_for_select, #base_error_messages, #decidim_form_for, #decidim_form_slug_url, #editor_field_tag, #form_field_has_error?, #form_required_explanation, #name_with_locale, #scopes_picker_field_tag, #tab_element_class_for, #translated_field_tag

Methods included from ResourceHelper

#linked_classes_filter_values_for, #linked_classes_for, #linked_resources_for, #resource_locator, #resource_title

Instance Method Details

#geolocation_enabled?Boolean

Returns:

  • (Boolean)

25
26
27
# File 'decidim-meetings/app/cells/decidim/meetings/content_blocks/upcoming_events_cell.rb', line 25

def geolocation_enabled?
  Decidim::Map.available?(:geocoding)
end

#meetings_directory_pathObject


29
30
31
# File 'decidim-meetings/app/cells/decidim/meetings/content_blocks/upcoming_events_cell.rb', line 29

def meetings_directory_path
  Decidim::Meetings::DirectoryEngine.routes.url_helpers.root_path
end

#showObject


9
10
11
12
13
# File 'decidim-meetings/app/cells/decidim/meetings/content_blocks/upcoming_events_cell.rb', line 9

def show
  return if upcoming_events.blank?

  render
end

#upcoming_eventsObject


15
16
17
18
19
20
21
22
23
# File 'decidim-meetings/app/cells/decidim/meetings/content_blocks/upcoming_events_cell.rb', line 15

def upcoming_events
  @upcoming_events ||= Decidim::Meetings::Meeting
                       .includes(component: :participatory_space)
                       .where(component: meeting_components)
                       .visible_meeting_for(current_user)
                       .where("end_time >= ?", Time.current)
                       .order(start_time: :asc)
                       .limit(limit)
end