X-Git-Url: https://yaffs.net/gitweb/?a=blobdiff_plain;f=web%2Fcore%2Fmodules%2Fnode%2Fsrc%2FEntity%2FNode.php;fp=web%2Fcore%2Fmodules%2Fnode%2Fsrc%2FEntity%2FNode.php;h=368ce1b596e5ae2a67449d82ae7aa6f68f1f3680;hb=9917807b03b64faf00f6a1f29dcb6eafc454efa5;hp=4f8efe3c53fb02ac6ad2e87965d87a76a210b1e6;hpb=aea91e65e895364e460983b890e295aa5d5540a5;p=yaffs-website diff --git a/web/core/modules/node/src/Entity/Node.php b/web/core/modules/node/src/Entity/Node.php index 4f8efe3c5..368ce1b59 100644 --- a/web/core/modules/node/src/Entity/Node.php +++ b/web/core/modules/node/src/Entity/Node.php @@ -2,9 +2,7 @@ namespace Drupal\node\Entity; -use Drupal\Core\Entity\ContentEntityBase; -use Drupal\Core\Entity\EntityChangedTrait; -use Drupal\Core\Entity\EntityPublishedTrait; +use Drupal\Core\Entity\EditorialContentEntityBase; use Drupal\Core\Entity\EntityStorageInterface; use Drupal\Core\Entity\EntityTypeInterface; use Drupal\Core\Field\BaseFieldDefinition; @@ -61,6 +59,11 @@ use Drupal\user\UserInterface; * "published" = "status", * "uid" = "uid", * }, + * revision_metadata_keys = { + * "revision_user" = "revision_uid", + * "revision_created" = "revision_timestamp", + * "revision_log_message" = "revision_log" + * }, * bundle_entity_type = "node_type", * field_ui_base_route = "entity.node_type.edit_form", * common_reference_target = TRUE, @@ -71,13 +74,11 @@ use Drupal\user\UserInterface; * "edit-form" = "/node/{node}/edit", * "version-history" = "/node/{node}/revisions", * "revision" = "/node/{node}/revisions/{node_revision}/view", + * "create" = "/node", * } * ) */ -class Node extends ContentEntityBase implements NodeInterface { - - use EntityChangedTrait; - use EntityPublishedTrait; +class Node extends EditorialContentEntityBase implements NodeInterface { /** * Whether the node is being previewed or not. @@ -278,21 +279,6 @@ class Node extends ContentEntityBase implements NodeInterface { return $this; } - /** - * {@inheritdoc} - */ - public function getRevisionCreationTime() { - return $this->get('revision_timestamp')->value; - } - - /** - * {@inheritdoc} - */ - public function setRevisionCreationTime($timestamp) { - $this->set('revision_timestamp', $timestamp); - return $this; - } - /** * {@inheritdoc} */ @@ -300,13 +286,6 @@ class Node extends ContentEntityBase implements NodeInterface { return $this->getRevisionUser(); } - /** - * {@inheritdoc} - */ - public function getRevisionUser() { - return $this->get('revision_uid')->entity; - } - /** * {@inheritdoc} */ @@ -315,50 +294,11 @@ class Node extends ContentEntityBase implements NodeInterface { return $this; } - /** - * {@inheritdoc} - */ - public function setRevisionUser(UserInterface $user) { - $this->set('revision_uid', $user); - return $this; - } - - /** - * {@inheritdoc} - */ - public function getRevisionUserId() { - return $this->get('revision_uid')->entity->id(); - } - - /** - * {@inheritdoc} - */ - public function setRevisionUserId($user_id) { - $this->set('revision_uid', $user_id); - return $this; - } - - /** - * {@inheritdoc} - */ - public function getRevisionLogMessage() { - return $this->get('revision_log')->value; - } - - /** - * {@inheritdoc} - */ - public function setRevisionLogMessage($revision_log_message) { - $this->set('revision_log', $revision_log_message); - return $this; - } - /** * {@inheritdoc} */ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) { $fields = parent::baseFieldDefinitions($entity_type); - $fields += static::publishedBaseFieldDefinitions($entity_type); $fields['title'] = BaseFieldDefinition::create('string') ->setLabel(t('Title')) @@ -400,6 +340,16 @@ class Node extends ContentEntityBase implements NodeInterface { ]) ->setDisplayConfigurable('form', TRUE); + $fields['status'] + ->setDisplayOptions('form', [ + 'type' => 'boolean_checkbox', + 'settings' => [ + 'display_label' => TRUE, + ], + 'weight' => 120, + ]) + ->setDisplayConfigurable('form', TRUE); + $fields['created'] = BaseFieldDefinition::create('created') ->setLabel(t('Authored on')) ->setDescription(t('The time that the node was created.')) @@ -450,39 +400,6 @@ class Node extends ContentEntityBase implements NodeInterface { ]) ->setDisplayConfigurable('form', TRUE); - $fields['revision_timestamp'] = BaseFieldDefinition::create('created') - ->setLabel(t('Revision timestamp')) - ->setDescription(t('The time that the current revision was created.')) - ->setQueryable(FALSE) - ->setRevisionable(TRUE); - - $fields['revision_uid'] = BaseFieldDefinition::create('entity_reference') - ->setLabel(t('Revision user ID')) - ->setDescription(t('The user ID of the author of the current revision.')) - ->setSetting('target_type', 'user') - ->setQueryable(FALSE) - ->setRevisionable(TRUE); - - $fields['revision_log'] = BaseFieldDefinition::create('string_long') - ->setLabel(t('Revision log message')) - ->setDescription(t('Briefly describe the changes you have made.')) - ->setRevisionable(TRUE) - ->setDefaultValue('') - ->setDisplayOptions('form', [ - 'type' => 'string_textarea', - 'weight' => 25, - 'settings' => [ - 'rows' => 4, - ], - ]); - - $fields['revision_translation_affected'] = BaseFieldDefinition::create('boolean') - ->setLabel(t('Revision translation affected')) - ->setDescription(t('Indicates if the last edit of a translation belongs to current revision.')) - ->setReadOnly(TRUE) - ->setRevisionable(TRUE) - ->setTranslatable(TRUE); - return $fields; }