From 6f4891bb90e2deb9d0376b9c11abd9a0d7946119 Mon Sep 17 00:00:00 2001 From: Sarah Vaupel <> Date: Fri, 30 Oct 2020 14:42:51 +0100 Subject: [PATCH] feat(schedule-week): hide weekdays according to user settings --- src/Utils/Schedule/Week.hs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/Utils/Schedule/Week.hs b/src/Utils/Schedule/Week.hs index 7037bae2e..9d9bd5007 100644 --- a/src/Utils/Schedule/Week.hs +++ b/src/Utils/Schedule/Week.hs @@ -19,7 +19,7 @@ import Utils.Schedule.Week.TimeSlot weekSchedule :: Entity User -> ScheduleOffset -> Widget -weekSchedule (Entity uid User{..}) scheduleOffset = do +weekSchedule (Entity uid User{userScheduleWeekDays=ScheduleWeekDays userScheduleWeekDays,..}) scheduleOffset = do now <- liftIO getCurrentTime tz <- liftIO getCurrentTimeZone ata <- getSessionActiveAuthTags @@ -112,11 +112,10 @@ weekSchedule (Entity uid User{..}) scheduleOffset = do _ -> True in filter isRegularWithoutException occurrencesInSlot - -- TODO: auto-hide saturday and sunday (if there are no events scheduled)? week :: [Day] week = go dayNowOffset where go d - | dayOfWeek d == firstDay = [d .. toEnum (fromEnum d + 6)] + | dayOfWeek d == firstDay = filter (flip elem userScheduleWeekDays . dayOfWeek) [d .. toEnum (fromEnum d + 6)] | otherwise = go $ pred d firstDay = toEnum $ fromEnum userWeekStart + dayOffset