aboutsummaryrefslogtreecommitdiff
path: root/src/client/Dialog/AddPayment/Model.elm
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/Dialog/AddPayment/Model.elm')
-rw-r--r--src/client/Dialog/AddPayment/Model.elm70
1 files changed, 0 insertions, 70 deletions
diff --git a/src/client/Dialog/AddPayment/Model.elm b/src/client/Dialog/AddPayment/Model.elm
deleted file mode 100644
index 07e7cbb..0000000
--- a/src/client/Dialog/AddPayment/Model.elm
+++ /dev/null
@@ -1,70 +0,0 @@
-module Dialog.AddPayment.Model exposing
- ( Model
- , init
- , initialAdd
- , initialClone
- , initialEdit
- , validation
- )
-
-import Date exposing (Date)
-import View.Date as Date
-
-import Form exposing (Form)
-import Form.Field as Field exposing (Field)
-import Form.Validate as Validate exposing (Validation)
-import Validation
-
-import Model.Category as Category exposing (Categories, CategoryId)
-import Model.Frequency as Frequency
-import Model.Payment as Payment exposing (Payment, PaymentId)
-import Model.Frequency exposing (Frequency)
-import Model.Translations exposing (Translations)
-
-type alias Model =
- { id : Maybe PaymentId
- , name : String
- , cost : Int
- , date : Date
- , category : CategoryId
- , frequency : Frequency
- }
-
-init : Form String Model
-init = Form.initial [] (validation Category.empty)
-
-initialAdd : Translations -> Date -> Frequency -> List (String, Field)
-initialAdd translations date frequency =
- [ ("date", Field.string (Date.shortView date translations))
- , ("frequency", Field.string (toString frequency))
- , ("category", Field.string "")
- ]
-
-initialClone : Translations -> Date -> Maybe CategoryId -> Payment -> List (String, Field)
-initialClone translations date category payment =
- [ ("name", Field.string payment.name)
- , ("cost", Field.string (toString payment.cost))
- , ("date", Field.string (Date.shortView date translations))
- , ("frequency", Field.string (toString payment.frequency))
- , ("category", Field.string (Maybe.map toString category |> Maybe.withDefault ""))
- ]
-
-initialEdit : Translations -> Maybe CategoryId -> Payment -> List (String, Field)
-initialEdit translations category payment =
- [ ("id", Field.string (toString payment.id))
- , ("name", Field.string payment.name)
- , ("cost", Field.string (toString payment.cost))
- , ("date", Field.string (Date.shortView payment.date translations))
- , ("frequency", Field.string (toString payment.frequency))
- , ("category", Field.string (Maybe.map toString category |> Maybe.withDefault ""))
- ]
-
-validation : Categories -> Validation String Model
-validation categories =
- Validate.map6 Model
- (Validate.field "id" (Validate.maybe Validate.int))
- (Validate.field "name" (Validate.string |> Validate.andThen Validate.nonEmpty))
- (Validate.field "cost" Validation.cost)
- (Validate.field "date" Validation.date)
- (Validate.field "category" (Validation.category categories))
- (Validate.field "frequency" Frequency.validate)