diff options
Diffstat (limited to 'Omni/Jr/Web/Types.hs')
| -rw-r--r-- | Omni/Jr/Web/Types.hs | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/Omni/Jr/Web/Types.hs b/Omni/Jr/Web/Types.hs index 025f3a6..85ea0f0 100644 --- a/Omni/Jr/Web/Types.hs +++ b/Omni/Jr/Web/Types.hs @@ -69,10 +69,8 @@ import qualified Data.ByteString.Lazy as LBS import qualified Data.List as List import qualified Data.Text as Text import qualified Data.Text.Lazy as LazyText -import Data.Time (Day, UTCTime (..), diffUTCTime, toGregorian) -import Data.Time.Calendar (DayOfWeek (..)) -import Data.Time.Calendar.WeekDate (toWeekCalendar) -import qualified Lucid +import qualified Data.Text.Lazy.Encoding as LazyText +import Data.Time (Day, DayOfWeek (..), UTCTime (..), dayOfWeek, diffUTCTime, toGregorian) import qualified Omni.Task.Core as TaskCore import Servant (Accept (..), MimeRender (..)) import Web.FormUrlEncoded (FromForm (..), lookupUnique, parseUnique) @@ -148,9 +146,16 @@ startOfDay t = UTCTime (utctDay t) 0 startOfWeek :: UTCTime -> UTCTime startOfWeek t = let day = utctDay t - (_, _, dow) = toWeekCalendar day - daysBack = dow - 1 - in UTCTime (addDays (negate (toInteger daysBack)) day) 0 + dow = dayOfWeek day + daysBack = case dow of + Monday -> 0 + Tuesday -> 1 + Wednesday -> 2 + Thursday -> 3 + Friday -> 4 + Saturday -> 5 + Sunday -> 6 + in UTCTime (addDays (negate daysBack) day) 0 addDays :: Integer -> Day -> Day addDays n d = |
