interface ModerationInformationInterface (View source)

Interface for moderation_information service.

Methods

bool
isModeratedEntity(EntityInterface $entity)

Determines if an entity is moderated.

bool
canModerateEntitiesOfEntityType(EntityTypeInterface $entity_type)

Determines if an entity type can have moderated entities.

bool
shouldModerateEntitiesOfBundle(EntityTypeInterface $entity_type, string $bundle)

Determines if an entity type/bundle entities should be moderated.

bool
isModeratedEntityType(EntityTypeInterface $entity_type)

Determines if an entity type has at least one moderated bundle.

int
getDefaultRevisionId(string $entity_type_id, int $entity_id)

Returns the revision ID of the default revision for the specified entity.

getAffectedRevisionTranslation(ContentEntityInterface $entity)

Returns the revision translation affected translation of a revision.

bool
hasPendingRevision(ContentEntityInterface $entity)

Determines if a pending revision exists for the specified entity.

bool
isLiveRevision(ContentEntityInterface $entity)

Determines if an entity is "live".

bool
isDefaultRevisionPublished(ContentEntityInterface $entity)

Determines if the default revision for the given entity is published.

getWorkflowForEntity(ContentEntityInterface $entity)

Gets the workflow for the given content entity.

getWorkflowForEntityTypeAndBundle(string $entity_type_id, string $bundle_id)

Gets the workflow for the given entity type and bundle.

array
getUnsupportedFeatures(EntityTypeInterface $entity_type)

Gets unsupported features for a given entity type.

getOriginalState(ContentEntityInterface $entity)

Gets the original or initial state of the given entity.

Details

bool isModeratedEntity(EntityInterface $entity)

Determines if an entity is moderated.

Parameters

EntityInterface $entity

The entity we may be moderating.

Return Value

bool

TRUE if this entity is moderated, FALSE otherwise.

bool canModerateEntitiesOfEntityType(EntityTypeInterface $entity_type)

Determines if an entity type can have moderated entities.

Parameters

EntityTypeInterface $entity_type

An entity type object.

Return Value

bool

TRUE if this entity type can have moderated entities, FALSE otherwise.

bool shouldModerateEntitiesOfBundle(EntityTypeInterface $entity_type, string $bundle)

Determines if an entity type/bundle entities should be moderated.

Parameters

EntityTypeInterface $entity_type

The entity type definition to check.

string $bundle

The bundle to check.

Return Value

bool

TRUE if an entity type/bundle entities should be moderated, FALSE otherwise.

bool isModeratedEntityType(EntityTypeInterface $entity_type)

Determines if an entity type has at least one moderated bundle.

Parameters

EntityTypeInterface $entity_type

The entity type definition to check.

Return Value

bool

TRUE if an entity type has a moderated bundle, FALSE otherwise.

int getDefaultRevisionId(string $entity_type_id, int $entity_id)

Returns the revision ID of the default revision for the specified entity.

Parameters

string $entity_type_id

The entity type ID.

int $entity_id

The entity ID.

Return Value

int

The revision ID of the default revision, or NULL if the entity was not found.

ContentEntityInterface getAffectedRevisionTranslation(ContentEntityInterface $entity)

Returns the revision translation affected translation of a revision.

Parameters

ContentEntityInterface $entity

The content entity.

Return Value

ContentEntityInterface

The revision translation affected translation.

bool hasPendingRevision(ContentEntityInterface $entity)

Determines if a pending revision exists for the specified entity.

Parameters

ContentEntityInterface $entity

The entity which may or may not have a pending revision.

Return Value

bool

TRUE if this entity has pending revisions available, FALSE otherwise.

bool isLiveRevision(ContentEntityInterface $entity)

Determines if an entity is "live".

A "live" entity revision is one whose latest revision is also the default, and whose moderation state, if any, is a published state.

Parameters

ContentEntityInterface $entity

The entity to check.

Return Value

bool

TRUE if the specified entity is a live revision, FALSE otherwise.

bool isDefaultRevisionPublished(ContentEntityInterface $entity)

Determines if the default revision for the given entity is published.

The default revision is the same as the entity retrieved by "default" from the storage handler. If the entity is translated, check if any of the translations are published.

Parameters

ContentEntityInterface $entity

The entity being saved.

Return Value

bool

TRUE if the default revision is published. FALSE otherwise.

WorkflowInterface|null getWorkflowForEntity(ContentEntityInterface $entity)

Gets the workflow for the given content entity.

Parameters

ContentEntityInterface $entity

The content entity to get the workflow for.

Return Value

WorkflowInterface|null

The workflow entity. NULL if there is no workflow.

WorkflowInterface|null getWorkflowForEntityTypeAndBundle(string $entity_type_id, string $bundle_id)

Gets the workflow for the given entity type and bundle.

Parameters

string $entity_type_id

The entity type ID.

string $bundle_id

The entity bundle ID.

Return Value

WorkflowInterface|null

The associated workflow. NULL if there is no workflow.

array getUnsupportedFeatures(EntityTypeInterface $entity_type)

Gets unsupported features for a given entity type.

Parameters

EntityTypeInterface $entity_type

The entity type to get the unsupported features for.

Return Value

array

An array of unsupported features for this entity type.

ContentModerationState getOriginalState(ContentEntityInterface $entity)

Gets the original or initial state of the given entity.

When a state is being validated, the original state is used to validate that a valid transition exists for target state and the user has access to the transition between those two states. If the entity has been moderated before, we can load the original unmodified revision and translation for this state.

If the entity is new we need to load the initial state from the workflow. Even if a value was assigned to the moderation_state field, the initial state is used to compute an appropriate transition for the purposes of validation.

Parameters

ContentEntityInterface $entity

The content entity to get the workflow for.

Return Value

ContentModerationState

The original or default moderation state.