From c4f3110291a807ad513b916a0915e7ce4c068e3d Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Tue, 6 Mar 2018 21:58:33 +0900 Subject: [PATCH] Enable textarea to be used as member agreement editor --- modules/editor/editor.view.php | 3 --- modules/editor/skins/textarea/js/textarea.js | 18 +++++++++++++++++- modules/member/member.admin.controller.php | 2 ++ 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/modules/editor/editor.view.php b/modules/editor/editor.view.php index 4cdd7b79a..4ac2d03bc 100644 --- a/modules/editor/editor.view.php +++ b/modules/editor/editor.view.php @@ -28,9 +28,6 @@ class editorView extends editor // Load editor $oEditorModel = getModel('editor'); $option = $oEditorModel->getEditorConfig(); - $option->editor_skin = 'ckeditor'; - $option->content_style = 'ckeditor_light'; - $option->sel_editor_colorset = 'moono-lisa'; $option->primary_key_name = 'primary_key'; $option->content_key_name = 'content'; $option->allow_fileupload = FALSE; diff --git a/modules/editor/skins/textarea/js/textarea.js b/modules/editor/skins/textarea/js/textarea.js index 1f624b4a2..1c477fa06 100644 --- a/modules/editor/skins/textarea/js/textarea.js +++ b/modules/editor/skins/textarea/js/textarea.js @@ -4,6 +4,7 @@ function editorTextarea(editor_sequence) { var primary_key = textarea.data("editor-primary-key-name"); var insert_form = textarea.closest("form"); var content_input = insert_form.find("input[name='" + content_key + "']"); + var content = ""; // Set editor keys editorRelKeys[editor_sequence] = {}; @@ -16,7 +17,7 @@ function editorTextarea(editor_sequence) { // Load existing content if (content_input.size()) { - var content = String(content_input.val()).stripTags(); + content = String(content_input.val()).stripTags(); content_input.val(content); textarea.val(content.unescape()); } @@ -25,4 +26,19 @@ function editorTextarea(editor_sequence) { textarea.on("change", function() { content_input.val(String(jQuery(this).val()).escape()); }); + + // Copy content to another input and resize iframe if configured + if (window.editor_resize_iframe && window.editor_copy_input) + { + content = String(editor_copy_input.val()).stripTags(); + editor_copy_input.val(content); + textarea.val(content.unescape()); + textarea.on("resize", function(e){ + editor_resize_iframe.height(textarea.height()); + }); + textarea.on("change", function() { + editor_copy_input.val(String(textarea.val()).escape()); + }); + editor_resize_iframe.height(textarea.height()); + } } \ No newline at end of file diff --git a/modules/member/member.admin.controller.php b/modules/member/member.admin.controller.php index 068a7b2b1..0d08a6ca1 100644 --- a/modules/member/member.admin.controller.php +++ b/modules/member/member.admin.controller.php @@ -262,6 +262,8 @@ class memberAdminController extends member $agreement = new stdClass; $agreement->title = escape(utf8_trim($args->{'agreement_' . $i . '_title'})); $agreement->content = $args->{'agreement_' . $i . '_content'}; + $agreement->use_editor = $args->use_editor; + getModel('editor')->converter($agreement, 'document'); $agreement->type = $args->{'agreement_' . $i . '_type'}; if (!in_array($agreement->type, array('required', 'optional', 'disabled'))) {