]>
git.wh0rd.org - tt-rss.git/blob - lib/dijit/_editor/html.js
2 define("dijit/_editor/html",["dojo/_base/lang","dojo/_base/sniff",".."],function(_1
,_2
,_3
){_1
.getObject("_editor",true,_3
);_3
._editor
.escapeXml=function(_4
,_5
){_4
=_4
.replace(/&/gm,"&").replace(/</gm,"<").replace(/>/gm,">").replace(/"/gm,""
;");if(!_5){_4=_4.replace(/'/gm,"'");}return _4;};_3._editor.getNodeHtml=function(_6){var _7;switch(_6.nodeType){case 1:var _8=_6.nodeName.toLowerCase();if(!_8||_8.charAt(0)=="/"){return "";}_7="<"+_8;var _9=[];var _a;if(_2("ie
")&&_6.outerHTML){var s=_6.outerHTML;s=s.substr(0,s.indexOf(">")).replace(/(['"])[^"']*\1/g,"");var _b=/(\b\w+)\s?=/g;var m,_c;while((m=_b.exec(s))){_c=m[1];if(_c.substr(0,3)!="_dj
"){if(_c=="src
"||_c=="href
"){if(_6.getAttribute("_djrealurl
")){_9.push([_c,_6.getAttribute("_djrealurl
")]);continue;}}var _d,_e;switch(_c){case "style
":_d=_6.style.cssText.toLowerCase();break;case "class":_d=_6.className;break;case "width
":if(_8==="img
"){_e=/width=(\S+)/i.exec(s);if(_e){_d=_e[1];}break;}case "height
":if(_8==="img
"){_e=/height=(\S+)/i.exec(s);if(_e){_d=_e[1];}break;}default:_d=_6.getAttribute(_c);}if(_d!=null){_9.push([_c,_d.toString()]);}}}}else{var i=0;while((_a=_6.attributes[i++])){var n=_a.name;if(n.substr(0,3)!="_dj
"){var v=_a.value;if(n=="src
"||n=="href
"){if(_6.getAttribute("_djrealurl
")){v=_6.getAttribute("_djrealurl
");}}_9.push([n,v]);}}}_9.sort(function(a,b){return a[0]<b[0]?-1:(a[0]==b[0]?0:1);});var j=0;while((_a=_9[j++])){_7+=" "+_a[0]+"=\""+(_1.isString(_a[1])?_3._editor.escapeXml(_a[1],true):_a[1])+"\"";}if(_8==="script
"){_7+=">"+_6.innerHTML+"</"+_8+">";}else{if(_6.childNodes.length){_7+=">"+_3._editor.getChildrenHtml(_6)+"</"+_8+">";}else{switch(_8){case "br
":case "hr
":case "img
":case "input
":case "base
":case "meta
":case "area
":case "basefont
":_7+=" />";break;default:_7+="></"+_8+">";}}}break;case 4:case 3:_7=_3._editor.escapeXml(_6.nodeValue,true);break;case 8:_7="<!--"+_3._editor.escapeXml(_6.nodeValue,true)+"-->";break;default:_7="<!-- Element not recognized
- Type
: "+_6.nodeType+" Name
: "+_6.nodeName+"-->";}return _7;};_3._editor.getChildrenHtml=function(_f){var out="";if(!_f){return out;}var _10=_f["childNodes
"]||_f;var _11=!_2("ie
")||_10!==_f;var _12,i=0;while((_12=_10[i++])){if(!_11||_12.parentNode==_f){out+=_3._editor.getNodeHtml(_12);}}return out;};return _3._editor;});