//>>built require({cache:{"url:dojox/grid/enhanced/templates/FilterDefPane.html":'\x3cdiv class\x3d"dojoxGridFDPane"\x3e\r\n\t\x3cdiv class\x3d"dojoxGridFDPaneRelation"\x3e${_relMsgFront}\r\n\t\x3cspan class\x3d"dojoxGridFDPaneModes" dojoAttachPoint\x3d"criteriaModeNode"\x3e\r\n\t\t\x3cselect dojoAttachPoint\x3d"_relSelect" dojoType\x3d"dijit.form.Select" dojoAttachEvent\x3d"onChange: _onRelSelectChange"\x3e\r\n\t\t\t\x3coption value\x3d"0"\x3e${_relAll}\x3c/option\x3e\r\n\t\t\t\x3coption value\x3d"1"\x3e${_relAny}\x3c/option\x3e\r\n\t\t\x3c/select\x3e\r\n\t\x3c/span\x3e\r\n\t${_relMsgTail}\r\n\t\x3c/div\x3e\r\n\t\x3cdiv dojoAttachPoint\x3d"criteriaPane" class\x3d"dojoxGridFDPaneRulePane"\x3e\x3c/div\x3e\r\n\t\x3cdiv dojoAttachPoint\x3d"_addCBoxBtn" dojoType\x3d"dijit.form.Button" \r\n\t\tclass\x3d"dojoxGridFDPaneAddCBoxBtn" iconClass\x3d"dojoxGridFDPaneAddCBoxBtnIcon"\r\n\t\tdojoAttachEvent\x3d"onClick:_onAddCBox" label\x3d"${_addRuleBtnLabel}" showLabel\x3d"false"\x3e\r\n\t\x3c/div\x3e\r\n\t\x3cdiv class\x3d"dojoxGridFDPaneBtns" dojoAttachPoint\x3d"buttonsPane"\x3e\r\n\t\t\x3cspan dojoAttachPoint\x3d"_cancelBtn" dojoType\x3d"dijit.form.Button" \r\n\t\t\tdojoAttachEvent\x3d"onClick:_onCancel" label\x3d"${_cancelBtnLabel}"\x3e\r\n\t\t\x3c/span\x3e\r\n\t\t\x3cspan dojoAttachPoint\x3d"_clearFilterBtn" dojoType\x3d"dijit.form.Button" \r\n\t\t\tdojoAttachEvent\x3d"onClick:_onClearFilter" label\x3d"${_clearBtnLabel}" disabled\x3d"true"\x3e\r\n\t\t\x3c/span\x3e\r\n\t\t\x3cspan dojoAttachPoint\x3d"_filterBtn" dojoType\x3d"dijit.form.Button" \r\n\t\t\tdojoAttachEvent\x3d"onClick:_onFilter" label\x3d"${_filterBtnLabel}" disabled\x3d"true"\x3e\r\n\t\t\x3c/span\x3e\r\n\t\x3c/div\x3e\r\n\x3c/div\x3e\r\n', "url:dojox/grid/enhanced/templates/CriteriaBox.html":'\x3cdiv class\x3d"dojoxGridFCBox"\x3e\r\n\t\x3cdiv class\x3d"dojoxGridFCBoxSelCol" dojoAttachPoint\x3d"selColNode"\x3e\r\n\t\t\x3cspan class\x3d"dojoxGridFCBoxField"\x3e${_colSelectLabel}\x3c/span\x3e\r\n\t\t\x3cselect dojoAttachPoint\x3d"_colSelect" dojoType\x3d"dijit.form.Select" \r\n\t\t\tclass\x3d"dojoxGridFCBoxColSelect"\r\n\t\t\tdojoAttachEvent\x3d"onChange:_onChangeColumn"\x3e\r\n\t\t\x3c/select\x3e\r\n\t\x3c/div\x3e\r\n\t\x3cdiv class\x3d"dojoxGridFCBoxCondition" dojoAttachPoint\x3d"condNode"\x3e\r\n\t\t\x3cspan class\x3d"dojoxGridFCBoxField"\x3e${_condSelectLabel}\x3c/span\x3e\r\n\t\t\x3cselect dojoAttachPoint\x3d"_condSelect" dojoType\x3d"dijit.form.Select" \r\n\t\t\tclass\x3d"dojoxGridFCBoxCondSelect"\r\n\t\t\tdojoAttachEvent\x3d"onChange:_onChangeCondition"\x3e\r\n\t\t\x3c/select\x3e\r\n\t\t\x3cdiv class\x3d"dojoxGridFCBoxCondSelectAlt" dojoAttachPoint\x3d"_condSelectAlt" style\x3d"display:none;"\x3e\x3c/div\x3e\r\n\t\x3c/div\x3e\r\n\t\x3cdiv class\x3d"dojoxGridFCBoxValue" dojoAttachPoint\x3d"valueNode"\x3e\r\n\t\t\x3cspan class\x3d"dojoxGridFCBoxField"\x3e${_valueBoxLabel}\x3c/span\x3e\r\n\t\x3c/div\x3e\r\n\x3c/div\x3e\r\n', "url:dojox/grid/enhanced/templates/FilterBoolValueBox.html":'\x3cdiv class\x3d"dojoxGridBoolValueBox"\x3e\r\n\t\x3cdiv class\x3d"dojoxGridTrueBox"\x3e\r\n\t\t\x3cinput dojoType\x3d"dijit.form.RadioButton" type\x3d\'radio\' name\x3d\'a1\' id\x3d\'${_baseId}_rbTrue\' checked\x3d"true" \r\n\t\t\tdojoAttachPoint\x3d"rbTrue" dojoAttachEvent\x3d"onChange: onChange"/\x3e\r\n\t\t\x3cdiv class\x3d"dojoxGridTrueLabel" for\x3d\'${_baseId}_rbTrue\'\x3e${_lblTrue}\x3c/div\x3e\r\n\t\x3c/div\x3e\r\n\t\x3cdiv class\x3d"dojoxGridFalseBox"\x3e\r\n\t\t\x3cinput dojoType\x3d"dijit.form.RadioButton" dojoAttachPoint\x3d"rbFalse" type\x3d\'radio\' name\x3d\'a1\' id\x3d\'${_baseId}_rbFalse\'/\x3e\r\n\t\t\x3cdiv class\x3d"dojoxGridTrueLabel" for\x3d\'${_baseId}_rbFalse\'\x3e${_lblFalse}\x3c/div\x3e\r\n\t\x3c/div\x3e\r\n\x3c/div\x3e\r\n'}}); define("dojo/_base/declare dojo/_base/array dojo/_base/connect dojo/_base/lang dojo/_base/event dojo/_base/html dojo/_base/sniff dojo/keys dojo/on dojo/string dojo/window dojo/date/locale ./FilterBuilder ../Dialog dijit/form/ComboBox dijit/form/TextBox dijit/form/NumberTextBox dijit/form/DateTextBox dijit/form/TimeTextBox dijit/form/Button dijit/layout/AccordionContainer dijit/layout/ContentPane dijit/_Widget dijit/_TemplatedMixin dijit/_WidgetsInTemplateMixin dijit/focus dojox/html/metrics dijit/a11y dojo/text!../../templates/FilterDefPane.html dojo/text!../../templates/CriteriaBox.html dojo/text!../../templates/FilterBoolValueBox.html dijit/Tooltip dijit/form/Select dijit/form/RadioButton dojox/html/ellipsis ../../../cells/dijit".split(" "), function(m,k,p,g,w,f,n,l,y,q,z,A,B,C,D,E,F,G,H,I,J,K,r,t,u,v,L,M,N,O,P){var Q=m("dojox.grid.enhanced.plugins.filter.AccordionContainer",J,{nls:null,addChild:function(a,b){var c=arguments[0]=a._pane=new K({content:a});this.inherited(arguments);this._modifyChild(c)},removeChild:function(a){var b=a,c=!1;a._pane&&(c=!0,b=arguments[0]=a._pane);this.inherited(arguments);c&&(this._hackHeight(!1,this._titleHeight),c=this.getChildren(),1===c.length&&f.style(c[0]._removeCBoxBtn.domNode,"display","none"));b.destroyRecursive()}, selectChild:function(a){a._pane&&(arguments[0]=a._pane);this.inherited(arguments)},resize:function(){this.inherited(arguments);k.forEach(this.getChildren(),this._setupTitleDom)},startup:function(){this._started||(this.inherited(arguments),7==parseInt(n("ie"),10)&&k.some(this._connects,function(a){if("onresize"==(a[0]||{})[1])return this.disconnect(a),!0},this),k.forEach(this.getChildren(),function(a){this._modifyChild(a,!0)},this))},_onKeyPress:function(a,b){if(!this.disabled&&!a.altKey&&(b||a.ctrlKey)){var c= a.charOrCode,d=f._isBodyLtr(),e=null;if(b&&c==l.UP_ARROW||a.ctrlKey&&c==l.PAGE_UP)e=!1;else if(b&&c==l.DOWN_ARROW||a.ctrlKey&&(c==l.PAGE_DOWN||c==l.TAB))e=!0;else if(c==(d?l.LEFT_ARROW:l.RIGHT_ARROW))e=this._focusOnRemoveBtn?null:!1,this._focusOnRemoveBtn=!this._focusOnRemoveBtn;else if(c==(d?l.RIGHT_ARROW:l.LEFT_ARROW))e=this._focusOnRemoveBtn?!0:null,this._focusOnRemoveBtn=!this._focusOnRemoveBtn;else return;null!==e&&this._adjacent(e)._buttonWidget._onTitleClick();w.stop(a);z.scrollIntoView(this.selectedChildWidget._buttonWidget.domNode.parentNode); n("ie")&&this.selectedChildWidget._removeCBoxBtn.focusNode.setAttribute("tabIndex",this._focusOnRemoveBtn?70:-1);v.focus(this.selectedChildWidget[this._focusOnRemoveBtn?"_removeCBoxBtn":"_buttonWidget"].focusNode)}},_modifyChild:function(a,b){if(a&&this._started){f.style(a.domNode,"overflow","hidden");a._buttonWidget.connect(a._buttonWidget,"_setSelectedAttr",function(){this.focusNode.setAttribute("tabIndex",this.selected?70:"-1")});var c=this;a._buttonWidget.connect(a._buttonWidget.domNode,"onclick", function(){c._focusOnRemoveBtn=!1});(a._removeCBoxBtn=new I({label:this.nls.removeRuleButton,showLabel:!1,iconClass:"dojoxGridFCBoxRemoveCBoxBtnIcon",tabIndex:-1,onClick:g.hitch(a.content,"onRemove"),onKeyPress:function(b){c._onKeyPress(b,a._buttonWidget.contentWidget)}})).placeAt(a._buttonWidget.domNode);var d,e=this.getChildren();if(1===e.length)a._buttonWidget.set("selected",!0),f.style(a._removeCBoxBtn.domNode,"display","none");else for(d=0;d n("ie")&&(b-=8);f.style(a._buttonWidget.titleTextNode,"width",b+"px")}}),R=m("dojox.grid.enhanced.plugins.filter.FilterDefPane",[r,t,u],{templateString:N,widgetsInTemplate:!0,dlg:null,postMixInProperties:function(){this.plugin=this.dlg.plugin;var a=this.plugin.nls;this._addRuleBtnLabel=a.addRuleButton;this._cancelBtnLabel=a.cancelButton;this._clearBtnLabel=a.clearButton;this._filterBtnLabel=a.filterButton;this._relAll=a.relationAll;this._relAny=a.relationAny;this._relMsgFront=a.relationMsgFront;this._relMsgTail= a.relationMsgTail},postCreate:function(){this.inherited(arguments);y(this.domNode,"keydown",g.hitch(this,"_onKey"));(this.cboxContainer=new Q({nls:this.plugin.nls})).placeAt(this.criteriaPane);this._relSelect.set("tabIndex",60);this._addCBoxBtn.set("tabIndex",20);this._cancelBtn.set("tabIndex",50);this._clearFilterBtn.set("tabIndex",40);this._filterBtn.set("tabIndex",30);var a=this.plugin.nls;this._relSelect.domNode.setAttribute("aria-label",a.waiRelAll);this._addCBoxBtn.domNode.setAttribute("aria-label", a.waiAddRuleButton);this._cancelBtn.domNode.setAttribute("aria-label",a.waiCancelButton);this._clearFilterBtn.domNode.setAttribute("aria-label",a.waiClearButton);this._filterBtn.domNode.setAttribute("aria-label",a.waiFilterButton);this._relSelect.set("value","logicall"===this.dlg._relOpCls?"0":"1")},uninitialize:function(){this.cboxContainer.destroyRecursive();this.dlg=this.plugin=null},_onRelSelectChange:function(a){this.dlg._relOpCls="0"==a?"logicall":"logicany";this._relSelect.domNode.setAttribute("aria-label", this.plugin.nls["0"==a?"waiRelAll":"waiRelAny"])},_onAddCBox:function(){this.dlg.addCriteriaBoxes(1)},_onCancel:function(){this.dlg.onCancel()},_onClearFilter:function(){this.dlg.onClearFilter()},_onFilter:function(){this.dlg.onFilter()},_onKey:function(a){if(a.keyCode==l.ENTER)this.dlg.onFilter()}}),x=m("dojox.grid.enhanced.plugins.filter.CriteriaBox",[r,t,u],{templateString:O,widgetsInTemplate:!0,dlg:null,postMixInProperties:function(){this.plugin=this.dlg.plugin;this._curValueBox=null;var a=this.plugin.nls; this._colSelectLabel=a.columnSelectLabel;this._condSelectLabel=a.conditionSelectLabel;this._valueBoxLabel=a.valueBoxLabel;this._anyColumnOption=a.anyColumnOption},postCreate:function(){var a=this.dlg,b=this.plugin.grid;this._colSelect.set("tabIndex",90);this._colOptions=this._getColumnOptions();this._colSelect.addOption([{label:this.plugin.nls.anyColumnOption,value:"anycolumn",selected:0>a.curColIdx},{value:""}].concat(this._colOptions));this._condSelect.set("tabIndex",95);this._condSelect.addOption(this._getUsableConditions(a.getColumnType(a.curColIdx))); this._showSelectOrLabel(this._condSelect,this._condSelectAlt);this.connect(b.layout,"moveColumn","onMoveColumn");var c=this;setTimeout(function(){var b=a.getColumnType(a.curColIdx);c._setValueBoxByType(b)},0)},_getColumnOptions:function(){var a=0<=this.dlg.curColIdx?String(this.dlg.curColIdx):"anycolumn";return k.map(k.filter(this.plugin.grid.layout.cells,function(a){return!(!1===a.filterable||a.hidden)}),function(b){return{label:b.name||b.field,value:String(b.index),selected:a==String(b.index)}})}, onMoveColumn:function(){var a=this._onChangeColumn;this._onChangeColumn=function(){};var b=this._colSelect.get("selectedOptions");this._colSelect.removeOption(this._colOptions);this._colOptions=this._getColumnOptions();this._colSelect.addOption(this._colOptions);for(var c=0;ch?1:-1;k.forEach(this._savedCriterias,function(a){var b=parseInt(a.column,10);!isNaN(b)&&b>=h&&b<=g&&(a.column=String(b==c?b+(g-h)*f:b-f))})}},destroy:function(){this._defPane.destroyRecursive();this._cboxes=this._dataTypeMap=this.builder=this.filterDefPane=this._defPane=null;var a=this.plugin.grid;a.setFilter=null;a.getFilter=null;this.plugin=a.getFilterRelation=null},_setupData:function(){var a=this.plugin.nls;this._dataTypeMap={number:{valueBoxCls:{dft:F}, conditions:[{label:a.conditionEqual,value:"equalto",selected:!0},{label:a.conditionNotEqual,value:"notequalto"},{label:a.conditionLess,value:"lessthan"},{label:a.conditionLessEqual,value:"lessthanorequalto"},{label:a.conditionLarger,value:"largerthan"},{label:a.conditionLargerEqual,value:"largerthanorequalto"},{label:a.conditionIsEmpty,value:"isempty"}]},string:{valueBoxCls:{dft:E,ac:S},conditions:[{label:a.conditionContains,value:"contains",selected:!0},{label:a.conditionIs,value:"equalto"},{label:a.conditionStartsWith, value:"startswith"},{label:a.conditionEndWith,value:"endswith"},{label:a.conditionNotContain,value:"notcontains"},{label:a.conditionIsNot,value:"notequalto"},{label:a.conditionNotStartWith,value:"notstartswith"},{label:a.conditionNotEndWith,value:"notendswith"},{label:a.conditionIsEmpty,value:"isempty"}]},date:{valueBoxCls:{dft:G},conditions:[{label:a.conditionIs,value:"equalto",selected:!0},{label:a.conditionBefore,value:"lessthan"},{label:a.conditionAfter,value:"largerthan"},{label:a.conditionRange, value:"range"},{label:a.conditionIsEmpty,value:"isempty"}]},time:{valueBoxCls:{dft:H},conditions:[{label:a.conditionIs,value:"equalto",selected:!0},{label:a.conditionBefore,value:"lessthan"},{label:a.conditionAfter,value:"largerthan"},{label:a.conditionRange,value:"range"},{label:a.conditionIsEmpty,value:"isempty"}]},"boolean":{valueBoxCls:{dft:T},conditions:[{label:a.conditionIs,value:"equalto",selected:!0},{label:a.conditionIsEmpty,value:"isempty"}]}}},setFilter:function(a,b){a=a||[];g.isArray(a)|| (a=[a]);var c=function(){if(a.length){this._savedCriterias=k.map(a,function(a){var b=a.type||this.defaultType;return{type:b,column:String(a.column),condition:a.condition,value:a.value,colTxt:this.getColumnLabelByValue(String(a.column)),condTxt:this.getConditionLabelByValue(b,a.condition),formattedVal:a.formattedVal||a.value}},this);this._criteriasChanged=!0;if("logicall"===b||"logicany"===b)this._relOpCls=b;var c=k.map(a,this.getExprForCriteria,this),c=this.builder.buildExpression(1==c.length?c[0]: {op:this._relOpCls,data:c});this.plugin.grid.layer("filter").filterDef(c);this.plugin.filterBar.toggleClearFilterBtn(!1)}this._closeDlgAndUpdateGrid()};if(this._savedCriterias){this._clearWithoutRefresh=!0;var d=p.connect(this,"clearFilter",this,function(){p.disconnect(d);this._clearWithoutRefresh=!1;c.apply(this)});this.onClearFilter()}else c.apply(this)},getFilter:function(){return g.clone(this._savedCriterias)||[]},getColumnLabelByValue:function(a){var b=this.plugin.nls;return"anycolumn"==a.toLowerCase()? b.anyColumnOption:(a=this.plugin.grid.layout.cells[parseInt(a,10)])?a.name||a.field:""},getConditionLabelByValue:function(a,b){a=this._dataTypeMap[a].conditions;for(var c=a.length-1;0<=c;--c){var d=a[c];if(d.value==b.toLowerCase())return d.label}return""},addCriteriaBoxes:function(a){if(!("number"!=typeof a||0>=a)){var b=this._cboxes,c=this.filterDefPane.cboxContainer,d=this.plugin.args.ruleCount,e=b.length;for(0d&&(a=d-e);0=n("ie")&&!this.__alreadyResizedForIE6?(a=f.position(c.domNode),a.w-=L.getScrollbar().w,c.resize(a),this.__alreadyResizedForIE6=!0):c.resize())}},removeCriteriaBoxes:function(a,b){var c=this._cboxes,d=this.filterDefPane.cboxContainer,e=c.length,h=e-a,f=e-1,l=k.indexOf(c,d.selectedChildWidget.content);if(g.isArray(a)){h=a;h.sort();a=h.length;for(b=e-1;0<=b&&0<=k.indexOf(h,b);--b);if(0<= b)for(b!=l&&d.selectChild(c[b]),b=a-1;0<=b;--b)0<=h[b]&&h[b]=a)return;a>=e&&(a=f,h=1)}if(f=h&&l<=f&&d.selectChild(c[h?h-1:f+1]);f>=h;--f)d.removeChild(c[f]);c.splice(h,a)}this._updatePane();this._updateCBoxTitles();3===c.length&&d.resize()},getCriteria:function(a){return"number"!=typeof a?this._savedCriterias? this._savedCriterias.length:0:this._savedCriterias&&this._savedCriterias[a]?g.mixin({relation:"logicall"==this._relOpCls?this.plugin.nls.and:this.plugin.nls.or},this._savedCriterias[a]):null},getExprForCriteria:function(a){if("anycolumn"==a.column){var b=k.filter(this.plugin.grid.layout.cells,function(a){return!(!1===a.filterable||a.hidden)});return{op:"logicany",data:k.map(b,function(b){return this.getExprForColumn(a.value,b.index,a.type,a.condition)},this)}}return this.getExprForColumn(a.value, a.column,a.type,a.condition)},getExprForColumn:function(a,b,c,d){b=parseInt(b,10);var e=this.plugin.grid.layout.cells[b],f=e.field||e.name;b={datatype:c||this.getColumnType(b),args:e.dataTypeArgs,isColumn:!0};e=[g.mixin({data:this.plugin.args.isServerSide?f:e},b)];b.isColumn=!1;"range"==d?e.push(g.mixin({data:a.start},b),g.mixin({data:a.end},b)):"isempty"!=d&&e.push(g.mixin({data:a},b));return{op:d,data:e}},getColumnType:function(a){a=this.plugin.grid.layout.cells[parseInt(a,10)];if(!a||!a.datatype)return this.defaultType; a=String(a.datatype).toLowerCase();return this._dataTypeMap[a]?a:this.defaultType},clearFilter:function(a){if(this._savedCriterias){this._savedCriterias=null;this.plugin.grid.layer("filter").filterDef(null);try{this.plugin.filterBar.toggleClearFilterBtn(!0),this.filterDefPane._clearFilterBtn.set("disabled",!0),this.removeCriteriaBoxes(this._cboxes.length-1),this._cboxes[0].load({})}catch(b){}a?this.closeDialog():this._closeDlgAndUpdateGrid()}},showDialog:function(a){this._defPane.show();this.plugin.filterStatusTip.closeDialog(); this._prepareDialog(a)},closeDialog:function(){this._defPane.open&&this._defPane.hide()},onFilter:function(a){this.canFilter()&&(this._defineFilter(),this._closeDlgAndUpdateGrid(),this.plugin.filterBar.toggleClearFilterBtn(!1))},onClearFilter:function(a){this._savedCriterias&&(this._savedCriterias.length>=this.plugin.ruleCountToConfirmClearFilter?this.plugin.clearFilterDialog.show():this.clearFilter(this._clearWithoutRefresh))},onCancel:function(a){a=this._savedCriterias;var b=this._cboxes;a?(this.addCriteriaBoxes(a.length- b.length),this.removeCriteriaBoxes(b.length-a.length),k.forEach(a,function(a,d){b[d].load(a)})):(this.removeCriteriaBoxes(b.length-1),b[0].load({}));this.closeDialog()},onRendered:function(a){n("ff")?(a=this._defPane,a._getFocusItems(a.domNode),v.focus(a._firstFocusItem)):(a=M._getTabNavigable(f.byId(a.domNode)),v.focus(a.lowest||a.first))},_onSetFilter:function(a){null===a&&this._savedCriterias&&this.clearFilter()},_prepareDialog:function(a){var b=this._savedCriterias,c=this._cboxes,d;this.curColIdx= a;if(!b)if(0===c.length)this.addCriteriaBoxes(1);else for(a=0;d=c[a];++a)d.changeCurrentColumn();else if(this._criteriasChanged){this.filterDefPane._relSelect.set("value","logicall"===this._relOpCls?"0":"1");this._criteriasChanged=!1;var e=b.length>c.length?b.length-c.length:0;this.addCriteriaBoxes(e);this.removeCriteriaBoxes(c.length-b.length);this.filterDefPane._clearFilterBtn.set("disabled",!1);for(a=0;a