Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Mensam.Server.User
Synopsis
- data AuthenticationError
- userAuthenticate :: (MonadLogger m, MonadSeldaPool m) => Username -> Password -> SeldaTransactionT m (Either AuthenticationError UserAuthenticated)
- userLookupId :: (MonadIO m, MonadLogger m, MonadSeldaPool m) => Username -> SeldaTransactionT m (Maybe IdentifierUser)
- userGet :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> SeldaTransactionT m User
- data User = MkUser {}
- userCreate :: (MonadIO m, MonadLogger m, MonadSeldaPool m) => Username -> Password -> EmailAddress -> Bool -> Bool -> SeldaTransactionT m IdentifierUser
- data SqlErrorMensamUsernameIsTaken = MkSqlErrorMensamUsernameIsTaken
- userSetPassword :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> Password -> SeldaTransactionT m ()
- userSetPicture :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> Maybe ByteStringJpeg -> SeldaTransactionT m ()
- userGetPicture :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> SeldaTransactionT m (Maybe ByteStringJpeg)
- data SessionValidity
- userSessionValidate :: (MonadIO m, MonadLogger m, MonadSeldaPool m) => IdentifierSession -> SeldaTransactionT m SessionValidity
- userSessionGet :: (MonadLogger m, MonadSeldaPool m) => IdentifierSession -> SeldaTransactionT m Session
- userSessionCreate :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> UTCTime -> Maybe UTCTime -> SeldaTransactionT m IdentifierSession
- userSessionDelete :: (MonadLogger m, MonadSeldaPool m) => IdentifierSession -> SeldaTransactionT m ()
- userConfirmationConfirm :: (MonadIO m, MonadLogger m, MonadSeldaPool m) => IdentifierUser -> ConfirmationSecret -> SeldaTransactionT m (Either ConfirmationError ())
- userConfirmationCreate :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> ConfirmationEffect -> UTCTime -> SeldaTransactionT m ConfirmationSecret
- data ConfirmationError
- newtype ConfirmationEffect = MkConfirmationEffectEmailValidation EmailAddress
- userNotificationsPreferencesEmailGet :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> SeldaTransactionT m EmailPreferences
- userNotificationsPreferencesEmailSet :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> Bool -> SeldaTransactionT m ()
- data EmailPreferences
- data SqlErrorMensamEmailNotVerified = MkSqlErrorMensamEmailNotVerified
Documentation
data AuthenticationError Source #
Instances
userAuthenticate :: (MonadLogger m, MonadSeldaPool m) => Username -> Password -> SeldaTransactionT m (Either AuthenticationError UserAuthenticated) Source #
userLookupId :: (MonadIO m, MonadLogger m, MonadSeldaPool m) => Username -> SeldaTransactionT m (Maybe IdentifierUser) Source #
userGet :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> SeldaTransactionT m User Source #
Constructors
MkUser | |
Fields |
Instances
Arguments
:: (MonadIO m, MonadLogger m, MonadSeldaPool m) | |
=> Username | |
-> Password | |
-> EmailAddress | |
-> Bool | email address visible |
-> Bool | receive email notifications |
-> SeldaTransactionT m IdentifierUser |
data SqlErrorMensamUsernameIsTaken Source #
Constructors
MkSqlErrorMensamUsernameIsTaken |
Instances
userSetPassword :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> Password -> SeldaTransactionT m () Source #
userSetPicture :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> Maybe ByteStringJpeg -> SeldaTransactionT m () Source #
userGetPicture :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> SeldaTransactionT m (Maybe ByteStringJpeg) Source #
data SessionValidity Source #
Constructors
SessionValid | |
SessionInvalid |
Instances
userSessionValidate :: (MonadIO m, MonadLogger m, MonadSeldaPool m) => IdentifierSession -> SeldaTransactionT m SessionValidity Source #
userSessionGet :: (MonadLogger m, MonadSeldaPool m) => IdentifierSession -> SeldaTransactionT m Session Source #
Arguments
:: (MonadLogger m, MonadSeldaPool m) | |
=> IdentifierUser | |
-> UTCTime | session created |
-> Maybe UTCTime | session expires |
-> SeldaTransactionT m IdentifierSession |
userSessionDelete :: (MonadLogger m, MonadSeldaPool m) => IdentifierSession -> SeldaTransactionT m () Source #
userConfirmationConfirm :: (MonadIO m, MonadLogger m, MonadSeldaPool m) => IdentifierUser -> ConfirmationSecret -> SeldaTransactionT m (Either ConfirmationError ()) Source #
userConfirmationCreate :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> ConfirmationEffect -> UTCTime -> SeldaTransactionT m ConfirmationSecret Source #
data ConfirmationError Source #
Instances
newtype ConfirmationEffect Source #
Constructors
MkConfirmationEffectEmailValidation EmailAddress |
Instances
userNotificationsPreferencesEmailGet :: (MonadLogger m, MonadSeldaPool m) => IdentifierUser -> SeldaTransactionT m EmailPreferences Source #
userNotificationsPreferencesEmailSet Source #
Arguments
:: (MonadLogger m, MonadSeldaPool m) | |
=> IdentifierUser | |
-> Bool | receive email notifications |
-> SeldaTransactionT m () |
Make sure the email address is verified and only then set new email preferences.
data EmailPreferences Source #
Instances
data SqlErrorMensamEmailNotVerified Source #
Constructors
MkSqlErrorMensamEmailNotVerified |