class FlagListsActionsController in Flag Lists 4.0.x
Class FlagListsActionsController.
Handle adding and deletion of Flagging Collections actions.
Hierarchy
- class \Drupal\Core\Controller\ControllerBase implements ContainerInjectionInterface uses LoggerChannelTrait, MessengerTrait, RedirectDestinationTrait, StringTranslationTrait
- class \Drupal\flag_lists_actions\Controller\FlagListsActionsController implements ContainerInjectionInterface
Expanded class hierarchy of FlagListsActionsController
2 files declare their use of FlagListsActionsController
- flag_lists_actions.install in modules/
flag_lists_actions/ flag_lists_actions.install - Contains install and updates for the flag_lists_actions.
- flag_lists_actions.module in modules/
flag_lists_actions/ flag_lists_actions.module - Contains flag_lists_actions.module.
File
- modules/
flag_lists_actions/ src/ Controller/ FlagListsActionsController.php, line 15
Namespace
Drupal\flag_lists_actions\ControllerView source
class FlagListsActionsController extends ControllerBase implements ContainerInjectionInterface {
/**
* Add Flag Lists Actions.
*
* @param Drupal\Core\Entity\EntityInterface $entity
* The entity to create the Actions for.
*/
public static function createActions(EntityInterface $entity) {
$flag = $entity
->getRelatedFlag();
// Add the flag/unflag actions for this flag and entity combination.
$flag_id = 'flag_action.' . $flag
->id() . '_flag';
if (!Action::load($flag_id)) {
$action = Action::create([
'id' => $flag_id,
'type' => $flag
->getFlaggableEntityTypeId(),
'label' => \Drupal::token()
->replace($flag
->getShortText('flag'), [
'flagging_collection' => $entity,
], [
'clear',
]),
'plugin' => 'flag_action:' . $flag
->id() . '_flag',
'configuration' => [
'flag_id' => $flag
->id(),
'flag_action' => 'flag',
],
]);
$action
->trustData()
->save();
}
$unflag_id = 'flag_action.' . $flag
->id() . '_unflag';
if (!Action::load($unflag_id)) {
$action = Action::create([
'id' => $unflag_id,
'type' => $flag
->getFlaggableEntityTypeId(),
'label' => \Drupal::token()
->replace($flag
->getShortText('unflag'), [
'flagging_collection' => $entity,
], [
'clear',
]),
'plugin' => 'flag_action:' . $flag
->id() . '_unflag',
'configuration' => [
'flag_id' => $flag
->id(),
'flag_action' => 'unflag',
],
]);
$action
->trustData()
->save();
}
}
/**
* Delete Flag Lists Actions.
*
* @param Drupal\Core\Entity\EntityInterface $entity
* The entity to delete the Actions for.
*/
public static function deleteActions(EntityInterface $entity) {
$flag = $entity
->getRelatedFlag();
$actions = Action::loadMultiple([
'flag_action.' . $flag
->id() . '_flag',
'flag_action.' . $flag
->id() . '_unflag',
]);
// Remove the flag/unflag actions for this flag and entity combination.
foreach ($actions as $action) {
$action
->delete();
}
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ControllerBase:: |
protected | property | The configuration factory. | |
ControllerBase:: |
protected | property | The current user service. | 1 |
ControllerBase:: |
protected | property | The entity form builder. | |
ControllerBase:: |
protected | property | The entity type manager. | |
ControllerBase:: |
protected | property | The form builder. | 2 |
ControllerBase:: |
protected | property | The key-value storage. | 1 |
ControllerBase:: |
protected | property | The language manager. | 1 |
ControllerBase:: |
protected | property | The module handler. | 2 |
ControllerBase:: |
protected | property | The state service. | |
ControllerBase:: |
protected | function | Returns the requested cache bin. | |
ControllerBase:: |
protected | function | Retrieves a configuration object. | |
ControllerBase:: |
private | function | Returns the service container. | |
ControllerBase:: |
public static | function |
Instantiates a new instance of this class. Overrides ContainerInjectionInterface:: |
46 |
ControllerBase:: |
protected | function | Returns the current user. | 1 |
ControllerBase:: |
protected | function | Retrieves the entity form builder. | |
ControllerBase:: |
protected | function | Retrieves the entity type manager. | |
ControllerBase:: |
protected | function | Returns the form builder service. | 2 |
ControllerBase:: |
protected | function | Returns a key/value storage collection. | 1 |
ControllerBase:: |
protected | function | Returns the language manager service. | 1 |
ControllerBase:: |
protected | function | Returns the module handler. | 2 |
ControllerBase:: |
protected | function | Returns a redirect response object for the specified route. | |
ControllerBase:: |
protected | function | Returns the state storage service. | |
FlagListsActionsController:: |
public static | function | Add Flag Lists Actions. | |
FlagListsActionsController:: |
public static | function | Delete Flag Lists Actions. | |
LoggerChannelTrait:: |
protected | property | The logger channel factory service. | |
LoggerChannelTrait:: |
protected | function | Gets the logger for a specific channel. | |
LoggerChannelTrait:: |
public | function | Injects the logger channel factory. | |
MessengerTrait:: |
protected | property | The messenger. | 27 |
MessengerTrait:: |
public | function | Gets the messenger. | 27 |
MessengerTrait:: |
public | function | Sets the messenger. | |
RedirectDestinationTrait:: |
protected | property | The redirect destination service. | 1 |
RedirectDestinationTrait:: |
protected | function | Prepares a 'destination' URL query parameter for use with \Drupal\Core\Url. | |
RedirectDestinationTrait:: |
protected | function | Returns the redirect destination service. | |
RedirectDestinationTrait:: |
public | function | Sets the redirect destination service. | |
StringTranslationTrait:: |
protected | property | The string translation service. | 4 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. |