diff --git a/yesod-auth/Yesod/Auth.hs b/yesod-auth/Yesod/Auth.hs index 503443b5..0fb6dedc 100644 --- a/yesod-auth/Yesod/Auth.hs +++ b/yesod-auth/Yesod/Auth.hs @@ -91,6 +91,10 @@ data Creds master = Creds class (Yesod master, PathPiece (AuthId master), RenderMessage master FormMessage) => YesodAuth master where type AuthId master + -- | specify the layout. Uses defaultLayout by default + authLayout :: WidgetT master IO () -> HandlerT master IO Html + authLayout = defaultLayout + -- | Default destination on successful login, if no other -- destination exists. loginDest :: master -> Route master @@ -109,7 +113,7 @@ class (Yesod master, PathPiece (AuthId master), RenderMessage master FormMessage loginHandler :: AuthHandler master RepHtml loginHandler = do tp <- getRouteToParent - lift $ defaultLayout $ do + lift $ authLayout $ do setTitleI Msg.LoginTitle master <- getYesod mapM_ (flip apLogin tp) (authPlugins master) @@ -273,7 +277,7 @@ setCreds doRedirects creds = do Nothing -> do sendResponseStatus unauthorized401 =<< ( selectRep $ do - provideRep $ defaultLayout $ toWidget [shamlet|
_{Msg.ConfirmationEmailSent identifier}|] @@ -221,7 +221,7 @@ getRegisterR :: YesodAuthEmail master => HandlerT Auth (HandlerT master IO) Html getRegisterR = do email <- newIdent tp <- getRouteToParent - lift $ defaultLayout $ do + lift $ authLayout $ do setTitleI Msg.RegisterLong [whamlet|
_{Msg.EnterEmail} @@ -275,7 +275,7 @@ getForgotPasswordR :: YesodAuthEmail master => HandlerT Auth (HandlerT master IO getForgotPasswordR = do tp <- getRouteToParent email <- newIdent - lift $ defaultLayout $ do + lift $ authLayout $ do setTitleI Msg.PasswordResetTitle [whamlet|
_{Msg.PasswordResetPrompt} @@ -307,7 +307,7 @@ getVerifyR lid key = do lift $ setLoginLinkKey uid redirect setpassR _ -> return () - lift $ defaultLayout $ do + lift $ authLayout $ do setTitleI Msg.InvalidKey [whamlet| $newline never @@ -358,7 +358,7 @@ getPasswordR = do Nothing -> loginErrorMessageI LoginR Msg.BadSetPass tp <- getRouteToParent needOld <- maybe (return True) (lift . needOldPassword) maid - lift $ defaultLayout $ do + lift $ authLayout $ do setTitleI Msg.SetPassTitle [whamlet| $newline never