]> git.donarmstrong.com Git - roundcube.git/blobdiff - program/js/editor.js
Imported Upstream version 0.2~alpha
[roundcube.git] / program / js / editor.js
index 98dde2eca5dfde303a1a059a620cc4487130f3d6..7b22c9e8e5346c6e16da5eea401ca640ad7d82e0 100644 (file)
 
 // Initialize the message editor
 
-function rcmail_editor_init(skin_path)
+function rcmail_editor_init(skin_path, editor_lang)
   {
-  tinyMCE.init({ mode : 'specific_textareas',
+  tinyMCE.init({ mode : "textareas",
+                 editor_selector : "mce_editor",
                  accessibility_focus : false,
                  apply_source_formatting : true,
-                 theme : 'advanced',
-                 plugins : 'emotions,media,nonbreaking,table,searchreplace,spellchecker,visualchars',
-                 theme_advanced_buttons1 : 'bold,italic,underline,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,bullist,numlist,outdent,indent,separator,emotions,charmap,code,forecolor,backcolor,fontselect,fontsizeselect, separator,undo,redo,image,media',
-                 theme_advanced_buttons2 : '',
-                 theme_advanced_buttons3 : '',
-                 theme_advanced_toolbar_location : 'top',
-                 theme_advanced_toolbar_align : 'left',
-                 extended_valid_elements : 'font[face|size|color|style],span[id|class|align|style]',
-                 content_css : skin_path + '/editor_content.css',
-                 editor_css : skin_path + '/editor_ui.css',
-                 external_image_list_url : 'program/js/editor_images.js'
+                 theme : "advanced",
+                 language : editor_lang,
+                 plugins : "emotions,media,nonbreaking,table,searchreplace,visualchars,directionality",
+                 theme_advanced_buttons1 : "bold,italic,underline,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,bullist,numlist,outdent,indent,separator,link,unlink,emotions,charmap,code,forecolor,backcolor,fontselect,fontsizeselect, separator,undo,redo,image,media,ltr,rtl",
+                 theme_advanced_buttons2 : "",
+                 theme_advanced_buttons3 : "",
+                 theme_advanced_toolbar_location : "top",
+                 theme_advanced_toolbar_align : "left",
+                 extended_valid_elements : "font[face|size|color|style],span[id|class|align|style]",
+                 content_css : skin_path + "/editor_content.css",
+                 external_image_list_url : "editor_images.js"
                });
   }
 
-// Set the state of the HTML/Plain toggles based on the _is_html field value
-function rcmail_set_editor_toggle_states()
-  {
-  // set the editor toggle based on the state of the editor
-
-  var htmlFlag = document.getElementsByName('_is_html')[0];
-  var toggles = document.getElementsByName('_editorSelect');
-  for(var t=0; t<toggles.length; t++)
-    {
-       if (toggles[t].value == 'html')
-         {
-         toggles[t].checked = (htmlFlag.value == "1");
-         }
-       else
-         {
-         toggles[t].checked = (htmlFlag.value == "0");
-         }
-       }
-  }
-
 // Toggle between the HTML and Plain Text editors
 
 function rcmail_toggle_editor(toggler)
@@ -61,7 +42,6 @@ function rcmail_toggle_editor(toggler)
   var selectedEditor = toggler.value;
 
   // determine the currently displayed editor
-
   var htmlFlag = document.getElementsByName('_is_html')[0];
   var isHtml = htmlFlag.value;
 
@@ -80,16 +60,16 @@ function rcmail_toggle_editor(toggler)
     var existingPlainText = composeElement.value;
     var htmlText = "<pre>" + existingPlainText + "</pre>";
     composeElement.value = htmlText;
-    tinyMCE.execCommand('mceAddControl', true, '_message');
+    tinyMCE.execCommand('mceAddControl', true, 'compose-body');
     htmlFlag.value = "1";
     }
   else
     {
     rcmail.set_busy(true, 'converting');
-    var thisMCE = tinyMCE.getInstanceById('_message');
-    var existingHtml = tinyMCE.getContent();
+    var thisMCE = tinyMCE.get('compose-body');
+    var existingHtml = thisMCE.getContent();
     rcmail_html2plain(existingHtml);
-    tinyMCE.execCommand('mceRemoveControl', true, '_message');
+    tinyMCE.execCommand('mceRemoveControl', true, 'compose-body');
     htmlFlag.value = "0";
     }
   }