From f86c474002e2f026a7e792494c06f196564c6d11 Mon Sep 17 00:00:00 2001 From: Michael Ball Date: Thu, 23 Jul 2020 02:28:36 -0700 Subject: [PATCH] Sort events by time,room on the linear schedule --- app/models/event_schedule.rb | 7 +++++++ app/models/program.rb | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/models/event_schedule.rb b/app/models/event_schedule.rb index 5358f0bc..7c537285 100644 --- a/app/models/event_schedule.rb +++ b/app/models/event_schedule.rb @@ -41,6 +41,13 @@ class EventSchedule < ApplicationRecord start_time + event.event_type.length.minutes end + ## + # Returns a time + room number string for sorting. + # + def sortable_timestamp + "#{start_time.to_i}-#{room&.order}" + end + ## # Returns event schedules that are scheduled in the same room and start_time as event # diff --git a/app/models/program.rb b/app/models/program.rb index 48c9d361..7dc45f06 100644 --- a/app/models/program.rb +++ b/app/models/program.rb @@ -85,7 +85,7 @@ class Program < ApplicationRecord event_schedules += track.selected_schedule.event_schedules end - event_schedules.sort_by(&:start_time) + event_schedules.sort_by(&:sortable_timestamp) end ##