interface FlagInterface in Flag 8.4
Defines the interface for Flag entities.
You can create a Flag either through the Admin UI or programmatically. For example, to create a flag for 'article' nodes using the 'reload' link type:
$flag = Flag::create([
'id' => 'New flag',
'entity_type' => 'node',
'bundles' => [
'article',
],
'flag_type' => 'entity:node',
'link_type' => 'reload',
'flagTypeConfig' => [],
'linkTypeConfig' => [],
]);
$flag
->save();
Hierarchy
- interface \Drupal\Core\Config\Entity\ConfigEntityInterface; interface \Drupal\Core\Entity\EntityWithPluginCollectionInterface
- interface \Drupal\flag\FlagInterface
Expanded class hierarchy of FlagInterface
All classes that implement FlagInterface
33 files declare their use of FlagInterface
- AccessDenied.php in tests/
modules/ flag_test_plugins/ src/ Plugin/ Flag/ AccessDenied.php - AccessGranted.php in tests/
modules/ flag_test_plugins/ src/ Plugin/ Flag/ AccessGranted.php - ActionLinkController.php in src/
Controller/ ActionLinkController.php - ActionLinkNoJsController.php in src/
Controller/ ActionLinkNoJsController.php - ActionLinkTypeBase.php in src/
ActionLink/ ActionLinkTypeBase.php
File
- src/
FlagInterface.php, line 31
Namespace
Drupal\flagView source
interface FlagInterface extends ConfigEntityInterface, EntityWithPluginCollectionInterface {
/* @todo: Add getters and setters as necessary. */
/**
* Returns true of there's a flagging for this flag and the given entity.
*
* @param EntityInterface $entity
* The flaggable entity.
* @param AccountInterface $account
* (optional) The account of the user that flagged the entity.
* @param string $session_id
* (optional) The session ID. This must be supplied if $account is the
* anonymous user.
*
* @return bool
* True if the given entity is flagged, FALSE otherwise.
*
* @throws \LogicException
* Thrown when $account is anonymous but no associated session ID is
* specified.
*/
public function isFlagged(EntityInterface $entity, AccountInterface $account = NULL);
/**
* Returns the flaggable entity type ID.
*
* @return string
* The flaggable entity ID.
*/
public function getFlaggableEntityTypeId();
/**
* Get the flag bundles property.
*
* @return array
* An array containing the bundles this flag may be applied to. An empty
* array indicates all bundles are valid.
*
* @see getApplicableBundles()
*/
public function getBundles();
/**
* Get the bundles this flag may be applied to.
*
* For the verbatim value of the flag's types property, use getBundles().
*
* @return array
* An array containing the bundles this flag may be applied to.
*/
public function getApplicableBundles();
/**
* Get the flag type plugin.
*
* @return \Drupal\flag\FlagType\FlagTypePluginInterface
* The flag type plugin for the flag.
*/
public function getFlagTypePlugin();
/**
* Set the flag type plugin.
*
* @param string $plugin_id
* A string containing the flag type plugin ID.
*/
public function setFlagTypePlugin($plugin_id);
/**
* Get the link type plugin for this flag.
*
* @return \Drupal\flag\ActionLink\ActionLinkTypePluginInterface
* The link type plugin for the flag.
*/
public function getLinkTypePlugin();
/**
* Set the link type plugin.
*
* @param string $plugin_id
* A string containing the link type plugin ID.
*/
public function setlinkTypePlugin($plugin_id);
/**
* Returns an associative array of permissions used by flag_permission().
*
* Typically there are two permissions, one to flag, and one to unflag.
* Each key of the array is the permission name. Each value is an array with
* a single element, 'title', which provides the display name for the
* permission.
*
* @return array
* An array of permissions.
*
* @see \Drupal\flag\Entity\Flag::actionPermissions()
*/
public function actionPermissions();
/**
* Returns true if the flag is global, false otherwise.
*
* Global flags disable the default behavior of a Flag. Instead of each
* user being able to flag or unflag the entity, a global flag may be flagged
* once for all users. The flagging's uid base field is set to the account
* that performed the flagging action in all cases.
*
* @return bool
* TRUE if the flag is global, FALSE otherwise.
*/
public function isGlobal();
/**
* Sets the flag as global or not.
*
* @param bool $global
* TRUE to mark the flag as global, FALSE for the default behavior.
*
* @see \Drupal\flag\Entity\Flag::isGlobal()
*/
public function setGlobal($global);
/**
* The flag short text.
*
* @param string $text
* The flag short text to set.
*/
public function setFlagShortText($text);
/**
* Gets the flag short text.
*
* @param string $action
* The flag action, either 'flag' or 'unflag'.
*
* @return string
* A string containing the flag short text.
*/
public function getShortText($action);
/**
* Gets the flag long text.
*
* @param string $action
* The flag action, either 'flag' or 'unflag'.
*
* @return string
* A string containing the flag long text.
*/
public function getLongText($action);
/**
* Sets the flag long text.
*
* @param string $flag_long
* The flag long text to use.
*/
public function setFlagLongText($flag_long);
/**
* Gets the flag message.
*
* @param string $action
* The flag action, either 'flag' or 'unflag'.
*
* @return string
* The unflag message text to use.
*/
public function getMessage($action);
/**
* Sets the flag message.
*
* @param string $flag_message
* The flag message text to use.
*/
public function setFlagMessage($flag_message);
/**
* Sets the unflag short text.
*
* @param string $flag_short
* The unflag short text to use.
*/
public function setUnflagShortText($flag_short);
/**
* Sets the unflag long text.
*
* @param string $unflag_long
* The unflag lnog text to use.
*/
public function setUnflagLongText($unflag_long);
/**
* Sets the unflag message.
*
* @param string $unflag_message
* The unflag message text to use.
*/
public function setUnflagMessage($unflag_message);
/**
* Get the flag's weight.
*
* @return int
* The flag's weight.
*/
public function getWeight();
/**
* Set the flag's weight.
*
* @param int $weight
* An int containing the flag weight to use.
*/
public function setWeight($weight);
/**
* Get the flag's unflag denied message text.
*
* @return string
* A string containing the unflag denied message text.
*/
public function getUnflagDeniedText();
/**
* Set's the flag's unflag denied message text.
*
* @param string $unflag_denied_text
* The unflag denied message text to use.
*/
public function setUnflagDeniedText($unflag_denied_text);
/**
* Checks whether a user has permission to flag/unflag or not.
*
* @param string $action
* The action for which to check permissions, either 'flag' or 'unflag'.
* @param AccountInterface $account
* (optional) An AccountInterface object.
* @param \Drupal\Core\Entity\EntityInterface $flaggable
* (optional) The flaggable entity.
*
* @return \Drupal\Core\Access\AccessResult
* An AccessResult object.
*/
public function actionAccess($action, AccountInterface $account = NULL, EntityInterface $flaggable = NULL);
}
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 |
ConfigEntityInterface:: |
public | function | Calculates dependencies and stores them in the dependency property. | 2 |
ConfigEntityInterface:: |
public | function | Disables the configuration entity. | 2 |
ConfigEntityInterface:: |
public | function | Enables the configuration entity. | 2 |
ConfigEntityInterface:: |
public | function | Returns the value of a property. | 2 |
ConfigEntityInterface:: |
public | function | Gets the configuration dependencies. | 2 |
ConfigEntityInterface:: |
public | function | Gets whether on not the data is trusted. | 2 |
ConfigEntityInterface:: |
public | function | Checks whether this entity is installable. | 2 |
ConfigEntityInterface:: |
public | function | Returns whether this entity is being changed during the uninstall process. | 2 |
ConfigEntityInterface:: |
public | function | Informs the entity that entities it depends on will be deleted. | 2 |
ConfigEntityInterface:: |
public | function | Sets the value of a property. | 2 |
ConfigEntityInterface:: |
public | function | Sets the status of the configuration entity. | 2 |
ConfigEntityInterface:: |
public | function | Returns whether the configuration entity is enabled. | 2 |
ConfigEntityInterface:: |
public | function | Sets that the data should be trusted. | 2 |
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 | Gets an array of all property values. | 3 |
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 |
FlagInterface:: |
public | function | Checks whether a user has permission to flag/unflag or not. | 1 |
FlagInterface:: |
public | function | Returns an associative array of permissions used by flag_permission(). | 1 |
FlagInterface:: |
public | function | Get the bundles this flag may be applied to. | 1 |
FlagInterface:: |
public | function | Get the flag bundles property. | 1 |
FlagInterface:: |
public | function | Returns the flaggable entity type ID. | 1 |
FlagInterface:: |
public | function | Get the flag type plugin. | 1 |
FlagInterface:: |
public | function | Get the link type plugin for this flag. | 1 |
FlagInterface:: |
public | function | Gets the flag long text. | 1 |
FlagInterface:: |
public | function | Gets the flag message. | 1 |
FlagInterface:: |
public | function | Gets the flag short text. | 1 |
FlagInterface:: |
public | function | Get the flag's unflag denied message text. | 1 |
FlagInterface:: |
public | function | Get the flag's weight. | 1 |
FlagInterface:: |
public | function | Returns true of there's a flagging for this flag and the given entity. | 1 |
FlagInterface:: |
public | function | Returns true if the flag is global, false otherwise. | 1 |
FlagInterface:: |
public | function | Sets the flag long text. | 1 |
FlagInterface:: |
public | function | Sets the flag message. | 1 |
FlagInterface:: |
public | function | The flag short text. | 1 |
FlagInterface:: |
public | function | Set the flag type plugin. | 1 |
FlagInterface:: |
public | function | Sets the flag as global or not. | 1 |
FlagInterface:: |
public | function | Set the link type plugin. | 1 |
FlagInterface:: |
public | function | Set's the flag's unflag denied message text. | 1 |
FlagInterface:: |
public | function | Sets the unflag long text. | 1 |
FlagInterface:: |
public | function | Sets the unflag message. | 1 |
FlagInterface:: |
public | function | Sets the unflag short text. | 1 |
FlagInterface:: |
public | function | Set the flag's weight. | 1 |
ObjectWithPluginCollectionInterface:: |
public | function | Gets the plugin collections used by this object. | 11 |
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 |
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 |
ThirdPartySettingsInterface:: |
public | function | Gets the list of third parties that store information. | 5 |
ThirdPartySettingsInterface:: |
public | function | Gets the value of a third-party setting. | 5 |
ThirdPartySettingsInterface:: |
public | function | Gets all third-party settings of a given module. | 5 |
ThirdPartySettingsInterface:: |
public | function | Sets the value of a third-party setting. | 5 |
ThirdPartySettingsInterface:: |
public | function | Unsets a third-party setting. | 5 |