From b18284cfd71c9f6bbf76afc5c808862fed84be01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20B=C3=B6hmer?= Date: Tue, 26 Jul 2022 01:43:30 +0200 Subject: [PATCH] Set the language of the CKEDITOR5 elements based on the page locale. --- .../controllers/elements/ckeditor_controller.js | 15 ++++++++++----- templates/base.html.twig | 8 +++++++- webpack.config.js | 3 ++- 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/assets/controllers/elements/ckeditor_controller.js b/assets/controllers/elements/ckeditor_controller.js index d0fdf5b8..40674ab8 100644 --- a/assets/controllers/elements/ckeditor_controller.js +++ b/assets/controllers/elements/ckeditor_controller.js @@ -28,7 +28,11 @@ export default class extends Controller { return; } - EDITOR_TYPE.create(this.element) + const language = document.body.dataset.locale ?? "en"; + + EDITOR_TYPE.create(this.element, { + language: language, + }) .then(editor => { if(this.element.disabled) { editor.enableReadOnlyMode("readonly"); @@ -39,8 +43,8 @@ export default class extends Controller { .catch(error => { console.error(error); }); - - /* const watchdog = new EditorWatchdog(); + /* + const watchdog = new EditorWatchdog(); watchdog.setCreator((elementOrData, editorConfig) => { return EDITOR_TYPE.create(elementOrData, editorConfig) .then(editor => { @@ -56,7 +60,8 @@ export default class extends Controller { }); watchdog.create(this.element, { - - });*/ + }).catch(error => { + console.error(error); + }); */ } } \ No newline at end of file diff --git a/templates/base.html.twig b/templates/base.html.twig index 2cdb19be..ea5878c8 100644 --- a/templates/base.html.twig +++ b/templates/base.html.twig @@ -51,9 +51,15 @@ {% block javascripts %} {{ encore_entry_script_tags('app') }} {{ encore_entry_script_tags('ru2ftwofactor') }} + + {# load translation files for ckeditor #} + {% set two_chars_locale = app.request.locale|default("en")|slice(0,2) %} + {% if two_chars_locale != "en" %} + + {% endif %} {% endblock %} - + {% block body %}
diff --git a/webpack.config.js b/webpack.config.js index a2202ba8..9bd1f8f4 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -131,7 +131,8 @@ Encore // See https://ckeditor.com/docs/ckeditor5/latest/features/ui-language.html language: 'en', addMainLanguageTranslationsToAllAssets: true, - additionalLanguages: 'all' + additionalLanguages: 'all', + outputDirectory: 'ckeditor_translations' } ) ) // Use raw-loader for CKEditor 5 SVG files.