Module: Festivity::Extensions::SiteExtensions::SiteMethods

Defined in:
lib/festivity/extensions/site_extensions.rb

Instance Method Summary collapse

Instance Method Details

#calculate_festival_datetimesObject



34
35
36
37
38
39
40
41
42
43
# File 'lib/festivity/extensions/site_extensions.rb', line 34

def calculate_festival_datetimes
  dates = [self.festivity_start_date]
  advance_by = date_filter? ? {days: 1} : {hours: 1}
  until dates.last >= self.festivity_end_date do
    dates << dates.last.advance(advance_by)
  end
  FestivityDatetimeFilterPresenter.new(dates, self.festivity_filter_type)
rescue
  []
end

#date_during_festival?(date) ⇒ Boolean

Returns:

  • (Boolean)


26
27
28
# File 'lib/festivity/extensions/site_extensions.rb', line 26

def date_during_festival?(date)
  self.festival_datetimes.any? {|festival_date| festival_date.datetime == date}
end

#date_filter?Boolean

Returns:

  • (Boolean)


45
46
47
# File 'lib/festivity/extensions/site_extensions.rb', line 45

def date_filter?
  self.festivity_filter_type == "date"
end

#festival_datetimesObject



30
31
32
# File 'lib/festivity/extensions/site_extensions.rb', line 30

def festival_datetimes
  @festival_datetimes ||= calculate_festival_datetimes
end

#festivity_active_category_typesObject



22
23
24
# File 'lib/festivity/extensions/site_extensions.rb', line 22

def festivity_active_category_types
  self.festivity_category_types.where(["inactive = false"])
end

#festivity_end_date=(value) ⇒ Object



18
19
20
# File 'lib/festivity/extensions/site_extensions.rb', line 18

def festivity_end_date=(value)
  super(Chronic.parse(value))
end

#festivity_start_date=(value) ⇒ Object



14
15
16
# File 'lib/festivity/extensions/site_extensions.rb', line 14

def festivity_start_date=(value)
  super(Chronic.parse(value))
end