protected function AdminExclude::validateVisibility in Image Lazyloader 8
Helper function to independently validate the visibility UI.
Parameters
array $form: A nested array form elements comprising the form.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
1 call to AdminExclude::validateVisibility()
- AdminExclude::validateForm in src/
Form/ AdminExclude.php - Form validation handler.
File
- src/
Form/ AdminExclude.php, line 206
Class
- AdminExclude
- Class AdminExclude.
Namespace
Drupal\lazyloader\FormCode
protected function validateVisibility(array $form, FormStateInterface $form_state) {
// Validate visibility condition settings.
foreach ($form_state
->getValue('visibility') as $condition_id => $values) {
// All condition plugins use 'negate' as a Boolean in their schema.
// However, certain form elements may return it as 0/1. Cast here to
// ensure the data is in the expected type.
if (array_key_exists('negate', $values)) {
$values['negate'] = (bool) $values['negate'];
}
// Allow the condition to validate the form.
$condition = $form_state
->get([
'conditions',
$condition_id,
]);
$condition_values = (new FormState())
->setValues($values);
$condition
->validateConfigurationForm($form, $condition_values);
// Update the original form values.
$form_state
->setValue([
'visibility',
$condition_id,
], $condition_values
->getValues());
}
}