trait EntityOwnerTrait in CRM Core 8
Same name and namespace in other branches
- 8.2 src/EntityOwnerTrait.php \Drupal\crm_core\EntityOwnerTrait
Trait implementing the various methods defined in EntityOwnerInterface.
@todo Remove once the same trait is in Core.
Hierarchy
- trait \Drupal\crm_core\EntityOwnerTrait
See also
\Drupal\user\EntityOwnerInterface
3 files declare their use of EntityOwnerTrait
- Activity.php in modules/
crm_core_activity/ src/ Entity/ Activity.php - Individual.php in modules/
crm_core_contact/ src/ Entity/ Individual.php - Organization.php in modules/
crm_core_contact/ src/ Entity/ Organization.php
File
- src/
EntityOwnerTrait.php, line 15
Namespace
Drupal\crm_coreView source
trait EntityOwnerTrait {
/**
* Defines 'uid' base field definition.
*
* @return \Drupal\Core\Field\BaseFieldDefinition
* A field definition object.
*/
public static function getOwnerFieldDefinition() {
return BaseFieldDefinition::create('entity_reference')
->setLabel(t('Owner'))
->setRevisionable(TRUE)
->setSetting('target_type', 'user')
->setDefaultValueCallback('Drupal\\crm_core\\EntityOwnerTrait::getDefaultAuthorId');
}
/**
* Default value callback for 'uid' base field definition.
*
* @see ::baseFieldDefinitions()
*
* @return int
* The user ID.
*/
public static function getDefaultAuthorId() {
return \Drupal::currentUser()
->id();
}
/**
* Returns the entity owner's user entity.
*
* @return \Drupal\user\UserInterface
* The owner user entity.
*/
public function getOwner() {
return $this
->get('uid')->entity;
}
/**
* Sets the entity owner's user entity.
*
* @param \Drupal\user\UserInterface $account
* The owner user entity.
*
* @return $this
*/
public function setOwner(UserInterface $account) {
$this
->set('uid', $account
->id());
return $this;
}
/**
* Returns the entity owner's user ID.
*
* @return int|null
* The owner user ID, or NULL in case the user ID field has not been set on
* the entity.
*/
public function getOwnerId() {
return $this
->get('uid')->target_id;
}
/**
* Sets the entity owner's user ID.
*
* @param int $uid
* The owner user id.
*
* @return $this
*/
public function setOwnerId($uid) {
$this
->set('uid', $uid);
return $this;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
EntityOwnerTrait:: |
public static | function | Default value callback for 'uid' base field definition. | |
EntityOwnerTrait:: |
public | function | Returns the entity owner's user entity. | |
EntityOwnerTrait:: |
public static | function | Defines 'uid' base field definition. | |
EntityOwnerTrait:: |
public | function | Returns the entity owner's user ID. | |
EntityOwnerTrait:: |
public | function | Sets the entity owner's user entity. | |
EntityOwnerTrait:: |
public | function | Sets the entity owner's user ID. |