From 0b191f5c48edffc9da3e38c284e9640fd82e7cb1 Mon Sep 17 00:00:00 2001 From: Joris Date: Mon, 5 Jun 2017 18:02:13 +0200 Subject: Replace persistent by sqlite-simple --- src/server/Controller/SignIn.hs | 33 ++++++++++++--------------------- 1 file changed, 12 insertions(+), 21 deletions(-) (limited to 'src/server/Controller/SignIn.hs') diff --git a/src/server/Controller/SignIn.hs b/src/server/Controller/SignIn.hs index 1b8121d..152168c 100644 --- a/src/server/Controller/SignIn.hs +++ b/src/server/Controller/SignIn.hs @@ -4,48 +4,39 @@ module Controller.SignIn ( signIn ) where -import Web.Scotty - -import Network.HTTP.Types.Status (ok200, badRequest400) - -import Database.Persist hiding (Key) - import Control.Monad.IO.Class (liftIO) - import Data.Text (Text) +import Network.HTTP.Types.Status (ok200, badRequest400) import qualified Data.Text as T -import qualified Data.Text.Lazy as TL import qualified Data.Text.Encoding as TE +import qualified Data.Text.Lazy as TL +import Web.Scotty import Conf (Conf) -import qualified Conf - -import SendMail - -import Text.Email.Validate as Email - -import Model.Database -import Model.User -import Model.SignIn import Model.Message.Key - +import qualified Conf +import qualified Model.Query as Query +import qualified Model.SignIn as SignIn +import qualified Model.User as User +import qualified SendMail +import qualified Text.Email.Validate as Email import qualified View.Mail.SignIn as SignIn signIn :: Conf -> Text -> ActionM () signIn conf login = if Email.isValid (TE.encodeUtf8 login) then do - maybeUser <- liftIO . runDb $ getUser login + maybeUser <- liftIO . Query.run $ User.getUser login case maybeUser of Just user -> do - token <- liftIO . runDb $ createSignInToken login + token <- liftIO . Query.run $ SignIn.createSignInToken login let url = T.concat [ if Conf.https conf then "https://" else "http://", Conf.hostname conf, "?signInToken=", token ] - maybeSentMail <- liftIO . sendMail $ SignIn.mail conf (entityVal user) url [login] + maybeSentMail <- liftIO . SendMail.sendMail $ SignIn.mail conf user url [login] case maybeSentMail of Right _ -> status ok200 -- cgit v1.2.3