aboutsummaryrefslogtreecommitdiff
path: root/src/client/elm/LoggedIn/Home/View/Monthly.elm
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/elm/LoggedIn/Home/View/Monthly.elm')
-rw-r--r--src/client/elm/LoggedIn/Home/View/Monthly.elm93
1 files changed, 0 insertions, 93 deletions
diff --git a/src/client/elm/LoggedIn/Home/View/Monthly.elm b/src/client/elm/LoggedIn/Home/View/Monthly.elm
deleted file mode 100644
index 20dda19..0000000
--- a/src/client/elm/LoggedIn/Home/View/Monthly.elm
+++ /dev/null
@@ -1,93 +0,0 @@
-module LoggedIn.Home.View.Monthly exposing
- ( view
- )
-
-import String
-import Color
-
-import FontAwesome
-
-import Html exposing (..)
-import Html.Attributes exposing (..)
-import Html.Events exposing (..)
-
-import Msg exposing (Msg)
-
-import LoggedIn.Msg as LoggedInMsg
-
-import LoggedIn.Home.Msg as HomeMsg
-import LoggedIn.Home.Model as HomeModel
-import LoggedIn.View.Format as Format
-import LoggedIn.Home.View.Expand exposing (..)
-
-import Model.Payment as Payment exposing (Payments, Payment, monthly)
-import Model.Translations exposing (getMessage, getParamMessage)
-import LoggedData exposing (LoggedData)
-
-view : LoggedData -> HomeModel.Model -> Html Msg
-view loggedData homeModel =
- let monthlyPayments = Payment.monthly loggedData.me loggedData.payments
- in if List.length monthlyPayments == 0
- then
- text ""
- else
- div
- [ classList
- [ ("monthly", True)
- , ("detail", homeModel.monthlyDetail)
- ]
- ]
- [ monthlyCount loggedData monthlyPayments homeModel
- , if homeModel.monthlyDetail
- then paymentsTable loggedData monthlyPayments homeModel
- else text ""
- ]
-
-monthlyCount : LoggedData -> Payments -> HomeModel.Model -> Html Msg
-monthlyCount loggedData monthlyPayments homeModel =
- let count = List.length monthlyPayments
- total = List.sum << List.map .cost <| monthlyPayments
- key = if count > 1 then "PluralMonthlyCount" else "SingularMonthlyCount"
- in button
- [ class "header"
- , onClick (Msg.UpdateLoggedIn << LoggedInMsg.HomeMsg <| HomeMsg.ToggleMonthlyDetail)
- ]
- [ text (getParamMessage [toString count, Format.price loggedData.conf total] key loggedData.translations)
- , expand ExpandDown homeModel.monthlyDetail
- ]
-
-paymentsTable : LoggedData -> Payments -> HomeModel.Model -> Html Msg
-paymentsTable loggedData monthlyPayments homeModel =
- div
- [ class "table" ]
- ( monthlyPayments
- |> List.sortBy (String.toLower << .name)
- |> List.map (paymentLine loggedData homeModel)
- )
-
-paymentLine : LoggedData -> HomeModel.Model -> Payment -> Html Msg
-paymentLine loggedData homeModel payment =
- a
- [ classList
- [ ("row", True)
- , ("edition", homeModel.paymentEdition == Just payment.id)
- ]
- , onClick (Msg.UpdateLoggedIn << LoggedInMsg.HomeMsg <| HomeMsg.ToggleEdit payment.id)
- ]
- [ div [ class "cell category" ] [ text (payment.name) ]
- , div
- [ classList
- [ ("cell cost", True)
- , ("refund", payment.cost < 0)
- ]
- ]
- [ text (Format.price loggedData.conf payment.cost) ]
- , div
- [ class "cell delete"
- , onClick (Msg.UpdateLoggedIn <| LoggedInMsg.DeletePayment payment.id)
- ]
- [ button
- []
- [ FontAwesome.times Color.white 20 ]
- ]
- ]