]> git.donarmstrong.com Git - roundcube.git/blobdiff - program/js/tiny_mce/plugins/xhtmlxtras/js/element_common.js
Imported Upstream version 0.3
[roundcube.git] / program / js / tiny_mce / plugins / xhtmlxtras / js / element_common.js
index cc11835fa1402302f57ec561fcf8877d1a1f4228..70f168a6b5f03999e5d29808edf4f82ac577fd8a 100644 (file)
@@ -160,19 +160,19 @@ SXE.insertElement = function(element_name) {
                        if (tinymce.isIE && element_name.indexOf('html:') == 0)\r
                                element_name = element_name.substring(5).toLowerCase();\r
 \r
-                       h = '<' + tagName + ' id="#sxe_temp_' + element_name + '#">' + s + '</' + tagName + '>';\r
-\r
-                       tinyMCEPopup.execCommand('mceInsertContent', false, h);\r
-\r
-                       var elementArray = tinymce.grep(SXE.inst.dom.select(element_name), function(n) {return n.id == '#sxe_temp_' + element_name + '#';});\r
+                       insertInlineElement(element_name);\r
+                       var elementArray = tinymce.grep(SXE.inst.dom.select(element_name));\r
                        for (var i=0; i<elementArray.length; i++) {\r
                                var elm = elementArray[i];\r
 \r
-                               elm.id = '';\r
-                               elm.setAttribute('id', '');\r
-                               elm.removeAttribute('id');\r
+                               if (SXE.inst.dom.getAttrib(elm, '_mce_new')) {\r
+                                       elm.id = '';\r
+                                       elm.setAttribute('id', '');\r
+                                       elm.removeAttribute('id');\r
+                                       elm.removeAttribute('_mce_new');\r
 \r
-                               setAllCommonAttribs(elm);\r
+                                       setAllCommonAttribs(elm);\r
+                               }\r
                        }\r
                }\r
        } else {\r
@@ -218,4 +218,14 @@ SXE.removeClass = function(elm,cl) {
 SXE.addClass = function(elm,cl) {\r
        if(!SXE.containsClass(elm,cl)) elm.className ? elm.className += " " + cl : elm.className = cl;\r
        return true;\r
-}
\ No newline at end of file
+}\r
+\r
+function insertInlineElement(en) {\r
+       var ed = tinyMCEPopup.editor, dom = ed.dom;\r
+\r
+       ed.getDoc().execCommand('FontName', false, 'mceinline');\r
+       tinymce.each(dom.select('span,font'), function(n) {\r
+               if (n.style.fontFamily == 'mceinline' || n.face == 'mceinline')\r
+                       dom.replace(dom.create(en, {_mce_new : 1}), n, 1);\r
+       });\r
+}\r