diff options
author | Joris | 2019-10-09 23:16:00 +0200 |
---|---|---|
committer | Joris | 2019-10-09 23:16:04 +0200 |
commit | 7529a18ff0ac443e7f9764b5e2d0f57a5d3a850b (patch) | |
tree | 3d5cfc1f2318c2d4f889ee70764929f1a96e4c41 /common/src/Common/Validation | |
parent | e5ac82f4808e974dec5f19fc6f059efaa5214022 (diff) |
Use common payment validation in the backend
Remove deprecated backend validation
Diffstat (limited to 'common/src/Common/Validation')
-rw-r--r-- | common/src/Common/Validation/Payment.hs | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/common/src/Common/Validation/Payment.hs b/common/src/Common/Validation/Payment.hs index b6c1d30..1bb00ce 100644 --- a/common/src/Common/Validation/Payment.hs +++ b/common/src/Common/Validation/Payment.hs @@ -2,20 +2,31 @@ module Common.Validation.Payment ( name , cost , date + , category ) where import Data.Text (Text) import Data.Time.Calendar (Day) import Data.Validation (Validation) -import qualified Data.Validation as Validation +import qualified Data.Validation as V +import Common.Model (CategoryId) +import qualified Common.Msg as Msg import qualified Common.Validation.Atomic as Atomic + name :: Text -> Validation Text Text name = Atomic.nonEmpty cost :: Text -> Validation Text Int -cost input = Validation.bindValidation (Atomic.number input) Atomic.nonNullNumber +cost input = V.bindValidation (Atomic.number input) Atomic.nonNullNumber date :: Text -> Validation Text Day date = Atomic.day + +category :: [CategoryId] -> CategoryId -> Validation Text CategoryId +category cs c = + if elem c cs then + V.Success c + else + V.Failure $ Msg.get Msg.Form_InvalidCategory |