diff core/modules/comment/src/Plugin/Action/UnpublishComment.php @ 14:1fec387a4317

Update Drupal core to 8.5.2 via Composer
author Chris Cannam
date Mon, 23 Apr 2018 09:46:53 +0100
parents 4c8ae668cc8c
children
line wrap: on
line diff
--- a/core/modules/comment/src/Plugin/Action/UnpublishComment.php	Mon Apr 23 09:33:26 2018 +0100
+++ b/core/modules/comment/src/Plugin/Action/UnpublishComment.php	Mon Apr 23 09:46:53 2018 +0100
@@ -2,37 +2,32 @@
 
 namespace Drupal\comment\Plugin\Action;
 
-use Drupal\Core\Action\ActionBase;
-use Drupal\Core\Session\AccountInterface;
+use Drupal\Core\Action\Plugin\Action\UnpublishAction;
+use Drupal\Core\Entity\EntityTypeManagerInterface;
 
 /**
  * Unpublishes a comment.
  *
+ * @deprecated in Drupal 8.5.x, to be removed before Drupal 9.0.0.
+ *   Use \Drupal\Core\Action\Plugin\Action\UnpublishAction instead.
+ *
+ * @see \Drupal\Core\Action\Plugin\Action\UnpublishAction
+ * @see https://www.drupal.org/node/2919303
+ *
  * @Action(
  *   id = "comment_unpublish_action",
  *   label = @Translation("Unpublish comment"),
  *   type = "comment"
  * )
  */
-class UnpublishComment extends ActionBase {
+class UnpublishComment extends UnpublishAction {
 
   /**
    * {@inheritdoc}
    */
-  public function execute($comment = NULL) {
-    $comment->setPublished(FALSE);
-    $comment->save();
-  }
-
-  /**
-   * {@inheritdoc}
-   */
-  public function access($object, AccountInterface $account = NULL, $return_as_object = FALSE) {
-    /** @var \Drupal\comment\CommentInterface $object */
-    $result = $object->status->access('edit', $account, TRUE)
-      ->andIf($object->access('update', $account, TRUE));
-
-    return $return_as_object ? $result : $result->isAllowed();
+  public function __construct($configuration, $plugin_id, $plugin_definition, EntityTypeManagerInterface $entity_type_manager) {
+    parent::__construct($configuration, $plugin_id, $plugin_definition, $entity_type_manager);
+    @trigger_error(__NAMESPACE__ . '\UnpublishComment is deprecated in Drupal 8.5.x, will be removed before Drupal 9.0.0. Use \Drupal\Core\Action\Plugin\Action\UnpublishAction instead. See https://www.drupal.org/node/2919303.', E_USER_DEPRECATED);
   }
 
 }