diff --git a/modules/backend/formwidgets/RichEditor.php b/modules/backend/formwidgets/RichEditor.php index c236ca754..0adbbc8f8 100644 --- a/modules/backend/formwidgets/RichEditor.php +++ b/modules/backend/formwidgets/RichEditor.php @@ -1,15 +1,15 @@ 0){$.each($form.serializeArray(),function(index,field){formData[field.name]=field.value;})} froalaOptions.imageUploadURL=froalaOptions.fileUploadURL=window.location froalaOptions.imageUploadParam=froalaOptions.fileUploadParam='file_data' -froalaOptions.imageUploadParams=froalaOptions.fileUploadParams={X_OCTOBER_MEDIA_MANAGER_QUICK_UPLOAD:1,_token:$('meta[name="csrf-token"]').attr('content')} +froalaOptions.imageUploadParams=froalaOptions.fileUploadParams=$.extend(formData,{_handler:froalaOptions.uploadHandler,}) var placeholder=this.$textarea.attr('placeholder') froalaOptions.placeholderText=placeholder?placeholder:'' froalaOptions.height=this.$el.hasClass('stretch')?Infinity:$('.height-indicator',this.$el).height() diff --git a/modules/backend/formwidgets/richeditor/assets/js/richeditor.js b/modules/backend/formwidgets/richeditor/assets/js/richeditor.js index 75cd218bf..02e33978b 100755 --- a/modules/backend/formwidgets/richeditor/assets/js/richeditor.js +++ b/modules/backend/formwidgets/richeditor/assets/js/richeditor.js @@ -36,6 +36,7 @@ RichEditor.DEFAULTS = { linksHandler: null, + uploadHandler: null, stylesheet: null, fullpage: false, editorLang: 'en', @@ -79,6 +80,7 @@ language: this.options.editorLang, fullPage: this.options.fullpage, pageLinksHandler: this.options.linksHandler, + uploadHandler: this.options.uploadHandler, aceEditorVendorPath: this.options.aceVendorPath, toolbarSticky: false } @@ -153,13 +155,27 @@ froalaOptions.shortcutsEnabled = ['show', 'bold', 'italic', 'underline', 'indent', 'outdent', 'undo', 'redo'] + // Ensure that October recognizes AJAX requests from Froala + froalaOptions.requestHeaders = { + 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content'), + 'X-Requested-With': 'XMLHttpRequest' + } + + // Get the data from the parent form for including in the request + var $form = this.$el.closest('form') + var formData = {}; + if ($form.length > 0) { + $.each($form.serializeArray(), function (index, field) { + formData[field.name] = field.value; + }) + } + // File upload froalaOptions.imageUploadURL = froalaOptions.fileUploadURL = window.location froalaOptions.imageUploadParam = froalaOptions.fileUploadParam = 'file_data' - froalaOptions.imageUploadParams = froalaOptions.fileUploadParams = { - X_OCTOBER_MEDIA_MANAGER_QUICK_UPLOAD: 1, - _token: $('meta[name="csrf-token"]').attr('content') - } + froalaOptions.imageUploadParams = froalaOptions.fileUploadParams = $.extend(formData, { + _handler: froalaOptions.uploadHandler, + }) var placeholder = this.$textarea.attr('placeholder') froalaOptions.placeholderText = placeholder ? placeholder : '' diff --git a/modules/backend/formwidgets/richeditor/assets/less/richeditor.less b/modules/backend/formwidgets/richeditor/assets/less/richeditor.less index 760d9fb7f..d171d3531 100755 --- a/modules/backend/formwidgets/richeditor/assets/less/richeditor.less +++ b/modules/backend/formwidgets/richeditor/assets/less/richeditor.less @@ -106,6 +106,14 @@ &.size-large { .richeditor-set-height(@size-large); } &.size-huge { .richeditor-set-height(@size-huge); } &.size-giant { .richeditor-set-height(@size-giant); } + + &.stretch { + &.size-tiny { min-height: @size-tiny; } + &.size-small { min-height: @size-small; } + &.size-large { min-height: @size-large; } + &.size-huge { min-height: @size-huge; } + &.size-giant { min-height: @size-giant; } + } } .fr-tooltip { diff --git a/modules/backend/formwidgets/richeditor/partials/_richeditor.htm b/modules/backend/formwidgets/richeditor/partials/_richeditor.htm index 83a80a963..d9cf3af79 100755 --- a/modules/backend/formwidgets/richeditor/partials/_richeditor.htm +++ b/modules/backend/formwidgets/richeditor/partials/_richeditor.htm @@ -22,9 +22,11 @@ data-table-styles="" data-table-cell-styles="" data-links-handler="getEventHandler('onLoadPageLinksForm') ?>" + data-upload-handler="getEventHandler('onUpload') ?>" data-ace-vendor-path="" data-control="richeditor" - getAttributes() ?>> + getAttributes() ?> + >