//>>built define("dojo/_base/declare dojo/_base/array dojo/aspect dojo/_base/lang dojo/dom-attr dojo/dom-class dojo/dom-construct dojo/i18n dojo/NodeList-dom dojo/NodeList-traverse dojo/dom-style dojo/sniff dojo/query dijit dojox dijit/_editor/_Plugin dijit/_editor/range dijit/_editor/plugins/EnterKeyHandling dijit/_editor/plugins/FontChoice ./NormalizeIndentOutdent dijit/form/ToggleButton dojo/i18n!./nls/BidiSupport".split(" "),function(A,q,w,p,l,B,n,C,G,H,g,m,r,I,J,x,t,y,D,E,F){var z=A("dojox.editor.plugins.BidiSupport", x,{useDefaultCommand:!1,buttonClass:null,iconClassPrefix:"dijitAdditionalEditorIcon",command:"bidiSupport",blockMode:"DIV",shortcutonly:!1,bogusHtmlContent:"\x26nbsp;",buttonLtr:null,buttonRtl:null,_indentBy:40,_lineTextArray:"DIV P LI H1 H2 H3 H4 H5 H6 ADDRESS PRE DT DE TD".split(" "),_lineStyledTextArray:"H1 H2 H3 H4 H5 H6 ADDRESS PRE P".split(" "),_tableContainers:["TABLE","THEAD","TBODY","TR"],_blockContainers:["TABLE","OL","UL","BLOCKQUOTE"],_initButton:function(){this.shortcutonly||(this.buttonLtr|| (this.buttonLtr=this._createButton("ltr")),this.buttonRtl||(this.buttonRtl=this._createButton("rtl")))},_createButton:function(a){return F(p.mixin({label:C.getLocalization("dojox.editor.plugins","BidiSupport")[a],dir:this.editor.dir,lang:this.editor.lang,showLabel:!1,iconClass:this.iconClassPrefix+" "+this.iconClassPrefix+("ltr"==a?"ParaLeftToRight":"ParaRightToLeft"),onClick:p.hitch(this,"_changeState",[a])},this.params||{}))},setToolbar:function(a){this.shortcutonly||(this.editor.isLeftToRight()? (a.addChild(this.buttonLtr),a.addChild(this.buttonRtl)):(a.addChild(this.buttonRtl),a.addChild(this.buttonLtr)))},updateState:function(){if(this.editor&&this.editor.isLoaded&&!this.shortcutonly&&(this.buttonLtr.set("disabled",!!this.disabled),this.buttonRtl.set("disabled",!!this.disabled),!this.disabled)){var a=t.getSelection(this.editor.window);if(a&&0!=a.rangeCount){var b=a.getRangeAt(0);if(b.startContainer!==this.editor.editNode||b.startContainer.hasChildNodes()){a=b.startContainer;b=b.startOffset; if(this._isBlockElement(a))for(;a.hasChildNodes();)b==a.childNodes.length&&b--,a=a.childNodes[b],b=0;a=this._getBlockAncestor(a)}else a=b.startContainer;a=g.get(a,"direction");this.buttonLtr.set("checked","ltr"==a);this.buttonRtl.set("checked","rtl"==a)}}},setEditor:function(a){this.editor=a;"P"!=this.blockMode&&"DIV"!=this.blockMode&&(this.blockMode="DIV");this._initButton();this.editor.contentPreFilters.push(this._preFilterNewLines);a=p.hitch(this,function(b){if(this.disabled||!b.hasChildNodes())return b; this._changeStateOfBlocks(this.editor.editNode,this.editor.editNode,this.editor.editNode,"explicitdir",null);return this.editor.editNode});this.editor.contentDomPostFilters.push(a);this.editor._justifyleftImpl=p.hitch(this,function(){this._changeState("left");return!0});this.editor._justifyrightImpl=p.hitch(this,function(){this._changeState("right");return!0});this.editor._justifycenterImpl=p.hitch(this,function(){this._changeState("center");return!0});this.editor._insertorderedlistImpl=p.hitch(this, "_insertLists","insertorderedlist");this.editor._insertunorderedlistImpl=p.hitch(this,"_insertLists","insertunorderedlist");this.editor._indentImpl=p.hitch(this,"_indentAndOutdent","indent");this.editor._outdentImpl=p.hitch(this,"_indentAndOutdent","outdent");this.editor._formatblockImpl=p.hitch(this,"_formatBlocks");this.editor.onLoadDeferred.addCallback(p.hitch(this,function(){var b=this.editor._plugins,c,a,d=b.length;c=p.hitch(this,"_changeState","mirror");a=p.hitch(this,"_changeState","ltr"); var e=p.hitch(this,"_changeState","rtl");this.editor.addKeyHandler("9",1,0,c);this.editor.addKeyHandler("8",1,0,a);this.editor.addKeyHandler("0",1,0,e);for(c=0;cf.indexOf("center")&&g.set(c,"textAlign","rtl"==k?"right":"left"):c.firstChild&&c.firstChild.tagName&&this._hasTagFrom(c.firstChild,this._lineStyledTextArray)&&(a=g.getComputedStyle(c),f=this._refineAlignment(a.direction,a.textAlign),m("mozilla")?g.set(c.firstChild,{textAlign:f}):g.set(c.firstChild,{direction:k,textAlign:f}))}else"rtl"==k&&0!=n?g.set(c,{marginLeft:"",marginRight:""+n+"px"}):"ltr"==k&&0!=a&&g.set(c,{marginRight:"",marginLeft:""+ a+"px"})},this);r("table",this.editor.editNode).forEach(function(c,d,e){d=b;"mirror"===b&&(d="ltr"===g.get(c,"direction")?"rtl":"ltr");e=r("td",c);for(var h=!1,f=!1,l=0;l=this._indentBy+d&&g.set(b,a,h==this._indentBy?"":""+(h-this._indentBy)+"px")},this)},_prepareIndent:function(a){q.forEach(a.nodes,function(b){if(m("mozilla")){var a=this._getParentFrom(b, ["TD"]);a&&0==r("div[tempRole]",a).length&&n.create("div",{innerHTML:this.bogusHtmlContent,tempRole:"true"},a);this._hasTag(b,"LI")&&(a=this._getLIIndent(b),l.set(b,"tempIndent",a))}if(m("webkit")&&this._hasTag(b,"LI")&&this._hasStyledTextLineTag(b.firstChild)){for(a=this._tag(b.firstChild);b.firstChild.lastChild;)n.place(b.firstChild.lastChild,b.firstChild,"after");b.removeChild(b.firstChild);n.create("span",{innerHTML:this.bogusHtmlContent,bogusFormat:a},b,"first")}},this)},_prepareOutdent:function(a){q.forEach(a.nodes, function(b){if(m("mozilla")||m("webkit")){if(m("mozilla")){var a=this._getParentFrom(b,["TD"]);a&&0==r("div[tempRole]",a).length&&n.create("div",{innerHTML:this.bogusHtmlContent,tempRole:"true"},a)}a=this._tag(b);if(m("mozilla")&&"LI"!==a)return;var h=null;if(m("webkit")&&this._hasTag(b,"LI")&&this._hasStyledTextLineTag(b.firstChild)){for(var a=this._tag(b.firstChild),d=b.firstChild;d.lastChild;)n.place(d.lastChild,d,"after");b.removeChild(b.firstChild);h=n.create("span",{innerHTML:this.bogusHtmlContent, bogusFormat:a},b,"first")}if(b.firstChild&&b.firstChild.tagName&&this._hasTagFrom(b.firstChild,this._lineStyledTextArray)){m("mozilla")&&(b.firstChild.style.cssText=b.style.cssText,a="rtl"===g.get(b,"direction")?"marginRight":"marginLeft",d=this._getLIIndent(b),0)/i);for(var b=!1,c=0;c< a.length;c++)0>a[c].search(/<\/?pre/i)&&!b?a[c]=a[c].replace(/\n/g,"").replace(/\t+/g,"\u00a0").replace(/^\s+/,"\u00a0").replace(/\xA0\xA0+$/,""):0<=a[c].search(/<\/?pre/i)&&(b=!b);return a.join("")},_refineAlignment:function(a,b){return b=0<=b.indexOf("left")&&"rtl"==a?"left":0<=b.indexOf("right")&&"ltr"==a?"right":0<=b.indexOf("center")?"center":""},_refineLIMargins:function(a){var b=g.get(a,"direction"),c=g.get(a.parentNode,"direction"),h=0,d=a.parentNode;for(m("webkit")&&(c=g.get(this.editor.editNode, "direction"));d!==this.editor.editNode;)this._hasTagFrom(d,["OL","UL"])&&h++,d=d.parentNode;g.set(a,"marginRight","");g.set(a,"marginLeft","");d="rtl"==b?"marginRight":"marginLeft";h=this._getMargins(h);b!=c&&g.set(a,d,""+h+"px")},_getMargins:function(a){if(0==a)return 0;var b=35;m("mozilla")?b=45:m("ie")&&(b=25);return b+40*(a-1)},_recountLIMargins:function(a,b){var c=g.get(a,"direction"),h=g.get(a.parentNode,"direction"),d="rtl"==c?"marginRight":"marginLeft",e=g.get(a,d);b=(isNaN(parseInt(e))?0: parseInt(e))+(b?b:0);a.firstChild&&1==a.firstChild.nodeType&&(e=g.get(a.firstChild,d),b+=isNaN(parseInt(e))?0:parseInt(e),g.set(a.firstChild,{marginLeft:"",marginRight:""}));c!=h&&(b-=this._getMargins(this._getLILevel(a)));if(e=this._getListMargins(a))for(var k=0;ka.groups.length}, _isListTypeChanged:function(a,b){if(!this._hasTag(a,"LI"))return!1;a=a.parentNode;return this._hasTag(a,"UL")&&"insertorderedlist"===b||this._hasTag(a,"OL")&&"insertunorderedlist"===b},_getIntStyleValue:function(a,b){a=parseInt(g.get(a,b));return isNaN(a)?0:a},_mergeLists:function(){var a=t.getSelection(this.editor.window),b=a&&0