merci-8.x-2.x-dev/modules/merci_line_item/src/Plugin/Action/DeleteMerciLineItem.php
modules/merci_line_item/src/Plugin/Action/DeleteMerciLineItem.php
<?php namespace Drupal\merci_line_item\Plugin\Action; use Drupal\merci_line_item\MerciLineItemActionBase; use Drupal\Core\Action\ActionBase; use Drupal\Core\Plugin\ContainerFactoryPluginInterface; use Drupal\Core\Session\AccountInterface; use Drupal\user\PrivateTempStoreFactory; use Symfony\Component\DependencyInjection\ContainerInterface; /** * Redirects to a node deletion form. * * @Action( * id = "merci_line_item_delete_action", * label = @Translation("Delete content"), * type = "node", * confirm_form_route_name = "merci_line_item.multiple_delete_confirm" * ) */ class DeleteMerciLineItem extends MerciLineItemActionBase implements ContainerFactoryPluginInterface { /** * Constructs a new DeleteNode object. * * @param array $configuration * A configuration array containing information about the plugin instance. * @param string $plugin_id * The plugin ID for the plugin instance. * @param mixed $plugin_definition * The plugin implementation definition. * @param \Drupal\user\PrivateTempStoreFactory $temp_store_factory * The tempstore factory. * @param AccountInterface $current_user * Current user. */ public function __construct(array $configuration, $plugin_id, $plugin_definition, PrivateTempStoreFactory $temp_store_factory, AccountInterface $current_user) { $this->currentUser = $current_user; $this->tempStore = $temp_store_factory->get('merci_line_item_multiple_delete_confirm'); parent::__construct($configuration, $plugin_id, $plugin_definition); } /** * {@inheritdoc} */ public function access($object, AccountInterface $account = NULL, $return_as_object = FALSE) { /** @var \Drupal\node\NodeInterface $object */ return $object->access('delete', $account, $return_as_object); } }