protected function SvgImageFieldItem::defaultImageForm in SVG Image Field 2.0.x
Same name and namespace in other branches
- 8 src/Plugin/Field/FieldType/SvgImageFieldItem.php \Drupal\svg_image_field\Plugin\Field\FieldType\SvgImageFieldItem::defaultImageForm()
- 2.1.x src/Plugin/Field/FieldType/SvgImageFieldItem.php \Drupal\svg_image_field\Plugin\Field\FieldType\SvgImageFieldItem::defaultImageForm()
Builds the default_image details element.
Parameters
array $element: The form associative array passed by reference.
array $settings: The field settings array.
2 calls to SvgImageFieldItem::defaultImageForm()
- SvgImageFieldItem::fieldSettingsForm in src/
Plugin/ Field/ FieldType/ SvgImageFieldItem.php - Returns a form for the field-level settings.
- SvgImageFieldItem::storageSettingsForm in src/
Plugin/ Field/ FieldType/ SvgImageFieldItem.php - Returns a form for the storage-level settings.
File
- src/
Plugin/ Field/ FieldType/ SvgImageFieldItem.php, line 230
Class
- SvgImageFieldItem
- Plugin implementation of the 'svg_image' field type.
Namespace
Drupal\svg_image_field\Plugin\Field\FieldTypeCode
protected function defaultImageForm(array &$element, array $settings) {
$element['default_image'] = [
'#type' => 'details',
'#title' => t('Default image'),
'#open' => TRUE,
];
// Convert the stored UUID to a FID.
$fids = [];
$uuid = $settings['default_image']['uuid'];
if ($uuid && ($file = $this
->getEntityTypeManager()
->getStorage('file')
->loadByProperties([
'uuid' => $uuid,
]))) {
$file = reset($file);
$fids[0] = $file
->id();
}
$upload_validators = $this
->getUploadValidators();
$upload_validators['svg_image_field_validate_mime_type'] = [];
$element['default_image']['uuid'] = [
'#type' => 'managed_file',
'#title' => t('Image'),
'#description' => t('Image to be shown if no image is uploaded.'),
'#default_value' => $fids,
'#upload_location' => $settings['uri_scheme'] . '://default_images/',
'#element_validate' => [
'\\Drupal\\file\\Element\\ManagedFile::validateManagedFile',
[
get_class($this),
'validateDefaultImageForm',
],
],
'#upload_validators' => $upload_validators,
];
$element['default_image']['alt'] = [
'#type' => 'textfield',
'#title' => t('Alternative text'),
'#description' => t('This text will be used by screen readers, search engines, and when the image cannot be loaded.'),
'#default_value' => $settings['default_image']['alt'],
'#maxlength' => 512,
];
$element['default_image']['title'] = [
'#type' => 'textfield',
'#title' => t('Title'),
'#description' => t('The title attribute is used as a tooltip when the mouse hovers over the image.'),
'#default_value' => $settings['default_image']['title'],
'#maxlength' => 1024,
];
}