| 1 |
lars |
1 |
/**
|
|
|
2 |
* attributes.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 |
|
|
|
11 |
function init() {
|
|
|
12 |
tinyMCEPopup.resizeToInnerSize();
|
|
|
13 |
var inst = tinyMCEPopup.editor;
|
|
|
14 |
var dom = inst.dom;
|
|
|
15 |
var elm = inst.selection.getNode();
|
|
|
16 |
var f = document.forms[0];
|
|
|
17 |
var onclick = dom.getAttrib(elm, 'onclick');
|
|
|
18 |
|
|
|
19 |
setFormValue('title', dom.getAttrib(elm, 'title'));
|
|
|
20 |
setFormValue('id', dom.getAttrib(elm, 'id'));
|
|
|
21 |
setFormValue('style', dom.getAttrib(elm, "style"));
|
|
|
22 |
setFormValue('dir', dom.getAttrib(elm, 'dir'));
|
|
|
23 |
setFormValue('lang', dom.getAttrib(elm, 'lang'));
|
|
|
24 |
setFormValue('tabindex', dom.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != "undefined" ? elm.tabindex : ""));
|
|
|
25 |
setFormValue('accesskey', dom.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != "undefined" ? elm.accesskey : ""));
|
|
|
26 |
setFormValue('onfocus', dom.getAttrib(elm, 'onfocus'));
|
|
|
27 |
setFormValue('onblur', dom.getAttrib(elm, 'onblur'));
|
|
|
28 |
setFormValue('onclick', onclick);
|
|
|
29 |
setFormValue('ondblclick', dom.getAttrib(elm, 'ondblclick'));
|
|
|
30 |
setFormValue('onmousedown', dom.getAttrib(elm, 'onmousedown'));
|
|
|
31 |
setFormValue('onmouseup', dom.getAttrib(elm, 'onmouseup'));
|
|
|
32 |
setFormValue('onmouseover', dom.getAttrib(elm, 'onmouseover'));
|
|
|
33 |
setFormValue('onmousemove', dom.getAttrib(elm, 'onmousemove'));
|
|
|
34 |
setFormValue('onmouseout', dom.getAttrib(elm, 'onmouseout'));
|
|
|
35 |
setFormValue('onkeypress', dom.getAttrib(elm, 'onkeypress'));
|
|
|
36 |
setFormValue('onkeydown', dom.getAttrib(elm, 'onkeydown'));
|
|
|
37 |
setFormValue('onkeyup', dom.getAttrib(elm, 'onkeyup'));
|
|
|
38 |
className = dom.getAttrib(elm, 'class');
|
|
|
39 |
|
|
|
40 |
addClassesToList('classlist', 'advlink_styles');
|
|
|
41 |
selectByValue(f, 'classlist', className, true);
|
|
|
42 |
|
|
|
43 |
TinyMCE_EditableSelects.init();
|
|
|
44 |
}
|
|
|
45 |
|
|
|
46 |
function setFormValue(name, value) {
|
|
|
47 |
if(value && document.forms[0].elements[name]){
|
|
|
48 |
document.forms[0].elements[name].value = value;
|
|
|
49 |
}
|
|
|
50 |
}
|
|
|
51 |
|
|
|
52 |
function insertAction() {
|
|
|
53 |
var inst = tinyMCEPopup.editor;
|
|
|
54 |
var elm = inst.selection.getNode();
|
|
|
55 |
|
|
|
56 |
setAllAttribs(elm);
|
|
|
57 |
tinyMCEPopup.execCommand("mceEndUndoLevel");
|
|
|
58 |
tinyMCEPopup.close();
|
|
|
59 |
}
|
|
|
60 |
|
|
|
61 |
function setAttrib(elm, attrib, value) {
|
|
|
62 |
var formObj = document.forms[0];
|
|
|
63 |
var valueElm = formObj.elements[attrib.toLowerCase()];
|
|
|
64 |
var inst = tinyMCEPopup.editor;
|
|
|
65 |
var dom = inst.dom;
|
|
|
66 |
|
|
|
67 |
if (typeof(value) == "undefined" || value == null) {
|
|
|
68 |
value = "";
|
|
|
69 |
|
|
|
70 |
if (valueElm)
|
|
|
71 |
value = valueElm.value;
|
|
|
72 |
}
|
|
|
73 |
|
|
|
74 |
dom.setAttrib(elm, attrib.toLowerCase(), value);
|
|
|
75 |
}
|
|
|
76 |
|
|
|
77 |
function setAllAttribs(elm) {
|
|
|
78 |
var f = document.forms[0];
|
|
|
79 |
|
|
|
80 |
setAttrib(elm, 'title');
|
|
|
81 |
setAttrib(elm, 'id');
|
|
|
82 |
setAttrib(elm, 'style');
|
|
|
83 |
setAttrib(elm, 'class', getSelectValue(f, 'classlist'));
|
|
|
84 |
setAttrib(elm, 'dir');
|
|
|
85 |
setAttrib(elm, 'lang');
|
|
|
86 |
setAttrib(elm, 'tabindex');
|
|
|
87 |
setAttrib(elm, 'accesskey');
|
|
|
88 |
setAttrib(elm, 'onfocus');
|
|
|
89 |
setAttrib(elm, 'onblur');
|
|
|
90 |
setAttrib(elm, 'onclick');
|
|
|
91 |
setAttrib(elm, 'ondblclick');
|
|
|
92 |
setAttrib(elm, 'onmousedown');
|
|
|
93 |
setAttrib(elm, 'onmouseup');
|
|
|
94 |
setAttrib(elm, 'onmouseover');
|
|
|
95 |
setAttrib(elm, 'onmousemove');
|
|
|
96 |
setAttrib(elm, 'onmouseout');
|
|
|
97 |
setAttrib(elm, 'onkeypress');
|
|
|
98 |
setAttrib(elm, 'onkeydown');
|
|
|
99 |
setAttrib(elm, 'onkeyup');
|
|
|
100 |
|
|
|
101 |
// Refresh in old MSIE
|
|
|
102 |
// if (tinyMCE.isMSIE5)
|
|
|
103 |
// elm.outerHTML = elm.outerHTML;
|
|
|
104 |
}
|
|
|
105 |
|
|
|
106 |
function insertAttribute() {
|
|
|
107 |
tinyMCEPopup.close();
|
|
|
108 |
}
|
|
|
109 |
|
|
|
110 |
tinyMCEPopup.onInit.add(init);
|
|
|
111 |
tinyMCEPopup.requireLangPack();
|