Safe Haskell | None |
---|---|
Language | Haskell2010 |
- module Model.Party.Types
- partyName :: PartyRow -> Text
- partyEmail :: Party -> Maybe ByteString
- lookupParty :: (MonadDB c m, MonadHasIdentity c m) => Id Party -> m (Maybe Party)
- isNobodyParty :: Party -> Bool
- lookupPartyAuthorizations :: (MonadDB c m, MonadHasIdentity c m) => m [(Party, Maybe Permission)]
- lookupAuthParty :: (MonadDB c m, MonadHasIdentity c m) => Id Party -> m (Maybe Party)
- lookupSiteAuthByEmail :: MonadDB c m => Bool -> ByteString -> m (Maybe SiteAuth)
- changeParty :: MonadAudit c m => Party -> m ()
- changeAccount :: MonadAudit c m => SiteAuth -> m ()
- addParty :: MonadAudit c m => Party -> m Party
- addAccount :: MonadAudit c m => Account -> m Account
- removeParty :: MonadAudit c m => Party -> m Bool
- auditAccountLogin :: (MonadHasRequest c m, MonadDB c m) => Bool -> Party -> ByteString -> m ()
- recentAccountLogins :: MonadDB c m => Party -> m Int64
- partyRowJSON :: ToObject o => PartyRow -> Record (Id Party) o
- partyJSON :: ToObject o => Party -> Record (Id Party) o
- toFormattedParty :: Party -> FormattedParty
- data PartyFilter = PartyFilter {}
- findParties :: (MonadHasIdentity c m, MonadDB c m) => PartyFilter -> m [Party]
- lookupAvatar :: MonadDB c m => Id Party -> m (Maybe Asset)
- changeAvatar :: MonadAudit c m => Party -> Maybe Asset -> m Bool
- getDuplicateParties :: MonadDB c m => m [PartyRow]
Documentation
module Model.Party.Types
partyEmail :: Party -> Maybe ByteString Source #
lookupParty :: (MonadDB c m, MonadHasIdentity c m) => Id Party -> m (Maybe Party) Source #
Given the id for a party, ensure ... and resolve the id to the full party object. The produced party has permissions for the retrieving viewer baked in.
isNobodyParty :: Party -> Bool Source #
lookupPartyAuthorizations :: (MonadDB c m, MonadHasIdentity c m) => m [(Party, Maybe Permission)] Source #
lookupAuthParty :: (MonadDB c m, MonadHasIdentity c m) => Id Party -> m (Maybe Party) Source #
Find a party by id, populating the party's permission based on a complicated set of cascading rules that determines the current viewer's permissions over the party.
lookupSiteAuthByEmail Source #
:: MonadDB c m | |
=> Bool | be case-insensitive? |
-> ByteString | |
-> m (Maybe SiteAuth) |
resolve email to its party and enclosing account and site authenticated identity, possibly case insensitive
changeParty :: MonadAudit c m => Party -> m () Source #
changeAccount :: MonadAudit c m => SiteAuth -> m () Source #
addParty :: MonadAudit c m => Party -> m Party Source #
Create a new party without an account, intended for creating institution parties.
addAccount :: MonadAudit c m => Account -> m Account Source #
Create a new account without any authorizations, during registration, using the nobodySiteAuth. The account password will be blank. The party will not have any authorizations yet.
removeParty :: MonadAudit c m => Party -> m Bool Source #
auditAccountLogin :: (MonadHasRequest c m, MonadDB c m) => Bool -> Party -> ByteString -> m () Source #
toFormattedParty :: Party -> FormattedParty Source #
Apply formatting and authorization to a core Party object, replacing partyJSON gradually
data PartyFilter Source #
Filter criteria and result paging options
PartyFilter | |
|
findParties :: (MonadHasIdentity c m, MonadDB c m) => PartyFilter -> m [Party] Source #
changeAvatar :: MonadAudit c m => Party -> Maybe Asset -> m Bool Source #
getDuplicateParties :: MonadDB c m => m [PartyRow] Source #