display concurrent events on event#show

This commit is contained in:
shlok007 2017-02-07 01:22:49 +05:30
parent acc4cc3aef
commit 4dd10d09ad
3 changed files with 72 additions and 0 deletions

View file

@ -575,4 +575,21 @@ module ApplicationHelper
def quantity_left_of(resource)
"#{resource.quantity - resource.used}/#{resource.quantity}"
end
def concurrent_events(event)
return nil unless event.scheduled? && event.program.selected_event_schedules
event_schedule = event.program.selected_event_schedules.find_by(event: event)
other_event_schedules = event.program.selected_event_schedules.reject { |other_event_schedule| other_event_schedule == event_schedule }
concurrent_events = []
event_time_range = (event_schedule.start_time.strftime '%Y-%m-%d %H:%M')...(event_schedule.end_time.strftime '%Y-%m-%d %H:%M')
other_event_schedules.each do |other_event_schedule|
next unless other_event_schedule.event.confirmed?
other_event_time_range = (other_event_schedule.start_time.strftime '%Y-%m-%d %H:%M')...(other_event_schedule.end_time.strftime '%Y-%m-%d %H:%M')
if (event_time_range.to_a & other_event_time_range.to_a).present?
concurrent_events << other_event_schedule.event
end
end
concurrent_events
end
end

View file

@ -97,3 +97,20 @@
%dt Requires Registration:
%dd
= link_to "Yes (#{registered_text(@event)})", new_conference_conference_registration_path(@conference.short_title), class: 'btn btn-xs btn-danger', disabled: !@event.registration_possible?
- if concurrent_events(@event).present?
.col-md-12
%hr
%h4 Happening at the same time:
%ol
- concurrent_events(@event).each do |event|
%li
= link_to conference_program_proposal_path(@conference.short_title, event.id) do
= event.title
%dl
%dt Start Time:
%dd
= event.program.selected_event_schedules.find_by(event: event).start_time.strftime("%Y %B %e %H:%M")
%br
%dt Room:
%dd
= event.room.name