diff --git a/resources/assets/javascripts/chunks/wysiwyg.js b/resources/assets/javascripts/chunks/wysiwyg.js index be47e39fa766339cf81a3288425b9a5c61602c73..5ab81d60bf51278988f7d9fd73bb6c88b48bd543 100644 --- a/resources/assets/javascripts/chunks/wysiwyg.js +++ b/resources/assets/javascripts/chunks/wysiwyg.js @@ -14,6 +14,7 @@ import FontColor from '@ckeditor/ckeditor5-font/src/fontcolor.js'; import GeneralHtmlSupport from '@ckeditor/ckeditor5-html-support/src/generalhtmlsupport'; import HeadingPlugin from '@ckeditor/ckeditor5-heading/src/heading'; import HorizontalLine from '@ckeditor/ckeditor5-horizontal-line/src/horizontalline'; +import HtmlComment from '@ckeditor/ckeditor5-html-support/src/htmlcomment'; import ImagePlugin from '@ckeditor/ckeditor5-image/src/image'; import ImageUploadPlugin from '@ckeditor/ckeditor5-image/src/imageupload'; import ImageCaptionPlugin from '@ckeditor/ckeditor5-image/src/imagecaption'; @@ -73,6 +74,7 @@ ClassicEditor.builtinPlugins = [ GeneralHtmlSupport, HeadingPlugin, HorizontalLine, + HtmlComment, ImageCaptionPlugin, ImagePlugin, ImageResizePlugin, diff --git a/resources/assets/javascripts/lib/wysiwyg.js b/resources/assets/javascripts/lib/wysiwyg.js index eacd5098c7084e385027288aba1223c287acc668..c54581dbaf4af33cadb2abcd709a7bacf5faf738 100644 --- a/resources/assets/javascripts/lib/wysiwyg.js +++ b/resources/assets/javascripts/lib/wysiwyg.js @@ -173,7 +173,8 @@ function replaceTextarea(textarea) { // make sure HTML marker is always set, in // case contents are cut-off by the backend $textarea.closest('form').submit(() => { - ckeditor.sourceElement.value = wysiwyg.markAsHtml(ckeditor.getData()); + ckeditor.setData(wysiwyg.markAsHtml(ckeditor.getData())); + ckeditor.updateSourceElement(); }); // focus the editor if requested @@ -183,6 +184,7 @@ function replaceTextarea(textarea) { ckeditor.ui.focusTracker.on('change:isFocused', (evt, name, isFocused) => { if (!isFocused) { + ckeditor.setData(wysiwyg.markAsHtml(ckeditor.getData())); ckeditor.updateSourceElement(); } });