VRFS-2218 VRFS-2197 allow unstarted scheduled sessions to be listed up to 12 hours after start time; allow completed sessions to be listed up 2 to hours after completion time

This commit is contained in:
Brian Smith 2014-09-19 00:24:38 -04:00
parent 37be35275b
commit 1858e0da49
1 changed files with 7 additions and 1 deletions

View File

@ -280,9 +280,15 @@ module JamRuby
end
def self.scheduled user
# keep unstarted sessions around for 12 hours after scheduled_start
session_not_started = "(music_sessions.scheduled_start > NOW() - '12 hour'::INTERVAL AND music_sessions.started_at IS NULL)"
# let session be restarted for up to 2 hours after finishing
session_finished = "(music_sessions.session_removed_at > NOW() - '2 hour'::INTERVAL)"
query = MusicSession.where("music_sessions.canceled = FALSE")
query = query.where("music_sessions.user_id = '#{user.id}'")
query = query.where("music_sessions.scheduled_start IS NULL OR music_sessions.scheduled_start > NOW() - '12 hour'::INTERVAL")
query = query.where("music_sessions.scheduled_start IS NULL OR #{session_not_started} OR #{session_finished}")
query = query.order("music_sessions.scheduled_start ASC")
query