IAccountManager
in
Access user profile information
Tags
Table of Contents
Constants
- ALLOWED_PROPERTIES = [self::PROPERTY_AVATAR, self::PROPERTY_DISPLAYNAME, self::PROPERTY_PHONE, self::PROPERTY_EMAIL, self::PROPERTY_WEBSITE, self::PROPERTY_ADDRESS, self::PROPERTY_TWITTER, self::PROPERTY_FEDIVERSE, self::PROPERTY_ORGANISATION, self::PROPERTY_ROLE, self::PROPERTY_HEADLINE, self::PROPERTY_BIOGRAPHY, self::PROPERTY_PROFILE_ENABLED, self::PROPERTY_BIRTHDATE]
- The list of allowed properties
- ALLOWED_SCOPES = [self::SCOPE_PRIVATE, self::SCOPE_LOCAL, self::SCOPE_FEDERATED, self::SCOPE_PUBLISHED, self::VISIBILITY_PRIVATE, self::VISIBILITY_CONTACTS_ONLY, self::VISIBILITY_PUBLIC]
- The list of allowed scopes
- COLLECTION_EMAIL = 'additional_mail'
- NOT_VERIFIED = '0'
- PROPERTY_ADDRESS = 'address'
- PROPERTY_AVATAR = 'avatar'
- PROPERTY_BIOGRAPHY = 'biography'
- PROPERTY_BIRTHDATE = 'birthdate'
- PROPERTY_DISPLAYNAME = 'displayname'
- PROPERTY_DISPLAYNAME_LEGACY = 'display-name'
- PROPERTY_EMAIL = 'email'
- PROPERTY_FEDIVERSE = 'fediverse'
- PROPERTY_HEADLINE = 'headline'
- PROPERTY_ORGANISATION = 'organisation'
- PROPERTY_PHONE = 'phone'
- PROPERTY_PROFILE_ENABLED = 'profile_enabled'
- PROPERTY_ROLE = 'role'
- PROPERTY_TWITTER = 'twitter'
- PROPERTY_WEBSITE = 'website'
- SCOPE_FEDERATED = 'v2-federated'
- Contact details visible locally, through public link access and on trusted federated servers.
- SCOPE_LOCAL = 'v2-local'
- Contact details visible locally and through public link access on local instance
- SCOPE_PRIVATE = 'v2-private'
- Contact details visible locally only
- SCOPE_PUBLISHED = 'v2-published'
- Contact details visible locally, through public link access, on trusted federated servers and published to the public lookup server.
- VERIFICATION_IN_PROGRESS = '1'
- VERIFIED = '2'
- VISIBILITY_CONTACTS_ONLY = 'contacts'
- Contact details visible on trusted federated servers.
- VISIBILITY_PRIVATE = 'private'
- Contact details only visible locally
- VISIBILITY_PUBLIC = 'public'
- Contact details visible on trusted federated servers and in the public lookup server.
Methods
- getAccount() : IAccount
- Get the account data for a given user
- searchUsers() : array<string|int, mixed>
- Search for users based on account data
- updateAccount() : void
- Update the account data with for the user
Constants
ALLOWED_PROPERTIES
The list of allowed properties
public
mixed
ALLOWED_PROPERTIES
= [self::PROPERTY_AVATAR, self::PROPERTY_DISPLAYNAME, self::PROPERTY_PHONE, self::PROPERTY_EMAIL, self::PROPERTY_WEBSITE, self::PROPERTY_ADDRESS, self::PROPERTY_TWITTER, self::PROPERTY_FEDIVERSE, self::PROPERTY_ORGANISATION, self::PROPERTY_ROLE, self::PROPERTY_HEADLINE, self::PROPERTY_BIOGRAPHY, self::PROPERTY_PROFILE_ENABLED, self::PROPERTY_BIRTHDATE]
Tags
ALLOWED_SCOPES
The list of allowed scopes
public
mixed
ALLOWED_SCOPES
= [self::SCOPE_PRIVATE, self::SCOPE_LOCAL, self::SCOPE_FEDERATED, self::SCOPE_PUBLISHED, self::VISIBILITY_PRIVATE, self::VISIBILITY_CONTACTS_ONLY, self::VISIBILITY_PUBLIC]
Tags
COLLECTION_EMAIL
public
mixed
COLLECTION_EMAIL
= 'additional_mail'
Tags
NOT_VERIFIED
public
mixed
NOT_VERIFIED
= '0'
Tags
PROPERTY_ADDRESS
public
mixed
PROPERTY_ADDRESS
= 'address'
Tags
PROPERTY_AVATAR
public
mixed
PROPERTY_AVATAR
= 'avatar'
Tags
PROPERTY_BIOGRAPHY
public
mixed
PROPERTY_BIOGRAPHY
= 'biography'
Tags
PROPERTY_BIRTHDATE
public
mixed
PROPERTY_BIRTHDATE
= 'birthdate'
Tags
PROPERTY_DISPLAYNAME
public
mixed
PROPERTY_DISPLAYNAME
= 'displayname'
Tags
PROPERTY_DISPLAYNAME_LEGACY
public
mixed
PROPERTY_DISPLAYNAME_LEGACY
= 'display-name'
Tags
PROPERTY_EMAIL
public
mixed
PROPERTY_EMAIL
= 'email'
Tags
PROPERTY_FEDIVERSE
public
mixed
PROPERTY_FEDIVERSE
= 'fediverse'
Tags
PROPERTY_HEADLINE
public
mixed
PROPERTY_HEADLINE
= 'headline'
Tags
PROPERTY_ORGANISATION
public
mixed
PROPERTY_ORGANISATION
= 'organisation'
Tags
PROPERTY_PHONE
public
mixed
PROPERTY_PHONE
= 'phone'
Tags
PROPERTY_PROFILE_ENABLED
public
mixed
PROPERTY_PROFILE_ENABLED
= 'profile_enabled'
Tags
PROPERTY_ROLE
public
mixed
PROPERTY_ROLE
= 'role'
Tags
PROPERTY_TWITTER
public
mixed
PROPERTY_TWITTER
= 'twitter'
Tags
PROPERTY_WEBSITE
public
mixed
PROPERTY_WEBSITE
= 'website'
Tags
SCOPE_FEDERATED
Contact details visible locally, through public link access and on trusted federated servers.
public
mixed
SCOPE_FEDERATED
= 'v2-federated'
Tags
SCOPE_LOCAL
Contact details visible locally and through public link access on local instance
public
mixed
SCOPE_LOCAL
= 'v2-local'
Tags
SCOPE_PRIVATE
Contact details visible locally only
public
mixed
SCOPE_PRIVATE
= 'v2-private'
Tags
SCOPE_PUBLISHED
Contact details visible locally, through public link access, on trusted federated servers and published to the public lookup server.
public
mixed
SCOPE_PUBLISHED
= 'v2-published'
Tags
VERIFICATION_IN_PROGRESS
public
mixed
VERIFICATION_IN_PROGRESS
= '1'
Tags
VERIFIED
public
mixed
VERIFIED
= '2'
Tags
VISIBILITY_CONTACTS_ONLY
Contact details visible on trusted federated servers.
public
mixed
VISIBILITY_CONTACTS_ONLY
= 'contacts'
Tags
VISIBILITY_PRIVATE
Contact details only visible locally
public
mixed
VISIBILITY_PRIVATE
= 'private'
Tags
VISIBILITY_PUBLIC
Contact details visible on trusted federated servers and in the public lookup server.
public
mixed
VISIBILITY_PUBLIC
= 'public'
Tags
Methods
getAccount()
Get the account data for a given user
public
getAccount(IUser $user) : IAccount
Parameters
- $user : IUser
Tags
Return values
IAccountsearchUsers()
Search for users based on account data
public
searchUsers(string $property, array<string|int, string> $values) : array<string|int, mixed>
Parameters
- $property : string
-
- property or property collection name – since NC 22 the implementation MAY add a fitting property collection into the search even if a property name was given e.g. email property and email collection)
- $values : array<string|int, string>
Tags
Return values
array<string|int, mixed>updateAccount()
Update the account data with for the user
public
updateAccount(IAccount $account) : void
Parameters
- $account : IAccount