* "canonical" = "/comment/{comment}",
* "delete-form" = "/comment/{comment}/delete",
* "edit-form" = "/comment/{comment}/edit",
+ * "create" = "/comment",
* },
* bundle_entity_type = "comment_type",
* field_ui_base_route = "entity.comment_type.edit_form",
/**
* The thread for which a lock was acquired.
+ *
+ * @var string
*/
protected $threadLock = '';
} while (!\Drupal::lock()->acquire($lock_name));
$this->threadLock = $lock_name;
}
- // We test the value with '===' because we need to modify anonymous
- // users as well.
- if ($this->getOwnerId() === \Drupal::currentUser()->id() && \Drupal::currentUser()->isAuthenticated()) {
- $this->setAuthorName(\Drupal::currentUser()->getUsername());
- }
$this->setThread($thread);
if (!$this->getHostname()) {
// Ensure a client host from the current request.
$this->setHostname(\Drupal::request()->getClientIP());
}
}
+ // The entity fields for name and mail have no meaning if the user is not
+ // Anonymous. Set them to NULL to make it clearer that they are not used.
+ // For anonymous users see \Drupal\comment\CommentForm::form() for mail,
+ // and \Drupal\comment\CommentForm::buildEntity() for name setting.
+ if (!$this->getOwner()->isAnonymous()) {
+ $this->set('name', NULL);
+ $this->set('mail', NULL);
+ }
}
/**
* @see ::baseFieldDefinitions()
*
* @return bool
- * TRUE if the comment should be published, FALSE otherwise.
+ * TRUE if the comment should be published, FALSE otherwise.
*/
public static function getDefaultStatus() {
return \Drupal::currentUser()->hasPermission('skip comment approval') ? CommentInterface::PUBLISHED : CommentInterface::NOT_PUBLISHED;