aboutsummaryrefslogtreecommitdiff
path: root/client/src/View/Income/Header.hs
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/View/Income/Header.hs')
-rw-r--r--client/src/View/Income/Header.hs77
1 files changed, 0 insertions, 77 deletions
diff --git a/client/src/View/Income/Header.hs b/client/src/View/Income/Header.hs
deleted file mode 100644
index a26e16a..0000000
--- a/client/src/View/Income/Header.hs
+++ /dev/null
@@ -1,77 +0,0 @@
-module View.Income.Header
- ( view
- , In(..)
- , Out(..)
- ) where
-
-import Control.Monad.IO.Class (liftIO)
-import qualified Data.Map as M
-import qualified Data.Maybe as Maybe
-import qualified Data.Text as T
-import qualified Data.Time.Clock as Clock
-import Reflex.Dom (Dynamic, Event, MonadWidget)
-import qualified Reflex.Dom as R
-
-import Common.Model (Currency, Income (..),
- IncomeHeader (..), User (..))
-import qualified Common.Model as CM
-import qualified Common.Msg as Msg
-import qualified Common.View.Format as Format
-
-import qualified Component.Button as Button
-import qualified Component.Modal as Modal
-import qualified View.Income.Form as Form
-
-data In t = In
- { _in_users :: [User]
- , _in_header :: IncomeHeader
- , _in_currency :: Currency
- }
-
-data Out t = Out
- { _out_add :: Event t ()
- }
-
-view :: forall t m. MonadWidget t m => In t -> m (Out t)
-view input =
- R.divClass "withMargin" $ do
-
- currentTime <- liftIO Clock.getCurrentTime
-
- case _incomeHeader_since $ _in_header input of
- Nothing ->
- R.blank
-
- Just since ->
- R.el "div" $ do
-
- R.el "h1" $ do
- R.text $ Msg.get (Msg.Income_CumulativeSince (Format.longDay since))
-
- R.el "ul" $
- flip mapM_ (M.toList . _incomeHeader_byUser $ _in_header input) $ \(userId, amount) ->
- R.el "li" $
- R.text $
- T.intercalate " "
- [ Maybe.fromMaybe "" . fmap _user_name $ CM.findUser userId (_in_users input)
- , "−"
- , Format.price (_in_currency input) amount
- ]
-
- R.divClass "titleButton" $ do
- R.el "h1" $
- R.text $
- Msg.get Msg.Income_MonthlyNet
-
- addIncome <- Button._out_clic <$>
- (Button.view . Button.defaultIn . R.text $
- Msg.get Msg.Income_AddLong)
-
- addIncome <- Modal.view $ Modal.In
- { Modal._in_show = addIncome
- , Modal._in_content = Form.view $ Form.In { Form._in_operation = Form.New }
- }
-
- return $ Out
- { _out_add = addIncome
- }