/** Ext JS Library 3.0+ Copyright(c) 2006-2009 Ext JS, LLC licensing@extjs.com http://www.extjs.com/license - DocDb @author Laurent Cherpit */
Ext.ns("Ext.ux.plugins");Ext.ux.plugins.HeaderButtons=function(a){Ext.apply(this,a)};Ext.extend(Ext.ux.plugins.HeaderButtons,Ext.util.Observable,{init:function(b){if(b.hbuttons){Ext.apply(b,{onRender:b.onRender.createSequence(function(k,g){if(this.headerButtons&&this.headerButtons.length>0){var h=this.header.createChild({cls:"ux-panel-header-btns-ct",cn:{cls:"ux-panel-header-btns",html:'<table cellspacing="0"><tbody><tr></tr></tbody></table><div class="x-clear"></div>'}},this.header.first("span",true),true);var l=h.getElementsByTagName("tr")[0];for(var j=0,f=this.headerButtons.length;j<f;j++){var e=this.headerButtons[j];var m=document.createElement("td");m.className="ux-panel-header-btn-td";e.render(l.appendChild(m))}}}),addHeaderButton:function(e,h,g){var i={handler:h,scope:g,hideParent:true};if(typeof e==="string"){i.text=e}else{Ext.apply(i,e)}var f=new Ext.Button(i);f.ownerCt=this;if(!this.headerButtons){this.headerButtons=[]}this.headerButtons.push(f);return f}});var d=b.hbuttons;b.headerButtons=[];for(var c=0,a=d.length;c<a;c++){if(d[c].render){b.headerButtons.push(d[c])}else{b.addHeaderButton(d[c])}}delete b.hbuttons}}});
Ext.ns("Ext.ux.form");Ext.ux.form.MultiSelect=Ext.extend(Ext.form.Field,{appendOnly:false,width:100,height:100,displayField:0,valueField:1,allowBlank:true,minSelections:0,maxSelections:Number.MAX_VALUE,blankText:Ext.form.TextField.prototype.blankText,minSelectionsText:"Minimum {0} item(s) required",maxSelectionsText:"Maximum {0} item(s) allowed",delimiter:",",defaultAutoCreate:{tag:"div"},initComponent:function(){Ext.ux.form.MultiSelect.superclass.initComponent.call(this);if(Ext.isArray(this.store)){if(Ext.isArray(this.store[0])){this.store=new Ext.data.ArrayStore({fields:["value","text"],data:this.store});this.valueField="value"}else{this.store=new Ext.data.ArrayStore({fields:["text"],data:this.store,expandData:true});this.valueField="text"}this.displayField="text"}else{this.store=Ext.StoreMgr.lookup(this.store)}this.addEvents({dblclick:true,click:true,change:true})},onRender:function(c,b){Ext.ux.form.MultiSelect.superclass.onRender.call(this,c,b);var a=this.fs=new Ext.form.FieldSet({renderTo:this.el,title:this.legend,height:this.height,width:this.width,style:this.style||{padding:"0"},tbar:this.tbar,bbar:this.bbar,fbar:this.fbar,bodyStyle:this.bodyStyle||"overflow: auto;padding:5px 0;"});this.view=new Ext.ListView({multiSelect:true,store:this.store,columns:[{header:"Value",width:1,dataIndex:this.displayField}],hideHeaders:true,simpleSelect:this.simpleSelect||false,loadingText:this.loadingText||"Wait ..."});a.add(this.view);this.view.on("click",this.onViewClick,this);this.view.on("beforeclick",this.onViewBeforeClick,this);this.view.on("dblclick",this.onViewDblClick,this);this.hiddenName=this.name||Ext.id();var d={tag:"input",type:"hidden",value:"",name:this.hiddenName};this.hiddenField=this.el.createChild(d);this.hiddenField.dom.disabled=this.hiddenName!=this.name;a.doLayout()},afterRender:function(){Ext.ux.form.MultiSelect.superclass.afterRender.call(this)},onViewClick:function(c,a,b,f){var d=this.view.getSelectedIndexes();if(d.indexOf(0)!==-1){if(d.length>1&&a===0){this.setValue("0")}else{if(a!==0){this.view.deselect(0)}}}this.fireEvent("change",this,this.getValue(),this.hiddenField.dom.value);this.hiddenField.dom.value=this.getValue();this.fireEvent("click",this,f);this.validate()},onViewBeforeClick:function(c,a,b,d){if(this.disabled){return false}},onViewDblClick:function(c,a,b,d){return this.fireEvent("dblclick",c,a,b,d)},getValue:function(a){var d=[];var c=this.view.getSelectedIndexes();if(c.length==0){return""}for(var b=0;b<c.length;b++){d.push(this.store.getAt(c[b]).get((a!=null)?a:this.valueField))}return d.join(this.delimiter)},setValue:function(a){var b;var d=[];this.view.clearSelections();this.hiddenField.dom.value="";if(!a||(a=="")){return}if(!Ext.isArray(a)){a=a.split(this.delimiter)}for(var c=0;c<a.length;c++){b=this.view.store.indexOf(this.view.store.query(this.valueField,new RegExp("^"+a[c]+"$","i")).itemAt(0));d.push(b)}this.view.select(d);this.hiddenField.dom.value=this.getValue();this.validate()},reset:function(){this.fireEvent("reset",this);this.setValue("");this.fireEvent("afterreset",this)},getRawValue:function(a){var b=this.getValue(a);if(b.length){b=b.split(this.delimiter)}else{b=[]}return b},setRawValue:function(a){setValue(a)},validateValue:function(a){if(a.length<1){if(this.allowBlank){this.clearInvalid();return true}else{this.markInvalid(this.blankText);return false}}if(a.length<this.minSelections){this.markInvalid(String.format(this.minSelectionsText,this.minSelections));return false}if(a.length>this.maxSelections){this.markInvalid(String.format(this.maxSelectionsText,this.maxSelections));return false}return true},disable:function(){this.disabled=true;this.hiddenField.dom.disabled=true;this.fs.disable()},enable:function(){this.disabled=false;this.hiddenField.dom.disabled=false;this.fs.enable()},destroy:function(){Ext.ux.form.MultiSelect.superclass.destroy.call(this)}});Ext.reg("multiselect",Ext.ux.form.MultiSelect);
Ext.ux.MsgBus=function(a){Ext.apply(this,a,{})};Ext.override(Ext.ux.MsgBus,{busName:"Ext.ux.Bus",bus:false,init:function(a){this.cmp=a;a.bus=this.getBus();a.bus.addEvents("message");a.subs={};this.applyConfig()},getBus:function(){var c=window;var b=this.busName.split(".");var d=b.pop();Ext.each(b,function(a){if(!Ext.isObject(c[a])){c=false;return false}else{c=c[a]}},this);if(false===c){Ext.ns(this.busName);return this.getBus()}if(!(c[d] instanceof Ext.util.Observable)){c[d]=new Ext.util.Observable()}return c[d]},getFilterRe:function(c){var b=c.split(".");var e=b.length-1;b[e]="**"===b[e]?".*":b[e];var d=/^\w+$/;Ext.each(b,function(f,a){if(!d.test(f)&&"*"!==f&&".*"!==f){throw"Invalid subject: "+c}if("*"===f){b[a]="\\w+"}});return new RegExp("^"+b.join("\\.")+"$")},applyConfig:function(){Ext.applyIf(this.cmp,{subscribe:function(b,a){var c=this.subs[b];if(c){return false}a=a||{};a.filter=this.getFilterRe(b);this.subs[b]={config:a,fn:this.filterMessage.createDelegate(this,[a],true)};this.bus.on("message",this.subs[b].fn,a.scope||this,a);return true},unsubscribe:function(a){var b=this.subs[a];if(!b){return false}this.bus.un("message",b.fn,b.scope||this,b.config);delete this.subs[a];b=null;return true},publish:function(a,b){this.getFilterRe(a);this.bus.fireEvent("message",a,b)},getSubscriptions:function(){return this.subs},getFilterRe:this.getFilterRe,filterMessage:function(b,c,a){if(a.filter.test(b)){(a.fn||this.onMessage).call(a.scope||this,b,c)}},onMessage:Ext.emptyFn})}});Ext.preg("msgbus",Ext.ux.MsgBus);
Ext.ns("Ext.ux.menu");Ext.ux.menu.RangeMenu=Ext.extend(Ext.menu.Menu,{constructor:function(c){Ext.ux.menu.RangeMenu.superclass.constructor.call(this,c);this.addEvents("update");this.updateTask=new Ext.util.DelayedTask(this.fireUpdate,this);var d,a,e,b,f;for(d=0,a=this.menuItems.length;d<a;d++){e=this.menuItems[d];if(e!=="-"){b={itemId:"range-"+e,enableKeyEvents:true,iconCls:this.iconCls[e]||"no-icon",listeners:{scope:this,keyup:this.onInputKeyUp}};Ext.apply(b,Ext.applyIf(this.fields[e]||{},this.fieldCfg[e]),this.menuItemCfgs);f=b.fieldCls||this.fieldCls;e=this.fields[e]=new f(b)}this.add(e)}},fireUpdate:function(){this.fireEvent("update",this)},getValue:function(){var a={},b,c;for(b in this.fields){c=this.fields[b];if(c.isValid()&&String(c.getValue()).length>0){a[b]=c.getValue()}}return a},setValue:function(b){var a;for(a in this.fields){this.fields[a].setValue(b[a]!==undefined?b[a]:"")}this.fireEvent("update",this)},onInputKeyUp:function(c,b){var a=b.getKey();if(a==b.RETURN&&c.isValid()){b.stopEvent();this.hide(true);return}if(c==this.fields.eq){if(this.fields.gt){this.fields.gt.setValue(null)}if(this.fields.lt){this.fields.lt.setValue(null)}}else{this.fields.eq.setValue(null)}this.updateTask.delay(this.updateBuffer)}});
Ext.ns("Ext.ux.grid");Ext.ux.grid.GridFilters=Ext.extend(Ext.util.Observable,{autoReload:true,filterCls:"ux-filtered-column",local:false,menuFilterText:"Filters",paramPrefix:"filter",showMenu:true,stateId:undefined,updateBuffer:500,constructor:function(a){this.deferredUpdate=new Ext.util.DelayedTask(this.reload,this);this.filters=new Ext.util.MixedCollection();this.filters.getKey=function(b){return b?b.dataIndex:null};this.addFilters(a.filters);delete a.filters;Ext.apply(this,a)},init:function(a){if(a instanceof Ext.grid.GridPanel){this.grid=a;this.bindStore(this.grid.getStore(),true);this.grid.filters=this;this.grid.addEvents({filterupdate:true});a.on({scope:this,beforestaterestore:this.applyState,beforestatesave:this.saveState,beforedestroy:this.destroy,reconfigure:this.onReconfigure});if(a.rendered){this.onRender()}else{a.on({scope:this,single:true,render:this.onRender})}}else{if(a instanceof Ext.PagingToolbar){this.toolbar=a}}},applyState:function(b,d){var a,c;this.applyingState=true;this.clearFilters();if(d.filters){for(a in d.filters){c=this.filters.get(a);if(c){c.setValue(d.filters[a]);c.setActive(true)}}}this.deferredUpdate.cancel();if(this.local){this.reload()}delete this.applyingState},saveState:function(a,c){var b={};this.filters.each(function(d){if(d.active){b[d.dataIndex]=d.getValue()}});return(c.filters=b)},onRender:function(){this.grid.getView().on("refresh",this.onRefresh,this);this.createMenu()},destroy:function(){this.removeAll();this.purgeListeners();if(this.filterMenu){Ext.menu.MenuMgr.unregister(this.filterMenu);this.filterMenu.destroy();this.filterMenu=this.menu.menu=null}},removeAll:function(){if(this.filters){Ext.destroy.apply(Ext,this.filters.items);this.filters.clear()}},bindStore:function(a,b){if(!b&&this.store){if(this.local){a.un("load",this.onLoad,this)}else{a.un("beforeload",this.onBeforeLoad,this)}}if(a){if(this.local){a.on("load",this.onLoad,this)}else{a.on("beforeload",this.onBeforeLoad,this)}}this.store=a},onReconfigure:function(){this.bindStore(this.grid.getStore());this.store.clearFilter();this.removeAll();this.addFilters(this.grid.getColumnModel());this.updateColumnHeadings()},createMenu:function(){var a=this.grid.getView(),b=a.hmenu;if(this.showMenu&&b){this.sep=b.addSeparator();this.filterMenu=new Ext.menu.Menu({id:this.grid.id+"-filters-menu"});this.menu=b.add({checked:false,itemId:"filters",text:this.menuFilterText,menu:this.filterMenu});this.menu.on({scope:this,checkchange:this.onCheckChange,beforecheckchange:this.onBeforeCheck});b.on("beforeshow",this.onMenu,this)}this.updateColumnHeadings()},getMenuFilter:function(){var a=this.grid.getView();if(!a||a.hdCtxIndex===undefined){return null}return this.filters.get(a.cm.config[a.hdCtxIndex].dataIndex)},onMenu:function(b){var a=this.getMenuFilter();if(a){this.menu.menu=a.menu;this.menu.setChecked(a.active,false);this.menu.setDisabled(a.disabled===true)}this.menu.setVisible(a!==undefined);this.sep.setVisible(a!==undefined)},onCheckChange:function(a,b){this.getMenuFilter().setActive(b)},onBeforeCheck:function(a,b){return !b||this.getMenuFilter().isActivatable()},onStateChange:function(b,a){if(b==="serialize"){return}if(a==this.getMenuFilter()){this.menu.setChecked(a.active,false)}if((this.autoReload||this.local)&&!this.applyingState){this.deferredUpdate.delay(this.updateBuffer)}this.updateColumnHeadings();if(!this.applyingState){this.grid.saveState()}this.grid.fireEvent("filterupdate",this,a)},onBeforeLoad:function(a,b){b.params=b.params||{};this.cleanParams(b.params);var c=this.buildQuery(this.getFilterData());Ext.apply(b.params,c)},onLoad:function(a,b){a.filterBy(this.getRecordFilter())},onRefresh:function(){this.updateColumnHeadings()},updateColumnHeadings:function(){var b=this.grid.getView(),e,c,a,d;if(b.mainHd){e=b.mainHd.select("td").removeClass(this.filterCls);for(c=0,a=b.cm.config.length;c<a;c++){d=this.getFilter(b.cm.config[c].dataIndex);if(d&&d.active){e.item(c).addClass(this.filterCls)}}}},reload:function(){if(this.local){this.grid.store.clearFilter(true);this.grid.store.filterBy(this.getRecordFilter())}else{var b,a=this.grid.store;this.deferredUpdate.cancel();if(this.toolbar){b=a.paramNames.start;if(a.lastOptions&&a.lastOptions.params&&a.lastOptions.params[b]){a.lastOptions.params[b]=0}}a.reload()}},getRecordFilter:function(){var c=[],a,b;this.filters.each(function(d){if(d.active){c.push(d)}});a=c.length;return function(d){for(b=0;b<a;b++){if(!c[b].validateRecord(d)){return false}}return true}},addFilter:function(a){var c=this.getFilterClass(a.type),b=a.menu?a:(new c(a));this.filters.add(b);Ext.util.Observable.capture(b,this.onStateChange,this);return b},addFilters:function(f){if(f){var c,b,e,a=false,d;if(f instanceof Ext.grid.ColumnModel){f=f.config;a=true}for(c=0,b=f.length;c<b;c++){e=false;if(a){d=f[c].dataIndex;e=f[c].filter||f[c].filterable;if(e){e=(e===true)?{}:e;Ext.apply(e,{dataIndex:d});e.type=e.type||this.store.fields.get(d).type}}else{e=f[c]}if(e){this.addFilter(e)}}}},getFilter:function(a){return this.filters.get(a)},clearFilters:function(){this.filters.each(function(a){a.setActive(false)})},getFilterData:function(){var c=[],b,a;this.filters.each(function(e){if(e.active){var g=[].concat(e.serialize());for(b=0,a=g.length;b<a;b++){c.push({field:e.dataIndex,data:g[b]})}}});return c},buildQuery:function(b){var a={},c,h,j,e,k,d,g=b.length;if(!this.encode){for(c=0;c<g;c++){h=b[c];j=[this.paramPrefix,"[",c,"]"].join("");a[j+"[field]"]=h.field;e=j+"[data]";for(k in h.data){a[[e,"[",k,"]"].join("")]=h.data[k]}}}else{d=[];for(c=0;c<g;c++){h=b[c];d.push(Ext.apply({},{field:h.field},h.data))}if(d.length>0){a[this.paramPrefix]=Ext.util.JSON.encode(d)}}return a},cleanParams:function(c){if(this.encode){delete c[this.paramPrefix]}else{var b,a;b=new RegExp("^"+this.paramPrefix+"[[0-9]+]");for(a in c){if(b.test(a)){delete c[a]}}}},getFilterClass:function(a){switch(a){case"auto":a="string";break;case"int":case"float":a="numeric";break}return Ext.ux.grid.filter[a.substr(0,1).toUpperCase()+a.substr(1)+"Filter"]}});Ext.preg("gridfilters",Ext.ux.grid.GridFilters);
Ext.ns("Ext.ux.grid.filter");Ext.ux.grid.filter.Filter=Ext.extend(Ext.util.Observable,{active:false,dataIndex:null,menu:null,updateBuffer:500,constructor:function(a){Ext.apply(this,a);this.addEvents("activate","deactivate","serialize","update");Ext.ux.grid.filter.Filter.superclass.constructor.call(this);this.menu=new Ext.menu.Menu();this.init(a);if(a&&a.value){this.setValue(a.value);this.setActive(a.active!==false,true);delete a.value}},destroy:function(){if(this.menu){this.menu.destroy()}this.purgeListeners()},init:Ext.emptyFn,getValue:Ext.emptyFn,setValue:Ext.emptyFn,isActivatable:function(){return true},getSerialArgs:Ext.emptyFn,validateRecord:function(){return true},serialize:function(){var a=this.getSerialArgs();this.fireEvent("serialize",a,this);return a},fireUpdate:function(){if(this.active){this.fireEvent("update",this)}this.setActive(this.isActivatable())},setActive:function(b,a){if(this.active!=b){this.active=b;if(a!==true){this.fireEvent(b?"activate":"deactivate",this)}}}});
Ext.ux.grid.filter.StringFilter=Ext.extend(Ext.ux.grid.filter.Filter,{iconCls:"ux-gridfilter-text-icon",emptyText:"Enter Filter Text...",selectOnFocus:true,width:125,init:function(a){Ext.applyIf(a,{enableKeyEvents:true,iconCls:this.iconCls,listeners:{scope:this,keyup:this.onInputKeyUp}});this.inputItem=new Ext.form.TextField(a);this.menu.add(this.inputItem);this.updateTask=new Ext.util.DelayedTask(this.fireUpdate,this)},getValue:function(){return this.inputItem.getValue()},setValue:function(a){this.inputItem.setValue(a);this.fireEvent("update",this)},isActivatable:function(){return this.inputItem.getValue().length>0},getSerialArgs:function(){return{type:"string",value:this.getValue()}},validateRecord:function(a){var b=a.get(this.dataIndex);if(typeof b!="string"){return(this.getValue().length===0)}return b.toLowerCase().indexOf(this.getValue().toLowerCase())>-1},onInputKeyUp:function(c,b){var a=b.getKey();if(a==b.RETURN&&c.isValid()){b.stopEvent();this.menu.hide(true);return}this.updateTask.delay(this.updateBuffer)}});
Ext.ux.grid.filter.DateFilter=Ext.extend(Ext.ux.grid.filter.Filter,{afterText:"After",beforeText:"Before",compareMap:{before:"lt",after:"gt",on:"eq"},dateFormat:"m/d/Y",menuItems:["before","after","-","on"],menuItemCfgs:{selectOnFocus:true,width:125},onText:"On",pickerOpts:{},init:function(c){var g,d,a,e,b,f;g=Ext.apply(this.pickerOpts,{minDate:this.minDate,maxDate:this.maxDate,format:this.dateFormat,listeners:{scope:this,select:this.onMenuSelect}});this.fields={};for(d=0,a=this.menuItems.length;d<a;d++){e=this.menuItems[d];if(e!=="-"){b={itemId:"range-"+e,text:this[e+"Text"],menu:new Ext.menu.DateMenu(Ext.apply(g,{itemId:e})),listeners:{scope:this,checkchange:this.onCheckChange}};f=Ext.menu.CheckItem;e=this.fields[e]=new f(b)}this.menu.add(e)}},onCheckChange:function(){this.setActive(this.isActivatable());this.fireEvent("update",this)},onInputKeyUp:function(c,b){var a=b.getKey();if(a==b.RETURN&&c.isValid()){b.stopEvent();this.menu.hide(true);return}},onMenuSelect:function(c,d,b){var a=this.fields,e=this.fields[c.itemId];e.setChecked(true);if(e==a.on){a.before.setChecked(false,true);a.after.setChecked(false,true)}else{a.on.setChecked(false,true);if(e==a.after&&a.before.menu.picker.value<d){a.before.setChecked(false,true)}else{if(e==a.before&&a.after.menu.picker.value>d){a.after.setChecked(false,true)}}}this.fireEvent("update",this)},getValue:function(){var b,a={};for(b in this.fields){if(this.fields[b].checked){a[b]=this.fields[b].menu.picker.getValue()}}return a},setValue:function(c,b){var a;for(a in this.fields){if(c[a]){this.fields[a].menu.picker.setValue(c[a]);this.fields[a].setChecked(true)}else{if(!b){this.fields[a].setChecked(false)}}}this.fireEvent("update",this)},isActivatable:function(){var a;for(a in this.fields){if(this.fields[a].checked){return true}}return false},getSerialArgs:function(){var a=[];for(var b in this.fields){if(this.fields[b].checked){a.push({type:"date",comparison:this.compareMap[b],value:this.getFieldValue(b).format(this.dateFormat)})}}return a},getFieldValue:function(a){return this.fields[a].menu.picker.getValue()},getPicker:function(a){return this.fields[a].menu.picker},validateRecord:function(a){var b,d,c=a.get(this.dataIndex).clearTime(true).getTime();for(b in this.fields){if(this.fields[b].checked){d=this.getFieldValue(b).clearTime(true).getTime();if(b=="before"&&d<=c){return false}if(b=="after"&&d>=c){return false}if(b=="on"&&d!=c){return false}}}return true}});
Ext.ux.grid.RowExpander=Ext.extend(Ext.util.Observable,{expandOnEnter:true,expandOnDblClick:true,header:"",width:20,sortable:false,fixed:true,menuDisabled:true,dataIndex:"",id:"expander",lazyRender:true,enableCaching:true,rowScrollToTop:true,constructor:function(a){Ext.apply(this,a);this.addEvents({beforeexpand:true,expand:true,beforecollapse:true,collapse:true});Ext.ux.grid.RowExpander.superclass.constructor.call(this);if(this.tpl){if(typeof this.tpl=="string"){this.tpl=new Ext.Template(this.tpl)}this.tpl.compile()}this.state={};this.bodyContent={}},getRowClass:function(a,e,d,c){d.cols=d.cols-1;var b=this.bodyContent[a.id];if(!b&&!this.lazyRender){b=this.getBodyContent(a,e)}if(b){d.body=b}return this.state[a.id]?"x-grid3-row-expanded":"x-grid3-row-collapsed"},init:function(b){this.grid=b;var a=b.getView();a.getRowClass=this.getRowClass.createDelegate(this);a.enableRowBody=true;b.on("render",this.onRender,this);b.on("destroy",this.onDestroy,this)},onRender:function(){var a=this.grid;var b=a.getView().mainBody;b.on("mousedown",this.onMouseDown,this,{delegate:".x-grid3-row-expander"});if(this.expandOnEnter){this.keyNav=new Ext.KeyNav(this.grid.getGridEl(),{enter:this.onEnter,scope:this})}if(this.expandOnDblClick){a.on("rowdblclick",this.onRowDblClick,this)}},onDestroy:function(){if(this.keyNav){this.keyNav.disable();delete this.keyNav}var a=this.grid.getView().mainBody;if(a){a.un("mousedown",this.onMouseDown,this)}},onRowDblClick:function(a,b,c){this.toggleRow(b)},onEnter:function(h){var f=this.grid;var j=f.getSelectionModel();var b=j.getSelections();for(var c=0,a=b.length;c<a;c++){var d=f.getStore().indexOf(b[c]);this.toggleRow(d)}},getBodyContent:function(a,b){if(!this.enableCaching){return this.tpl.apply(a.data)}var c=this.bodyContent[a.id];if(!c){c=this.tpl.apply(a.data);this.bodyContent[a.id]=c}return c},onMouseDown:function(b,a){b.stopEvent();var c=b.getTarget(".x-grid3-row");this.toggleRow(c)},renderer:function(b,c,a){c.cellAttr='rowspan="2"';return'<div class="x-grid3-row-expander">&#160;</div>'},beforeExpand:function(b,a,c){if(this.fireEvent("beforeexpand",this,b,a,c)!==false){if(this.tpl&&this.lazyRender){a.innerHTML=this.getBodyContent(b,c)}return true}else{return false}},toggleRow:function(a){if(typeof a=="number"){a=this.grid.view.getRow(a)}this[Ext.fly(a).hasClass("x-grid3-row-collapsed")?"expandRow":"collapseRow"](a)},expandRow:function(c){if(typeof c=="number"){c=this.grid.view.getRow(c)}var b=this.grid.store.getAt(c.rowIndex);var a=Ext.DomQuery.selectNode("tr:nth(2) div.x-grid3-row-body",c);if(this.beforeExpand(b,a,c.rowIndex)){this.state[b.id]=true;Ext.fly(c).replaceClass("x-grid3-row-collapsed","x-grid3-row-expanded");this.fireEvent("expand",this,b,a,c.rowIndex)}if(this.rowScrollToTop){this.grid.getView().focusRow(this.grid.store.indexOfId(b.id));this.grid.getView().scroller.scrollTo("top",c.offsetTop,true)}},collapseRow:function(c){if(typeof c=="number"){c=this.grid.view.getRow(c)}var b=this.grid.store.getAt(c.rowIndex);var a=Ext.fly(c).child("tr:nth(1) div.x-grid3-row-body",true);if(this.fireEvent("beforecollapse",this,b,a,c.rowIndex)!==false){this.state[b.id]=false;Ext.fly(c).replaceClass("x-grid3-row-expanded","x-grid3-row-collapsed");this.fireEvent("collapse",this,b,a,c.rowIndex)}}});Ext.preg("rowexpander",Ext.ux.grid.RowExpander);Ext.grid.RowExpander=Ext.ux.grid.RowExpander;
Ext.ux.PageSizePlugin=function(a){Ext.apply(this,a);Ext.ux.PageSizePlugin.superclass.constructor.call(this,{store:new Ext.data.SimpleStore({fields:["text","value"],data:[["5",5],["10",10],["15",15],["20",20],["25",25],["50",50],["100",100]]}),mode:"local",displayField:"text",valueField:"value",allowBlank:false,triggerAction:"all",width:50,maskRe:/[0-9]/})};Ext.extend(Ext.ux.PageSizePlugin,Ext.form.ComboBox,{beforeText:"",afterText:"/page",init:function(a){a.on("render",this.onInitView,this)},onInitView:function(a){a.insert(11,"-",this.beforeText,this,this.afterText);this.setValue(a.pageSize);this.on("select",this.onPageSizeChanged,a);this.on("specialkey",function(c,b){if(13===b.getKey()){this.onPageSizeChanged.call(a,this)}})},onPageSizeChanged:function(a){this.pageSize=parseInt(a.getRawValue(),10);this.doLoad(0)}});
Ext.ns('DocDb');
DocDb.OwnersList=Ext.extend(Ext.ux.form.MultiSelect,{border:false,initComponent:function(){var a={name:"owner",plugins:["msgbus"],store:new Ext.data.DirectStore({root:"result",fields:[{name:"id",type:"int"},{name:"owner",type:"string"}],baseParams:{sort:"owner",dir:"ASC"},remoteSort:true,directFn:DocDb.model_owner.get}),valueField:"id",displayField:"owner",simpleSelect:false};Ext.apply(this,Ext.apply(this.initialConfig,a));DocDb.OwnersList.superclass.initComponent.apply(this,arguments);this.store.on("load",function(){var d=this.store.query("id",0),c=this.store.indexOfId(d.keys[0]),b=this.store.getAt(c);b.data.owner=this.labelAll;this.store.removeAt(c);this.store.insert(c,b);this.setValue("0")},this);this.on("change",function(b,c){this.publish("doccb.owner.selected",{obj:this,val:c})},this,{buffer:800,stopEvent:true});this.on("reset",function(b){this.publish("doccb.owner.reset",{obj:b})},this);this.on("afterreset",function(b){this.setValue("0")})},afterRender:function(){DocDb.OwnersList.superclass.afterRender.apply(this,arguments);var a=this;(function(){a.store.load()}.defer(200))}});Ext.reg("ownerslist",DocDb.OwnersList);
DocDb.TypesList=Ext.extend(Ext.ux.form.MultiSelect,{border:false,initComponent:function(){var a={name:"type",plugins:["msgbus"],store:new Ext.data.DirectStore({root:"result",fields:[{name:"id",type:"int"},{name:"type",type:"string"}],baseParams:{sort:"type",dir:"ASC"},remoteSort:true,directFn:DocDb.model_type.get}),valueField:"id",displayField:"type",simpleSelect:false};Ext.apply(this,Ext.apply(this.initialConfig,a));DocDb.TypesList.superclass.initComponent.apply(this,arguments);this.store.on("load",function(){var d=this.store.query("id",0),c=this.store.indexOfId(d.keys[0]),b=this.store.getAt(c);b.data.type=this.labelAll;this.store.removeAt(c);this.store.insert(c,b);this.setValue("0")},this);this.on("reset",function(b){this.store.load()});this.on("change",function(b,c){this.publish("doccb.type.selected",{obj:this,val:c})},this,{buffer:800,stopEvent:true})},onRender:function(){DocDb.TypesList.superclass.onRender.apply(this,arguments);this.subscribe("doccb.owner.selected",{fn:this.getRelatedTypes,single:false})},afterRender:function(){DocDb.TypesList.superclass.afterRender.apply(this,arguments);var a=this;(function(){a.store.load()}.defer(200))},getRelatedTypes:function(a,b){if(b.val.length<1){this.store.load()}else{this.store.load({params:{ownerfk:b.val}})}}});Ext.reg("typeslist",DocDb.TypesList);
DocDb.StatusList=Ext.extend(Ext.ux.form.MultiSelect,{border:false,initComponent:function(){var a={name:"status",plugins:["msgbus"],store:new Ext.data.DirectStore({root:"result",fields:[{name:"id",type:"int"},{name:"status",type:"string"}],baseParams:{sort:"status",dir:"ASC"},remoteSort:true,directFn:DocDb.model_status.get}),valueField:"id",displayField:"status",simpleSelect:false};Ext.apply(this,Ext.apply(this.initialConfig,a));DocDb.StatusList.superclass.initComponent.apply(this,arguments);this.store.on("load",function(){var d=this.store.query("id",0),c=this.store.indexOfId(d.keys[0]),b=this.store.getAt(c);b.data.status=this.labelAll;this.store.removeAt(c);this.store.insert(c,b);this.setValue("0")},this);this.on("reset",function(b){this.store.load()});this.on("change",function(b,c){this.publish("doccb.status.selected",{obj:this,val:c})},this,{buffer:800,stopEvent:true})},onRender:function(){DocDb.OwnersList.superclass.onRender.apply(this,arguments);this.subscribe("doccb.owner.selected",{fn:this.getRelatedStatus,single:false});this.subscribe("doccb.type.selected",{fn:this.getRelatedStatus,single:false})},afterRender:function(){DocDb.StatusList.superclass.afterRender.apply(this,arguments);var a=this;(function(){a.store.load()}.defer(200))},getRelatedStatus:function(b,c){var a={};if(c.val.length<1){this.store.load()}else{if(b==="doccb.owner.selected"){a={params:{ownerfk:c.val}}}else{if(b==="doccb.type.selected"){if(Ext.isDefined(this.store.lastOptions.params)){a=this.store.lastOptions}else{a.params={}}a.params.typefk=c.val}}this.store.load(a)}}});Ext.reg("statuslist",DocDb.StatusList);
Ext.ux.DscrLoader=Ext.extend(Ext.tree.TreeLoader,{addIconRelDscr:function(b){if(b.relDscr){b.text='<img class="x-tree-node-relDscr" src="'+Ext.BLANK_IMAGE_URL+'" /> '+b.text;b.qtip="<b>Synonym of:</b><br />";for(var a=0;a<b.relDscr.length;a++){b.qtip+="<p>- "+b.relDscr[a].title+"</p>"}}b.singleClickExpand=true},createNode:function(a){this.addIconRelDscr(a);return Ext.ux.DscrLoader.superclass.createNode.call(this,a)}});Ext.ns("DocDb");DocDb.DescriptorsTree=Ext.extend(Ext.tree.TreePanel,{border:false,initComponent:function(){var a={height:this.treeHeight.min-35,width:this.width,bodyStyle:"overflow: hidden;",unstyled:false,animate:false,autoScroll:false,containerScroll:true,rootVisible:false,lines:false,useArrows:true,plugins:["msgbus",new Ext.ux.plugins.HeaderButtons()],hbuttons:[{text:this.lang.search,tooltip:this.lang.searchTip,xtype:"button",id:"btnFormSubmit",iconCls:"x-btn-search"},{text:this.lang.reset,tooltip:this.lang.resetTip,xtype:"button",id:"btn-form-reset",handler:function(b,c){delete this.ownerCt.loader.baseParams;this.ownerCt.loader.baseParams={};this.ownerCt.ownerCt.form.reset();this.ownerCt.trigger.onTriggerClick(c)}}],root:{id:"root",text:"Root",children:this.treeNodes},loader:new Ext.ux.DscrLoader({directFn:DocDb.model_descriptor.get,paramsAsHash:true}),searchIsOn:false,tbar:[" ",this.lang.filter,{xtype:"trigger",id:"treeFilter",tree:this,triggerClass:"x-form-clear-trigger",emptyText:this.lang.filterEmpTxt,onTriggerClick:function(){this.onTriggerClick()},enableKeyEvents:true,minLength:2,maxLength:50}," ","->",{xtype:"checkbox",id:"chkAllDscr",checked:false,boxLabel:this.lang.all||"All",name:"selAll",inputValue:"selAll",hidden:true}," ","Combination"," ",{xtype:"radio",id:"selTypeAnd",boxLabel:this.lang.and,name:"selType",inputValue:"AND"}," ",{xtype:"radio",id:"selTypeOr",checked:true,boxLabel:this.lang.or,name:"selType",inputValue:"OR"}," ",{xtype:"button",id:"btnCollapse",text:"",iconCls:"x-btn-text icon-collapse-all",tooltip:this.lang.clpseAll,hidden:true}," "]};Ext.apply(this,Ext.apply(this.initialConfig,a));DocDb.DescriptorsTree.superclass.initComponent.apply(this,arguments);this.on("beforeclick",function(b,c){b.ui.toggleCheck()});this.on("checkchange",function(c,d){var b=d?"checked":"unchecked",e="collapse";if(c.isLeaf()){this.bubbleSetStyle(c,d);if(this.searchIsOn){if(d){e="expand"}c.bubble(function(){DocDb.model_descriptor.setSessionNode(this.id,e)})}DocDb.model_descriptor.setSessionNode(c.id,b)}},this);this.on("beforeexpandnode",function(b,c){if(!this.searchIsOn){DocDb.model_descriptor.setSessionNode(b.id,"expand")}});this.on("beforecollapsenode",function(b,c){Ext.each(this.getChecked("",b),function(e,d){e.ui.toggleCheck(false)});DocDb.model_descriptor.setSessionNode(b.id,"collapse")},this);this.on("expandnode",function(b){this.applyAttrToChildrenOfNode(b);if(b.getDepth()===0){Ext.each(this.getChecked(),function(c){this.bubbleSetStyle(c,true)},this)}b.isAlreadyExpanded=true;this.resizeTreePanel()},this,{buffer:10});this.on("collapsenode",function(b){b.collapseChildNodes(true);this.resizeTreePanel()});this.loader.on("beforeload",function(b,c){if(this.body.isMasked()){this.body.unmask()}},this);this.loader.on("load",function(c,d,b){if(Ext.isDefined(this.loader.baseParams.reset)){delete this.loader.baseParams.reset}if(this.searchIsOn){this.expandAll();if(b.responseText[0].id==="nores"){(function(){this.body.mask(this.lang.noResult,"x-mask-noresult")}.defer(20,this))}}d.isAlreadyExpanded=false;if(d.getDepth()===0){Ext.each(this.getChecked(),function(e){this.bubbleSetStyle(e,true)},this)}},this)},resizeTreePanel:function(){var e=Ext.getCmp("mainPanel"),a=Ext.getCmp("advSearch"),c=Ext.getCmp("mSelect"),d=0,b=(parseInt(this.getTreeEl().dom.firstChild.clientHeight,10)+Math.ceil(this.getFrameHeight()*1.5));if(b<=this.treeHeight.min){d=(c.getHeight()+this.treeHeight.min);b=this.treeHeight.min}else{if(b>=this.treeHeight.max){d=(c.getHeight()+(this.treeHeight.max+Math.ceil(this.getFrameHeight()*0.5)));b=this.treeHeight.max;this.body.setStyle("overflow-y","auto")}else{d=(c.getHeight()+b);this.body.setStyle("overflow","hidden")}}this.setHeight(b);a.setHeight(d);e.setHeight(d);this.syncSize();e.doLayout()},updateqt:function(b,c,a){if(b.getUI().textNode.setAttributeNS){b.getUI().textNode.setAttributeNS("ext","qtip",c);if(a){b.getUI().textNode.setAttributeNS("ext","qtitle",a)}}else{b.getUI().textNode.setAttribute("ext:qtip",c);if(a){b.getUI().textNode.setAttribute("ext:qtitle",a)}}},bubbleSetStyle:function(a,b){a.bubble(function(c){if(b){c.ui.addClass("xtree-node-checked")}else{if(this.getChecked("",c.parentNode).length<1||this.getChecked("",c).length<1){c.ui.removeClass("xtree-node-checked")}}},this)},collapseUnchecked:function(){var a=this.getRootNode(),b=this.getChecked("",a);a.cascade(function(){var c=false;Ext.each(b,function(e,d){if(this.contains(e)){c=true}},this);if(!c&&this.isExpanded()){this.collapse(true)}})},applyAttrToChildrenOfNode:function(a){if(a.firstChild&&a.firstChild.isLeaf()&&!a.isAlreadyExpanded){a.eachChild(function(e,b){var d=e.ui.elNode.lastChild,c=(d.offsetLeft+d.offsetWidth),f;if(c>(this.width-20)){f=Ext.isDefined(e.qtip)?e.qtip+"<br />":"";this.updateqt(e,f+e.attributes.text)}},this)}},disableBodyTree:function(c,d){var b=Ext.getCmp("selTypeAnd"),a=Ext.getCmp("selTypeOr");if(d){b.disable();a.disable();this.trigger.disable();this.btClpsAll.disable();this.collapseAll();this.body.mask(this.lang.allDscrSelected,"x-mask-noresult")}else{b.enable();a.enable();this.trigger.enable();this.btClpsAll.enable();this.body.unmask()}},onRender:function(){var a=function(b){this.val=b};DocDb.DescriptorsTree.superclass.onRender.apply(this,arguments);this.chkAll=Ext.getCmp("chkAllDscr");this.btClpsAll=Ext.getCmp("btnCollapse");this.trigger=Ext.getCmp("treeFilter");this.origRootChildren=new a(this.getRootNode().attributes.children);this.subscribe("doccb.owner.selected",{fn:this.getRelatedDescriptors,single:false});this.subscribe("doccb.type.selected",{fn:this.getRelatedDescriptors,single:false});this.subscribe("doccb.status.selected",{fn:this.getRelatedDescriptors,single:false})},afterRender:function(a){DocDb.DescriptorsTree.superclass.afterRender.apply(this,arguments);this.btClpsAll.on("click",function(){this.collapseAll()},this);this.chkAll.on("check",this.disableBodyTree,this);this.trigger.onTriggerClick=function(c){var b=this.tree;b.searchIsOn=false;delete b.getRootNode().attributes.children;this.setValue("");if(Ext.isDefined(b.loader.baseParams.needle)){delete b.loader.baseParams.needle}if(!Ext.isDefined(c)&&this.getValue()||!Ext.isDefined(c)){b.loader.baseParams.reset=true}if(Ext.isDefined(c)){b.collapseAll()}b.loader.load(b.getRootNode());if(b.chkAll.getValue()){b.chkAll.setValue(false)}if(b.body.isMasked()){b.body.unmask()}};this.trigger.on("keyup",function(c,b){if((b.isNavKeyPress()||b.isSpecialKey())&&b.getKey()!==b.BACKSPACE&&b.getKey()!==b.ENTER){return false}if(c.validateValue(c.getValue())){if(c.getValue().length<2){c.markInvalid(c.minLengthText+" 2");return false}this.loader.baseParams.needle=c.getValue();delete this.getRootNode().attributes.children;if(!this.searchIsOn){this.collapseFirst=this.collapseUnchecked.createSequence(function(){this.searchIsOn=true;this.loader.load(this.getRootNode())},this);this.collapseFirst()}else{this.loader.load(this.getRootNode())}}},this,{buffer:600})},getRelatedDescriptors:function(a,b){if(b.val.length){if(a==="doccb.owner.selected"){this.loader.baseParams.ownerfk=b.val;if(Ext.isDefined(this.loader.baseParams.typefk)){delete this.loader.baseParams.typefk}if(Ext.isDefined(this.loader.baseParams.statusfk)){delete this.loader.baseParams.statusfk}}else{if(a==="doccb.type.selected"){this.loader.baseParams.typefk=b.val;if(Ext.isDefined(this.loader.baseParams.statusfk)){delete this.loader.baseParams.statusfk}}else{if(a==="doccb.status.selected"){this.loader.baseParams.statusfk=b.val}}}delete this.getRootNode().attributes.children;this.loader.lastOptions=this.loader.baseParams;this.collapseFirst=this.collapseUnchecked.createSequence(function(){this.loader.load(this.getRootNode())},this);this.collapseFirst()}}});Ext.reg("descriptorstree",DocDb.DescriptorsTree);
DocDb.GridResults=Ext.extend(Ext.grid.GridPanel,{border:false,initComponent:function(){var d=this.lang.grid,e=this.lang.docDetail,g=this.dF,a=this.xmlExport,c=new Ext.ux.grid.RowExpander({tpl:new Ext.XTemplate('<div class="x-grid3-expander-preview">','<hr class="hr4tmpl" />','<div style="float:left;width:91%;">','<tpl if="owner.length &gt;1">',"<b>"+e.owner+"</b> {owner}<br/>","</tpl>",'<tpl if="type.length &gt;1">',"<b>"+e.type+"</b> {type}<br/>","</tpl>",'<tpl if="status.length &gt;1">',"<b>"+e.status+"</b> {status}<br/>","</tpl>",'<tpl if="dkey.length &gt;1">',"<b>"+e.key+"</b> {dkey}<br/>","</tpl>",'<tpl if="date !==0">',"<b>"+e.date+'</b> {[this.fDate(values["date"])]}<br/>',"</tpl>","</div>",'<div style="float:right;width:8%;text-align:right;">','<a href="{docPageURL}" title="'+e.link2page+'"><img class="x-docdetail-lint2page" src="'+Ext.BLANK_IMAGE_URL+'" /></a>',"</div>",'<div style="clear:both;"><!-- --></div>','<hr class="hr4tmpl" />','<tpl if="this.cAr(dscr)">','<div><b>{[values["dscr"].length > 1?"'+e.relatedDscr_pl+'":"'+e.relatedDscr+'"]}:</b>','<tpl for="dscr">',"<p>- {title}</p>",'</tpl></div><hr class="hr4tmpl" />',"</tpl>",'<tpl if="this.cAr(pages)">','<div><b>{[values["pages"].length > 1?"'+e.relatedPage_pl+'":"'+e.relatedPage+'"]}:</b>','<tpl for="pages">','<p>- <a href="{url}" title="{urltitle}">{title}</a></p>','</tpl></div><hr class="hr4tmpl" />',"</tpl>",'<tpl if="dAbs.length &gt;1">',"<div><b>"+e.dAbstract+":</b>","<p>{dAbs}</p>",'</div><hr class="hr4tmpl" />',"</tpl>","</div>",{cAr:function(i){return i.length>0?true:false}},{fDate:function(j){var i=new Date(j);return i.format(g.detail)}})}),f=new Ext.ux.grid.GridFilters({encode:true,local:false,filters:[{type:"string",dataIndex:"title"},{type:"string",dataIndex:"owner"},{type:"date",dataIndex:"date"},{type:"string",dataIndex:"type"},{type:"string",dataIndex:"status"}]}),h=function(j,k,i){return'<div style="white-space:normal !important;"><a class="docpreview" href="'+i.data.docPageURL+'" title="'+e.link2preview+'">'+j+"</a></div>"},b={title:d.resPanel.title,autoScroll:true,forceFit:true,style:"border-bottom:1px solid #bbb;",autoExpandColumn:"title",autoSizeColumn:true,autoExpandMin:150,autoExpandMax:650,plugins:this.standaloneGrid?[c,f]:[c,f,new Ext.ux.plugins.HeaderButtons()],hbuttons:this.standaloneGrid?"":[{text:d.resPanel.searchAgain,id:"btnMakeNewSearch",iconCls:"x-btn-search"}],loadMask:{msg:d.loading},store:new Ext.data.GroupingStore({storeId:"gridStore",baseParams:{start:0,limit:this.pageSize},autoLoad:false,remoteGroup:true,groupOnSort:false,remoteSort:true,groupField:"owner",sortInfo:{field:"title",direction:"ASC"},proxy:new Ext.data.DirectProxy({paramsAsHash:true,directFn:DocDb.model_document.get}),reader:new Ext.data.JsonReader({root:"rows",idProperty:"uid",totalProperty:"totalCount",testProperty:"test",fields:[{name:"uid",type:"int"},{name:"title",type:"string"},{name:"docPageURL",type:"string"},{name:"date",type:"date",dateFormat:"timestamp"},{name:"owner",type:"string"},{name:"dkey",type:"string"},{name:"type",type:"string"},{name:"status",type:"string"},{name:"dscr"},{name:"pages"},{name:"dAbs",type:"string"}]}),listeners:{datachanged:{fn:function(i){if(i.groupField){this.groupField=i.groupField;this.remoteGroup=true;this.setBaseParam("groupBy",i.groupField);this.setBaseParam("grouping",true)}}}}}),view:new Ext.grid.GroupingView({forceFit:false,hideGroupedColumn:true,showGroupName:false,groupTextTpl:"{text}"}),cm:new Ext.grid.ColumnModel([c,{id:"title",header:d.header.title,width:this.colsW[0],sortable:true,dataIndex:"title",renderer:{fn:h,scope:this}},{header:d.header.date,width:this.colsW[1],fixed:true,resizable:false,sortable:true,renderer:Ext.util.Format.dateRenderer(g.row),dataIndex:"date"},{header:d.header.owner,width:this.colsW[2],sortable:true,dataIndex:"owner",renderer:function(j,k,i){return'<div style="white-space:normal !important;">'+j+"</div>"}},{header:d.header.key,width:this.colsW[3],fixed:true,sortable:true,dataIndex:"dkey"},{header:d.header.type,width:this.colsW[4],fixed:true,sortable:true,dataIndex:"type",renderer:function(j,k,i){return'<div style="white-space:normal !important;">'+j+"</div>"}},{header:d.header.status,width:this.colsW[5],fixed:true,sortable:true,dataIndex:"status"}])};Ext.apply(this,Ext.apply(this.initialConfig,b));this.bbar=new Ext.PagingToolbar({id:"g-p-bbar",pageSize:this.pageSize,store:this.store,displayInfo:true,hidden:false,autoShow:true,plugins:[new Ext.ux.PageSizePlugin({editable:false,forceSelection:true})],prependButtons:true,items:[{text:"XML",tooltip:{text:d.xmlLinkTooltip,title:d.xmlLinkTitle},menu:new Ext.menu.Menu({id:"xmlLinkMenu",style:{overflow:"visible",backgroundImage:"none"},items:[{id:"queryBtnXmlLink",xtype:"button",text:d.xmlLinkBtn,listeners:{scope:this,render:function(i){i.addClass("x-btn-15");i.on({scope:this,click:this.onClickGetXmlLink,stopEvent:true})}}},{id:"xmlLink",xtype:"textfield",grow:true,selectOnFocus:true,validateOnBlur:false,readOnly:true,hidden:true,value:"xml link"}]})},"-"]});this.on({scope:this,render:function(){var i=Ext.getCmp("g-p-bbar").items;if(!a){i.itemAt(0).disable().hide();i.itemAt(1).hide()}this.body.on({scope:this,click:this.onClickLink,delegate:"a.docpreview",stopEvent:true})}});this.store.on({load:function(j,k,i){Ext.getCmp("xmlLink").hide()}});DocDb.GridResults.superclass.initComponent.apply(this,arguments)},onClickGetXmlLink:function(a,b){a.setIconClass("loading-btn");DocDb.xmllink.getLink(this.store.baseParams,function(c,d){a.setIconClass("");if(c.success){Ext.getCmp("xmlLink").setValue(c.xmlLink).show();Ext.getCmp("xmlLinkMenu").doLayout()}})},onClickLink:function(f,b,g){var c=this.lang.docDetail,d=this.getSelectionModel();if(!this.win){this.win=new Ext.Window({id:"docdb-previewWin",bodyStyle:"padding:10px",layout:"fit",preventBodyReset:true,unstyled:false,maximizable:true,shadow:true,width:this.docDetail.pWinWidth,height:this.docDetail.pWinHeight,closeAction:"hide",autoScroll:true,constrainHeader:true,plain:false,tbar:[{text:"",id:"btnPrev",iconCls:"x-tbar-page-prev",tooltip:c.prevDoc,listeners:{click:function(a,h){if(d.hasPrevious()){d.selectPrevious();this.loadDetail(d)}},render:this.prevNextStatus,scope:this}},"-",{text:"",id:"btnNext",iconCls:"x-tbar-page-next",tooltip:c.nextDoc,listeners:{click:function(a,h){if(d.hasNext()){d.selectNext();this.loadDetail(d)}},render:this.prevNextStatus,scope:this}},"->",{text:c.link2page,id:"btnExtUrl",iconCls:"x-docdetail-lint2page",iconAlign:"right",tooltip:c.link2pageTooltip,handler:function(){window.location.href=d.getSelected().data.docPageURL}}]})}this.win.setPos=function(){var e=Ext.getDoc().getScroll(),a=this.getPosition();this.setPagePosition(a[0],e.top+20)};this.win.on("resize",function(){this.setPos()});this.win.show(b,function(){this.win.center();this.win.setPos()},this);this.loadDetail(d)},loadDetail:function(a){if(this.win.rendered){this.win.setTitle(a.getSelected().data.title);var b=new RegExp(window.document.baseURI,"i");if(!a.getSelected().data.docPageURL.match(b)){this.win.body.update('<iframe width="100%" height="100%" src="'+a.getSelected().data.docPageURL+'#content"></iframe>')}else{this.win.load({url:a.getSelected().data.docPageURL,callback:function(g,d,e){var f=this.win.body,c=Ext.select("#docdb-previewWin div#"+this.docDetail.divContIdWinP+"",f);f.update(c.elements[0].innerHTML).fadeIn({stopFx:true,duration:0.5});this.prevNextStatus()},scope:this})}}},prevNextStatus:function(){var a=this.getSelectionModel(),b=Ext.getCmp("btnPrev"),c=Ext.getCmp("btnNext");if(a.hasPrevious()){b.enable()}else{b.disable()}if(a.hasNext()){c.enable()}else{c.disable()}},afterRender:function(){this.store.on("beforeload",function(){if(this.baseParams.groupBy!=="owner"){this.groupBy(this.baseParams.groupBy)}if(!this.baseParams.grouping){this.groupBy("");this.clearGrouping()}});DocDb.GridResults.superclass.afterRender.apply(this,arguments)}});Ext.reg("gridresults",DocDb.GridResults);

