Added clearCreds symmetric to setCreds function
This commit is contained in:
parent
48db89cb45
commit
f5f84e830d
@ -18,6 +18,7 @@ module Yesod.Auth
|
|||||||
-- * Plugin interface
|
-- * Plugin interface
|
||||||
, Creds (..)
|
, Creds (..)
|
||||||
, setCreds
|
, setCreds
|
||||||
|
, clearCreds
|
||||||
-- * User functions
|
-- * User functions
|
||||||
, defaultMaybeAuthId
|
, defaultMaybeAuthId
|
||||||
, maybeAuth
|
, maybeAuth
|
||||||
@ -184,6 +185,14 @@ $newline never
|
|||||||
onLogin
|
onLogin
|
||||||
redirectUltDest $ loginDest y
|
redirectUltDest $ loginDest y
|
||||||
|
|
||||||
|
clearCreds :: YesodAuth master => Bool -> GHandler sub master ()
|
||||||
|
clearCreds doRedirects = do
|
||||||
|
y <- getYesod
|
||||||
|
deleteSession credsKey
|
||||||
|
when doRedirects $ do
|
||||||
|
onLogout
|
||||||
|
redirectUltDest $ logoutDest y
|
||||||
|
|
||||||
getCheckR :: YesodAuth master => GHandler Auth master RepHtmlJson
|
getCheckR :: YesodAuth master => GHandler Auth master RepHtmlJson
|
||||||
getCheckR = do
|
getCheckR = do
|
||||||
creds <- maybeAuthId
|
creds <- maybeAuthId
|
||||||
@ -219,11 +228,7 @@ getLogoutR = do
|
|||||||
setUltDestReferer' >> redirectToPost (tm LogoutR)
|
setUltDestReferer' >> redirectToPost (tm LogoutR)
|
||||||
|
|
||||||
postLogoutR :: YesodAuth master => GHandler Auth master ()
|
postLogoutR :: YesodAuth master => GHandler Auth master ()
|
||||||
postLogoutR = do
|
postLogoutR = clearCreds True
|
||||||
y <- getYesod
|
|
||||||
deleteSession credsKey
|
|
||||||
onLogout
|
|
||||||
redirectUltDest $ logoutDest y
|
|
||||||
|
|
||||||
handlePluginR :: YesodAuth master => Text -> [Text] -> GHandler Auth master ()
|
handlePluginR :: YesodAuth master => Text -> [Text] -> GHandler Auth master ()
|
||||||
handlePluginR plugin pieces = do
|
handlePluginR plugin pieces = do
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user