refactor(schedule-week): implement utcTime helper function

This commit is contained in:
Sarah Vaupel 2020-08-21 13:46:25 +02:00
parent 2a82ac62e4
commit d82c6b073f

View File

@ -29,6 +29,12 @@ slotStep = 2
slotsToDisplay :: [TimeSlot]
slotsToDisplay = [firstSlot,firstSlot+slotStep..lastSlot]
timeSlotToUTCTime :: Day -> TimeSlot -> TimeZone -> UTCTime
timeSlotToUTCTime day slot tz = UTCTime{..} where
utctDay = slotDayOffset `addDays` day
utctDayTime = timeOfDayToTime slotTimeOfDay
(slotDayOffset, slotTimeOfDay) = localToUTCTimeOfDay tz $ TimeOfDay slot 0 0
slotToDisplayTime :: TimeSlot -> Widget
slotToDisplayTime t = formatTimeRangeW SelFormatTime (TimeOfDay t 0 0) $ Just $ TimeOfDay (t + slotStep) 0 0
@ -139,15 +145,8 @@ weekSchedule uid _weekOffset = do
-> day == localDay
&& TimeOfDay slot 0 0 <= localTimeOfDay
&& localTimeOfDay < TimeOfDay (slot+slotStep) 0 0
Left ScheduleEntryExamOccurrence{..} -> let
( slotDayOffset, slotTimeOfDay) = localToUTCTimeOfDay tz $ TimeOfDay slot 0 0
(nextSlotDayOffset, nextSlotTimeOfDay) = localToUTCTimeOfDay tz $ TimeOfDay (slot+slotStep) 0 0
slotUTCTime = UTCTime { utctDay = slotDayOffset `addDays` day
, utctDayTime = timeOfDayToTime slotTimeOfDay
}
nextSlotUTCTime = UTCTime { utctDay = nextSlotDayOffset `addDays` day
, utctDayTime = timeOfDayToTime nextSlotTimeOfDay
}
Left ScheduleEntryExamOccurrence{..} -> let slotUTCTime = timeSlotToUTCTime day slot tz
nextSlotUTCTime = timeSlotToUTCTime day (slot+slotStep) tz
in slotUTCTime <= seeoStart
&& seeoStart < nextSlotUTCTime