X-Git-Url: http://aleph1.co.uk/gitweb/?a=blobdiff_plain;f=web%2Fcore%2Fmodules%2Fcomment%2Fsrc%2FPlugin%2FAction%2FDeleteComment.php;h=ef6116cd2a7e341020c6257f2f5a3ff93e59aab1;hb=1c1cb0980bfa6caf0c24cce671b6bb541dc87583;hp=5c6941dd735005584cc5dd8f4e4d5d6818556ec8;hpb=af6d1fb995500ae68849458ee10d66abbdcfb252;p=yaffs-website diff --git a/web/core/modules/comment/src/Plugin/Action/DeleteComment.php b/web/core/modules/comment/src/Plugin/Action/DeleteComment.php index 5c6941dd7..ef6116cd2 100644 --- a/web/core/modules/comment/src/Plugin/Action/DeleteComment.php +++ b/web/core/modules/comment/src/Plugin/Action/DeleteComment.php @@ -2,97 +2,33 @@ namespace Drupal\comment\Plugin\Action; -use Drupal\Core\Action\ActionBase; -use Drupal\Core\Plugin\ContainerFactoryPluginInterface; +use Drupal\Core\Action\Plugin\Action\DeleteAction; +use Drupal\Core\Entity\EntityTypeManagerInterface; use Drupal\Core\Session\AccountInterface; use Drupal\Core\TempStore\PrivateTempStoreFactory; -use Symfony\Component\DependencyInjection\ContainerInterface; /** * Deletes a comment. * + * @deprecated in Drupal 8.6.x, to be removed before Drupal 9.0.0. + * Use \Drupal\Core\Action\Plugin\Action\DeleteAction instead. + * + * @see \Drupal\Core\Action\Plugin\Action\DeleteAction + * @see https://www.drupal.org/node/2934349 + * * @Action( * id = "comment_delete_action", - * label = @Translation("Delete comment"), - * type = "comment", - * confirm_form_route_name = "comment.multiple_delete_confirm" + * label = @Translation("Delete comment") * ) */ -class DeleteComment extends ActionBase implements ContainerFactoryPluginInterface { - - /** - * The tempstore object. - * - * @var \Drupal\Core\TempStore\PrivateTempStore - */ - protected $tempStore; - - /** - * The current user. - * - * @var \Drupal\Core\Session\AccountInterface - */ - protected $currentUser; - - /** - * Constructs a new DeleteComment 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 array $plugin_definition - * The plugin implementation definition. - * @param \Drupal\Core\TempStore\PrivateTempStoreFactory $temp_store_factory - * The tempstore factory. - * @param \Drupal\Core\Session\AccountInterface $current_user - * The current user. - */ - public function __construct(array $configuration, $plugin_id, array $plugin_definition, PrivateTempStoreFactory $temp_store_factory, AccountInterface $current_user) { - $this->currentUser = $current_user; - $this->tempStore = $temp_store_factory->get('comment_multiple_delete_confirm'); - parent::__construct($configuration, $plugin_id, $plugin_definition); - } - - /** - * {@inheritdoc} - */ - public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) { - return new static( - $configuration, - $plugin_id, - $plugin_definition, - $container->get('tempstore.private'), - $container->get('current_user') - ); - } - - /** - * {@inheritdoc} - */ - public function executeMultiple(array $entities) { - $info = []; - /** @var \Drupal\comment\CommentInterface $comment */ - foreach ($entities as $comment) { - $langcode = $comment->language()->getId(); - $info[$comment->id()][$langcode] = $langcode; - } - $this->tempStore->set($this->currentUser->id(), $info); - } - - /** - * {@inheritdoc} - */ - public function execute($entity = NULL) { - $this->executeMultiple([$entity]); - } +class DeleteComment extends DeleteAction { /** * {@inheritdoc} */ - public function access($comment, AccountInterface $account = NULL, $return_as_object = FALSE) { - /** @var \Drupal\comment\CommentInterface $comment */ - return $comment->access('delete', $account, $return_as_object); + public function __construct(array $configuration, $plugin_id, $plugin_definition, EntityTypeManagerInterface $entity_type_manager, PrivateTempStoreFactory $temp_store_factory, AccountInterface $current_user) { + parent::__construct($configuration, $plugin_id, $plugin_definition, $entity_type_manager, $temp_store_factory, $current_user); + @trigger_error(__NAMESPACE__ . '\DeleteComment is deprecated in Drupal 8.6.x, will be removed before Drupal 9.0.0. Use \Drupal\Core\Action\Plugin\Action\DeleteAction instead. See https://www.drupal.org/node/2934349.', E_USER_DEPRECATED); } }