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