},\r
\r
init : function(ed) {\r
- var f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, dom = ed.dom, n = ed.selection.getNode();\r
+ var f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, dom = ed.dom, n = ed.selection.getNode(), fl = tinyMCEPopup.getParam('external_image_list', 'tinyMCEImageList');\r
\r
tinyMCEPopup.resizeToInnerSize();\r
this.fillClassList('class_list');\r
- this.fillFileList('src_list', 'tinyMCEImageList');\r
- this.fillFileList('over_list', 'tinyMCEImageList');\r
- this.fillFileList('out_list', 'tinyMCEImageList');\r
+ this.fillFileList('src_list', fl);\r
+ this.fillFileList('over_list', fl);\r
+ this.fillFileList('out_list', fl);\r
TinyMCE_EditableSelects.init();\r
\r
if (n.nodeName == 'IMG') {\r
}\r
\r
tinymce.extend(args, {\r
- src : nl.src.value,\r
+ src : nl.src.value.replace(/ /g, '%20'),\r
width : nl.width.value,\r
height : nl.height.value,\r
alt : nl.alt.value,\r
if (el && el.nodeName == 'IMG') {\r
ed.dom.setAttribs(el, args);\r
} else {\r
- ed.execCommand('mceInsertContent', false, '<img id="__mce_tmp" />', {skip_undo : 1});\r
- ed.dom.setAttribs('__mce_tmp', args);\r
- ed.dom.setAttrib('__mce_tmp', 'id', '');\r
+ tinymce.each(args, function(value, name) {\r
+ if (value === "") {\r
+ delete args[name];\r
+ }\r
+ });\r
+\r
+ ed.execCommand('mceInsertContent', false, tinyMCEPopup.editor.dom.createHTML('img', args), {skip_undo : 1});\r
ed.undoManager.add();\r
}\r
\r
+ tinyMCEPopup.editor.execCommand('mceRepaint');\r
+ tinyMCEPopup.editor.focus();\r
tinyMCEPopup.close();\r
},\r
\r
fillFileList : function(id, l) {\r
var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;\r
\r
- l = window[l];\r
+ l = typeof(l) === 'function' ? l() : window[l];\r
lst.options.length = 0;\r
\r
if (l && l.length > 0) {\r
},\r
\r
updateStyle : function(ty) {\r
- var dom = tinyMCEPopup.dom, st, v, f = document.forms[0], img = dom.create('img', {style : dom.get('style').value});\r
+ var dom = tinyMCEPopup.dom, b, bStyle, bColor, v, isIE = tinymce.isIE, f = document.forms[0], img = dom.create('img', {style : dom.get('style').value});\r
\r
if (tinyMCEPopup.editor.settings.inline_styles) {\r
// Handle align\r
\r
// Handle border\r
if (ty == 'border') {\r
+ b = img.style.border ? img.style.border.split(' ') : [];\r
+ bStyle = dom.getStyle(img, 'border-style');\r
+ bColor = dom.getStyle(img, 'border-color');\r
+\r
dom.setStyle(img, 'border', '');\r
\r
v = f.border.value;\r
if (v || v == '0') {\r
if (v == '0')\r
- img.style.border = '0';\r
- else\r
- img.style.border = v + 'px solid black';\r
+ img.style.border = isIE ? '0' : '0 none none';\r
+ else {\r
+ if (b.length == 3 && b[isIE ? 2 : 1])\r
+ bStyle = b[isIE ? 2 : 1];\r
+ else if (!bStyle || bStyle == 'none')\r
+ bStyle = 'solid';\r
+ if (b.length == 3 && b[isIE ? 0 : 2])\r
+ bColor = b[isIE ? 0 : 2];\r
+ else if (!bColor || bColor == 'none')\r
+ bColor = 'black';\r
+ img.style.border = v + 'px ' + bStyle + ' ' + bColor;\r
+ }\r
}\r
}\r
\r