From 7529a18ff0ac443e7f9764b5e2d0f57a5d3a850b Mon Sep 17 00:00:00 2001
From: Joris
Date: Wed, 9 Oct 2019 23:16:00 +0200
Subject: Use common payment validation in the backend

Remove deprecated backend validation
---
 common/src/Common/Validation/Payment.hs | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

(limited to 'common/src/Common/Validation/Payment.hs')

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
-- 
cgit v1.2.3