public function DrupalSpecialChars::getConfig in CKEditor Special Characters 8
Returns the additions to CKEDITOR.config for a specific CKEditor instance.
The editor's settings can be retrieved via $editor->getSettings(), but be aware that it may not yet contain plugin-specific settings, because the user may not yet have configured the form. If there are plugin-specific settings (verify with isset()), they can be found at
$settings = $editor
->getSettings();
$plugin_specific_settings = $settings['plugins'][$plugin_id];
Parameters
\Drupal\editor\Entity\Editor $editor: A configured text editor object.
Return value
array A keyed array, whose keys will end up as keys under CKEDITOR.config.
Overrides CKEditorPluginInterface::getConfig
File
- src/
Plugin/ CKEditorPlugin/ DrupalSpecialChars.php, line 96
Class
- DrupalSpecialChars
- Defines the "specialChars" plugin.
Namespace
Drupal\ckeditor_specialchars\Plugin\CKEditorPluginCode
public function getConfig(Editor $editor) {
// Defaults.
$config = [
'characters' => '',
'replace' => FALSE,
];
$settings = $editor
->getSettings();
if (isset($settings['plugins']['specialchars'])) {
$config = $settings['plugins']['specialchars'];
}
$characters = explode("\n", $config['characters']);
$characters = array_map('trim', $characters);
$characters = array_filter($characters, 'strlen');
// Not replace = append.
if (!$config['replace']) {
$characters = array_merge($this->defaultCharacters, $characters);
}
return [
'specialChars' => $characters,
];
}