function editor_filter_format_presave in Zircon Profile 8.0
Same name and namespace in other branches
- 8 core/modules/editor/editor.module \editor_filter_format_presave()
Implements hook_ENTITY_TYPE_presave().
Synchronizes the editor status to its paired text format status.
File
- core/
modules/ editor/ editor.module, line 523 - Adds bindings for client-side "text editors" to text formats.
Code
function editor_filter_format_presave(FilterFormatInterface $format) {
// The text format being created cannot have a text editor yet.
if ($format
->isNew()) {
return;
}
/** @var \Drupal\filter\FilterFormatInterface $original */
$original = \Drupal::entityManager()
->getStorage('filter_format')
->loadUnchanged($format
->getOriginalId());
// If the text format status is the same, return early.
if (($status = $format
->status()) === $original
->status()) {
return;
}
/** @var \Drupal\editor\EditorInterface $editor */
if ($editor = Editor::load($format
->id())) {
$editor
->setStatus($status)
->save();
}
}