113 lines
3.9 KiB
Plaintext
113 lines
3.9 KiB
Plaintext
<?php
|
|
|
|
|
|
use \Drupal\Core\Entity\Sql\SqlContentEntityStorageSchemaConverter;
|
|
use \Drupal\Core\Field\BaseFieldDefinition;
|
|
|
|
function opencase_entities_update_80199() {
|
|
$field_storage_definition = BaseFieldDefinition::create('string')
|
|
->setLabel(t('Contact Role'))
|
|
->setDescription(t('Role of the contact within the organisation'))
|
|
->setRevisionable(TRUE)
|
|
->setSettings([
|
|
'max_length' => 50,
|
|
'text_processing' => 0,
|
|
])
|
|
->setDefaultValue('')
|
|
->setDisplayOptions('view', [
|
|
'label' => 'above',
|
|
'type' => 'string',
|
|
'weight' => 52,
|
|
])
|
|
->setDisplayOptions('form', [
|
|
'type' => 'string_textfield',
|
|
'weight' => 52,
|
|
])
|
|
->setRequired(FALSE);
|
|
\Drupal::entityDefinitionUpdateManager()
|
|
->installFieldStorageDefinition('contact_role', 'oc_organisation', 'opencase_entities', $field_storage_definition);
|
|
}
|
|
|
|
function opencase_entities_update_80198() {
|
|
$field_storage_definition = \Drupal\Core\Field\BaseFieldDefinition::create('file')
|
|
->setLabel(t('Files'))
|
|
->setDescription(t('Files relating to this organisation'))
|
|
->setSetting('file_directory', '[date:custom:Y]-[date:custom:m]')
|
|
->setSetting('handler', 'default:file')
|
|
->setSetting('file_extensions', 'txt jpg jpeg gif rtf xls xlsx doc swf png pdf docx csv')
|
|
->setSetting('description_field', 'true')
|
|
->setSetting('uri_scheme', 'private')
|
|
->setCardinality(-1)
|
|
->setDisplayOptions('form', [
|
|
'type' => 'file_generic',
|
|
'weight' => 61,
|
|
'settings' => [
|
|
'progress_indicator' => 'throbber',
|
|
],
|
|
])
|
|
->setDisplayOptions('view', [
|
|
'label' => 'above',
|
|
'settings' => ['use_description_as_link_text' => 'true']
|
|
]);
|
|
|
|
\Drupal::entityDefinitionUpdateManager()
|
|
->installFieldStorageDefinition('organisation_files', 'oc_organisation', 'opencase_entities', $field_storage_definition);
|
|
}
|
|
|
|
function opencase_entities_update_80197() {
|
|
//check if the table exists first. If not, then create the entity.
|
|
if(!db_table_exists('oc_organisation')) {
|
|
\Drupal::entityTypeManager()->clearCachedDefinitions();
|
|
\Drupal::entityDefinitionUpdateManager()
|
|
->installEntityType(\Drupal::entityTypeManager()->getDefinition('oc_organisation'));
|
|
}
|
|
else {
|
|
return 'Organisation entity already exists';
|
|
}
|
|
}
|
|
|
|
function opencase_entities_update_80192(&$sandbox) {
|
|
$schema_converter = new SqlContentEntityStorageSchemaConverter(
|
|
'oc_actor',
|
|
\Drupal::entityTypeManager(),
|
|
\Drupal::entityDefinitionUpdateManager(),
|
|
\Drupal::service('entity.last_installed_schema.repository'),
|
|
\Drupal::keyValue('entity.storage_schema.sql'),
|
|
\Drupal::database()
|
|
);
|
|
|
|
$contact_details_fields = ['email', 'phone', 'phone2', 'postal_address', 'post_code'];
|
|
$schema_converter->convertToRevisionable($sandbox, $contact_details_fields);
|
|
}
|
|
|
|
function opencase_entities_update_8016() {
|
|
$update_manager = \Drupal::entityDefinitionUpdateManager();
|
|
$definition = $update_manager->getFieldStorageDefinition('activity_date_time', 'oc_activity');
|
|
$update_manager->updateFieldStorageDefinition($definition);
|
|
}
|
|
|
|
/**
|
|
* Add 'activity_date_time' field to 'oc_activity' entities.
|
|
*/
|
|
function opencase_entities_update_8003() {
|
|
$storage_definition = \Drupal\Core\Field\BaseFieldDefinition::create('datetime')
|
|
->setLabel(t('Date and time'))
|
|
->setRevisionable(TRUE)
|
|
->setDefaultValueCallback('\Drupal\opencase_entities\Entity\OCActivity::currentDateTime')
|
|
->setDisplayOptions('view', [
|
|
'type' => 'datetime_default',
|
|
'settings' => [
|
|
'format_type' => 'medium',
|
|
],
|
|
'label' => 'above',
|
|
'weight' => -3,
|
|
])
|
|
->setDisplayOptions('form', [
|
|
'type' => 'datetime_default',
|
|
'weight' => -3,
|
|
]);
|
|
|
|
\Drupal::entityDefinitionUpdateManager()
|
|
->installFieldStorageDefinition('activity_date_time', 'oc_activity', 'oc_activity', $storage_definition);
|
|
}
|