public static function YamlFormOptions::valueCallback in YAML Form 8
Determines how user input is mapped to an element's #value property.
Parameters
array $element: An associative array containing the properties of the element.
mixed $input: The incoming input to populate the form element. If this is FALSE, the element's default value should be returned.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Return value
mixed The value to assign to the element.
Overrides FormElement::valueCallback
File
- src/
Element/ YamlFormOptions.php, line 42
Class
- YamlFormOptions
- Provides a form element to assist in creation of options.
Namespace
Drupal\yamlform\ElementCode
public static function valueCallback(&$element, $input, FormStateInterface $form_state) {
if ($input === FALSE) {
if (!isset($element['#default_value'])) {
return [];
}
$options = is_string($element['#default_value']) ? Yaml::decode($element['#default_value']) : $element['#default_value'];
if (self::hasOptGroup($options)) {
return $options;
}
return self::convertOptionsToValues($options);
}
elseif (is_array($input) && isset($input['options'])) {
return is_string($input['options']) ? Yaml::decode($input['options']) : $input['options'];
}
else {
return NULL;
}
}