aboutsummaryrefslogtreecommitdiff
path: root/src/client/LoggedIn/Income
diff options
context:
space:
mode:
authorJoris2017-03-26 23:16:28 +0200
committerJoris2017-03-27 00:17:41 +0200
commit902acfbdbcc1d59941399753e887479e586e2748 (patch)
tree0ad90ead3f8bdf0ea7c94462d1577c8e188df469 /src/client/LoggedIn/Income
parent8062f1c9c34e9b25d76b22bd6ba2a1a99666279b (diff)
downloadbudget-902acfbdbcc1d59941399753e887479e586e2748.tar.gz
budget-902acfbdbcc1d59941399753e887479e586e2748.tar.bz2
budget-902acfbdbcc1d59941399753e887479e586e2748.zip
Improve form validation
- Trim names - Income amount accepted from 0 - Validate colors
Diffstat (limited to 'src/client/LoggedIn/Income')
-rw-r--r--src/client/LoggedIn/Income/Model.elm36
-rw-r--r--src/client/LoggedIn/Income/Msg.elm9
-rw-r--r--src/client/LoggedIn/Income/Table.elm (renamed from src/client/LoggedIn/Income/View/Table.elm)13
-rw-r--r--src/client/LoggedIn/Income/Update.elm24
-rw-r--r--src/client/LoggedIn/Income/View.elm12
5 files changed, 10 insertions, 84 deletions
diff --git a/src/client/LoggedIn/Income/Model.elm b/src/client/LoggedIn/Income/Model.elm
deleted file mode 100644
index 7d852b9..0000000
--- a/src/client/LoggedIn/Income/Model.elm
+++ /dev/null
@@ -1,36 +0,0 @@
-module LoggedIn.Income.Model exposing
- ( Model
- , AddIncome
- , init
- , initForm
- , validation
- )
-
-import Date exposing (Date)
-
-import Form exposing (Form)
-import Form.Validate as Validate exposing (Validation)
-import Validation
-
-type alias Model =
- { addIncome : Form String AddIncome
- }
-
-type alias AddIncome =
- { amount : Int
- , date : Date
- }
-
-init : Model
-init =
- { addIncome = initForm
- }
-
-initForm : Form String AddIncome
-initForm = Form.initial [] validation
-
-validation : Validation String AddIncome
-validation =
- Validate.map2 AddIncome
- (Validate.field "amount" (Validate.int |> Validate.andThen (Validate.minInt 1)))
- (Validate.field "date" Validation.date)
diff --git a/src/client/LoggedIn/Income/Msg.elm b/src/client/LoggedIn/Income/Msg.elm
deleted file mode 100644
index 0a09dad..0000000
--- a/src/client/LoggedIn/Income/Msg.elm
+++ /dev/null
@@ -1,9 +0,0 @@
-module LoggedIn.Income.Msg exposing
- ( Msg(..)
- )
-
-import Form exposing (Form)
-
-type Msg =
- NoOp
- | AddIncomeMsg Form.Msg
diff --git a/src/client/LoggedIn/Income/View/Table.elm b/src/client/LoggedIn/Income/Table.elm
index aa5e392..f10a552 100644
--- a/src/client/LoggedIn/Income/View/Table.elm
+++ b/src/client/LoggedIn/Income/Table.elm
@@ -1,4 +1,4 @@
-module LoggedIn.Income.View.Table exposing
+module LoggedIn.Income.Table exposing
( view
)
@@ -25,7 +25,6 @@ import LoggedData exposing (LoggedData)
import LoggedIn.Msg as LoggedInMsg
-import LoggedIn.Income.Model as Income
import View.Date as Date
import LoggedIn.View.Format as Format
@@ -33,8 +32,8 @@ import Model.User exposing (getUserName)
import Model.Income as Income exposing (..)
import Model.Translations exposing (getMessage)
-view : LoggedData -> Income.Model -> Html Msg
-view loggedData incomeModel =
+view : LoggedData -> Html Msg
+view loggedData =
let incomes =
loggedData.incomes
|> Dict.toList
@@ -44,7 +43,7 @@ view loggedData incomeModel =
[ class "table" ]
[ div
[ class "lines" ]
- ( headerLine loggedData :: List.map (paymentLine loggedData incomeModel) incomes)
+ ( headerLine loggedData :: List.map (paymentLine loggedData) incomes)
, if List.isEmpty (Dict.toList loggedData.incomes)
then
div
@@ -66,8 +65,8 @@ headerLine loggedData =
, div [ class "cell" ] []
]
-paymentLine : LoggedData -> Income.Model -> (IncomeId, Income) -> Html Msg
-paymentLine loggedData incomeModel (incomeId, income) =
+paymentLine : LoggedData -> (IncomeId, Income) -> Html Msg
+paymentLine loggedData (incomeId, income) =
div
[ class "row" ]
[ div
diff --git a/src/client/LoggedIn/Income/Update.elm b/src/client/LoggedIn/Income/Update.elm
deleted file mode 100644
index 0023c76..0000000
--- a/src/client/LoggedIn/Income/Update.elm
+++ /dev/null
@@ -1,24 +0,0 @@
-module LoggedIn.Income.Update exposing
- ( update
- )
-
-import Form exposing (Form)
-
-import LoggedData exposing (LoggedData)
-
-import LoggedIn.Income.Model as Income
-import LoggedIn.Income.Msg as Income
-
-update : LoggedData -> Income.Msg -> Income.Model -> (Income.Model, Cmd Income.Msg)
-update loggedData msg model =
- case msg of
-
- Income.NoOp ->
- ( model
- , Cmd.none
- )
-
- Income.AddIncomeMsg formMsg ->
- ( { model | addIncome = Form.update Income.validation formMsg model.addIncome }
- , Cmd.none
- )
diff --git a/src/client/LoggedIn/Income/View.elm b/src/client/LoggedIn/Income/View.elm
index 00a1646..85b0dc3 100644
--- a/src/client/LoggedIn/Income/View.elm
+++ b/src/client/LoggedIn/Income/View.elm
@@ -30,18 +30,14 @@ import Model.Translations exposing (getMessage, getParamMessage)
import Model.Payer exposing (useIncomesFrom)
import Model.User exposing (UserId, User)
import Model.View as View
-import LoggedIn.Income.Model as Income
-
-import LoggedIn.Msg as LoggedInMsg
-import LoggedIn.Income.Msg as IncomeMsg
import View.Date as Date
import LoggedIn.View.Format as Format
import View.Color as Color
-import LoggedIn.Income.View.Table as Table
+import LoggedIn.Income.Table as Table
-view : LoggedData -> Income.Model -> Html Msg
-view loggedData incomeModel =
+view : LoggedData -> Html Msg
+view loggedData =
div
[ class "income" ]
[ div
@@ -60,7 +56,7 @@ view loggedData incomeModel =
Nothing
]
]
- , Table.view loggedData incomeModel
+ , Table.view loggedData
]
cumulativeIncomesView : LoggedData -> Time -> Html Msg