You are here

public static function CKEditor5::getGeneratedAllowedHtmlValue in Drupal 10

Value callback to set the CKEditor 5-generated "allowed_html" value.

Used to set the value of filter_html's "allowed_html" form item if the form has been validated and hence `ckeditor5_validated_pair` is available in form state. This allows setting a guaranteed to be valid value.

`ckeditor5_validated_pair` can be set from two places:

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

string The value to assign to the element.

File

core/modules/ckeditor5/src/Plugin/Editor/CKEditor5.php, line 588

Class

CKEditor5
Defines a CKEditor 5-based text editor for Drupal.

Namespace

Drupal\ckeditor5\Plugin\Editor

Code

public static function getGeneratedAllowedHtmlValue(array &$element, $input, FormStateInterface $form_state) : string {
  if ($form_state
    ->isValidationComplete()) {
    $validated_format = $form_state
      ->get('ckeditor5_validated_pair')
      ->getFilterFormat();
    $configuration = $validated_format
      ->filters()
      ->get('filter_html')
      ->getConfiguration();
    return $configuration['settings']['allowed_html'];
  }
  else {
    if ($input !== FALSE) {
      return $input;
    }
    return $element['#default_value'];
  }
}