interface OgMembershipInterface in Organic groups 8
Provides an interface for OG memberships.
Hierarchy
- interface \Drupal\Core\Entity\ContentEntityInterface extends \Drupal\Core\Entity\Traversable; interface \Drupal\user\EntityOwnerInterface
- interface \Drupal\og\OgMembershipInterface
Expanded class hierarchy of OgMembershipInterface
All classes that implement OgMembershipInterface
37 files declare their use of OgMembershipInterface
- AccessByOgMembershipTest.php in tests/
src/ Kernel/ Access/ AccessByOgMembershipTest.php - ActionTestBase.php in tests/
src/ Kernel/ Action/ ActionTestBase.php - ApprovePendingOgMembership.php in src/
Plugin/ Action/ ApprovePendingOgMembership.php - ApprovePendingOgMembershipActionTest.php in tests/
src/ Kernel/ Action/ ApprovePendingOgMembershipActionTest.php - BlockOgMembership.php in src/
Plugin/ Action/ BlockOgMembership.php
File
- src/
OgMembershipInterface.php, line 13
Namespace
Drupal\ogView source
interface OgMembershipInterface extends ContentEntityInterface, EntityOwnerInterface {
/**
* Define active group content states.
*
* When a user has this membership state they are considered to be of
* "member" role.
*/
const STATE_ACTIVE = 'active';
/**
* Define pending group content states.
*
* The user is subscribed to the group but isn't an active member yet.
*
* When a user has this membership state they are considered to be of
* "non-member" role.
*/
const STATE_PENDING = 'pending';
/**
* Define blocked group content states. The user is rejected from the group.
*
* When a user has this membership state they are denied access to any
* group related action. This state, however, does not prevent the user from
* accessing a group or group content.
*/
const STATE_BLOCKED = 'blocked';
/**
* An array containing all possible group membership states.
*/
const ALL_STATES = [
self::STATE_ACTIVE,
self::STATE_PENDING,
self::STATE_BLOCKED,
];
/**
* The default group membership type that is the bundle of group membership.
*/
const TYPE_DEFAULT = 'default';
/**
* The name of the user's request field in the default group membership type.
*/
const REQUEST_FIELD = 'og_membership_request';
/**
* The prefix that is used to identify group membership list cache tags.
*/
const GROUP_MEMBERSHIP_LIST_CACHE_TAG_PREFIX = 'og-group-membership-list';
/**
* Gets the membership creation timestamp.
*
* @return int
* The membership creation timestamp.
*/
public function getCreatedTime() : int;
/**
* Sets the membership creation timestamp.
*
* @param int $timestamp
* The membership creation timestamp.
*
* @return \Drupal\og\OgMembershipInterface
* The updated OG Membership object.
*/
public function setCreatedTime(int $timestamp) : OgMembershipInterface;
/**
* Sets the group associated with the membership.
*
* @param \Drupal\Core\Entity\ContentEntityInterface $group
* The entity object.
*
* @return \Drupal\og\OgMembershipInterface
* The updated OG Membership object.
*/
public function setGroup(ContentEntityInterface $group) : OgMembershipInterface;
/**
* Gets the group associated with the membership.
*
* @return \Drupal\Core\Entity\ContentEntityInterface|null
* The group object which is referenced by the membership, or NULL if the
* group no longer exists in the entity storage. This can happen when the
* cleanup of orphaned memberships is configured to be handled in a cron job
* or batch process.
*/
public function getGroup() : ?ContentEntityInterface;
/**
* Gets the group entity type.
*
* @return string
* The entity type.
*/
public function getGroupEntityType() : string;
/**
* Gets the group entity bundle.
*
* @return string
* The bundle.
*/
public function getGroupBundle() : string;
/**
* Gets the group entity ID.
*
* @return string
* The entity identifier.
*/
public function getGroupId() : string;
/**
* Sets the membership state.
*
* @param string $state
* The state of the membership. It may be of the following constants:
* - OgMembershipInterface::STATE_ACTIVE
* - OgMembershipInterface::STATE_PENDING
* - OgMembershipInterface::STATE_BLOCKED.
*
* @return \Drupal\og\OgMembershipInterface
* The updated OG Membership object.
*/
public function setState(string $state) : OgMembershipInterface;
/**
* Gets the membership state.
*
* @return string
* The state of the membership. It may be of the following constants:
* - OgMembershipInterface::STATE_ACTIVE
* - OgMembershipInterface::STATE_PENDING
* - OgMembershipInterface::STATE_BLOCKED
*/
public function getState() : string;
/**
* Gets the membership type.
*
* @return string
* The bundle of the membership type.
*/
public function getType() : string;
/**
* Sets the group's roles for the current user group membership.
*
* @param \Drupal\og\OgRoleInterface[] $roles
* The array of OG roles to set.
*
* @return \Drupal\og\OgMembershipInterface
* The updated OG Membership object.
*/
public function setRoles(array $roles = []) : OgMembershipInterface;
/**
* Adds a role to the user membership.
*
* @param \Drupal\og\OgRoleInterface $role
* The OG role.
*
* @return \Drupal\og\OgMembershipInterface
* The updated OG Membership object.
*/
public function addRole(OgRoleInterface $role) : OgMembershipInterface;
/**
* Revokes a role from the OG membership.
*
* @param \Drupal\og\OgRoleInterface $role
* The OG role.
*
* @return \Drupal\og\OgMembershipInterface
* The updated OG Membership object.
*/
public function revokeRole(OgRoleInterface $role) : OgMembershipInterface;
/**
* Revokes a role from the OG membership.
*
* @param string $role_id
* The OG role ID.
*
* @return \Drupal\og\OgMembershipInterface
* The updated OG Membership object.
*/
public function revokeRoleById(string $role_id) : OgMembershipInterface;
/**
* Gets all the referenced OG roles.
*
* @return \Drupal\og\OgRoleInterface[]
* List of OG roles the user own for the current membership instance.
*/
public function getRoles() : array;
/**
* Gets all the referenced OG role IDs.
*
* @return string[]
* List of OG role IDs that are granted in the membership.
*/
public function getRolesIds() : array;
/**
* Returns whether the given role is valid for this membership.
*
* @param \Drupal\og\OgRoleInterface $role
* The role to check.
*
* @return bool
* True if the role is valid, false otherwise.
*
* @throws \LogicException
* Thrown when the validity of the role cannot be established, for example
* because the group hasn't yet been set on the membership.
*/
public function isRoleValid(OgRoleInterface $role) : bool;
/**
* Checks if the membership has the role with the given ID.
*
* @param string $role_id
* The ID of the role to check.
*
* @return bool
* True if the membership has the role.
*/
public function hasRole(string $role_id) : bool;
/**
* Checks if the user has a permission inside the group.
*
* @param string $permission
* The name of the permission.
*
* @return bool
* TRUE if the user has permission.
*/
public function hasPermission(string $permission) : bool;
/**
* Returns TRUE if the OG membership is active.
*
* @return bool
* TRUE if the OG membership is active, FALSE otherwise.
*/
public function isActive() : bool;
/**
* Returns TRUE if the OG membership is pending.
*
* @return bool
* TRUE if the OG membership is pending, FALSE otherwise.
*/
public function isPending() : bool;
/**
* Returns TRUE if the OG membership is blocked.
*
* @return bool
* TRUE if the OG membership is blocked, FALSE otherwise.
*/
public function isBlocked() : bool;
/**
* Returns TRUE if the OG membership belongs to the group owner.
*
* @return bool
* TRUE if the OG membership belongs to the group owner, FALSE otherwise.
*/
public function isOwner() : bool;
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
AccessibleInterface:: |
public | function | Checks data value access. | 9 |
CacheableDependencyInterface:: |
public | function | The cache contexts associated with this object. | 34 |
CacheableDependencyInterface:: |
public | function | The maximum age for which this object may be cached. | 34 |
CacheableDependencyInterface:: |
public | function | The cache tags associated with this object. | 27 |
EntityInterface:: |
public | function | Gets the bundle of the entity. | 2 |
EntityInterface:: |
public static | function | Constructs a new entity object, without permanently saving it. | 2 |
EntityInterface:: |
public | function | Creates a duplicate of the entity. | 2 |
EntityInterface:: |
public | function | Deletes an entity permanently. | 2 |
EntityInterface:: |
public | function | Enforces an entity to be new. | 2 |
EntityInterface:: |
public | function | Returns the cache tags that should be used to invalidate caches. | 2 |
EntityInterface:: |
public | function | Gets the key that is used to store configuration dependencies. | 2 |
EntityInterface:: |
public | function | Gets the configuration dependency name. | 2 |
EntityInterface:: |
public | function | Gets the configuration target identifier for the entity. | 2 |
EntityInterface:: |
public | function | Gets the entity type definition. | 2 |
EntityInterface:: |
public | function | Gets the ID of the type of the entity. | 2 |
EntityInterface:: |
public | function | Gets the original ID. | 2 |
EntityInterface:: |
public | function | Gets a typed data object for this entity object. | 2 |
EntityInterface:: |
public | function | Indicates if a link template exists for a given key. | 2 |
EntityInterface:: |
public | function | Gets the identifier. | 2 |
EntityInterface:: |
public | function | Determines whether the entity is new. | 2 |
EntityInterface:: |
public | function | Gets the label of the entity. | 2 |
EntityInterface:: |
public | function | Gets the language of the entity. | 2 |
EntityInterface:: |
public | function | Deprecated way of generating a link to the entity. See toLink(). | 2 |
EntityInterface:: |
public static | function | Loads an entity. | 2 |
EntityInterface:: |
public static | function | Loads one or more entities. | 2 |
EntityInterface:: |
public | function | Acts on a created entity before hooks are invoked. | 2 |
EntityInterface:: |
public static | function | Acts on deleted entities before the delete hook is invoked. | 2 |
EntityInterface:: |
public static | function | Acts on loaded entities. | 3 |
EntityInterface:: |
public | function | Acts on a saved entity before the insert or update hook is invoked. | 2 |
EntityInterface:: |
public static | function | Changes the values of an entity before it is created. | 2 |
EntityInterface:: |
public static | function | Acts on entities before they are deleted and before hooks are invoked. | 2 |
EntityInterface:: |
public | function | Acts on an entity before the presave hook is invoked. | 2 |
EntityInterface:: |
public | function | Gets a list of entities referenced by this entity. | 2 |
EntityInterface:: |
public | function | Saves an entity permanently. | 2 |
EntityInterface:: |
public | function | Sets the original ID. | 2 |
EntityInterface:: |
public | function | Generates the HTML for a link to this entity. | 2 |
EntityInterface:: |
public | function | Gets the URL object for the entity. | 2 |
EntityInterface:: |
public | function | Gets a list of URI relationships supported by this entity. | 2 |
EntityInterface:: |
public | function | Gets the public URL for this entity. | 2 |
EntityInterface:: |
public | function | Gets the URL object for the entity. | 2 |
EntityInterface:: |
public | function | Gets the entity UUID (Universally Unique Identifier). | 2 |
EntityOwnerInterface:: |
public | function | Returns the entity owner's user entity. | 1 |
EntityOwnerInterface:: |
public | function | Returns the entity owner's user ID. | 1 |
EntityOwnerInterface:: |
public | function | Sets the entity owner's user entity. | 1 |
EntityOwnerInterface:: |
public | function | Sets the entity owner's user ID. | 1 |
FieldableEntityInterface:: |
public static | function | Provides base field definitions for an entity type. | 2 |
FieldableEntityInterface:: |
public static | function | Provides field definitions for a specific bundle. | 2 |
FieldableEntityInterface:: |
public | function | Gets a field item list. | 1 |
FieldableEntityInterface:: |
public | function | Gets the definition of a contained field. | 1 |
FieldableEntityInterface:: |
public | function | Gets an array of field definitions of all contained fields. | 1 |
FieldableEntityInterface:: |
public | function | Gets an array of all field item lists. | 1 |
FieldableEntityInterface:: |
public | function | Gets an array of field item lists for translatable fields. | 1 |
FieldableEntityInterface:: |
public | function | Determines whether the entity has a field with the given name. | 1 |
FieldableEntityInterface:: |
public | function | Checks whether entity validation is required before saving the entity. | 1 |
FieldableEntityInterface:: |
public | function | Reacts to changes to a field. | 1 |
FieldableEntityInterface:: |
public | function | Sets a field value. | 1 |
FieldableEntityInterface:: |
public | function | Sets whether entity validation is required before saving the entity. | 1 |
FieldableEntityInterface:: |
public | function |
Gets an array of all field values. Overrides EntityInterface:: |
|
FieldableEntityInterface:: |
public | function | Validates the currently set values. | 1 |
OgMembershipInterface:: |
public | function | Adds a role to the user membership. | 1 |
OgMembershipInterface:: |
constant | An array containing all possible group membership states. | ||
OgMembershipInterface:: |
public | function | Gets the membership creation timestamp. | 1 |
OgMembershipInterface:: |
public | function | Gets the group associated with the membership. | 1 |
OgMembershipInterface:: |
public | function | Gets the group entity bundle. | 1 |
OgMembershipInterface:: |
public | function | Gets the group entity type. | 1 |
OgMembershipInterface:: |
public | function | Gets the group entity ID. | 1 |
OgMembershipInterface:: |
public | function | Gets all the referenced OG roles. | 1 |
OgMembershipInterface:: |
public | function | Gets all the referenced OG role IDs. | 1 |
OgMembershipInterface:: |
public | function | Gets the membership state. | 1 |
OgMembershipInterface:: |
public | function | Gets the membership type. | 1 |
OgMembershipInterface:: |
constant | The prefix that is used to identify group membership list cache tags. | ||
OgMembershipInterface:: |
public | function | Checks if the user has a permission inside the group. | 1 |
OgMembershipInterface:: |
public | function | Checks if the membership has the role with the given ID. | 1 |
OgMembershipInterface:: |
public | function | Returns TRUE if the OG membership is active. | 1 |
OgMembershipInterface:: |
public | function | Returns TRUE if the OG membership is blocked. | 1 |
OgMembershipInterface:: |
public | function | Returns TRUE if the OG membership belongs to the group owner. | 1 |
OgMembershipInterface:: |
public | function | Returns TRUE if the OG membership is pending. | 1 |
OgMembershipInterface:: |
public | function | Returns whether the given role is valid for this membership. | 1 |
OgMembershipInterface:: |
constant | The name of the user's request field in the default group membership type. | ||
OgMembershipInterface:: |
public | function | Revokes a role from the OG membership. | 1 |
OgMembershipInterface:: |
public | function | Revokes a role from the OG membership. | 1 |
OgMembershipInterface:: |
public | function | Sets the membership creation timestamp. | 1 |
OgMembershipInterface:: |
public | function | Sets the group associated with the membership. | 1 |
OgMembershipInterface:: |
public | function | Sets the group's roles for the current user group membership. | 1 |
OgMembershipInterface:: |
public | function | Sets the membership state. | 1 |
OgMembershipInterface:: |
constant | Define active group content states. | ||
OgMembershipInterface:: |
constant | Define blocked group content states. The user is rejected from the group. | ||
OgMembershipInterface:: |
constant | Define pending group content states. | ||
OgMembershipInterface:: |
constant | The default group membership type that is the bundle of group membership. | ||
RefinableCacheableDependencyInterface:: |
public | function | Adds a dependency on an object: merges its cacheability metadata. | 1 |
RefinableCacheableDependencyInterface:: |
public | function | Adds cache contexts. | 1 |
RefinableCacheableDependencyInterface:: |
public | function | Adds cache tags. | 1 |
RefinableCacheableDependencyInterface:: |
public | function | Merges the maximum age (in seconds) with the existing maximum age. | 1 |
RevisionableInterface:: |
public | function | Gets the loaded Revision ID of the entity. | 1 |
RevisionableInterface:: |
public | function | Gets the revision identifier of the entity. | 1 |
RevisionableInterface:: |
public | function | Checks if this entity is the default revision. | 1 |
RevisionableInterface:: |
public | function | Checks if this entity is the latest revision. | 1 |
RevisionableInterface:: |
public | function | Determines whether a new revision should be created on save. | 1 |
RevisionableInterface:: |
public | function | Acts on a revision before it gets saved. | 1 |
RevisionableInterface:: |
public | function | Enforces an entity to be saved as a new revision. | 1 |
RevisionableInterface:: |
public | function | Updates the loaded Revision ID with the revision ID. | 1 |
RevisionableInterface:: |
public | function | Checks whether the entity object was a default revision when it was saved. | 1 |
SynchronizableInterface:: |
public | function | Returns whether this entity is being changed as part of a synchronization. | 1 |
SynchronizableInterface:: |
public | function | Sets the status of the synchronization flag. | 1 |
TranslatableInterface:: |
public | function | Adds a new translation to the translatable object. | 1 |
TranslatableInterface:: |
public | function | Gets a translation of the data. | 1 |
TranslatableInterface:: |
public | function | Returns the languages the data is translated to. | 1 |
TranslatableInterface:: |
public | function | Returns the translatable object referring to the original language. | 1 |
TranslatableInterface:: |
public | function | Checks there is a translation for the given language code. | 1 |
TranslatableInterface:: |
public | function | Determines if the current translation of the entity has unsaved changes. | 1 |
TranslatableInterface:: |
public | function | Checks whether the translation is the default one. | 1 |
TranslatableInterface:: |
public | function | Checks whether the translation is new. | 1 |
TranslatableInterface:: |
public | function | Returns the translation support status. | 1 |
TranslatableInterface:: |
public | function | Removes the translation identified by the given language code. | 1 |
TranslatableRevisionableInterface:: |
public | function | Checks if untranslatable fields should affect only the default translation. | 1 |
TranslatableRevisionableInterface:: |
public | function | Checks whether this is the latest revision affecting this translation. | 1 |
TranslatableRevisionableInterface:: |
public | function | Checks whether the current translation is affected by the current revision. | 1 |
TranslatableRevisionableInterface:: |
public | function | Checks if the revision translation affected flag value has been enforced. | 1 |
TranslatableRevisionableInterface:: |
public | function | Marks the current revision translation as affected. | 1 |
TranslatableRevisionableInterface:: |
public | function | Enforces the revision translation affected flag value. | 1 |