MDL-23930 fixed javascript insert into tinymce
authorDongsheng Cai <dongsheng@moodle.com>
Wed, 15 Dec 2010 05:56:05 +0000 (13:56 +0800)
committerSam Hemelryk <sam@moodle.com>
Mon, 20 Dec 2010 10:07:15 +0000 (18:07 +0800)
mod/data/data.js
mod/data/templates.php

index 8031ea1..18861e7 100644 (file)
@@ -3,13 +3,15 @@
  * Used when editing a data template
  */
 function insert_field_tags(selectlist) {
-  if (typeof(currEditor) != 'undefined' && currEditor._editMode == 'wysiwyg') {
-    // HTMLArea-specific
-     currEditor.insertHTML(selectlist.options[selectlist.selectedIndex].value);
-  } else {
-    // For inserting when in HTMLArea code view or for normal textareas
-     insertAtCursor(currTextarea, selectlist.options[selectlist.selectedIndex].value);
-  }
+    var value = selectlist.options[selectlist.selectedIndex].value;
+    var editorname = 'template';
+    if (typeof tinyMCE == 'undefined') {
+        var element = document.getElementsByName(editorname)[0];
+        // For inserting when in normal textareas
+        insertAtCursor(element, value);
+    } else {
+        tinyMCE.execInstanceCommand(editorname, 'mceInsertContent', false, value);
+    }
 }
 
 /**
index ebfebde..90cf012 100755 (executable)
@@ -82,13 +82,6 @@ $strdata = get_string('modulenameplural','data');
 // For the javascript for inserting template tags: initialise the default textarea to
 // 'edit_template' - it is always present in all different possible views.
 
-$editorobj = 'editor_'.md5('template');
-
-$bodytag = 'onload="';
-$bodytag .= 'if (typeof('.$editorobj.') != \'undefined\') { currEditor = '.$editorobj.'; } ';
-$bodytag .= 'currTextarea = document.getElementById(\'tempform\').template;';
-$bodytag .= '" ';
-
 if ($mode == 'singletemplate') {
     $PAGE->navbar->add(get_string($mode,'data'));
 }