class Individual in CRM Core 8
Same name and namespace in other branches
- 8.3 modules/crm_core_contact/src/Entity/Individual.php \Drupal\crm_core_contact\Entity\Individual
- 8.2 modules/crm_core_contact/src/Entity/Individual.php \Drupal\crm_core_contact\Entity\Individual
CRM Individual Entity Class.
Plugin annotation
@ContentEntityType(
id = "crm_core_individual",
label = @Translation("CRM Core Individual"),
bundle_label = @Translation("Individual type"),
handlers = {
"access" = "Drupal\crm_core_contact\IndividualAccessControlHandler",
"form" = {
"default" = "Drupal\crm_core_contact\Form\IndividualForm",
"delete" = "Drupal\crm_core_contact\Form\IndividualDeleteForm",
},
"view_builder" = "Drupal\Core\Entity\EntityViewBuilder",
"list_builder" = "Drupal\crm_core_contact\IndividualListBuilder",
"views_data" = "Drupal\views\EntityViewsData",
"route_provider" = {
"html" = "Drupal\Core\Entity\Routing\DefaultHtmlRouteProvider",
"revision" = "\Drupal\entity\Routing\RevisionRouteProvider",
},
"local_task_provider" = {
"default" = "\Drupal\entity\Menu\DefaultEntityLocalTaskProvider",
},
},
show_revision_ui = TRUE,
admin_permission = "administer crm_core_individual entities",
base_table = "crm_core_individual",
revision_table = "crm_core_individual_revision",
entity_keys = {
"id" = "individual_id",
"revision" = "revision_id",
"bundle" = "type",
"uuid" = "uuid",
"langcode" = "langcode",
},
bundle_entity_type = "crm_core_individual_type",
field_ui_base_route = "entity.crm_core_individual_type.edit_form",
permission_granularity = "bundle",
permission_labels = {
"singular" = @Translation("Individual"),
"plural" = @Translation("Individuals"),
},
links = {
"add-page" = "/crm-core/individual/add",
"add-form" = "/crm-core/individual/add/{crm_core_individual_type}",
"canonical" = "/crm-core/individual/{crm_core_individual}",
"collection" = "/crm-core/individual",
"edit-form" = "/crm-core/individual/{crm_core_individual}/edit",
"delete-form" = "/crm-core/individual/{crm_core_individual}/delete",
"revision" = "/crm-core/individual/{crm_core_individual}/revisions/{crm_core_individual_revision}/view",
"revision-revert-form" = "/crm-core/individual/{crm_core_individual}/revisions/{crm_core_individual_revision}/revert",
"version-history" = "/crm-core/individual/{crm_core_individual}/revisions",
}
)
Hierarchy
- class \Drupal\crm_core_contact\Entity\Individual extends \Drupal\entity\Revision\RevisionableContentEntityBase implements IndividualInterface uses EntityChangedTrait, EntityOwnerTrait
Expanded class hierarchy of Individual
10 files declare their use of Individual
- ActivityEntityPreDeleteTest.php in modules/
crm_core_activity/ tests/ src/ Kernel/ ActivityEntityPreDeleteTest.php - ActivityTypePluginTest.php in modules/
crm_core_activity/ tests/ src/ Kernel/ ActivityTypePluginTest.php - ActivityUiTest.php in modules/
crm_core_activity/ src/ Tests/ ActivityUiTest.php - CrmCoreUserSyncRelation.php in modules/
crm_core_user_sync/ src/ CrmCoreUserSyncRelation.php - CrmCoreUserSyncRelationTest.php in modules/
crm_core_user_sync/ tests/ src/ Kernel/ CrmCoreUserSyncRelationTest.php
2 string references to 'Individual'
- crm_core_match.matcher.individual.yml in modules/
crm_core_match/ config/ install/ crm_core_match.matcher.individual.yml - modules/crm_core_match/config/install/crm_core_match.matcher.individual.yml
- RelationListBuilder::buildHeader in modules/
crm_core_user_sync/ src/ RelationListBuilder.php - Builds the header row for the entity listing.
File
- modules/
crm_core_contact/ src/ Entity/ Individual.php, line 67
Namespace
Drupal\crm_core_contact\EntityView source
class Individual extends RevisionableContentEntityBase implements IndividualInterface {
use EntityChangedTrait;
use EntityOwnerTrait;
/**
* {@inheritdoc}
*/
public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
$fields = parent::baseFieldDefinitions($entity_type);
$fields['created'] = BaseFieldDefinition::create('created')
->setLabel(t('Created'))
->setDescription(t('The time that the individual was created.'))
->setRevisionable(TRUE)
->setDisplayOptions('form', [
'type' => 'datetime_timestamp',
'weight' => -5,
])
->setDisplayConfigurable('form', TRUE);
$fields['changed'] = BaseFieldDefinition::create('changed')
->setLabel(t('Changed'))
->setDescription(t('The time that the individual was last edited.'))
->setRevisionable(TRUE);
$fields['uid'] = EntityOwnerTrait::getOwnerFieldDefinition()
->setDescription(t('The user that is the individual owner.'));
$fields['name'] = BaseFieldDefinition::create('name')
->setLabel(t('Name'))
->setDescription(t('Name of the individual.'))
->setRevisionable(TRUE)
->setDisplayOptions('form', [
'type' => 'name_default',
'weight' => 0,
])
->setDisplayOptions('view', [
'label' => 'hidden',
'type' => 'name_default',
'weight' => 0,
])
->setDisplayConfigurable('form', TRUE)
->setDisplayConfigurable('view', TRUE);
return $fields;
}
/**
* Gets the primary address.
*
* @return \Drupal\Core\Field\FieldItemListInterface|\Drupal\Core\TypedData\TypedDataInterface
* The address property object.
*/
public function getPrimaryAddress() {
return $this
->getPrimaryField('address');
}
/**
* Gets the primary email.
*
* @return \Drupal\Core\Field\FieldItemListInterface|\Drupal\Core\TypedData\TypedDataInterface
* The email property object.
*/
public function getPrimaryEmail() {
return $this
->getPrimaryField('email');
}
/**
* Gets the primary phone.
*
* @return \Drupal\Core\Field\FieldItemListInterface|\Drupal\Core\TypedData\TypedDataInterface
* The phone property object.
*/
public function getPrimaryPhone() {
return $this
->getPrimaryField('phone');
}
/**
* Gets the primary field.
*
* @param string $field
* The primary field name.
*
* @return \Drupal\Core\Field\FieldItemListInterface|\Drupal\Core\TypedData\TypedDataInterface
* The primary field property object.
*
* @throws \InvalidArgumentException
* If no primary field is configured.
* If the configured primary field does not exist.
*/
public function getPrimaryField($field) {
$type = $this
->get('type')->entity;
$name = empty($type->primary_fields[$field]) ? '' : $type->primary_fields[$field];
return $this
->get($name);
}
/**
* {@inheritdoc}
*/
public function label() {
$label = '';
if ($item = $this
->get('name')
->first()) {
$label = "{$item->given} {$item->family}";
}
if (empty(trim($label))) {
$label = t('Nameless #@id', [
'@id' => $this
->id(),
]);
}
\Drupal::moduleHandler()
->alter('crm_core_individual_label', $label, $this);
return $label;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
AccessibleInterface:: |
public | function | Checks data value access. | 9 |
CacheableDependencyInterface:: |
public | function | The cache contexts associated with this object. | 34 |
CacheableDependencyInterface:: |
public | function | The maximum age for which this object may be cached. | 34 |
CacheableDependencyInterface:: |
public | function | The cache tags associated with this object. | 27 |
EntityChangedTrait:: |
public | function | Gets the timestamp of the last entity change for the current translation. | |
EntityChangedTrait:: |
public | function | Returns the timestamp of the last entity change across all translations. | |
EntityChangedTrait:: |
public | function | Sets the timestamp of the last entity change for the current translation. | |
EntityInterface:: |
public | function | Gets the bundle of the entity. | 2 |
EntityInterface:: |
public static | function | Constructs a new entity object, without permanently saving it. | 2 |
EntityInterface:: |
public | function | Creates a duplicate of the entity. | 2 |
EntityInterface:: |
public | function | Deletes an entity permanently. | 2 |
EntityInterface:: |
public | function | Enforces an entity to be new. | 2 |
EntityInterface:: |
public | function | Returns the cache tags that should be used to invalidate caches. | 2 |
EntityInterface:: |
public | function | Gets the key that is used to store configuration dependencies. | 2 |
EntityInterface:: |
public | function | Gets the configuration dependency name. | 2 |
EntityInterface:: |
public | function | Gets the configuration target identifier for the entity. | 2 |
EntityInterface:: |
public | function | Gets the entity type definition. | 2 |
EntityInterface:: |
public | function | Gets the ID of the type of the entity. | 2 |
EntityInterface:: |
public | function | Gets the original ID. | 2 |
EntityInterface:: |
public | function | Gets a typed data object for this entity object. | 2 |
EntityInterface:: |
public | function | Indicates if a link template exists for a given key. | 2 |
EntityInterface:: |
public | function | Gets the identifier. | 2 |
EntityInterface:: |
public | function | Determines whether the entity is new. | 2 |
EntityInterface:: |
public | function | Gets the language of the entity. | 2 |
EntityInterface:: |
public | function | Deprecated way of generating a link to the entity. See toLink(). | 2 |
EntityInterface:: |
public static | function | Loads an entity. | 2 |
EntityInterface:: |
public static | function | Loads one or more entities. | 2 |
EntityInterface:: |
public | function | Acts on a created entity before hooks are invoked. | 2 |
EntityInterface:: |
public static | function | Acts on deleted entities before the delete hook is invoked. | 2 |
EntityInterface:: |
public static | function | Acts on loaded entities. | 3 |
EntityInterface:: |
public | function | Acts on a saved entity before the insert or update hook is invoked. | 2 |
EntityInterface:: |
public static | function | Changes the values of an entity before it is created. | 2 |
EntityInterface:: |
public static | function | Acts on entities before they are deleted and before hooks are invoked. | 2 |
EntityInterface:: |
public | function | Acts on an entity before the presave hook is invoked. | 2 |
EntityInterface:: |
public | function | Gets a list of entities referenced by this entity. | 2 |
EntityInterface:: |
public | function | Saves an entity permanently. | 2 |
EntityInterface:: |
public | function | Sets the original ID. | 2 |
EntityInterface:: |
public | function | Generates the HTML for a link to this entity. | 2 |
EntityInterface:: |
public | function | Gets the URL object for the entity. | 2 |
EntityInterface:: |
public | function | Gets a list of URI relationships supported by this entity. | 2 |
EntityInterface:: |
public | function | Gets the public URL for this entity. | 2 |
EntityInterface:: |
public | function | Gets the URL object for the entity. | 2 |
EntityInterface:: |
public | function | Gets the entity UUID (Universally Unique Identifier). | 2 |
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. | |
FieldableEntityInterface:: |
public static | function | Provides field definitions for a specific bundle. | 2 |
FieldableEntityInterface:: |
public | function | Gets a field item list. | 1 |
FieldableEntityInterface:: |
public | function | Gets the definition of a contained field. | 1 |
FieldableEntityInterface:: |
public | function | Gets an array of field definitions of all contained fields. | 1 |
FieldableEntityInterface:: |
public | function | Gets an array of all field item lists. | 1 |
FieldableEntityInterface:: |
public | function | Gets an array of field item lists for translatable fields. | 1 |
FieldableEntityInterface:: |
public | function | Determines whether the entity has a field with the given name. | 1 |
FieldableEntityInterface:: |
public | function | Checks whether entity validation is required before saving the entity. | 1 |
FieldableEntityInterface:: |
public | function | Reacts to changes to a field. | 1 |
FieldableEntityInterface:: |
public | function | Sets a field value. | 1 |
FieldableEntityInterface:: |
public | function | Sets whether entity validation is required before saving the entity. | 1 |
FieldableEntityInterface:: |
public | function |
Gets an array of all field values. Overrides EntityInterface:: |
|
FieldableEntityInterface:: |
public | function | Validates the currently set values. | 1 |
Individual:: |
public static | function |
Provides base field definitions for an entity type. Overrides FieldableEntityInterface:: |
|
Individual:: |
public | function | Gets the primary address. | |
Individual:: |
public | function | Gets the primary email. | |
Individual:: |
public | function | Gets the primary field. | |
Individual:: |
public | function | Gets the primary phone. | |
Individual:: |
public | function |
Gets the label of the entity. Overrides EntityInterface:: |
|
RefinableCacheableDependencyInterface:: |
public | function | Adds a dependency on an object: merges its cacheability metadata. | 1 |
RefinableCacheableDependencyInterface:: |
public | function | Adds cache contexts. | 1 |
RefinableCacheableDependencyInterface:: |
public | function | Adds cache tags. | 1 |
RefinableCacheableDependencyInterface:: |
public | function | Merges the maximum age (in seconds) with the existing maximum age. | 1 |
RevisionableInterface:: |
public | function | Gets the loaded Revision ID of the entity. | 1 |
RevisionableInterface:: |
public | function | Gets the revision identifier of the entity. | 1 |
RevisionableInterface:: |
public | function | Checks if this entity is the default revision. | 1 |
RevisionableInterface:: |
public | function | Checks if this entity is the latest revision. | 1 |
RevisionableInterface:: |
public | function | Determines whether a new revision should be created on save. | 1 |
RevisionableInterface:: |
public | function | Acts on a revision before it gets saved. | 1 |
RevisionableInterface:: |
public | function | Enforces an entity to be saved as a new revision. | 1 |
RevisionableInterface:: |
public | function | Updates the loaded Revision ID with the revision ID. | 1 |
RevisionableInterface:: |
public | function | Checks whether the entity object was a default revision when it was saved. | 1 |
SynchronizableInterface:: |
public | function | Returns whether this entity is being changed as part of a synchronization. | 1 |
SynchronizableInterface:: |
public | function | Sets the status of the synchronization flag. | 1 |
TranslatableInterface:: |
public | function | Adds a new translation to the translatable object. | 1 |
TranslatableInterface:: |
public | function | Gets a translation of the data. | 1 |
TranslatableInterface:: |
public | function | Returns the languages the data is translated to. | 1 |
TranslatableInterface:: |
public | function | Returns the translatable object referring to the original language. | 1 |
TranslatableInterface:: |
public | function | Checks there is a translation for the given language code. | 1 |
TranslatableInterface:: |
public | function | Determines if the current translation of the entity has unsaved changes. | 1 |
TranslatableInterface:: |
public | function | Checks whether the translation is the default one. | 1 |
TranslatableInterface:: |
public | function | Checks whether the translation is new. | 1 |
TranslatableInterface:: |
public | function | Returns the translation support status. | 1 |
TranslatableInterface:: |
public | function | Removes the translation identified by the given language code. | 1 |
TranslatableRevisionableInterface:: |
public | function | Checks if untranslatable fields should affect only the default translation. | 1 |
TranslatableRevisionableInterface:: |
public | function | Checks whether this is the latest revision affecting this translation. | 1 |
TranslatableRevisionableInterface:: |
public | function | Checks whether the current translation is affected by the current revision. | 1 |
TranslatableRevisionableInterface:: |
public | function | Checks if the revision translation affected flag value has been enforced. | 1 |
TranslatableRevisionableInterface:: |
public | function | Marks the current revision translation as affected. | 1 |
TranslatableRevisionableInterface:: |
public | function | Enforces the revision translation affected flag value. | 1 |