module Lucienne.Controller.ChangePassword (changePassword, doChangePassword) where import qualified Lucienne.Database as DB import Lucienne.Controller.Imports import qualified Lucienne.View.ChangePassword as View import qualified Lucienne.Url as Url changePassword :: User -> Controller Response changePassword _ = do msg <- getMessages ok $ toResponse $ View.changePassword msg doChangePassword :: User -> Controller Response doChangePassword user = do decodeBody Just password <- lookParameter "password" Just checkPassword <- lookParameter "check_password" if password == checkPassword && not (null password) then do lift $ DB.changePassword user password seeHome else seeOther $ withMessage CheckPassword Url.changePassword