From 28af340573bad840477ce171b8eb3abfd73ace9d Mon Sep 17 00:00:00 2001 From: Saku Laesvuori Date: Wed, 1 Nov 2023 09:27:55 +0200 Subject: [PATCH] Verify email format more strictly --- core/src/Datarekisteri/Core/Types.hs | 3 ++- frontend/src/Datarekisteri/Frontend/FormFields.hs | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/core/src/Datarekisteri/Core/Types.hs b/core/src/Datarekisteri/Core/Types.hs index bdd1af8..5d04874 100644 --- a/core/src/Datarekisteri/Core/Types.hs +++ b/core/src/Datarekisteri/Core/Types.hs @@ -101,7 +101,8 @@ renderPhoneNumber (PhoneNumber txt) = txt toPhoneNumber :: Text -> Maybe PhoneNumber toPhoneNumber txt = do guard $ not $ T.null txt - guard $ T.all (`elem` ("+ 0123456789" :: [Char])) txt + guard $ T.head txt `elem` ['+','0'] + guard $ T.all (`elem` (" 0123456789" :: [Char])) $ T.tail txt pure $ PhoneNumber txt instance Eq PhoneNumber where diff --git a/frontend/src/Datarekisteri/Frontend/FormFields.hs b/frontend/src/Datarekisteri/Frontend/FormFields.hs index 7121fc1..af01973 100644 --- a/frontend/src/Datarekisteri/Frontend/FormFields.hs +++ b/frontend/src/Datarekisteri/Frontend/FormFields.hs @@ -39,7 +39,7 @@ telephoneField = Field , fieldView = \id name otherAttributes result isRequired -> let result' = either (\x -> x) renderPhoneNumber result in [whamlet| - + |] , fieldEnctype = UrlEncoded }