- data Auth
- data AuthPlugin m = AuthPlugin {}
- data AuthRoute
- getAuth :: a -> Auth
- class (Yesod m, SinglePiece (AuthId m)) => YesodAuth m where
- type AuthId m
- loginDest :: m -> Route m
- logoutDest :: m -> Route m
- getAuthId :: Creds m -> GHandler s m (Maybe (AuthId m))
- authPlugins :: [AuthPlugin m]
- loginHandler :: GHandler Auth m RepHtml
- renderAuthMessage :: m -> [Text] -> AuthMessage -> Html
- data Creds m = Creds {
- credsPlugin :: Text
- credsIdent :: Text
- credsExtra :: [(Text, Text)]
- setCreds :: YesodAuth m => Bool -> Creds m -> GHandler s m ()
- maybeAuthId :: YesodAuth m => GHandler s m (Maybe (AuthId m))
- maybeAuth :: (YesodAuth m, Key val ~ AuthId m, PersistBackend (YesodDB m (GGHandler s m IO)), PersistEntity val, YesodPersist m) => GHandler s m (Maybe (Key val, val))
- requireAuthId :: YesodAuth m => GHandler s m (AuthId m)
- requireAuth :: (YesodAuth m, Key val ~ AuthId m, PersistBackend (YesodDB m (GGHandler s m IO)), PersistEntity val, YesodPersist m) => GHandler s m (Key val, val)
Subsite
(Yesod master, YesodAuth master) => YesodDispatch Auth master | |
YesodAuth m => YesodMessage Auth m |
data AuthPlugin m Source
class (Yesod m, SinglePiece (AuthId m)) => YesodAuth m whereSource
loginDest :: m -> Route mSource
Default destination on successful login, if no other destination exists.
logoutDest :: m -> Route mSource
Default destination on successful logout, if no other destination exists.
getAuthId :: Creds m -> GHandler s m (Maybe (AuthId m))Source
authPlugins :: [AuthPlugin m]Source
loginHandler :: GHandler Auth m RepHtmlSource
What to show on the login page.
:: m | |
-> [Text] | languages |
-> AuthMessage | |
-> Html |
Plugin interface
User credentials
Creds | |
|
setCreds :: YesodAuth m => Bool -> Creds m -> GHandler s m ()Source
FIXME: won't show up till redirect
User functions
maybeAuthId :: YesodAuth m => GHandler s m (Maybe (AuthId m))Source
Retrieves user credentials, if user is authenticated.
maybeAuth :: (YesodAuth m, Key val ~ AuthId m, PersistBackend (YesodDB m (GGHandler s m IO)), PersistEntity val, YesodPersist m) => GHandler s m (Maybe (Key val, val))Source
requireAuthId :: YesodAuth m => GHandler s m (AuthId m)Source
requireAuth :: (YesodAuth m, Key val ~ AuthId m, PersistBackend (YesodDB m (GGHandler s m IO)), PersistEntity val, YesodPersist m) => GHandler s m (Key val, val)Source