Class: FestivityEventPage

Inherits:
FestivityBasePage show all
Defined in:
app/models/festivity_event_page.rb

Instance Method Summary collapse

Methods inherited from FestivityBasePage

#body, #sponsor_logo, #sponsor_logo?, #video, #video?

Instance Method Details

#can_buy?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'app/models/festivity_event_page.rb', line 25

def can_buy?
  !self.buy_url.empty?
end

#event_locationsObject



49
50
51
52
53
54
# File 'app/models/festivity_event_page.rb', line 49

def event_locations
  # Return array of unique locations
  self.performances.
      map{ |performance| performance.festivity_location_page }.
      uniq{ |location| location.id }
end

#festivity_performances=(performances) ⇒ Object



6
7
8
9
10
11
# File 'app/models/festivity_event_page.rb', line 6

def festivity_performances=(performances)
  performances.each do |performance|
    performance_id = performance.delete(:performance_id)
    FestivityPerformance.find(performance_id).update_attributes(performance)
  end
end

#has_facebook?Boolean

Returns:

  • (Boolean)


37
38
39
# File 'app/models/festivity_event_page.rb', line 37

def has_facebook?
  !self.artist_facebook.empty?
end

#has_homepage?Boolean

Returns:

  • (Boolean)


45
46
47
# File 'app/models/festivity_event_page.rb', line 45

def has_homepage?
  !self.artist_homepage.empty?
end

#has_instagram?Boolean

Returns:

  • (Boolean)


41
42
43
# File 'app/models/festivity_event_page.rb', line 41

def has_instagram?
  !self.artist_instagram.empty?
end

#has_social?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'app/models/festivity_event_page.rb', line 29

def has_social?
  (has_twitter? or has_facebook? or has_homepage? or has_instagram?)
end

#has_twitter?Boolean

Returns:

  • (Boolean)


33
34
35
# File 'app/models/festivity_event_page.rb', line 33

def has_twitter?
  !self.artist_twitter.empty?
end

#locationsObject



21
22
23
# File 'app/models/festivity_event_page.rb', line 21

def locations
  @locations ||= event_locations
end

#performancesObject



13
14
15
# File 'app/models/festivity_event_page.rb', line 13

def performances
  self.festivity_performances.select {|perf| perf.festivity_location_page && perf.start_date && perf.end_date }
end

#single_location?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'app/models/festivity_event_page.rb', line 17

def single_location?
  @single_location ||= self.locations.count == 1
end