parent
b7496f9940
commit
692e533da0
@ -1,4 +1,4 @@
|
|||||||
CampusIdentNote: Campus-Kennung bitte inkl. Domain-Teil (@campus.lmu.de) angeben.
|
CampusIdentPlaceholder: Vorname.Nachname@campus.lmu.de
|
||||||
CampusIdent: Campus-Kennung
|
CampusIdent: Campus-Kennung
|
||||||
CampusPassword: Passwort
|
CampusPassword: Passwort
|
||||||
CampusSubmit: Abschicken
|
CampusSubmit: Abschicken
|
||||||
|
|||||||
@ -33,7 +33,7 @@ data CampusLogin = CampusLogin
|
|||||||
, campusPassword :: Text
|
, campusPassword :: Text
|
||||||
} deriving (Generic, Typeable)
|
} deriving (Generic, Typeable)
|
||||||
|
|
||||||
data CampusMessage = MsgCampusIdentNote
|
data CampusMessage = MsgCampusIdentPlaceholder
|
||||||
| MsgCampusIdent
|
| MsgCampusIdent
|
||||||
| MsgCampusPassword
|
| MsgCampusPassword
|
||||||
| MsgCampusSubmit
|
| MsgCampusSubmit
|
||||||
@ -117,10 +117,16 @@ campusUser' conf pool User{userIdent}
|
|||||||
campusForm :: ( RenderMessage site FormMessage
|
campusForm :: ( RenderMessage site FormMessage
|
||||||
, RenderMessage site CampusMessage
|
, RenderMessage site CampusMessage
|
||||||
, Button site ButtonSubmit
|
, Button site ButtonSubmit
|
||||||
) => AForm (HandlerT site IO) CampusLogin
|
) => WForm (HandlerT site IO) (FormResult CampusLogin)
|
||||||
campusForm = CampusLogin
|
campusForm = do
|
||||||
<$> areq ciField (fslpI MsgCampusIdent "user.name@campus.lmu.de" & setTooltip MsgCampusIdentNote & addAttr "autofocus" "") Nothing
|
MsgRenderer mr <- getMsgRenderer
|
||||||
<*> areq passwordField (fslI MsgCampusPassword) Nothing
|
|
||||||
|
ident <- wreq ciField (fslpI MsgCampusIdent (mr MsgCampusIdentPlaceholder) & addAttr "autofocus" "") Nothing
|
||||||
|
password <- wreq passwordField (fslI MsgCampusPassword) Nothing
|
||||||
|
|
||||||
|
return $ CampusLogin
|
||||||
|
<$> ident
|
||||||
|
<*> password
|
||||||
|
|
||||||
apLdap :: Text
|
apLdap :: Text
|
||||||
apLdap = "LDAP"
|
apLdap = "LDAP"
|
||||||
@ -137,7 +143,7 @@ campusLogin conf@LdapConf{..} pool = AuthPlugin{..}
|
|||||||
apName = apLdap
|
apName = apLdap
|
||||||
apDispatch :: Text -> [Text] -> HandlerT Auth (HandlerT site IO) TypedContent
|
apDispatch :: Text -> [Text] -> HandlerT Auth (HandlerT site IO) TypedContent
|
||||||
apDispatch "POST" [] = do
|
apDispatch "POST" [] = do
|
||||||
((loginRes, _), _) <- lift . runFormPost $ renderAForm FormStandard campusForm
|
((loginRes, _), _) <- lift . runFormPost $ renderWForm FormStandard campusForm
|
||||||
case loginRes of
|
case loginRes of
|
||||||
FormFailure errs -> do
|
FormFailure errs -> do
|
||||||
forM_ errs $ addMessage Error . toHtml
|
forM_ errs $ addMessage Error . toHtml
|
||||||
@ -169,7 +175,7 @@ campusLogin conf@LdapConf{..} pool = AuthPlugin{..}
|
|||||||
loginErrorMessageI LoginR Msg.AuthError
|
loginErrorMessageI LoginR Msg.AuthError
|
||||||
apDispatch _ _ = notFound
|
apDispatch _ _ = notFound
|
||||||
apLogin toMaster = do
|
apLogin toMaster = do
|
||||||
(login, loginEnctype) <- handlerToWidget . generateFormPost $ renderAForm FormStandard campusForm
|
(login, loginEnctype) <- handlerToWidget . generateFormPost $ renderWForm FormStandard campusForm
|
||||||
let loginForm = wrapForm login FormSettings
|
let loginForm = wrapForm login FormSettings
|
||||||
{ formMethod = POST
|
{ formMethod = POST
|
||||||
, formAction = Just . SomeRoute . toMaster $ PluginR "LDAP" []
|
, formAction = Just . SomeRoute . toMaster $ PluginR "LDAP" []
|
||||||
|
|||||||
Reference in New Issue
Block a user