move code up one directory
[atutor.git] / jscripts / tiny_mce / plugins / xhtmlxtras / js / ins.js
1 /**\r
2  * ins.js\r
3  *\r
4  * Copyright 2009, Moxiecode Systems AB\r
5  * Released under LGPL License.\r
6  *\r
7  * License: http://tinymce.moxiecode.com/license\r
8  * Contributing: http://tinymce.moxiecode.com/contributing\r
9  */\r
10 \r
11 function init() {\r
12         SXE.initElementDialog('ins');\r
13         if (SXE.currentAction == "update") {\r
14                 setFormValue('datetime', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'datetime'));\r
15                 setFormValue('cite', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'cite'));\r
16                 SXE.showRemoveButton();\r
17         }\r
18 }\r
19 \r
20 function setElementAttribs(elm) {\r
21         setAllCommonAttribs(elm);\r
22         setAttrib(elm, 'datetime');\r
23         setAttrib(elm, 'cite');\r
24 }\r
25 \r
26 function insertIns() {\r
27         var elm = tinyMCEPopup.editor.dom.getParent(SXE.focusElement, 'INS');\r
28         tinyMCEPopup.execCommand('mceBeginUndoLevel');\r
29         if (elm == null) {\r
30                 var s = SXE.inst.selection.getContent();\r
31                 if(s.length > 0) {\r
32                         insertInlineElement('INS');\r
33                         var elementArray = tinymce.grep(SXE.inst.dom.select('ins'), function(n) {return n.id == '#sxe_temp_ins#';});\r
34                         for (var i=0; i<elementArray.length; i++) {\r
35                                 var elm = elementArray[i];\r
36                                 setElementAttribs(elm);\r
37                         }\r
38                 }\r
39         } else {\r
40                 setElementAttribs(elm);\r
41         }\r
42         tinyMCEPopup.editor.nodeChanged();\r
43         tinyMCEPopup.execCommand('mceEndUndoLevel');\r
44         tinyMCEPopup.close();\r
45 }\r
46 \r
47 function removeIns() {\r
48         SXE.removeElement('ins');\r
49         tinyMCEPopup.close();\r
50 }\r
51 \r
52 function insertInlineElement(en) {\r
53         var ed = tinyMCEPopup.editor, dom = ed.dom;\r
54 \r
55         ed.getDoc().execCommand('FontName', false, 'mceinline');\r
56         tinymce.each(dom.select(tinymce.isWebKit ? 'span' : 'font'), function(n) {\r
57                 if (n.style.fontFamily == 'mceinline' || n.face == 'mceinline')\r
58                         dom.replace(dom.create(en), n, 1);\r
59         });\r
60 }\r
61 \r
62 tinyMCEPopup.onInit.add(init);\r