diff options
author | Joris | 2016-03-31 00:06:50 +0200 |
---|---|---|
committer | Joris | 2016-03-31 00:13:25 +0200 |
commit | c95e19407d492a0d4e9e14e320520fe29ce379e5 (patch) | |
tree | ca6a14ad1396af6a4bc36e17ce89278d5dbea0a0 /src/server/Model/Init.hs | |
parent | c542551ad043260e6a4a6569b4af5c748f7b6001 (diff) | |
download | budget-c95e19407d492a0d4e9e14e320520fe29ce379e5.tar.gz budget-c95e19407d492a0d4e9e14e320520fe29ce379e5.tar.bz2 budget-c95e19407d492a0d4e9e14e320520fe29ce379e5.zip |
Add init data in html page
Diffstat (limited to 'src/server/Model/Init.hs')
-rw-r--r-- | src/server/Model/Init.hs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/server/Model/Init.hs b/src/server/Model/Init.hs new file mode 100644 index 0000000..167eead --- /dev/null +++ b/src/server/Model/Init.hs @@ -0,0 +1,31 @@ +{-# LANGUAGE OverloadedStrings #-} + +module Model.Init + ( getInit + ) where + +import Control.Monad.IO.Class (liftIO) + +import Database.Persist + +import Model.Database + +import Model.Json.Init (Init, Init(Init)) +import Model.Payment (getPayments) +import Model.User (getUsers, getJsonUser) +import Model.Income (getIncomes, getJsonIncome) + +import qualified Model.Json.Init as Init + +getInit :: Entity User -> Persist Init +getInit user = + liftIO . runDb $ do + users <- getUsers + payments <- getPayments + incomes <- getIncomes + return $ Init + { Init.users = map getJsonUser users + , Init.me = entityKey user + , Init.payments = payments + , Init.incomes = map getJsonIncome incomes + } |