From baefda5a902a94cedf84cfcd2ae550267e5d932e Mon Sep 17 00:00:00 2001 From: Joris Date: Wed, 30 Mar 2016 00:28:55 +0200 Subject: Merge punctual and monthly payments in client model --- src/client/elm/LoggedIn/Update.elm | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) (limited to 'src/client/elm/LoggedIn/Update.elm') diff --git a/src/client/elm/LoggedIn/Update.elm b/src/client/elm/LoggedIn/Update.elm index 8fe8d4c..fd141c8 100644 --- a/src/client/elm/LoggedIn/Update.elm +++ b/src/client/elm/LoggedIn/Update.elm @@ -12,7 +12,7 @@ import Date import Model exposing (Model) import Model.Translations exposing (getMessage) -import Model.Payment exposing (Payment, PaymentFrequency(..), deletePayment) +import Model.Payment exposing (Payment, Frequency(..), deletePayment) import Server import LoggedData @@ -74,14 +74,15 @@ update model action loggedIn = LoggedInAction.ValidateAddPayment paymentId name cost frequency -> update model (LoggedInAction.HomeAction <| HomeAction.UpdateAdd <| AddPaymentAction.Init frequency) loggedIn |> flip Effects.andThen (\loggedIn -> - let newPayment = Payment paymentId (Date.fromTime model.currentTime) name cost loggedIn.me - in case frequency of - Punctual -> - update model (LoggedInAction.HomeAction <| HomeAction.UpdatePage 1) loggedIn - |> Tuple.mapFst (\loggedIn -> { loggedIn | payments = newPayment :: loggedIn.payments }) - Monthly -> - update model (LoggedInAction.HomeAction <| HomeAction.ShowMonthlyDetail) loggedIn - |> Tuple.mapFst (\loggedIn -> { loggedIn | monthlyPayments = newPayment :: loggedIn.monthlyPayments }) + case frequency of + Punctual -> + update model (LoggedInAction.HomeAction <| HomeAction.UpdatePage 1) loggedIn + Monthly -> + update model (LoggedInAction.HomeAction <| HomeAction.ShowMonthlyDetail) loggedIn + ) + |> Tuple.mapFst (\loggedIn -> + let newPayment = Payment paymentId (Date.fromTime model.currentTime) name cost loggedIn.me frequency + in { loggedIn | payments = newPayment :: loggedIn.payments } ) LoggedInAction.DeletePayment payment frequency -> @@ -93,15 +94,10 @@ update model action loggedIn = ) LoggedInAction.ValidateDeletePayment payment frequency -> - ( case frequency of - Monthly -> - { loggedIn | monthlyPayments = deletePayment payment.id loggedIn.monthlyPayments } - Punctual -> - { loggedIn | payments = deletePayment payment.id loggedIn.payments } + ( { loggedIn | payments = deletePayment payment.id loggedIn.payments } , Effects.none ) - LoggedInAction.UpdateIncome amount -> ( loggedIn , Server.setIncome amount -- cgit v1.2.3