public function NodeTypeThumbnailFormHelper::getForm in Acquia Lift Connector 8
Get Form.
Parameters
string $node_type: Node Type.
Return value
array Acquia Lift Thumbnail Form.
File
- src/
Service/ Helper/ NodeTypeThumbnailFormHelper.php, line 75 - Contains \Drupal\acquia_lift\Service\Helper\NodeTypeThumbnailFormHelper.
Class
- NodeTypeThumbnailFormHelper
- Defines a form that alters node type form to add a thumbnail form.
Namespace
Drupal\acquia_lift\Service\HelperCode
public function getForm($node_type) {
$form = [
'#title' => t('Acquia Lift'),
'#type' => 'details',
'#tree' => TRUE,
'#group' => 'additional_settings',
];
// Find image fields.
$this
->collectImageFields('node', $node_type);
if (empty($this->imageFields)) {
$form['no_image_field'] = [
'#type' => 'markup',
'#markup' => '<div>' . t('This content type has no image field yet.') . '</div>',
];
return $form;
}
// Find image styles.
$image_styles = image_style_options(FALSE);
if (empty($image_styles)) {
$form['no_image_styles'] = [
'#type' => 'markup',
'#markup' => '<div>' . t('This site has no image style yet. Please define an image style first.') . '</div>',
];
return $form;
}
$thumbnail_settings = $this->settings
->get('thumbnail');
$node_type_thumbnail_settings = isset($thumbnail_settings[$node_type]) ? $thumbnail_settings[$node_type] : [
'field' => '',
'style' => '',
];
$form['field'] = [
'#type' => 'select',
'#title' => t('Select preview image to use for content recommendations.'),
'#options' => $this->imageFields,
'#default_value' => $node_type_thumbnail_settings['field'],
'#empty_option' => t('None'),
'#empty_value' => '',
];
$form['style'] = [
'#type' => 'select',
'#title' => t('Select the style to use for the thumbnail.'),
'#options' => $image_styles,
'#default_value' => $node_type_thumbnail_settings['style'],
'#empty_option' => t('None'),
'#empty_value' => '',
'#states' => [
'visible' => [
':input[name="acquia_lift[field]"]' => [
'!value' => '',
],
],
],
];
return $form;
}