ú΋3±¥      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£ ¤ None) Defaults to *. 1  !"#$%&'()*+,-./012341  !"#$%&'()*+,-./012341('&%$#"!  )*+-./0123,4 $('&%$#"!  )*+,-./01234 None5¥¦§5¥¨©ª«¦5¥¦§None8If the AuthId9 for a given site is a persistent ID, this will give the  value for that entity. E.g.:   type AuthId MySite = UserId  AuthEntity MySite ~ User  Since 1.2.0 9>Constraint which states that the given site is an instance of  YesodAuth  and that its AuthId is in fact a persistent Key for the given value. M This is the common case in Yesod, and means that you can easily look up the " full informatin on a given user.  Since 1.2.0 <5Default destination on successful login, if no other  destination exists. =6Default destination on successful logout, if no other  destination exists. >9Determine the ID associated with the set of credentials. ?&Which authentication backends to use. @ What to show on the login page. A4Used for i18n of messages provided by this package. BCAfter login and logout, redirect to the referring page, instead of  < and = . Default is ¬. CCReturn an HTTP connection manager that is stored in the foundation H type. This allows backends to reuse persistent connections. If none of  the backends you'5re using use HTTP connections, you can safely return  error "authHttpManager" here. D0Called on a successful login. By default, calls  setMessageI NowLoggedIn. E+Called on logout. By default, does nothing F6Retrieves user credentials, if user is authenticated. By default, this calls T to get the user ID from the J session. This can be overridden to allow authentication via other means, C such as checking for a special token in a request header. This is E especially useful for creating an API to be accessed via some means  other than a browser.  Since 1.2.0 GUser credentials IHow the user was authenticated J-Identifier. Exact meaning depends on plugin. TGRetrieves user credentials from the session, if user is authenticated. This function does not- confirm that the credentials are valid, see  maybeAuthIdRaw for more information.  Since 1.1.2 V5For HTML, set the message and redirect to the route. - For JSON, send the message and a 401 status WXSets user credentials for the session after checking them with authentication backends. X1Clears current user credentials for the session.  Since 1.1.7 Z Similar to F/, but redirects to a login page if user is not  authenticated.  Since 1.1.0 96789­®¯:;<=>?@A languages BCDEFGHIJKLMNOP°±QRS²T³U´VµW!if HTTP redirects should be done new credentials Xif HTTP redirect to = should be done ¶·¸¹º»YZ[¼½¾¿-À5¨©ª«6789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[(5RLMNOPS:;<=>?@ABCDEF98GHIJKWXVUTYZ[67Q"6789­®¯: ;<=>?@ABCDEFGHIJKLMNOP°±QRS²T³U´VµWX¶·¸¹º»YZ[¼½¾¿None\IA settings type for various configuration options relevant to BrowserID. See:  +http://www.yesodweb.com/book/settings-types  Since 1.2.0 ]BrowserID audience value. If Nothing!, will be extracted based on the  approot.  Default: Nothing  Since 1.2.0 ^?Use asynchronous Javascript loading for the BrowserID JS file.  Default: True.  Since 1.2.0 `JGenerates a function to handle on-click events, and returns that function  name. \Á]^ÂÃ_`Ä\]^_`_`\]^]^\Á]^ÂÃ_`ÄNoneaaaaNonedGAdd a new email address to the database, but indicate that the address  has not yet been verified.  Since 1.1.0 e8Send an email to the given address to verify ownership.  Since 1.1.0 f1Get the verification key for the given email ID.  Since 1.1.0 g1Set the verification key for the given email ID.  Since 1.1.0 h/Verify the email address on the given account.  Since 1.1.0 i/Get the salted password for the given account.  Since 1.1.0 j/Set the salted password for the given account.  Since 1.1.0 k"Get the credentials for the given  Identifier, which may be either an > email address or some other identification (e.g., username).  Since 1.2.0 l.Get the email address for the given email ID.  Since 1.1.0 m'Generate a random alphanumeric string.  Since 1.1.0 n=Route to send user to after password has been set correctly.  Since 1.2.0 oEDoes the user need to provide the current password in order to set a  new password? LDefault: if the user logged in via an email link do not require a password.  Since 1.2.1 pKCheck that the given plain-text password meets minimum security standards. 0Default: password is at least three characters. q-Response after sending a confirmation email.  Since 1.2.2 rPAdditional normalization of email addresses, besides standard canonicalization. HDefault: do nothing. Note that in future versions of Yesod, the default H will change to lower casing the email address. At that point, you will H need to either ensure your database values are migrated to lower case, / or change this default back to doing nothing.  Since 1.2.3 s3Data stored in a database for each e-mail address. zIAn Identifier generalizes an email address to allow users to log in with 2 some other form of credentials (e.g., username). LNote that any of these other identifiers must not be valid email addresses.  Since 1.2.0 …0Salt a password with a randomly generated salt. ‡?Session variable set when user logged in via a login link. See  o.  Since 1.2.1 ˆSet ‡ to the current time.  Since 1.2.1 4bcdefghijklmnopqrstuvwxyz{|}~€‚ƒÅ„ÆÇallow usernames? ÈÉÊËÌÍÎυІcleartext password salted password Ñcleartext password salted password ‡ˆ'bcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ'„bcdefghijklmnopqrstuvwxy…€‚ƒ†~}|{z‡ˆbcdefghijklmnopqrstuvwxyz{|}~€‚ƒÅ„ÆÇÈÉÊËÌÍÎυІчˆNoneŽHThe main identifier provided by the OpenID authentication plugin is the  "OP-local identifier". There is also sometimes a "claimed" identifier  available. In the K field of the G# datatype, you can lookup this key / to find the claimed identifier, if available.  , let finalID = fromMaybe (credsIdent creds) 4 $ lookup claimedKey (credsExtra creds)  Since 1.0.2 pA helper function which will get the claimed identifier, if available, falling back to the OP local identifier. See Ž.  Since 1.0.2 ‰Š‹Œextension fields ÒŽ‰Š‹ŒŽŒŽ‰‹Š‰‹ŠŒÒŽNoneÓ!Get some form of a display name. ‘ app name key Ó‘‘‘ÓPortableStablepbrisbin@gmail.comNone ’1Interface for data type which holds user info. It' s just a % collection of getters and setters “&Retrieve password hash from user data ”Retrieve salt for password •8Deprecated for the better named setSaltAndPasswordHash –a callback for setPassword Ô8Generate random salt. Length of 8 is chosen arbitrarily Õ"Calculate salted hash using SHA1. —@Set password for user. This function should be used for setting E passwords. It generates random salt and calculates proper hashes. ˜AGiven a user ID and password in plaintext, validate them against  the database values. Ö>Handle the login form. First parameter is function which maps 6 username (whatever it might be) to unique user ID. ™DA drop in for the getAuthId method of your YesodAuth instance which 8 can be used if authHashDB is the only plugin in use. šCPrompt for username and password, validate that against a database 7 which holds the username and a hash of the password œ.Generate data base instances for a valid user ’“”•Salt Password hash –Salt Password hash ÔÕSalt  Password —˜User unique identifier Password in plaint-text ×Ö™ your site' s Auth Route  gets user ID the creds argument š›œžŸ ¡¢ØÙ’“”•–—˜™š›œžŸ ¡ÚÛÜÝÞ¢’“”•–—˜š™¡œžŸ ›¢’“”•–ÔÕ—˜×Ö™š›œžŸ ¡¢ØÙ Noneߣà¤á£¤¤£ߣà¤áâ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDE FGHIJKLMNOPQRSTUVWXXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚‚ƒ„…†‡ˆ‰Š‹Œ5Ž‘’“”•–—˜™š›œžŸ ¡¢£y¤¥¦§¨©ª«¬©­ ™ ® F ¯ ° ± ² ³ ´µ¶·¸¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌkÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßà×áâãäåæç§ Í è Ýéyesod-auth-1.2.3Yesod.Auth.BrowserIdYesod.Auth.HashDB Yesod.AuthYesod.Auth.MessageYesod.Auth.DummyYesod.Auth.EmailYesod.Auth.OpenIdYesod.Auth.RpxnowYesod.Auth.GoogleEmailYesod.Auth.Routesdata-default-class-0.0.1Data.Default.Classdefpersistent-1.2.3.0$Database.Persist.Class.PersistEntityUnique EntityFieldyesod-routes-1.2.0.1Yesod.Routes.ClassRoute AuthMessageInvalidUsernamePassPasswordResetPromptSendPasswordResetEmailProvideIdentifierPasswordResetTitleInvalidEmailAddressNoIdentifierProvidedPleaseProvidePasswordPleaseProvideUsername LoginTitle NowLoggedIn InvalidLogin LoginViaEmailFacebook PassUpdated PassMismatch ConfirmPassNewPassSetPass SetPassTitle BadSetPassInvalidEmailPass InvalidKeyInvalidKeyTitleAddressVerifiedConfirmationEmailSentConfirmationEmailSentTitle EnterEmail RegisterLongRegisterPasswordEmail LoginYahoo LoginGoogle LoginOpenIDNoOpenIDdefaultMessageenglishMessageportugueseMessagespanishMessageswedishMessage germanMessage frenchMessagenorwegianBokmÃ¥lMessagejapaneseMessagefinnishMessagechineseMessage czechMessageAuth AuthExceptionInvalidFacebookResponse AuthEntityYesodAuthPersist YesodAuthAuthId loginDest logoutDest getAuthId authPlugins loginHandlerrenderAuthMessageredirectToRefererauthHttpManageronLoginonLogout maybeAuthIdCreds credsPlugin credsIdent credsExtra AuthPluginapName apDispatchapLogin AuthHandler AuthRoutegetAuthdefaultMaybeAuthIdloginErrorMessageIloginErrorMessagesetCreds clearCreds maybeAuth requireAuthId requireAuthBrowserIdSettings bisAudience bisLazyLoad authBrowserId createOnClick authDummyYesodAuthEmail AuthEmailId addUnverifiedsendVerifyEmail getVerifyKey setVerifyKey verifyAccount getPassword setPassword getEmailCredsgetEmail randomKeyafterPasswordRouteneedOldPasswordcheckPasswordSecurityconfirmationEmailSentResponsenormalizeEmailAddress EmailCreds emailCredsIdemailCredsAuthIdemailCredsStatusemailCredsVerkeyemailCredsEmail Identifier VerStatus SaltedPassVerUrlVerKeyloginR registerRforgotPasswordRsetpassR authEmailsaltPass isValidPass loginLinkKeysetLoginLinkKeyIdentifierTypeOPLocalClaimed forwardUrl authOpenId claimedKey opLocalKeycredsIdentClaimed authRpxnow HashDBUseruserPasswordHashuserPasswordSaltsetUserHashAndSaltsetSaltAndPasswordHash validateUsergetAuthIdHashDB authHashDBUserId UserGenericUser userUsername userPassworduserSalt migrateUsersauthGoogleEmail resourcesAuth$fParseRouteAuthPluginRLogoutRLoginRCheckRghc-prim GHC.TypesFalseCachedMaybeAuthunCachedMaybeAuthPieceMethodcredsKey cachedAuthloginErrorMessageMasterIprovideJsonMessage getCheckRsetUltDestReferer' getLoginR getLogoutR postLogoutR handlePluginR redirectLogin$fYesodSubDispatchAuthHandlerT$fExceptionAuthException $fRenderMessagemasterAuthMessageyesod-core-1.2.4.5Yesod.Core.Internal.LiteApp LiteAppRoutepidcomplete$fDefaultBrowserIdSettingsverify getRegisterRregisterHelper postRegisterRgetForgotPasswordRpostForgotPasswordR getVerifyR postLoginR getPasswordR postPasswordR saltLength saltPass' isValidPass'completeHelpergetDisplayName randomSalt saltedHashlogin$fHashDBUserUserGeneric$fPersistFieldUserGeneric UniqueUserUserSalt UserPassword UserUsername googleIdent