/* extjs/adapter/ext/ext-base.js */
Ext={version:'3.0'};window.undefined=window.undefined;Ext.apply=function(o,c,defaults){if(defaults)Ext.apply(o,defaults)
if(o&&c&&typeof c=='object'){for(var p in c){o[p]=c[p];}}
return o;};(function(){var idSeed=0,ua=navigator.userAgent.toLowerCase(),check=function(r){return r.test(ua);},isStrict=document.compatMode=="CSS1Compat",isOpera=check(/opera/),isChrome=check(/chrome/),isWebKit=check(/webkit/),isSafari=!isChrome&&check(/safari/),isSafari3=isSafari&&check(/version\/3/),isSafari4=isSafari&&check(/version\/4/),isIE=!isOpera&&check(/msie/),isIE7=isIE&&check(/msie 7/),isIE8=isIE&&check(/msie 8/),isGecko=!isWebKit&&check(/gecko/),isGecko3=isGecko&&check(/rv:1\.9/),isBorderBox=isIE&&!isStrict,isWindows=check(/windows|win32/),isMac=check(/macintosh|mac os x/),isAir=check(/adobeair/),isLinux=check(/linux/),isSecure=/^https/i.test(window.location.protocol);if(isIE&&!(isIE7||isIE8)){try{document.execCommand("BackgroundImageCache",false,true);}catch(e){}}
Ext.apply(Ext,{isStrict:isStrict,isSecure:isSecure,isReady:false,enableGarbageCollector:true,enableListenerCollection:false,USE_NATIVE_JSON:false,applyIf:function(o,c){if(o){for(var p in c){if(Ext.isEmpty(o[p])){o[p]=c[p];}}}
return o;},id:function(el,prefix){return(el=Ext.getDom(el)||{}).id=el.id||(prefix||"ext-gen")+(++idSeed);},extend:function(){var io=function(o){for(var m in o){this[m]=o[m];}};var oc=Object.prototype.constructor;return function(sb,sp,overrides){if(Ext.isObject(sp)){overrides=sp;sp=sb;sb=overrides.constructor!=oc?overrides.constructor:function(){sp.apply(this,arguments);};}
var F=function(){},sbp,spp=sp.prototype;F.prototype=spp;sbp=sb.prototype=new F();sbp.constructor=sb;sb.superclass=spp;if(spp.constructor==oc){spp.constructor=sp;}
sb.override=function(o){Ext.override(sb,o);};sbp.superclass=sbp.supr=(function(){return spp;});sbp.override=io;Ext.override(sb,overrides);sb.extend=function(o){Ext.extend(sb,o);};return sb;};}(),override:function(origclass,overrides){if(overrides){var p=origclass.prototype;Ext.apply(p,overrides);if(Ext.isIE&&overrides.toString!=origclass.toString){p.toString=overrides.toString;}}},namespace:function(){var o,d;Ext.each(arguments,function(v){d=v.split(".");o=window[d[0]]=window[d[0]]||{};Ext.each(d.slice(1),function(v2){o=o[v2]=o[v2]||{};});});return o;},urlEncode:function(o,pre){var buf=[],key,e=encodeURIComponent;for(key in o){Ext.each(o[key]||key,function(val,i){buf.push("&",e(key),"=",val!=key?e(val):"");});}
if(!pre){buf.shift();pre="";}
return pre+buf.join('');},urlDecode:function(string,overwrite){var obj={},pairs=string.split('&'),d=decodeURIComponent,name,value;Ext.each(pairs,function(pair){pair=pair.split('=');name=d(pair[0]);value=d(pair[1]);obj[name]=overwrite||!obj[name]?value:[].concat(obj[name]).concat(value);});return obj;},toArray:function(){return isIE?function(a,i,j,res){res=[];Ext.each(a,function(v){res.push(v);});return res.slice(i||0,j||res.length);}:function(a,i,j){return Array.prototype.slice.call(a,i||0,j||a.length);}}(),each:function(array,fn,scope){if(Ext.isEmpty(array,true))return;if(typeof array.length=="undefined"||typeof array=="string"){array=[array];}
for(var i=0,len=array.length;i<len;i++){if(fn.call(scope||array[i],array[i],i,array)===false){return i;};}},getDom:function(el){if(!el||!document){return null;}
return el.dom?el.dom:(typeof el=='string'?document.getElementById(el):el);},getBody:function(){return Ext.get(document.body||document.documentElement);},removeNode:isIE?function(){var d;return function(n){if(n&&n.tagName!='BODY'){d=d||document.createElement('div');d.appendChild(n);d.innerHTML='';}}}():function(n){if(n&&n.parentNode&&n.tagName!='BODY'){n.parentNode.removeChild(n);}},isEmpty:function(v,allowBlank){return v===null||v===undefined||((Ext.isArray(v)&&!v.length))||(!allowBlank?v==='':false);},isArray:function(v){return Object.prototype.toString.apply(v)==='[object Array]';},isObject:function(v){return v&&typeof v=="object";},isPrimitive:function(v){var t=typeof v;return t=='string'||t=='number'||t=='boolean';},isFunction:function(v){return typeof v=="function";},isOpera:isOpera,isWebKit:isWebKit,isChrome:isChrome,isSafari:isSafari,isSafari3:isSafari3,isSafari4:isSafari4,isSafari2:isSafari&&!isSafari3,isIE:isIE,isIE6:isIE&&!isIE7&&!isIE8,isIE7:isIE7,isIE8:isIE8,isGecko:isGecko,isGecko2:isGecko&&!isGecko3,isGecko3:isGecko3,isBorderBox:isBorderBox,isLinux:isLinux,isWindows:isWindows,isMac:isMac,isAir:isAir});Ext.ns=Ext.namespace;})();Ext.ns("Ext","Ext.util","Ext.lib","Ext.data");Ext.apply(Function.prototype,{createInterceptor:function(fcn,scope){var method=this;return!Ext.isFunction(fcn)?this:function(){var me=this,args=arguments;fcn.target=me;fcn.method=method;return(fcn.apply(scope||me||window,args)!==false)?method.apply(me||window,args):null;};},createCallback:function(){var args=arguments,method=this;return function(){return method.apply(window,args);};},createDelegate:function(obj,args,appendArgs){var method=this;return function(){var callArgs=args||arguments;if(appendArgs===true){callArgs=Array.prototype.slice.call(arguments,0);callArgs=callArgs.concat(args);}else if(typeof appendArgs=="number"){callArgs=Array.prototype.slice.call(arguments,0);var applyArgs=[appendArgs,0].concat(args);Array.prototype.splice.apply(callArgs,applyArgs);}
return method.apply(obj||window,callArgs);};},defer:function(millis,obj,args,appendArgs){var fn=this.createDelegate(obj,args,appendArgs);if(millis>0){return setTimeout(fn,millis);}
fn();return 0;}});Ext.applyIf(String,{format:function(format){var args=Ext.toArray(arguments,1);return format.replace(/\{(\d+)\}/g,function(m,i){return args[i];});}});Ext.applyIf(Array.prototype,{indexOf:function(o){for(var i=0,len=this.length;i<len;i++){if(this[i]==o)return i;}
return-1;},remove:function(o){var index=this.indexOf(o);if(index!=-1){this.splice(index,1);}
return this;}});Ext.ns("Ext.grid","Ext.dd","Ext.tree","Ext.form","Ext.menu","Ext.state","Ext.layout","Ext.app","Ext.ux","Ext.chart","Ext.direct");Ext.apply(Ext,function(){var E=Ext,idSeed=0;return{SSL_SECURE_URL:"javascript:false",emptyFn:function(){},BLANK_IMAGE_URL:"http:/"+"/extjs.com/s.gif",extendX:function(supr,fn){return Ext.extend(supr,fn(supr.prototype));},getDoc:function(){return Ext.get(document);},isDate:function(v){return Object.prototype.toString.apply(v)==='[object Date]';},num:function(v,defaultValue){v=Number(v==null?NaN:v);return isNaN(v)?defaultValue:v;},value:function(v,defaultValue,allowBlank){return Ext.isEmpty(v,allowBlank)?defaultValue:v;},escapeRe:function(s){return s.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1");},sequence:function(o,name,fn,scope){o[name]=o[name].createSequence(fn,scope);},addBehaviors:function(o){if(!Ext.isReady){Ext.onReady(function(){Ext.addBehaviors(o);});}else{var cache={},parts,b,s;for(b in o){if((parts=b.split('@'))[1]){s=parts[0];if(!cache[s]){cache[s]=Ext.select(s);}
cache[s].on(parts[1],o[b]);}}
cache=null;}},combine:function(){var as=arguments,l=as.length,r=[];for(var i=0;i<l;i++){var a=as[i];if(Ext.isArray(a)){r=r.concat(a);}else if(a.length!==undefined&&!a.substr){r=r.concat(Array.prototype.slice.call(a,0));}else{r.push(a);}}
return r;},copyTo:function(dest,source,names){if(typeof names=='string'){names=names.split(/[,;\s]/);}
for(var i=0,len=names.length;i<len;i++){var n=names[i];if(source.hasOwnProperty(n)){dest[n]=source[n];}}
return dest;},destroy:function(){for(var i=0,a=arguments,len=a.length;i<len;i++){var as=a[i];if(as){if(typeof as.destroy=='function'){as.destroy();}
else if(as.dom){as.removeAllListeners();as.remove();}}}},destroyMembers:function(o,arg1,arg2,etc){for(var i=1,a=arguments,len=a.length;i<len;i++){Ext.destroy(o[a[i]]);delete o[a[i]];}},clean:function(arr){var ret=[];Ext.each(arr,function(v){if(!!v)ret.push(v);});return ret;},unique:function(arr){var ret=[],collect={};Ext.each(arr,function(v){if(!collect[v]){ret.push(v);}
collect[v]=true;});return ret;},flatten:function(arr){var worker=[];function rFlatten(a){Ext.each(a,function(v){Ext.isArray(v)?rFlatten(v):worker.push(v);});return worker;};return rFlatten(arr);},min:function(arr,comp){var ret=arr[0];comp=comp||function(a,b){return a<b?-1:1};Ext.each(arr,function(v){ret=comp(ret,v)==-1?ret:v;});return ret;},max:function(arr,comp){var ret=arr[0];comp=comp||function(a,b){return a>b?1:-1};Ext.each(arr,function(v){ret=comp(ret,v)==1?ret:v;});return ret;},median:function(arr,sorter,medCalc){var ret,middle,remainder;if(arr.length){if(arr.length==1){ret=arr[0];}else{arr=Ext.toArray(arr);sorter?arr.sort(sorter):arr.sort();remainder=(middle=(arr.length/2)-1)%1;if(remainder==0){ret=medCalc?medCalc(arr[middle],arr[middle+1]):((arr[middle]+arr[middle+1])/2);}else{ret=arr[middle+remainder];}}}
return ret;},mean:function(arr){return Ext.sum(arr)/arr.length;},mode:function(arr){var collect={},mode=arr[0];Ext.each(arr,function(v){collect[v]==undefined?collect[v]=0:collect[v]++;mode=collect[mode]<collect[v]?v:mode;});return mode;},sum:function(arr){var ret=0;Ext.each(arr,function(v){ret+=v;});return ret;},partition:function(arr,truth){var ret=[[],[]];Ext.each(arr,function(v,i,a){ret[(truth&&truth(v,i,a))||(!truth&&v)?0:1].push(v);});return ret;},invoke:function(arr,methodName){var ret=[],args=Array.prototype.slice.call(arguments,2);Ext.each(arr,function(v,i){if(v&&typeof v[methodName]=="function"){ret.push(v[methodName].apply(v,args));}else{ret.push(undefined);}});return ret;},pluck:function(arr,prop){var ret=[];Ext.each(arr,function(v){ret.push(v[prop]);});return ret;},zip:function(){var parts=Ext.partition(arguments,function(val){return typeof val!="function"}),arrs=parts[0],fn=parts[1][0],len=Ext.max(Ext.pluck(arrs,"length")),ret=[];for(var i=0;i<len;i++){ret[i]=[];if(fn){ret[i]=fn.apply(fn,Ext.pluck(arrs,i));}else{for(var j=0,aLen=arrs.length;j<aLen;j++){ret[i].push(arrs[j][i]);}}}
return ret;},getCmp:function(id){return Ext.ComponentMgr.get(id);},useShims:((E.isIE&&E.isIE6)||(E.isMac&&E.isGecko&&!E.isGecko3)),type:function(o){if(o===undefined||o===null){return false;}
if(o.htmlElement){return'element';}
var t=typeof o;if(t=='object'&&o.nodeName){switch(o.nodeType){case 1:return'element';case 3:return(/\S/).test(o.nodeValue)?'textnode':'whitespace';}}
if(t=='object'||t=='function'){switch(o.constructor){case Array:return'array';case RegExp:return'regexp';case Date:return'date';}
if(typeof o.length=='number'&&typeof o.item=='function'){return'nodelist';}}
return t;},intercept:function(o,name,fn,scope){o[name]=o[name].createInterceptor(fn,scope);},callback:function(cb,scope,args,delay){if(Ext.isFunction(cb)){if(delay){cb.defer(delay,scope,args||[]);}else{cb.apply(scope,args||[]);}}}}}());Ext.apply(Function.prototype,{createSequence:function(fcn,scope){var method=this;return!Ext.isFunction(fcn)?this:function(){var retval=method.apply(this||window,arguments);fcn.apply(scope||this||window,arguments);return retval;};}});Ext.applyIf(String,{escape:function(string){return string.replace(/('|\\)/g,"\\$1");},leftPad:function(val,size,ch){var result=String(val);if(!ch){ch=" ";}
while(result.length<size){result=ch+result;}
return result;}});String.prototype.toggle=function(value,other){return this==value?other:value;};String.prototype.trim=function(){var re=/^\s+|\s+$/g;return function(){return this.replace(re,"");};}();Date.prototype.getElapsed=function(date){return Math.abs((date||new Date()).getTime()-this.getTime());};Ext.applyIf(Number.prototype,{constrain:function(min,max){return Math.min(Math.max(this,min),max);}});Ext.util.TaskRunner=function(interval){interval=interval||10;var tasks=[],removeQueue=[],id=0,running=false,stopThread=function(){running=false;clearInterval(id);id=0;},startThread=function(){if(!running){running=true;id=setInterval(runTasks,interval);}},removeTask=function(t){removeQueue.push(t);if(t.onStop){t.onStop.apply(t.scope||t);}},runTasks=function(){var rqLen=removeQueue.length,now=new Date().getTime();if(rqLen>0){for(var i=0;i<rqLen;i++){tasks.remove(removeQueue[i]);}
removeQueue=[];if(tasks.length<1){stopThread();return;}}
for(var i=0,t,itime,rt,len=tasks.length;i<len;++i){t=tasks[i];itime=now-t.taskRunTime;if(t.interval<=itime){rt=t.run.apply(t.scope||t,t.args||[++t.taskRunCount]);t.taskRunTime=now;if(rt===false||t.taskRunCount===t.repeat){removeTask(t);return;}}
if(t.duration&&t.duration<=(now-t.taskStartTime)){removeTask(t);}}};this.start=function(task){tasks.push(task);task.taskStartTime=new Date().getTime();task.taskRunTime=0;task.taskRunCount=0;startThread();return task;};this.stop=function(task){removeTask(task);return task;};this.stopAll=function(){stopThread();for(var i=0,len=tasks.length;i<len;i++){if(tasks[i].onStop){tasks[i].onStop();}}
tasks=[];removeQueue=[];};};Ext.TaskMgr=new Ext.util.TaskRunner();(function(){var libFlyweight;function fly(el){if(!libFlyweight){libFlyweight=new Ext.Element.Flyweight();}
libFlyweight.dom=el;return libFlyweight;}
(function(){var doc=document,isCSS1=doc.compatMode=="CSS1Compat",MAX=Math.max,PARSEINT=parseInt;Ext.lib.Dom={isAncestor:function(p,c){var ret=false;p=Ext.getDom(p);c=Ext.getDom(c);if(p&&c){if(p.contains){return p.contains(c);}else if(p.compareDocumentPosition){return!!(p.compareDocumentPosition(c)&16);}else{while(c=c.parentNode){ret=c==p||ret;}}}
return ret;},getViewWidth:function(full){return full?this.getDocumentWidth():this.getViewportWidth();},getViewHeight:function(full){return full?this.getDocumentHeight():this.getViewportHeight();},getDocumentHeight:function(){return MAX(!isCSS1?doc.body.scrollHeight:doc.documentElement.scrollHeight,this.getViewportHeight());},getDocumentWidth:function(){return MAX(!isCSS1?doc.body.scrollWidth:doc.documentElement.scrollWidth,this.getViewportWidth());},getViewportHeight:function(){return Ext.isIE?(Ext.isStrict?doc.documentElement.clientHeight:doc.body.clientHeight):self.innerHeight;},getViewportWidth:function(){return!Ext.isStrict&&!Ext.isOpera?doc.body.clientWidth:Ext.isIE?doc.documentElement.clientWidth:self.innerWidth;},getY:function(el){return this.getXY(el)[1];},getX:function(el){return this.getXY(el)[0];},getXY:function(el){var p,pe,b,bt,bl,dbd,x=0,y=0,scroll,hasAbsolute,bd=(doc.body||doc.documentElement),ret=[0,0];el=Ext.getDom(el);if(el!=bd){if(el.getBoundingClientRect){b=el.getBoundingClientRect();scroll=fly(document).getScroll();ret=[b.left+scroll.left,b.top+scroll.top];}else{p=el;hasAbsolute=fly(el).isStyle("position","absolute");while(p){pe=fly(p);x+=p.offsetLeft;y+=p.offsetTop;hasAbsolute=hasAbsolute||pe.isStyle("position","absolute");if(Ext.isGecko){y+=bt=PARSEINT(pe.getStyle("borderTopWidth"),10)||0;x+=bl=PARSEINT(pe.getStyle("borderLeftWidth"),10)||0;if(p!=el&&!pe.isStyle('overflow','visible')){x+=bl;y+=bt;}}
p=p.offsetParent;}
if(Ext.isSafari&&hasAbsolute){x-=bd.offsetLeft;y-=bd.offsetTop;}
if(Ext.isGecko&&!hasAbsolute){dbd=fly(bd);x+=PARSEINT(dbd.getStyle("borderLeftWidth"),10)||0;y+=PARSEINT(dbd.getStyle("borderTopWidth"),10)||0;}
p=el.parentNode;while(p&&p!=bd){if(!Ext.isOpera||(p.tagName!='TR'&&!fly(p).isStyle("display","inline"))){x-=p.scrollLeft;y-=p.scrollTop;}
p=p.parentNode;}
ret=[x,y];}}
return ret},setXY:function(el,xy){(el=Ext.fly(el,'_setXY')).position();var pts=el.translatePoints(xy),style=el.dom.style,pos;for(pos in pts){if(!isNaN(pts[pos]))style[pos]=pts[pos]+"px"}},setX:function(el,x){this.setXY(el,[x,false]);},setY:function(el,y){this.setXY(el,[false,y]);}};})();Ext.lib.Dom.getRegion=function(el){return Ext.lib.Region.getRegion(el);}
Ext.lib.Event=function(){var loadComplete=false,listeners=[],unloadListeners=[],retryCount=0,onAvailStack=[],_interval,locked=false,win=window,doc=document,POLL_RETRYS=200,POLL_INTERVAL=20,EL=0,TYPE=1,FN=2,WFN=3,OBJ=3,ADJ_SCOPE=4,doAdd=function(){var ret;if(win.addEventListener){ret=function(el,eventName,fn,capture){if(eventName=='mouseenter'){fn=fn.createInterceptor(checkRelatedTarget);el.addEventListener('mouseover',fn,(capture));}else if(eventName=='mouseleave'){fn=fn.createInterceptor(checkRelatedTarget);el.addEventListener('mouseout',fn,(capture));}else{el.addEventListener(eventName,fn,(capture));}
return fn;};}else if(win.attachEvent){ret=function(el,eventName,fn,capture){el.attachEvent("on"+eventName,fn);return fn;};}else{ret=function(){};}
return ret;}(),doRemove=function(){var ret;if(win.removeEventListener){ret=function(el,eventName,fn,capture){if(eventName=='mouseenter'){eventName='mouseover'}else if(eventName=='mouseleave'){eventName='mouseout'}
el.removeEventListener(eventName,fn,(capture));};}else if(win.detachEvent){ret=function(el,eventName,fn){el.detachEvent("on"+eventName,fn);};}else{ret=function(){};}
return ret;}();function checkRelatedTarget(e){var related=e.relatedTarget,isXulEl=Object.prototype.toString.apply(related)=='[object XULElement]';if(!related)return false;return(!isXulEl&&related!=this&&this.tag!='document'&&!elContains(this,related));}
function elContains(parent,child){while(child){if(child===parent){return true;}
try{child=child.parentNode;}catch(e){return false;}
if(child&&(child.nodeType!=1)){child=null;}}
return false;}
function _getCacheIndex(el,eventName,fn){var index=-1;Ext.each(listeners,function(v,i){if(v&&v[FN]==fn&&v[EL]==el&&v[TYPE]==eventName){index=i;}});return index;}
function _tryPreloadAttach(){var ret=false,notAvail=[],element,tryAgain=!loadComplete||(retryCount>0);if(!locked){locked=true;Ext.each(onAvailStack,function(v,i,a){if(v&&(element=doc.getElementById(v.id))){if(!v.checkReady||loadComplete||element.nextSibling||(doc&&doc.body)){element=v.override?(v.override===true?v.obj:v.override):element;v.fn.call(element,v.obj);onAvailStack[i]=null;}else{notAvail.push(item);}}});retryCount=(notAvail.length==0)?0:retryCount-1;if(tryAgain){startInterval();}else{clearInterval(_interval);_interval=null;}
ret=!(locked=false);}
return ret;}
function startInterval(){if(!_interval){var callback=function(){_tryPreloadAttach();};_interval=setInterval(callback,pub.POLL_INTERVAL);}}
function getScroll(){var scroll=Ext.get(doc).getScroll();return[scroll.top,scroll.top];}
function getPageCoord(ev,xy){ev=ev.browserEvent||ev;var coord=ev['page'+xy];if(!coord&&0!=coord){coord=ev['client'+xy]||0;if(Ext.isIE){coord+=getScroll()[xy=="X"?0:1];}}
return coord;}
var pub={onAvailable:function(p_id,p_fn,p_obj,p_override){onAvailStack.push({id:p_id,fn:p_fn,obj:p_obj,override:p_override,checkReady:false});retryCount=this.POLL_RETRYS;startInterval();},addListener:function(el,eventName,fn){var ret;el=Ext.getDom(el);if(el&&fn){if("unload"==eventName){ret=!!(unloadListeners[unloadListeners.length]=[el,eventName,fn]);}else{listeners.push([el,eventName,fn,ret=doAdd(el,eventName,fn,false)]);}}
return!!ret;},removeListener:function(el,eventName,fn){var ret=false,index,cacheItem;el=Ext.getDom(el);if(!fn){ret=this.purgeElement(el,false,eventName);}else if("unload"==eventName){Ext.each(unloadListeners,function(v,i,a){if(v&&v[0]==el&&v[1]==evantName&&v[2]==fn){unloadListeners.splice(i,1);ret=true;}});}else{index=arguments[3]||_getCacheIndex(el,eventName,fn);cacheItem=listeners[index];if(el&&cacheItem){doRemove(el,eventName,cacheItem[WFN],false);cacheItem[WFN]=cacheItem[FN]=null;listeners.splice(index,1);ret=true;}}
return ret;},getTarget:function(ev){ev=ev.browserEvent||ev;return this.resolveTextNode(ev.target||ev.srcElement);},resolveTextNode:function(node){return Ext.isSafari&&node&&3==node.nodeType?node.parentNode:node;},getPageX:function(ev){return getPageCoord(ev,"X");},getPageY:function(ev){return getPageCoord(ev,"Y");},getXY:function(ev){return[this.getPageX(ev),this.getPageY(ev)];},getRelatedTarget:function(ev){ev=ev.browserEvent||ev;return this.resolveTextNode(ev.relatedTarget||(ev.type=="mouseout"?ev.toElement:ev.type=="mouseover"?ev.fromElement:null));},stopEvent:function(ev){this.stopPropagation(ev);this.preventDefault(ev);},stopPropagation:function(ev){ev=ev.browserEvent||ev;if(ev.stopPropagation){ev.stopPropagation();}else{ev.cancelBubble=true;}},preventDefault:function(ev){ev=ev.browserEvent||ev;if(ev.preventDefault){ev.preventDefault();}else{ev.returnValue=false;}},getEvent:function(e){e=e||win.event;if(!e){var c=this.getEvent.caller;while(c){e=c.arguments[0];if(e&&Event==e.constructor){break;}
c=c.caller;}}
return e;},getCharCode:function(ev){ev=ev.browserEvent||ev;return ev.charCode||ev.keyCode||0;},_load:function(e){loadComplete=true;var EU=Ext.lib.Event;if(Ext.isIE&&e!==true){doRemove(win,"load",EU._load);}},purgeElement:function(el,recurse,eventName){var me=this;Ext.each(me.getListeners(el,eventName),function(v){if(v)me.removeListener(el,v.type,v.fn);});if(recurse&&el&&el.childNodes){Ext.each(el.childNodes,function(v){me.purgeElement(v,recurse,eventName);});}},getListeners:function(el,eventName){var me=this,results=[],searchLists=[listeners,unloadListeners];if(eventName){searchLists.splice(eventName=="unload"?0:1,1);}else{searchLists=searchLists[0].concat(searchLists[1]);}
Ext.each(searchLists,function(v,i){if(v&&v[me.EL]==el&&(!eventName||eventName==v[me.type])){results.push({type:v[TYPE],fn:v[FN],obj:v[OBJ],adjust:v[ADJ_SCOPE],index:i});}});return results.length?results:null;},_unload:function(e){var EU=Ext.lib.Event,i,j,l,len,index,scope;Ext.each(unloadListeners,function(v){if(v){scope=v[ADJ_SCOPE]?(v[ADJ_SCOPE]===true?v[OBJ]:v[ADJ_SCOPE]):win;v[FN].call(scope,EU.getEvent(e),v[OBJ]);}});unloadListeners=null;if(listeners&&(j=listeners.length)){while(j){if(l=listeners[index=--j]){EU.removeListener(l[EL],l[TYPE],l[FN],index);}}}
doRemove(win,"unload",EU._unload);}};pub.on=pub.addListener;pub.un=pub.removeListener;if(doc&&doc.body){pub._load(true);}else{doAdd(win,"load",pub._load);}
doAdd(win,"unload",pub._unload);_tryPreloadAttach();return pub;}();Ext.lib.Ajax=function(){var activeX=['MSXML2.XMLHTTP.3.0','MSXML2.XMLHTTP','Microsoft.XMLHTTP'];function setHeader(o){var conn=o.conn,prop;function setTheHeaders(conn,headers){for(prop in headers){if(headers.hasOwnProperty(prop)){conn.setRequestHeader(prop,headers[prop]);}}}
if(pub.defaultHeaders){setTheHeaders(conn,pub.defaultHeaders);}
if(pub.headers){setTheHeaders(conn,pub.headers);pub.headers=null;}}
function createExceptionObject(tId,callbackArg,isAbort,isTimeout){return{tId:tId,status:isAbort?-1:0,statusText:isAbort?'transaction aborted':'communication failure',isAbort:true,isTimeout:true,argument:callbackArg};}
function initHeader(label,value){(pub.headers=pub.headers||{})[label]=value;}
function createResponseObject(o,callbackArg){var headerObj={},headerStr,conn=o.conn;try{headerStr=o.conn.getAllResponseHeaders();Ext.each(headerStr.split('\n'),function(v){var t=v.split(':');headerObj[t[0]]=t[1];});}catch(e){}
return{tId:o.tId,status:conn.status,statusText:conn.statusText,getResponseHeader:headerObj,getAllResponseHeaders:headerStr,responseText:conn.responseText,responseXML:conn.responseXML,argument:callbackArg};}
function releaseObject(o){o.conn=null;o=null;}
function handleTransactionResponse(o,callback,isAbort,isTimeout){if(!callback){releaseObject(o);return;}
var httpStatus,responseObject;try{if(o.conn.status!==undefined&&o.conn.status!=0){httpStatus=o.conn.status;}
else{httpStatus=13030;}}
catch(e){httpStatus=13030;}
if((httpStatus>=200&&httpStatus<300)||(Ext.isIE&&httpStatus==1223)){responseObject=createResponseObject(o,callback.argument);if(callback.success){if(!callback.scope){callback.success(responseObject);}
else{callback.success.apply(callback.scope,[responseObject]);}}}
else{switch(httpStatus){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:responseObject=createExceptionObject(o.tId,callback.argument,(isAbort?isAbort:false),isTimeout);if(callback.failure){if(!callback.scope){callback.failure(responseObject);}
else{callback.failure.apply(callback.scope,[responseObject]);}}
break;default:responseObject=createResponseObject(o,callback.argument);if(callback.failure){if(!callback.scope){callback.failure(responseObject);}
else{callback.failure.apply(callback.scope,[responseObject]);}}}}
releaseObject(o);responseObject=null;}
function handleReadyState(o,callback){callback=callback||{};var conn=o.conn,tId=o.tId,poll=pub.poll,cbTimeout=callback.timeout||null;if(cbTimeout){pub.timeout[tId]=setTimeout(function(){pub.abort(o,callback,true);},cbTimeout);}
poll[tId]=setInterval(function(){if(conn&&conn.readyState==4){clearInterval(poll[tId]);poll[tId]=null;if(cbTimeout){clearTimeout(pub.timeout[tId]);pub.timeout[tId]=null;}
handleTransactionResponse(o,callback);}},pub.pollInterval);}
function asyncRequest(method,uri,callback,postData){var o=getConnectionObject()||null;if(o){o.conn.open(method,uri,true);if(pub.useDefaultXhrHeader){initHeader('X-Requested-With',pub.defaultXhrHeader);}
if(postData&&pub.useDefaultHeader&&(!pub.headers||!pub.headers['Content-Type'])){initHeader('Content-Type',pub.defaultPostHeader);}
if(pub.defaultHeaders||pub.headers){setHeader(o);}
handleReadyState(o,callback);o.conn.send(postData||null);}
return o;}
function getConnectionObject(){var o;try{if(o=createXhrObject(pub.transactionId)){pub.transactionId++;}}catch(e){}finally{return o;}}
function createXhrObject(transactionId){var http;try{http=new XMLHttpRequest();}catch(e){for(var i=0;i<activeX.length;++i){try{http=new ActiveXObject(activeX[i]);break;}catch(e){}}}finally{return{conn:http,tId:transactionId};}}
var pub={request:function(method,uri,cb,data,options){if(options){var me=this,xmlData=options.xmlData,jsonData=options.jsonData;Ext.applyIf(me,options);if(xmlData||jsonData){initHeader('Content-Type',xmlData?'text/xml':'application/json');data=xmlData||Ext.encode(jsonData);}}
return asyncRequest(method||options.method||"POST",uri,cb,data);},serializeForm:function(form){var fElements=form.elements||(document.forms[form]||Ext.getDom(form)).elements,hasSubmit=false,encoder=encodeURIComponent,element,options,name,val,data='',type;Ext.each(fElements,function(element){name=element.name;type=element.type;if(!element.disabled&&name){if(/select-(one|multiple)/i.test(type)){Ext.each(element.options,function(opt){if(opt.selected){data+=String.format("{0}={1}&",encoder(name),(opt.hasAttribute?opt.hasAttribute('value'):opt.getAttribute('value')!==null)?opt.value:opt.text);}});}else if(!/file|undefined|reset|button/i.test(type)){if(!(/radio|checkbox/i.test(type)&&!element.checked)&&!(type=='submit'&&hasSubmit)){data+=encoder(name)+'='+encoder(element.value)+'&';hasSubmit=/submit/i.test(type);}}}});return data.substr(0,data.length-1);},useDefaultHeader:true,defaultPostHeader:'application/x-www-form-urlencoded; charset=UTF-8',useDefaultXhrHeader:true,defaultXhrHeader:'XMLHttpRequest',poll:{},timeout:{},pollInterval:50,transactionId:0,abort:function(o,callback,isTimeout){var me=this,tId=o.tId,isAbort=false;if(me.isCallInProgress(o)){o.conn.abort();clearInterval(me.poll[tId]);me.poll[tId]=null;if(isTimeout){me.timeout[tId]=null;}
handleTransactionResponse(o,callback,(isAbort=true),isTimeout);}
return isAbort;},isCallInProgress:function(o){return o.conn&&!{0:true,4:true}[o.conn.readyState];}};return pub;}();Ext.lib.Region=function(t,r,b,l){var me=this;me.top=t;me[1]=t;me.right=r;me.bottom=b;me.left=l;me[0]=l;};Ext.lib.Region.prototype={contains:function(region){var me=this;return(region.left>=me.left&&region.right<=me.right&&region.top>=me.top&&region.bottom<=me.bottom);},getArea:function(){var me=this;return((me.bottom-me.top)*(me.right-me.left));},intersect:function(region){var me=this,t=Math.max(me.top,region.top),r=Math.min(me.right,region.right),b=Math.min(me.bottom,region.bottom),l=Math.max(me.left,region.left);if(b>=t&&r>=l){return new Ext.lib.Region(t,r,b,l);}},union:function(region){var me=this,t=Math.min(me.top,region.top),r=Math.max(me.right,region.right),b=Math.max(me.bottom,region.bottom),l=Math.min(me.left,region.left);return new Ext.lib.Region(t,r,b,l);},constrainTo:function(r){var me=this;me.top=me.top.constrain(r.top,r.bottom);me.bottom=me.bottom.constrain(r.top,r.bottom);me.left=me.left.constrain(r.left,r.right);me.right=me.right.constrain(r.left,r.right);return me;},adjust:function(t,l,b,r){var me=this;me.top+=t;me.left+=l;me.right+=r;me.bottom+=b;return me;}};Ext.lib.Region.getRegion=function(el){var p=Ext.lib.Dom.getXY(el),t=p[1],r=p[0]+el.offsetWidth,b=p[1]+el.offsetHeight,l=p[0];return new Ext.lib.Region(t,r,b,l);};Ext.lib.Point=function(x,y){if(Ext.isArray(x)){y=x[1];x=x[0];}
var me=this;me.x=me.right=me.left=me[0]=x;me.y=me.top=me.bottom=me[1]=y;};Ext.lib.Point.prototype=new Ext.lib.Region();(function(){var EXTLIB=Ext.lib,noNegativesRE=/width|height|opacity|padding/i,defaultUnitRE=/width|height|top$|bottom$|left$|right$/i,offsetUnitRE=/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i;EXTLIB.Anim={motion:function(el,args,duration,easing,cb,scope){return this.run(el,args,duration,easing,cb,scope,EXTLIB.Motion);},run:function(el,args,duration,easing,cb,scope,type){type=type||EXTLIB.AnimBase;var anim=new type(el,args,duration,EXTLIB.Easing[easing]||easing);anim.animate(function(){if(cb)cb.call(scope);});return anim;}};EXTLIB.AnimBase=function(el,attrs,duration,method){if(el){this.init(el,attrs,duration,method);}};EXTLIB.AnimBase.prototype={doMethod:function(attr,start,end){var me=this;return me.method(me.curFrame,start,end-start,me.totalFrames);},setAttr:function(attr,val,unit){if(noNegativesRE.test(attr)&&val<0){val=0;}
Ext.fly(this.el,'_anim').setStyle(attr,val+unit);},getAttr:function(attr){var flyEl=fly(this.el),val=flyEl.getStyle(attr),getter;if(val!=='auto'&&!offsetUnitRE.test(val)){return parseFloat(val);}
getter=flyEl['get'+attr.charAt(0).toUpperCase()+attr.substr(1)];return getter?getter.call(flyEl):0;},setRunAttr:function(attr){var me=this,isEmpty=Ext.isEmpty,a=me.attrs[attr],unit=a.unit,by=a.by,from=a.from,to=a.to,ra=(me.runAttrs[attr]={}),start,end;if(isEmpty(to)&&isEmpty(by))return false;start=!isEmpty(from)?from:me.getAttr(attr);end=!isEmpty(to)?to:[];if(!isEmpty(by)){if(Ext.isArray(start)){Ext.each(start,function(v,i,s){end[i]=v+by[i];});}else{end=start+by;}}
ra.start=start;ra.end=end;ra.unit=!isEmpty(unit)?unit:(defaultUnitRE.test(attr)?'px':'');},init:function(el,attribute,duration,method){var me=this,actualFrames=0,ease=EXTLIB.Easing,anmgr=EXTLIB.AnimMgr;me.attrs=attribute||{};me.dur=duration||1;me.method=method||ease.easeNone;me.useSec=true;me.curFrame=0;me.totalFrames=anmgr.fps;me.el=Ext.getDom(el);me.isAnimated=false;me.startTime=null;me.runAttrs={};me.animate=function(callback,scope){function f(){var me=this;me.onComplete.removeListener(f);if(typeof callback=="function"){callback.call(scope||me,me);}};var me=this;me.onComplete.addListener(f,me);me.curFrame=0;me.totalFrames=(me.useSec)?Math.ceil(anmgr.fps*duration):duration;if(!me.isAnimated)anmgr.registerElement(me);};me.stop=function(finish){if(finish){me.curFrame=me.totalFrames;me._onTween.fire();}
anmgr.stop(me);};function onStart(){me.onStart.fire();me.runAttrs={};for(var attr in me.attrs){me.setRunAttr(attr);}
me.isAnimated=!!(me.startTime=new Date());actualFrames=0;};function onTween(){me.onTween.fire({duration:new Date()-me.startTime,curFrame:me.curFrame});for(var attr in me.runAttrs){var ra=me.runAttrs[attr];me.setAttr(attr,me.doMethod(attr,ra.start,ra.end),ra.unit);}
actualFrames++;};function onComplete(){me.isAnimated=false;me.onComplete.fire({duration:(new Date()-me.startTime)/1000,frames:actualFrames,fps:actualFrames/this.duration});actualFrames=0;};me.onStart=new Ext.util.Event(me);me.onTween=new Ext.util.Event(me);me.onComplete=new Ext.util.Event(me);(me._onStart=new Ext.util.Event(me)).addListener(onStart);(me._onTween=new Ext.util.Event(me)).addListener(onTween);(me._onComplete=new Ext.util.Event(me)).addListener(onComplete);}};EXTLIB.AnimMgr=function(){var thread=new Ext.util.TaskRunner(),pub;function correctFrame(tween){var frames=tween.totalFrames,frame=tween.curFrame,duration=tween.dur,expected=(frame*duration*1000/frames),elapsed=(new Date()-tween.startTime),tweak=0;if(elapsed<duration*1000){tweak=Math.round((elapsed/expected-1)*frame);}else{tweak=frames-(frame+1);}
if(tweak>0&&isFinite(tweak)){if(frame+tweak>=frames){tweak=frames-(frame+1);}
tween.curFrame+=tweak;}};pub={fps:1000,delay:1,registerElement:function(tween){tween.run=function(tween){if(!tween||!tween.isAnimated){return;}
if(tween.curFrame++<tween.totalFrames){if(tween.useSec){correctFrame(tween);}
tween._onTween.fire();}else{pub.stop(tween);}};tween.args=[tween];tween.scope=pub;tween.onStop=function(){tween._onComplete.fire();};tween.interval=pub.delay;thread.start(tween);tween._onStart.fire();},stop:function(tween){thread.stop(tween);}}
return pub;}();EXTLIB.Easing={easeNone:function(t,b,c,d){return c*t/d+b;},easeIn:function(t,b,c,d){return c*(t/=d)*t+b;},easeOut:function(t,b,c,d){return-c*(t/=d)*(t-2)+b;}};(function(){function bezier(points,t){var len=points.length,tmp=points.slice(0),C=(1-t),i,j;for(j=1;j<len;++j){for(i=0;i<len-j;++i){var ti=tmp[i];ti[0]=C*ti[0]+t*tmp[i+1][0];ti[1]=C*ti[1]+t*tmp[i+1][1];}}
return[tmp[0][0],tmp[0][1]];}
EXTLIB.Motion=function(el,attrs,duration,method){if(el){EXTLIB.Motion.superclass.constructor.call(this,el,attrs,duration,method);}};Ext.extend(EXTLIB.Motion,EXTLIB.AnimBase);var superclass=EXTLIB.Motion.superclass,pointsRE=/^points$/i;Ext.apply(EXTLIB.Motion.prototype,{setAttr:function(attr,val,unit){var setAttr=superclass.setAttr,me=this;if(pointsRE.test(attr)){unit=unit||'px';setAttr.call(me,'left',val[0],unit);setAttr.call(me,'top',val[1],unit);}else{setAttr.call(me,attr,val,unit);}},getAttr:function(attr){var getAttr=superclass.getAttr,me=this;return pointsRE.test(attr)?[getAttr.call(me,'left'),getAttr.call(me,'top')]:getAttr.call(me,attr);},doMethod:function(attr,start,end){var me=this;return pointsRE.test(attr)?bezier(me.runAttrs[attr],me.method(me.curFrame,0,100,me.totalFrames)/100):superclass.doMethod.call(me,attr,start,end);},setRunAttr:function(attr){var me=this;if(pointsRE.test(attr)){var el=me.el,attrs=me.attrs,points=attrs.points,control=points.control||[],runAttrs=me.runAttrs,getXY=EXTLIB.Dom.getXY,from=attrs.points.from||getXY(el),start;function translateValues(val,start,to){var pageXY=to?getXY(me.el):[0,0];return val?[(val[0]||0)-pageXY[0]+start[0],(val[1]||0)-pageXY[1]+start[1]]:null;}
control=typeof control=="string"?[control]:Ext.toArray(control);Ext.fly(el,'_anim').position();EXTLIB.Dom.setXY(el,from);runAttrs[attr]=[start=me.getAttr('points')].concat(control);runAttrs[attr].push(translateValues(points.to||points.by||null,start,!Ext.isEmpty(points.to)));}
else{superclass.setRunAttr.call(me,attr);}}});})();})();(function(){var abs=Math.abs,pi=Math.PI,asin=Math.asin,pow=Math.pow,sin=Math.sin,EXTLIB=Ext.lib;Ext.apply(EXTLIB.Easing,{easeBoth:function(t,b,c,d){return((t/=d/2)<1)?c/2*t*t+b:-c/2*((--t)*(t-2)-1)+b;},easeInStrong:function(t,b,c,d){return c*(t/=d)*t*t*t+b;},easeOutStrong:function(t,b,c,d){return-c*((t=t/d-1)*t*t*t-1)+b;},easeBothStrong:function(t,b,c,d){return((t/=d/2)<1)?c/2*t*t*t*t+b:-c/2*((t-=2)*t*t*t-2)+b;},elasticIn:function(t,b,c,d,a,p){if(t==0||(t/=d)==1){return t==0?b:b+c;}
p=p||(d*.3);var s;if(a>=abs(c)){s=p/(2*pi)*asin(c/a);}else{a=c;s=p/4;}
return-(a*pow(2,10*(t-=1))*sin((t*d-s)*(2*pi)/p))+b;},elasticOut:function(t,b,c,d,a,p){if(t==0||(t/=d)==1){return t==0?b:b+c;}
p=p||(d*.3);var s;if(a>=abs(c)){s=p/(2*pi)*asin(c/a);}else{a=c;s=p/4;}
return a*pow(2,-10*t)*sin((t*d-s)*(2*pi)/p)+c+b;},elasticBoth:function(t,b,c,d,a,p){if(t==0||(t/=d/2)==2){return t==0?b:b+c;}
p=p||(d*(.3*1.5));var s;if(a>=abs(c)){s=p/(2*pi)*asin(c/a);}else{a=c;s=p/4;}
return t<1?-.5*(a*pow(2,10*(t-=1))*sin((t*d-s)*(2*pi)/p))+b:a*pow(2,-10*(t-=1))*sin((t*d-s)*(2*pi)/p)*.5+c+b;},backIn:function(t,b,c,d,s){s=s||1.70158;return c*(t/=d)*t*((s+1)*t-s)+b;},backOut:function(t,b,c,d,s){if(!s){s=1.70158;}
return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b;},backBoth:function(t,b,c,d,s){s=s||1.70158;return((t/=d/2)<1)?c/2*(t*t*(((s*=(1.525))+1)*t-s))+b:c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b;},bounceIn:function(t,b,c,d){return c-EXTLIB.Easing.bounceOut(d-t,0,c,d)+b;},bounceOut:function(t,b,c,d){if((t/=d)<(1/2.75)){return c*(7.5625*t*t)+b;}else if(t<(2/2.75)){return c*(7.5625*(t-=(1.5/2.75))*t+.75)+b;}else if(t<(2.5/2.75)){return c*(7.5625*(t-=(2.25/2.75))*t+.9375)+b;}
return c*(7.5625*(t-=(2.625/2.75))*t+.984375)+b;},bounceBoth:function(t,b,c,d){return(t<d/2)?EXTLIB.Easing.bounceIn(t*2,0,c,d)*.5+b:EXTLIB.Easing.bounceOut(t*2-d,0,c,d)*.5+c*.5+b;}});})();(function(){var EXTLIB=Ext.lib;EXTLIB.Anim.color=function(el,args,duration,easing,cb,scope){return EXTLIB.Anim.run(el,args,duration,easing,cb,scope,EXTLIB.ColorAnim);}
EXTLIB.ColorAnim=function(el,attributes,duration,method){EXTLIB.ColorAnim.superclass.constructor.call(this,el,attributes,duration,method);};Ext.extend(EXTLIB.ColorAnim,EXTLIB.AnimBase);var superclass=EXTLIB.ColorAnim.superclass,colorRE=/color$/i,transparentRE=/^transparent|rgba\(0, 0, 0, 0\)$/;function parseColor(s){var pi=parseInt,c;if(s.length==3){c=s;}else if(s.charAt(0)=="r"){c=s.replace(/[^0-9,]/g,"").split(',');c=[pi(c[1],10),pi(c[2],10),pi(c[3],10)];}else if(s.length<6){c=s.replace("#","").match(/./g);c=[pi(c[0]+c[0],16),pi(c[1]+c[1],16),pi(c[2]+c[2],16)];}else{c=s.replace("#","").match(/./g);c=[pi(c[0]+c[1],16),pi(c[2]+c[3],16),pi(c[4]+c[5],16)];}
return c;}
Ext.apply(EXTLIB.ColorAnim.prototype,{getAttr:function(attr){var me=this,el=me.el,val;if(colorRE.test(attr)){while(el&&transparentRE.test(val=fly(el).getStyle(attr))){el=el.parentNode;val="fff";}}else{val=superclass.getAttr.call(me,attr);}
return val;},doMethod:function(attr,start,end){var me=this,val,floor=Math.floor;if(colorRE.test(attr)){val=[];Ext.each(start,function(v,i){val[i]=superclass.doMethod.call(me,attr,v,end[i]);});val='rgb('+floor(val[0])+','+floor(val[1])+','+floor(val[2])+')';}else{val=superclass.doMethod.call(me,attr,start,end);}
return val;},setRunAttr:function(attr){var me=this,isEmpty=Ext.isEmpty;superclass.setRunAttr.call(me,attr);if(colorRE.test(attr)){var attribute=me.attrs[attr],ra=me.runAttrs[attr],start=parseColor(ra.start),end=parseColor(ra.end);if(isEmpty(attribute.to)&&!isEmpty(attribute.by)){end=parseColor(attribute.by);Ext.each(start,function(v,i){end[i]=v+end[i];});}
ra.start=start;ra.end=end;}}});})();(function(){var EXTLIB=Ext.lib;EXTLIB.Anim.scroll=function(el,args,duration,easing,cb,scope){return EXTLIB.Anim.run(el,args,duration,easing,cb,scope,EXTLIB.Scroll);}
EXTLIB.Scroll=function(el,attributes,duration,method){if(el){EXTLIB.Scroll.superclass.constructor.call(this,el,attributes,duration,method);}};Ext.extend(EXTLIB.Scroll,EXTLIB.ColorAnim);var Y=Ext.lib,superclass=EXTLIB.Scroll.superclass,SCROLL='scroll';Ext.apply(EXTLIB.Scroll.prototype,{toString:function(){var el=this.el;return("Scroll "+(el.id||el.tagName));},doMethod:function(attr,start,end){var val,me=this,curFrame=me.curFrame,totalFrames=me.totalFrames;if(attr==SCROLL){val=[me.method(curFrame,start[0],end[0]-start[0],totalFrames),me.method(curFrame,start[1],end[1]-start[1],totalFrames)];}else{val=superclass.doMethod.call(me,attr,start,end);}
return val;},getAttr:function(attr){var val=null,me=this;if(attr==SCROLL){val=[me.el.scrollLeft,me.el.scrollTop];}else{val=superclass.getAttr.call(me,attr);}
return val;},setAttr:function(attr,val,unit){var me=this;if(attr==SCROLL){me.el.scrollLeft=val[0];me.el.scrollTop=val[1];}else{superclass.setAttr.call(me,attr,val,unit);}}});})();if(Ext.isIE){function fnCleanUp(){var p=Function.prototype;delete p.createSequence;delete p.defer;delete p.createDelegate;delete p.createCallback;delete p.createInterceptor;window.detachEvent("onunload",fnCleanUp);}
window.attachEvent("onunload",fnCleanUp);}})();

/* extjs/ext-all.js */
Ext.DomHelper=function(){var u=null,l=/^(?:br|frame|hr|img|input|link|meta|range|spacer|wbr|area|param|col)$/i,n=/^table|tbody|tr|td$/i,r,o="afterbegin",p="afterend",d="beforebegin",q="beforeend",a="<table>",j="</table>",b=a+"<tbody>",k="</tbody>"+j,m=b+"<tr>",t="</tr>"+k;function h(z,B,A,C,y,w){var x=r.insertHtml(C,Ext.getDom(z),s(B));return A?Ext.get(x,true):x}function s(B){var y="",x,A,z,w,C;if(typeof B=="string"){y=B}else{if(Ext.isArray(B)){Ext.each(B,function(D){y+=s(D)})}else{y+="<"+(B.tag=B.tag||"div");for(x in B){A=B[x];if(!/tag|children|cn|html$/i.test(x)&&!Ext.isFunction(A)){if(Ext.isObject(A)){y+=" "+x+"='";for(z in A){w=A[z];y+=!Ext.isFunction(w)?z+":"+w+";":""}y+="'"}else{y+=" "+({cls:"class",htmlFor:"for"}[x]||x)+"='"+A+"'"}}}if(l.test(B.tag)){y+="/>"}else{y+=">";if(C=B.children||B.cn){y+=s(C)}else{if(B.html){y+=B.html}}y+="</"+B.tag+">"}}}return y}function g(B,z,y,A){u.innerHTML=[z,y,A].join("");var w=-1,x=u;while(++w<B){x=x.firstChild}return x}function e(w,x,z,y){var A,B;u=u||document.createElement("div");if(w=="td"&&(x==o||x==q)||!/td|tr|tbody/i.test(w)&&(x==d||x==p)){return}B=x==d?z:x==p?z.nextSibling:x==o?z.firstChild:null;if(x==d||x==p){z=z.parentNode}if(w=="td"||(w=="tr"&&(x==q||x==o))){A=g(4,m,y,t)}else{if((w=="tbody"&&(x==q||x==o))||(w=="tr"&&(x==d||x==p))){A=g(3,b,y,k)}else{A=g(2,a,y,j)}}z.insertBefore(A,B);return A}r={markup:function(w){return s(w)},insertHtml:function(B,w,C){var A={},y,E,D,F,z,x;B=B.toLowerCase();A[d]=["BeforeBegin","previousSibling"];A[p]=["AfterEnd","nextSibling"];if(w.insertAdjacentHTML){if(n.test(w.tagName)&&(x=e(w.tagName.toLowerCase(),B,w,C))){return x}A[o]=["AfterBegin","firstChild"];A[q]=["BeforeEnd","lastChild"];if(y=A[B]){w.insertAdjacentHTML(y[0],C);return w[y[1]]}}else{D=w.ownerDocument.createRange();E="setStart"+(/end/i.test(B)?"After":"Before");if(A[B]){D[E](w);F=D.createContextualFragment(C);w.parentNode.insertBefore(F,B==d?w:w.nextSibling);return w[(B==d?"previous":"next")+"Sibling"]}else{z=(B==o?"first":"last")+"Child";if(w.firstChild){D[E](w[z]);F=D.createContextualFragment(C);B==o?w.insertBefore(F,w.firstChild):w.appendChild(F)}else{w.innerHTML=C}return w[z]}}throw'Illegal insertion point -> "'+B+'"'},insertBefore:function(w,y,x){return h(w,y,x,d)},insertAfter:function(w,y,x){return h(w,y,x,p,"nextSibling")},insertFirst:function(w,y,x){return h(w,y,x,o,"firstChild")},append:function(w,y,x){return h(w,y,x,q,"",true)},overwrite:function(w,y,x){w=Ext.getDom(w);w.innerHTML=s(y);return x?Ext.get(w.firstChild):w.firstChild},createHtml:s};return r}();Ext.apply(Ext.DomHelper,function(){var e,a="afterbegin",h="afterend",j="beforebegin",d="beforeend";function g(n,q,p,r,m,k){n=Ext.getDom(n);var l;if(e.useDom){l=b(q,null);if(k){n.appendChild(l)}else{(m=="firstChild"?n:n.parentNode).insertBefore(l,n[m]||n)}}else{l=Ext.DomHelper.insertHtml(r,n,Ext.DomHelper.createHtml(q))}return p?Ext.get(l,true):l}function b(r,l){var n,p=document,m,k,q,s;if(Ext.isArray(r)){n=p.createDocumentFragment();Ext.each(r,function(o){b(o,n)})}else{if(typeof r=="string"){n=p.createTextNode(r)}else{n=p.createElement(r.tag||"div");m=!!n.setAttribute;for(k in r){q=r[k];if(["tag","children","cn","html","style"].indexOf(k)==-1||!Ext.isFunction(q)){if(k=="cls"){n.className=q}else{m?n.setAttribute(k,q):n[k]=q}}}e.applyStyles(n,r.style);if(s=r.children||r.cn){b(s,n)}else{if(r.html){n.innerHTML=r.html}}}}if(l){l.appendChild(n)}return n}e={createTemplate:function(l){var k=Ext.DomHelper.createHtml(l);return new Ext.Template(k)},useDom:false,applyStyles:function(n,o){if(o){var l=0,k,m;n=Ext.fly(n);if(Ext.isFunction(o)){o=o.call()}if(typeof o=="string"){o=o.split(/:|;/g);for(k=o.length;l<k;){n.setStyle(o[l++],o[l++])}}else{if(Ext.isObject(o)){n.setStyle(o)}}}},insertBefore:function(k,m,l){return g(k,m,l,j)},insertAfter:function(k,m,l){return g(k,m,l,h,"nextSibling")},insertFirst:function(k,m,l){return g(k,m,l,a,"firstChild")},append:function(k,m,l){return g(k,m,l,d,"",true)},createDom:b};return e}());Ext.Template=function(e){var g=this,b=arguments,d=[];if(Ext.isArray(e)){e=e.join("")}else{if(b.length>1){Ext.each(b,function(a){if(Ext.isObject(a)){Ext.apply(g,a)}else{d.push(a)}});e=d.join("")}}g.html=e;if(g.compiled){g.compile()}};Ext.Template.prototype={applyTemplate:function(a){var b=this;return b.compiled?b.compiled(a):b.html.replace(b.re,function(d,e){return a[e]!==undefined?a[e]:""})},set:function(a,d){var b=this;b.html=a;b.compiled=null;return d?b.compile():b},re:/\{([\w-]+)\}/g,compile:function(){var me=this,sep=Ext.isGecko?"+":",";function fn(m,name){name="values['"+name+"']";return"'"+sep+"("+name+" == undefined ? '' : "+name+")"+sep+"'"}eval("this.compiled = function(values){ return "+(Ext.isGecko?"'":"['")+me.html.replace(/\\/g,"\\\\").replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn)+(Ext.isGecko?"';};":"'].join('');};"));return me},insertFirst:function(b,a,d){return this.doInsert("afterBegin",b,a,d)},insertBefore:function(b,a,d){return this.doInsert("beforeBegin",b,a,d)},insertAfter:function(b,a,d){return this.doInsert("afterEnd",b,a,d)},append:function(b,a,d){return this.doInsert("beforeEnd",b,a,d)},doInsert:function(d,g,b,a){g=Ext.getDom(g);var e=Ext.DomHelper.insertHtml(d,g,this.applyTemplate(b));return a?Ext.get(e,true):e},overwrite:function(b,a,d){b=Ext.getDom(b);b.innerHTML=this.applyTemplate(a);return d?Ext.get(b.firstChild,true):b.firstChild}};Ext.Template.prototype.apply=Ext.Template.prototype.applyTemplate;Ext.Template.from=function(b,a){b=Ext.getDom(b);return new Ext.Template(b.value||b.innerHTML,a||"")};Ext.apply(Ext.Template.prototype,{applyTemplate:function(b){var h=this,a=h.disableFormats!==true,g=Ext.util.Format,d=h;if(h.compiled){return h.compiled(b)}function e(k,n,q,l){if(q&&a){if(q.substr(0,5)=="this."){return d.call(q.substr(5),b[n],b)}else{if(l){var p=/^\s*['"](.*)["']\s*$/;l=l.split(",");for(var o=0,j=l.length;o<j;o++){l[o]=l[o].replace(p,"$1")}l=[b[n]].concat(l)}else{l=[b[n]]}return g[q].apply(g,l)}}else{return b[n]!==undefined?b[n]:""}}return h.html.replace(h.re,e)},disableFormats:false,re:/\{([\w-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g,compile:function(){var me=this,fm=Ext.util.Format,useF=me.disableFormats!==true,sep=Ext.isGecko?"+":",",body;function fn(m,name,format,args){if(format&&useF){args=args?","+args:"";if(format.substr(0,5)!="this."){format="fm."+format+"("}else{format='this.call("'+format.substr(5)+'", ';args=", values"}}else{args="";format="(values['"+name+"'] == undefined ? '' : "}return"'"+sep+format+"values['"+name+"']"+args+")"+sep+"'"}if(Ext.isGecko){body="this.compiled = function(values){ return '"+me.html.replace(/\\/g,"\\\\").replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn)+"';};"}else{body=["this.compiled = function(values){ return ['"];body.push(me.html.replace(/\\/g,"\\\\").replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn));body.push("'].join('');};");body=body.join("")}eval(body);return me},call:function(d,b,a){return this[d](b,a)}});Ext.Template.prototype.apply=Ext.Template.prototype.applyTemplate;Ext.DomQuery=function(){var cache={},simpleCache={},valueCache={},nonSpace=/\S/,trimRe=/^\s+|\s+$/g,tplRe=/\{(\d+)\}/g,modeRe=/^(\s?[\/>+~]\s?|\s|$)/,tagTokenRe=/^(#)?([\w-\*]+)/,nthRe=/(\d*)n\+?(\d*)/,nthRe2=/\D/,isIE=window.ActiveXObject?true:false,key=30803;eval("var batch = 30803;");function child(p,index){var i=0,n=p.firstChild;while(n){if(n.nodeType==1){if(++i==index){return n}}n=n.nextSibling}return null}function next(n){while((n=n.nextSibling)&&n.nodeType!=1){}return n}function prev(n){while((n=n.previousSibling)&&n.nodeType!=1){}return n}function children(d){var n=d.firstChild,ni=-1,nx;while(n){nx=n.nextSibling;if(n.nodeType==3&&!nonSpace.test(n.nodeValue)){d.removeChild(n)}else{n.nodeIndex=++ni}n=nx}return this}function byClassName(c,a,v){if(!v){return c}var r=[],ri=-1,cn;for(var i=0,ci;ci=c[i];i++){if((" "+ci.className+" ").indexOf(v)!=-1){r[++ri]=ci}}return r}function attrValue(n,attr){if(!n.tagName&&typeof n.length!="undefined"){n=n[0]}if(!n){return null}if(attr=="for"){return n.htmlFor}if(attr=="class"||attr=="className"){return n.className}return n.getAttribute(attr)||n[attr]}function getNodes(ns,mode,tagName){var result=[],ri=-1,cs;if(!ns){return result}tagName=tagName||"*";if(typeof ns.getElementsByTagName!="undefined"){ns=[ns]}if(!mode){for(var i=0,ni;ni=ns[i];i++){cs=ni.getElementsByTagName(tagName);for(var j=0,ci;ci=cs[j];j++){result[++ri]=ci}}}else{if(mode=="/"||mode==">"){var utag=tagName.toUpperCase();for(var i=0,ni,cn;ni=ns[i];i++){cn=ni.children||ni.childNodes;for(var j=0,cj;cj=cn[j];j++){if(cj.nodeName==utag||cj.nodeName==tagName||tagName=="*"){result[++ri]=cj}}}}else{if(mode=="+"){var utag=tagName.toUpperCase();for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(n&&(n.nodeName==utag||n.nodeName==tagName||tagName=="*")){result[++ri]=n}}}else{if(mode=="~"){for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&(n.nodeType!=1||(tagName=="*"||n.tagName.toLowerCase()!=tagName))){}if(n){result[++ri]=n}}}}}}return result}function concat(a,b){if(b.slice){return a.concat(b)}for(var i=0,l=b.length;i<l;i++){a[a.length]=b[i]}return a}function byTag(cs,tagName){if(cs.tagName||cs==document){cs=[cs]}if(!tagName){return cs}var r=[],ri=-1;tagName=tagName.toLowerCase();for(var i=0,ci;ci=cs[i];i++){if(ci.nodeType==1&&ci.tagName.toLowerCase()==tagName){r[++ri]=ci}}return r}function byId(cs,attr,id){if(cs.tagName||cs==document){cs=[cs]}if(!id){return cs}var r=[],ri=-1;for(var i=0,ci;ci=cs[i];i++){if(ci&&ci.id==id){r[++ri]=ci;return r}}return r}function byAttribute(cs,attr,value,op,custom){var r=[],ri=-1,st=custom=="{",f=Ext.DomQuery.operators[op];for(var i=0,ci;ci=cs[i];i++){if(ci.nodeType!=1){continue}var a;if(st){a=Ext.DomQuery.getStyle(ci,attr)}else{if(attr=="class"||attr=="className"){a=ci.className}else{if(attr=="for"){a=ci.htmlFor}else{if(attr=="href"){a=ci.getAttribute("href",2)}else{a=ci.getAttribute(attr)}}}}if((f&&f(a,value))||(!f&&a)){r[++ri]=ci}}return r}function byPseudo(cs,name,value){return Ext.DomQuery.pseudos[name](cs,value)}function nodupIEXml(cs){var d=++key,r;cs[0].setAttribute("_nodup",d);r=[cs[0]];for(var i=1,len=cs.length;i<len;i++){var c=cs[i];if(!c.getAttribute("_nodup")!=d){c.setAttribute("_nodup",d);r[r.length]=c}}for(var i=0,len=cs.length;i<len;i++){cs[i].removeAttribute("_nodup")}return r}function nodup(cs){if(!cs){return[]}var len=cs.length,c,i,r=cs,cj,ri=-1;if(!len||typeof cs.nodeType!="undefined"||len==1){return cs}if(isIE&&typeof cs[0].selectSingleNode!="undefined"){return nodupIEXml(cs)}var d=++key;cs[0]._nodup=d;for(i=1;c=cs[i];i++){if(c._nodup!=d){c._nodup=d}else{r=[];for(var j=0;j<i;j++){r[++ri]=cs[j]}for(j=i+1;cj=cs[j];j++){if(cj._nodup!=d){cj._nodup=d;r[++ri]=cj}}return r}}return r}function quickDiffIEXml(c1,c2){var d=++key,r=[];for(var i=0,len=c1.length;i<len;i++){c1[i].setAttribute("_qdiff",d)}for(var i=0,len=c2.length;i<len;i++){if(c2[i].getAttribute("_qdiff")!=d){r[r.length]=c2[i]}}for(var i=0,len=c1.length;i<len;i++){c1[i].removeAttribute("_qdiff")}return r}function quickDiff(c1,c2){var len1=c1.length,d=++key,r=[];if(!len1){return c2}if(isIE&&c1[0].selectSingleNode){return quickDiffIEXml(c1,c2)}for(var i=0;i<len1;i++){c1[i]._qdiff=d}for(var i=0,len=c2.length;i<len;i++){if(c2[i]._qdiff!=d){r[r.length]=c2[i]}}return r}function quickId(ns,mode,root,id){if(ns==root){var d=root.ownerDocument||root;return d.getElementById(id)}ns=getNodes(ns,mode,"*");return byId(ns,null,id)}return{getStyle:function(el,name){return Ext.fly(el).getStyle(name)},compile:function(path,type){type=type||"select";var fn=["var f = function(root){\n var mode; ++batch; var n = root || document;\n"],q=path,mode,lq,tk=Ext.DomQuery.matchers,tklen=tk.length,mm,lmode=q.match(modeRe);if(lmode&&lmode[1]){fn[fn.length]='mode="'+lmode[1].replace(trimRe,"")+'";';q=q.replace(lmode[1],"")}while(path.substr(0,1)=="/"){path=path.substr(1)}while(q&&lq!=q){lq=q;var tm=q.match(tagTokenRe);if(type=="select"){if(tm){if(tm[1]=="#"){fn[fn.length]='n = quickId(n, mode, root, "'+tm[2]+'");'}else{fn[fn.length]='n = getNodes(n, mode, "'+tm[2]+'");'}q=q.replace(tm[0],"")}else{if(q.substr(0,1)!="@"){fn[fn.length]='n = getNodes(n, mode, "*");'}}}else{if(tm){if(tm[1]=="#"){fn[fn.length]='n = byId(n, null, "'+tm[2]+'");'}else{fn[fn.length]='n = byTag(n, "'+tm[2]+'");'}q=q.replace(tm[0],"")}}while(!(mm=q.match(modeRe))){var matched=false;for(var j=0;j<tklen;j++){var t=tk[j];var m=q.match(t.re);if(m){fn[fn.length]=t.select.replace(tplRe,function(x,i){return m[i]});q=q.replace(m[0],"");matched=true;break}}if(!matched){throw'Error parsing selector, parsing failed at "'+q+'"'}}if(mm[1]){fn[fn.length]='mode="'+mm[1].replace(trimRe,"")+'";';q=q.replace(mm[1],"")}}fn[fn.length]="return nodup(n);\n}";eval(fn.join(""));return f},select:function(path,root,type){if(!root||root==document){root=document}if(typeof root=="string"){root=document.getElementById(root)}var paths=path.split(","),results=[];for(var i=0,len=paths.length;i<len;i++){var p=paths[i].replace(trimRe,"");if(!cache[p]){cache[p]=Ext.DomQuery.compile(p);if(!cache[p]){throw p+" is not a valid selector"}}var result=cache[p](root);if(result&&result!=document){results=results.concat(result)}}if(paths.length>1){return nodup(results)}return results},selectNode:function(path,root){return Ext.DomQuery.select(path,root)[0]},selectValue:function(path,root,defaultValue){path=path.replace(trimRe,"");if(!valueCache[path]){valueCache[path]=Ext.DomQuery.compile(path,"select")}var n=valueCache[path](root),v;n=n[0]?n[0]:n;v=(n&&n.firstChild?n.firstChild.nodeValue:null);return((v===null||v===undefined||v==="")?defaultValue:v)},selectNumber:function(path,root,defaultValue){var v=Ext.DomQuery.selectValue(path,root,defaultValue||0);return parseFloat(v)},is:function(el,ss){if(typeof el=="string"){el=document.getElementById(el)}var isArray=Ext.isArray(el),result=Ext.DomQuery.filter(isArray?el:[el],ss);return isArray?(result.length==el.length):(result.length>0)},filter:function(els,ss,nonMatches){ss=ss.replace(trimRe,"");if(!simpleCache[ss]){simpleCache[ss]=Ext.DomQuery.compile(ss,"simple")}var result=simpleCache[ss](els);return nonMatches?quickDiff(result,els):result},matchers:[{re:/^\.([\w-]+)/,select:'n = byClassName(n, null, " {1} ");'},{re:/^\:([\w-]+)(?:\(((?:[^\s>\/]*|.*?))\))?/,select:'n = byPseudo(n, "{1}", "{2}");'},{re:/^(?:([\[\{])(?:@)?([\w-]+)\s?(?:(=|.=)\s?['"]?(.*?)["']?)?[\]\}])/,select:'n = byAttribute(n, "{2}", "{4}", "{3}", "{1}");'},{re:/^#([\w-]+)/,select:'n = byId(n, null, "{1}");'},{re:/^@([\w-]+)/,select:'return {firstChild:{nodeValue:attrValue(n, "{1}")}};'}],operators:{"=":function(a,v){return a==v},"!=":function(a,v){return a!=v},"^=":function(a,v){return a&&a.substr(0,v.length)==v},"$=":function(a,v){return a&&a.substr(a.length-v.length)==v},"*=":function(a,v){return a&&a.indexOf(v)!==-1},"%=":function(a,v){return(a%v)==0},"|=":function(a,v){return a&&(a==v||a.substr(0,v.length+1)==v+"-")},"~=":function(a,v){return a&&(" "+a+" ").indexOf(" "+v+" ")!=-1}},pseudos:{"first-child":function(c){var r=[],ri=-1,n;for(var i=0,ci;ci=n=c[i];i++){while((n=n.previousSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci}}return r},"last-child":function(c){var r=[],ri=-1,n;for(var i=0,ci;ci=n=c[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci}}return r},"nth-child":function(c,a){var r=[],ri=-1,m=nthRe.exec(a=="even"&&"2n"||a=="odd"&&"2n+1"||!nthRe2.test(a)&&"n+"+a||a),f=(m[1]||1)-0,l=m[2]-0;for(var i=0,n;n=c[i];i++){var pn=n.parentNode;if(batch!=pn._batch){var j=0;for(var cn=pn.firstChild;cn;cn=cn.nextSibling){if(cn.nodeType==1){cn.nodeIndex=++j}}pn._batch=batch}if(f==1){if(l==0||n.nodeIndex==l){r[++ri]=n}}else{if((n.nodeIndex+l)%f==0){r[++ri]=n}}}return r},"only-child":function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(!prev(ci)&&!next(ci)){r[++ri]=ci}}return r},empty:function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var cns=ci.childNodes,j=0,cn,empty=true;while(cn=cns[j]){++j;if(cn.nodeType==1||cn.nodeType==3){empty=false;break}}if(empty){r[++ri]=ci}}return r},contains:function(c,v){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if((ci.textContent||ci.innerText||"").indexOf(v)!=-1){r[++ri]=ci}}return r},nodeValue:function(c,v){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(ci.firstChild&&ci.firstChild.nodeValue==v){r[++ri]=ci}}return r},checked:function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(ci.checked==true){r[++ri]=ci}}return r},not:function(c,ss){return Ext.DomQuery.filter(c,ss,true)},any:function(c,selectors){var ss=selectors.split("|"),r=[],ri=-1,s;for(var i=0,ci;ci=c[i];i++){for(var j=0;s=ss[j];j++){if(Ext.DomQuery.is(ci,s)){r[++ri]=ci;break}}}return r},odd:function(c){return this["nth-child"](c,"odd")},even:function(c){return this["nth-child"](c,"even")},nth:function(c,a){return c[a-1]||[]},first:function(c){return c[0]||[]},last:function(c){return c[c.length-1]||[]},has:function(c,ss){var s=Ext.DomQuery.select,r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(s(ss,ci).length>0){r[++ri]=ci}}return r},next:function(c,ss){var is=Ext.DomQuery.is,r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=next(ci);if(n&&is(n,ss)){r[++ri]=ci}}return r},prev:function(c,ss){var is=Ext.DomQuery.is,r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=prev(ci);if(n&&is(n,ss)){r[++ri]=ci}}return r}}}}();Ext.query=Ext.DomQuery.select;(function(){var k=Ext.util,n=Ext.toArray,m=Ext.each,a=Ext.isObject,j=true,l=false;k.Observable=function(){var o=this,p=o.events;if(o.listeners){o.on(o.listeners);delete o.listeners}o.events=p||{}};k.Observable.prototype=function(){var p=/^(?:scope|delay|buffer|single)$/,o=function(q){return q.toLowerCase()};return{fireEvent:function(){var r=n(arguments),t=o(r[0]),u=this,s=j,x=u.events[t],w,y;if(u.eventsSuspended===j){if(w=u.suspendedEventsQueue){w.push(r)}}else{if(a(x)&&x.bubble){if(x.fire.apply(x,r.slice(1))===l){return l}y=u.getBubbleTarget&&u.getBubbleTarget();if(y&&y.enableBubble){y.enableBubble(t);return y.fireEvent.apply(y,r)}}else{if(a(x)){r.shift();s=x.fire.apply(x,r)}}}return s},addListener:function(s,w,y,r){var u=this,t,z,x,q;if(a(s)){r=s;for(t in r){z=r[t];if(!p.test(t)){u.addListener(t,z.fn||z,z.scope||r.scope,z.fn?z:r)}}}else{s=o(s);q=u.events[s]||j;if(typeof q=="boolean"){u.events[s]=q=new k.Event(u,s)}q.addListener(w,y,a(r)?r:{})}},removeListener:function(q,s,r){var t=this.events[o(q)];if(a(t)){t.removeListener(s,r)}},purgeListeners:function(){var s=this.events,q,r;for(r in s){q=s[r];if(a(q)){q.clearListeners()}}},addEvents:function(r){var q=this;q.events=q.events||{};if(typeof r=="string"){m(arguments,function(s){q.events[s]=q.events[s]||j})}else{Ext.applyIf(q.events,r)}},hasListener:function(q){var r=this.events[q];return a(r)&&r.listeners.length>0},suspendEvents:function(q){this.eventsSuspended=j;if(q){this.suspendedEventsQueue=[]}},resumeEvents:function(){var q=this;q.eventsSuspended=!delete q.suspendedEventQueue;m(q.suspendedEventsQueue,function(r){q.fireEvent.apply(q,r)})}}}();var g=k.Observable.prototype;g.on=g.addListener;g.un=g.removeListener;k.Observable.releaseCapture=function(p){p.fireEvent=g.fireEvent};function h(q,r,p){return function(){if(r.target==arguments[0]){q.apply(p,n(arguments))}}}function d(r,s,q){var p=new k.DelayedTask();return function(){p.delay(s.buffer,r,q,n(arguments))}}function e(q,r,p,o){return function(){r.removeListener(p,o);return q.apply(o,arguments)}}function b(q,r,p){return function(){var o=n(arguments);(function(){q.apply(p,o)}).defer(r.delay||10)}}k.Event=function(p,o){this.name=o;this.obj=p;this.listeners=[]};k.Event.prototype={addListener:function(r,q,p){var s=this,o;q=q||s.obj;if(!s.isListening(r,q)){o=s.createListener(r,q,p);if(s.firing){s.listeners=s.listeners.slice(0)}s.listeners.push(o)}},createListener:function(s,r,t){t=t||{},r=r||this.obj;var p={fn:s,scope:r,options:t},q=s;if(t.target){q=h(q,t,r)}if(t.delay){q=b(q,t,r)}if(t.single){q=e(q,this,s,r)}if(t.buffer){q=d(q,t,r)}p.fireFn=q;return p},findListener:function(r,q){var p,o=-1;m(this.listeners,function(s,t){p=s.scope;if(s.fn==r&&(p==q||p==this.obj)){o=t;return l}},this);return o},isListening:function(p,o){return this.findListener(p,o)!=-1},removeListener:function(r,q){var p,s=this,o=l;if((p=s.findListener(r,q))!=-1){if(s.firing){s.listeners=s.listeners.slice(0)}s.listeners.splice(p,1);o=j}return o},clearListeners:function(){this.listeners=[]},fire:function(){var q=this,p=n(arguments),o=j;m(q.listeners,function(r){q.firing=j;if(r.fireFn.apply(r.scope||q.obj||window,p)===l){return o=q.firing=l}});q.firing=l;return o}}})();Ext.apply(Ext.util.Observable.prototype,function(){function a(l){var k=(this.methodEvents=this.methodEvents||{})[l],g,d,h,j=this;if(!k){this.methodEvents[l]=k={};k.originalFn=this[l];k.methodName=l;k.before=[];k.after=[];function b(n,m,e){if(!Ext.isEmpty(d=n.apply(m||j,e))){if(Ext.isObject(d)){g=!Ext.isEmpty(d.returnValue)?d.returnValue:d;h=!!d.cancel}else{if(d===false){h=true}else{g=d}}}}this[l]=function(){var e=Ext.toArray(arguments);g=d=undefined;h=false;Ext.each(k.before,function(m){b(m.fn,m.scope,e);if(h){return g}});if(!Ext.isEmpty(d=k.originalFn.apply(j,e))){g=d}Ext.each(k.after,function(m){b(m.fn,m.scope,e);if(h){return g}});return g}}return k}return{beforeMethod:function(e,d,b){a.call(this,e).before.push({fn:d,scope:b})},afterMethod:function(e,d,b){a.call(this,e).after.push({fn:d,scope:b})},removeMethodListener:function(j,d,b){var h=a.call(this,j),g=false;Ext.each(h.before,function(e){if(e.fn==d&&e.scope==b){e.splice(i,1);g=true;return false}});if(!g){Ext.each(h.after,function(e){if(e.fn==d&&e.scope==b){e.splice(i,1);return false}})}},relayEvents:function(g,b){var e=this;function d(h){return function(){return e.fireEvent.apply(e,[h].concat(Ext.toArray(arguments)))}}Ext.each(b,function(h){e.events[h]=e.events[h]||true;g.on(h,d(h),e)})},enableBubble:function(b){var d=this;b=Ext.isArray(b)?b:Ext.toArray(arguments);Ext.each(b,function(e){e=e.toLowerCase();var g=d.events[e]||true;if(typeof g=="boolean"){g=new Ext.util.Event(d,e);d.events[e]=g}g.bubble=true})}}}());Ext.util.Observable.capture=function(d,b,a){d.fireEvent=d.fireEvent.createInterceptor(b,a)};Ext.util.Observable.observeClass=function(a){Ext.apply(a,new Ext.util.Observable());a.prototype.fireEvent=function(){return(a.fireEvent.apply(a,arguments)!==false)&&(Ext.util.Observable.prototype.fireEvent.apply(this,arguments)!==false)}};Ext.EventManager=function(){var w,o,l=false,n=Ext.lib.Event,p=Ext.lib.Dom,b=document,x=window,h="ie-deferred-loader",q="DOMContentLoaded",g={},j=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;function m(D,z,C,B,A){var F=Ext.id(D),E=g[F]=g[F]||{};(E[z]=E[z]||[]).push([C,B,A]);n.on(D,z,B);if(z=="mousewheel"&&D.addEventListener){var y=["DOMMouseScroll",B,false];D.addEventListener.apply(D,y);n.on(window,"unload",function(){D.removeEventListener.apply(D,y)})}if(z=="mousedown"&&D==document){Ext.EventManager.stoppedMouseDownEvent.addListener(B)}}function d(){if(!l){Ext.isReady=l=true;if(o){clearInterval(o)}if(Ext.isGecko||Ext.isOpera){b.removeEventListener(q,d,false)}if(Ext.isIE){var y=b.getElementById(h);if(y){y.onreadystatechange=null;y.parentNode.removeChild(y)}}if(w){w.fire();w.clearListeners()}}}function a(){var y="complete";w=new Ext.util.Event();if(Ext.isGecko||Ext.isOpera){b.addEventListener(q,d,false)}else{if(Ext.isIE){b.write("<script id="+h+' defer="defer" src="//:"><\/script>');b.getElementById(h).onreadystatechange=function(){if(this.readyState==y){d()}}}else{if(Ext.isWebKit){o=setInterval(function(){if(b.readyState==y){d()}},10)}}}n.on(x,"load",d)}function t(y,z){return function(){var A=Ext.toArray(arguments);if(z.target==Ext.EventObject.setEvent(A[0]).target){y.apply(this,A)}}}function u(z,A){var y=new Ext.util.DelayedTask(z);return function(B){y.delay(A.buffer,z,null,[new Ext.EventObjectImpl(B)])}}function r(C,B,y,A,z){return function(D){Ext.EventManager.removeListener(B,y,A,z);C(D)}}function e(y,z){return function(A){A=new Ext.EventObjectImpl(A);setTimeout(function(){y(A)},z.delay||10)}}function k(A,z,y,E,D){var F=!Ext.isObject(y)?{}:y,C=Ext.getDom(A);E=E||F.fn;D=D||F.scope;if(!C){throw'Error listening for "'+z+'". Element "'+A+"\" doesn't exist."}function B(H){if(!Ext){return}H=Ext.EventObject.setEvent(H);var G;if(F.delegate){if(!(G=H.getTarget(F.delegate,C))){return}}else{G=H.target}if(F.stopEvent){H.stopEvent()}if(F.preventDefault){H.preventDefault()}if(F.stopPropagation){H.stopPropagation()}if(F.normalized){H=H.browserEvent}E.call(D||C,H,G,F)}if(F.target){B=t(B,F)}if(F.delay){B=e(B,F)}if(F.single){B=r(B,C,z,E,D)}if(F.buffer){B=u(B,F)}m(C,z,E,B,D);return B}var s={addListener:function(A,y,C,B,z){if(Ext.isObject(y)){var F=y,D,E;for(D in F){E=F[D];if(!j.test(D)){if(Ext.isFunction(E)){k(A,D,F,E,F.scope)}else{k(A,D,E)}}}}else{k(A,y,z,C,B)}},removeListener:function(z,y,D,C){var B=Ext.getDom(z),E=Ext.id(B),A;Ext.each((g[E]||{})[y],function(G,H,F){if(Ext.isArray(G)&&G[0]==D&&(!C||G[2]==C)){n.un(B,y,A=G[1]);F.splice(H,1);return false}});if(y=="mousewheel"&&B.addEventListener&&A){B.removeEventListener("DOMMouseScroll",A,false)}if(y=="mousedown"&&B==b&&A){Ext.EventManager.stoppedMouseDownEvent.removeListener(A)}},removeAll:function(z){var B=Ext.id(z=Ext.getDom(z)),A=g[B],y;for(y in A){if(A.hasOwnProperty(y)){Ext.each(A[y],function(C){n.un(z,y,C.wrap)})}}g[B]=null},onDocumentReady:function(A,z,y){if(l){w.addListener(A,z,y);w.fire();w.clearListeners()}else{if(!w){a()}y=y||{};y.delay=y.delay||1;w.addListener(A,z,y)}},elHash:g};s.on=s.addListener;s.un=s.removeListener;s.stoppedMouseDownEvent=new Ext.util.Event();return s}();Ext.onReady=Ext.EventManager.onDocumentReady;(function(){var a=function(){var d=document.body||document.getElementsByTagName("body")[0];if(!d){return false}var b=[" ",Ext.isIE?"ext-ie "+(Ext.isIE6?"ext-ie6":(Ext.isIE7?"ext-ie7":"ext-ie8")):Ext.isGecko?"ext-gecko "+(Ext.isGecko2?"ext-gecko2":"ext-gecko3"):Ext.isOpera?"ext-opera":Ext.isWebKit?"ext-webkit":Ext.isSafari?"ext-safari":Ext.isChrome?"ext-chrome":""];if(Ext.isMac){b.push("ext-mac")}if(Ext.isLinux){b.push("ext-linux")}if(Ext.isBorderBox){b.push("ext-border-box")}if(Ext.isStrict){var e=d.parentNode;if(e){e.className+=" ext-strict"}}d.className+=b.join(" ");return true};if(!a()){Ext.onReady(a)}})();Ext.EventObject=function(){var b=Ext.lib.Event,a={3:13,63234:37,63235:39,63232:38,63233:40,63276:33,63277:34,63272:46,63273:36,63275:35},d=Ext.isIE?{1:0,4:1,2:2}:(Ext.isWebKit?{1:0,2:1,3:2}:{0:0,1:1,2:2});Ext.EventObjectImpl=function(g){if(g){this.setEvent(g.browserEvent||g)}};Ext.EventObjectImpl.prototype={setEvent:function(h){var g=this;if(h==g||(h&&h.browserEvent)){return h}g.browserEvent=h;if(h){g.button=h.button?d[h.button]:(h.which?h.which-1:-1);if(h.type=="click"&&g.button==-1){g.button=0}g.type=h.type;g.shiftKey=h.shiftKey;g.ctrlKey=h.ctrlKey||h.metaKey;g.altKey=h.altKey;g.keyCode=h.keyCode;g.charCode=h.charCode;g.target=b.getTarget(h);g.xy=b.getXY(h)}else{g.button=-1;g.shiftKey=false;g.ctrlKey=false;g.altKey=false;g.keyCode=0;g.charCode=0;g.target=null;g.xy=[0,0]}return g},stopEvent:function(){var e=this;if(e.browserEvent){if(e.browserEvent.type=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.fire(e)}b.stopEvent(e.browserEvent)}},preventDefault:function(){if(this.browserEvent){b.preventDefault(this.browserEvent)}},stopPropagation:function(){var e=this;if(e.browserEvent){if(e.browserEvent.type=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.fire(e)}b.stopPropagation(e.browserEvent)}},getCharCode:function(){return this.charCode||this.keyCode},getKey:function(){return this.normalizeKey(this.keyCode||this.charCode)},normalizeKey:function(e){return Ext.isSafari?(a[e]||e):e},getPageX:function(){return this.xy[0]},getPageY:function(){return this.xy[1]},getXY:function(){return this.xy},getTarget:function(g,h,e){return g?Ext.fly(this.target).findParent(g,h,e):(e?Ext.get(this.target):this.target)},getRelatedTarget:function(){return this.browserEvent?b.getRelatedTarget(this.browserEvent):null},getWheelDelta:function(){var g=this.browserEvent;var h=0;if(g.wheelDelta){h=g.wheelDelta/120}else{if(g.detail){h=-g.detail/3}}return h},within:function(h,j,e){var g=this[j?"getRelatedTarget":"getTarget"]();return g&&((e?(g==Ext.getDom(h)):false)||Ext.fly(h).contains(g))}};return new Ext.EventObjectImpl()}();Ext.apply(Ext.EventManager,function(){var e,a,j,d,g=Ext.lib.Dom,b=Ext.lib.Event,h=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;return{doResizeEvent:function(){e.fire(g.getViewWidth(),g.getViewHeight())},onWindowResize:function(m,l,k){if(!e){e=new Ext.util.Event();a=new Ext.util.DelayedTask(this.doResizeEvent);b.on(window,"resize",this.fireWindowResize,this)}e.addListener(m,l,k)},fireWindowResize:function(){if(e){if((Ext.isIE||Ext.isAir)&&a){a.delay(50)}else{e.fire(g.getViewWidth(),g.getViewHeight())}}},onTextResize:function(n,m,k){if(!j){j=new Ext.util.Event();var l=new Ext.Element(document.createElement("div"));l.dom.className="x-text-resize";l.dom.innerHTML="X";l.appendTo(document.body);d=l.dom.offsetHeight;setInterval(function(){if(l.dom.offsetHeight!=d){j.fire(d,d=l.dom.offsetHeight)}},this.textResizeInterval)}j.addListener(n,m,k)},removeResizeListener:function(l,k){if(e){e.removeListener(l,k)}},fireResize:function(){if(e){e.fire(g.getViewWidth(),g.getViewHeight())}},textResizeInterval:50,ieDeferSrc:false}}());Ext.EventManager.on=Ext.EventManager.addListener;Ext.apply(Ext.EventObjectImpl.prototype,{BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,RETURN:13,SHIFT:16,CTRL:17,CONTROL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGEUP:33,PAGE_DOWN:34,PAGEDOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,isNavKeyPress:function(){var b=this,a=this.normalizeKey(b.keyCode);return(a>=33&&a<=40)||a==b.RETURN||a==b.TAB||a==b.ESC},isSpecialKey:function(){var a=this.keyCode;return(this.type=="keypress"&&this.ctrlKey)||a==9||a==13||a==40||a==27||(a==16)||(a==17)||(a>=18&&a<=20)||(a>=33&&a<=35)||(a>=36&&a<=39)||(a>=44&&a<=45)},getPoint:function(){return new Ext.lib.Point(this.xy[0],this.xy[1])},hasModifier:function(){return((this.ctrlKey||this.altKey)||this.shiftKey)}});(function(){var k=document;Ext.Element=function(p,q){var r=typeof p=="string"?k.getElementById(p):p,s;if(!r){return null}s=r.id;if(!q&&s&&Ext.Element.cache[s]){return Ext.Element.cache[s]}this.dom=r;this.id=s||Ext.id(r)};var a=Ext.lib.Dom,g=Ext.DomHelper,n=Ext.lib.Event,e=Ext.lib.Anim,h=Ext.Element;h.prototype={set:function(t,q){var r=this.dom,p,s;for(p in t){s=t[p];if(p!="style"&&!Ext.isFunction(s)){if(p=="cls"){r.className=s}else{if(t.hasOwnProperty(p)){if(q||!!r.setAttribute){r.setAttribute(p,s)}else{r[p]=s}}}}}if(t.style){Ext.DomHelper.applyStyles(r,t.style)}return this},defaultUnit:"px",is:function(p){return Ext.DomQuery.is(this.dom,p)},focus:function(r){var p=this;try{if(!isNaN(r)){p.focus.defer(r,p)}else{p.dom.focus()}}catch(q){}return p},blur:function(){try{this.dom.blur()}catch(p){}return this},getValue:function(p){var q=this.dom.value;return p?parseInt(q,10):q},addListener:function(p,s,r,q){Ext.EventManager.on(this.dom,p,s,r||this,q);return this},removeListener:function(p,r,q){Ext.EventManager.removeListener(this.dom,p,r,q||this);return this},removeAllListeners:function(){Ext.EventManager.removeAll(this.dom);return this},addUnits:function(p){if(p===""||p=="auto"||p===undefined){p=p||""}else{if(!isNaN(p)||!l.test(p)){p=p+(this.defaultUnit||"px")}}return p},load:function(q,r,p){Ext.Ajax.request(Ext.apply({params:r,url:q.url||q,callback:p,el:this,indicatorText:q.indicatorText||""},Ext.isObject(q)?q:{}));return this},isBorderBox:function(){return j[(this.dom.tagName||"").toLowerCase()]||Ext.isBorderBox},remove:function(){Ext.removeNode(this.dom);delete h.cache[this.dom.id]},hover:function(q,p,s,r){var t=this;t.on("mouseenter",q,s||t.dom,r);t.on("mouseleave",p,s||t.dom,r);return t},contains:function(p){return!p?false:Ext.lib.Dom.isAncestor(this.dom,p.dom?p.dom:p)},getAttributeNS:Ext.isIE?function(r,p){var s=this.dom,q=typeof s[r+":"+p];if(!Ext.isEmpty(q)&&q!="unknown"){return s[r+":"+p]}return s[p]}:function(q,p){var r=this.dom;return r.getAttributeNS(q,p)||r.getAttribute(q+":"+p)||r.getAttribute(p)||r[p]},update:function(p){this.dom.innerHTML=p}};var o=h.prototype;h.addMethods=function(p){Ext.apply(o,p)};o.on=o.addListener;o.un=o.removeListener;o.autoBoxAdjust=true;var l=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i,d;h.cache={};h.get=function(q){var p,t,s;if(!q){return null}if(typeof q=="string"){if(!(t=k.getElementById(q))){return null}if(p=h.cache[q]){p.dom=t}else{p=h.cache[q]=new h(t)}return p}else{if(q.tagName){if(!(s=q.id)){s=Ext.id(q)}if(p=h.cache[s]){p.dom=q}else{p=h.cache[s]=new h(q)}return p}else{if(q instanceof h){if(q!=d){q.dom=k.getElementById(q.id)||q.dom;h.cache[q.id]=q}return q}else{if(q.isComposite){return q}else{if(Ext.isArray(q)){return h.select(q)}else{if(q==k){if(!d){var r=function(){};r.prototype=h.prototype;d=new r();d.dom=k}return d}}}}}}return null};function m(){if(!Ext.enableGarbageCollector){clearInterval(h.collectorThread)}else{var p,q,r;for(p in h.cache){q=h.cache[p];r=q.dom;if(!r||!r.parentNode||(!r.offsetParent&&!k.getElementById(p))){delete h.cache[p];if(r&&Ext.enableListenerCollection){Ext.EventManager.removeAll(r)}}}}}h.collectorThreadId=setInterval(m,30000);var b=function(){};b.prototype=h.prototype;h.Flyweight=function(p){this.dom=p};h.Flyweight.prototype=new b();h.Flyweight.prototype.isFlyweight=true;h._flyweights={};h.fly=function(r,p){var q=null;p=p||"_global";if(r=Ext.getDom(r)){(h._flyweights[p]=h._flyweights[p]||new h.Flyweight()).dom=r;q=h._flyweights[p]}return q};Ext.get=h.get;Ext.fly=h.fly;var j=Ext.isStrict?{select:1}:{input:1,select:1,textarea:1};if(Ext.isIE||Ext.isGecko){j.button=1}Ext.EventManager.on(window,"unload",function(){delete h.cache;delete h._flyweights})})();Ext.Element.addMethods({swallowEvent:function(a,b){var e=this;function d(g){g.stopPropagation();if(b){g.preventDefault()}}if(Ext.isArray(a)){Ext.each(a,function(g){e.on(g,d)});return e}e.on(a,d);return e},relayEvent:function(a,b){this.on(a,function(d){b.fireEvent(a,d)})},clean:function(b){var e=this,g=e.dom.firstChild,d=-1;if(e.isCleaned&&b!==true){return e}while(g){var a=g.nextSibling;g.nodeType==3&&!/\S/.test(g.nodeValue)?e.dom.removeChild(g):g.nodeIndex=++d;g=a}e.isCleaned=true;return e},load:function(){var a=this.getUpdater();a.update.apply(a,arguments);return this},getUpdater:function(){return this.updateManager||(this.updateManager=new Ext.Updater(this))},update:function(html,loadScripts,callback){html=html||"";if(loadScripts!==true){this.dom.innerHTML=html;if(Ext.isFunction(callback)){callback()}return this}var id=Ext.id(),dom=this.dom;html+='<span id="'+id+'"></span>';Ext.lib.Event.onAvailable(id,function(){var DOC=document,hd=DOC.getElementsByTagName("head")[0],re=/(?:<script([^>]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig,srcRe=/\ssrc=([\'\"])(.*?)\1/i,typeRe=/\stype=([\'\"])(.*?)\1/i,match,attrs,srcMatch,typeMatch,el,s;while(match=re.exec(html)){attrs=match[1];srcMatch=attrs?attrs.match(srcRe):false;if(srcMatch&&srcMatch[2]){s=DOC.createElement("script");s.src=srcMatch[2];typeMatch=attrs.match(typeRe);if(typeMatch&&typeMatch[2]){s.type=typeMatch[2]}hd.appendChild(s)}else{if(match[2]&&match[2].length>0){if(window.execScript){window.execScript(match[2])}else{window.eval(match[2])}}}}el=DOC.getElementById(id);if(el){Ext.removeNode(el)}if(Ext.isFunction(callback)){callback()}});dom.innerHTML=html.replace(/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,"");return this},createProxy:function(a,g,e){a=Ext.isObject(a)?a:{tag:"div",cls:a};var d=this,b=g?Ext.DomHelper.append(g,a,true):Ext.DomHelper.insertBefore(d.dom,a,true);if(e&&d.setBox&&d.getBox){b.setBox(d.getBox())}return b}});Ext.Element.prototype.getUpdateManager=Ext.Element.prototype.getUpdater;Ext.Element.uncache=function(g){for(var e=0,d=arguments,b=d.length;e<b;e++){if(d[e]){delete Ext.Element.cache[d[e].id||d[e]]}}};Ext.Element.addMethods({getAnchorXY:function(g,n,u){g=(g||"tl").toLowerCase();u=u||{};var m=this,b=m.dom==document.body||m.dom==document,q=u.width||b?Ext.lib.Dom.getViewWidth():m.getWidth(),k=u.height||b?Ext.lib.Dom.getViewHeight():m.getHeight(),t,a=Math.round,d=m.getXY(),p=m.getScroll(),l=b?p.left:!n?d[0]:0,j=b?p.top:!n?d[1]:0,e={c:[a(q*0.5),a(k*0.5)],t:[a(q*0.5),0],l:[0,a(k*0.5)],r:[q,a(k*0.5)],b:[a(q*0.5),k],tl:[0,0],bl:[0,k],br:[q,k],tr:[q,0]};t=e[g];return[t[0]+l,t[1]+j]},anchorTo:function(d,k,g,a,b,j){var e=this;function h(){this.alignTo(d,k,g,a);Ext.callback(j,this)}Ext.EventManager.onWindowResize(h,e);if(!Ext.isEmpty(b)){Ext.EventManager.on(window,"scroll",h,e,{buffer:!isNaN(b)?b:50})}h.call(e);return e},getAlignToXY:function(g,C,D){g=Ext.get(g);if(!g||!g.dom){throw"Element.alignToXY with an element that doesn't exist"}D=D||[0,0];C=(C=="?"?"tl-bl?":(!/-/.test(C)&&C!=""?"tl-"+C:C||"tl-bl")).toLowerCase();var M=this,J=M.dom,O,N,q,n,t,H,A,u=Ext.lib.Dom.getViewWidth()-10,I=Ext.lib.Dom.getViewHeight()-10,b,j,k,l,z,B,P=document,L=P.documentElement,s=P.body,G=(L.scrollLeft||s.scrollLeft||0)+5,F=(L.scrollTop||s.scrollTop||0)+5,K=false,e="",a="",E=C.match(/^([a-z]+)-([a-z]+)(\?)?$/);if(!E){throw"Element.alignTo with an invalid alignment "+C}e=E[1];a=E[2];K=!!E[3];O=M.getAnchorXY(e,true);N=g.getAnchorXY(a,false);q=N[0]-O[0]+D[0];n=N[1]-O[1]+D[1];if(K){t=M.getWidth();H=M.getHeight();A=g.getRegion();b=e.charAt(0);j=e.charAt(e.length-1);k=a.charAt(0);l=a.charAt(a.length-1);z=((b=="t"&&k=="b")||(b=="b"&&k=="t"));B=((j=="r"&&l=="l")||(j=="l"&&l=="r"));if(q+t>u+G){q=B?A.left-t:u+G-t}if(q<G){q=B?A.right:G}if(n+H>I+F){n=z?A.top-H:I+F-H}if(n<F){n=z?A.bottom:F}}return[q,n]},alignTo:function(d,a,g,b){var e=this;return e.setXY(e.getAlignToXY(d,a,g),e.preanim&&!!b?e.preanim(arguments,3):false)},adjustForConstraints:function(d,a,b){return this.getConstrainToXY(a||document,false,b,d)||d},getConstrainToXY:function(b,a,d,g){var e={top:0,left:0,bottom:0,right:0};return function(k,C,m,o){k=Ext.get(k);m=m?Ext.applyIf(m,e):e;var B,F,A=0,z=0;if(k.dom==document.body||k.dom==document){B=Ext.lib.Dom.getViewWidth();F=Ext.lib.Dom.getViewHeight()}else{B=k.dom.clientWidth;F=k.dom.clientHeight;if(!C){var u=k.getXY();A=u[0];z=u[1]}}var t=k.getScroll();A+=m.left+t.left;z+=m.top+t.top;B-=m.right;F-=m.bottom;var D=A+B;var j=z+F;var l=o||(!C?this.getXY():[this.getLeft(true),this.getTop(true)]);var q=l[0],p=l[1];var r=this.dom.offsetWidth,E=this.dom.offsetHeight;var n=false;if((q+r)>D){q=D-r;n=true}if((p+E)>j){p=j-E;n=true}if(q<A){q=A;n=true}if(p<z){p=z;n=true}return n?[q,p]:false}}(),getCenterXY:function(){return this.getAlignToXY(document,"c-c")},center:function(a){return this.alignTo(a||document,"c-c")}});Ext.Element.addMethods(function(){var e="parentNode",b="nextSibling",d="previousSibling",g=Ext.DomQuery,a=Ext.get;return{findParent:function(o,n,j){var l=this.dom,h=document.body,m=0,k;n=n||50;if(isNaN(n)){k=Ext.getDom(n);n=10}while(l&&l.nodeType==1&&m<n&&l!=h&&l!=k){if(g.is(l,o)){return j?a(l):l}m++;l=l.parentNode}return null},findParentNode:function(l,k,h){var j=Ext.fly(this.dom.parentNode,"_internal");return j?j.findParent(l,k,h):null},up:function(j,h){return this.findParentNode(j,h,true)},select:function(h,j){return Ext.Element.select(h,j,this.dom)},query:function(h,j){return g.select(h,this.dom)},child:function(h,j){var k=g.selectNode(h,this.dom);return j?k:a(k)},down:function(h,j){var k=g.selectNode(" > "+h,this.dom);return j?k:a(k)},parent:function(h,j){return this.matchNode(e,e,h,j)},next:function(h,j){return this.matchNode(b,b,h,j)},prev:function(h,j){return this.matchNode(d,d,h,j)},first:function(h,j){return this.matchNode(b,"firstChild",h,j)},last:function(h,j){return this.matchNode(d,"lastChild",h,j)},matchNode:function(j,m,h,k){var l=this.dom[m];while(l){if(l.nodeType==1&&(!h||g.is(l,h))){return!k?a(l):l}l=l[j]}return null}}}());Ext.Element.addMethods(function(){var d=Ext.getDom,a=Ext.get,b=Ext.DomHelper;return{appendChild:function(e){return a(e).appendTo(this)},appendTo:function(e){d(e).appendChild(this.dom);return this},insertBefore:function(e){(e=d(e)).parentNode.insertBefore(this.dom,e);return this},insertAfter:function(e){d(e).parentNode.insertBefore(this.dom,e.nextSibling);return this},insertFirst:function(g,e){g=g||{};if(g.nodeType||g.dom){g=d(g);this.dom.insertBefore(g,this.dom.firstChild);return!e?a(g):g}else{return this.createChild(g,this.dom.firstChild,e)}},replace:function(e){e=a(e);this.insertBefore(e);e.remove();return this},replaceWith:function(g){var h=this,e=Ext.Element;if(g.nodeType||g.dom){g=d(g);h.dom.parentNode.insertBefore(g,h.dom)}else{g=b.insertBefore(h.dom,g)}delete e.cache[h.id];Ext.removeNode(h.dom);h.id=Ext.id(h.dom=g);return e.cache[h.id]=h},createChild:function(g,e,h){g=g||{tag:"div"};return e?b.insertBefore(e,g,h!==true):b[!this.dom.firstChild?"overwrite":"append"](this.dom,g,h!==true)},wrap:function(e,g){var h=b.insertBefore(this.dom,e||{tag:"div"},!g);h.dom?h.dom.appendChild(this.dom):h.appendChild(this.dom);return h},insertHtml:function(g,h,e){var j=b.insertHtml(g,this.dom,h);return e?Ext.get(j):j}}}());Ext.apply(Ext.Element.prototype,function(){var d=Ext.getDom,a=Ext.get,b=Ext.DomHelper;return{insertSibling:function(j,g,h){var k=this,e;if(Ext.isArray(j)){Ext.each(j,function(l){e=k.insertSibling(l,g,h)});return e}g=(g||"before").toLowerCase();j=j||{};if(j.nodeType||j.dom){e=k.dom.parentNode.insertBefore(d(j),g=="before"?k.dom:k.dom.nextSibling);if(!h){e=a(e)}}else{if(g=="after"&&!k.dom.nextSibling){e=b.append(k.dom.parentNode,j,!h)}else{e=b[g=="after"?"insertAfter":"insertBefore"](k.dom,j,!h)}}return e}}}());Ext.Element.addMethods(function(){var g={},t=/(-[a-z])/gi,b={},p=document.defaultView,w=Ext.Element,e="padding",d="margin",u="border",q="-left",n="-right",s="-top",l="-bottom",j="-width",k={l:u+q+j,r:u+n+j,t:u+s+j,b:u+l+j},h={l:e+q,r:e+n,t:e+s,b:e+l},a={l:d+q,r:d+n,t:d+s,b:d+l};function o(x,y){return y.charAt(1).toUpperCase()}function m(y,x){var z=0;Ext.each(y.match(/\w/g),function(A){if(A=parseInt(this.getStyle(x[A]),10)){z+=Math.abs(A)}},this);return z}function r(x){return g[x]||(g[x]=x.replace(t,o))}return{adjustWidth:function(x){var y=this;if(typeof x=="number"&&y.autoBoxAdjust&&!y.isBorderBox()){x-=(y.getBorderWidth("lr")+y.getPadding("lr"));x=x<0?0:x}return x},adjustHeight:function(x){var y=this;if(typeof x=="number"&&y.autoBoxAdjust&&!y.isBorderBox()){x-=(y.getBorderWidth("tb")+y.getPadding("tb"));x=x<0?0:x}return x},addClass:function(x){var y=this;Ext.each(x,function(z){y.dom.className+=(!y.hasClass(z)&&z?" "+z:"")});return y},radioClass:function(x){Ext.each(this.dom.parentNode.childNodes,function(y){if(y.nodeType==1){Ext.get(y).removeClass(x)}});return this.addClass(x)},removeClass:function(x){var y=this;if(y.dom.className){Ext.each(x,function(z){y.dom.className=y.dom.className.replace(b[z]=b[z]||new RegExp("(?:^|\\s+)"+z+"(?:\\s+|$)","g")," ")})}return y},toggleClass:function(x){return this.hasClass(x)?this.removeClass(x):this.addClass(x)},hasClass:function(x){return x&&(" "+this.dom.className+" ").indexOf(" "+x+" ")!=-1},replaceClass:function(y,x){return this.removeClass(y).addClass(x)},isStyle:function(x,y){return this.getStyle(x)==y},getStyle:function(){return p&&p.getComputedStyle?function(A){var z=this.dom,x,y;if(z==document){return null}A=A=="float"?"cssFloat":A;return(x=z.style[A])?x:(y=p.getComputedStyle(z,""))?y[r(A)]:null}:function(B){var z=this.dom,x,y;if(z==document){return null}if(B=="opacity"){if(z.style.filter.match){if(x=z.style.filter.match(/alpha\(opacity=(.*)\)/i)){var A=parseFloat(x[1]);if(!isNaN(A)){return A?A/100:0}}}return 1}B=B=="float"?"styleFloat":B;return z.style[B]||((y=z.currentStyle)?y[r(B)]:null)}}(),getColor:function(x,y,C){var B,A=this.getStyle(x),z=C||"#";if(!A||A=="transparent"||A=="inherit"){return y}if(/^r/.test(A)){Ext.each(A.slice(4,A.length-1).split(","),function(D){B=(D*1).toString(16);z+=B<16?"0"+B:B})}else{z+=A.replace("#","").replace(/^(\w)(\w)(\w)$/,"$1$1$2$2$3$3")}return z.length>5?z.toLowerCase():y},setStyle:function(B,A){var y,z,x;if(!Ext.isObject(B)){y={};y[B]=A;B=y}for(z in B){A=B[z];x=r(z);x=="opacity"?this.setOpacity(A):this.dom.style[x]=A}return this},setOpacity:function(y,x){var A=this,z=A.dom.style;if(!x||!A.anim){if(Ext.isIE){z.zoom=1;z.filter=(z.filter||"").replace(/alpha\([^\)]*\)/gi,"")+(y==1?"":" alpha(opacity="+y*100+")")}else{z.opacity=y}}else{A.anim({opacity:{to:y}},A.preanim(arguments,1),null,0.35,"easeIn")}return A},clearOpacity:function(){var x=this.dom.style;if(window.ActiveXObject){if(typeof x.filter=="string"&&(/alpha/i).test(x.filter)){x.filter=""}}else{x.opacity="";x["-moz-opacity"]="";x["-khtml-opacity"]=""}return this},getHeight:function(y){var x=this.dom.offsetHeight||0;x=!y?x:x-this.getBorderWidth("tb")-this.getPadding("tb");return x<0?0:x},getWidth:function(y){var x=this.dom.offsetWidth||0;x=!y?x:x-this.getBorderWidth("lr")-this.getPadding("lr");return x<0?0:x},setWidth:function(y,x){var z=this;y=z.adjustWidth(y);!x||!z.anim?z.dom.style.width=z.addUnits(y):z.anim({width:{to:y}},z.preanim(arguments,1));return z},setHeight:function(x,y){var z=this;x=z.adjustHeight(x);!y||!z.anim?z.dom.style.height=z.addUnits(x):z.anim({height:{to:x}},z.preanim(arguments,1));return z},getBorderWidth:function(x){return m.call(this,x,k)},getPadding:function(x){return m.call(this,x,h)},clip:function(){var x=this;if(!x.isClipped){x.isClipped=true;x.originalClip={o:x.getStyle("overflow"),x:x.getStyle("overflow-x"),y:x.getStyle("overflow-y")};x.setStyle("overflow","hidden");x.setStyle("overflow-x","hidden");x.setStyle("overflow-y","hidden")}return x},unclip:function(){var x=this;if(x.isClipped){x.isClipped=false;var y=x.originalClip;if(y.o){x.setStyle("overflow",y.o)}if(y.x){x.setStyle("overflow-x",y.x)}if(y.y){x.setStyle("overflow-y",y.y)}}return x},addStyles:m,margins:a}}());Ext.Element.boxMarkup='<div class="{0}-tl"><div class="{0}-tr"><div class="{0}-tc"></div></div></div><div class="{0}-ml"><div class="{0}-mr"><div class="{0}-mc"></div></div></div><div class="{0}-bl"><div class="{0}-br"><div class="{0}-bc"></div></div></div>';Ext.Element.addMethods(function(){var a="_internal";return{applyStyles:function(b){Ext.DomHelper.applyStyles(this.dom,b);return this},getStyles:function(){var b={};Ext.each(arguments,function(d){b[d]=this.getStyle(d)},this);return b},getStyleSize:function(){var j=this,b,g,k=this.dom,e=k.style;if(e.width&&e.width!="auto"){b=parseInt(e.width,10);if(j.isBorderBox()){b-=j.getFrameWidth("lr")}}if(e.height&&e.height!="auto"){g=parseInt(e.height,10);if(j.isBorderBox()){g-=j.getFrameWidth("tb")}}return{width:b||j.getWidth(true),height:g||j.getHeight(true)}},setOverflow:function(b){var d=this;if(b=="auto"&&Ext.isMac&&Ext.isGecko2){d.dom.style.overflow="hidden";(function(){d.dom.style.overflow="auto"}).defer(1,d)}else{d.dom.style.overflow=b}},boxWrap:function(b){b=b||"x-box";var d=Ext.get(this.insertHtml("beforeBegin","<div class='"+b+"'>"+String.format(Ext.Element.boxMarkup,b)+"</div>"));Ext.DomQuery.selectNode("."+b+"-mc",d.dom).appendChild(this.dom);return d},setSize:function(e,b,d){var g=this;if(typeof e=="object"){b=e.height;e=e.width}e=g.adjustWidth(e);b=g.adjustHeight(b);if(!d||!g.anim){g.dom.style.width=g.addUnits(e);g.dom.style.height=g.addUnits(b)}else{g.anim({width:{to:e},height:{to:b}},g.preanim(arguments,2))}return g},getComputedHeight:function(){var d=this,b=Math.max(d.dom.offsetHeight,d.dom.clientHeight);if(!b){b=parseInt(d.getStyle("height"),10)||0;if(!d.isBorderBox()){b+=d.getFrameWidth("tb")}}return b},getComputedWidth:function(){var b=Math.max(this.dom.offsetWidth,this.dom.clientWidth);if(!b){b=parseInt(this.getStyle("width"),10)||0;if(!this.isBorderBox()){b+=this.getFrameWidth("lr")}}return b},getFrameWidth:function(d,b){return b&&this.isBorderBox()?0:(this.getPadding(d)+this.getBorderWidth(d))},addClassOnOver:function(b){var d=this;d.hover(function(){Ext.fly(d,a).addClass(b)},function(){Ext.fly(d,a).removeClass(b)});return d},addClassOnFocus:function(b){var d=this;d.on("focus",function(){Ext.fly(d,a).addClass(b)},d.dom);d.on("blur",function(){Ext.fly(d,a).removeClass(b)},d.dom);return d},addClassOnClick:function(b){var d=this.dom;this.on("mousedown",function(){Ext.fly(d,a).addClass(b);var g=Ext.getDoc(),e=function(){Ext.fly(d,a).removeClass(b);g.removeListener("mouseup",e)};g.on("mouseup",e)});return this},getViewSize:function(){var g=document,h=this.dom,e=Ext.lib.Dom,b=(h==g||h==g.body);return{width:(b?e.getViewWidth():h.clientWidth),height:(b?e.getViewHeight():h.clientHeight)}},getSize:function(b){return{width:this.getWidth(b),height:this.getHeight(b)}},repaint:function(){var b=this.dom;this.addClass("x-repaint");setTimeout(function(){Ext.get(b).removeClass("x-repaint")},1);return this},unselectable:function(){this.dom.unselectable="on";return this.swallowEvent("selectstart",true).applyStyles("-moz-user-select:none;-khtml-user-select:none;").addClass("x-unselectable")},getMargins:function(d){var e=this,b,g={t:"top",l:"left",r:"right",b:"bottom"},h={};if(!d){for(b in e.margins){h[g[b]]=parseInt(e.getStyle(e.margins[b]),10)||0}return h}else{return e.addStyles.call(e,d,e.margins)}}}}());(function(){var b=Ext.lib.Dom;function a(e,d,g){return this.preanim&&!!d?this.preanim(e,g):false}Ext.Element.addMethods({getX:function(){return b.getX(this.dom)},getY:function(){return b.getY(this.dom)},getXY:function(){return b.getXY(this.dom)},getOffsetsTo:function(d){var h=this.getXY(),g=Ext.fly(d,"_internal").getXY();return[h[0]-g[0],h[1]-g[1]]},setX:function(d,e){return this.setXY([d,this.getY()],a.call(this,arguments,e,1))},setY:function(e,d){return this.setXY([this.getX(),e],a.call(this,arguments,d,1))},setLeft:function(d){this.setStyle("left",this.addUnits(d));return this},setTop:function(d){this.setStyle("top",this.addUnits(d));return this},setRight:function(d){this.setStyle("right",this.addUnits(d));return this},setBottom:function(d){this.setStyle("bottom",this.addUnits(d));return this},setXY:function(g,d){var e=this;if(!d||!e.anim){b.setXY(e.dom,g)}else{e.anim({points:{to:g}},e.preanim(arguments,1),"motion")}return e},setLocation:function(d,g,e){return this.setXY([d,g],a.call(this,arguments,e,2))},moveTo:function(d,g,e){return this.setXY([d,g],a.call(this,arguments,e,2))},getLeft:function(d){return!d?this.getX():parseInt(this.getStyle("left"),10)||0},getRight:function(d){var e=this;return!d?e.getX()+e.getWidth():(e.getLeft(true)+e.getWidth())||0},getTop:function(d){return!d?this.getY():parseInt(this.getStyle("top"),10)||0},getBottom:function(d){var e=this;return!d?e.getY()+e.getHeight():(e.getTop(true)+e.getHeight())||0},position:function(j,h,d,g){var e=this;if(!j&&e.isStyle("position","static")){e.setStyle("position","relative")}else{if(j){e.setStyle("position",j)}}if(h){e.setStyle("z-index",h)}if(d||g){e.setXY([d||false,g||false])}},clearPositioning:function(d){d=d||"";this.setStyle({left:d,right:d,top:d,bottom:d,"z-index":"",position:"static"});return this},getPositioning:function(){var h=this;function e(j){return h.getStyle(j)}var d=e("left"),g=e("top");return{position:e("position"),left:d,right:d?"":e("right"),top:g,bottom:g?"":e("bottom"),"z-index":e("z-index")}},setPositioning:function(d){var g=this,e=g.dom.style;g.setStyle(d);if(d.right=="auto"){e.right=""}if(d.bottom=="auto"){e.bottom=""}return g},translatePoints:function(d,m){m=isNaN(d[1])?m:d[1];d=isNaN(d[0])?d:d[0];var h=this,j=h.isStyle("position","relative"),k=h.getXY(),e=parseInt(h.getStyle("left"),10),g=parseInt(h.getStyle("top"),10);e=!isNaN(e)?e:(j?0:h.dom.offsetLeft);g=!isNaN(g)?g:(j?0:h.dom.offsetTop);return{left:(d-k[0]+e),top:(m-k[1]+g)}},animTest:a})})();Ext.Element.addMethods({setBox:function(g,j,b){var e=this,a=g.width,d=g.height;if((j&&!e.autoBoxAdjust)&&!e.isBorderBox()){a-=(e.getBorderWidth("lr")+e.getPadding("lr"));d-=(e.getBorderWidth("tb")+e.getPadding("tb"))}e.setBounds(g.x,g.y,a,d,e.animTest.call(e,arguments,b,2));return e},getBox:function(m,s){var o=this,z,g,q,e=o.getBorderWidth,u=o.getPadding,j,a,y,p;if(!s){z=o.getXY()}else{g=parseInt(o.getStyle("left"),10)||0;q=parseInt(o.getStyle("top"),10)||0;z=[g,q]}var d=o.dom,x=d.offsetWidth,k=d.offsetHeight,n;if(!m){n={x:z[0],y:z[1],0:z[0],1:z[1],width:x,height:k}}else{j=e.call(o,"l")+u.call(o,"l");a=e.call(o,"r")+u.call(o,"r");y=e.call(o,"t")+u.call(o,"t");p=e.call(o,"b")+u.call(o,"b");n={x:z[0]+j,y:z[1]+y,0:z[0]+j,1:z[1]+y,width:x-(j+a),height:k-(y+p)}}n.right=n.x+n.width;n.bottom=n.y+n.height;return n},move:function(l,b,d){var h=this,o=h.getXY(),m=o[0],k=o[1],e=[m-b,k],n=[m+b,k],j=[m,k-b],a=[m,k+b],g={l:e,left:e,r:n,right:n,t:j,top:j,up:j,b:a,bottom:a,down:a};l=l.toLowerCase();h.moveTo(g[l][0],g[l][1],h.animTest.call(h,arguments,d,1))},setLeftTop:function(e,d){var b=this,a=b.dom.style;a.left=b.addUnits(e);a.top=b.addUnits(d);return b},getRegion:function(){return Ext.lib.Dom.getRegion(this.dom)},setBounds:function(b,h,e,a,d){var g=this;if(!d||!g.anim){g.setSize(e,a);g.setLocation(b,h)}else{g.anim({points:{to:[b,h]},width:{to:g.adjustWidth(e)},height:{to:g.adjustHeight(a)}},g.preanim(arguments,4),"motion")}return g},setRegion:function(b,a){return this.setBounds(b.left,b.top,b.right-b.left,b.bottom-b.top,this.animTest.call(this,arguments,a,1))}});Ext.Element.addMethods({isScrollable:function(){var a=this.dom;return a.scrollHeight>a.clientHeight||a.scrollWidth>a.clientWidth},scrollTo:function(a,b){this.dom["scroll"+(/top/i.test(a)?"Top":"Left")]=b;return this},getScroll:function(){var k=this.dom,j=document,a=j.body,e=j.documentElement,b,h,g;if(k==j||k==a){if(Ext.isIE&&Ext.isStrict){b=e.scrollLeft;h=e.scrollTop}else{b=window.pageXOffset;h=window.pageYOffset}g={left:b||(a?a.scrollLeft:0),top:h||(a?a.scrollTop:0)}}else{g={left:k.scrollLeft,top:k.scrollTop}}return g}});Ext.Element.addMethods({scrollTo:function(d,g,b){var a=/top/i,j="scroll"+(a.test(d)?"Top":"Left"),e=this,h=e.dom;if(!b||!e.anim){h[j]=g}else{e.anim({scroll:{to:a.test(j)?[h[j],g]:[g,h[j]]}},e.preanim(arguments,2),"scroll")}return e},scrollIntoView:function(e,j){var q=Ext.getDom(e)||Ext.getBody().dom,h=this.dom,g=this.getOffsetsTo(q),m=g[0]+q.scrollLeft,w=g[1]+q.scrollTop,s=w+h.offsetHeight,d=m+h.offsetWidth,a=q.clientHeight,n=parseInt(q.scrollTop,10),u=parseInt(q.scrollLeft,10),k=n+a,p=u+q.clientWidth;if(h.offsetHeight>a||w<n){q.scrollTop=w}else{if(s>k){q.scrollTop=s-a}}q.scrollTop=q.scrollTop;if(j!==false){if(h.offsetWidth>q.clientWidth||m<u){q.scrollLeft=m}else{if(d>p){q.scrollLeft=d-q.clientWidth}}q.scrollLeft=q.scrollLeft}return this},scrollChildIntoView:function(b,a){Ext.fly(b,"_scrollChildIntoView").scrollIntoView(this,a)},scroll:function(s,e,j){if(this.isScrollable()){var k=this.dom,m=k.scrollLeft,x=k.scrollTop,u=k.scrollWidth,p=k.scrollHeight,n=k.clientWidth,d=k.clientHeight,g=false,m=Math.min(m+e,u-n),a=Math.max(m-e,0),x=Math.max(x-e,0),q=Math.min(x+e,p-d),o={l:m,left:m,r:a,right:a,t:x,top:x,up:x,b:q,bottom:q,down:q};s=s.toLowerCase();if(v=o[s]){this.scrollTo("left",v,this.preanim(arguments,2));g=true}return g}}});Ext.Element.VISIBILITY=1;Ext.Element.DISPLAY=2;Ext.Element.addMethods(function(){var e="visibility",d="display",a="hidden",g="none",b=Ext.Element.DISPLAY;return{originalDisplay:"",visibilityMode:1,setVisibilityMode:function(h){this.visibilityMode=h;return this},animate:function(j,l,k,m,h){this.anim(j,{duration:l,callback:k,easing:m},h);return this},anim:function(l,m,j,o,k,h){j=j||"run";m=m||{};var n=this,p=Ext.lib.Anim[j](n.dom,l,(m.duration||o)||0.35,(m.easing||k)||"easeOut",function(){if(h){h.call(n)}if(m.callback){m.callback.call(m.scope||n,n,m)}},n);m.anim=p;return p},preanim:function(h,j){return!h[j]?false:(Ext.isObject(h[j])?h[j]:{duration:h[j+1],callback:h[j+2],easing:h[j+3]})},isVisible:function(){return!this.isStyle(e,a)&&!this.isStyle(d,g)},setVisible:function(l,h){var k=this,j=k.visibilityMode;if(!h||!k.anim){if(k.visibilityMode==b){k.setDisplayed(l)}else{k.fixDisplay();k.dom.style.visibility=l?"visible":a}}else{if(l){k.setOpacity(0.01);k.setVisible(true)}k.anim({opacity:{to:(l?1:0)}},k.preanim(arguments,1),null,0.35,"easeIn",function(){if(!l){k.dom.style.display=(j==b)?g:a;Ext.get(k.dom).setOpacity(1)}})}return k},toggle:function(h){var j=this;j.setVisible(!j.isVisible(),j.preanim(arguments,0));return j},setDisplayed:function(h){if(typeof h=="boolean"){h=h?this.originalDisplay:g}this.setStyle(d,h);return this},fixDisplay:function(){var h=this;if(h.isStyle(d,g)){h.setStyle(e,a);h.setStyle(d,h.originalDisplay);if(h.isStyle(d,g)){h.setStyle(d,"block")}}},hide:function(h){this.setVisible(false,this.preanim(arguments,0));return this},show:function(h){this.setVisible(true,this.preanim(arguments,0));return this}}}());Ext.Element.addMethods(function(){var e="visibility",b="display",a="hidden",h="none",d="x-masked",g="x-masked-relative";return{isVisible:function(j){var k=!this.isStyle(e,a)&&!this.isStyle(b,h),l=this.dom.parentNode;if(j!==true||!k){return k}while(l&&!/body/i.test(l.tagName)){if(!Ext.fly(l,"_isVisible").isVisible()){return false}l=l.parentNode}return true},isDisplayed:function(){return!this.isStyle(b,h)},enableDisplayMode:function(j){this.setVisibilityMode(Ext.Element.DISPLAY);if(!Ext.isEmpty(j)){this.originalDisplay=j}return this},mask:function(p,m){var k=this,o=k.dom,l=Ext.DomHelper,j="ext-el-mask-msg";if(k.getStyle("position")=="static"){k.addClass(g)}if(k._maskMsg){k._maskMsg.remove()}if(k._mask){k._mask.remove()}k._mask=l.append(o,{cls:"ext-el-mask"},true);k.addClass(d);k._mask.setDisplayed(true);if(typeof p=="string"){k._maskMsg=l.append(o,{cls:j,cn:{tag:"div"}},true);var n=k._maskMsg;n.dom.className=m?j+" "+m:j;n.dom.firstChild.innerHTML=p;n.setDisplayed(true);n.center(k)}if(Ext.isIE&&!(Ext.isIE7&&Ext.isStrict)&&k.getStyle("height")=="auto"){k._mask.setSize(o.clientWidth,k.getHeight())}return k._mask},unmask:function(){var l=this,j=l._mask,k=l._maskMsg;if(j){if(k){k.remove();delete l._maskMsg}j.remove();delete l._mask}l.removeClass([d,g])},isMasked:function(){return this._mask&&this._mask.isVisible()},createShim:function(){var j=document.createElement("iframe"),k;j.frameBorder="0";j.className="ext-shim";if(Ext.isIE&&Ext.isSecure){j.src=Ext.SSL_SECURE_URL}k=Ext.get(this.dom.parentNode.insertBefore(j,this.dom));k.autoBoxAdjust=false;return k}}}());Ext.Element.addMethods({initDD:function(d,b,e){var a=new Ext.dd.DD(Ext.id(this.dom),d,b);return Ext.apply(a,e)},initDDProxy:function(d,b,e){var a=new Ext.dd.DDProxy(Ext.id(this.dom),d,b);return Ext.apply(a,e)},initDDTarget:function(d,b,e){var a=new Ext.dd.DDTarget(Ext.id(this.dom),d,b);return Ext.apply(a,e)}});Ext.Element.addMethods({autoHeight:function(a,d,b,g){var e=this.getHeight();this.clip();this.setHeight(1);setTimeout(function(){var h=parseInt(this.dom.scrollHeight,10);if(!a){this.setHeight(h);this.unclip();if(typeof b=="function"){b()}}else{this.setHeight(e);this.setHeight(h,a,d,function(){this.unclip();if(typeof b=="function"){b()}}.createDelegate(this),g)}}.createDelegate(this),0);return this}});Ext.Element.addMethods({addKeyListener:function(b,e,d){var a;if(typeof b!="object"||Ext.isArray(b)){a={key:b,fn:e,scope:d}}else{a={key:b.key,shift:b.shift,ctrl:b.ctrl,alt:b.alt,fn:e,scope:d}}return new Ext.KeyMap(this,a)},addKeyMap:function(a){return new Ext.KeyMap(this,a)}});(function(){var u=null,x=undefined,j=true,r=false,h="setX",e="setY",a="setXY",m="left",k="bottom",q="top",l="right",o="height",d="width",g="points",t="hidden",w="absolute",s="visible",b="motion",n="position",p="easeOut";Ext.enableFx=j;Ext.Fx={switchStatements:function(z,A,y){return A.apply(this,y[z])},slideIn:function(F,B){var H=this,C=H.getFxEl(),y,J,A,z,K,G,M,I,E,L=H.getXY(),D=H.dom;B=B||{};F=F||"t";C.queueFx(B,function(){K=H.dom.style;H.fixDisplay();y=H.getFxRestore();J={x:L[0],y:L[1],0:L[0],1:L[1],width:D.offsetWidth,height:D.offsetHeight};J.right=J.x+J.width;J.bottom=J.y+J.height;H.setWidth(J.width).setHeight(J.height);A=H.fxWrap(y.pos,B,t);K.visibility=s;K.position=w;function N(){C.fxUnwrap(A,y.pos,B);K.width=y.width;K.height=y.height;C.afterFx(B)}M={to:[J.x,J.y]};I={to:J.width};E={to:J.height};function O(S,P,T,Q,V,X,aa,Z,Y,U,R){var W={};S.setWidth(T).setHeight(Q);if(S[V]){S[V](X)}P[aa]=P[Z]="0";if(Y){W.width=Y}if(U){W.height=U}if(R){W.points=R}return W}G=H.switchStatements(F.toLowerCase(),O,{t:[A,K,J.width,0,u,u,m,k,u,E,u],l:[A,K,0,J.height,u,u,l,q,I,u,u],r:[A,K,0,J.height,h,J.right,m,q,I,u,M],b:[A,K,J.width,0,e,J.bottom,m,q,u,E,M],tl:[A,K,0,0,u,u,l,k,I,u,M],bl:[A,K,0,0,e,J.y+J.height,l,q,I,E,M],br:[A,K,0,0,a,[J.right,J.bottom],m,q,I,E,M],tr:[0,0,h,J.x+J.width,m,k,I,E,M]});K.visibility=s;A.show();arguments.callee.anim=A.fxanim(G,B,b,0.5,p,N)});return H},slideOut:function(D,A){var F=this,B=F.getFxEl(),J=F.getXY(),C=F.dom,z,I,y,G,H,E={to:0};A=A||{};D=D||"t";B.queueFx(A,function(){y=F.getFxRestore();G={x:J[0],y:J[1],0:J[0],1:J[1],width:C.offsetWidth,height:C.offsetHeight};G.right=G.x+G.width;G.bottom=G.y+G.height;F.setWidth(G.width).setHeight(G.height);z=F.fxWrap(y.pos,A,s);I=F.dom.style;I.visibility=s;I.position=w;z.setWidth(G.width).setHeight(G.height);function K(){A.useDisplay?B.setDisplayed(r):B.hide();B.fxUnwrap(z,y.pos,A);I.width=y.width;I.height=y.height;B.afterFx(A)}function L(M,U,S,V,Q,T,P,R,O){var N={};M[U]=M[S]="0";N[V]=Q;if(T){N[T]=P}if(R){N[R]=O}return N}H=F.switchStatements(D.toLowerCase(),L,{t:[I,m,k,o,E],l:[I,l,q,d,E],r:[I,m,q,d,E,g,{to:[G.right,G.y]}],b:[I,m,q,o,E,g,{to:[G.x,G.bottom]}],tl:[I,l,k,d,E,o,E],bl:[I,l,q,d,E,o,E,g,{to:[G.X,G.bottom]}],br:[I,m,q,d,E,o,E,g,{to:[G.x+G.width,G.bottom]}],tr:[I,m,k,d,E,o,E,g,{to:[G.right,G.y]}]});arguments.callee.anim=z.fxanim(H,A,b,0.5,p,K)});return F},puff:function(E){E=E||{};var D=this,B=D.getFxEl(),C,z=D.dom.style,A=D.getWidth(),y=D.getHeight();B.queueFx(E,function(){D.clearOpacity();D.show();C=D.getFxRestore();function F(){E.useDisplay?B.setDisplayed(r):B.hide();B.clearOpacity();B.setPositioning(C.pos);z.width=C.width;z.height=C.height;z.fontSize="";B.afterFx(E)}arguments.callee.anim=D.fxanim({width:{to:D.adjustWidth(A*2)},height:{to:D.adjustHeight(y*2)},points:{by:[-A*0.5,-y*0.5]},opacity:{to:0},fontSize:{to:200,unit:"%"}},E,b,0.5,p,F)});return D},switchOff:function(A){A=A||{};var z=this,y=z.getFxEl();y.queueFx(A,function(){z.clearOpacity();z.clip();var C=z.getFxRestore(),B=z.dom.style,D=function(){A.useDisplay?y.setDisplayed(r):y.hide();y.clearOpacity();y.setPositioning(C.pos);B.width=C.width;B.height=C.height;y.afterFx(A)};z.fxanim({opacity:{to:0.3}},u,u,0.1,u,function(){z.clearOpacity();(function(){z.fxanim({height:{to:1},points:{by:[0,z.getHeight()*0.5]}},A,b,0.3,"easeIn",D)}).defer(100)})});return z},highlight:function(A,D){D=D||{};var C=this,B=C.getFxEl(),y=D.attr||"backgroundColor",z={};B.queueFx(D,function(){C.clearOpacity();C.show();function E(){B.dom.style[y]=C.dom.style[y];B.afterFx(D)}z[y]={from:A||"ffff9c",to:D.endColor||C.getColor(y)||"ffffff"};arguments.callee.anim=C.fxanim(z,D,"color",1,"easeIn",E)});return C},frame:function(y,B,C){var A=this,z=A.getFxEl();C=C||{};z.queueFx(C,function(){y=y||"#C3DAF9";if(y.length==6){y="#"+y}B=B||1;A.show();var F=A.getXY(),G=A.dom,D={x:F[0],y:F[1],0:F[0],1:F[1],width:G.offsetWidth,height:G.offsetHeight};function E(){var H=Ext.get(document.body||document.documentElement).createChild({style:{visbility:t,position:w,"z-index":35000,border:"0px solid "+y}}),I=Ext.isBorderBox?2:1;H.animate({top:{from:D.y,to:D.y-20},left:{from:D.x,to:D.x-20},borderWidth:{from:0,to:10},opacity:{from:1,to:0},height:{from:D.height,to:D.height+20*I},width:{from:D.width,to:D.width+20*I}},C.duration||1,function(){H.remove();--B>0?E():z.afterFx(C)})}E.call(A)});return A},pause:function(z){var y=this.getFxEl();y.queueFx({},function(){setTimeout(function(){y.afterFx({})},z*1000)});return this},fadeIn:function(A){var z=this,y=z.getFxEl();A=A||{};y.queueFx(A,function(){z.setOpacity(0);z.fixDisplay();z.dom.style.visibility=s;var B=A.endOpacity||1;arguments.callee.anim=z.fxanim({opacity:{to:B}},A,u,0.5,p,function(){if(B==1){this.clearOpacity()}y.afterFx(A)})});return z},fadeOut:function(B){B=B||{};var A=this,z=A.dom.style,y=A.getFxEl(),C=B.endOpacity||0;y.queueFx(B,function(){arguments.callee.anim=A.fxanim({opacity:{to:C}},B,u,0.5,p,function(){if(C==0){A.visibilityMode==Ext.Element.DISPLAY||B.useDisplay?z.display="none":z.visibility=t;A.clearOpacity()}y.afterFx(B)})});return A},scale:function(y,z,B){var A=this;A.shift(Ext.apply({},B,{width:y,height:z}));return A},shift:function(A){var z=this;A=A||{};var y=z.getFxEl();y.queueFx(A,function(){var B={};for(var C in A){if(A[C]!=x){B[C]={to:A[C]}}}B.width?B.width.to=z.adjustWidth(A.width):B;B.height?B.height.to=z.adjustWidth(A.height):B;if(B.x||B.y||B.xy){B.points=B.xy||{to:[B.x?B.x.to:z.getX(),B.y?B.y.to:z.getY()]}}arguments.callee.anim=z.fxanim(B,A,b,0.35,p,function(){y.afterFx(A)})});return z},ghost:function(y,B){var A=this,z=A.getFxEl();B=B||{};y=y||"b";z.queueFx(B,function(){var G=A.getFxRestore(),D=A.getWidth(),F=A.getHeight(),E=A.dom.style,I=function(){if(B.useDisplay){z.setDisplayed(r)}else{z.hide()}z.clearOpacity();z.setPositioning(G.pos);E.width=G.width;E.width=G.width;z.afterFx(B)},C={opacity:{to:0},points:{}},H=C.points;H.by=A.switchStatements(y.toLowerCase(),function(K,J){return[K,J]},{t:[0,-F],l:[-D,0],r:[D,0],b:[0,F],tl:[-D,-F],bl:[-D,F],br:[D,F],tr:[D,-F]});arguments.callee.anim=A.fxanim(C,B,b,0.5,p,I)});return A},syncFx:function(){var y=this;y.fxDefaults=Ext.apply(y.fxDefaults||{},{block:r,concurrent:j,stopFx:r});return y},sequenceFx:function(){var y=this;y.fxDefaults=Ext.apply(y.fxDefaults||{},{block:r,concurrent:r,stopFx:r});return y},nextFx:function(){var y=this.fxQueue[0];if(y){y.call(this)}},hasActiveFx:function(){return this.fxQueue&&this.fxQueue[0]},stopFx:function(y){var z=this;if(z.hasActiveFx()){var A=z.fxQueue[0];if(A&&A.anim&&A.anim.isAnimated){z.fxQueue=[A];A.anim.stop(y!==undefined?y:true)}}return z},beforeFx:function(y){if(this.hasActiveFx()&&!y.concurrent){if(y.stopFx){this.stopFx();return j}return r}return j},hasFxBlock:function(){var y=this.fxQueue;return y&&y[0]&&y[0].block},queueFx:function(B,y){var z=this;if(!z.fxQueue){z.fxQueue=[]}if(!z.hasFxBlock()){Ext.applyIf(B,z.fxDefaults);if(!B.concurrent){var A=z.beforeFx(B);y.block=B.block;z.fxQueue.push(y);if(A){z.nextFx()}}else{y.call(z)}}return z},fxWrap:function(E,C,B){var A=this,z,y;if(!C.wrap||!(z=Ext.get(C.wrap))){if(C.fixPosition){y=A.getXY()}var D=document.createElement("div");D.style.visibility=B;z=Ext.get(A.dom.parentNode.insertBefore(D,A.dom));z.setPositioning(E);if(z.isStyle(n,"static")){z.position("relative")}A.clearPositioning("auto");z.clip();z.dom.appendChild(A.dom);if(y){z.setXY(y)}}return z},fxUnwrap:function(y,B,A){var z=this;z.clearPositioning();z.setPositioning(B);if(!A.wrap){y.dom.parentNode.insertBefore(z.dom,y.dom);y.remove()}},getFxRestore:function(){var y=this.dom.style;return{pos:this.getPositioning(),width:y.width,height:y.height}},afterFx:function(z){var y=this;if(z.afterStyle){y.setStyle(z.afterStyle)}if(z.afterCls){y.addClass(z.afterCls)}if(z.remove==j){y.remove()}if(z.callback){z.callback.call(z.scope,y)}if(!z.concurrent){y.fxQueue.shift();y.nextFx()}},getFxEl:function(){return Ext.get(this.dom)},fxanim:function(B,C,z,D,A,y){z=z||"run";C=C||{};var E=Ext.lib.Anim[z](this.dom,B,(C.duration||D)||0.35,(C.easing||A)||p,y,this);C.anim=E;return E}};Ext.Fx.resize=Ext.Fx.scale;Ext.Element.addMethods(Ext.Fx)})();Ext.CompositeElementLite=function(b,a){this.elements=[];this.add(b,a);this.el=new Ext.Element.Flyweight()};Ext.CompositeElementLite.prototype={isComposite:true,getCount:function(){return this.elements.length},add:function(b){if(b){if(Ext.isArray(b)){this.elements=this.elements.concat(b)}else{var a=this.elements;Ext.each(b,function(d){a.push(d)})}}return this},invoke:function(e,a){var b=this.elements,d=this.el;Ext.each(b,function(g){d.dom=g;Ext.Element.prototype[e].apply(d,a)});return this},item:function(a){var b=this;if(!b.elements[a]){return null}b.el.dom=b.elements[a];return b.el},addListener:function(a,e,d,b){Ext.each(this.elements,function(g){Ext.EventManager.on(g,a,e,d||g,b)});return this},each:function(d,b){var e=this,a=e.el;Ext.each(e.elements,function(h,g){a.dom=h;return d.call(b||a,a,e,g)});return e},indexOf:function(a){return this.elements.indexOf(Ext.getDom(a))},replaceElement:function(g,e,a){var b=!isNaN(g)?g:this.indexOf(g),h;if(b>-1){e=Ext.getDom(e);if(a){h=this.elements[b];h.parentNode.insertBefore(e,h);Ext.removeNode(h)}this.elements.splice(b,1,e)}return this},clear:function(){this.elements=[]}};Ext.CompositeElementLite.prototype.on=Ext.CompositeElementLite.prototype.addListener;(function(){var d,b=Ext.Element.prototype,a=Ext.CompositeElementLite.prototype;for(var d in b){if(Ext.isFunction(b[d])){(function(e){a[e]=a[e]||function(){return this.invoke(e,arguments)}}).call(a,d)}}})();if(Ext.DomQuery){Ext.Element.selectorFunction=Ext.DomQuery.select}Ext.Element.select=function(a,e,b){var d;if(typeof a=="string"){d=Ext.Element.selectorFunction(a,b)}else{if(a.length!==undefined){d=a}else{throw"Invalid selector"}}return new Ext.CompositeElementLite(d)};Ext.select=Ext.Element.select;Ext.apply(Ext.CompositeElementLite.prototype,{addElements:function(d,a){if(!d){return this}if(typeof d=="string"){d=Ext.Element.selectorFunction(d,a)}var b=this.elements;Ext.each(d,function(g){b.push(Ext.get(g))});return this},fill:function(a){this.elements=[];this.add(a);return this},first:function(){return this.item(0)},last:function(){return this.item(this.getCount()-1)},contains:function(a){return this.indexOf(a)!=-1},filter:function(a){var b=[];this.each(function(d){if(d.is(a)){b[b.length]=d.dom}});this.fill(b);return this},removeElement:function(e,g){var d=this,a=this.elements,b;Ext.each(e,function(h){if(b=(a[h]||a[h=d.indexOf(h)])){if(g){b.dom?b.remove():Ext.removeNode(b)}a.splice(h,1)}});return this}});Ext.CompositeElement=function(b,a){this.elements=[];this.add(b,a)};Ext.extend(Ext.CompositeElement,Ext.CompositeElementLite,{invoke:function(b,a){Ext.each(this.elements,function(d){Ext.Element.prototype[b].apply(d,a)});return this},add:function(d,a){if(!d){return this}if(typeof d=="string"){d=Ext.Element.selectorFunction(d,a)}var b=this.elements;Ext.each(d,function(g){b.push(Ext.get(g))});return this},item:function(a){return this.elements[a]||null},indexOf:function(a){return this.elements.indexOf(Ext.get(a))},filter:function(a){var d=this,b=[];Ext.each(d.elements,function(e){if(e.is(a)){b.push(Ext.get(e))}});d.elements=b;return d},each:function(b,a){Ext.each(this.elements,function(g,d){return b.call(a||g,g,this,d)},this);return this}});Ext.Element.select=function(a,e,b){var d;if(typeof a=="string"){d=Ext.Element.selectorFunction(a,b)}else{if(a.length!==undefined){d=a}else{throw"Invalid selector"}}return(e===true)?new Ext.CompositeElement(d):new Ext.CompositeElementLite(d)};Ext.select=Ext.Element.select;(function(){var d="beforerequest",n="requestcomplete",m="requestexception",g=undefined,k="load",j="POST",l="GET",h=window;Ext.data.Connection=function(o){Ext.apply(this,o);this.addEvents(d,n,m);Ext.data.Connection.superclass.constructor.call(this)};function b(o){this.transId=false;var p=o.argument.options;o.argument=p?p.argument:null;this.fireEvent(n,this,o,p);if(p.success){p.success.call(p.scope,o,p)}if(p.callback){p.callback.call(p.scope,p,true,o)}}function e(o,q){this.transId=false;var p=o.argument.options;o.argument=p?p.argument:null;this.fireEvent(m,this,o,p,q);if(p.failure){p.failure.call(p.scope,o,p)}if(p.callback){p.callback.call(p.scope,p,false,o)}}function a(t,p,q){var r=Ext.id(),A=document,u=A.createElement("iframe"),s=Ext.getDom(t.form),z=[],y;u.id=u.name=r;u.className="x-hidden";u.src=Ext.SSL_SECURE_URL;A.body.appendChild(u);if(Ext.isIE){A.frames[r].name=r}s.target=r;s.method=j;s.enctype=s.encoding="multipart/form-data";s.action=q||"";p=Ext.urlDecode(p,false);for(var x in p){if(p.hasOwnProperty(x)){y=A.createElement("input");y.type="hidden";y.value=p[y.name=x];s.appendChild(y);z.push(y)}}function w(){var B=this,o={responseText:"",responseXML:null,argument:t.argument},E,D;try{E=u.contentWindow.document||u.contentDocument||h.frames[r].document;if(E){if(E.body){if(/textarea/i.test((D=E.body.firstChild||{}).tagName)){o.responseText=D.value}else{o.responseText=E.body.innerHTML}}else{o.responseXML=E.XMLDocument||E}}}catch(C){}Ext.EventManager.removeListener(u,k,w,B);B.fireEvent(n,B,o,t);Ext.callback(t.success,t.scope,[o,t]);Ext.callback(t.callback,t.scope,[t,true,o]);if(!B.debugUploads){setTimeout(function(){Ext.removeNode(u)},100)}}Ext.EventManager.on(u,k,w,this);s.submit();Ext.each(z,function(o){Ext.removeNode(o)})}Ext.extend(Ext.data.Connection,Ext.util.Observable,{timeout:30000,autoAbort:false,disableCaching:true,disableCachingParam:"_dc",request:function(u){var y=this;if(y.fireEvent(d,y,u)){if(u.el){if(!Ext.isEmpty(u.indicatorText)){y.indicatorText='<div class="loading-indicator">'+u.indicatorText+"</div>"}if(y.indicatorText){Ext.getDom(u.el).innerHTML=y.indicatorText}u.success=(Ext.isFunction(u.success)?u.success:function(){}).createInterceptor(function(o){Ext.getDom(u.el).innerHTML=o.responseText})}var s=u.params,r=u.url||y.url,q,w={success:b,failure:e,scope:y,argument:{options:u},timeout:u.timeout||y.timeout},t,z;if(Ext.isFunction(s)){s=s.call(u.scope||h,u)}s=Ext.urlEncode(y.extraParams,typeof s=="object"?Ext.urlEncode(s):s);if(Ext.isFunction(r)){r=r.call(u.scope||h,u)}if(t=Ext.getDom(u.form)){r=r||t.action;if(u.isUpload||/multipart\/form-data/i.test(t.getAttribute("enctype"))){return a.call(y,u,s,r)}z=Ext.lib.Ajax.serializeForm(t);s=s?(s+"&"+z):z}q=u.method||y.method||((s||u.xmlData||u.jsonData)?j:l);if(q==l&&(y.disableCaching||u.disableCaching!==false)){var x=u.disableCachingParam||y.disableCachingParam;r+=(r.indexOf("?")!=-1?"&":"?")+x+"="+(new Date().getTime())}u.headers=Ext.apply(u.headers||{},y.defaultHeaders||{});if(u.autoAbort===true||y.autoAbort){y.abort()}if((q==l||u.xmlData||u.jsonData)&&s){r+=(/\?/.test(r)?"&":"?")+s;s=""}return y.transId=Ext.lib.Ajax.request(q,r,w,s,u)}else{return u.callback?u.callback.apply(u.scope,[u,g,g]):null}},isLoading:function(o){return o?Ext.lib.Ajax.isCallInProgress(o):!!this.transId},abort:function(o){if(o||this.isLoading()){Ext.lib.Ajax.abort(o||this.transId)}}})})();Ext.Ajax=new Ext.data.Connection({autoAbort:false,serializeForm:function(a){return Ext.lib.Ajax.serializeForm(a)}});Ext.UpdateManager=Ext.Updater=Ext.extend(Ext.util.Observable,function(){var b="beforeupdate",e="update",d="failure";function a(j){var k=this;k.transaction=null;if(j.argument.form&&j.argument.reset){try{j.argument.form.reset()}catch(l){}}if(k.loadScripts){k.renderer.render(k.el,j,k,h.createDelegate(k,[j]))}else{k.renderer.render(k.el,j,k);h.call(k,j)}}function h(j,k,l){this.fireEvent(k||e,this.el,j);if(Ext.isFunction(j.argument.callback)){j.argument.callback.call(j.argument.scope,this.el,Ext.isEmpty(l)?true:false,j,j.argument.options)}}function g(j){h.call(this,j,d,!!(this.transaction=null))}return{constructor:function(k,j){var l=this;k=Ext.get(k);if(!j&&k.updateManager){return k.updateManager}l.el=k;l.defaultUrl=null;l.addEvents(b,e,d);Ext.apply(l,Ext.Updater.defaults);l.transaction=null;l.refreshDelegate=l.refresh.createDelegate(l);l.updateDelegate=l.update.createDelegate(l);l.formUpdateDelegate=(l.formUpdate||function(){}).createDelegate(l);l.renderer=l.renderer||l.getDefaultRenderer();Ext.Updater.superclass.constructor.call(l)},setRenderer:function(j){this.renderer=j},getRenderer:function(){return this.renderer},getDefaultRenderer:function(){return new Ext.Updater.BasicRenderer()},setDefaultUrl:function(j){this.defaultUrl=j},getEl:function(){return this.el},update:function(k,q,r,n){var m=this,j,l;if(m.fireEvent(b,m.el,k,q)!==false){if(Ext.isObject(k)){j=k;k=j.url;q=q||j.params;r=r||j.callback;n=n||j.discardUrl;l=j.scope;if(!Ext.isEmpty(j.nocache)){m.disableCaching=j.nocache}if(!Ext.isEmpty(j.text)){m.indicatorText='<div class="loading-indicator">'+j.text+"</div>"}if(!Ext.isEmpty(j.scripts)){m.loadScripts=j.scripts}if(!Ext.isEmpty(j.timeout)){m.timeout=j.timeout}}m.showLoading();if(!n){m.defaultUrl=k}if(Ext.isFunction(k)){k=k.call(m)}var p=Ext.apply({},{url:k,params:(Ext.isFunction(q)&&l)?q.createDelegate(l):q,success:a,failure:g,scope:m,callback:undefined,timeout:(m.timeout*1000),disableCaching:m.disableCaching,argument:{options:j,url:k,form:null,callback:r,scope:l||window,params:q}},j);m.transaction=Ext.Ajax.request(p)}},formUpdate:function(m,j,l,n){var k=this;if(k.fireEvent(b,k.el,m,j)!==false){if(Ext.isFunction(j)){j=j.call(k)}m=Ext.getDom(m);k.transaction=Ext.Ajax.request({form:m,url:j,success:a,failure:g,scope:k,timeout:(k.timeout*1000),argument:{url:j,form:m,callback:n,reset:l}});k.showLoading.defer(1,k)}},startAutoRefresh:function(k,l,n,o,j){var m=this;if(j){m.update(l||m.defaultUrl,n,o,true)}if(m.autoRefreshProcId){clearInterval(m.autoRefreshProcId)}m.autoRefreshProcId=setInterval(m.update.createDelegate(m,[l||m.defaultUrl,n,o,true]),k*1000)},stopAutoRefresh:function(){if(this.autoRefreshProcId){clearInterval(this.autoRefreshProcId);delete this.autoRefreshProcId}},isAutoRefreshing:function(){return!!this.autoRefreshProcId},showLoading:function(){if(this.showLoadIndicator){this.el.dom.innerHTML=this.indicatorText}},abort:function(){if(this.transaction){Ext.Ajax.abort(this.transaction)}},isUpdating:function(){return this.transaction?Ext.Ajax.isLoading(this.transaction):false},refresh:function(j){if(this.defaultUrl){this.update(this.defaultUrl,null,j,true)}}}}());Ext.Updater.defaults={timeout:30,disableCaching:false,showLoadIndicator:true,indicatorText:'<div class="loading-indicator">Loading...</div>',loadScripts:false,sslBlankUrl:(Ext.SSL_SECURE_URL||"javascript:false")};Ext.Updater.updateElement=function(e,d,g,b){var a=Ext.get(e).getUpdater();Ext.apply(a,b);a.update(d,g,b?b.callback:null)};Ext.Updater.BasicRenderer=function(){};Ext.Updater.BasicRenderer.prototype={render:function(d,a,b,e){d.update(a.responseText,b.loadScripts,e)}};(function(){function b(e){var d=Array.prototype.slice.call(arguments,1);return e.replace(/\{(\d+)\}/g,function(g,h){return d[h]})}Date.formatCodeToRegex=function(e,d){var g=Date.parseCodes[e];if(g){g=typeof g=="function"?g():g;Date.parseCodes[e]=g}return g?Ext.applyIf({c:g.c?b(g.c,d||"{0}"):g.c},g):{g:0,c:null,s:Ext.escapeRe(e)}};var a=Date.formatCodeToRegex;Ext.apply(Date,{parseFunctions:{"M$":function(e,d){var g=new RegExp("\\/Date\\((\\d+)(?:[+-]\\d{4})?\\)\\/");var h=(e||"").match(g);return h?new Date(h[1]*1):null}},parseRegexes:[],formatFunctions:{"M$":function(){return"\\/Date("+this.getTime()+")\\/"}},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],y2kYear:50,MILLI:"ms",SECOND:"s",MINUTE:"mi",HOUR:"h",DAY:"d",MONTH:"mo",YEAR:"y",dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNumbers:{Jan:0,Feb:1,Mar:2,Apr:3,May:4,Jun:5,Jul:6,Aug:7,Sep:8,Oct:9,Nov:10,Dec:11},getShortMonthName:function(d){return Date.monthNames[d].substring(0,3)},getShortDayName:function(d){return Date.dayNames[d].substring(0,3)},getMonthNumber:function(d){return Date.monthNumbers[d.substring(0,1).toUpperCase()+d.substring(1,3).toLowerCase()]},formatCodes:{d:"String.leftPad(this.getDate(), 2, '0')",D:"Date.getShortDayName(this.getDay())",j:"this.getDate()",l:"Date.dayNames[this.getDay()]",N:"(this.getDay() ? this.getDay() : 7)",S:"this.getSuffix()",w:"this.getDay()",z:"this.getDayOfYear()",W:"String.leftPad(this.getWeekOfYear(), 2, '0')",F:"Date.monthNames[this.getMonth()]",m:"String.leftPad(this.getMonth() + 1, 2, '0')",M:"Date.getShortMonthName(this.getMonth())",n:"(this.getMonth() + 1)",t:"this.getDaysInMonth()",L:"(this.isLeapYear() ? 1 : 0)",o:"(this.getFullYear() + (this.getWeekOfYear() == 1 && this.getMonth() > 0 ? +1 : (this.getWeekOfYear() >= 52 && this.getMonth() < 11 ? -1 : 0)))",Y:"this.getFullYear()",y:"('' + this.getFullYear()).substring(2, 4)",a:"(this.getHours() < 12 ? 'am' : 'pm')",A:"(this.getHours() < 12 ? 'AM' : 'PM')",g:"((this.getHours() % 12) ? this.getHours() % 12 : 12)",G:"this.getHours()",h:"String.leftPad((this.getHours() % 12) ? this.getHours() % 12 : 12, 2, '0')",H:"String.leftPad(this.getHours(), 2, '0')",i:"String.leftPad(this.getMinutes(), 2, '0')",s:"String.leftPad(this.getSeconds(), 2, '0')",u:"String.leftPad(this.getMilliseconds(), 3, '0')",O:"this.getGMTOffset()",P:"this.getGMTOffset(true)",T:"this.getTimezone()",Z:"(this.getTimezoneOffset() * -60)",c:function(){for(var k="Y-m-dTH:i:sP",h=[],g=0,d=k.length;g<d;++g){var j=k.charAt(g);h.push(j=="T"?"'T'":Date.getFormatCode(j))}return h.join(" + ")},U:"Math.round(this.getTime() / 1000)"},isValid:function(p,e,o,l,j,k,g){l=l||0;j=j||0;k=k||0;g=g||0;var n=new Date(p,e-1,o,l,j,k,g);return p==n.getFullYear()&&e==n.getMonth()+1&&o==n.getDate()&&l==n.getHours()&&j==n.getMinutes()&&k==n.getSeconds()&&g==n.getMilliseconds()},parseDate:function(e,h,d){var g=Date.parseFunctions;if(g[h]==null){Date.createParser(h)}return g[h](e,d)},getFormatCode:function(e){var d=Date.formatCodes[e];if(d){d=typeof d=="function"?d():d;Date.formatCodes[e]=d}return d||("'"+String.escape(e)+"'")},createFormat:function(j){var h=[],d=false,g="";for(var e=0;e<j.length;++e){g=j.charAt(e);if(!d&&g=="\\"){d=true}else{if(d){d=false;h.push("'"+String.escape(g)+"'")}else{h.push(Date.getFormatCode(g))}}}Date.formatFunctions[j]=new Function("return "+h.join("+"))},createParser:function(){var d=["var dt, y, m, d, h, i, s, ms, o, z, zz, u, v,","results = String(input).match(Date.parseRegexes[{0}]);","if(results){","{1}","if(u != null){","v = new Date(u * 1000);","}else{","dt = (new Date()).clearTime();","y = y >= 0? y : dt.getFullYear();","m = m >= 0? m : dt.getMonth();","d = d || dt.getDate();","h = h || dt.getHours()","i = i || dt.getMinutes();","s = s || dt.getSeconds();","ms = ms || dt.getMilliseconds();","if(z >= 0 && y >= 0){","v = new Date(y, 0, 1, h, i, s, ms);","v = !strict? v : (strict === true && (z <= 364 || (v.isLeapYear() && z <= 365))? v.add(Date.DAY, z) : null);","}else if(strict === true && !Date.isValid(y, m + 1, d, h, i, s, ms)){","v = null;","}else{","v = new Date(y, m, d, h, i, s, ms);","}","}","}","if(v){","if(zz != null){","v = v.add(Date.SECOND, -v.getTimezoneOffset() * 60 - zz);","}else if(o){","v = v.add(Date.MINUTE, -v.getTimezoneOffset() + (sn == '+'? -1 : 1) * (hr * 60 + mn));","}","}","return v;"].join("\n");return function(n){var g=Date.parseRegexes.length,o=1,h=[],m=[],l=false,e="";for(var k=0;k<n.length;++k){e=n.charAt(k);if(!l&&e=="\\"){l=true}else{if(l){l=false;m.push(String.escape(e))}else{var j=a(e,o);o+=j.g;m.push(j.s);if(j.g&&j.c){h.push(j.c)}}}}Date.parseRegexes[g]=new RegExp("^"+m.join("")+"$","i");Date.parseFunctions[n]=new Function("input","strict",b(d,g,h.join("")))}}(),parseCodes:{d:{g:1,c:"d = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},j:{g:1,c:"d = parseInt(results[{0}], 10);\n",s:"(\\d{1,2})"},D:function(){for(var d=[],e=0;e<7;d.push(Date.getShortDayName(e)),++e){}return{g:0,c:null,s:"(?:"+d.join("|")+")"}},l:function(){return{g:0,c:null,s:"(?:"+Date.dayNames.join("|")+")"}},N:{g:0,c:null,s:"[1-7]"},S:{g:0,c:null,s:"(?:st|nd|rd|th)"},w:{g:0,c:null,s:"[0-6]"},z:{g:1,c:"z = parseInt(results[{0}], 10);\n",s:"(\\d{1,3})"},W:{g:0,c:null,s:"(?:\\d{2})"},F:function(){return{g:1,c:"m = parseInt(Date.getMonthNumber(results[{0}]), 10);\n",s:"("+Date.monthNames.join("|")+")"}},M:function(){for(var d=[],e=0;e<12;d.push(Date.getShortMonthName(e)),++e){}return Ext.applyIf({s:"("+d.join("|")+")"},a("F"))},m:{g:1,c:"m = parseInt(results[{0}], 10) - 1;\n",s:"(\\d{2})"},n:{g:1,c:"m = parseInt(results[{0}], 10) - 1;\n",s:"(\\d{1,2})"},t:{g:0,c:null,s:"(?:\\d{2})"},L:{g:0,c:null,s:"(?:1|0)"},o:function(){return a("Y")},Y:{g:1,c:"y = parseInt(results[{0}], 10);\n",s:"(\\d{4})"},y:{g:1,c:"var ty = parseInt(results[{0}], 10);\ny = ty > Date.y2kYear ? 1900 + ty : 2000 + ty;\n",s:"(\\d{1,2})"},a:{g:1,c:"if (results[{0}] == 'am') {\nif (h == 12) { h = 0; }\n} else { if (h < 12) { h += 12; }}",s:"(am|pm)"},A:{g:1,c:"if (results[{0}] == 'AM') {\nif (h == 12) { h = 0; }\n} else { if (h < 12) { h += 12; }}",s:"(AM|PM)"},g:function(){return a("G")},G:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(\\d{1,2})"},h:function(){return a("H")},H:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},i:{g:1,c:"i = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},s:{g:1,c:"s = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},u:{g:1,c:"ms = results[{0}]; ms = parseInt(ms, 10)/Math.pow(10, ms.length - 3);\n",s:"(\\d+)"},O:{g:1,c:["o = results[{0}];","var sn = o.substring(0,1),","hr = o.substring(1,3)*1 + Math.floor(o.substring(3,5) / 60),","mn = o.substring(3,5) % 60;","o = ((-12 <= (hr*60 + mn)/60) && ((hr*60 + mn)/60 <= 14))? (sn + String.leftPad(hr, 2, '0') + String.leftPad(mn, 2, '0')) : null;\n"].join("\n"),s:"([+-]\\d{4})"},P:{g:1,c:["o = results[{0}];","var sn = o.substring(0,1),","hr = o.substring(1,3)*1 + Math.floor(o.substring(4,6) / 60),","mn = o.substring(4,6) % 60;","o = ((-12 <= (hr*60 + mn)/60) && ((hr*60 + mn)/60 <= 14))? (sn + String.leftPad(hr, 2, '0') + String.leftPad(mn, 2, '0')) : null;\n"].join("\n"),s:"([+-]\\d{2}:\\d{2})"},T:{g:0,c:null,s:"[A-Z]{1,4}"},Z:{g:1,c:"zz = results[{0}] * 1;\nzz = (-43200 <= zz && zz <= 50400)? zz : null;\n",s:"([+-]?\\d{1,5})"},c:function(){var g=[],d=[a("Y",1),a("m",2),a("d",3),a("h",4),a("i",5),a("s",6),{c:"ms = results[7] || '0'; ms = parseInt(ms, 10)/Math.pow(10, ms.length - 3);\n"},{c:["if(results[8]) {","if(results[8] == 'Z'){","zz = 0;","}else if (results[8].indexOf(':') > -1){",a("P",8).c,"}else{",a("O",8).c,"}","}"].join("\n")}];for(var h=0,e=d.length;h<e;++h){g.push(d[h].c)}return{g:1,c:g.join(""),s:[d[0].s,"(?:","-",d[1].s,"(?:","-",d[2].s,"(?:","(?:T| )?",d[3].s,":",d[4].s,"(?::",d[5].s,")?","(?:(?:\\.|,)(\\d+))?","(Z|(?:[-+]\\d{2}(?::)?\\d{2}))?",")?",")?",")?"].join("")}},U:{g:1,c:"u = parseInt(results[{0}], 10);\n",s:"(-?\\d+)"}}})}());Ext.apply(Date.prototype,{dateFormat:function(a){if(Date.formatFunctions[a]==null){Date.createFormat(a)}return Date.formatFunctions[a].call(this)},getTimezone:function(){return this.toString().replace(/^.* (?:\((.*)\)|([A-Z]{1,4})(?:[\-+][0-9]{4})?(?: -?\d+)?)$/,"$1$2").replace(/[^A-Z]/g,"")},getGMTOffset:function(a){return(this.getTimezoneOffset()>0?"-":"+")+String.leftPad(Math.floor(Math.abs(this.getTimezoneOffset())/60),2,"0")+(a?":":"")+String.leftPad(Math.abs(this.getTimezoneOffset()%60),2,"0")},getDayOfYear:function(){var a=0;Date.daysInMonth[1]=this.isLeapYear()?29:28;for(var b=0;b<this.getMonth();++b){a+=Date.daysInMonth[b]}return a+this.getDate()-1},getWeekOfYear:function(){var a=86400000,b=7*a;return function(){var e=Date.UTC(this.getFullYear(),this.getMonth(),this.getDate()+3)/a,d=Math.floor(e/7),g=new Date(d*b).getUTCFullYear();return d-Math.floor(Date.UTC(g,0,7)/b)+1}}(),isLeapYear:function(){var a=this.getFullYear();return!!((a&3)==0&&(a%100||(a%400==0&&a)))},getFirstDayOfMonth:function(){var a=(this.getDay()-(this.getDate()-1))%7;return(a<0)?(a+7):a},getLastDayOfMonth:function(){var a=(this.getDay()+(Date.daysInMonth[this.getMonth()]-this.getDate()))%7;return(a<0)?(a+7):a},getFirstDateOfMonth:function(){return new Date(this.getFullYear(),this.getMonth(),1)},getLastDateOfMonth:function(){return new Date(this.getFullYear(),this.getMonth(),this.getDaysInMonth())},getDaysInMonth:function(){Date.daysInMonth[1]=this.isLeapYear()?29:28;return Date.daysInMonth[this.getMonth()]},getSuffix:function(){switch(this.getDate()){case 1:case 21:case 31:return"st";case 2:case 22:return"nd";case 3:case 23:return"rd";default:return"th"}},clone:function(){return new Date(this.getTime())},isDST:function(){return new Date(this.getFullYear(),0,1).getTimezoneOffset()!=this.getTimezoneOffset()},clearTime:function(g){if(g){return this.clone().clearTime()}var b=this.getDate();this.setHours(0);this.setMinutes(0);this.setSeconds(0);this.setMilliseconds(0);if(this.getDate()!=b){for(var a=1,e=this.add(Date.HOUR,a);e.getDate()!=b;a++,e=this.add(Date.HOUR,a)){}this.setDate(b);this.setHours(e.getHours())}return this},add:function(b,e){var g=this.clone();if(!b||e===0){return g}switch(b.toLowerCase()){case Date.MILLI:g.setMilliseconds(this.getMilliseconds()+e);break;case Date.SECOND:g.setSeconds(this.getSeconds()+e);break;case Date.MINUTE:g.setMinutes(this.getMinutes()+e);break;case Date.HOUR:g.setHours(this.getHours()+e);break;case Date.DAY:g.setDate(this.getDate()+e);break;case Date.MONTH:var a=this.getDate();if(a>28){a=Math.min(a,this.getFirstDateOfMonth().add("mo",e).getLastDateOfMonth().getDate())}g.setDate(a);g.setMonth(this.getMonth()+e);break;case Date.YEAR:g.setFullYear(this.getFullYear()+e);break}return g},between:function(d,a){var b=this.getTime();return d.getTime()<=b&&b<=a.getTime()}});Date.prototype.format=Date.prototype.dateFormat;if(Ext.isSafari&&(navigator.userAgent.match(/WebKit\/(\d+)/)[1]||NaN)<420){Ext.apply(Date.prototype,{_xMonth:Date.prototype.setMonth,_xDate:Date.prototype.setDate,setMonth:function(a){if(a<=-1){var e=Math.ceil(-a),d=Math.ceil(e/12),b=(e%12)?12-e%12:0;this.setFullYear(this.getFullYear()-d);return this._xMonth(b)}else{return this._xMonth(a)}},setDate:function(a){return this.setTime(this.getTime()-(this.getDate()-a)*86400000)}})}Ext.util.DelayedTask=function(h,j,e){var g=this,b=null,a=b,d,l,k=function(){var m=new Date().getTime();if(m-l>=d){clearInterval(a);a=b;h.apply(j,e||[])}};g.delay=function(n,p,o,m){if(a&&n!=d){this.cancel()}d=n;l=new Date().getTime();h=p||h;j=o||j;e=m||e;if(!a){a=setInterval(k,d)}};g.cancel=function(){if(a){clearInterval(a);a=b}}};Ext.util.MixedCollection=function(b,a){this.items=[];this.map={};this.keys=[];this.length=0;this.addEvents("clear","add","replace","remove","sort");this.allowFunctions=b===true;if(a){this.getKey=a}Ext.util.MixedCollection.superclass.constructor.call(this)};Ext.extend(Ext.util.MixedCollection,Ext.util.Observable,{allowFunctions:false,add:function(b,d){if(arguments.length==1){d=arguments[0];b=this.getKey(d)}if(typeof b!="undefined"&&b!==null){var a=this.map[b];if(typeof a!="undefined"){return this.replace(b,d)}this.map[b]=d}this.length++;this.items.push(d);this.keys.push(b);this.fireEvent("add",this.length-1,d,b);return d},getKey:function(a){return a.id},replace:function(d,e){if(arguments.length==1){e=arguments[0];d=this.getKey(e)}var a=this.map[d];if(typeof d=="undefined"||d===null||typeof a=="undefined"){return this.add(d,e)}var b=this.indexOfKey(d);this.items[b]=e;this.map[d]=e;this.fireEvent("replace",d,a,e);return e},addAll:function(g){if(arguments.length>1||Ext.isArray(g)){var b=arguments.length>1?arguments:g;for(var e=0,a=b.length;e<a;e++){this.add(b[e])}}else{for(var d in g){if(this.allowFunctions||typeof g[d]!="function"){this.add(d,g[d])}}}},each:function(g,e){var b=[].concat(this.items);for(var d=0,a=b.length;d<a;d++){if(g.call(e||b[d],b[d],d,a)===false){break}}},eachKey:function(e,d){for(var b=0,a=this.keys.length;b<a;b++){e.call(d||window,this.keys[b],this.items[b],b,a)}},find:function(e,d){for(var b=0,a=this.items.length;b<a;b++){if(e.call(d||window,this.items[b],this.keys[b])){return this.items[b]}}return null},insert:function(a,b,d){if(arguments.length==2){d=arguments[1];b=this.getKey(d)}if(this.containsKey(b)){this.suspendEvents();this.removeKey(b);this.resumeEvents()}if(a>=this.length){return this.add(b,d)}this.length++;this.items.splice(a,0,d);if(typeof b!="undefined"&&b!=null){this.map[b]=d}this.keys.splice(a,0,b);this.fireEvent("add",a,d,b);return d},remove:function(a){return this.removeAt(this.indexOf(a))},removeAt:function(a){if(a<this.length&&a>=0){this.length--;var d=this.items[a];this.items.splice(a,1);var b=this.keys[a];if(typeof b!="undefined"){delete this.map[b]}this.keys.splice(a,1);this.fireEvent("remove",d,b);return d}return false},removeKey:function(a){return this.removeAt(this.indexOfKey(a))},getCount:function(){return this.length},indexOf:function(a){return this.items.indexOf(a)},indexOfKey:function(a){return this.keys.indexOf(a)},item:function(a){var b=typeof this.map[a]!="undefined"?this.map[a]:this.items[a];return typeof b!="function"||this.allowFunctions?b:null},itemAt:function(a){return this.items[a]},key:function(a){return this.map[a]},contains:function(a){return this.indexOf(a)!=-1},containsKey:function(a){return typeof this.map[a]!="undefined"},clear:function(){this.length=0;this.items=[];this.keys=[];this.map={};this.fireEvent("clear")},first:function(){return this.items[0]},last:function(){return this.items[this.length-1]},_sort:function(m,a,l){var d=String(a).toUpperCase()=="DESC"?-1:1;l=l||function(n,k){return n-k};var j=[],b=this.keys,h=this.items;for(var e=0,g=h.length;e<g;e++){j[j.length]={key:b[e],value:h[e],index:e}}j.sort(function(n,k){var o=l(n[m],k[m])*d;if(o==0){o=(n.index<k.index?-1:1)}return o});for(var e=0,g=j.length;e<g;e++){h[e]=j[e].value;b[e]=j[e].key}this.fireEvent("sort",this)},sort:function(a,b){this._sort("value",a,b)},keySort:function(a,b){this._sort("key",a,b||function(e,d){var h=String(e).toUpperCase(),g=String(d).toUpperCase();return h>g?1:(h<g?-1:0)})},getRange:function(g,a){var b=this.items;if(b.length<1){return[]}g=g||0;a=Math.min(typeof a=="undefined"?this.length-1:a,this.length-1);var e=[];if(g<=a){for(var d=g;d<=a;d++){e[e.length]=b[d]}}else{for(var d=g;d>=a;d--){e[e.length]=b[d]}}return e},filter:function(d,b,e,a){if(Ext.isEmpty(b,false)){return this.clone()}b=this.createValueMatcher(b,e,a);return this.filterBy(function(g){return g&&b.test(g[d])})},filterBy:function(h,g){var j=new Ext.util.MixedCollection();j.getKey=this.getKey;var b=this.keys,e=this.items;for(var d=0,a=e.length;d<a;d++){if(h.call(g||this,e[d],b[d])){j.add(b[d],e[d])}}return j},findIndex:function(d,b,g,e,a){if(Ext.isEmpty(b,false)){return-1}b=this.createValueMatcher(b,e,a);return this.findIndexBy(function(h){return h&&b.test(h[d])},null,g)},findIndexBy:function(h,g,j){var b=this.keys,e=this.items;for(var d=(j||0),a=e.length;d<a;d++){if(h.call(g||this,e[d],b[d])){return d}}return-1},createValueMatcher:function(b,d,a){if(!b.exec){b=String(b);b=new RegExp((d===true?"":"^")+Ext.escapeRe(b),a?"":"i")}return b},clone:function(){var g=new Ext.util.MixedCollection();var b=this.keys,e=this.items;for(var d=0,a=e.length;d<a;d++){g.add(b[d],e[d])}g.getKey=this.getKey;return g}});Ext.util.MixedCollection.prototype.get=Ext.util.MixedCollection.prototype.item;Ext.ComponentMgr=function(){var d=new Ext.util.MixedCollection();var b={};var a={};return{register:function(e){d.add(e)},unregister:function(e){d.remove(e)},get:function(e){return d.get(e)},onAvailable:function(h,g,e){d.on("add",function(j,k){if(k.id==h){g.call(e||k,k);d.un("add",g,e)}})},all:d,registerType:function(g,e){b[g]=e;e.xtype=g},create:function(e,g){return e.render?e:new b[e.xtype||g](e)},registerPlugin:function(g,e){a[g]=e;e.ptype=g},createPlugin:function(e,g){return new a[e.ptype||g](e)}}}();Ext.reg=Ext.ComponentMgr.registerType;Ext.preg=Ext.ComponentMgr.registerPlugin;Ext.create=Ext.ComponentMgr.create;Ext.util.JSON=new(function(){var useHasOwn=!!{}.hasOwnProperty,isNative=Ext.USE_NATIVE_JSON&&JSON&&JSON.toString()=="[object JSON]";var pad=function(n){return n<10?"0"+n:n};var m={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};var encodeString=function(s){if(/["\\\x00-\x1f]/.test(s)){return'"'+s.replace(/([\x00-\x1f\\"])/g,function(a,b){var c=m[b];if(c){return c}c=b.charCodeAt();return"\\u00"+Math.floor(c/16).toString(16)+(c%16).toString(16)})+'"'}return'"'+s+'"'};var encodeArray=function(o){var a=["["],b,i,l=o.length,v;for(i=0;i<l;i+=1){v=o[i];switch(typeof v){case"undefined":case"function":case"unknown":break;default:if(b){a.push(",")}a.push(v===null?"null":Ext.util.JSON.encode(v));b=true}}a.push("]");return a.join("")};this.encodeDate=function(o){return'"'+o.getFullYear()+"-"+pad(o.getMonth()+1)+"-"+pad(o.getDate())+"T"+pad(o.getHours())+":"+pad(o.getMinutes())+":"+pad(o.getSeconds())+'"'};this.encode=isNative?JSON.stringify:function(o){if(typeof o=="undefined"||o===null){return"null"}else{if(Ext.isArray(o)){return encodeArray(o)}else{if(Ext.isDate(o)){return Ext.util.JSON.encodeDate(o)}else{if(typeof o=="string"){return encodeString(o)}else{if(typeof o=="number"){return isFinite(o)?String(o):"null"}else{if(typeof o=="boolean"){return String(o)}else{var a=["{"],b,i,v;for(i in o){if(!useHasOwn||o.hasOwnProperty(i)){v=o[i];switch(typeof v){case"undefined":case"function":case"unknown":break;default:if(b){a.push(",")}a.push(this.encode(i),":",v===null?"null":this.encode(v));b=true}}}a.push("}");return a.join("")}}}}}}};this.decode=isNative?JSON.parse:function(json){return eval("("+json+")")}})();Ext.encode=Ext.util.JSON.encode;Ext.decode=Ext.util.JSON.decode;Ext.util.Format=function(){var trimRe=/^\s+|\s+$/g;return{ellipsis:function(value,len,word){if(value&&value.length>len){if(word){var vs=value.substr(0,len-2);var index=Math.max(vs.lastIndexOf(" "),vs.lastIndexOf("."),vs.lastIndexOf("!"),vs.lastIndexOf("?"));if(index==-1||index<(len-15)){return value.substr(0,len-3)+"..."}else{return vs.substr(0,index)+"..."}}else{return value.substr(0,len-3)+"..."}}return value},undef:function(value){return value!==undefined?value:""},defaultValue:function(value,defaultValue){return value!==undefined&&value!==""?value:defaultValue},htmlEncode:function(value){return!value?value:String(value).replace(/&/g,"&amp;").replace(/>/g,"&gt;").replace(/</g,"&lt;").replace(/"/g,"&quot;")},htmlDecode:function(value){return!value?value:String(value).replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&quot;/g,'"').replace(/&amp;/g,"&")},trim:function(value){return String(value).replace(trimRe,"")},substr:function(value,start,length){return String(value).substr(start,length)},lowercase:function(value){return String(value).toLowerCase()},uppercase:function(value){return String(value).toUpperCase()},capitalize:function(value){return!value?value:value.charAt(0).toUpperCase()+value.substr(1).toLowerCase()},call:function(value,fn){if(arguments.length>2){var args=Array.prototype.slice.call(arguments,2);args.unshift(value);return eval(fn).apply(window,args)}else{return eval(fn).call(window,value)}},usMoney:function(v){v=(Math.round((v-0)*100))/100;v=(v==Math.floor(v))?v+".00":((v*10==Math.floor(v*10))?v+"0":v);v=String(v);var ps=v.split(".");var whole=ps[0];var sub=ps[1]?"."+ps[1]:".00";var r=/(\d+)(\d{3})/;while(r.test(whole)){whole=whole.replace(r,"$1,$2")}v=whole+sub;if(v.charAt(0)=="-"){return"-$"+v.substr(1)}return"$"+v},date:function(v,format){if(!v){return""}if(!Ext.isDate(v)){v=new Date(Date.parse(v))}return v.dateFormat(format||"m/d/Y")},dateRenderer:function(format){return function(v){return Ext.util.Format.date(v,format)}},stripTagsRE:/<\/?[^>]+>/gi,stripTags:function(v){return!v?v:String(v).replace(this.stripTagsRE,"")},stripScriptsRe:/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,stripScripts:function(v){return!v?v:String(v).replace(this.stripScriptsRe,"")},fileSize:function(size){if(size<1024){return size+" bytes"}else{if(size<1048576){return(Math.round(((size*10)/1024))/10)+" KB"}else{return(Math.round(((size*10)/1048576))/10)+" MB"}}},math:function(){var fns={};return function(v,a){if(!fns[a]){fns[a]=new Function("v","return v "+a+";")}return fns[a](v)}}(),round:function(value,precision){var result=Number(value);if(typeof precision=="number"){precision=Math.pow(10,precision);result=Math.round(value*precision)/precision}return result},number:function(v,format){if(!format){return v}v*=1;if(typeof v!="number"||isNaN(v)){return""}var comma=",";var dec=".";var i18n=false;if(format.substr(format.length-2)=="/i"){format=format.substr(0,format.length-2);i18n=true;comma=".";dec=","}var hasComma=format.indexOf(comma)!=-1,psplit=(i18n?format.replace(/[^\d\,]/g,""):format.replace(/[^\d\.]/g,"")).split(dec);if(1<psplit.length){v=v.toFixed(psplit[1].length)}else{if(2<psplit.length){throw("NumberFormatException: invalid format, formats should have no more than 1 period: "+format)}else{v=v.toFixed(0)}}var fnum=v.toString();if(hasComma){psplit=fnum.split(".");var cnum=psplit[0],parr=[],j=cnum.length,m=Math.floor(j/3),n=cnum.length%3||3;for(var i=0;i<j;i+=n){if(i!=0){n=3}parr[parr.length]=cnum.substr(i,n);m-=1}fnum=parr.join(comma);if(psplit[1]){fnum+=dec+psplit[1]}}return format.replace(/[\d,?\.?]+/,fnum)},numberRenderer:function(format){return function(v){return Ext.util.Format.number(v,format)}},plural:function(v,s,p){return v+" "+(v==1?s:(p?p:s+"s"))},nl2br:function(v){return v===undefined||v===null?"":v.replace(/\n/g,"<br/>")}}}();Ext.XTemplate=function(){Ext.XTemplate.superclass.constructor.apply(this,arguments);var z=this,k=z.html,r=/<tpl\b[^>]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>/,e=/^<tpl\b[^>]*?for="(.*?)"/,w=/^<tpl\b[^>]*?if="(.*?)"/,y=/^<tpl\b[^>]*?exec="(.*?)"/,t,q=0,l=[],p="values",x="parent",n="xindex",o="xcount",g="return ",d="with(values){ ";k=["<tpl>",k,"</tpl>"].join("");while(t=k.match(r)){var b=t[0].match(e),a=t[0].match(w),B=t[0].match(y),h=null,j=null,u=null,A=b&&b[1]?b[1]:"";if(a){h=a&&a[1]?a[1]:null;if(h){j=new Function(p,x,n,o,d+g+(Ext.util.Format.htmlDecode(h))+"; }")}}if(B){h=B&&B[1]?B[1]:null;if(h){u=new Function(p,x,n,o,d+(Ext.util.Format.htmlDecode(h))+"; }")}}if(A){switch(A){case".":A=new Function(p,x,d+g+p+"; }");break;case"..":A=new Function(p,x,d+g+x+"; }");break;default:A=new Function(p,x,d+g+A+"; }")}}l.push({id:q,target:A,exec:u,test:j,body:t[1]||""});k=k.replace(t[0],"{xtpl"+q+"}");++q}Ext.each(l,function(m){z.compileTpl(m)});z.master=l[l.length-1];z.tpls=l};Ext.extend(Ext.XTemplate,Ext.Template,{re:/\{([\w-\.\#]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?(\s?[\+\-\*\\]\s?[\d\.\+\-\*\\\(\)]+)?\}/g,codeRe:/\{\[((?:\\\]|.|\n)*?)\]\}/g,applySubTemplate:function(a,k,j,e,d){var h=this,g,m=h.tpls[a],l,b=[];if((m.test&&!m.test.call(h,k,j,e,d))||(m.exec&&m.exec.call(h,k,j,e,d))){return""}l=m.target?m.target.call(h,k,j):k;g=l.len;j=m.target?k:j;if(m.target&&Ext.isArray(l)){Ext.each(l,function(n,o){b[b.length]=m.compiled.call(h,n,j,o+1,g)});return b.join("")}return m.compiled.call(h,l,j,e,d)},compileTpl:function(tpl){var fm=Ext.util.Format,useF=this.disableFormats!==true,sep=Ext.isGecko?"+":",",body;function fn(m,name,format,args,math){if(name.substr(0,4)=="xtpl"){return"'"+sep+"this.applySubTemplate("+name.substr(4)+", values, parent, xindex, xcount)"+sep+"'"}var v;if(name==="."){v="values"}else{if(name==="#"){v="xindex"}else{if(name.indexOf(".")!=-1){v=name}else{v="values['"+name+"']"}}}if(math){v="("+v+math+")"}if(format&&useF){args=args?","+args:"";if(format.substr(0,5)!="this."){format="fm."+format+"("}else{format='this.call("'+format.substr(5)+'", ';args=", values"}}else{args="";format="("+v+" === undefined ? '' : "}return"'"+sep+format+v+args+")"+sep+"'"}function codeFn(m,code){return"'"+sep+"("+code+")"+sep+"'"}if(Ext.isGecko){body="tpl.compiled = function(values, parent, xindex, xcount){ return '"+tpl.body.replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn).replace(this.codeRe,codeFn)+"';};"}else{body=["tpl.compiled = function(values, parent, xindex, xcount){ return ['"];body.push(tpl.body.replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn).replace(this.codeRe,codeFn));body.push("'].join('');};");body=body.join("")}eval(body);return this},applyTemplate:function(a){return this.master.compiled.call(this,a,{},1,1)},compile:function(){return this}});Ext.XTemplate.prototype.apply=Ext.XTemplate.prototype.applyTemplate;Ext.XTemplate.from=function(a){a=Ext.getDom(a);return new Ext.XTemplate(a.value||a.innerHTML)};Ext.util.CSS=function(){var e=null;var d=document;var b=/(-[a-z])/gi;var a=function(g,h){return h.charAt(1).toUpperCase()};return{createStyleSheet:function(j,m){var h;var g=d.getElementsByTagName("head")[0];var l=d.createElement("style");l.setAttribute("type","text/css");if(m){l.setAttribute("id",m)}if(Ext.isIE){g.appendChild(l);h=l.styleSheet;h.cssText=j}else{try{l.appendChild(d.createTextNode(j))}catch(k){l.cssText=j}g.appendChild(l);h=l.styleSheet?l.styleSheet:(l.sheet||d.styleSheets[d.styleSheets.length-1])}this.cacheStyleSheet(h);return h},removeStyleSheet:function(h){var g=d.getElementById(h);if(g){g.parentNode.removeChild(g)}},swapStyleSheet:function(j,g){this.removeStyleSheet(j);var h=d.createElement("link");h.setAttribute("rel","stylesheet");h.setAttribute("type","text/css");h.setAttribute("id",j);h.setAttribute("href",g);d.getElementsByTagName("head")[0].appendChild(h)},refreshCache:function(){return this.getRules(true)},cacheStyleSheet:function(h){if(!e){e={}}try{var l=h.cssRules||h.rules;for(var g=l.length-1;g>=0;--g){e[l[g].selectorText]=l[g]}}catch(k){}},getRules:function(h){if(e==null||h){e={};var k=d.styleSheets;for(var j=0,g=k.length;j<g;j++){try{this.cacheStyleSheet(k[j])}catch(l){}}}return e},getRule:function(g,j){var h=this.getRules(j);if(!Ext.isArray(g)){return h[g]}for(var k=0;k<g.length;k++){if(h[g[k]]){return h[g[k]]}}return null},updateRule:function(g,k,j){if(!Ext.isArray(g)){var l=this.getRule(g);if(l){l.style[k.replace(b,a)]=j;return true}}else{for(var h=0;h<g.length;h++){if(this.updateRule(g[h],k,j)){return true}}}return false}}}();Ext.util.ClickRepeater=function(b,a){this.el=Ext.get(b);this.el.unselectable();Ext.apply(this,a);this.addEvents("mousedown","click","mouseup");this.el.on("mousedown",this.handleMouseDown,this);if(this.preventDefault||this.stopDefault){this.el.on("click",function(d){if(this.preventDefault){d.preventDefault()}if(this.stopDefault){d.stopEvent()}},this)}if(this.handler){this.on("click",this.handler,this.scope||this)}Ext.util.ClickRepeater.superclass.constructor.call(this)};Ext.extend(Ext.util.ClickRepeater,Ext.util.Observable,{interval:20,delay:250,preventDefault:true,stopDefault:false,timer:0,destroy:function(){Ext.destroy(this.el);this.purgeListeners()},handleMouseDown:function(){clearTimeout(this.timer);this.el.blur();if(this.pressClass){this.el.addClass(this.pressClass)}this.mousedownTime=new Date();Ext.getDoc().on("mouseup",this.handleMouseUp,this);this.el.on("mouseout",this.handleMouseOut,this);this.fireEvent("mousedown",this);this.fireEvent("click",this);if(this.accelerate){this.delay=400}this.timer=this.click.defer(this.delay||this.interval,this)},click:function(){this.fireEvent("click",this);this.timer=this.click.defer(this.accelerate?this.easeOutExpo(this.mousedownTime.getElapsed(),400,-390,12000):this.interval,this)},easeOutExpo:function(e,a,h,g){return(e==g)?a+h:h*(-Math.pow(2,-10*e/g)+1)+a},handleMouseOut:function(){clearTimeout(this.timer);if(this.pressClass){this.el.removeClass(this.pressClass)}this.el.on("mouseover",this.handleMouseReturn,this)},handleMouseReturn:function(){this.el.un("mouseover",this.handleMouseReturn,this);if(this.pressClass){this.el.addClass(this.pressClass)}this.click()},handleMouseUp:function(){clearTimeout(this.timer);this.el.un("mouseover",this.handleMouseReturn,this);this.el.un("mouseout",this.handleMouseOut,this);Ext.getDoc().un("mouseup",this.handleMouseUp,this);this.el.removeClass(this.pressClass);this.fireEvent("mouseup",this)}});Ext.KeyNav=function(b,a){this.el=Ext.get(b);Ext.apply(this,a);if(!this.disabled){this.disabled=true;this.enable()}};Ext.KeyNav.prototype={disabled:false,defaultEventAction:"stopEvent",forceKeyDown:false,prepareEvent:function(d){var a=d.getKey();var b=this.keyToHandler[a];if(Ext.isSafari2&&b&&a>=37&&a<=40){d.stopEvent()}},relay:function(d){var a=d.getKey();var b=this.keyToHandler[a];if(b&&this[b]){if(this.doRelay(d,this[b],b)!==true){d[this.defaultEventAction]()}}},doRelay:function(d,b,a){return b.call(this.scope||this,d)},enter:false,left:false,right:false,up:false,down:false,tab:false,esc:false,pageUp:false,pageDown:false,del:false,home:false,end:false,keyToHandler:{37:"left",39:"right",38:"up",40:"down",33:"pageUp",34:"pageDown",46:"del",36:"home",35:"end",13:"enter",27:"esc",9:"tab"},enable:function(){if(this.disabled){if(this.isKeyDown()){this.el.on("keydown",this.relay,this)}else{this.el.on("keydown",this.prepareEvent,this);this.el.on("keypress",this.relay,this)}this.disabled=false}},disable:function(){if(!this.disabled){if(this.isKeyDown()){this.el.un("keydown",this.relay,this)}else{this.el.un("keydown",this.prepareEvent,this);this.el.un("keypress",this.relay,this)}this.disabled=true}},setDisabled:function(a){this[a?"disable":"enable"]()},isKeyDown:function(){return this.forceKeyDown||Ext.isIE||Ext.isSafari3||Ext.isChrome||Ext.isAir}};Ext.KeyMap=function(d,b,a){this.el=Ext.get(d);this.eventName=a||"keydown";this.bindings=[];if(b){this.addBinding(b)}this.enable()};Ext.KeyMap.prototype={stopEvent:false,addBinding:function(b){if(Ext.isArray(b)){for(var e=0,g=b.length;e<g;e++){this.addBinding(b[e])}return}var n=b.key,k=b.fn||b.handler,o=b.scope;if(b.stopEvent){this.stopEvent=b.stopEvent}if(typeof n=="string"){var l=[];var h=n.toUpperCase();for(var d=0,g=h.length;d<g;d++){l.push(h.charCodeAt(d))}n=l}var a=Ext.isArray(n);var m=function(r){if(this.checkModifiers(b,r)){var p=r.getKey();if(a){for(var q=0,j=n.length;q<j;q++){if(n[q]==p){if(this.stopEvent){r.stopEvent()}k.call(o||window,p,r);return}}}else{if(p==n){if(this.stopEvent){r.stopEvent()}k.call(o||window,p,r)}}}};this.bindings.push(m)},checkModifiers:function(b,j){var k,g,h=["shift","ctrl","alt"];for(var d=0,a=h.length;d<a;++d){g=h[d],k=b[g];if(!(k===undefined||(k===j[g+"Key"]))){return false}}return true},on:function(b,e,d){var j,a,g,h;if(typeof b=="object"&&!Ext.isArray(b)){j=b.key;a=b.shift;g=b.ctrl;h=b.alt}else{j=b}this.addBinding({key:j,shift:a,ctrl:g,alt:h,fn:e,scope:d})},handleKeyDown:function(h){if(this.enabled){var d=this.bindings;for(var g=0,a=d.length;g<a;g++){d[g].call(this,h)}}},isEnabled:function(){return this.enabled},enable:function(){if(!this.enabled){this.el.on(this.eventName,this.handleKeyDown,this);this.enabled=true}},disable:function(){if(this.enabled){this.el.removeListener(this.eventName,this.handleKeyDown,this);this.enabled=false}},setDisabled:function(a){this[a?"disable":"enable"]()}};Ext.util.TextMetrics=function(){var a;return{measure:function(b,d,e){if(!a){a=Ext.util.TextMetrics.Instance(b,e)}a.bind(b);a.setFixedWidth(e||"auto");return a.getSize(d)},createInstance:function(b,d){return Ext.util.TextMetrics.Instance(b,d)}}}();Ext.util.TextMetrics.Instance=function(b,e){var d=new Ext.Element(document.createElement("div"));document.body.appendChild(d.dom);d.position("absolute");d.setLeftTop(-1000,-1000);d.hide();if(e){d.setWidth(e)}var a={getSize:function(h){d.update(h);var g=d.getSize();d.update("");return g},bind:function(g){d.setStyle(Ext.fly(g).getStyles("font-size","font-style","font-weight","font-family","line-height","text-transform","letter-spacing"))},setFixedWidth:function(g){d.setWidth(g)},getWidth:function(g){d.dom.style.width="auto";return this.getSize(g).width},getHeight:function(g){return this.getSize(g).height}};a.bind(b);return a};Ext.Element.addMethods({getTextWidth:function(d,b,a){return(Ext.util.TextMetrics.measure(this.dom,Ext.value(d,this.dom.innerHTML,true)).width).constrain(b||0,a||1000000)}});(function(){var a=Ext.EventManager;var b=Ext.lib.Dom;Ext.dd.DragDrop=function(g,d,e){if(g){this.init(g,d,e)}};Ext.dd.DragDrop.prototype={id:null,config:null,dragElId:null,handleElId:null,invalidHandleTypes:null,invalidHandleIds:null,invalidHandleClasses:null,startPageX:0,startPageY:0,groups:null,locked:false,lock:function(){this.locked=true},moveOnly:false,unlock:function(){this.locked=false},isTarget:true,padding:null,_domRef:null,__ygDragDrop:true,constrainX:false,constrainY:false,minX:0,maxX:0,minY:0,maxY:0,maintainOffset:false,xTicks:null,yTicks:null,primaryButtonOnly:true,available:false,hasOuterHandles:false,b4StartDrag:function(d,e){},startDrag:function(d,e){},b4Drag:function(d){},onDrag:function(d){},onDragEnter:function(d,g){},b4DragOver:function(d){},onDragOver:function(d,g){},b4DragOut:function(d){},onDragOut:function(d,g){},b4DragDrop:function(d){},onDragDrop:function(d,g){},onInvalidDrop:function(d){},b4EndDrag:function(d){},endDrag:function(d){},b4MouseDown:function(d){},onMouseDown:function(d){},onMouseUp:function(d){},onAvailable:function(){},defaultPadding:{left:0,right:0,top:0,bottom:0},constrainTo:function(k,h,p){if(typeof h=="number"){h={left:h,right:h,top:h,bottom:h}}h=h||this.defaultPadding;var m=Ext.get(this.getEl()).getBox();var d=Ext.get(k);var o=d.getScroll();var l,e=d.dom;if(e==document.body){l={x:o.left,y:o.top,width:Ext.lib.Dom.getViewWidth(),height:Ext.lib.Dom.getViewHeight()}}else{var n=d.getXY();l={x:n[0]+o.left,y:n[1]+o.top,width:e.clientWidth,height:e.clientHeight}}var j=m.y-l.y;var g=m.x-l.x;this.resetConstraints();this.setXConstraint(g-(h.left||0),l.width-g-m.width-(h.right||0),this.xTickSize);this.setYConstraint(j-(h.top||0),l.height-j-m.height-(h.bottom||0),this.yTickSize)},getEl:function(){if(!this._domRef){this._domRef=Ext.getDom(this.id)}return this._domRef},getDragEl:function(){return Ext.getDom(this.dragElId)},init:function(g,d,e){this.initTarget(g,d,e);a.on(this.id,"mousedown",this.handleMouseDown,this)},initTarget:function(g,d,e){this.config=e||{};this.DDM=Ext.dd.DDM;this.groups={};if(typeof g!=="string"){g=Ext.id(g)}this.id=g;this.addToGroup((d)?d:"default");this.handleElId=g;this.setDragElId(g);this.invalidHandleTypes={A:"A"};this.invalidHandleIds={};this.invalidHandleClasses=[];this.applyConfig();this.handleOnAvailable()},applyConfig:function(){this.padding=this.config.padding||[0,0,0,0];this.isTarget=(this.config.isTarget!==false);this.maintainOffset=(this.config.maintainOffset);this.primaryButtonOnly=(this.config.primaryButtonOnly!==false)},handleOnAvailable:function(){this.available=true;this.resetConstraints();this.onAvailable()},setPadding:function(g,d,h,e){if(!d&&0!==d){this.padding=[g,g,g,g]}else{if(!h&&0!==h){this.padding=[g,d,g,d]}else{this.padding=[g,d,h,e]}}},setInitPosition:function(h,g){var j=this.getEl();if(!this.DDM.verifyEl(j)){return}var e=h||0;var d=g||0;var k=b.getXY(j);this.initPageX=k[0]-e;this.initPageY=k[1]-d;this.lastPageX=k[0];this.lastPageY=k[1];this.setStartPosition(k)},setStartPosition:function(e){var d=e||b.getXY(this.getEl());this.deltaSetXY=null;this.startPageX=d[0];this.startPageY=d[1]},addToGroup:function(d){this.groups[d]=true;this.DDM.regDragDrop(this,d)},removeFromGroup:function(d){if(this.groups[d]){delete this.groups[d]}this.DDM.removeDDFromGroup(this,d)},setDragElId:function(d){this.dragElId=d},setHandleElId:function(d){if(typeof d!=="string"){d=Ext.id(d)}this.handleElId=d;this.DDM.regHandle(this.id,d)},setOuterHandleElId:function(d){if(typeof d!=="string"){d=Ext.id(d)}a.on(d,"mousedown",this.handleMouseDown,this);this.setHandleElId(d);this.hasOuterHandles=true},unreg:function(){a.un(this.id,"mousedown",this.handleMouseDown);this._domRef=null;this.DDM._remove(this)},destroy:function(){this.unreg()},isLocked:function(){return(this.DDM.isLocked()||this.locked)},handleMouseDown:function(h,g){if(this.primaryButtonOnly&&h.button!=0){return}if(this.isLocked()){return}this.DDM.refreshCache(this.groups);var d=new Ext.lib.Point(Ext.lib.Event.getPageX(h),Ext.lib.Event.getPageY(h));if(!this.hasOuterHandles&&!this.DDM.isOverTarget(d,this)){}else{if(this.clickValidator(h)){this.setStartPosition();this.b4MouseDown(h);this.onMouseDown(h);this.DDM.handleMouseDown(h,this);this.DDM.stopEvent(h)}else{}}},clickValidator:function(g){var d=g.getTarget();return(this.isValidHandleChild(d)&&(this.id==this.handleElId||this.DDM.handleWasClicked(d,this.id)))},addInvalidHandleType:function(d){var e=d.toUpperCase();this.invalidHandleTypes[e]=e},addInvalidHandleId:function(d){if(typeof d!=="string"){d=Ext.id(d)}this.invalidHandleIds[d]=d},addInvalidHandleClass:function(d){this.invalidHandleClasses.push(d)},removeInvalidHandleType:function(d){var e=d.toUpperCase();delete this.invalidHandleTypes[e]},removeInvalidHandleId:function(d){if(typeof d!=="string"){d=Ext.id(d)}delete this.invalidHandleIds[d]},removeInvalidHandleClass:function(e){for(var g=0,d=this.invalidHandleClasses.length;g<d;++g){if(this.invalidHandleClasses[g]==e){delete this.invalidHandleClasses[g]}}},isValidHandleChild:function(j){var h=true;var l;try{l=j.nodeName.toUpperCase()}catch(k){l=j.nodeName}h=h&&!this.invalidHandleTypes[l];h=h&&!this.invalidHandleIds[j.id];for(var g=0,d=this.invalidHandleClasses.length;h&&g<d;++g){h=!Ext.fly(j).hasClass(this.invalidHandleClasses[g])}return h},setXTicks:function(h,d){this.xTicks=[];this.xTickSize=d;var g={};for(var e=this.initPageX;e>=this.minX;e=e-d){if(!g[e]){this.xTicks[this.xTicks.length]=e;g[e]=true}}for(e=this.initPageX;e<=this.maxX;e=e+d){if(!g[e]){this.xTicks[this.xTicks.length]=e;g[e]=true}}this.xTicks.sort(this.DDM.numericSort)},setYTicks:function(h,d){this.yTicks=[];this.yTickSize=d;var g={};for(var e=this.initPageY;e>=this.minY;e=e-d){if(!g[e]){this.yTicks[this.yTicks.length]=e;g[e]=true}}for(e=this.initPageY;e<=this.maxY;e=e+d){if(!g[e]){this.yTicks[this.yTicks.length]=e;g[e]=true}}this.yTicks.sort(this.DDM.numericSort)},setXConstraint:function(g,e,d){this.leftConstraint=g;this.rightConstraint=e;this.minX=this.initPageX-g;this.maxX=this.initPageX+e;if(d){this.setXTicks(this.initPageX,d)}this.constrainX=true},clearConstraints:function(){this.constrainX=false;this.constrainY=false;this.clearTicks()},clearTicks:function(){this.xTicks=null;this.yTicks=null;this.xTickSize=0;this.yTickSize=0},setYConstraint:function(d,g,e){this.topConstraint=d;this.bottomConstraint=g;this.minY=this.initPageY-d;this.maxY=this.initPageY+g;if(e){this.setYTicks(this.initPageY,e)}this.constrainY=true},resetConstraints:function(){if(this.initPageX||this.initPageX===0){var e=(this.maintainOffset)?this.lastPageX-this.initPageX:0;var d=(this.maintainOffset)?this.lastPageY-this.initPageY:0;this.setInitPosition(e,d)}else{this.setInitPosition()}if(this.constrainX){this.setXConstraint(this.leftConstraint,this.rightConstraint,this.xTickSize)}if(this.constrainY){this.setYConstraint(this.topConstraint,this.bottomConstraint,this.yTickSize)}},getTick:function(l,h){if(!h){return l}else{if(h[0]>=l){return h[0]}else{for(var e=0,d=h.length;e<d;++e){var g=e+1;if(h[g]&&h[g]>=l){var k=l-h[e];var j=h[g]-l;return(j>k)?h[e]:h[g]}}return h[h.length-1]}}},toString:function(){return("DragDrop "+this.id)}}})();if(!Ext.dd.DragDropMgr){Ext.dd.DragDropMgr=function(){var a=Ext.EventManager;return{ids:{},handleIds:{},dragCurrent:null,dragOvers:{},deltaX:0,deltaY:0,preventDefault:true,stopPropagation:true,initialized:false,locked:false,init:function(){this.initialized=true},POINT:0,INTERSECT:1,mode:0,_execOnAll:function(e,d){for(var g in this.ids){for(var b in this.ids[g]){var h=this.ids[g][b];if(!this.isTypeOfDD(h)){continue}h[e].apply(h,d)}}},_onLoad:function(){this.init();a.on(document,"mouseup",this.handleMouseUp,this,true);a.on(document,"mousemove",this.handleMouseMove,this,true);a.on(window,"unload",this._onUnload,this,true);a.on(window,"resize",this._onResize,this,true)},_onResize:function(b){this._execOnAll("resetConstraints",[])},lock:function(){this.locked=true},unlock:function(){this.locked=false},isLocked:function(){return this.locked},locationCache:{},useCache:true,clickPixelThresh:3,clickTimeThresh:350,dragThreshMet:false,clickTimeout:null,startX:0,startY:0,regDragDrop:function(d,b){if(!this.initialized){this.init()}if(!this.ids[b]){this.ids[b]={}}this.ids[b][d.id]=d},removeDDFromGroup:function(e,b){if(!this.ids[b]){this.ids[b]={}}var d=this.ids[b];if(d&&d[e.id]){delete d[e.id]}},_remove:function(d){for(var b in d.groups){if(b&&this.ids[b]&&this.ids[b][d.id]){delete this.ids[b][d.id]}}delete this.handleIds[d.id]},regHandle:function(d,b){if(!this.handleIds[d]){this.handleIds[d]={}}this.handleIds[d][b]=b},isDragDrop:function(b){return(this.getDDById(b))?true:false},getRelated:function(k,d){var h=[];for(var g in k.groups){for(var e in this.ids[g]){var b=this.ids[g][e];if(!this.isTypeOfDD(b)){continue}if(!d||b.isTarget){h[h.length]=b}}}return h},isLegalTarget:function(h,g){var d=this.getRelated(h,true);for(var e=0,b=d.length;e<b;++e){if(d[e].id==g.id){return true}}return false},isTypeOfDD:function(b){return(b&&b.__ygDragDrop)},isHandle:function(d,b){return(this.handleIds[d]&&this.handleIds[d][b])},getDDById:function(d){for(var b in this.ids){if(this.ids[b][d]){return this.ids[b][d]}}return null},handleMouseDown:function(g,d){if(Ext.QuickTips){Ext.QuickTips.disable()}if(this.dragCurrent){this.handleMouseUp(g)}this.currentTarget=g.getTarget();this.dragCurrent=d;var b=d.getEl();this.startX=g.getPageX();this.startY=g.getPageY();this.deltaX=this.startX-b.offsetLeft;this.deltaY=this.startY-b.offsetTop;this.dragThreshMet=false;this.clickTimeout=setTimeout(function(){var e=Ext.dd.DDM;e.startDrag(e.startX,e.startY)},this.clickTimeThresh)},startDrag:function(b,d){clearTimeout(this.clickTimeout);if(this.dragCurrent){this.dragCurrent.b4StartDrag(b,d);this.dragCurrent.startDrag(b,d)}this.dragThreshMet=true},handleMouseUp:function(b){if(Ext.QuickTips){Ext.QuickTips.enable()}if(!this.dragCurrent){return}clearTimeout(this.clickTimeout);if(this.dragThreshMet){this.fireEvents(b,true)}else{}this.stopDrag(b);this.stopEvent(b)},stopEvent:function(b){if(this.stopPropagation){b.stopPropagation()}if(this.preventDefault){b.preventDefault()}},stopDrag:function(b){if(this.dragCurrent){if(this.dragThreshMet){this.dragCurrent.b4EndDrag(b);this.dragCurrent.endDrag(b)}this.dragCurrent.onMouseUp(b)}this.dragCurrent=null;this.dragOvers={}},handleMouseMove:function(g){if(!this.dragCurrent){return true}if(Ext.isIE&&(g.button!==0&&g.button!==1&&g.button!==2)){this.stopEvent(g);return this.handleMouseUp(g)}if(!this.dragThreshMet){var d=Math.abs(this.startX-g.getPageX());var b=Math.abs(this.startY-g.getPageY());if(d>this.clickPixelThresh||b>this.clickPixelThresh){this.startDrag(this.startX,this.startY)}}if(this.dragThreshMet){this.dragCurrent.b4Drag(g);this.dragCurrent.onDrag(g);if(!this.dragCurrent.moveOnly){this.fireEvents(g,false)}}this.stopEvent(g);return true},fireEvents:function(o,p){var r=this.dragCurrent;if(!r||r.isLocked()){return}var s=o.getPoint();var b=[];var h=[];var m=[];var k=[];var g=[];for(var j in this.dragOvers){var d=this.dragOvers[j];if(!this.isTypeOfDD(d)){continue}if(!this.isOverTarget(s,d,this.mode)){h.push(d)}b[j]=true;delete this.dragOvers[j]}for(var q in r.groups){if("string"!=typeof q){continue}for(j in this.ids[q]){var l=this.ids[q][j];if(!this.isTypeOfDD(l)){continue}if(l.isTarget&&!l.isLocked()&&((l!=r)||(r.ignoreSelf===false))){if(this.isOverTarget(s,l,this.mode)){if(p){k.push(l)}else{if(!b[l.id]){g.push(l)}else{m.push(l)}this.dragOvers[l.id]=l}}}}}if(this.mode){if(h.length){r.b4DragOut(o,h);r.onDragOut(o,h)}if(g.length){r.onDragEnter(o,g)}if(m.length){r.b4DragOver(o,m);r.onDragOver(o,m)}if(k.length){r.b4DragDrop(o,k);r.onDragDrop(o,k)}}else{var n=0;for(j=0,n=h.length;j<n;++j){r.b4DragOut(o,h[j].id);r.onDragOut(o,h[j].id)}for(j=0,n=g.length;j<n;++j){r.onDragEnter(o,g[j].id)}for(j=0,n=m.length;j<n;++j){r.b4DragOver(o,m[j].id);r.onDragOver(o,m[j].id)}for(j=0,n=k.length;j<n;++j){r.b4DragDrop(o,k[j].id);r.onDragDrop(o,k[j].id)}}if(p&&!k.length){r.onInvalidDrop(o)}},getBestMatch:function(e){var h=null;var d=e.length;if(d==1){h=e[0]}else{for(var g=0;g<d;++g){var b=e[g];if(b.cursorIsOver){h=b;break}else{if(!h||h.overlap.getArea()<b.overlap.getArea()){h=b}}}}return h},refreshCache:function(d){for(var b in d){if("string"!=typeof b){continue}for(var e in this.ids[b]){var g=this.ids[b][e];if(this.isTypeOfDD(g)){var h=this.getLocation(g);if(h){this.locationCache[g.id]=h}else{delete this.locationCache[g.id]}}}}},verifyEl:function(d){if(d){var b;if(Ext.isIE){try{b=d.offsetParent}catch(g){}}else{b=d.offsetParent}if(b){return true}}return false},getLocation:function(m){if(!this.isTypeOfDD(m)){return null}var j=m.getEl(),p,h,g,s,q,u,d,o,k;try{p=Ext.lib.Dom.getXY(j)}catch(n){}if(!p){return null}h=p[0];g=h+j.offsetWidth;s=p[1];q=s+j.offsetHeight;u=s-m.padding[0];d=g+m.padding[1];o=q+m.padding[2];k=h-m.padding[3];return new Ext.lib.Region(u,d,o,k)},isOverTarget:function(m,b,e){var h=this.locationCache[b.id];if(!h||!this.useCache){h=this.getLocation(b);this.locationCache[b.id]=h}if(!h){return false}b.cursorIsOver=h.contains(m);var l=this.dragCurrent;if(!l||!l.getTargetCoord||(!e&&!l.constrainX&&!l.constrainY)){return b.cursorIsOver}b.overlap=null;var j=l.getTargetCoord(m.x,m.y);var d=l.getDragEl();var g=new Ext.lib.Region(j.y,j.x+d.offsetWidth,j.y+d.offsetHeight,j.x);var k=g.intersect(h);if(k){b.overlap=k;return(e)?true:b.cursorIsOver}else{return false}},_onUnload:function(d,b){Ext.dd.DragDropMgr.unregAll()},unregAll:function(){if(this.dragCurrent){this.stopDrag();this.dragCurrent=null}this._execOnAll("unreg",[]);for(var b in this.elementCache){delete this.elementCache[b]}this.elementCache={};this.ids={}},elementCache:{},getElWrapper:function(d){var b=this.elementCache[d];if(!b||!b.el){b=this.elementCache[d]=new this.ElementWrapper(Ext.getDom(d))}return b},getElement:function(b){return Ext.getDom(b)},getCss:function(d){var b=Ext.getDom(d);return(b)?b.style:null},ElementWrapper:function(b){this.el=b||null;this.id=this.el&&b.id;this.css=this.el&&b.style},getPosX:function(b){return Ext.lib.Dom.getX(b)},getPosY:function(b){return Ext.lib.Dom.getY(b)},swapNode:function(e,b){if(e.swapNode){e.swapNode(b)}else{var g=b.parentNode;var d=b.nextSibling;if(d==e){g.insertBefore(e,b)}else{if(b==e.nextSibling){g.insertBefore(b,e)}else{e.parentNode.replaceChild(b,e);g.insertBefore(e,d)}}}},getScroll:function(){var e,b,g=document.documentElement,d=document.body;if(g&&(g.scrollTop||g.scrollLeft)){e=g.scrollTop;b=g.scrollLeft}else{if(d){e=d.scrollTop;b=d.scrollLeft}else{}}return{top:e,left:b}},getStyle:function(d,b){return Ext.fly(d).getStyle(b)},getScrollTop:function(){return this.getScroll().top},getScrollLeft:function(){return this.getScroll().left},moveToEl:function(b,e){var d=Ext.lib.Dom.getXY(e);Ext.lib.Dom.setXY(b,d)},numericSort:function(e,d){return(e-d)},_timeoutCount:0,_addListeners:function(){var b=Ext.dd.DDM;if(Ext.lib.Event&&document){b._onLoad()}else{if(b._timeoutCount>2000){}else{setTimeout(b._addListeners,10);if(document&&document.body){b._timeoutCount+=1}}}},handleWasClicked:function(b,e){if(this.isHandle(e,b.id)){return true}else{var d=b.parentNode;while(d){if(this.isHandle(e,d.id)){return true}else{d=d.parentNode}}}return false}}}();Ext.dd.DDM=Ext.dd.DragDropMgr;Ext.dd.DDM._addListeners()}Ext.dd.DD=function(d,a,b){if(d){this.init(d,a,b)}};Ext.extend(Ext.dd.DD,Ext.dd.DragDrop,{scroll:true,autoOffset:function(d,b){var a=d-this.startPageX;var e=b-this.startPageY;this.setDelta(a,e)},setDelta:function(b,a){this.deltaX=b;this.deltaY=a},setDragElPos:function(d,b){var a=this.getDragEl();this.alignElWithMouse(a,d,b)},alignElWithMouse:function(d,j,h){var g=this.getTargetCoord(j,h);var b=d.dom?d:Ext.fly(d,"_dd");if(!this.deltaSetXY){var k=[g.x,g.y];b.setXY(k);var e=b.getLeft(true);var a=b.getTop(true);this.deltaSetXY=[e-g.x,a-g.y]}else{b.setLeftTop(g.x+this.deltaSetXY[0],g.y+this.deltaSetXY[1])}this.cachePosition(g.x,g.y);this.autoScroll(g.x,g.y,d.offsetHeight,d.offsetWidth);return g},cachePosition:function(b,a){if(b){this.lastPageX=b;this.lastPageY=a}else{var d=Ext.lib.Dom.getXY(this.getEl());this.lastPageX=d[0];this.lastPageY=d[1]}},autoScroll:function(n,m,g,o){if(this.scroll){var p=Ext.lib.Dom.getViewHeight();var b=Ext.lib.Dom.getViewWidth();var r=this.DDM.getScrollTop();var e=this.DDM.getScrollLeft();var l=g+m;var q=o+n;var k=(p+r-m-this.deltaY);var j=(b+e-n-this.deltaX);var d=40;var a=(document.all)?80:30;if(l>p&&k<d){window.scrollTo(e,r+a)}if(m<r&&r>0&&m-r<d){window.scrollTo(e,r-a)}if(q>b&&j<d){window.scrollTo(e+a,r)}if(n<e&&e>0&&n-e<d){window.scrollTo(e-a,r)}}},getTargetCoord:function(d,b){var a=d-this.deltaX;var e=b-this.deltaY;if(this.constrainX){if(a<this.minX){a=this.minX}if(a>this.maxX){a=this.maxX}}if(this.constrainY){if(e<this.minY){e=this.minY}if(e>this.maxY){e=this.maxY}}a=this.getTick(a,this.xTicks);e=this.getTick(e,this.yTicks);return{x:a,y:e}},applyConfig:function(){Ext.dd.DD.superclass.applyConfig.call(this);this.scroll=(this.config.scroll!==false)},b4MouseDown:function(a){this.autoOffset(a.getPageX(),a.getPageY())},b4Drag:function(a){this.setDragElPos(a.getPageX(),a.getPageY())},toString:function(){return("DD "+this.id)}});Ext.dd.DDProxy=function(d,a,b){if(d){this.init(d,a,b);this.initFrame()}};Ext.dd.DDProxy.dragElId="ygddfdiv";Ext.extend(Ext.dd.DDProxy,Ext.dd.DD,{resizeFrame:true,centerFrame:false,createFrame:function(){var b=this;var a=document.body;if(!a||!a.firstChild){setTimeout(function(){b.createFrame()},50);return}var e=this.getDragEl();if(!e){e=document.createElement("div");e.id=this.dragElId;var d=e.style;d.position="absolute";d.visibility="hidden";d.cursor="move";d.border="2px solid #aaa";d.zIndex=999;a.insertBefore(e,a.firstChild)}},initFrame:function(){this.createFrame()},applyConfig:function(){Ext.dd.DDProxy.superclass.applyConfig.call(this);this.resizeFrame=(this.config.resizeFrame!==false);this.centerFrame=(this.config.centerFrame);this.setDragElId(this.config.dragElId||Ext.dd.DDProxy.dragElId)},showFrame:function(g,e){var d=this.getEl();var a=this.getDragEl();var b=a.style;this._resizeProxy();if(this.centerFrame){this.setDelta(Math.round(parseInt(b.width,10)/2),Math.round(parseInt(b.height,10)/2))}this.setDragElPos(g,e);Ext.fly(a).show()},_resizeProxy:function(){if(this.resizeFrame){var a=this.getEl();Ext.fly(this.getDragEl()).setSize(a.offsetWidth,a.offsetHeight)}},b4MouseDown:function(b){var a=b.getPageX();var d=b.getPageY();this.autoOffset(a,d);this.setDragElPos(a,d)},b4StartDrag:function(a,b){this.showFrame(a,b)},b4EndDrag:function(a){Ext.fly(this.getDragEl()).hide()},endDrag:function(d){var b=this.getEl();var a=this.getDragEl();a.style.visibility="";this.beforeMove();b.style.visibility="hidden";Ext.dd.DDM.moveToEl(b,a);a.style.visibility="hidden";b.style.visibility="";this.afterDrag()},beforeMove:function(){},afterDrag:function(){},toString:function(){return("DDProxy "+this.id)}});Ext.dd.DDTarget=function(d,a,b){if(d){this.initTarget(d,a,b)}};Ext.extend(Ext.dd.DDTarget,Ext.dd.DragDrop,{toString:function(){return("DDTarget "+this.id)}});Ext.dd.DragTracker=function(a){Ext.apply(this,a);this.addEvents("mousedown","mouseup","mousemove","dragstart","dragend","drag");this.dragRegion=new Ext.lib.Region(0,0,0,0);if(this.el){this.initEl(this.el)}};Ext.extend(Ext.dd.DragTracker,Ext.util.Observable,{active:false,tolerance:5,autoStart:false,initEl:function(a){this.el=Ext.get(a);a.on("mousedown",this.onMouseDown,this,this.delegate?{delegate:this.delegate}:undefined)},destroy:function(){this.el.un("mousedown",this.onMouseDown,this)},onMouseDown:function(d,b){if(this.fireEvent("mousedown",this,d)!==false&&this.onBeforeStart(d)!==false){this.startXY=this.lastXY=d.getXY();this.dragTarget=this.delegate?b:this.el.dom;if(this.preventDefault!==false){d.preventDefault()}var a=Ext.getDoc();a.on("mouseup",this.onMouseUp,this);a.on("mousemove",this.onMouseMove,this);a.on("selectstart",this.stopSelect,this);if(this.autoStart){this.timer=this.triggerStart.defer(this.autoStart===true?1000:this.autoStart,this)}}},onMouseMove:function(g,d){g.preventDefault();var b=g.getXY(),a=this.startXY;this.lastXY=b;if(!this.active){if(Math.abs(a[0]-b[0])>this.tolerance||Math.abs(a[1]-b[1])>this.tolerance){this.triggerStart()}else{return}}this.fireEvent("mousemove",this,g);this.onDrag(g);this.fireEvent("drag",this,g)},onMouseUp:function(d){var b=Ext.getDoc();b.un("mousemove",this.onMouseMove,this);b.un("mouseup",this.onMouseUp,this);b.un("selectstart",this.stopSelect,this);d.preventDefault();this.clearStart();var a=this.active;this.active=false;delete this.elRegion;this.fireEvent("mouseup",this,d);if(a){this.onEnd(d);this.fireEvent("dragend",this,d)}},triggerStart:function(a){this.clearStart();this.active=true;this.onStart(this.startXY);this.fireEvent("dragstart",this,this.startXY)},clearStart:function(){if(this.timer){clearTimeout(this.timer);delete this.timer}},stopSelect:function(a){a.stopEvent();return false},onBeforeStart:function(a){},onStart:function(a){},onDrag:function(a){},onEnd:function(a){},getDragTarget:function(){return this.dragTarget},getDragCt:function(){return this.el},getXY:function(a){return a?this.constrainModes[a].call(this,this.lastXY):this.lastXY},getOffset:function(d){var b=this.getXY(d);var a=this.startXY;return[a[0]-b[0],a[1]-b[1]]},constrainModes:{point:function(b){if(!this.elRegion){this.elRegion=this.getDragCt().getRegion()}var a=this.dragRegion;a.left=b[0];a.top=b[1];a.right=b[0];a.bottom=b[1];a.constrainTo(this.elRegion);return[a.left,a.top]}}});Ext.dd.ScrollManager=function(){var d=Ext.dd.DragDropMgr;var g={};var b=null;var k={};var j=function(n){b=null;a()};var l=function(){if(d.dragCurrent){d.refreshCache(d.dragCurrent.groups)}};var e=function(){if(d.dragCurrent){var n=Ext.dd.ScrollManager;var o=k.el.ddScrollConfig?k.el.ddScrollConfig.increment:n.increment;if(!n.animate){if(k.el.scroll(k.dir,o)){l()}}else{k.el.scroll(k.dir,o,true,n.animDuration,l)}}};var a=function(){if(k.id){clearInterval(k.id)}k.id=0;k.el=null;k.dir=""};var h=function(o,n){a();k.el=o;k.dir=n;var p=(o.ddScrollConfig&&o.ddScrollConfig.frequency)?o.ddScrollConfig.frequency:Ext.dd.ScrollManager.frequency;k.id=setInterval(e,p)};var m=function(q,t){if(t||!d.dragCurrent){return}var u=Ext.dd.ScrollManager;if(!b||b!=d.dragCurrent){b=d.dragCurrent;u.refreshCache()}var w=Ext.lib.Event.getXY(q);var x=new Ext.lib.Point(w[0],w[1]);for(var o in g){var p=g[o],n=p._region;var s=p.ddScrollConfig?p.ddScrollConfig:u;if(n&&n.contains(x)&&p.isScrollable()){if(n.bottom-x.y<=s.vthresh){if(k.el!=p){h(p,"down")}return}else{if(n.right-x.x<=s.hthresh){if(k.el!=p){h(p,"left")}return}else{if(x.y-n.top<=s.vthresh){if(k.el!=p){h(p,"up")}return}else{if(x.x-n.left<=s.hthresh){if(k.el!=p){h(p,"right")}return}}}}}}a()};d.fireEvents=d.fireEvents.createSequence(m,d);d.stopDrag=d.stopDrag.createSequence(j,d);return{register:function(p){if(Ext.isArray(p)){for(var o=0,n=p.length;o<n;o++){this.register(p[o])}}else{p=Ext.get(p);g[p.id]=p}},unregister:function(p){if(Ext.isArray(p)){for(var o=0,n=p.length;o<n;o++){this.unregister(p[o])}}else{p=Ext.get(p);delete g[p.id]}},vthresh:25,hthresh:25,increment:100,frequency:500,animate:true,animDuration:0.4,refreshCache:function(){for(var n in g){if(typeof g[n]=="object"){g[n]._region=g[n].getRegion()}}}}}();Ext.dd.Registry=function(){var e={};var b={};var a=0;var d=function(h,g){if(typeof h=="string"){return h}var j=h.id;if(!j&&g!==false){j="extdd-"+(++a);h.id=j}return j};return{register:function(k,l){l=l||{};if(typeof k=="string"){k=document.getElementById(k)}l.ddel=k;e[d(k)]=l;if(l.isHandle!==false){b[l.ddel.id]=l}if(l.handles){var j=l.handles;for(var h=0,g=j.length;h<g;h++){b[d(j[h])]=l}}},unregister:function(k){var m=d(k,false);var l=e[m];if(l){delete e[m];if(l.handles){var j=l.handles;for(var h=0,g=j.length;h<g;h++){delete b[d(j[h],false)]}}}},getHandle:function(g){if(typeof g!="string"){g=g.id}return b[g]},getHandleFromEvent:function(h){var g=Ext.lib.Event.getTarget(h);return g?b[g.id]:null},getTarget:function(g){if(typeof g!="string"){g=g.id}return e[g]},getTargetFromEvent:function(h){var g=Ext.lib.Event.getTarget(h);return g?e[g.id]||b[g.id]:null}}}();Ext.dd.StatusProxy=function(a){Ext.apply(this,a);this.id=this.id||Ext.id();this.el=new Ext.Layer({dh:{id:this.id,tag:"div",cls:"x-dd-drag-proxy "+this.dropNotAllowed,children:[{tag:"div",cls:"x-dd-drop-icon"},{tag:"div",cls:"x-dd-drag-ghost"}]},shadow:!a||a.shadow!==false});this.ghost=Ext.get(this.el.dom.childNodes[1]);this.dropStatus=this.dropNotAllowed};Ext.dd.StatusProxy.prototype={dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",setStatus:function(a){a=a||this.dropNotAllowed;if(this.dropStatus!=a){this.el.replaceClass(this.dropStatus,a);this.dropStatus=a}},reset:function(a){this.el.dom.className="x-dd-drag-proxy "+this.dropNotAllowed;this.dropStatus=this.dropNotAllowed;if(a){this.ghost.update("")}},update:function(a){if(typeof a=="string"){this.ghost.update(a)}else{this.ghost.update("");a.style.margin="0";this.ghost.dom.appendChild(a)}var b=this.ghost.dom.firstChild;if(b){Ext.fly(b).setStyle(Ext.isIE?"styleFloat":"cssFloat","none")}},getEl:function(){return this.el},getGhost:function(){return this.ghost},hide:function(a){this.el.hide();if(a){this.reset(true)}},stop:function(){if(this.anim&&this.anim.isAnimated&&this.anim.isAnimated()){this.anim.stop()}},show:function(){this.el.show()},sync:function(){this.el.sync()},repair:function(b,d,a){this.callback=d;this.scope=a;if(b&&this.animRepair!==false){this.el.addClass("x-dd-drag-repair");this.el.hideUnders(true);this.anim=this.el.shift({duration:this.repairDuration||0.5,easing:"easeOut",xy:b,stopFx:true,callback:this.afterRepair,scope:this})}else{this.afterRepair()}},afterRepair:function(){this.hide(true);if(typeof this.callback=="function"){this.callback.call(this.scope||this)}this.callback=null;this.scope=null}};Ext.dd.DragSource=function(b,a){this.el=Ext.get(b);if(!this.dragData){this.dragData={}}Ext.apply(this,a);if(!this.proxy){this.proxy=new Ext.dd.StatusProxy()}Ext.dd.DragSource.superclass.constructor.call(this,this.el.dom,this.ddGroup||this.group,{dragElId:this.proxy.id,resizeFrame:false,isTarget:false,scroll:this.scroll===true});this.dragging=false};Ext.extend(Ext.dd.DragSource,Ext.dd.DDProxy,{dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",getDragData:function(a){return this.dragData},onDragEnter:function(d,g){var b=Ext.dd.DragDropMgr.getDDById(g);this.cachedTarget=b;if(this.beforeDragEnter(b,d,g)!==false){if(b.isNotifyTarget){var a=b.notifyEnter(this,d,this.dragData);this.proxy.setStatus(a)}else{this.proxy.setStatus(this.dropAllowed)}if(this.afterDragEnter){this.afterDragEnter(b,d,g)}}},beforeDragEnter:function(b,a,d){return true},alignElWithMouse:function(){Ext.dd.DragSource.superclass.alignElWithMouse.apply(this,arguments);this.proxy.sync()},onDragOver:function(d,g){var b=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(g);if(this.beforeDragOver(b,d,g)!==false){if(b.isNotifyTarget){var a=b.notifyOver(this,d,this.dragData);this.proxy.setStatus(a)}if(this.afterDragOver){this.afterDragOver(b,d,g)}}},beforeDragOver:function(b,a,d){return true},onDragOut:function(b,d){var a=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(d);if(this.beforeDragOut(a,b,d)!==false){if(a.isNotifyTarget){a.notifyOut(this,b,this.dragData)}this.proxy.reset();if(this.afterDragOut){this.afterDragOut(a,b,d)}}this.cachedTarget=null},beforeDragOut:function(b,a,d){return true},onDragDrop:function(b,d){var a=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(d);if(this.beforeDragDrop(a,b,d)!==false){if(a.isNotifyTarget){if(a.notifyDrop(this,b,this.dragData)){this.onValidDrop(a,b,d)}else{this.onInvalidDrop(a,b,d)}}else{this.onValidDrop(a,b,d)}if(this.afterDragDrop){this.afterDragDrop(a,b,d)}}delete this.cachedTarget},beforeDragDrop:function(b,a,d){return true},onValidDrop:function(b,a,d){this.hideProxy();if(this.afterValidDrop){this.afterValidDrop(b,a,d)}},getRepairXY:function(b,a){return this.el.getXY()},onInvalidDrop:function(b,a,d){this.beforeInvalidDrop(b,a,d);if(this.cachedTarget){if(this.cachedTarget.isNotifyTarget){this.cachedTarget.notifyOut(this,a,this.dragData)}this.cacheTarget=null}this.proxy.repair(this.getRepairXY(a,this.dragData),this.afterRepair,this);if(this.afterInvalidDrop){this.afterInvalidDrop(a,d)}},afterRepair:function(){if(Ext.enableFx){this.el.highlight(this.hlColor||"c3daf9")}this.dragging=false},beforeInvalidDrop:function(b,a,d){return true},handleMouseDown:function(b){if(this.dragging){return}var a=this.getDragData(b);if(a&&this.onBeforeDrag(a,b)!==false){this.dragData=a;this.proxy.stop();Ext.dd.DragSource.superclass.handleMouseDown.apply(this,arguments)}},onBeforeDrag:function(a,b){return true},onStartDrag:Ext.emptyFn,startDrag:function(a,b){this.proxy.reset();this.dragging=true;this.proxy.update("");this.onInitDrag(a,b);this.proxy.show()},onInitDrag:function(a,d){var b=this.el.dom.cloneNode(true);b.id=Ext.id();this.proxy.update(b);this.onStartDrag(a,d);return true},getProxy:function(){return this.proxy},hideProxy:function(){this.proxy.hide();this.proxy.reset(true);this.dragging=false},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups)},b4EndDrag:function(a){},endDrag:function(a){this.onEndDrag(this.dragData,a)},onEndDrag:function(a,b){},autoOffset:function(a,b){this.setDelta(-12,-20)}});Ext.dd.DropTarget=function(b,a){this.el=Ext.get(b);Ext.apply(this,a);if(this.containerScroll){Ext.dd.ScrollManager.register(this.el)}Ext.dd.DropTarget.superclass.constructor.call(this,this.el.dom,this.ddGroup||this.group,{isTarget:true})};Ext.extend(Ext.dd.DropTarget,Ext.dd.DDTarget,{dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",isTarget:true,isNotifyTarget:true,notifyEnter:function(a,d,b){if(this.overClass){this.el.addClass(this.overClass)}return this.dropAllowed},notifyOver:function(a,d,b){return this.dropAllowed},notifyOut:function(a,d,b){if(this.overClass){this.el.removeClass(this.overClass)}},notifyDrop:function(a,d,b){return false}});Ext.dd.DragZone=function(b,a){Ext.dd.DragZone.superclass.constructor.call(this,b,a);if(this.containerScroll){Ext.dd.ScrollManager.register(this.el)}};Ext.extend(Ext.dd.DragZone,Ext.dd.DragSource,{getDragData:function(a){return Ext.dd.Registry.getHandleFromEvent(a)},onInitDrag:function(a,b){this.proxy.update(this.dragData.ddel.cloneNode(true));this.onStartDrag(a,b);return true},afterRepair:function(){if(Ext.enableFx){Ext.Element.fly(this.dragData.ddel).highlight(this.hlColor||"c3daf9")}this.dragging=false},getRepairXY:function(a){return Ext.Element.fly(this.dragData.ddel).getXY()}});Ext.dd.DropZone=function(b,a){Ext.dd.DropZone.superclass.constructor.call(this,b,a)};Ext.extend(Ext.dd.DropZone,Ext.dd.DropTarget,{getTargetFromEvent:function(a){return Ext.dd.Registry.getTargetFromEvent(a)},onNodeEnter:function(g,a,d,b){},onNodeOver:function(g,a,d,b){return this.dropAllowed},onNodeOut:function(g,a,d,b){},onNodeDrop:function(g,a,d,b){return false},onContainerOver:function(a,d,b){return this.dropNotAllowed},onContainerDrop:function(a,d,b){return false},notifyEnter:function(a,d,b){return this.dropNotAllowed},notifyOver:function(a,d,b){var g=this.getTargetFromEvent(d);if(!g){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,a,d,b);this.lastOverNode=null}return this.onContainerOver(a,d,b)}if(this.lastOverNode!=g){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,a,d,b)}this.onNodeEnter(g,a,d,b);this.lastOverNode=g}return this.onNodeOver(g,a,d,b)},notifyOut:function(a,d,b){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,a,d,b);this.lastOverNode=null}},notifyDrop:function(a,d,b){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,a,d,b);this.lastOverNode=null}var g=this.getTargetFromEvent(d);return g?this.onNodeDrop(g,a,d,b):this.onContainerDrop(a,d,b)},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups)}});Ext.data.Api=(function(){return{CREATE:"create",READ:"load",UPDATE:"save",DESTROY:"destroy",getVerbs:function(){return[this.CREATE,this.READ,this.UPDATE,this.DESTROY]},isVerb:function(e,d){var b=false;d=d||this.getVerbs();for(var g=0,a=d.length;g<a;g++){if(d[g]==e){b=true;break}}return b},isValid:function(a){var e=[];var d=this.getVerbs();for(var b in a){if(!this.isVerb(b,d)){e.push(b)}}return(!e.length)?true:e}}})();Ext.data.SortTypes={none:function(a){return a},stripTagsRE:/<\/?[^>]+>/gi,asText:function(a){return String(a).replace(this.stripTagsRE,"")},asUCText:function(a){return String(a).toUpperCase().replace(this.stripTagsRE,"")},asUCString:function(a){return String(a).toUpperCase()},asDate:function(a){if(!a){return 0}if(Ext.isDate(a)){return a.getTime()}return Date.parse(String(a))},asFloat:function(a){var b=parseFloat(String(a).replace(/,/g,""));if(isNaN(b)){b=0}return b},asInt:function(a){var b=parseInt(String(a).replace(/,/g,""));if(isNaN(b)){b=0}return b}};Ext.data.Record=function(a,b){this.id=(b||b===0)?b:Ext.data.Record.id(this);this.data=a};Ext.data.Record.create=function(g){var d=Ext.extend(Ext.data.Record,{});var e=d.prototype;e.fields=new Ext.util.MixedCollection(false,function(h){return h.name});for(var b=0,a=g.length;b<a;b++){e.fields.add(new Ext.data.Field(g[b]))}d.getField=function(h){return e.fields.get(h)};return d};Ext.data.Record.PREFIX="ext-record";Ext.data.Record.AUTO_ID=1;Ext.data.Record.EDIT="edit";Ext.data.Record.REJECT="reject";Ext.data.Record.COMMIT="commit";Ext.data.Record.id=function(a){a.phantom=true;return[Ext.data.Record.PREFIX,"-",Ext.data.Record.AUTO_ID++].join("")};Ext.data.Record.prototype={dirty:false,editing:false,error:null,modified:null,phantom:false,join:function(a){this.store=a},set:function(a,b){if(String(this.data[a])==String(b)){return}this.dirty=true;if(!this.modified){this.modified={}}if(typeof this.modified[a]=="undefined"){this.modified[a]=this.data[a]}this.data[a]=b;if(!this.editing){this.afterEdit()}},afterEdit:function(){if(this.store){this.store.afterEdit(this)}},afterReject:function(){if(this.store){this.store.afterReject(this)}},afterCommit:function(){if(this.store){this.store.afterCommit(this)}},get:function(a){return this.data[a]},beginEdit:function(){this.editing=true;this.modified=this.modified||{}},cancelEdit:function(){this.editing=false;delete this.modified},endEdit:function(){this.editing=false;if(this.dirty){this.afterEdit()}},reject:function(b){var a=this.modified;for(var d in a){if(typeof a[d]!="function"){this.data[d]=a[d]}}this.dirty=false;delete this.modified;this.editing=false;if(b!==true){this.afterReject()}},commit:function(a){this.dirty=false;delete this.modified;this.editing=false;if(a!==true){this.afterCommit()}},getChanges:function(){var a=this.modified,b={};for(var d in a){if(a.hasOwnProperty(d)){b[d]=this.data[d]}}return b},hasError:function(){return this.error!=null},clearError:function(){this.error=null},copy:function(a){return new this.constructor(Ext.apply({},this.data),a||this.id)},isModified:function(a){return!!(this.modified&&this.modified.hasOwnProperty(a))},isValid:function(){return this.fields.find(function(a){return(a.allowBlank==false&&Ext.isEmpty(this.data[a.name]))?true:false},this)?false:true},markDirty:function(){this.dirty=true;if(!this.modified){this.modified={}}this.fields.each(function(a){this.modified[a.name]=this.data[a.name]},this)}};Ext.StoreMgr=Ext.apply(new Ext.util.MixedCollection(),{register:function(){for(var a=0,b;b=arguments[a];a++){this.add(b)}},unregister:function(){for(var a=0,b;b=arguments[a];a++){this.remove(this.lookup(b))}},lookup:function(a){return typeof a=="object"?(a.events?a:Ext.create(a,"store")):this.get(a)},getKey:function(a){return a.storeId}});Ext.data.Store=function(a){this.data=new Ext.util.MixedCollection(false);this.data.getKey=function(b){return b.id};this.baseParams={};this.removed=[];this.paramNames={start:"start",limit:"limit",sort:"sort",dir:"dir"};if(a&&a.data){this.inlineData=a.data;delete a.data}Ext.apply(this,a);if(this.url&&!this.proxy){this.proxy=new Ext.data.HttpProxy({url:this.url})}if(this.reader){if(!this.recordType){this.recordType=this.reader.recordType}if(this.reader.onMetaChange){this.reader.onMetaChange=this.onMetaChange.createDelegate(this)}if(this.writer){this.writer.meta=this.reader.meta;this.pruneModifiedRecords=true}}if(this.recordType){this.fields=this.recordType.prototype.fields}this.modified=[];this.addEvents("datachanged","metachange","add","remove","update","clear","before"+Ext.data.Api.READ,Ext.data.Api.READ,Ext.data.Api.READ+"exception","beforewrite","write","writeexception");if(this.proxy){this.relayEvents(this.proxy,[Ext.data.Api.READ+"exception"])}if(this.writer){this.relayEvents(this.proxy,["writeexception"]);this.on("add",this.createRecords.createDelegate(this));this.on("remove",this.destroyRecord.createDelegate(this));this.on("update",this.updateRecord.createDelegate(this))}this.sortToggle={};if(this.sortField){this.setDefaultSort(this.sortField,this.sortDir)}else{if(this.sortInfo){this.setDefaultSort(this.sortInfo.field,this.sortInfo.direction)}}Ext.data.Store.superclass.constructor.call(this);if(this.id){this.storeId=this.id;delete this.id}if(this.storeId){Ext.StoreMgr.register(this)}if(this.inlineData){this.loadData(this.inlineData);delete this.inlineData}else{if(this.autoLoad){this.load.defer(10,this,[typeof this.autoLoad=="object"?this.autoLoad:undefined])}}};Ext.extend(Ext.data.Store,Ext.util.Observable,{writer:undefined,remoteSort:false,autoDestroy:false,pruneModifiedRecords:false,lastOptions:null,batchSave:false,destroy:function(){if(this.storeId){Ext.StoreMgr.unregister(this)}this.data=null;this.purgeListeners()},add:function(b){b=[].concat(b);if(b.length<1){return}for(var e=0,a=b.length;e<a;e++){b[e].join(this)}var d=this.data.length;this.data.addAll(b);if(this.snapshot){this.snapshot.addAll(b)}this.fireEvent("add",this,b,d)},addSorted:function(a){var b=this.findInsertIndex(a);this.insert(b,a)},remove:function(a){var b=this.data.indexOf(a);this.data.removeAt(b);if(this.pruneModifiedRecords){this.modified.remove(a)}if(this.snapshot){this.snapshot.remove(a)}this.fireEvent("remove",this,a,b)},removeAt:function(a){this.remove(this.getAt(a))},removeAll:function(){this.data.clear();if(this.snapshot){this.snapshot.clear()}if(this.pruneModifiedRecords){this.modified=[]}this.fireEvent("clear",this)},insert:function(d,b){b=[].concat(b);for(var e=0,a=b.length;e<a;e++){this.data.insert(d,b[e]);b[e].join(this)}this.fireEvent("add",this,b,d)},indexOf:function(a){return this.data.indexOf(a)},indexOfId:function(a){return this.data.indexOfKey(a)},getById:function(a){return this.data.key(a)},getAt:function(a){return this.data.itemAt(a)},getRange:function(b,a){return this.data.getRange(b,a)},storeOptions:function(a){a=Ext.apply({},a);delete a.callback;delete a.scope;this.lastOptions=a},load:function(b){b=b||{};this.storeOptions(b);if(this.sortInfo&&this.remoteSort){var a=this.paramNames;b.params=b.params||{};b.params[a.sort]=this.sortInfo.field;b.params[a.dir]=this.sortInfo.direction}try{return this.execute(Ext.data.Api.READ,null,b)}catch(d){this.handleException(d);return false}},updateRecord:function(b,a,d){if(d==Ext.data.Record.EDIT&&this.batchSave!==true&&(!a.phantom||(a.phantom&&a.isValid))){this.save()}},createRecords:function(d,b,e){for(var g=0,a=b.length;g<a;g++){if(b[g].phantom&&b[g].isValid()){b[g].markDirty();this.modified.push(b[g])}}if(this.batchSave===false){this.save()}},destroyRecord:function(b,a,d){if(this.modified.indexOf(a)!=-1){this.modified.remove(a)}if(!a.phantom){this.removed.push(a);a.lastIndex=d;if(this.batchSave===false){this.save()}}},execute:function(e,a,b){if(!Ext.data.Api.isVerb(e)){throw new Error('Store#execute attempted to execute an unknown action "'+e+'".  Valid API actions are "'+Ext.data.Api.getVerbs().join(", "))}b=Ext.applyIf(b||{},{params:{}});var d=true;if(e===Ext.data.Api.READ){d=this.fireEvent("before"+e,this,b)}else{a=(a.length>1)?a:a.shift();if(d=this.fireEvent("beforewrite",this,e,a,b)!==false){this.writer.write(e,b.params,a)}}if(d!==false){this.proxy.request(e,a,Ext.apply(b.params||{},this.baseParams,{xaction:e}),this.reader,this.createCallback(e,a),this,b)}return d},save:function(){if(!this.writer){throw new Error("Store#save called without a DataWriter installed!  Unable to execute remote-actions.  See docs for Ext.data.Api, Ext.data.DataWriter, Ext.data.JsonWriter.")}if(this.removed.length){try{this.execute(Ext.data.Api.DESTROY,this.removed)}catch(g){this.handleException(g)}}var a=this.getModifiedRecords();if(!a.length){return true}var d=[];for(var b=a.length-1;b>=0;b--){if(a[b].phantom===true){var h=a.splice(b,1).shift();if(h.isValid()){d.push(h)}}else{if(!a[b].isValid()){a.splice(b,1)}}}if(d.length){try{this.execute(Ext.data.Api.CREATE,d)}catch(g){this.handleException(g)}}if(a.length){try{this.execute(Ext.data.Api.UPDATE,a)}catch(g){this.handleException(g)}}return true},createCallback:function(b,a){return(b==Ext.data.Api.READ)?this.loadRecords:function(e,d,g){switch(b){case Ext.data.Api.CREATE:this.onCreateRecords(g,a,e);break;case Ext.data.Api.DESTROY:this.onDestroyRecords(g,a,e);break;case Ext.data.Api.UPDATE:this.onUpdateRecords(g,a,e);break}this.fireEvent("write",this,b,e,d,a)}},onCreateRecords:function(g,a,b){if(g===true){try{this.reader.realize(a,b)}catch(d){this.handleException(d);if(Ext.isArray(a)){this.onCreateRecords(g,a,b)}}}},onUpdateRecords:function(g,a,b){if(g===true){try{this.reader.update(a,b)}catch(d){this.handleException(d);if(Ext.isArray(a)){this.onUpdateRecords(g,a,b)}}}},onDestroyRecords:function(g,b,e){this.removed=[];if(g===true){}else{if(b instanceof Ext.data.Record){b=[b]}for(var d=0,a=b.length;d<a;d++){this.insert(b[d].lastIndex,b[d])}}},handleException:function(a){if(typeof(console)=="object"&&typeof(console.error)=="function"){console.error(a)}else{alert(a)}},reload:function(a){this.load(Ext.applyIf(a||{},this.lastOptions))},loadRecords:function(j,b,h){if(!j||h===false){if(h!==false){this.fireEvent(Ext.data.Api.READ,this,[],b)}if(b.callback){b.callback.call(b.scope||this,[],b,false)}return}var g=j.records,e=j.totalRecords||g.length;if(!b||b.add!==true){if(this.pruneModifiedRecords){this.modified=[]}for(var d=0,a=g.length;d<a;d++){g[d].join(this)}if(this.snapshot){this.data=this.snapshot;delete this.snapshot}this.data.clear();this.data.addAll(g);this.totalLength=e;this.applySort();this.fireEvent("datachanged",this)}else{this.totalLength=Math.max(e,this.data.length+g.length);this.add(g)}this.fireEvent(Ext.data.Api.READ,this,g,b);if(b.callback){b.callback.call(b.scope||this,g,b,true)}},loadData:function(d,a){var b=this.reader.readRecords(d);this.loadRecords(b,{add:a},true)},getCount:function(){return this.data.length||0},getTotalCount:function(){return this.totalLength||0},getSortState:function(){return this.sortInfo},applySort:function(){if(this.sortInfo&&!this.remoteSort){var a=this.sortInfo,b=a.field;this.sortData(b,a.direction)}},sortData:function(d,e){e=e||"ASC";var a=this.fields.get(d).sortType;var b=function(h,g){var k=a(h.data[d]),j=a(g.data[d]);return k>j?1:(k<j?-1:0)};this.data.sort(e,b);if(this.snapshot&&this.snapshot!=this.data){this.snapshot.sort(e,b)}},setDefaultSort:function(b,a){a=a?a.toUpperCase():"ASC";this.sortInfo={field:b,direction:a};this.sortToggle[b]=a},sort:function(g,d){var e=this.fields.get(g);if(!e){return false}if(!d){if(this.sortInfo&&this.sortInfo.field==e.name){d=(this.sortToggle[e.name]||"ASC").toggle("ASC","DESC")}else{d=e.sortDir}}var b=(this.sortToggle)?this.sortToggle[e.name]:null;var a=(this.sortInfo)?this.sortInfo:null;this.sortToggle[e.name]=d;this.sortInfo={field:e.name,direction:d};if(!this.remoteSort){this.applySort();this.fireEvent("datachanged",this)}else{if(!this.load(this.lastOptions)){if(b){this.sortToggle[e.name]=b}if(a){this.sortInfo=a}}}},each:function(b,a){this.data.each(b,a)},getModifiedRecords:function(){return this.modified},createFilterFn:function(d,b,e,a){if(Ext.isEmpty(b,false)){return false}b=this.data.createValueMatcher(b,e,a);return function(g){return b.test(g.data[d])}},sum:function(g,h,a){var d=this.data.items,b=0;h=h||0;a=(a||a===0)?a:d.length-1;for(var e=h;e<=a;e++){b+=(d[e].data[g]||0)}return b},filter:function(e,d,g,a){var b=this.createFilterFn(e,d,g,a);return b?this.filterBy(b):this.clearFilter()},filterBy:function(b,a){this.snapshot=this.snapshot||this.data;this.data=this.queryBy(b,a||this);this.fireEvent("datachanged",this)},query:function(e,d,g,a){var b=this.createFilterFn(e,d,g,a);return b?this.queryBy(b):this.data.clone()},queryBy:function(b,a){var d=this.snapshot||this.data;return d.filterBy(b,a||this)},find:function(e,d,h,g,a){var b=this.createFilterFn(e,d,g,a);return b?this.data.findIndexBy(b,null,h):-1},findBy:function(b,a,d){return this.data.findIndexBy(b,a,d)},collect:function(k,m,b){var j=(b===true&&this.snapshot)?this.snapshot.items:this.data.items;var n,o,a=[],e={};for(var g=0,h=j.length;g<h;g++){n=j[g].data[k];o=String(n);if((m||!Ext.isEmpty(n))&&!e[o]){e[o]=true;a[a.length]=n}}return a},clearFilter:function(a){if(this.isFiltered()){this.data=this.snapshot;delete this.snapshot;if(a!==true){this.fireEvent("datachanged",this)}}},isFiltered:function(){return this.snapshot&&this.snapshot!=this.data},afterEdit:function(a){if(this.modified.indexOf(a)==-1){this.modified.push(a)}this.fireEvent("update",this,a,Ext.data.Record.EDIT)},afterReject:function(a){this.modified.remove(a);this.fireEvent("update",this,a,Ext.data.Record.REJECT)},afterCommit:function(a){this.modified.remove(a);this.fireEvent("update",this,a,Ext.data.Record.COMMIT)},commitChanges:function(){var b=this.modified.slice(0);this.modified=[];for(var d=0,a=b.length;d<a;d++){b[d].commit()}},rejectChanges:function(){var b=this.modified.slice(0);this.modified=[];for(var d=0,a=b.length;d<a;d++){b[d].reject()}},onMetaChange:function(b,a,d){this.recordType=a;this.fields=a.prototype.fields;delete this.snapshot;this.sortInfo=b.sortInfo;this.modified=[];this.fireEvent("metachange",this,this.reader.meta)},findInsertIndex:function(a){this.suspendEvents();var d=this.data.clone();this.data.add(a);this.applySort();var b=this.data.indexOf(a);this.data=d;this.resumeEvents();return b},setBaseParam:function(a,b){this.baseParams=this.baseParams||{};this.baseParams[a]=b}});Ext.reg("store",Ext.data.Store);Ext.data.DirectStore=function(a){Ext.data.DirectStore.superclass.constructor.call(this,Ext.apply(a,{proxy:(typeof(a.proxy)=="undefined")?new Ext.data.DirectProxy(Ext.copyTo({},a,"paramOrder,paramsAsHash,directFn,api")):a.proxy,reader:(typeof(a.reader)=="undefined"&&typeof(a.fields)=="object")?new Ext.data.JsonReader(Ext.copyTo({},a,"totalProperty,root,idProperty"),a.fields):a.reader}))};Ext.extend(Ext.data.DirectStore,Ext.data.Store);Ext.reg("directstore",Ext.data.DirectStore);Ext.data.JsonStore=Ext.extend(Ext.data.Store,{constructor:function(a){Ext.data.JsonStore.superclass.constructor.call(this,Ext.apply(a,{reader:new Ext.data.JsonReader(a)}))}});Ext.reg("jsonstore",Ext.data.JsonStore);Ext.data.XmlStore=Ext.extend(Ext.data.Store,{constructor:function(a){Ext.data.XmlStore.superclass.constructor.call(this,Ext.apply(a,{reader:new Ext.data.XmlReader(a)}))}});Ext.reg("xmlstore",Ext.data.XmlStore);Ext.data.ArrayStore=Ext.extend(Ext.data.Store,{constructor:function(a){Ext.data.ArrayStore.superclass.constructor.call(this,Ext.apply(a,{reader:new Ext.data.ArrayReader(a)}))},loadData:function(g,b){if(this.expandData===true){var e=[];for(var d=0,a=g.length;d<a;d++){e[e.length]=[g[d]]}g=e}Ext.data.ArrayStore.superclass.loadData.call(this,g,b)}});Ext.reg("arraystore",Ext.data.ArrayStore);Ext.data.SimpleStore=Ext.data.ArrayStore;Ext.reg("simplestore",Ext.data.SimpleStore);Ext.data.Field=function(e){if(typeof e=="string"){e={name:e}}Ext.apply(this,e);if(!this.type){this.type="auto"}var d=Ext.data.SortTypes;if(typeof this.sortType=="string"){this.sortType=d[this.sortType]}if(!this.sortType){switch(this.type){case"string":this.sortType=d.asUCString;break;case"date":this.sortType=d.asDate;break;default:this.sortType=d.none}}var g=/[\$,%]/g;if(!this.convert){var b,a=this.dateFormat;switch(this.type){case"":case"auto":case undefined:b=function(h){return h};break;case"string":b=function(h){return(h===undefined||h===null)?"":String(h)};break;case"int":b=function(h){return h!==undefined&&h!==null&&h!==""?parseInt(String(h).replace(g,""),10):""};break;case"float":b=function(h){return h!==undefined&&h!==null&&h!==""?parseFloat(String(h).replace(g,""),10):""};break;case"bool":case"boolean":b=function(h){return h===true||h==="true"||h==1};break;case"date":b=function(j){if(!j){return""}if(Ext.isDate(j)){return j}if(a){if(a=="timestamp"){return new Date(j*1000)}if(a=="time"){return new Date(parseInt(j,10))}return Date.parseDate(j,a)}var h=Date.parse(j);return h?new Date(h):null};break}this.convert=b}};Ext.data.Field.prototype={dateFormat:null,defaultValue:"",mapping:null,sortType:null,sortDir:"ASC",allowBlank:true};Ext.data.DataReader=function(a,b){this.meta=a;this.recordType=Ext.isArray(b)?Ext.data.Record.create(b):b};Ext.data.DataReader.prototype={realize:function(b,e){if(Ext.isArray(b)){for(var d=b.length-1;d>=0;d--){if(Ext.isArray(e)){this.realize(b.splice(d,1).shift(),e.splice(d,1).shift())}else{this.realize(b.splice(d,1).shift(),e)}}}else{if(!this.isData(e)){b.commit();throw new Error("DataReader#realize was called with invalid remote-data.  Please see the docs for DataReader#realize and review your DataReader configuration.")}var a=this.extractValues(e,b.fields.items,b.fields.items.length);b.phantom=false;b.id=e[this.meta.idProperty];b.data=a;b.commit()}},update:function(a,d){if(Ext.isArray(a)){for(var b=a.length-1;b>=0;b--){if(Ext.isArray(d)){this.update(a.splice(b,1).shift(),d.splice(b,1).shift())}else{this.update(a.splice(b,1).shift(),d)}}}else{if(!this.isData(d)){a.commit();throw new Error("DataReader#update received invalid data from server.  Please see docs for DataReader#update")}a.data=this.extractValues(d,a.fields.items,a.fields.items.length);a.commit()}},isData:function(a){return(a&&typeof(a)=="object"&&!Ext.isEmpty(a[this.meta.idProperty]))?true:false}};Ext.data.DataWriter=function(a){Ext.apply(this,a)};Ext.data.DataWriter.prototype={meta:{},writeAllFields:false,write:function(d,e,a){var b=null;switch(d){case Ext.data.Api.CREATE:b=this.create(a);break;case Ext.data.Api.UPDATE:b=this.update(a);break;case Ext.data.Api.DESTROY:b=this.destroy(a);break}this.render(d,a,e,b)},render:Ext.emptyFn,update:function(b){var g={};if(Ext.isArray(b)){var e=[];var d=[];for(var h=0,a=b.length;h<a;h++){d.push(b[h].id);e.push(this.updateRecord(b[h]))}g[this.meta.idProperty]=d;g[this.meta.root]=e}else{if(b instanceof Ext.data.Record){g[this.meta.idProperty]=b.id;g[this.meta.root]=this.updateRecord(b)}}return g},updateRecord:Ext.emptyFn,create:function(b){var e={};if(Ext.isArray(b)){var d=[];for(var g=0,a=b.length;g<a;g++){d.push(this.createRecord(b[g]))}e[this.meta.root]=d}else{if(b instanceof Ext.data.Record){e[this.meta.root]=this.createRecord(b)}}return e},createRecord:Ext.emptyFn,destroy:function(b){var h={};if(Ext.isArray(b)){var g=[];var e=[];for(var d=0,a=b.length;d<a;d++){g.push(this.destroyRecord(b[d]))}h[this.meta.root]=g}else{if(b instanceof Ext.data.Record){h[this.meta.root]=this.destroyRecord(b)}}return h},destroyRecord:Ext.emptyFn,toHash:function(g){var e=g.fields.map;var d={};var b=(this.writeAllFields===false&&g.phantom===false)?g.getChanges():g.data;for(var a in b){d[(e[a].mapping)?e[a].mapping:e[a].name]=b[a]}d[this.meta.idProperty]=g.id;return d}};Ext.data.JsonWriter=Ext.extend(Ext.data.DataWriter,{returnJson:true,render:function(d,a,e,b){Ext.apply(e,b);if(this.returnJson){if(Ext.isArray(a)&&b[this.meta.idProperty]){e[this.meta.idProperty]=Ext.encode(e[this.meta.idProperty])}e[this.meta.root]=Ext.encode(e[this.meta.root])}},createRecord:function(a){return this.toHash(a)},updateRecord:function(a){return this.toHash(a)},destroyRecord:function(a){return a.id}});Ext.data.DataProxy=function(b){b=b||{};Ext.apply(this,b);if(b.api){var a=Ext.data.Api.isValid(b.api);if(a!==true){throw new Error('Ext.data.DataProxy#constructor recieved an invalid API-configuration "'+a.join(", ")+'".  Please ensure your proxy API-configuration contains only the actions "'+Ext.data.Api.getVerbs().join(", "))}}else{this.api={};this.api[Ext.data.Api.CREATE]=undefined;this.api[Ext.data.Api.READ]=undefined;this.api[Ext.data.Api.UPDATE]=undefined;this.api[Ext.data.Api.DESTROY]=undefined}this.addEvents("before"+Ext.data.READ,Ext.data.READ,"beforewrite","write");Ext.data.DataProxy.superclass.constructor.call(this)};Ext.extend(Ext.data.DataProxy,Ext.util.Observable,{setApi:function(){if(arguments.length==1){var a=Ext.data.Api.isValid(arguments[0]);if(a===true){this.api=arguments[0]}else{throw new Error('Ext.data.DataProxy#setApi received invalid API action(s) "'+a.join(", ")+'".  Valid API actions are: '+Ext.data.Api.getVerbs().join(", "))}}else{if(arguments.length==2){if(!Ext.data.Api.isVerb(arguments[0])){throw new Error('Ext.data.DataProxy#setApi received an invalid API action "'+arguments[0]+'".  Valid API actions are: '+Ext.data.Api.getVerbs().join(", "))}this.api[arguments[0]]=arguments[1]}}},request:function(g,b,h,a,j,e,d){h=h||{};if((g==Ext.data.Api.READ)?this.fireEvent("before"+g,this,h,d):this.fireEvent("beforewrite",this,g,h,d)!==false){this.doRequest.apply(this,arguments)}else{j.call(e||this,null,arg,false)}},load:function(e,b,g,d,a){this.doRequest(Ext.data.READ,null,e,b,g,d,a)},doRequest:function(g,b,h,a,j,e,d){this[g](h,a,j,e,d)}});Ext.data.MemoryProxy=function(a){Ext.data.MemoryProxy.superclass.constructor.call(this);this.data=a;this.api={load:true}};Ext.extend(Ext.data.MemoryProxy,Ext.data.DataProxy,{doRequest:function(d,g,b,h,a,k,l,m){b=b||{};var n;try{n=h.readRecords(this.data)}catch(j){this.fireEvent("loadexception",this,m,null,j);k.call(l,null,m,false);return}k.call(l,n,m,true)}});Ext.data.HttpProxy=function(b){Ext.data.HttpProxy.superclass.constructor.call(this,b);this.conn=b;this.conn.url=null;this.useAjax=!b||!b.events;this.activeRequest={};var d=Ext.data.Api.getVerbs();for(var e=0,a=d.length;e<a;e++){this.activeRequest[d[e]]=undefined}};Ext.extend(Ext.data.HttpProxy,Ext.data.DataProxy,{prettyUrls:false,getConnection:function(){return this.useAjax?Ext.Ajax:this.conn},setUrl:function(a,b){this.conn.url=a;if(b===true){this.url=a}},buildUrl:function(d,a){a=a||null;var b=(this.api[d])?this.api[d]:this.url;if(!b){throw new Error('HttpProxy tried to build an url for the action "'+d+'" but could not find an api definition for this action or an url to fall-back to.  Please review your proxy configuration.')}if(this.prettyUrls===true&&a instanceof Ext.data.Record&&!a.phantom){b+="/"+a.id}return b},doRequest:function(h,e,k,d,b,g,a){var j={params:k||{},method:(h===Ext.data.Api.READ)?"GET":"POST",request:{callback:b,scope:g,arg:a},reader:d,callback:this.createCallback(h,e),scope:this};if(this.useAjax){if(this.conn.url===null){this.conn.url=this.buildUrl(h,e)}else{if(this.prettyUrls===true&&e instanceof Ext.data.Record&&!e.phantom){this.conn.url+="/"+e.id}}Ext.applyIf(j,this.conn);if(this.activeRequest[h]){Ext.Ajax.abort(this.activeRequest[h])}this.activeRequest[h]=Ext.Ajax.request(j);this.conn.url=null}else{this.conn.request(j)}},createCallback:function(b,a){return(b==Ext.data.Api.READ)?function(k,j,g){this.activeRequest[b]=undefined;if(!j){this.fireEvent(b+"exception",this,k,g);k.request.callback.call(k.request.scope,null,k.request.arg,false);return}var d;try{d=k.reader.read(g)}catch(h){this.fireEvent(b+"exception",this,k,g,h);k.request.callback.call(k.request.scope,null,k.request.arg,false);return}this.fireEvent(b,this,k,k.request.arg);k.request.callback.call(k.request.scope,d,k.request.arg,true)}:function(j,h,e){this.activeRequest[b]=undefined;var d=j.reader;var g=d.readResponse(e);if(!g[d.meta.successProperty]===true){this.fireEvent("writeexception",this,b,j,g);j.request.callback.call(j.request.scope,null,g,false);return}this.fireEvent("write",this,b,g[d.meta.root],g,j.request.arg);j.request.callback.call(j.request.scope,g[d.meta.root],g,true)}}});Ext.data.ScriptTagProxy=function(a){Ext.data.ScriptTagProxy.superclass.constructor.call(this,a);this.head=document.getElementsByTagName("head")[0]};Ext.data.ScriptTagProxy.TRANS_ID=1000;Ext.extend(Ext.data.ScriptTagProxy,Ext.data.DataProxy,{timeout:30000,callbackParam:"callback",nocache:true,doRequest:function(g,h,e,j,l,m,n){var d=Ext.urlEncode(Ext.apply(e,this.extraParams));var b=this.url||this.api[g];b+=(b.indexOf("?")!=-1?"&":"?")+d;if(this.nocache){b+="&_dc="+(new Date().getTime())}var a=++Ext.data.ScriptTagProxy.TRANS_ID;var o={id:a,action:g,cb:"stcCallback"+a,scriptId:"stcScript"+a,params:e,arg:n,url:b,callback:l,scope:m,reader:j};window[o.cb]=this.createCallback(g,o);b+=String.format("&{0}={1}",this.callbackParam,o.cb);if(this.autoAbort!==false){this.abort()}o.timeoutId=this.handleFailure.defer(this.timeout,this,[o]);var k=document.createElement("script");k.setAttribute("src",b);k.setAttribute("type","text/javascript");k.setAttribute("id",o.scriptId);this.head.appendChild(k);this.trans=o},createCallback:function(d,a){var b=this;return(d==Ext.data.Api.READ)?function(h){b.trans=false;b.destroyTrans(a,true);var g;try{g=a.reader.readRecords(h)}catch(j){b.fireEvent(Ext.data.Api.READ+"exception",b,h,a.arg,j);a.callback.call(a.scope||window,null,a.arg,false);return}b.fireEvent(Ext.data.Api.READ,b,h,a.arg);a.callback.call(a.scope||window,g,a.arg,true)}:function(g){var e=a.reader;if(!g[e.meta.successProperty]===true){b.fireEvent("writeexception",d,b,a,g);a.callback.call(a.scope,null,g,false);return}b.fireEvent("write",d,b,g[e.meta.root],g,a.arg);a.callback.call(a.scope||window,g[e.meta.root],g,true)}},isLoading:function(){return this.trans?true:false},abort:function(){if(this.isLoading()){this.destroyTrans(this.trans)}},destroyTrans:function(b,a){this.head.removeChild(document.getElementById(b.scriptId));clearTimeout(b.timeoutId);if(a){window[b.cb]=undefined;try{delete window[b.cb]}catch(d){}}else{window[b.cb]=function(){window[b.cb]=undefined;try{delete window[b.cb]}catch(g){}}}},handleFailure:function(a){this.trans=false;this.destroyTrans(a,false);if(a.action===Ext.data.Api.READ){this.fireEvent(Ext.data.Api.READ+"exception",this,null,a.arg)}else{this.fireEvent("writeexception",this,a.action,null,a.arg)}a.callback.call(a.scope||window,null,a.arg,false)}});Ext.data.DirectProxy=function(a){if(typeof this.paramOrder=="string"){this.paramOrder=this.paramOrder.split(/[\s,|]/)}Ext.data.DirectProxy.superclass.constructor.call(this,a)};Ext.extend(Ext.data.DirectProxy,Ext.data.DataProxy,{paramOrder:undefined,paramsAsHash:true,directFn:undefined,doRequest:function(b,d,a,g,l,m,n){var k=[];var j=this.api[b]||this.directFn;switch(b){case Ext.data.Api.CREATE:k.push(a[g.meta.root]);break;case Ext.data.Api.READ:if(this.paramOrder){for(var e=0,h=this.paramOrder.length;e<h;e++){k.push(a[this.paramOrder[e]])}}else{if(this.paramsAsHash){k.push(a)}}break;case Ext.data.Api.UPDATE:k.push(a[g.meta.idProperty]);k.push(a[g.meta.root]);break;case Ext.data.Api.DESTROY:k.push(a[g.meta.root]);break}k.push(this.createCallback(b,g,l,m,n));j.apply(window,k)},createCallback:function(e,b,g,d,a){return{callback:(e==Ext.data.Api.READ)?function(h,l){if(!l.status){this.fireEvent(e+"exception",this,l,h);g.call(d,null,a,false);return}var j;try{j=b.readRecords(h)}catch(k){this.fireEvent("writeexception",this,e,l,h,k);g.call(d,null,a,false);return}this.fireEvent("write",this,e,l,a);g.call(d,j,a,true)}:function(h,j){if(!j.status){this.fireEvent("writeexception",this,e,j);g.call(d,null,j,false);return}this.fireEvent("write",this,e,h,j,a);g.call(d,h,j,true)},scope:this}}});Ext.data.JsonReader=function(a,b){a=a||{};Ext.data.JsonReader.superclass.constructor.call(this,a,b||a.fields)};Ext.extend(Ext.data.JsonReader,Ext.data.DataReader,{read:function(a){var b=a.responseText;var d=Ext.decode(b);if(!d){throw{message:"JsonReader.read: Json object not found"}}return this.readRecords(d)},onMetaChange:function(a,d,b){},simpleAccess:function(b,a){return b[a]},getJsonAccessor:function(){var a=/[\[\.]/;return function(d){try{return(a.test(d))?new Function("obj","return obj."+d):function(e){return e[d]}}catch(b){}return Ext.emptyFn}}(),readRecords:function(b){this.jsonData=b;if(b.metaData){delete this.ef;this.meta=b.metaData;this.recordType=Ext.data.Record.create(b.metaData.fields);this.onMetaChange(this.meta,this.recordType,b)}var y=this.meta,r=this.recordType,l=r.prototype.fields,x=l.items,t=l.length;if(!this.ef){if(y.totalProperty){this.getTotal=this.getJsonAccessor(y.totalProperty)}if(y.successProperty){this.getSuccess=this.getJsonAccessor(y.successProperty)}this.getRoot=y.root?this.getJsonAccessor(y.root):function(g){return g};if(y.id||y.idProperty){var k=this.getJsonAccessor(y.id||y.idProperty);this.getId=function(n){var g=k(n);return(g===undefined||g==="")?null:g}}else{this.getId=function(){return null}}this.ef=[];for(var h=0;h<t;h++){l=x[h];var a=(l.mapping!==undefined&&l.mapping!==null)?l.mapping:l.name;this.ef[h]=this.getJsonAccessor(a)}}var q=this.getRoot(b),p=q.length,m=p,w=true;if(y.totalProperty){var u=parseInt(this.getTotal(b),10);if(!isNaN(u)){m=u}}if(y.successProperty){var u=this.getSuccess(b);if(u===false||u==="false"){w=false}}var e=[];for(var h=0;h<p;h++){var d=q[h];var j=new r(this.extractValues(d,x,t),this.getId(d));j.json=d;e[h]=j}return{success:w,records:e,totalRecords:m}},extractValues:function(h,e,a){var d={};for(var g=0;g<a;g++){f=e[g];var b=this.ef[g](h);d[f.name]=f.convert((b!==undefined)?b:f.defaultValue,h)}return d},readResponse:function(a){var b=a.responseText;var d=Ext.decode(b);if(!d){throw{message:"JsonReader.read: Json object not found"}}return d}});Ext.data.XmlReader=function(a,b){a=a||{};Ext.data.XmlReader.superclass.constructor.call(this,a,b||a.fields)};Ext.extend(Ext.data.XmlReader,Ext.data.DataReader,{read:function(a){var b=a.responseXML;if(!b){throw{message:"XmlReader.read: XML Document not available"}}return this.readRecords(b)},readRecords:function(A){this.xmlData=A;var t=A.documentElement||A;var m=Ext.DomQuery;var b=this.recordType,r=b.prototype.fields;var e=this.meta.idPath||this.meta.id;var k=0,g=true;if(this.meta.totalRecords){k=m.selectNumber(this.meta.totalRecords,t,0)}if(this.meta.success){var p=m.selectValue(this.meta.success,t,true);g=p!==false&&p!=="false"}var x=[];var B=m.select(this.meta.record,t);for(var w=0,y=B.length;w<y;w++){var s=B[w];var a={};var o=e?m.selectValue(e,s):undefined;for(var u=0,l=r.length;u<l;u++){var z=r.items[u];var h=m.selectValue(Ext.value(z.mapping,z.name,true),s,z.defaultValue);h=z.convert(h,s);a[z.name]=h}var d=new b(a,o);d.node=s;x[x.length]=d}return{success:g,records:x,totalRecords:k||x.length}}});Ext.data.ArrayReader=Ext.extend(Ext.data.JsonReader,{readRecords:function(r){this.arrayData=r;var l=this.meta;var e=l?(l.idIndex||l.id):null;var b=this.recordType,q=b.prototype.fields;var z=[];if(!this.getRoot){this.getRoot=l.root?this.getJsonAccessor(l.root):function(j){return j};if(l.totalProperty){this.getTotal=this.getJsonAccessor(l.totalProperty)}}var u=this.getRoot(r);for(var y=0;y<u.length;y++){var t=u[y];var a={};var p=((e||e===0)&&t[e]!==undefined&&t[e]!==""?t[e]:null);for(var x=0,m=q.length;x<m;x++){var A=q.items[x];var w=A.mapping!==undefined&&A.mapping!==null?A.mapping:x;var g=t[w]!==undefined?t[w]:A.defaultValue;g=A.convert(g,t);a[A.name]=g}var d=new b(a,p);d.json=t;z[z.length]=d}var h=z.length;if(l.totalProperty){var g=parseInt(this.getTotal(r),10);if(!isNaN(g)){h=g}}return{records:z,totalRecords:h}}});Ext.Direct=Ext.extend(Ext.util.Observable,{exceptions:{TRANSPORT:"xhr",PARSE:"parse",LOGIN:"login",SERVER:"exception"},constructor:function(){this.addEvents("event","exception");this.transactions={};this.providers={}},addProvider:function(g){var d=arguments;if(d.length>1){for(var e=0,b=d.length;e<b;e++){this.addProvider(d[e])}return}if(!g.events){g=new Ext.Direct.PROVIDERS[g.type](g)}g.id=g.id||Ext.id();this.providers[g.id]=g;g.on("data",this.onProviderData,this);g.on("exception",this.onProviderException,this);if(!g.isConnected()){g.connect()}return g},getProvider:function(a){return this.providers[a]},removeProvider:function(b){var a=b.id?b:providers[b.id];a.un("data",this.onProviderData,this);a.un("exception",this.onProviderException,this);delete this.providers[a.id];return a},addTransaction:function(a){this.transactions[a.tid]=a;return a},removeTransaction:function(a){delete this.transactions[a.tid||a];return a},getTransaction:function(a){return this.transactions[a.tid||a]},onProviderData:function(g,d){if(Ext.isArray(d)){for(var b=0,a=d.length;b<a;b++){this.onProviderData(g,d[b])}return}if(d.name&&d.name!="event"&&d.name!="exception"){this.fireEvent(d.name,d)}else{if(d.type=="exception"){this.fireEvent("exception",d)}}this.fireEvent("event",d,g)},createEvent:function(a,b){return new Ext.Direct.eventTypes[a.type](Ext.apply(a,b))}});Ext.Direct=new Ext.Direct();Ext.Direct.TID=1;Ext.Direct.PROVIDERS={};Ext.Direct.Transaction=function(a){Ext.apply(this,a);this.tid=++Ext.Direct.TID;this.retryCount=0};Ext.Direct.Transaction.prototype={send:function(){this.provider.queueTransaction(this)},retry:function(){this.retryCount++;this.send()},getProvider:function(){return this.provider}};Ext.Direct.Event=function(a){Ext.apply(this,a)};Ext.Direct.Event.prototype={status:true,getData:function(){return this.data}};Ext.Direct.RemotingEvent=Ext.extend(Ext.Direct.Event,{type:"rpc",getTransaction:function(){return this.transaction||Ext.Direct.getTransaction(this.tid)}});Ext.Direct.ExceptionEvent=Ext.extend(Ext.Direct.RemotingEvent,{status:false,type:"exception"});Ext.Direct.eventTypes={rpc:Ext.Direct.RemotingEvent,event:Ext.Direct.Event,exception:Ext.Direct.ExceptionEvent};Ext.direct.Provider=Ext.extend(Ext.util.Observable,{priority:1,constructor:function(a){Ext.apply(this,a);this.addEvents("connect","disconnect","data","exception");Ext.direct.Provider.superclass.constructor.call(this,a)},isConnected:function(){return false},connect:Ext.emptyFn,disconnect:Ext.emptyFn});Ext.direct.JsonProvider=Ext.extend(Ext.direct.Provider,{parseResponse:function(a){if(!Ext.isEmpty(a.responseText)){if(typeof a.responseText=="object"){return a.responseText}return Ext.decode(a.responseText)}return null},getEvents:function(k){var h=null;try{h=this.parseResponse(k)}catch(j){var g=new Ext.Direct.ExceptionEvent({data:j,xhr:k,code:Ext.Direct.exceptions.PARSE,message:"Error parsing json response: \n\n "+h});return[g]}var d=[];if(Ext.isArray(h)){for(var b=0,a=h.length;b<a;b++){d.push(Ext.Direct.createEvent(h[b]))}}else{d.push(Ext.Direct.createEvent(h))}return d}});Ext.direct.PollingProvider=Ext.extend(Ext.direct.JsonProvider,{priority:3,interval:3000,constructor:function(a){Ext.direct.PollingProvider.superclass.constructor.call(this,a);this.addEvents("beforepoll","poll")},isConnected:function(){return!!this.pollTask},connect:function(){if(this.url&&!this.pollTask){this.pollTask=Ext.TaskMgr.start({run:function(){if(this.fireEvent("beforepoll",this)!==false){if(typeof this.url=="function"){this.url(this.baseParams)}else{Ext.Ajax.request({url:this.url,callback:this.onData,scope:this,params:this.baseParams})}}},interval:this.interval,scope:this});this.fireEvent("connect",this)}else{if(!this.url){throw"Error initializing PollingProvider, no url configured."}}},disconnect:function(){if(this.pollTask){Ext.TaskMgr.stop(this.pollTask);delete this.pollTask;this.fireEvent("disconnect",this)}},onData:function(g,k,j){if(k){var d=this.getEvents(j);for(var b=0,a=d.length;b<a;b++){var h=d[b];this.fireEvent("data",this,h)}}else{var h=new Ext.Direct.ExceptionEvent({data:h,code:Ext.Direct.exceptions.TRANSPORT,message:"Unable to connect to the server.",xhr:j});this.fireEvent("data",this,h)}}});Ext.Direct.PROVIDERS.polling=Ext.direct.PollingProvider;Ext.direct.RemotingProvider=Ext.extend(Ext.direct.JsonProvider,{enableBuffer:10,maxRetries:1,constructor:function(a){Ext.direct.RemotingProvider.superclass.constructor.call(this,a);this.addEvents("beforecall","call");this.namespace=(typeof this.namespace==="string")?Ext.ns(this.namespace):this.namespace||window;this.transactions={};this.callBuffer=[]},initAPI:function(){var h=this.actions;for(var j in h){var d=this.namespace[j]||(this.namespace[j]={});var e=h[j];for(var g=0,b=e.length;g<b;g++){var a=e[g];d[a.name]=this.createMethod(j,a)}}},isConnected:function(){return!!this.connected},connect:function(){if(this.url){this.initAPI();this.connected=true;this.fireEvent("connect",this)}else{if(!this.url){throw"Error initializing RemotingProvider, no url configured."}}},disconnect:function(){if(this.connected){this.connected=false;this.fireEvent("disconnect",this)}},onData:function(a,j,k){if(j){var l=this.getEvents(k);for(var b=0,d=l.length;b<d;b++){var g=l[b];var m=g.getTransaction();this.fireEvent("data",this,g);if(m){this.doCallback(m,g,true);Ext.Direct.removeTransaction(m)}}}else{var h=[].concat(a.ts);for(var b=0,d=h.length;b<d;b++){var m=this.getTransaction(a.ts[b]);if(m&&m.retryCount<this.maxRetries){m.retry()}else{var g=new Ext.Direct.ExceptionEvent({data:g,transaction:m,code:Ext.Direct.exceptions.TRANSPORT,message:"Unable to connect to the server.",xhr:k});this.fireEvent("data",this,g);if(m){this.doCallback(m,g,false);Ext.Direct.removeTransaction(m)}}}}},getCallData:function(a){return{action:a.action,method:a.method,data:a.data,type:"rpc",tid:a.tid}},doSend:function(e){var h={url:this.url,callback:this.onData,scope:this};var b;if(Ext.isArray(e)){b=[];for(var d=0,a=e.length;d<a;d++){b.push(this.getCallData(e[d]))}}else{b=this.getCallData(e)}if(this.enableUrlEncode){var g={};g[typeof this.enableUrlEncode=="string"?this.enableUrlEncode:"data"]=Ext.encode(b);h.params=g}else{h.jsonData=b}Ext.Ajax.request(h)},combineAndSend:function(){var a=this.callBuffer.length;if(a>0){this.doSend(a==1?this.callBuffer[0]:this.callBuffer);this.callBuffer=[]}},queueTransaction:function(a){this.callBuffer.push(a);if(this.enableBuffer){if(!this.callTask){this.callTask=new Ext.util.DelayedTask(this.combineAndSend,this)}this.callTask.delay(typeof this.enableBuffer=="number"?this.enableBuffer:10)}else{this.combineAndSend()}},doCall:function(j,a,b){var h=null,e=b[a.len],g=b[a.len+1];if(a.len!==0){h=b.slice(0,a.len)}var d=new Ext.Direct.Transaction({provider:this,args:b,action:j,method:a.name,data:h,cb:g&&typeof e=="function"?e.createDelegate(g):e});if(this.fireEvent("beforecall",this,d)!==false){Ext.Direct.addTransaction(d);this.queueTransaction(d);this.fireEvent("call",this,d)}},doForm:function(k,b,g,j,e){var d=new Ext.Direct.Transaction({provider:this,action:k,method:b.name,args:[g,j,e],cb:e&&typeof j=="function"?j.createDelegate(e):j});if(this.fireEvent("beforecall",this,d)!==false){Ext.Direct.addTransaction(d);g=Ext.getDom(g);var a=String(g.getAttribute("enctype")).toLowerCase()=="multipart/form-data";var h={extTID:d.tid,extAction:k,extMethod:b.name,extUpload:String(a)};if(j&&typeof j=="object"){Ext.apply(h,j.params)}Ext.Ajax.request({url:this.url,params:h,callback:this.onData,scope:this,form:g,isUpload:a,ts:d})}},createMethod:function(d,a){var b;if(!a.formHandler){b=function(){this.doCall(d,a,Array.prototype.slice.call(arguments,0))}.createDelegate(this)}else{b=function(g,h,e){this.doForm(d,a,g,h,e)}.createDelegate(this)}b.directCfg={action:d,method:a};return b},getTransaction:function(a){return a&&a.tid?Ext.Direct.getTransaction(a.tid):null},doCallback:function(d,h){var g=h.status?"success":"failure";if(d&&d.cb){var b=d.cb;var a=h.result||h.data;if(typeof b=="function"){b(a,h)}else{Ext.callback(b[g],b.scope,[a,h]);Ext.callback(b.callback,b.scope,[a,h])}}}});Ext.Direct.PROVIDERS.remoting=Ext.direct.RemotingProvider;Ext.data.Tree=function(a){this.nodeHash={};this.root=null;if(a){this.setRootNode(a)}this.addEvents("append","remove","move","insert","beforeappend","beforeremove","beforemove","beforeinsert");Ext.data.Tree.superclass.constructor.call(this)};Ext.extend(Ext.data.Tree,Ext.util.Observable,{pathSeparator:"/",proxyNodeEvent:function(){return this.fireEvent.apply(this,arguments)},getRootNode:function(){return this.root},setRootNode:function(a){this.root=a;a.ownerTree=this;a.isRoot=true;this.registerNode(a);return a},getNodeById:function(a){return this.nodeHash[a]},registerNode:function(a){this.nodeHash[a.id]=a},unregisterNode:function(a){delete this.nodeHash[a.id]},toString:function(){return"[Tree"+(this.id?" "+this.id:"")+"]"}});Ext.data.Node=function(a){this.attributes=a||{};this.leaf=this.attributes.leaf;this.id=this.attributes.id;if(!this.id){this.id=Ext.id(null,"xnode-");this.attributes.id=this.id}this.childNodes=[];if(!this.childNodes.indexOf){this.childNodes.indexOf=function(e){for(var d=0,b=this.length;d<b;d++){if(this[d]==e){return d}}return-1}}this.parentNode=null;this.firstChild=null;this.lastChild=null;this.previousSibling=null;this.nextSibling=null;this.addEvents({append:true,remove:true,move:true,insert:true,beforeappend:true,beforeremove:true,beforemove:true,beforeinsert:true});this.listeners=this.attributes.listeners;Ext.data.Node.superclass.constructor.call(this)};Ext.extend(Ext.data.Node,Ext.util.Observable,{fireEvent:function(b){if(Ext.data.Node.superclass.fireEvent.apply(this,arguments)===false){return false}var a=this.getOwnerTree();if(a){if(a.proxyNodeEvent.apply(a,arguments)===false){return false}}return true},isLeaf:function(){return this.leaf===true},setFirstChild:function(a){this.firstChild=a},setLastChild:function(a){this.lastChild=a},isLast:function(){return(!this.parentNode?true:this.parentNode.lastChild==this)},isFirst:function(){return(!this.parentNode?true:this.parentNode.firstChild==this)},hasChildNodes:function(){return!this.isLeaf()&&this.childNodes.length>0},isExpandable:function(){return this.attributes.expandable||this.hasChildNodes()},appendChild:function(g){var h=false;if(Ext.isArray(g)){h=g}else{if(arguments.length>1){h=arguments}}if(h){for(var e=0,a=h.length;e<a;e++){this.appendChild(h[e])}}else{if(this.fireEvent("beforeappend",this.ownerTree,this,g)===false){return false}var b=this.childNodes.length;var d=g.parentNode;if(d){if(g.fireEvent("beforemove",g.getOwnerTree(),g,d,this,b)===false){return false}d.removeChild(g)}b=this.childNodes.length;if(b==0){this.setFirstChild(g)}this.childNodes.push(g);g.parentNode=this;var j=this.childNodes[b-1];if(j){g.previousSibling=j;j.nextSibling=g}else{g.previousSibling=null}g.nextSibling=null;this.setLastChild(g);g.setOwnerTree(this.getOwnerTree());this.fireEvent("append",this.ownerTree,this,g,b);if(d){g.fireEvent("move",this.ownerTree,g,d,this,b)}return g}},removeChild:function(b){var a=this.childNodes.indexOf(b);if(a==-1){return false}if(this.fireEvent("beforeremove",this.ownerTree,this,b)===false){return false}this.childNodes.splice(a,1);if(b.previousSibling){b.previousSibling.nextSibling=b.nextSibling}if(b.nextSibling){b.nextSibling.previousSibling=b.previousSibling}if(this.firstChild==b){this.setFirstChild(b.nextSibling)}if(this.lastChild==b){this.setLastChild(b.previousSibling)}b.setOwnerTree(null);b.parentNode=null;b.previousSibling=null;b.nextSibling=null;this.fireEvent("remove",this.ownerTree,this,b);return b},insertBefore:function(e,a){if(!a){return this.appendChild(e)}if(e==a){return false}if(this.fireEvent("beforeinsert",this.ownerTree,this,e,a)===false){return false}var b=this.childNodes.indexOf(a);var d=e.parentNode;var g=b;if(d==this&&this.childNodes.indexOf(e)<b){g--}if(d){if(e.fireEvent("beforemove",e.getOwnerTree(),e,d,this,b,a)===false){return false}d.removeChild(e)}if(g==0){this.setFirstChild(e)}this.childNodes.splice(g,0,e);e.parentNode=this;var h=this.childNodes[g-1];if(h){e.previousSibling=h;h.nextSibling=e}else{e.previousSibling=null}e.nextSibling=a;a.previousSibling=e;e.setOwnerTree(this.getOwnerTree());this.fireEvent("insert",this.ownerTree,this,e,a);if(d){e.fireEvent("move",this.ownerTree,e,d,this,g,a)}return e},remove:function(){this.parentNode.removeChild(this);return this},item:function(a){return this.childNodes[a]},replaceChild:function(a,d){var b=d?d.nextSibling:null;this.removeChild(d);this.insertBefore(a,b);return d},indexOf:function(a){return this.childNodes.indexOf(a)},getOwnerTree:function(){if(!this.ownerTree){var a=this;while(a){if(a.ownerTree){this.ownerTree=a.ownerTree;break}a=a.parentNode}}return this.ownerTree},getDepth:function(){var b=0;var a=this;while(a.parentNode){++b;a=a.parentNode}return b},setOwnerTree:function(b){if(b!=this.ownerTree){if(this.ownerTree){this.ownerTree.unregisterNode(this)}this.ownerTree=b;var e=this.childNodes;for(var d=0,a=e.length;d<a;d++){e[d].setOwnerTree(b)}if(b){b.registerNode(this)}}},setId:function(b){if(b!==this.id){var a=this.ownerTree;if(a){a.unregisterNode(this)}this.id=b;if(a){a.registerNode(this)}this.onIdChange(b)}},onIdChange:Ext.emptyFn,getPath:function(d){d=d||"id";var g=this.parentNode;var a=[this.attributes[d]];while(g){a.unshift(g.attributes[d]);g=g.parentNode}var e=this.getOwnerTree().pathSeparator;return e+a.join(e)},bubble:function(d,b,a){var e=this;while(e){if(d.apply(b||e,a||[e])===false){break}e=e.parentNode}},cascade:function(h,g,b){if(h.apply(g||this,b||[this])!==false){var e=this.childNodes;for(var d=0,a=e.length;d<a;d++){e[d].cascade(h,g,b)}}},eachChild:function(h,g,b){var e=this.childNodes;for(var d=0,a=e.length;d<a;d++){if(h.apply(g||this,b||[e[d]])===false){break}}},findChild:function(e,g){var d=this.childNodes;for(var b=0,a=d.length;b<a;b++){if(d[b].attributes[e]==g){return d[b]}}return null},findChildBy:function(g,e){var d=this.childNodes;for(var b=0,a=d.length;b<a;b++){if(g.call(e||d[b],d[b])===true){return d[b]}}return null},sort:function(g,e){var d=this.childNodes;var a=d.length;if(a>0){var h=e?function(){g.apply(e,arguments)}:g;d.sort(h);for(var b=0;b<a;b++){var j=d[b];j.previousSibling=d[b-1];j.nextSibling=d[b+1];if(b==0){this.setFirstChild(j)}if(b==a-1){this.setLastChild(j)}}}},contains:function(a){return a.isAncestor(this)},isAncestor:function(a){var b=this.parentNode;while(b){if(b==a){return true}b=b.parentNode}return false},toString:function(){return"[Node"+(this.id?" "+this.id:"")+"]"}});Ext.data.GroupingStore=Ext.extend(Ext.data.Store,{constructor:function(a){Ext.data.GroupingStore.superclass.constructor.call(this,a);this.applyGroupField()},remoteGroup:false,groupOnSort:false,groupDir:"ASC",clearGrouping:function(){this.groupField=false;if(this.remoteGroup){if(this.baseParams){delete this.baseParams.groupBy}this.reload()}else{this.applySort();this.fireEvent("datachanged",this)}},groupBy:function(e,b,d){d=d?(String(d).toUpperCase()=="DESC"?"DESC":"ASC"):this.groupDir;if(this.groupField==e&&this.groupDir==d&&!b){return}this.groupField=e;this.groupDir=d;this.applyGroupField();if(this.groupOnSort){this.sort(e,d);return}if(this.remoteGroup){this.reload()}else{var a=this.sortInfo||{};if(a.field!=e||a.direction!=d){this.applySort()}else{this.sortData(e,d)}this.fireEvent("datachanged",this)}},applyGroupField:function(){if(this.remoteGroup){if(!this.baseParams){this.baseParams={}}this.baseParams.groupBy=this.groupField;this.baseParams.groupDir=this.groupDir}},applySort:function(){Ext.data.GroupingStore.superclass.applySort.call(this);if(!this.groupOnSort&&!this.remoteGroup){var a=this.getGroupState();if(a&&(a!=this.sortInfo.field||this.groupDir!=this.sortInfo.direction)){this.sortData(this.groupField,this.groupDir)}}},applyGrouping:function(a){if(this.groupField!==false){this.groupBy(this.groupField,true,this.groupDir);return true}else{if(a===true){this.fireEvent("datachanged",this)}return false}},getGroupState:function(){return this.groupOnSort&&this.groupField!==false?(this.sortInfo?this.sortInfo.field:undefined):this.groupField}});Ext.Component=function(b){b=b||{};if(b.initialConfig){if(b.isAction){this.baseAction=b}b=b.initialConfig}else{if(b.tagName||b.dom||typeof b=="string"){b={applyTo:b,id:b.id||b}}}this.initialConfig=b;Ext.apply(this,b);this.addEvents("disable","enable","beforeshow","show","beforehide","hide","beforerender","render","afterrender","beforedestroy","destroy","beforestaterestore","staterestore","beforestatesave","statesave");this.getId();Ext.ComponentMgr.register(this);Ext.Component.superclass.constructor.call(this);if(this.baseAction){this.baseAction.addComponent(this)}this.initComponent();if(this.plugins){if(Ext.isArray(this.plugins)){for(var d=0,a=this.plugins.length;d<a;d++){this.plugins[d]=this.initPlugin(this.plugins[d])}}else{this.plugins=this.initPlugin(this.plugins)}}if(this.stateful!==false){this.initState(b)}if(this.applyTo){this.applyToMarkup(this.applyTo);delete this.applyTo}else{if(this.renderTo){this.render(this.renderTo);delete this.renderTo}}};Ext.Component.AUTO_ID=1000;Ext.extend(Ext.Component,Ext.util.Observable,{autoEl:"div",disabledClass:"x-item-disabled",allowDomMove:true,autoShow:false,hideMode:"display",hideParent:false,hidden:false,disabled:false,rendered:false,ctype:"Ext.Component",actionMode:"el",getActionEl:function(){return this[this.actionMode]},initPlugin:function(a){if(a.ptype&&typeof a.init!="function"){a=Ext.ComponentMgr.createPlugin(a)}else{if(typeof a=="string"){a=Ext.ComponentMgr.createPlugin({ptype:a})}}a.init(this);return a},initComponent:Ext.emptyFn,render:function(b,a){if(!this.rendered&&this.fireEvent("beforerender",this)!==false){if(!b&&this.el){this.el=Ext.get(this.el);b=this.el.dom.parentNode;this.allowDomMove=false}this.container=Ext.get(b);if(this.ctCls){this.container.addClass(this.ctCls)}this.rendered=true;if(a!==undefined){if(typeof a=="number"){a=this.container.dom.childNodes[a]}else{a=Ext.getDom(a)}}this.onRender(this.container,a||null);if(this.autoShow){this.el.removeClass(["x-hidden","x-hide-"+this.hideMode])}if(this.cls){this.el.addClass(this.cls);delete this.cls}if(this.style){this.el.applyStyles(this.style);delete this.style}if(this.overCls){this.el.addClassOnOver(this.overCls)}this.fireEvent("render",this);this.afterRender(this.container);if(this.hidden){this.hide()}if(this.disabled){this.disable()}if(this.stateful!==false){this.initStateEvents()}this.initRef();this.fireEvent("afterrender",this)}return this},initRef:function(){if(this.ref){var e=this.ref.split("/");var d=e.length,b=0;var a=this;while(b<d){if(a.ownerCt){a=a.ownerCt}b++}a[e[--b]]=this}},initState:function(a){if(Ext.state.Manager){var d=this.getStateId();if(d){var b=Ext.state.Manager.get(d);if(b){if(this.fireEvent("beforestaterestore",this,b)!==false){this.applyState(b);this.fireEvent("staterestore",this,b)}}}}},getStateId:function(){return this.stateId||((this.id.indexOf("ext-comp-")==0||this.id.indexOf("ext-gen")==0)?null:this.id)},initStateEvents:function(){if(this.stateEvents){for(var a=0,b;b=this.stateEvents[a];a++){this.on(b,this.saveState,this,{delay:100})}}},applyState:function(b,a){if(b){Ext.apply(this,b)}},getState:function(){return null},saveState:function(){if(Ext.state.Manager&&this.stateful!==false){var b=this.getStateId();if(b){var a=this.getState();if(this.fireEvent("beforestatesave",this,a)!==false){Ext.state.Manager.set(b,a);this.fireEvent("statesave",this,a)}}}},applyToMarkup:function(a){this.allowDomMove=false;this.el=Ext.get(a);this.render(this.el.dom.parentNode)},addClass:function(a){if(this.el){this.el.addClass(a)}else{this.cls=this.cls?this.cls+" "+a:a}return this},removeClass:function(a){if(this.el){this.el.removeClass(a)}else{if(this.cls){this.cls=this.cls.split(" ").remove(a).join(" ")}}return this},onRender:function(b,a){if(!this.el&&this.autoEl){if(typeof this.autoEl=="string"){this.el=document.createElement(this.autoEl)}else{var d=document.createElement("div");Ext.DomHelper.overwrite(d,this.autoEl);this.el=d.firstChild}if(!this.el.id){this.el.id=this.getId()}}if(this.el){this.el=Ext.get(this.el);if(this.allowDomMove!==false){b.dom.insertBefore(this.el.dom,a)}}},getAutoCreate:function(){var a=typeof this.autoCreate=="object"?this.autoCreate:Ext.apply({},this.defaultAutoCreate);if(this.id&&!a.id){a.id=this.id}return a},afterRender:Ext.emptyFn,destroy:function(){if(this.fireEvent("beforedestroy",this)!==false){this.beforeDestroy();if(this.rendered){this.el.removeAllListeners();this.el.remove();if(this.actionMode=="container"||this.removeMode=="container"){this.container.remove()}}this.onDestroy();Ext.ComponentMgr.unregister(this);this.fireEvent("destroy",this);this.purgeListeners()}},beforeDestroy:Ext.emptyFn,onDestroy:Ext.emptyFn,getEl:function(){return this.el},getId:function(){return this.id||(this.id="ext-comp-"+(++Ext.Component.AUTO_ID))},getItemId:function(){return this.itemId||this.getId()},focus:function(b,a){if(a){this.focus.defer(typeof a=="number"?a:10,this,[b,false]);return}if(this.rendered){this.el.focus();if(b===true){this.el.dom.select()}}return this},blur:function(){if(this.rendered){this.el.blur()}return this},disable:function(){if(this.rendered){this.onDisable()}this.disabled=true;this.fireEvent("disable",this);return this},onDisable:function(){this.getActionEl().addClass(this.disabledClass);this.el.dom.disabled=true},enable:function(){if(this.rendered){this.onEnable()}this.disabled=false;this.fireEvent("enable",this);return this},onEnable:function(){this.getActionEl().removeClass(this.disabledClass);this.el.dom.disabled=false},setDisabled:function(a){return this[a?"disable":"enable"]()},show:function(){if(this.fireEvent("beforeshow",this)!==false){this.hidden=false;if(this.autoRender){this.render(typeof this.autoRender=="boolean"?Ext.getBody():this.autoRender)}if(this.rendered){this.onShow()}this.fireEvent("show",this)}return this},onShow:function(){if(this.hideParent){this.container.removeClass("x-hide-"+this.hideMode)}else{this.getActionEl().removeClass("x-hide-"+this.hideMode)}},hide:function(){if(this.fireEvent("beforehide",this)!==false){this.hidden=true;if(this.rendered){this.onHide()}this.fireEvent("hide",this)}return this},onHide:function(){if(this.hideParent){this.container.addClass("x-hide-"+this.hideMode)}else{this.getActionEl().addClass("x-hide-"+this.hideMode)}},setVisible:function(a){return this[a?"show":"hide"]()},isVisible:function(){return this.rendered&&this.getActionEl().isVisible()},cloneConfig:function(b){b=b||{};var d=b.id||Ext.id();var a=Ext.applyIf(b,this.initialConfig);a.id=d;return new this.constructor(a)},getXType:function(){return this.constructor.xtype},isXType:function(b,a){if(typeof b=="function"){b=b.xtype}else{if(typeof b=="object"){b=b.constructor.xtype}}return!a?("/"+this.getXTypes()+"/").indexOf("/"+b+"/")!=-1:this.constructor.xtype==b},getXTypes:function(){var a=this.constructor;if(!a.xtypes){var d=[],b=this;while(b&&b.constructor.xtype){d.unshift(b.constructor.xtype);b=b.constructor.superclass}a.xtypeChain=d;a.xtypes=d.join("/")}return a.xtypes},findParentBy:function(a){for(var b=this.ownerCt;(b!=null)&&!a(b,this);b=b.ownerCt){}return b||null},findParentByType:function(a){return typeof a=="function"?this.findParentBy(function(b){return b.constructor===a}):this.findParentBy(function(b){return b.constructor.xtype===a})},getDomPositionEl:function(){return this.getPositionEl?this.getPositionEl():this.getEl()},mon:function(h,b,g,d,a){if(!this.mons){this.mons=[];this.on("beforedestroy",function(){for(var o=0,n=this.mons.length;o<n;o++){var e=this.mons[o];e.item.un(e.ename,e.fn,e.scope)}},this,{single:true})}if(Ext.isObject(b)){var l=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;var k=b;for(var j in k){if(l.test(j)){continue}if(Ext.isFunction(k[j])){this.mons.push({item:h,ename:j,fn:k[j],scope:k.scope});h.on(j,k[j],k.scope,k)}else{this.mons.push({item:h,ename:j,fn:k[j],scope:k.scope});h.on(j,k[j])}}return}this.mons.push({item:h,ename:b,fn:g,scope:d});h.on(b,g,d,a)},mun:function(j,d,h,g){var k,e;for(var b=0,a=this.mons.length;b<a;++b){e=this.mons[b];if(j===e.item&&d==e.ename&&h===e.fn&&g===e.scope){this.mons.splice(b,1);j.un(d,h,g);k=true;break}}return k},nextSibling:function(){if(this.ownerCt){var a=this.ownerCt.items.indexOf(this);if(a!=-1&&a+1<this.ownerCt.items.getCount()){return this.ownerCt.items.itemAt(a+1)}}return null},previousSibling:function(){if(this.ownerCt){var a=this.ownerCt.items.indexOf(this);if(a>0){return this.ownerCt.items.itemAt(a-1)}}return null},getBubbleTarget:function(){return this.ownerCt}});Ext.reg("component",Ext.Component);Ext.Action=function(a){this.initialConfig=a;this.itemId=a.itemId=(a.itemId||a.id||Ext.id());this.items=[]};Ext.Action.prototype={isAction:true,setText:function(a){this.initialConfig.text=a;this.callEach("setText",[a])},getText:function(){return this.initialConfig.text},setIconClass:function(a){this.initialConfig.iconCls=a;this.callEach("setIconClass",[a])},getIconClass:function(){return this.initialConfig.iconCls},setDisabled:function(a){this.initialConfig.disabled=a;this.callEach("setDisabled",[a])},enable:function(){this.setDisabled(false)},disable:function(){this.setDisabled(true)},isDisabled:function(){return this.initialConfig.disabled},setHidden:function(a){this.initialConfig.hidden=a;this.callEach("setVisible",[!a])},show:function(){this.setHidden(false)},hide:function(){this.setHidden(true)},isHidden:function(){return this.initialConfig.hidden},setHandler:function(b,a){this.initialConfig.handler=b;this.initialConfig.scope=a;this.callEach("setHandler",[b,a])},each:function(b,a){Ext.each(this.items,b,a)},callEach:function(g,b){var e=this.items;for(var d=0,a=e.length;d<a;d++){e[d][g].apply(e[d],b)}},addComponent:function(a){this.items.push(a);a.on("destroy",this.removeComponent,this)},removeComponent:function(a){this.items.remove(a)},execute:function(){this.initialConfig.handler.apply(this.initialConfig.scope||window,arguments)}};(function(){Ext.Layer=function(e,d){e=e||{};var g=Ext.DomHelper;var j=e.parentEl,h=j?Ext.getDom(j):document.body;if(d){this.dom=Ext.getDom(d)}if(!this.dom){var k=e.dh||{tag:"div",cls:"x-layer"};this.dom=g.append(h,k)}if(e.cls){this.addClass(e.cls)}this.constrain=e.constrain!==false;this.visibilityMode=Ext.Element.VISIBILITY;if(e.id){this.id=this.dom.id=e.id}else{this.id=Ext.id(this.dom)}this.zindex=e.zindex||this.getZIndex();this.position("absolute",this.zindex);if(e.shadow){this.shadowOffset=e.shadowOffset||4;this.shadow=new Ext.Shadow({offset:this.shadowOffset,mode:e.shadow})}else{this.shadowOffset=0}this.useShim=e.shim!==false&&Ext.useShims;this.useDisplay=e.useDisplay;this.hide()};var a=Ext.Element.prototype;var b=[];Ext.extend(Ext.Layer,Ext.Element,{getZIndex:function(){return this.zindex||parseInt(this.getStyle("z-index"),10)||11000},getShim:function(){if(!this.useShim){return null}if(this.shim){return this.shim}var e=b.shift();if(!e){e=this.createShim();e.enableDisplayMode("block");e.dom.style.display="none";e.dom.style.visibility="visible"}var d=this.dom.parentNode;if(e.dom.parentNode!=d){d.insertBefore(e.dom,this.dom)}e.setStyle("z-index",this.getZIndex()-2);this.shim=e;return e},hideShim:function(){if(this.shim){this.shim.setDisplayed(false);b.push(this.shim);delete this.shim}},disableShadow:function(){if(this.shadow){this.shadowDisabled=true;this.shadow.hide();this.lastShadowOffset=this.shadowOffset;this.shadowOffset=0}},enableShadow:function(d){if(this.shadow){this.shadowDisabled=false;this.shadowOffset=this.lastShadowOffset;delete this.lastShadowOffset;if(d){this.sync(true)}}},sync:function(d){var n=this.shadow;if(!this.updating&&this.isVisible()&&(n||this.useShim)){var j=this.getShim();var m=this.getWidth(),g=this.getHeight();var e=this.getLeft(true),o=this.getTop(true);if(n&&!this.shadowDisabled){if(d&&!n.isVisible()){n.show(this)}else{n.realign(e,o,m,g)}if(j){if(d){j.show()}var k=n.adjusts,p=j.dom.style;p.left=(Math.min(e,e+k.l))+"px";p.top=(Math.min(o,o+k.t))+"px";p.width=(m+k.w)+"px";p.height=(g+k.h)+"px"}}else{if(j){if(d){j.show()}j.setSize(m,g);j.setLeftTop(e,o)}}}},destroy:function(){this.hideShim();if(this.shadow){this.shadow.hide()}this.removeAllListeners();Ext.removeNode(this.dom);Ext.Element.uncache(this.id)},remove:function(){this.destroy()},beginUpdate:function(){this.updating=true},endUpdate:function(){this.updating=false;this.sync(true)},hideUnders:function(d){if(this.shadow){this.shadow.hide()}this.hideShim()},constrainXY:function(){if(this.constrain){var l=Ext.lib.Dom.getViewWidth(),e=Ext.lib.Dom.getViewHeight();var q=Ext.getDoc().getScroll();var p=this.getXY();var m=p[0],k=p[1];var d=this.shadowOffset;var n=this.dom.offsetWidth+d,g=this.dom.offsetHeight+d;var j=false;if((m+n)>l+q.left){m=l-n-d;j=true}if((k+g)>e+q.top){k=e-g-d;j=true}if(m<q.left){m=q.left;j=true}if(k<q.top){k=q.top;j=true}if(j){if(this.avoidY){var o=this.avoidY;if(k<=o&&(k+g)>=o){k=o-g-5}}p=[m,k];this.storeXY(p);a.setXY.call(this,p);this.sync()}}return this},isVisible:function(){return this.visible},showAction:function(){this.visible=true;if(this.useDisplay===true){this.setDisplayed("")}else{if(this.lastXY){a.setXY.call(this,this.lastXY)}else{if(this.lastLT){a.setLeftTop.call(this,this.lastLT[0],this.lastLT[1])}}}},hideAction:function(){this.visible=false;if(this.useDisplay===true){this.setDisplayed(false)}else{this.setLeftTop(-10000,-10000)}},setVisible:function(j,h,l,m,k){if(j){this.showAction()}if(h&&j){var g=function(){this.sync(true);if(m){m()}}.createDelegate(this);a.setVisible.call(this,true,true,l,g,k)}else{if(!j){this.hideUnders(true)}var g=m;if(h){g=function(){this.hideAction();if(m){m()}}.createDelegate(this)}a.setVisible.call(this,j,h,l,g,k);if(j){this.sync(true)}else{if(!h){this.hideAction()}}}return this},storeXY:function(d){delete this.lastLT;this.lastXY=d},storeLeftTop:function(e,d){delete this.lastXY;this.lastLT=[e,d]},beforeFx:function(){this.beforeAction();return Ext.Layer.superclass.beforeFx.apply(this,arguments)},afterFx:function(){Ext.Layer.superclass.afterFx.apply(this,arguments);this.sync(this.isVisible())},beforeAction:function(){if(!this.updating&&this.shadow){this.shadow.hide()}},setLeft:function(d){this.storeLeftTop(d,this.getTop(true));a.setLeft.apply(this,arguments);this.sync();return this},setTop:function(d){this.storeLeftTop(this.getLeft(true),d);a.setTop.apply(this,arguments);this.sync();return this},setLeftTop:function(e,d){this.storeLeftTop(e,d);a.setLeftTop.apply(this,arguments);this.sync();return this},setXY:function(k,h,l,m,j){this.fixDisplay();this.beforeAction();this.storeXY(k);var g=this.createCB(m);a.setXY.call(this,k,h,l,g,j);if(!h){g()}return this},createCB:function(e){var d=this;return function(){d.constrainXY();d.sync(true);if(e){e()}}},setX:function(g,h,k,l,j){this.setXY([g,this.getY()],h,k,l,j);return this},setY:function(l,g,j,k,h){this.setXY([this.getX(),l],g,j,k,h);return this},setSize:function(k,l,j,n,o,m){this.beforeAction();var g=this.createCB(o);a.setSize.call(this,k,l,j,n,g,m);if(!j){g()}return this},setWidth:function(j,h,l,m,k){this.beforeAction();var g=this.createCB(m);a.setWidth.call(this,j,h,l,g,k);if(!h){g()}return this},setHeight:function(k,j,m,n,l){this.beforeAction();var g=this.createCB(n);a.setHeight.call(this,k,j,m,g,l);if(!j){g()}return this},setBounds:function(p,n,q,j,o,l,m,k){this.beforeAction();var g=this.createCB(m);if(!o){this.storeXY([p,n]);a.setXY.call(this,[p,n]);a.setSize.call(this,q,j,o,l,g,k);g()}else{a.setBounds.call(this,p,n,q,j,o,l,g,k)}return this},setZIndex:function(d){this.zindex=d;this.setStyle("z-index",d+2);if(this.shadow){this.shadow.setZIndex(d+1)}if(this.shim){this.shim.setStyle("z-index",d)}return this}})})();Ext.Shadow=function(e){Ext.apply(this,e);if(typeof this.mode!="string"){this.mode=this.defaultMode}var g=this.offset,d={h:0};var b=Math.floor(this.offset/2);switch(this.mode.toLowerCase()){case"drop":d.w=0;d.l=d.t=g;d.t-=1;if(Ext.isIE){d.l-=this.offset+b;d.t-=this.offset+b;d.w-=b;d.h-=b;d.t+=1}break;case"sides":d.w=(g*2);d.l=-g;d.t=g-1;if(Ext.isIE){d.l-=(this.offset-b);d.t-=this.offset+b;d.l+=1;d.w-=(this.offset-b)*2;d.w-=b+1;d.h-=1}break;case"frame":d.w=d.h=(g*2);d.l=d.t=-g;d.t+=1;d.h-=2;if(Ext.isIE){d.l-=(this.offset-b);d.t-=(this.offset-b);d.l+=1;d.w-=(this.offset+b+1);d.h-=(this.offset+b);d.h+=1}break}this.adjusts=d};Ext.Shadow.prototype={offset:4,defaultMode:"drop",show:function(a){a=Ext.get(a);if(!this.el){this.el=Ext.Shadow.Pool.pull();if(this.el.dom.nextSibling!=a.dom){this.el.insertBefore(a)}}this.el.setStyle("z-index",this.zIndex||parseInt(a.getStyle("z-index"),10)-1);if(Ext.isIE){this.el.dom.style.filter="progid:DXImageTransform.Microsoft.alpha(opacity=50) progid:DXImageTransform.Microsoft.Blur(pixelradius="+(this.offset)+")"}this.realign(a.getLeft(true),a.getTop(true),a.getWidth(),a.getHeight());this.el.dom.style.display="block"},isVisible:function(){return this.el?true:false},realign:function(b,x,u,j){if(!this.el){return}var p=this.adjusts,n=this.el.dom,y=n.style;var k=0;y.left=(b+p.l)+"px";y.top=(x+p.t)+"px";var r=(u+p.w),g=(j+p.h),m=r+"px",q=g+"px";if(y.width!=m||y.height!=q){y.width=m;y.height=q;if(!Ext.isIE){var o=n.childNodes;var e=Math.max(0,(r-12))+"px";o[0].childNodes[1].style.width=e;o[1].childNodes[1].style.width=e;o[2].childNodes[1].style.width=e;o[1].style.height=Math.max(0,(g-12))+"px"}}},hide:function(){if(this.el){this.el.dom.style.display="none";Ext.Shadow.Pool.push(this.el);delete this.el}},setZIndex:function(a){this.zIndex=a;if(this.el){this.el.setStyle("z-index",a)}}};Ext.Shadow.Pool=function(){var b=[];var a=Ext.isIE?'<div class="x-ie-shadow"></div>':'<div class="x-shadow"><div class="xst"><div class="xstl"></div><div class="xstc"></div><div class="xstr"></div></div><div class="xsc"><div class="xsml"></div><div class="xsmc"></div><div class="xsmr"></div></div><div class="xsb"><div class="xsbl"></div><div class="xsbc"></div><div class="xsbr"></div></div></div>';return{pull:function(){var d=b.shift();if(!d){d=Ext.get(Ext.DomHelper.insertHtml("beforeBegin",document.body.firstChild,a));d.autoBoxAdjust=false}return d},push:function(d){b.push(d)}}}();Ext.BoxComponent=Ext.extend(Ext.Component,{initComponent:function(){Ext.BoxComponent.superclass.initComponent.call(this);this.addEvents("resize","move")},boxReady:false,deferHeight:false,setSize:function(b,e){if(typeof b=="object"){e=b.height;b=b.width}if(!this.boxReady){this.width=b;this.height=e;return this}if(this.cacheSizes!==false&&this.lastSize&&this.lastSize.width==b&&this.lastSize.height==e){return this}this.lastSize={width:b,height:e};var d=this.adjustSize(b,e);var j=d.width,a=d.height;if(j!==undefined||a!==undefined){var g=this.getResizeEl();if(!this.deferHeight&&j!==undefined&&a!==undefined){g.setSize(j,a)}else{if(!this.deferHeight&&a!==undefined){g.setHeight(a)}else{if(j!==undefined){g.setWidth(j)}}}this.onResize(j,a,b,e);this.fireEvent("resize",this,j,a,b,e)}return this},setWidth:function(a){return this.setSize(a)},setHeight:function(a){return this.setSize(undefined,a)},getSize:function(){return this.getResizeEl().getSize()},getWidth:function(){return this.getResizeEl().getWidth()},getHeight:function(){return this.getResizeEl().getHeight()},getOuterSize:function(){var a=this.getResizeEl();return{width:a.getWidth()+a.getMargins("lr"),height:a.getHeight()+a.getMargins("tb")}},getPosition:function(a){var b=this.getPositionEl();if(a===true){return[b.getLeft(true),b.getTop(true)]}return this.xy||b.getXY()},getBox:function(a){var d=this.getPosition(a);var b=this.getSize();b.x=d[0];b.y=d[1];return b},updateBox:function(a){this.setSize(a.width,a.height);this.setPagePosition(a.x,a.y);return this},getResizeEl:function(){return this.resizeEl||this.el},getPositionEl:function(){return this.positionEl||this.el},setPosition:function(a,h){if(a&&typeof a[1]=="number"){h=a[1];a=a[0]}this.x=a;this.y=h;if(!this.boxReady){return this}var b=this.adjustPosition(a,h);var g=b.x,e=b.y;var d=this.getPositionEl();if(g!==undefined||e!==undefined){if(g!==undefined&&e!==undefined){d.setLeftTop(g,e)}else{if(g!==undefined){d.setLeft(g)}else{if(e!==undefined){d.setTop(e)}}}this.onPosition(g,e);this.fireEvent("move",this,g,e)}return this},setPagePosition:function(a,d){if(a&&typeof a[1]=="number"){d=a[1];a=a[0]}this.pageX=a;this.pageY=d;if(!this.boxReady){return}if(a===undefined||d===undefined){return}var b=this.getPositionEl().translatePoints(a,d);this.setPosition(b.left,b.top);return this},onRender:function(b,a){Ext.BoxComponent.superclass.onRender.call(this,b,a);if(this.resizeEl){this.resizeEl=Ext.get(this.resizeEl)}if(this.positionEl){this.positionEl=Ext.get(this.positionEl)}},afterRender:function(){Ext.BoxComponent.superclass.afterRender.call(this);this.boxReady=true;this.setSize(this.width,this.height);if(this.x||this.y){this.setPosition(this.x,this.y)}else{if(this.pageX||this.pageY){this.setPagePosition(this.pageX,this.pageY)}}},syncSize:function(){delete this.lastSize;this.setSize(this.autoWidth?undefined:this.getResizeEl().getWidth(),this.autoHeight?undefined:this.getResizeEl().getHeight());return this},onResize:function(e,b,a,d){},onPosition:function(a,b){},adjustSize:function(a,b){if(this.autoWidth){a="auto"}if(this.autoHeight){b="auto"}return{width:a,height:b}},adjustPosition:function(a,b){return{x:a,y:b}}});Ext.reg("box",Ext.BoxComponent);Ext.Spacer=Ext.extend(Ext.BoxComponent,{autoEl:"div"});Ext.reg("spacer",Ext.Spacer);Ext.SplitBar=function(d,g,b,e,a){this.el=Ext.get(d,true);this.el.dom.unselectable="on";this.resizingEl=Ext.get(g,true);this.orientation=b||Ext.SplitBar.HORIZONTAL;this.minSize=0;this.maxSize=2000;this.animate=false;this.useShim=false;this.shim=null;if(!a){this.proxy=Ext.SplitBar.createProxy(this.orientation)}else{this.proxy=Ext.get(a).dom}this.dd=new Ext.dd.DDProxy(this.el.dom.id,"XSplitBars",{dragElId:this.proxy.id});this.dd.b4StartDrag=this.onStartProxyDrag.createDelegate(this);this.dd.endDrag=this.onEndProxyDrag.createDelegate(this);this.dragSpecs={};this.adapter=new Ext.SplitBar.BasicLayoutAdapter();this.adapter.init(this);if(this.orientation==Ext.SplitBar.HORIZONTAL){this.placement=e||(this.el.getX()>this.resizingEl.getX()?Ext.SplitBar.LEFT:Ext.SplitBar.RIGHT);this.el.addClass("x-splitbar-h")}else{this.placement=e||(this.el.getY()>this.resizingEl.getY()?Ext.SplitBar.TOP:Ext.SplitBar.BOTTOM);this.el.addClass("x-splitbar-v")}this.addEvents("resize","moved","beforeresize","beforeapply");Ext.SplitBar.superclass.constructor.call(this)};Ext.extend(Ext.SplitBar,Ext.util.Observable,{onStartProxyDrag:function(a,g){this.fireEvent("beforeresize",this);this.overlay=Ext.DomHelper.append(document.body,{cls:"x-drag-overlay",html:"&#160;"},true);this.overlay.unselectable();this.overlay.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true));this.overlay.show();Ext.get(this.proxy).setDisplayed("block");var d=this.adapter.getElementSize(this);this.activeMinSize=this.getMinimumSize();this.activeMaxSize=this.getMaximumSize();var e=d-this.activeMinSize;var b=Math.max(this.activeMaxSize-d,0);if(this.orientation==Ext.SplitBar.HORIZONTAL){this.dd.resetConstraints();this.dd.setXConstraint(this.placement==Ext.SplitBar.LEFT?e:b,this.placement==Ext.SplitBar.LEFT?b:e,this.tickSize);this.dd.setYConstraint(0,0)}else{this.dd.resetConstraints();this.dd.setXConstraint(0,0);this.dd.setYConstraint(this.placement==Ext.SplitBar.TOP?e:b,this.placement==Ext.SplitBar.TOP?b:e,this.tickSize)}this.dragSpecs.startSize=d;this.dragSpecs.startPoint=[a,g];Ext.dd.DDProxy.prototype.b4StartDrag.call(this.dd,a,g)},onEndProxyDrag:function(d){Ext.get(this.proxy).setDisplayed(false);var b=Ext.lib.Event.getXY(d);if(this.overlay){Ext.destroy(this.overlay);delete this.overlay}var a;if(this.orientation==Ext.SplitBar.HORIZONTAL){a=this.dragSpecs.startSize+(this.placement==Ext.SplitBar.LEFT?b[0]-this.dragSpecs.startPoint[0]:this.dragSpecs.startPoint[0]-b[0])}else{a=this.dragSpecs.startSize+(this.placement==Ext.SplitBar.TOP?b[1]-this.dragSpecs.startPoint[1]:this.dragSpecs.startPoint[1]-b[1])}a=Math.min(Math.max(a,this.activeMinSize),this.activeMaxSize);if(a!=this.dragSpecs.startSize){if(this.fireEvent("beforeapply",this,a)!==false){this.adapter.setElementSize(this,a);this.fireEvent("moved",this,a);this.fireEvent("resize",this,a)}}},getAdapter:function(){return this.adapter},setAdapter:function(a){this.adapter=a;this.adapter.init(this)},getMinimumSize:function(){return this.minSize},setMinimumSize:function(a){this.minSize=a},getMaximumSize:function(){return this.maxSize},setMaximumSize:function(a){this.maxSize=a},setCurrentSize:function(b){var a=this.animate;this.animate=false;this.adapter.setElementSize(this,b);this.animate=a},destroy:function(a){Ext.destroy(this.shim,Ext.get(this.proxy));this.dd.unreg();if(a){this.el.remove()}this.purgeListeners()}});Ext.SplitBar.createProxy=function(b){var d=new Ext.Element(document.createElement("div"));d.unselectable();var a="x-splitbar-proxy";d.addClass(a+" "+(b==Ext.SplitBar.HORIZONTAL?a+"-h":a+"-v"));document.body.appendChild(d.dom);return d.dom};Ext.SplitBar.BasicLayoutAdapter=function(){};Ext.SplitBar.BasicLayoutAdapter.prototype={init:function(a){},getElementSize:function(a){if(a.orientation==Ext.SplitBar.HORIZONTAL){return a.resizingEl.getWidth()}else{return a.resizingEl.getHeight()}},setElementSize:function(b,a,d){if(b.orientation==Ext.SplitBar.HORIZONTAL){if(!b.animate){b.resizingEl.setWidth(a);if(d){d(b,a)}}else{b.resizingEl.setWidth(a,true,0.1,d,"easeOut")}}else{if(!b.animate){b.resizingEl.setHeight(a);if(d){d(b,a)}}else{b.resizingEl.setHeight(a,true,0.1,d,"easeOut")}}}};Ext.SplitBar.AbsoluteLayoutAdapter=function(a){this.basic=new Ext.SplitBar.BasicLayoutAdapter();this.container=Ext.get(a)};Ext.SplitBar.AbsoluteLayoutAdapter.prototype={init:function(a){this.basic.init(a)},getElementSize:function(a){return this.basic.getElementSize(a)},setElementSize:function(b,a,d){this.basic.setElementSize(b,a,this.moveSplitter.createDelegate(this,[b]))},moveSplitter:function(a){var b=Ext.SplitBar;switch(a.placement){case b.LEFT:a.el.setX(a.resizingEl.getRight());break;case b.RIGHT:a.el.setStyle("right",(this.container.getWidth()-a.resizingEl.getLeft())+"px");break;case b.TOP:a.el.setY(a.resizingEl.getBottom());break;case b.BOTTOM:a.el.setY(a.resizingEl.getTop()-a.el.getHeight());break}}};Ext.SplitBar.VERTICAL=1;Ext.SplitBar.HORIZONTAL=2;Ext.SplitBar.LEFT=1;Ext.SplitBar.RIGHT=2;Ext.SplitBar.TOP=3;Ext.SplitBar.BOTTOM=4;Ext.Container=Ext.extend(Ext.BoxComponent,{autoDestroy:true,defaultType:"panel",initComponent:function(){Ext.Container.superclass.initComponent.call(this);this.addEvents("afterlayout","beforeadd","beforeremove","add","remove");this.enableBubble("add","remove");var a=this.items;if(a){delete this.items;if(Ext.isArray(a)&&a.length>0){this.add.apply(this,a)}else{this.add(a)}}},initItems:function(){if(!this.items){this.items=new Ext.util.MixedCollection(false,this.getComponentId);this.getLayout()}},setLayout:function(a){if(this.layout&&this.layout!=a){this.layout.setContainer(null)}this.initItems();this.layout=a;a.setContainer(this)},render:function(){Ext.Container.superclass.render.apply(this,arguments);if(this.layout){if(typeof this.layout=="object"&&!this.layout.layout){this.layoutConfig=this.layout;this.layout=this.layoutConfig.type}if(typeof this.layout=="string"){this.layout=new Ext.Container.LAYOUTS[this.layout.toLowerCase()](this.layoutConfig)}this.setLayout(this.layout);if(this.activeItem!==undefined){var a=this.activeItem;delete this.activeItem;this.layout.setActiveItem(a)}}if(!this.ownerCt){this.doLayout()}if(this.monitorResize===true){Ext.EventManager.onWindowResize(this.doLayout,this,[false])}},getLayoutTarget:function(){return this.el},getComponentId:function(a){return a.itemId||a.id},add:function(e){this.initItems();var d=arguments,b=d.length;if(b>1){for(var g=0;g<b;g++){Ext.Container.prototype.add.call(this,d[g])}return}var j=this.lookupComponent(this.applyDefaults(e));var h=this.items.length;if(this.fireEvent("beforeadd",this,j,h)!==false&&this.onBeforeAdd(j)!==false){this.items.add(j);j.ownerCt=this;this.fireEvent("add",this,j,h)}return j},insert:function(g,e){this.initItems();var d=arguments,b=d.length;if(b>2){for(var h=b-1;h>=1;--h){this.insert(g,d[h])}return}var j=this.lookupComponent(this.applyDefaults(e));if(j.ownerCt==this&&this.items.indexOf(j)<g){--g}if(this.fireEvent("beforeadd",this,j,g)!==false&&this.onBeforeAdd(j)!==false){this.items.insert(g,j);j.ownerCt=this;this.fireEvent("add",this,j,g)}return j},applyDefaults:function(a){if(this.defaults){if(typeof a=="string"){a=Ext.ComponentMgr.get(a);Ext.apply(a,this.defaults)}else{if(!a.events){Ext.applyIf(a,this.defaults)}else{Ext.apply(a,this.defaults)}}}return a},onBeforeAdd:function(a){if(a.ownerCt){a.ownerCt.remove(a,false)}if(this.hideBorders===true){a.border=(a.border===true)}},remove:function(a,b){this.initItems();var d=this.getComponent(a);if(d&&this.fireEvent("beforeremove",this,d)!==false){this.items.remove(d);delete d.ownerCt;if(b===true||(b!==false&&this.autoDestroy)){d.destroy()}if(this.layout&&this.layout.activeItem==d){delete this.layout.activeItem}this.fireEvent("remove",this,d)}return d},removeAll:function(d){this.initItems();var g,h=[],b=[];this.items.each(function(j){h.push(j)});for(var e=0,a=h.length;e<a;++e){g=h[e];this.remove(g,d);if(g.ownerCt!==this){b.push(g)}}return b},getComponent:function(a){if(typeof a=="object"){return a}return this.items.get(a)},lookupComponent:function(a){if(typeof a=="string"){return Ext.ComponentMgr.get(a)}else{if(!a.events){return this.createComponent(a)}}return a},createComponent:function(a){return Ext.create(a,this.defaultType)},doLayout:function(e){var h=this.rendered;if(h&&this.layout){this.layout.layout()}if(e!==false&&this.items){var d=this.items.items;for(var b=0,a=d.length;b<a;b++){var g=d[b];if(g.doLayout){g.doLayout()}}}if(h){this.onLayout(e)}return this},onLayout:Ext.emptyFn,getLayout:function(){if(!this.layout){var a=new Ext.layout.ContainerLayout(this.layoutConfig);this.setLayout(a)}return this.layout},beforeDestroy:function(){if(this.items){Ext.destroy.apply(Ext,this.items.items)}if(this.monitorResize){Ext.EventManager.removeResizeListener(this.doLayout,this)}Ext.destroy(this.layout);Ext.Container.superclass.beforeDestroy.call(this)},bubble:function(d,b,a){var e=this;while(e){if(d.apply(b||e,a||[e])===false){break}e=e.ownerCt}return this},cascade:function(h,g,b){if(h.apply(g||this,b||[this])!==false){if(this.items){var e=this.items.items;for(var d=0,a=e.length;d<a;d++){if(e[d].cascade){e[d].cascade(h,g,b)}else{h.apply(g||e[d],b||[e[d]])}}}}return this},findById:function(d){var a,b=this;this.cascade(function(e){if(b!=e&&e.id===d){a=e;return false}});return a||null},findByType:function(b,a){return this.findBy(function(d){return d.isXType(b,a)})},find:function(b,a){return this.findBy(function(d){return d[b]===a})},findBy:function(e,d){var a=[],b=this;this.cascade(function(g){if(b!=g&&e.call(d||g,g,b)===true){a.push(g)}});return a},get:function(a){return this.items.get(a)}});Ext.Container.LAYOUTS={};Ext.reg("container",Ext.Container);Ext.layout.ContainerLayout=function(a){Ext.apply(this,a)};Ext.layout.ContainerLayout.prototype={monitorResize:false,activeItem:null,layout:function(){var a=this.container.getLayoutTarget();this.onLayout(this.container,a);this.container.fireEvent("afterlayout",this.container,this)},onLayout:function(a,b){this.renderAll(a,b)},isValidParent:function(b,a){return a&&b.getDomPositionEl().dom.parentNode==(a.dom||a)},renderAll:function(e,g){var b=e.items.items;for(var d=0,a=b.length;d<a;d++){var h=b[d];if(h&&(!h.rendered||!this.isValidParent(h,g))){this.renderItem(h,d,g)}}},renderItem:function(e,a,d){if(e&&!e.rendered){e.render(d,a);if(this.extraCls){var b=e.getPositionEl?e.getPositionEl():e;b.addClass(this.extraCls)}if(this.renderHidden&&e!=this.activeItem){e.hide()}}else{if(e&&!this.isValidParent(e,d)){if(this.extraCls){var b=e.getPositionEl?e.getPositionEl():e;b.addClass(this.extraCls)}if(typeof a=="number"){a=d.dom.childNodes[a]}d.dom.insertBefore(e.getDomPositionEl().dom,a||null);e.container=d;if(this.renderHidden&&e!=this.activeItem){e.hide()}}}},onResize:function(){if(this.container.collapsed){return}var a=this.container.bufferResize;if(a){if(!this.resizeTask){this.resizeTask=new Ext.util.DelayedTask(this.layout,this);this.resizeBuffer=typeof a=="number"?a:100}this.resizeTask.delay(this.resizeBuffer)}else{this.layout()}},setContainer:function(a){if(this.monitorResize&&a!=this.container){if(this.container){this.container.un("resize",this.onResize,this)}if(a){a.on("resize",this.onResize,this)}}this.container=a},parseMargins:function(b){if(typeof b=="number"){b=b.toString()}var d=b.split(" ");var a=d.length;if(a==1){d[1]=d[0];d[2]=d[0];d[3]=d[0]}if(a==2){d[2]=d[0];d[3]=d[1]}if(a==3){d[3]=d[1]}return{top:parseInt(d[0],10)||0,right:parseInt(d[1],10)||0,bottom:parseInt(d[2],10)||0,left:parseInt(d[3],10)||0}},fieldTpl:(function(){var a=new Ext.Template('<div class="x-form-item {itemCls}" tabIndex="-1">','<label for="{id}" style="{labelStyle}" class="x-form-item-label">{label}{labelSeparator}</label>','<div class="x-form-element" id="x-form-el-{id}" style="{elementStyle}">','</div><div class="{clearCls}"></div>',"</div>");a.disableFormats=true;return a.compile()})(),destroy:Ext.emptyFn};Ext.Container.LAYOUTS.auto=Ext.layout.ContainerLayout;Ext.layout.FitLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,onLayout:function(a,d){Ext.layout.FitLayout.superclass.onLayout.call(this,a,d);if(!this.container.collapsed){var b=(Ext.isIE6&&Ext.isStrict&&d.dom==document.body)?d.getViewSize():d.getStyleSize();this.setItemSize(this.activeItem||a.items.itemAt(0),b)}},setItemSize:function(b,a){if(b&&a.height>0){b.setSize(a)}}});Ext.Container.LAYOUTS.fit=Ext.layout.FitLayout;Ext.layout.CardLayout=Ext.extend(Ext.layout.FitLayout,{deferredRender:false,layoutOnCardChange:false,renderHidden:true,setActiveItem:function(a){a=this.container.getComponent(a);if(this.activeItem!=a){if(this.activeItem){this.activeItem.hide()}this.activeItem=a;a.show();this.container.doLayout();if(this.layoutOnCardChange&&a.doLayout){a.doLayout()}}},renderAll:function(a,b){if(this.deferredRender){this.renderItem(this.activeItem,undefined,b)}else{Ext.layout.CardLayout.superclass.renderAll.call(this,a,b)}}});Ext.Container.LAYOUTS.card=Ext.layout.CardLayout;Ext.layout.AnchorLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,getAnchorViewSize:function(a,b){return b.dom==document.body?b.getViewSize():b.getStyleSize()},onLayout:function(k,n){Ext.layout.AnchorLayout.superclass.onLayout.call(this,k,n);var t=this.getAnchorViewSize(k,n);var r=t.width,j=t.height;if(r<20&&j<20){return}var d,p;if(k.anchorSize){if(typeof k.anchorSize=="number"){d=k.anchorSize}else{d=k.anchorSize.width;p=k.anchorSize.height}}else{d=k.initialConfig.width;p=k.initialConfig.height}var m=k.items.items,l=m.length,g,o,q,e,b;for(g=0;g<l;g++){o=m[g];if(o.anchor){q=o.anchorSpec;if(!q){var s=o.anchor.split(" ");o.anchorSpec=q={right:this.parseAnchor(s[0],o.initialConfig.width,d),bottom:this.parseAnchor(s[1],o.initialConfig.height,p)}}e=q.right?this.adjustWidthAnchor(q.right(r),o):undefined;b=q.bottom?this.adjustHeightAnchor(q.bottom(j),o):undefined;if(e||b){o.setSize(e||undefined,b||undefined)}}}},parseAnchor:function(d,j,b){if(d&&d!="none"){var g;if(/^(r|right|b|bottom)$/i.test(d)){var h=b-j;return function(a){if(a!==g){g=a;return a-h}}}else{if(d.indexOf("%")!=-1){var e=parseFloat(d.replace("%",""))*0.01;return function(a){if(a!==g){g=a;return Math.floor(a*e)}}}else{d=parseInt(d,10);if(!isNaN(d)){return function(a){if(a!==g){g=a;return a+d}}}}}}return false},adjustWidthAnchor:function(b,a){return b},adjustHeightAnchor:function(b,a){return b}});Ext.Container.LAYOUTS.anchor=Ext.layout.AnchorLayout;Ext.layout.ColumnLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,extraCls:"x-column",scrollOffset:0,isValidParent:function(b,a){return(b.getPositionEl?b.getPositionEl():b.getEl()).dom.parentNode==this.innerCt.dom},onLayout:function(d,j){var e=d.items.items,g=e.length,k,a;if(!this.innerCt){j.addClass("x-column-layout-ct");this.innerCt=j.createChild({cls:"x-column-inner"});this.innerCt.createChild({cls:"x-clear"})}this.renderAll(d,this.innerCt);var n=Ext.isIE&&j.dom!=Ext.getBody().dom?j.getStyleSize():j.getViewSize();if(n.width<1&&n.height<1){return}var l=n.width-j.getPadding("lr")-this.scrollOffset,b=n.height-j.getPadding("tb"),m=l;this.innerCt.setWidth(l);for(a=0;a<g;a++){k=e[a];if(!k.columnWidth){m-=(k.getSize().width+k.getEl().getMargins("lr"))}}m=m<0?0:m;for(a=0;a<g;a++){k=e[a];if(k.columnWidth){k.setSize(Math.floor(k.columnWidth*m)-k.getEl().getMargins("lr"))}}}});Ext.Container.LAYOUTS.column=Ext.layout.ColumnLayout;Ext.layout.BorderLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,rendered:false,onLayout:function(d,I){var g;if(!this.rendered){I.addClass("x-border-layout-ct");var x=d.items.items;g=[];for(var B=0,C=x.length;B<C;B++){var F=x[B];var l=F.region;if(F.collapsed){g.push(F)}F.collapsed=false;if(!F.rendered){F.cls=F.cls?F.cls+" x-border-panel":"x-border-panel";F.render(I,B)}this[l]=l!="center"&&F.split?new Ext.layout.BorderLayout.SplitRegion(this,F.initialConfig,l):new Ext.layout.BorderLayout.Region(this,F.initialConfig,l);this[l].render(I,F)}this.rendered=true}var u=I.getViewSize();if(u.width<20||u.height<20){if(g){this.restoreCollapsed=g}return}else{if(this.restoreCollapsed){g=this.restoreCollapsed;delete this.restoreCollapsed}}var r=u.width,D=u.height;var q=r,A=D,o=0,p=0;var y=this.north,t=this.south,k=this.west,E=this.east,F=this.center;if(!F&&Ext.layout.BorderLayout.WARN!==false){throw"No center region defined in BorderLayout "+d.id}if(y&&y.isVisible()){var H=y.getSize();var z=y.getMargins();H.width=r-(z.left+z.right);H.x=z.left;H.y=z.top;o=H.height+H.y+z.bottom;A-=o;y.applyLayout(H)}if(t&&t.isVisible()){var H=t.getSize();var z=t.getMargins();H.width=r-(z.left+z.right);H.x=z.left;var G=(H.height+z.top+z.bottom);H.y=D-G+z.top;A-=G;t.applyLayout(H)}if(k&&k.isVisible()){var H=k.getSize();var z=k.getMargins();H.height=A-(z.top+z.bottom);H.x=z.left;H.y=o+z.top;var a=(H.width+z.left+z.right);p+=a;q-=a;k.applyLayout(H)}if(E&&E.isVisible()){var H=E.getSize();var z=E.getMargins();H.height=A-(z.top+z.bottom);var a=(H.width+z.left+z.right);H.x=r-a+z.left;H.y=o+z.top;q-=a;E.applyLayout(H)}if(F){var z=F.getMargins();var j={x:p+z.left,y:o+z.top,width:q-(z.left+z.right),height:A-(z.top+z.bottom)};F.applyLayout(j)}if(g){for(var B=0,C=g.length;B<C;B++){g[B].collapse(false)}}if(Ext.isIE&&Ext.isStrict){I.repaint()}},destroy:function(){var b=["north","south","east","west"];for(var a=0;a<b.length;a++){var d=this[b[a]];if(d){if(d.destroy){d.destroy()}else{if(d.split){d.split.destroy(true)}}}}Ext.layout.BorderLayout.superclass.destroy.call(this)}});Ext.layout.BorderLayout.Region=function(b,a,d){Ext.apply(this,a);this.layout=b;this.position=d;this.state={};if(typeof this.margins=="string"){this.margins=this.layout.parseMargins(this.margins)}this.margins=Ext.applyIf(this.margins||{},this.defaultMargins);if(this.collapsible){if(typeof this.cmargins=="string"){this.cmargins=this.layout.parseMargins(this.cmargins)}if(this.collapseMode=="mini"&&!this.cmargins){this.cmargins={left:0,top:0,right:0,bottom:0}}else{this.cmargins=Ext.applyIf(this.cmargins||{},d=="north"||d=="south"?this.defaultNSCMargins:this.defaultEWCMargins)}}};Ext.layout.BorderLayout.Region.prototype={collapsible:false,split:false,floatable:true,minWidth:50,minHeight:50,defaultMargins:{left:0,top:0,right:0,bottom:0},defaultNSCMargins:{left:5,top:5,right:5,bottom:5},defaultEWCMargins:{left:5,top:0,right:5,bottom:0},floatingZIndex:100,isCollapsed:false,render:function(b,d){this.panel=d;d.el.enableDisplayMode();this.targetEl=b;this.el=d.el;var a=d.getState,e=this.position;d.getState=function(){return Ext.apply(a.call(d)||{},this.state)}.createDelegate(this);if(e!="center"){d.allowQueuedExpand=false;d.on({beforecollapse:this.beforeCollapse,collapse:this.onCollapse,beforeexpand:this.beforeExpand,expand:this.onExpand,hide:this.onHide,show:this.onShow,scope:this});if(this.collapsible||this.floatable){d.collapseEl="el";d.slideAnchor=this.getSlideAnchor()}if(d.tools&&d.tools.toggle){d.tools.toggle.addClass("x-tool-collapse-"+e);d.tools.toggle.addClassOnOver("x-tool-collapse-"+e+"-over")}}},getCollapsedEl:function(){if(!this.collapsedEl){if(!this.toolTemplate){var b=new Ext.Template('<div class="x-tool x-tool-{id}">&#160;</div>');b.disableFormats=true;b.compile();Ext.layout.BorderLayout.Region.prototype.toolTemplate=b}this.collapsedEl=this.targetEl.createChild({cls:"x-layout-collapsed x-layout-collapsed-"+this.position,id:this.panel.id+"-xcollapsed"});this.collapsedEl.enableDisplayMode("block");if(this.collapseMode=="mini"){this.collapsedEl.addClass("x-layout-cmini-"+this.position);this.miniCollapsedEl=this.collapsedEl.createChild({cls:"x-layout-mini x-layout-mini-"+this.position,html:"&#160;"});this.miniCollapsedEl.addClassOnOver("x-layout-mini-over");this.collapsedEl.addClassOnOver("x-layout-collapsed-over");this.collapsedEl.on("click",this.onExpandClick,this,{stopEvent:true})}else{if(this.collapsible!==false&&!this.hideCollapseTool){var a=this.toolTemplate.append(this.collapsedEl.dom,{id:"expand-"+this.position},true);a.addClassOnOver("x-tool-expand-"+this.position+"-over");a.on("click",this.onExpandClick,this,{stopEvent:true})}if(this.floatable!==false||this.titleCollapse){this.collapsedEl.addClassOnOver("x-layout-collapsed-over");this.collapsedEl.on("click",this[this.floatable?"collapseClick":"onExpandClick"],this)}}}return this.collapsedEl},onExpandClick:function(a){if(this.isSlid){this.afterSlideIn();this.panel.expand(false)}else{this.panel.expand()}},onCollapseClick:function(a){this.panel.collapse()},beforeCollapse:function(b,a){this.lastAnim=a;if(this.splitEl){this.splitEl.hide()}this.getCollapsedEl().show();this.panel.el.setStyle("z-index",100);this.isCollapsed=true;this.layout.layout()},onCollapse:function(a){this.panel.el.setStyle("z-index",1);if(this.lastAnim===false||this.panel.animCollapse===false){this.getCollapsedEl().dom.style.visibility="visible"}else{this.getCollapsedEl().slideIn(this.panel.slideAnchor,{duration:0.2})}this.state.collapsed=true;this.panel.saveState()},beforeExpand:function(a){var b=this.getCollapsedEl();this.el.show();if(this.position=="east"||this.position=="west"){this.panel.setSize(undefined,b.getHeight())}else{this.panel.setSize(b.getWidth(),undefined)}b.hide();b.dom.style.visibility="hidden";this.panel.el.setStyle("z-index",this.floatingZIndex)},onExpand:function(){this.isCollapsed=false;if(this.splitEl){this.splitEl.show()}this.layout.layout();this.panel.el.setStyle("z-index",1);this.state.collapsed=false;this.panel.saveState()},collapseClick:function(a){if(this.isSlid){a.stopPropagation();this.slideIn()}else{a.stopPropagation();this.slideOut()}},onHide:function(){if(this.isCollapsed){this.getCollapsedEl().hide()}else{if(this.splitEl){this.splitEl.hide()}}},onShow:function(){if(this.isCollapsed){this.getCollapsedEl().show()}else{if(this.splitEl){this.splitEl.show()}}},isVisible:function(){return!this.panel.hidden},getMargins:function(){return this.isCollapsed&&this.cmargins?this.cmargins:this.margins},getSize:function(){return this.isCollapsed?this.getCollapsedEl().getSize():this.panel.getSize()},setPanel:function(a){this.panel=a},getMinWidth:function(){return this.minWidth},getMinHeight:function(){return this.minHeight},applyLayoutCollapsed:function(a){var b=this.getCollapsedEl();b.setLeftTop(a.x,a.y);b.setSize(a.width,a.height)},applyLayout:function(a){if(this.isCollapsed){this.applyLayoutCollapsed(a)}else{this.panel.setPosition(a.x,a.y);this.panel.setSize(a.width,a.height)}},beforeSlide:function(){this.panel.beforeEffect()},afterSlide:function(){this.panel.afterEffect()},initAutoHide:function(){if(this.autoHide!==false){if(!this.autoHideHd){var a=new Ext.util.DelayedTask(this.slideIn,this);this.autoHideHd={mouseout:function(b){if(!b.within(this.el,true)){a.delay(500)}},mouseover:function(b){a.cancel()},scope:this}}this.el.on(this.autoHideHd)}},clearAutoHide:function(){if(this.autoHide!==false){this.el.un("mouseout",this.autoHideHd.mouseout);this.el.un("mouseover",this.autoHideHd.mouseover)}},clearMonitor:function(){Ext.getDoc().un("click",this.slideInIf,this)},slideOut:function(){if(this.isSlid||this.el.hasActiveFx()){return}this.isSlid=true;var a=this.panel.tools;if(a&&a.toggle){a.toggle.hide()}this.el.show();if(this.position=="east"||this.position=="west"){this.panel.setSize(undefined,this.collapsedEl.getHeight())}else{this.panel.setSize(this.collapsedEl.getWidth(),undefined)}this.restoreLT=[this.el.dom.style.left,this.el.dom.style.top];this.el.alignTo(this.collapsedEl,this.getCollapseAnchor());this.el.setStyle("z-index",this.floatingZIndex+2);this.panel.el.replaceClass("x-panel-collapsed","x-panel-floating");if(this.animFloat!==false){this.beforeSlide();this.el.slideIn(this.getSlideAnchor(),{callback:function(){this.afterSlide();this.initAutoHide();Ext.getDoc().on("click",this.slideInIf,this)},scope:this,block:true})}else{this.initAutoHide();Ext.getDoc().on("click",this.slideInIf,this)}},afterSlideIn:function(){this.clearAutoHide();this.isSlid=false;this.clearMonitor();this.el.setStyle("z-index","");this.panel.el.replaceClass("x-panel-floating","x-panel-collapsed");this.el.dom.style.left=this.restoreLT[0];this.el.dom.style.top=this.restoreLT[1];var a=this.panel.tools;if(a&&a.toggle){a.toggle.show()}},slideIn:function(a){if(!this.isSlid||this.el.hasActiveFx()){Ext.callback(a);return}this.isSlid=false;if(this.animFloat!==false){this.beforeSlide();this.el.slideOut(this.getSlideAnchor(),{callback:function(){this.el.hide();this.afterSlide();this.afterSlideIn();Ext.callback(a)},scope:this,block:true})}else{this.el.hide();this.afterSlideIn()}},slideInIf:function(a){if(!a.within(this.el)){this.slideIn()}},anchors:{west:"left",east:"right",north:"top",south:"bottom"},sanchors:{west:"l",east:"r",north:"t",south:"b"},canchors:{west:"tl-tr",east:"tr-tl",north:"tl-bl",south:"bl-tl"},getAnchor:function(){return this.anchors[this.position]},getCollapseAnchor:function(){return this.canchors[this.position]},getSlideAnchor:function(){return this.sanchors[this.position]},getAlignAdj:function(){var a=this.cmargins;switch(this.position){case"west":return[0,0];break;case"east":return[0,0];break;case"north":return[0,0];break;case"south":return[0,0];break}},getExpandAdj:function(){var b=this.collapsedEl,a=this.cmargins;switch(this.position){case"west":return[-(a.right+b.getWidth()+a.left),0];break;case"east":return[a.right+b.getWidth()+a.left,0];break;case"north":return[0,-(a.top+a.bottom+b.getHeight())];break;case"south":return[0,a.top+a.bottom+b.getHeight()];break}}};Ext.layout.BorderLayout.SplitRegion=function(b,a,d){Ext.layout.BorderLayout.SplitRegion.superclass.constructor.call(this,b,a,d);this.applyLayout=this.applyFns[d]};Ext.extend(Ext.layout.BorderLayout.SplitRegion,Ext.layout.BorderLayout.Region,{splitTip:"Drag to resize.",collapsibleSplitTip:"Drag to resize. Double click to hide.",useSplitTips:false,splitSettings:{north:{orientation:Ext.SplitBar.VERTICAL,placement:Ext.SplitBar.TOP,maxFn:"getVMaxSize",minProp:"minHeight",maxProp:"maxHeight"},south:{orientation:Ext.SplitBar.VERTICAL,placement:Ext.SplitBar.BOTTOM,maxFn:"getVMaxSize",minProp:"minHeight",maxProp:"maxHeight"},east:{orientation:Ext.SplitBar.HORIZONTAL,placement:Ext.SplitBar.RIGHT,maxFn:"getHMaxSize",minProp:"minWidth",maxProp:"maxWidth"},west:{orientation:Ext.SplitBar.HORIZONTAL,placement:Ext.SplitBar.LEFT,maxFn:"getHMaxSize",minProp:"minWidth",maxProp:"maxWidth"}},applyFns:{west:function(d){if(this.isCollapsed){return this.applyLayoutCollapsed(d)}var e=this.splitEl.dom,b=e.style;this.panel.setPosition(d.x,d.y);var a=e.offsetWidth;b.left=(d.x+d.width-a)+"px";b.top=(d.y)+"px";b.height=Math.max(0,d.height)+"px";this.panel.setSize(d.width-a,d.height)},east:function(d){if(this.isCollapsed){return this.applyLayoutCollapsed(d)}var e=this.splitEl.dom,b=e.style;var a=e.offsetWidth;this.panel.setPosition(d.x+a,d.y);b.left=(d.x)+"px";b.top=(d.y)+"px";b.height=Math.max(0,d.height)+"px";this.panel.setSize(d.width-a,d.height)},north:function(d){if(this.isCollapsed){return this.applyLayoutCollapsed(d)}var e=this.splitEl.dom,b=e.style;var a=e.offsetHeight;this.panel.setPosition(d.x,d.y);b.left=(d.x)+"px";b.top=(d.y+d.height-a)+"px";b.width=Math.max(0,d.width)+"px";this.panel.setSize(d.width,d.height-a)},south:function(d){if(this.isCollapsed){return this.applyLayoutCollapsed(d)}var e=this.splitEl.dom,b=e.style;var a=e.offsetHeight;this.panel.setPosition(d.x,d.y+a);b.left=(d.x)+"px";b.top=(d.y)+"px";b.width=Math.max(0,d.width)+"px";this.panel.setSize(d.width,d.height-a)}},render:function(a,d){Ext.layout.BorderLayout.SplitRegion.superclass.render.call(this,a,d);var e=this.position;this.splitEl=a.createChild({cls:"x-layout-split x-layout-split-"+e,html:"&#160;",id:this.panel.id+"-xsplit"});if(this.collapseMode=="mini"){this.miniSplitEl=this.splitEl.createChild({cls:"x-layout-mini x-layout-mini-"+e,html:"&#160;"});this.miniSplitEl.addClassOnOver("x-layout-mini-over");this.miniSplitEl.on("click",this.onCollapseClick,this,{stopEvent:true})}var b=this.splitSettings[e];this.split=new Ext.SplitBar(this.splitEl.dom,d.el,b.orientation);this.split.tickSize=this.tickSize;this.split.placement=b.placement;this.split.getMaximumSize=this[b.maxFn].createDelegate(this);this.split.minSize=this.minSize||this[b.minProp];this.split.on("beforeapply",this.onSplitMove,this);this.split.useShim=this.useShim===true;this.maxSize=this.maxSize||this[b.maxProp];if(d.hidden){this.splitEl.hide()}if(this.useSplitTips){this.splitEl.dom.title=this.collapsible?this.collapsibleSplitTip:this.splitTip}if(this.collapsible){this.splitEl.on("dblclick",this.onCollapseClick,this)}},getSize:function(){if(this.isCollapsed){return this.collapsedEl.getSize()}var a=this.panel.getSize();if(this.position=="north"||this.position=="south"){a.height+=this.splitEl.dom.offsetHeight}else{a.width+=this.splitEl.dom.offsetWidth}return a},getHMaxSize:function(){var b=this.maxSize||10000;var a=this.layout.center;return Math.min(b,(this.el.getWidth()+a.el.getWidth())-a.getMinWidth())},getVMaxSize:function(){var b=this.maxSize||10000;var a=this.layout.center;return Math.min(b,(this.el.getHeight()+a.el.getHeight())-a.getMinHeight())},onSplitMove:function(b,a){var d=this.panel.getSize();this.lastSplitSize=a;if(this.position=="north"||this.position=="south"){this.panel.setSize(d.width,a);this.state.height=a}else{this.panel.setSize(a,d.height);this.state.width=a}this.layout.layout();this.panel.saveState();return false},getSplitBar:function(){return this.split},destroy:function(){Ext.destroy(this.miniSplitEl,this.split,this.splitEl)}});Ext.Container.LAYOUTS.border=Ext.layout.BorderLayout;Ext.layout.FormLayout=Ext.extend(Ext.layout.AnchorLayout,{labelSeparator:":",setContainer:function(a){Ext.layout.FormLayout.superclass.setContainer.call(this,a);if(a.labelAlign){a.addClass("x-form-label-"+a.labelAlign)}if(a.hideLabels){this.labelStyle="display:none";this.elementStyle="padding-left:0;";this.labelAdjust=0}else{this.labelSeparator=a.labelSeparator||this.labelSeparator;a.labelWidth=a.labelWidth||100;if(typeof a.labelWidth=="number"){var b=(typeof a.labelPad=="number"?a.labelPad:5);this.labelAdjust=a.labelWidth+b;this.labelStyle="width:"+a.labelWidth+"px;";this.elementStyle="padding-left:"+(a.labelWidth+b)+"px"}if(a.labelAlign=="top"){this.labelStyle="width:auto;";this.labelAdjust=0;this.elementStyle="padding-left:0;"}}},getLabelStyle:function(g){var b="",d=[this.labelStyle,g];for(var e=0,a=d.length;e<a;++e){if(d[e]){b+=d[e];if(b.substr(-1,1)!=";"){b+=";"}}}return b},renderItem:function(e,a,d){if(e&&!e.rendered&&(e.isFormField||e.fieldLabel)&&e.inputType!="hidden"){var b=this.getTemplateArgs(e);if(typeof a=="number"){a=d.dom.childNodes[a]||null}if(a){this.fieldTpl.insertBefore(a,b)}else{this.fieldTpl.append(d,b)}e.render("x-form-el-"+e.id)}else{Ext.layout.FormLayout.superclass.renderItem.apply(this,arguments)}},getTemplateArgs:function(b){var a=!b.fieldLabel||b.hideLabel;return{id:b.id,label:b.fieldLabel,labelStyle:b.labelStyle||this.labelStyle||"",elementStyle:this.elementStyle||"",labelSeparator:a?"":(typeof b.labelSeparator=="undefined"?this.labelSeparator:b.labelSeparator),itemCls:(b.itemCls||this.container.itemCls||"")+(b.hideLabel?" x-hide-label":""),clearCls:b.clearCls||"x-form-clear-left"}},adjustWidthAnchor:function(b,a){return b-(a.isFormField||a.fieldLabel?(a.hideLabel?0:this.labelAdjust):0)},isValidParent:function(b,a){return true}});Ext.Container.LAYOUTS.form=Ext.layout.FormLayout;Ext.layout.AccordionLayout=Ext.extend(Ext.layout.FitLayout,{fill:true,autoWidth:true,titleCollapse:true,hideCollapseTool:false,collapseFirst:false,animate:false,sequence:false,activeOnTop:false,renderItem:function(a){if(this.animate===false){a.animCollapse=false}a.collapsible=true;if(this.autoWidth){a.autoWidth=true}if(this.titleCollapse){a.titleCollapse=true}if(this.hideCollapseTool){a.hideCollapseTool=true}if(this.collapseFirst!==undefined){a.collapseFirst=this.collapseFirst}if(!this.activeItem&&!a.collapsed){this.activeItem=a}else{if(this.activeItem&&this.activeItem!=a){a.collapsed=true}}Ext.layout.AccordionLayout.superclass.renderItem.apply(this,arguments);a.header.addClass("x-accordion-hd");a.on("beforeexpand",this.beforeExpand,this)},beforeExpand:function(d,b){var a=this.activeItem;if(a){if(this.sequence){delete this.activeItem;if(!a.collapsed){a.collapse({callback:function(){d.expand(b||true)},scope:this});return false}}else{a.collapse(this.animate)}}this.activeItem=d;if(this.activeOnTop){d.el.dom.parentNode.insertBefore(d.el.dom,d.el.dom.parentNode.firstChild)}this.layout()},setItemSize:function(h,g){if(this.fill&&h){var b=this.container.items.items;var e=0;for(var d=0,a=b.length;d<a;d++){var j=b[d];if(j!=h){e+=(j.getSize().height-j.bwrap.getHeight())}}g.height-=e;h.setSize(g)}},setActiveItem:function(a){a=this.container.getComponent(a);if(this.activeItem!=a){if(a.rendered&&a.collapsed){a.expand()}else{this.activeItem=c}}}});Ext.Container.LAYOUTS.accordion=Ext.layout.AccordionLayout;Ext.layout.Accordion=Ext.layout.AccordionLayout;Ext.layout.TableLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:false,tableAttrs:null,setContainer:function(a){Ext.layout.TableLayout.superclass.setContainer.call(this,a);this.currentRow=0;this.currentColumn=0;this.cells=[]},onLayout:function(d,g){var e=d.items.items,a=e.length,h,b;if(!this.table){g.addClass("x-table-layout-ct");this.table=g.createChild(Ext.apply({tag:"table",cls:"x-table-layout",cellspacing:0,cn:{tag:"tbody"}},this.tableAttrs),null,true)}this.renderAll(d,g)},getRow:function(a){var b=this.table.tBodies[0].childNodes[a];if(!b){b=document.createElement("tr");this.table.tBodies[0].appendChild(b)}return b},getNextCell:function(k){var a=this.getNextNonSpan(this.currentColumn,this.currentRow);var g=this.currentColumn=a[0],e=this.currentRow=a[1];for(var j=e;j<e+(k.rowspan||1);j++){if(!this.cells[j]){this.cells[j]=[]}for(var d=g;d<g+(k.colspan||1);d++){this.cells[j][d]=true}}var h=document.createElement("td");if(k.cellId){h.id=k.cellId}var b="x-table-layout-cell";if(k.cellCls){b+=" "+k.cellCls}h.className=b;if(k.colspan){h.colSpan=k.colspan}if(k.rowspan){h.rowSpan=k.rowspan}this.getRow(e).appendChild(h);return h},getNextNonSpan:function(a,d){var b=this.columns;while((b&&a>=b)||(this.cells[d]&&this.cells[d][a])){if(b&&a>=b){d++;a=0}else{a++}}return[a,d]},renderItem:function(e,a,d){if(e&&!e.rendered){e.render(this.getNextCell(e));if(this.extraCls){var b=e.getPositionEl?e.getPositionEl():e;b.addClass(this.extraCls)}}},isValidParent:function(b,a){return true}});Ext.Container.LAYOUTS.table=Ext.layout.TableLayout;Ext.layout.AbsoluteLayout=Ext.extend(Ext.layout.AnchorLayout,{extraCls:"x-abs-layout-item",onLayout:function(a,b){b.position();this.paddingLeft=b.getPadding("l");this.paddingTop=b.getPadding("t");Ext.layout.AbsoluteLayout.superclass.onLayout.call(this,a,b)},adjustWidthAnchor:function(b,a){return b?b-a.getPosition(true)[0]+this.paddingLeft:b},adjustHeightAnchor:function(b,a){return b?b-a.getPosition(true)[1]+this.paddingTop:b}});Ext.Container.LAYOUTS.absolute=Ext.layout.AbsoluteLayout;Ext.Viewport=Ext.extend(Ext.Container,{initComponent:function(){Ext.Viewport.superclass.initComponent.call(this);document.getElementsByTagName("html")[0].className+=" x-viewport";this.el=Ext.getBody();this.el.setHeight=Ext.emptyFn;this.el.setWidth=Ext.emptyFn;this.el.setSize=Ext.emptyFn;this.el.dom.scroll="no";this.allowDomMove=false;this.autoWidth=true;this.autoHeight=true;Ext.EventManager.onWindowResize(this.fireResize,this);this.renderTo=this.el},fireResize:function(a,b){this.fireEvent("resize",this,a,b,a,b)}});Ext.reg("viewport",Ext.Viewport);Ext.layout.BoxLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,scrollOffset:0,extraCls:"x-box-item",ctCls:"x-box-layout-ct",innerCls:"x-box-inner",defaultMargins:{left:0,top:0,right:0,bottom:0},padding:"0",pack:"start",isValidParent:function(b,a){return b.getEl().dom.parentNode==this.innerCt.dom},onLayout:function(e,j){var g=e.items.items,b=g.length,k,d,h=b-1,a;if(!this.innerCt){j.addClass(this.ctCls);this.innerCt=j.createChild({cls:this.innerCls});this.padding=this.parseMargins(this.padding)}this.renderAll(e,this.innerCt)},renderItem:function(a){if(typeof a.margins=="string"){a.margins=this.parseMargins(a.margins)}else{if(!a.margins){a.margins=this.defaultMargins}}Ext.layout.BoxLayout.superclass.renderItem.apply(this,arguments)},getTargetSize:function(a){return(Ext.isIE6&&Ext.isStrict&&a.dom==document.body)?a.getStyleSize():a.getViewSize()}});Ext.layout.VBoxLayout=Ext.extend(Ext.layout.BoxLayout,{align:"left",pack:"start",onLayout:function(g,I){Ext.layout.VBoxLayout.superclass.onLayout.call(this,g,I);var j=g.items.items,C=j.length,G,B,o=C-1,m;var y=this.getTargetSize(I);var p=y.width-I.getPadding("lr")-this.scrollOffset,D=y.height-I.getPadding("tb"),z=this.padding.left,s=this.padding.top;if((Ext.isIE&&!Ext.isStrict)&&(p<1||D<1)){return}else{if(p<1&&D<1){return}}var F=p-(this.padding.left+this.padding.right);var A=0;var H=0;var E=0;for(B=0;B<C;B++){G=j[B];m=G.margins;A+=G.flex||0;H+=G.getHeight()+m.top+m.bottom;E=Math.max(E,G.getWidth()+m.left+m.right)}var a=E+this.padding.left+this.padding.right;switch(this.align){case"stretch":this.innerCt.setSize(p,D);break;case"stretchmax":case"left":case"center":this.innerCt.setSize(p=Math.max(p,a),D);break}var u=D-H-this.padding.top-this.padding.bottom;var e=0;var d,q,n,b=p-this.padding.left-this.padding.right;if(this.pack=="center"){s+=u?u/2:0}else{if(this.pack=="end"){s+=u}}for(B=0;B<C;B++){G=j[B];m=G.margins;d=G.getWidth();q=G.getHeight();s+=m.top;if(this.align!="center"){n=z+m.left}else{var r=b-(d+m.left+m.right);if(r==0){n=z+m.left}else{n=z+m.left+(r/2)}}G.setPosition(n,s);if(this.pack=="start"&&G.flex){var k=G.flex/A;var x=Math.floor(u*k);e+=x;if(B==o){x+=(u-e)}q+=x;G.setHeight(q)}if(this.align=="stretch"){G.setWidth((F-(m.left+m.right)).constrain(G.minWidth||0,G.maxWidth||1000000))}else{if(this.align=="stretchmax"){G.setWidth((E-(m.left+m.right)).constrain(G.minWidth||0,G.maxWidth||1000000))}}s+=q+m.bottom}}});Ext.Container.LAYOUTS.vbox=Ext.layout.VBoxLayout;Ext.layout.HBoxLayout=Ext.extend(Ext.layout.BoxLayout,{align:"top",pack:"start",onLayout:function(g,H){Ext.layout.HBoxLayout.superclass.onLayout.call(this,g,H);var j=g.items.items,D=j.length,G,C,n=D-1,m;var x=this.getTargetSize(H);var o=x.width-H.getPadding("lr")-this.scrollOffset,E=x.height-H.getPadding("tb"),z=this.padding.left,s=this.padding.top;if((Ext.isIE&&!Ext.isStrict)&&(o<1||E<1)){return}else{if(o<1&&E<1){return}}var q=E-(this.padding.top+this.padding.bottom);var A=0;var e=0;var y=0;for(C=0;C<D;C++){G=j[C];m=G.margins;A+=G.flex||0;e+=G.getWidth()+m.left+m.right;y=Math.max(y,G.getHeight()+m.top+m.bottom)}var B=y+this.padding.top+this.padding.bottom;switch(this.align){case"stretch":this.innerCt.setSize(o,E);break;case"stretchmax":case"top":this.innerCt.setSize(o,B);break;case"middle":this.innerCt.setSize(o,E=Math.max(E,B));break}var F=o-e-this.padding.left-this.padding.right;var d=0;var b,p,g,a=E-this.padding.top-this.padding.bottom;if(this.pack=="center"){z+=F?F/2:0}else{if(this.pack=="end"){z+=F}}for(C=0;C<D;C++){G=j[C];m=G.margins;b=G.getWidth();p=G.getHeight();z+=m.left;if(this.align!="middle"){g=s+m.top}else{var r=a-(p+m.top+m.bottom);if(r==0){g=s+m.top}else{g=s+m.top+(r/2)}}G.setPosition(z,g);if(this.pack=="start"&&G.flex){var k=G.flex/A;var u=Math.floor(F*k);d+=u;if(C==n){u+=(F-d)}b+=u;G.setWidth(b)}if(this.align=="stretch"){G.setHeight((q-(m.top+m.bottom)).constrain(G.minHeight||0,G.maxHeight||1000000))}else{if(this.align=="stretchmax"){G.setHeight((y-(m.top+m.bottom)).constrain(G.minHeight||0,G.maxHeight||1000000))}}z+=b+m.right}}});Ext.Container.LAYOUTS.hbox=Ext.layout.HBoxLayout;Ext.Panel=Ext.extend(Ext.Container,{baseCls:"x-panel",collapsedCls:"x-panel-collapsed",maskDisabled:true,animCollapse:Ext.enableFx,headerAsText:true,buttonAlign:"right",collapsed:false,collapseFirst:true,minButtonWidth:75,elements:"body",resetBodyCss:false,toolTarget:"header",collapseEl:"bwrap",slideAnchor:"t",disabledClass:"",deferHeight:true,expandDefaults:{duration:0.25},collapseDefaults:{duration:0.25},initComponent:function(){Ext.Panel.superclass.initComponent.call(this);this.addEvents("bodyresize","titlechange","iconchange","collapse","expand","beforecollapse","beforeexpand","beforeclose","close","activate","deactivate");if(this.unstyled){this.baseCls="x-plain"}if(this.tbar){this.elements+=",tbar";if(Ext.isObject(this.tbar)){this.topToolbar=this.tbar}delete this.tbar}if(this.bbar){this.elements+=",bbar";if(Ext.isObject(this.bbar)){this.bottomToolbar=this.bbar}delete this.bbar}if(this.header===true){this.elements+=",header";delete this.header}else{if(this.title&&this.header!==false){this.elements+=",header"}}if(this.footer===true){this.elements+=",footer";delete this.footer}if(this.buttons){this.elements+=",footer";var d=this.buttons;this.buttons=[];for(var b=0,a=d.length;b<a;b++){if(d[b].render){this.buttons.push(d[b])}else{if(d[b].xtype){this.buttons.push(Ext.create(d[b],"button"))}else{this.addButton(d[b])}}}}if(this.fbar){this.elements+=",footer"}if(this.autoLoad){this.on("render",this.doAutoLoad,this,{delay:10})}},createElement:function(a,d){if(this[a]){d.appendChild(this[a].dom);return}if(a==="bwrap"||this.elements.indexOf(a)!=-1){if(this[a+"Cfg"]){this[a]=Ext.fly(d).createChild(this[a+"Cfg"])}else{var b=document.createElement("div");b.className=this[a+"Cls"];this[a]=Ext.get(d.appendChild(b))}if(this[a+"CssClass"]){this[a].addClass(this[a+"CssClass"])}if(this[a+"Style"]){this[a].applyStyles(this[a+"Style"])}}},onRender:function(h,g){Ext.Panel.superclass.onRender.call(this,h,g);this.createClasses();var a=this.el,k=a.dom;a.addClass(this.baseCls);if(k.firstChild){this.header=a.down("."+this.headerCls);this.bwrap=a.down("."+this.bwrapCls);var l=this.bwrap?this.bwrap:a;this.tbar=l.down("."+this.tbarCls);this.body=l.down("."+this.bodyCls);this.bbar=l.down("."+this.bbarCls);this.footer=l.down("."+this.footerCls);this.fromMarkup=true}if(this.resetBodyCss===true){a.addClass("x-panel-reset")}if(this.cls){a.addClass(this.cls)}if(this.buttons){this.elements+=",footer"}if(this.frame){a.insertHtml("afterBegin",String.format(Ext.Element.boxMarkup,this.baseCls));this.createElement("header",k.firstChild.firstChild.firstChild);this.createElement("bwrap",k);var m=this.bwrap.dom;var e=k.childNodes[1],b=k.childNodes[2];m.appendChild(e);m.appendChild(b);var n=m.firstChild.firstChild.firstChild;this.createElement("tbar",n);this.createElement("body",n);this.createElement("bbar",n);this.createElement("footer",m.lastChild.firstChild.firstChild);if(!this.footer){this.bwrap.dom.lastChild.className+=" x-panel-nofooter"}}else{this.createElement("header",k);this.createElement("bwrap",k);var m=this.bwrap.dom;this.createElement("tbar",m);this.createElement("body",m);this.createElement("bbar",m);this.createElement("footer",m);if(!this.header){this.body.addClass(this.bodyCls+"-noheader");if(this.tbar){this.tbar.addClass(this.tbarCls+"-noheader")}}}if(this.padding!==undefined){this.body.setStyle("padding",this.body.addUnits(this.padding))}if(this.border===false){this.el.addClass(this.baseCls+"-noborder");this.body.addClass(this.bodyCls+"-noborder");if(this.header){this.header.addClass(this.headerCls+"-noborder")}if(this.footer){this.footer.addClass(this.footerCls+"-noborder")}if(this.tbar){this.tbar.addClass(this.tbarCls+"-noborder")}if(this.bbar){this.bbar.addClass(this.bbarCls+"-noborder")}}if(this.bodyBorder===false){this.body.addClass(this.bodyCls+"-noborder")}this.bwrap.enableDisplayMode("block");if(this.header){this.header.unselectable();if(this.headerAsText){this.header.dom.innerHTML='<span class="'+this.headerTextCls+'">'+this.header.dom.innerHTML+"</span>";if(this.iconCls){this.setIconClass(this.iconCls)}}}if(this.floating){this.makeFloating(this.floating)}if(this.collapsible){this.tools=this.tools?this.tools.slice(0):[];if(!this.hideCollapseTool){this.tools[this.collapseFirst?"unshift":"push"]({id:"toggle",handler:this.toggleCollapse,scope:this})}if(this.titleCollapse&&this.header){this.mon(this.header,"click",this.toggleCollapse,this);this.header.setStyle("cursor","pointer")}}if(this.tools){var j=this.tools;this.tools={};this.addTool.apply(this,j)}else{this.tools={}}if(this.buttons&&this.buttons.length>0){this.fbar=new Ext.Toolbar({items:this.buttons,toolbarCls:"x-panel-fbar"})}if(this.fbar){this.fbar=Ext.create(this.fbar,"toolbar");this.fbar.enableOverflow=false;if(this.fbar.items){this.fbar.items.each(function(d){d.minWidth=d.minWidth||this.minButtonWidth},this)}this.fbar.toolbarCls="x-panel-fbar";var o=this.footer.createChild({cls:"x-panel-btns x-panel-btns-"+this.buttonAlign});this.fbar.ownerCt=this;this.fbar.render(o);o.createChild({cls:"x-clear"})}if(this.tbar&&this.topToolbar){if(Ext.isArray(this.topToolbar)){this.topToolbar=new Ext.Toolbar(this.topToolbar)}else{if(!this.topToolbar.events){this.topToolbar=Ext.create(this.topToolbar,"toolbar")}}this.topToolbar.ownerCt=this;this.topToolbar.render(this.tbar)}if(this.bbar&&this.bottomToolbar){if(Ext.isArray(this.bottomToolbar)){this.bottomToolbar=new Ext.Toolbar(this.bottomToolbar)}else{if(!this.bottomToolbar.events){this.bottomToolbar=Ext.create(this.bottomToolbar,"toolbar")}}this.bottomToolbar.ownerCt=this;this.bottomToolbar.render(this.bbar)}},setIconClass:function(b){var a=this.iconCls;this.iconCls=b;if(this.rendered&&this.header){if(this.frame){this.header.addClass("x-panel-icon");this.header.replaceClass(a,this.iconCls)}else{var e=this.header.dom;var d=e.firstChild&&String(e.firstChild.tagName).toLowerCase()=="img"?e.firstChild:null;if(d){Ext.fly(d).replaceClass(a,this.iconCls)}else{Ext.DomHelper.insertBefore(e.firstChild,{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-panel-inline-icon "+this.iconCls})}}}this.fireEvent("iconchange",this,b,a)},makeFloating:function(a){this.floating=true;this.el=new Ext.Layer(Ext.isObject(a)?a:{shadow:this.shadow!==undefined?this.shadow:"sides",shadowOffset:this.shadowOffset,constrain:false,shim:this.shim===false?false:undefined},this.el)},getTopToolbar:function(){return this.topToolbar},getBottomToolbar:function(){return this.bottomToolbar},addButton:function(a,e,d){var g={handler:e,scope:d,minWidth:this.minButtonWidth,hideParent:true};if(typeof a=="string"){g.text=a}else{Ext.apply(g,a)}var b=new Ext.Button(g);if(!this.buttons){this.buttons=[]}this.buttons.push(b);return b},addTool:function(){if(!this[this.toolTarget]){return}if(!this.toolTemplate){var j=new Ext.Template('<div class="x-tool x-tool-{id}">&#160;</div>');j.disableFormats=true;j.compile();Ext.Panel.prototype.toolTemplate=j}for(var h=0,e=arguments,d=e.length;h<d;h++){var b=e[h];if(!this.tools[b.id]){var k="x-tool-"+b.id+"-over";var g=this.toolTemplate.insertFirst((b.align!=="left")?this[this.toolTarget]:this[this.toolTarget].child("span"),b,true);this.tools[b.id]=g;g.enableDisplayMode("block");this.mon(g,"click",this.createToolHandler(g,b,k,this));if(b.on){this.mon(g,b.on)}if(b.hidden){g.hide()}if(b.qtip){if(Ext.isObject(b.qtip)){Ext.QuickTips.register(Ext.apply({target:g.id},b.qtip))}else{g.dom.qtip=b.qtip}}g.addClassOnOver(k)}}},onLayout:function(){if(this.topToolbar){this.topToolbar.doLayout()}if(this.bottomToolbar){this.bottomToolbar.doLayout()}if(this.fbar){this.fbar.doLayout()}},onShow:function(){if(this.floating){return this.el.show()}Ext.Panel.superclass.onShow.call(this)},onHide:function(){if(this.floating){return this.el.hide()}Ext.Panel.superclass.onHide.call(this)},createToolHandler:function(d,a,e,b){return function(g){d.removeClass(e);if(a.stopEvent!==false){g.stopEvent()}if(a.handler){a.handler.call(a.scope||d,g,d,b,a)}}},afterRender:function(){if(this.floating&&!this.hidden){this.el.show()}if(this.title){this.setTitle(this.title)}this.setAutoScroll();if(this.html){this.body.update(Ext.isObject(this.html)?Ext.DomHelper.markup(this.html):this.html);delete this.html}if(this.contentEl){var a=Ext.getDom(this.contentEl);Ext.fly(a).removeClass(["x-hidden","x-hide-display"]);this.body.dom.appendChild(a)}if(this.collapsed){this.collapsed=false;this.collapse(false)}Ext.Panel.superclass.afterRender.call(this);this.initEvents()},setAutoScroll:function(){if(this.rendered&&this.autoScroll){var a=this.body||this.el;if(a){a.setOverflow("auto")}}},getKeyMap:function(){if(!this.keyMap){this.keyMap=new Ext.KeyMap(this.el,this.keys)}return this.keyMap},initEvents:function(){if(this.keys){this.getKeyMap()}if(this.draggable){this.initDraggable()}},initDraggable:function(){this.dd=new Ext.Panel.DD(this,typeof this.draggable=="boolean"?null:this.draggable)},beforeEffect:function(){if(this.floating){this.el.beforeAction()}this.el.addClass("x-panel-animated")},afterEffect:function(){this.syncShadow();this.el.removeClass("x-panel-animated")},createEffect:function(d,b,e){var g={scope:e,block:true};if(d===true){g.callback=b;return g}else{if(!d.callback){g.callback=b}else{g.callback=function(){b.call(e);Ext.callback(d.callback,d.scope)}}}return Ext.applyIf(g,d)},collapse:function(b){if(this.collapsed||this.el.hasFxBlock()||this.fireEvent("beforecollapse",this,b)===false){return}var a=b===true||(b!==false&&this.animCollapse);this.beforeEffect();this.onCollapse(a,b);return this},onCollapse:function(a,b){if(a){this[this.collapseEl].slideOut(this.slideAnchor,Ext.apply(this.createEffect(b||true,this.afterCollapse,this),this.collapseDefaults))}else{this[this.collapseEl].hide();this.afterCollapse()}},afterCollapse:function(){this.collapsed=true;this.el.addClass(this.collapsedCls);this.afterEffect();this.fireEvent("collapse",this)},expand:function(b){if(!this.collapsed||this.el.hasFxBlock()||this.fireEvent("beforeexpand",this,b)===false){return}var a=b===true||(b!==false&&this.animCollapse);this.el.removeClass(this.collapsedCls);this.beforeEffect();this.onExpand(a,b);return this},onExpand:function(a,b){if(a){this[this.collapseEl].slideIn(this.slideAnchor,Ext.apply(this.createEffect(b||true,this.afterExpand,this),this.expandDefaults))}else{this[this.collapseEl].show();this.afterExpand()}},afterExpand:function(){this.collapsed=false;this.afterEffect();this.fireEvent("expand",this)},toggleCollapse:function(a){this[this.collapsed?"expand":"collapse"](a);return this},onDisable:function(){if(this.rendered&&this.maskDisabled){this.el.mask()}Ext.Panel.superclass.onDisable.call(this)},onEnable:function(){if(this.rendered&&this.maskDisabled){this.el.unmask()}Ext.Panel.superclass.onEnable.call(this)},onResize:function(a,d){if(a!==undefined||d!==undefined){if(!this.collapsed){if(typeof a=="number"){a=this.adjustBodyWidth(a-this.getFrameWidth());if(this.tbar){this.tbar.setWidth(a);if(this.topToolbar){this.topToolbar.setSize(a)}}if(this.bbar){this.bbar.setWidth(a);if(this.bottomToolbar){this.bottomToolbar.setSize(a)}}if(this.fbar){var g=1,e=this.fbar;if(this.buttonAlign=="left"){g=a-e.container.getFrameWidth("lr")}else{if(Ext.isIE&&!Ext.isIE8){var b=e.getEl();if(Ext.isIE7&&Ext.isStrict){(function(){e.setWidth(b.child(".x-toolbar-ct").getWidth())}).defer(1)}else{g=b.getWidth()}}else{g="auto"}}e.setWidth(g)}this.body.setWidth(a)}else{if(a=="auto"){this.body.setWidth(a)}}if(typeof d=="number"){d=this.adjustBodyHeight(d-this.getFrameHeight());this.body.setHeight(d)}else{if(d=="auto"){this.body.setHeight(d)}}if(this.disabled&&this.el._mask){this.el._mask.setSize(this.el.dom.clientWidth,this.el.getHeight())}}else{this.queuedBodySize={width:a,height:d};if(!this.queuedExpand&&this.allowQueuedExpand!==false){this.queuedExpand=true;this.on("expand",function(){delete this.queuedExpand;this.onResize(this.queuedBodySize.width,this.queuedBodySize.height);this.doLayout()},this,{single:true})}}this.fireEvent("bodyresize",this,a,d)}this.syncShadow()},adjustBodyHeight:function(a){return a},adjustBodyWidth:function(a){return a},onPosition:function(){this.syncShadow()},getFrameWidth:function(){var b=this.el.getFrameWidth("lr")+this.bwrap.getFrameWidth("lr");if(this.frame){var a=this.bwrap.dom.firstChild;b+=(Ext.fly(a).getFrameWidth("l")+Ext.fly(a.firstChild).getFrameWidth("r"));var d=this.bwrap.dom.firstChild.firstChild.firstChild;b+=Ext.fly(d).getFrameWidth("lr")}return b},getFrameHeight:function(){var a=this.el.getFrameWidth("tb")+this.bwrap.getFrameWidth("tb");a+=(this.tbar?this.tbar.getHeight():0)+(this.bbar?this.bbar.getHeight():0);if(this.frame){var d=this.el.dom.firstChild;var e=this.bwrap.dom.lastChild;a+=(d.offsetHeight+e.offsetHeight);var b=this.bwrap.dom.firstChild.firstChild.firstChild;a+=Ext.fly(b).getFrameWidth("tb")}else{a+=(this.header?this.header.getHeight():0)+(this.footer?this.footer.getHeight():0)}return a},getInnerWidth:function(){return this.getSize().width-this.getFrameWidth()},getInnerHeight:function(){return this.getSize().height-this.getFrameHeight()},syncShadow:function(){if(this.floating){this.el.sync(true)}},getLayoutTarget:function(){return this.body},setTitle:function(b,a){this.title=b;if(this.header&&this.headerAsText){this.header.child("span").update(b)}if(a){this.setIconClass(a)}this.fireEvent("titlechange",this,b);return this},getUpdater:function(){return this.body.getUpdater()},load:function(){var a=this.body.getUpdater();a.update.apply(a,arguments);return this},beforeDestroy:function(){if(this.header){this.header.removeAllListeners();if(this.headerAsText){Ext.Element.uncache(this.header.child("span"))}}Ext.Element.uncache(this.header,this.tbar,this.bbar,this.footer,this.body,this.bwrap);if(this.tools){for(var d in this.tools){Ext.destroy(this.tools[d])}}if(this.buttons){for(var a in this.buttons){Ext.destroy(this.buttons[a])}}Ext.destroy(this.topToolbar,this.bottomToolbar,this.fbar);Ext.Panel.superclass.beforeDestroy.call(this)},createClasses:function(){this.headerCls=this.baseCls+"-header";this.headerTextCls=this.baseCls+"-header-text";this.bwrapCls=this.baseCls+"-bwrap";this.tbarCls=this.baseCls+"-tbar";this.bodyCls=this.baseCls+"-body";this.bbarCls=this.baseCls+"-bbar";this.footerCls=this.baseCls+"-footer"},createGhost:function(a,g,b){var e=document.createElement("div");e.className="x-panel-ghost "+(a?a:"");if(this.header){e.appendChild(this.el.dom.firstChild.cloneNode(true))}Ext.fly(e.appendChild(document.createElement("ul"))).setHeight(this.bwrap.getHeight());e.style.width=this.el.dom.offsetWidth+"px";if(!b){this.container.dom.appendChild(e)}else{Ext.getDom(b).appendChild(e)}if(g!==false&&this.el.useShim!==false){var d=new Ext.Layer({shadow:false,useDisplay:true,constrain:false},e);d.show();return d}else{return new Ext.Element(e)}},doAutoLoad:function(){var a=this.body.getUpdater();if(this.renderer){a.setRenderer(this.renderer)}a.update(Ext.isObject(this.autoLoad)?this.autoLoad:{url:this.autoLoad})},getTool:function(a){return this.tools[a]}});Ext.reg("panel",Ext.Panel);Ext.Window=Ext.extend(Ext.Panel,{baseCls:"x-window",resizable:true,draggable:true,closable:true,constrain:false,constrainHeader:false,plain:false,minimizable:false,maximizable:false,minHeight:100,minWidth:200,expandOnShow:true,closeAction:"close",collapsible:false,initHidden:true,monitorResize:true,elements:"header,body",frame:true,floating:true,initComponent:function(){Ext.Window.superclass.initComponent.call(this);this.addEvents("resize","maximize","minimize","restore");if(this.initHidden===false){this.show()}else{this.hidden=true}},getState:function(){return Ext.apply(Ext.Window.superclass.getState.call(this)||{},this.getBox())},onRender:function(b,a){Ext.Window.superclass.onRender.call(this,b,a);if(this.plain){this.el.addClass("x-window-plain")}this.focusEl=this.el.createChild({tag:"a",href:"#",cls:"x-dlg-focus",tabIndex:"-1",html:"&#160;"});this.focusEl.swallowEvent("click",true);this.proxy=this.el.createProxy("x-window-proxy");this.proxy.enableDisplayMode("block");if(this.modal){this.mask=this.container.createChild({cls:"ext-el-mask"},this.el.dom);this.mask.enableDisplayMode("block");this.mask.hide();this.mon(this.mask,"click",this.focus,this)}this.initTools()},initEvents:function(){Ext.Window.superclass.initEvents.call(this);if(this.animateTarget){this.setAnimateTarget(this.animateTarget)}if(this.resizable){this.resizer=new Ext.Resizable(this.el,{minWidth:this.minWidth,minHeight:this.minHeight,handles:this.resizeHandles||"all",pinned:true,resizeElement:this.resizerAction});this.resizer.window=this;this.mon(this.resizer,"beforeresize",this.beforeResize,this)}if(this.draggable){this.header.addClass("x-window-draggable")}this.mon(this.el,"mousedown",this.toFront,this);this.manager=this.manager||Ext.WindowMgr;this.manager.register(this);if(this.maximized){this.maximized=false;this.maximize()}if(this.closable){var a=this.getKeyMap();a.on(27,this.onEsc,this);a.disable()}},initDraggable:function(){this.dd=new Ext.Window.DD(this)},onEsc:function(){this[this.closeAction]()},beforeDestroy:function(){if(this.rendered){this.hide();if(this.doAnchor){Ext.EventManager.removeResizeListener(this.doAnchor,this);Ext.EventManager.un(window,"scroll",this.doAnchor,this)}Ext.destroy(this.focusEl,this.resizer,this.dd,this.proxy,this.mask)}Ext.Window.superclass.beforeDestroy.call(this)},onDestroy:function(){if(this.manager){this.manager.unregister(this)}Ext.Window.superclass.onDestroy.call(this)},initTools:function(){if(this.minimizable){this.addTool({id:"minimize",handler:this.minimize.createDelegate(this,[])})}if(this.maximizable){this.addTool({id:"maximize",handler:this.maximize.createDelegate(this,[])});this.addTool({id:"restore",handler:this.restore.createDelegate(this,[]),hidden:true});this.mon(this.header,"dblclick",this.toggleMaximize,this)}if(this.closable){this.addTool({id:"close",handler:this[this.closeAction].createDelegate(this,[])})}},resizerAction:function(){var a=this.proxy.getBox();this.proxy.hide();this.window.handleResize(a);return a},beforeResize:function(){this.resizer.minHeight=Math.max(this.minHeight,this.getFrameHeight()+40);this.resizer.minWidth=Math.max(this.minWidth,this.getFrameWidth()+40);this.resizeBox=this.el.getBox()},updateHandles:function(){if(Ext.isIE&&this.resizer){this.resizer.syncHandleHeight();this.el.repaint()}},handleResize:function(b){var a=this.resizeBox;if(a.x!=b.x||a.y!=b.y){this.updateBox(b)}else{this.setSize(b)}this.focus();this.updateHandles();this.saveState();if(this.layout){this.doLayout()}this.fireEvent("resize",this,b.width,b.height)},focus:function(){var d=this.focusEl,a=this.defaultButton,b=typeof a;if(b!="undefined"){if(b=="number"&&this.fbar){d=this.fbar.items.get(a)}else{if(b=="string"){d=Ext.getCmp(a)}else{d=a}}}d=d||this.focusEl;d.focus.defer(10,d)},setAnimateTarget:function(a){a=Ext.get(a);this.animateTarget=a},beforeShow:function(){delete this.el.lastXY;delete this.el.lastLT;if(this.x===undefined||this.y===undefined){var a=this.el.getAlignToXY(this.container,"c-c");var b=this.el.translatePoints(a[0],a[1]);this.x=this.x===undefined?b.left:this.x;this.y=this.y===undefined?b.top:this.y}this.el.setLeftTop(this.x,this.y);if(this.expandOnShow){this.expand(false)}if(this.modal){Ext.getBody().addClass("x-body-masked");this.mask.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true));this.mask.show()}},show:function(d,a,b){if(!this.rendered){this.render(Ext.getBody())}if(this.hidden===false){this.toFront();return this}if(this.fireEvent("beforeshow",this)===false){return this}if(a){this.on("show",a,b,{single:true})}this.hidden=false;if(d!==undefined){this.setAnimateTarget(d)}this.beforeShow();if(this.animateTarget){this.animShow()}else{this.afterShow()}return this},afterShow:function(){this.proxy.hide();this.el.setStyle("display","block");this.el.show();if(this.maximized){this.fitContainer()}if(Ext.isMac&&Ext.isGecko){this.cascade(this.setAutoScroll)}if(this.monitorResize||this.modal||this.constrain||this.constrainHeader){Ext.EventManager.onWindowResize(this.onWindowResize,this)}this.doConstrain();if(this.layout){this.doLayout()}if(this.keyMap){this.keyMap.enable()}this.toFront();this.updateHandles();this.fireEvent("show",this)},animShow:function(){this.proxy.show();this.proxy.setBox(this.animateTarget.getBox());this.proxy.setOpacity(0);var a=this.getBox(false);a.callback=this.afterShow;a.scope=this;a.duration=0.25;a.easing="easeNone";a.opacity=0.5;a.block=true;this.el.setStyle("display","none");this.proxy.shift(a)},hide:function(d,a,b){if(this.hidden||this.fireEvent("beforehide",this)===false){return this}if(a){this.on("hide",a,b,{single:true})}this.hidden=true;if(d!==undefined){this.setAnimateTarget(d)}if(this.modal){this.mask.hide();Ext.getBody().removeClass("x-body-masked")}if(this.animateTarget){this.animHide()}else{this.el.hide();this.afterHide()}return this},afterHide:function(){this.proxy.hide();if(this.monitorResize||this.modal||this.constrain||this.constrainHeader){Ext.EventManager.removeResizeListener(this.onWindowResize,this)}if(this.keyMap){this.keyMap.disable()}this.fireEvent("hide",this)},animHide:function(){this.proxy.setOpacity(0.5);this.proxy.show();var d=this.getBox(false);this.proxy.setBox(d);this.el.hide();var a=this.animateTarget.getBox();a.callback=this.afterHide;a.scope=this;a.duration=0.25;a.easing="easeNone";a.block=true;a.opacity=0;this.proxy.shift(a)},onWindowResize:function(){if(this.maximized){this.fitContainer()}if(this.modal){this.mask.setSize("100%","100%");var a=this.mask.dom.offsetHeight;this.mask.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true))}this.doConstrain()},doConstrain:function(){if(this.constrain||this.constrainHeader){var b;if(this.constrain){b={right:this.el.shadowOffset,left:this.el.shadowOffset,bottom:this.el.shadowOffset}}else{var a=this.getSize();b={right:-(a.width-100),bottom:-(a.height-25)}}var d=this.el.getConstrainToXY(this.container,true,b);if(d){this.setPosition(d[0],d[1])}}},ghost:function(a){var d=this.createGhost(a);var b=this.getBox(true);d.setLeftTop(b.x,b.y);d.setWidth(b.width);this.el.hide();this.activeGhost=d;return d},unghost:function(b,a){if(!this.activeGhost){return}if(b!==false){this.el.show();this.focus();if(Ext.isMac&&Ext.isGecko){this.cascade(this.setAutoScroll)}}if(a!==false){this.setPosition(this.activeGhost.getLeft(true),this.activeGhost.getTop(true))}this.activeGhost.hide();this.activeGhost.remove();delete this.activeGhost},minimize:function(){this.fireEvent("minimize",this);return this},close:function(){if(this.fireEvent("beforeclose",this)!==false){this.hide(null,function(){this.fireEvent("close",this);this.destroy()},this)}},maximize:function(){if(!this.maximized){this.expand(false);this.restoreSize=this.getSize();this.restorePos=this.getPosition(true);if(this.maximizable){this.tools.maximize.hide();this.tools.restore.show()}this.maximized=true;this.el.disableShadow();if(this.dd){this.dd.lock()}if(this.collapsible){this.tools.toggle.hide()}this.el.addClass("x-window-maximized");this.container.addClass("x-window-maximized-ct");this.setPosition(0,0);this.fitContainer();this.fireEvent("maximize",this)}return this},restore:function(){if(this.maximized){this.el.removeClass("x-window-maximized");this.tools.restore.hide();this.tools.maximize.show();this.setPosition(this.restorePos[0],this.restorePos[1]);this.setSize(this.restoreSize.width,this.restoreSize.height);delete this.restorePos;delete this.restoreSize;this.maximized=false;this.el.enableShadow(true);if(this.dd){this.dd.unlock()}if(this.collapsible){this.tools.toggle.show()}this.container.removeClass("x-window-maximized-ct");this.doConstrain();this.fireEvent("restore",this)}return this},toggleMaximize:function(){return this[this.maximized?"restore":"maximize"]()},fitContainer:function(){var a=this.container.getViewSize();this.setSize(a.width,a.height)},setZIndex:function(a){if(this.modal){this.mask.setStyle("z-index",a)}this.el.setZIndex(++a);a+=5;if(this.resizer){this.resizer.proxy.setStyle("z-index",++a)}this.lastZIndex=a},alignTo:function(b,a,d){var e=this.el.getAlignToXY(b,a,d);this.setPagePosition(e[0],e[1]);return this},anchorTo:function(d,g,e,b){if(this.doAnchor){Ext.EventManager.removeResizeListener(this.doAnchor,this);Ext.EventManager.un(window,"scroll",this.doAnchor,this)}this.doAnchor=function(){this.alignTo(d,g,e)};Ext.EventManager.onWindowResize(this.doAnchor,this);var a=typeof b;if(a!="undefined"){Ext.EventManager.on(window,"scroll",this.doAnchor,this,{buffer:a=="number"?b:50})}this.doAnchor();return this},toFront:function(a){if(this.manager.bringToFront(this)){if(!a||!a.getTarget().focus){this.focus()}}return this},setActive:function(a){if(a){if(!this.maximized){this.el.enableShadow(true)}this.fireEvent("activate",this)}else{this.el.disableShadow();this.fireEvent("deactivate",this)}},toBack:function(){this.manager.sendToBack(this);return this},center:function(){var a=this.el.getAlignToXY(this.container,"c-c");this.setPagePosition(a[0],a[1]);return this}});Ext.reg("window",Ext.Window);Ext.Window.DD=function(a){this.win=a;Ext.Window.DD.superclass.constructor.call(this,a.el.id,"WindowDD-"+a.id);this.setHandleElId(a.header.id);this.scroll=false};Ext.extend(Ext.Window.DD,Ext.dd.DD,{moveOnly:true,headerOffsets:[100,25],startDrag:function(){var a=this.win;this.proxy=a.ghost();if(a.constrain!==false){var d=a.el.shadowOffset;this.constrainTo(a.container,{right:d,left:d,bottom:d})}else{if(a.constrainHeader!==false){var b=this.proxy.getSize();this.constrainTo(a.container,{right:-(b.width-this.headerOffsets[0]),bottom:-(b.height-this.headerOffsets[1])})}}},b4Drag:Ext.emptyFn,onDrag:function(a){this.alignElWithMouse(this.proxy,a.getPageX(),a.getPageY())},endDrag:function(a){this.win.unghost();this.win.saveState()}});Ext.WindowGroup=function(){var h={};var e=[];var g=null;var d=function(l,k){return(!l._lastAccess||l._lastAccess<k._lastAccess)?-1:1};var j=function(){var m=e,k=m.length;if(k>0){m.sort(d);var l=m[0].manager.zseed;for(var n=0;n<k;n++){var o=m[n];if(o&&!o.hidden){o.setZIndex(l+(n*10))}}}a()};var b=function(k){if(k!=g){if(g){g.setActive(false)}g=k;if(k){k.setActive(true)}}};var a=function(){for(var k=e.length-1;k>=0;--k){if(!e[k].hidden){b(e[k]);return}}b(null)};return{zseed:9000,register:function(k){h[k.id]=k;e.push(k);k.on("hide",a)},unregister:function(k){delete h[k.id];k.un("hide",a);e.remove(k)},get:function(k){return typeof k=="object"?k:h[k]},bringToFront:function(k){k=this.get(k);if(k!=g){k._lastAccess=new Date().getTime();j();return true}return false},sendToBack:function(k){k=this.get(k);k._lastAccess=-(new Date().getTime());j();return k},hideAll:function(){for(var k in h){if(h[k]&&typeof h[k]!="function"&&h[k].isVisible()){h[k].hide()}}},getActive:function(){return g},getBy:function(m,l){var n=[];for(var k=e.length-1;k>=0;--k){var o=e[k];if(m.call(l||o,o)!==false){n.push(o)}}return n},each:function(l,k){for(var m in h){if(h[m]&&typeof h[m]!="function"){if(l.call(k||h[m],h[m])===false){return}}}}}};Ext.WindowMgr=new Ext.WindowGroup();Ext.dd.PanelProxy=function(a,b){this.panel=a;this.id=this.panel.id+"-ddproxy";Ext.apply(this,b)};Ext.dd.PanelProxy.prototype={insertProxy:true,setStatus:Ext.emptyFn,reset:Ext.emptyFn,update:Ext.emptyFn,stop:Ext.emptyFn,sync:Ext.emptyFn,getEl:function(){return this.ghost},getGhost:function(){return this.ghost},getProxy:function(){return this.proxy},hide:function(){if(this.ghost){if(this.proxy){this.proxy.remove();delete this.proxy}this.panel.el.dom.style.display="";this.ghost.remove();delete this.ghost}},show:function(){if(!this.ghost){this.ghost=this.panel.createGhost(undefined,undefined,Ext.getBody());this.ghost.setXY(this.panel.el.getXY());if(this.insertProxy){this.proxy=this.panel.el.insertSibling({cls:"x-panel-dd-spacer"});this.proxy.setSize(this.panel.getSize())}this.panel.el.dom.style.display="none"}},repair:function(b,d,a){this.hide();if(typeof d=="function"){d.call(a||this)}},moveProxy:function(a,b){if(this.proxy){a.insertBefore(this.proxy.dom,b)}}};Ext.Panel.DD=function(b,a){this.panel=b;this.dragData={panel:b};this.proxy=new Ext.dd.PanelProxy(b,a);Ext.Panel.DD.superclass.constructor.call(this,b.el,a);var d=b.header;if(d){this.setHandleElId(d.id)}(d?d:this.panel.body).setStyle("cursor","move");this.scroll=false};Ext.extend(Ext.Panel.DD,Ext.dd.DragSource,{showFrame:Ext.emptyFn,startDrag:Ext.emptyFn,b4StartDrag:function(a,b){this.proxy.show()},b4MouseDown:function(b){var a=b.getPageX();var d=b.getPageY();this.autoOffset(a,d)},onInitDrag:function(a,b){this.onStartDrag(a,b);return true},createFrame:Ext.emptyFn,getDragEl:function(a){return this.proxy.ghost.dom},endDrag:function(a){this.proxy.hide();this.panel.saveState()},autoOffset:function(a,b){a-=this.startPageX;b-=this.startPageY;this.setDelta(a,b)}});Ext.state.Provider=function(){this.addEvents("statechange");this.state={};Ext.state.Provider.superclass.constructor.call(this)};Ext.extend(Ext.state.Provider,Ext.util.Observable,{get:function(b,a){return typeof this.state[b]=="undefined"?a:this.state[b]},clear:function(a){delete this.state[a];this.fireEvent("statechange",this,a,null)},set:function(a,b){this.state[a]=b;this.fireEvent("statechange",this,a,b)},decodeValue:function(a){var m=/^(a|n|d|b|s|o)\:(.*)$/;var d=m.exec(unescape(a));if(!d||!d[1]){return}var h=d[1];var k=d[2];switch(h){case"n":return parseFloat(k);case"d":return new Date(Date.parse(k));case"b":return(k=="1");case"a":var j=[];var l=k.split("^");for(var b=0,e=l.length;b<e;b++){j.push(this.decodeValue(l[b]))}return j;case"o":var j={};var l=k.split("^");for(var b=0,e=l.length;b<e;b++){var g=l[b].split("=");j[g[0]]=this.decodeValue(g[1])}return j;default:return k}},encodeValue:function(d){var b;if(typeof d=="number"){b="n:"+d}else{if(typeof d=="boolean"){b="b:"+(d?"1":"0")}else{if(Ext.isDate(d)){b="d:"+d.toGMTString()}else{if(Ext.isArray(d)){var h="";for(var g=0,a=d.length;g<a;g++){h+=this.encodeValue(d[g]);if(g!=a-1){h+="^"}}b="a:"+h}else{if(typeof d=="object"){var h="";for(var e in d){if(typeof d[e]!="function"&&d[e]!==undefined){h+=e+"="+this.encodeValue(d[e])+"^"}}b="o:"+h.substring(0,h.length-1)}else{b="s:"+d}}}}}return escape(b)}});Ext.state.Manager=function(){var a=new Ext.state.Provider();return{setProvider:function(b){a=b},get:function(d,b){return a.get(d,b)},set:function(b,d){a.set(b,d)},clear:function(b){a.clear(b)},getProvider:function(){return a}}}();Ext.state.CookieProvider=function(a){Ext.state.CookieProvider.superclass.constructor.call(this);this.path="/";this.expires=new Date(new Date().getTime()+(1000*60*60*24*7));this.domain=null;this.secure=false;Ext.apply(this,a);this.state=this.readCookies()};Ext.extend(Ext.state.CookieProvider,Ext.state.Provider,{set:function(a,b){if(typeof b=="undefined"||b===null){this.clear(a);return}this.setCookie(a,b);Ext.state.CookieProvider.superclass.set.call(this,a,b)},clear:function(a){this.clearCookie(a);Ext.state.CookieProvider.superclass.clear.call(this,a)},readCookies:function(){var d={};var h=document.cookie+";";var b=/\s?(.*?)=(.*?);/g;var g;while((g=b.exec(h))!=null){var a=g[1];var e=g[2];if(a&&a.substring(0,3)=="ys-"){d[a.substr(3)]=this.decodeValue(e)}}return d},setCookie:function(a,b){document.cookie="ys-"+a+"="+this.encodeValue(b)+((this.expires==null)?"":("; expires="+this.expires.toGMTString()))+((this.path==null)?"":("; path="+this.path))+((this.domain==null)?"":("; domain="+this.domain))+((this.secure==true)?"; secure":"")},clearCookie:function(a){document.cookie="ys-"+a+"=null; expires=Thu, 01-Jan-70 00:00:01 GMT"+((this.path==null)?"":("; path="+this.path))+((this.domain==null)?"":("; domain="+this.domain))+((this.secure==true)?"; secure":"")}});Ext.DataView=Ext.extend(Ext.BoxComponent,{selectedClass:"x-view-selected",emptyText:"",deferEmptyText:true,trackOver:false,last:false,initComponent:function(){Ext.DataView.superclass.initComponent.call(this);if(typeof this.tpl=="string"||Ext.isArray(this.tpl)){this.tpl=new Ext.XTemplate(this.tpl)}this.addEvents("beforeclick","click","mouseenter","mouseleave","containerclick","dblclick","contextmenu","containercontextmenu","selectionchange","beforeselect");this.all=new Ext.CompositeElementLite();this.selected=new Ext.CompositeElementLite()},afterRender:function(){Ext.DataView.superclass.afterRender.call(this);this.mon(this.getTemplateTarget(),{click:this.onClick,dblclick:this.onDblClick,contextmenu:this.onContextMenu,scope:this});if(this.overClass||this.trackOver){this.mon(this.getTemplateTarget(),{mouseover:this.onMouseOver,mouseout:this.onMouseOut,scope:this})}if(this.store){this.bindStore(this.store,true)}},refresh:function(){this.clearSelections(false,true);var b=this.getTemplateTarget();b.update("");var a=this.store.getRange();if(a.length<1){if(!this.deferEmptyText||this.hasSkippedEmptyText){b.update(this.emptyText)}this.all.clear()}else{this.tpl.overwrite(b,this.collectData(a,0));this.all.fill(Ext.query(this.itemSelector,b.dom));this.updateIndexes(0)}this.hasSkippedEmptyText=true},getTemplateTarget:function(){return this.el},prepareData:function(a){return a},collectData:function(b,g){var e=[];for(var d=0,a=b.length;d<a;d++){e[e.length]=this.prepareData(b[d].data,g+d,b[d])}return e},bufferRender:function(a){var b=document.createElement("div");this.tpl.overwrite(b,this.collectData(a));return Ext.query(this.itemSelector,b)},onUpdate:function(h,a){var b=this.store.indexOf(a);var g=this.isSelected(b);var d=this.all.elements[b];var e=this.bufferRender([a],b)[0];this.all.replaceElement(b,e,true);if(g){this.selected.replaceElement(d,e);this.all.item(b).addClass(this.selectedClass)}this.updateIndexes(b,b)},onAdd:function(h,e,g){if(this.all.getCount()==0){this.refresh();return}var d=this.bufferRender(e,g),j,b=this.all.elements;if(g<this.all.getCount()){j=this.all.item(g).insertSibling(d,"before",true);b.splice.apply(b,[g,0].concat(d))}else{j=this.all.last().insertSibling(d,"after",true);b.push.apply(b,d)}this.updateIndexes(g)},onRemove:function(d,a,b){this.deselect(b);this.all.removeElement(b,true);this.updateIndexes(b);if(this.store.getCount()==0){this.refresh()}},refreshNode:function(a){this.onUpdate(this.store,this.store.getAt(a))},updateIndexes:function(e,d){var b=this.all.elements;e=e||0;d=d||((d===0)?0:(b.length-1));for(var a=e;a<=d;a++){b[a].viewIndex=a}},getStore:function(){return this.store},bindStore:function(a,b){if(!b&&this.store){this.store.un("beforeload",this.onBeforeLoad,this);this.store.un("datachanged",this.refresh,this);this.store.un("add",this.onAdd,this);this.store.un("remove",this.onRemove,this);this.store.un("update",this.onUpdate,this);this.store.un("clear",this.refresh,this);if(a!==this.store&&this.store.autoDestroy){this.store.destroy()}}if(a){a=Ext.StoreMgr.lookup(a);a.on("beforeload",this.onBeforeLoad,this);a.on("datachanged",this.refresh,this);a.on("add",this.onAdd,this);a.on("remove",this.onRemove,this);a.on("update",this.onUpdate,this);a.on("clear",this.refresh,this)}this.store=a;if(a){this.refresh()}},findItemFromChild:function(a){return Ext.fly(a).findParent(this.itemSelector,this.getTemplateTarget())},onClick:function(d){var b=d.getTarget(this.itemSelector,this.getTemplateTarget());if(b){var a=this.indexOf(b);if(this.onItemClick(b,a,d)!==false){this.fireEvent("click",this,a,b,d)}}else{if(this.fireEvent("containerclick",this,d)!==false){this.onContainerClick(d)}}},onContainerClick:function(a){this.clearSelections()},onContextMenu:function(b){var a=b.getTarget(this.itemSelector,this.getTemplateTarget());if(a){this.fireEvent("contextmenu",this,this.indexOf(a),a,b)}else{this.fireEvent("containercontextmenu",this,b)}},onDblClick:function(b){var a=b.getTarget(this.itemSelector,this.getTemplateTarget());if(a){this.fireEvent("dblclick",this,this.indexOf(a),a,b)}},onMouseOver:function(b){var a=b.getTarget(this.itemSelector,this.getTemplateTarget());if(a&&a!==this.lastItem){this.lastItem=a;Ext.fly(a).addClass(this.overClass);this.fireEvent("mouseenter",this,this.indexOf(a),a,b)}},onMouseOut:function(a){if(this.lastItem){if(!a.within(this.lastItem,true,true)){Ext.fly(this.lastItem).removeClass(this.overClass);this.fireEvent("mouseleave",this,this.indexOf(this.lastItem),this.lastItem,a);delete this.lastItem}}},onItemClick:function(b,a,d){if(this.fireEvent("beforeclick",this,a,b,d)===false){return false}if(this.multiSelect){this.doMultiSelection(b,a,d);d.preventDefault()}else{if(this.singleSelect){this.doSingleSelection(b,a,d);d.preventDefault()}}return true},doSingleSelection:function(b,a,d){if(d.ctrlKey&&this.isSelected(a)){this.deselect(a)}else{this.select(a,false)}},doMultiSelection:function(d,a,g){if(g.shiftKey&&this.last!==false){var b=this.last;this.selectRange(b,a,g.ctrlKey);this.last=b}else{if((g.ctrlKey||this.simpleSelect)&&this.isSelected(a)){this.deselect(a)}else{this.select(a,g.ctrlKey||g.shiftKey||this.simpleSelect)}}},getSelectionCount:function(){return this.selected.getCount()},getSelectedNodes:function(){return this.selected.elements},getSelectedIndexes:function(){var b=[],e=this.selected.elements;for(var d=0,a=e.length;d<a;d++){b.push(e[d].viewIndex)}return b},getSelectedRecords:function(){var e=[],d=this.selected.elements;for(var b=0,a=d.length;b<a;b++){e[e.length]=this.store.getAt(d[b].viewIndex)}return e},getRecords:function(b){var g=[],e=b;for(var d=0,a=e.length;d<a;d++){g[g.length]=this.store.getAt(e[d].viewIndex)}return g},getRecord:function(a){return this.store.getAt(a.viewIndex)},clearSelections:function(a,b){if((this.multiSelect||this.singleSelect)&&this.selected.getCount()>0){if(!b){this.selected.removeClass(this.selectedClass)}this.selected.clear();this.last=false;if(!a){this.fireEvent("selectionchange",this,this.selected.elements)}}},isSelected:function(a){return this.selected.contains(this.getNode(a))},deselect:function(a){if(this.isSelected(a)){a=this.getNode(a);this.selected.removeElement(a);if(this.last==a.viewIndex){this.last=false}Ext.fly(a).removeClass(this.selectedClass);this.fireEvent("selectionchange",this,this.selected.elements)}},select:function(e,h,b){if(Ext.isArray(e)){if(!h){this.clearSelections(true)}for(var d=0,a=e.length;d<a;d++){this.select(e[d],true,true)}if(!b){this.fireEvent("selectionchange",this,this.selected.elements)}}else{var g=this.getNode(e);if(!h){this.clearSelections(true)}if(g&&!this.isSelected(g)){if(this.fireEvent("beforeselect",this,g,this.selected.elements)!==false){Ext.fly(g).addClass(this.selectedClass);this.selected.add(g);this.last=g.viewIndex;if(!b){this.fireEvent("selectionchange",this,this.selected.elements)}}}}},selectRange:function(d,a,b){if(!b){this.clearSelections(true)}this.select(this.getNodes(d,a),true)},getNode:function(a){if(typeof a=="string"){return document.getElementById(a)}else{if(typeof a=="number"){return this.all.elements[a]}}return a},getNodes:function(g,a){var e=this.all.elements;g=g||0;a=typeof a=="undefined"?Math.max(e.length-1,0):a;var b=[],d;if(g<=a){for(d=g;d<=a&&e[d];d++){b.push(e[d])}}else{for(d=g;d>=a&&e[d];d--){b.push(e[d])}}return b},indexOf:function(a){a=this.getNode(a);if(typeof a.viewIndex=="number"){return a.viewIndex}return this.all.indexOf(a)},onBeforeLoad:function(){if(this.loadingText){this.clearSelections(false,true);this.getTemplateTarget().update('<div class="loading-indicator">'+this.loadingText+"</div>");this.all.clear()}},onDestroy:function(){Ext.DataView.superclass.onDestroy.call(this);this.bindStore(null)}});Ext.DataView.prototype.setStore=Ext.DataView.prototype.bindStore;Ext.reg("dataview",Ext.DataView);Ext.ListView=Ext.extend(Ext.DataView,{itemSelector:"dl",selectedClass:"x-list-selected",overClass:"x-list-over",scrollOffset:19,columnResize:true,columnSort:true,initComponent:function(){if(this.columnResize){this.colResizer=new Ext.ListView.ColumnResizer(this.colResizer);this.colResizer.init(this)}if(this.columnSort){this.colSorter=new Ext.ListView.Sorter(this.columnSort);this.colSorter.init(this)}if(!this.internalTpl){this.internalTpl=new Ext.XTemplate('<div class="x-list-header"><div class="x-list-header-inner">','<tpl for="columns">','<div style="width:{width}%;text-align:{align};"><em unselectable="on" id="',this.id,'-xlhd-{#}">',"{header}","</em></div>","</tpl>",'<div class="x-clear"></div>',"</div></div>",'<div class="x-list-body"><div class="x-list-body-inner">',"</div></div>")}if(!this.tpl){this.tpl=new Ext.XTemplate('<tpl for="rows">',"<dl>",'<tpl for="parent.columns">','<dt style="width:{width}%;text-align:{align};"><em unselectable="on">',"{[values.tpl.apply(parent)]}","</em></dt>","</tpl>",'<div class="x-clear"></div>',"</dl>","</tpl>")}var k=this.columns,g=0,h=0,l=k.length;for(var e=0;e<l;e++){var m=k[e];if(!m.tpl){m.tpl=new Ext.XTemplate("{"+m.dataIndex+"}")}else{if(typeof m.tpl=="string"){m.tpl=new Ext.XTemplate(m.tpl)}}m.align=m.align||"left";if(typeof m.width=="number"){m.width*=100;g+=m.width;h++}}if(h<l){var b=l-h;if(g<100){var a=((100-g)/b);for(var d=0;d<l;d++){var m=k[d];if(typeof m.width!="number"){m.width=a}}}}Ext.ListView.superclass.initComponent.call(this)},onRender:function(){Ext.ListView.superclass.onRender.apply(this,arguments);this.internalTpl.overwrite(this.el,{columns:this.columns});this.innerBody=Ext.get(this.el.dom.childNodes[1].firstChild);this.innerHd=Ext.get(this.el.dom.firstChild.firstChild);if(this.hideHeaders){this.el.dom.firstChild.style.display="none"}},getTemplateTarget:function(){return this.innerBody},collectData:function(){var a=Ext.ListView.superclass.collectData.apply(this,arguments);return{columns:this.columns,rows:a}},verifyInternalSize:function(){if(this.lastSize){this.onResize(this.lastSize.width,this.lastSize.height)}},onResize:function(b,e){var g=this.innerBody.dom;var j=this.innerHd.dom;if(!g){return}var d=g.parentNode;if(typeof b=="number"){var a=b-this.scrollOffset;if(this.reserveScrollOffset||((d.offsetWidth-d.clientWidth)>10)){g.style.width=a+"px";j.style.width=a+"px"}else{g.style.width=b+"px";j.style.width=b+"px";setTimeout(function(){if((d.offsetWidth-d.clientWidth)>10){g.style.width=a+"px";j.style.width=a+"px"}},10)}}if(typeof e=="number"){d.style.height=(e-j.parentNode.offsetHeight)+"px"}},updateIndexes:function(){Ext.ListView.superclass.updateIndexes.apply(this,arguments);this.verifyInternalSize()},findHeaderIndex:function(e){e=e.dom||e;var a=e.parentNode,d=a.parentNode.childNodes;for(var b=0,g;g=d[b];b++){if(g==a){return b}}return-1},setHdWidths:function(){var d=this.innerHd.dom.getElementsByTagName("div");for(var b=0,e=this.columns,a=e.length;b<a;b++){d[b].style.width=e[b].width+"%"}}});Ext.reg("listview",Ext.ListView);Ext.ListView.ColumnResizer=Ext.extend(Ext.util.Observable,{minPct:0.05,constructor:function(a){Ext.apply(this,a);Ext.ListView.ColumnResizer.superclass.constructor.call(this)},init:function(a){this.view=a;a.on("render",this.initEvents,this)},initEvents:function(a){a.mon(a.innerHd,"mousemove",this.handleHdMove,this);this.tracker=new Ext.dd.DragTracker({onBeforeStart:this.onBeforeStart.createDelegate(this),onStart:this.onStart.createDelegate(this),onDrag:this.onDrag.createDelegate(this),onEnd:this.onEnd.createDelegate(this),tolerance:3,autoStart:300});this.tracker.initEl(a.innerHd);a.on("beforedestroy",this.tracker.destroy,this.tracker)},handleHdMove:function(l,h){var b=5;var a=l.getPageX();var k=l.getTarget("em",3,true);if(k){var j=k.getRegion();var g=k.dom.style;var d=k.dom.parentNode;if(a-j.left<=b&&d!=d.parentNode.firstChild){this.activeHd=Ext.get(d.previousSibling.firstChild);g.cursor=Ext.isWebKit?"e-resize":"col-resize"}else{if(j.right-a<=b&&d!=d.parentNode.lastChild.previousSibling){this.activeHd=k;g.cursor=Ext.isWebKit?"w-resize":"col-resize"}else{delete this.activeHd;g.cursor=""}}}},onBeforeStart:function(a){this.dragHd=this.activeHd;return!!this.dragHd},onStart:function(d){this.view.disableHeaders=true;this.proxy=this.view.el.createChild({cls:"x-list-resizer"});this.proxy.setHeight(this.view.el.getHeight());var a=this.tracker.getXY()[0];var b=this.view.innerHd.getWidth();this.hdX=this.dragHd.getX();this.hdIndex=this.view.findHeaderIndex(this.dragHd);this.proxy.setX(this.hdX);this.proxy.setWidth(a-this.hdX);this.minWidth=b*this.minPct;this.maxWidth=b-(this.minWidth*(this.view.columns.length-1-this.hdIndex))},onDrag:function(b){var a=this.tracker.getXY()[0];this.proxy.setWidth((a-this.hdX).constrain(this.minWidth,this.maxWidth))},onEnd:function(m){var k=this.proxy.getWidth();this.proxy.remove();var j=this.hdIndex;var p=this.view,h=p.columns,l=h.length;var r=this.view.innerHd.getWidth(),g=this.minPct*100;var s=Math.ceil((k*100)/r);var q=h[j].width-s;var o=Math.floor(q/(l-1-j));var n=q-(o*(l-1-j));for(var d=j+1;d<l;d++){var b=h[d].width+o;var a=Math.max(g,b);if(b!=a){n+=b-a}h[d].width=a}h[j].width=s;h[j+1].width+=n;delete this.dragHd;this.view.setHdWidths();this.view.refresh();setTimeout(function(){p.disableHeaders=false},100)}});Ext.ListView.Sorter=Ext.extend(Ext.util.Observable,{sortClasses:["sort-asc","sort-desc"],constructor:function(a){Ext.apply(this,a);Ext.ListView.Sorter.superclass.constructor.call(this)},init:function(a){this.view=a;a.on("render",this.initEvents,this)},initEvents:function(a){a.mon(a.innerHd,"click",this.onHdClick,this);a.innerHd.setStyle("cursor","pointer");a.mon(a.store,"datachanged",this.updateSortState,this);this.updateSortState.defer(10,this,[a.store])},updateSortState:function(d){var h=d.getSortState();if(!h){return}this.sortState=h;var g=this.view.columns,j=-1;for(var e=0,a=g.length;e<a;e++){if(g[e].dataIndex==h.field){j=e;break}}if(j!=-1){var b=h.direction;this.updateSortIcon(j,b)}},updateSortIcon:function(b,a){var e=this.sortClasses;var d=this.view.innerHd.select("em").removeClass(e);d.item(b).addClass(e[a=="DESC"?1:0])},onHdClick:function(d){var b=d.getTarget("em",3);if(b&&!this.view.disableHeaders){var a=this.view.findHeaderIndex(b);this.view.store.sort(this.view.columns[a].dataIndex)}}});Ext.ColorPalette=function(a){Ext.ColorPalette.superclass.constructor.call(this,a);this.addEvents("select");if(this.handler){this.on("select",this.handler,this.scope,true)}};Ext.extend(Ext.ColorPalette,Ext.Component,{itemCls:"x-color-palette",value:null,clickEvent:"click",ctype:"Ext.ColorPalette",allowReselect:false,colors:["000000","993300","333300","003300","003366","000080","333399","333333","800000","FF6600","808000","008000","008080","0000FF","666699","808080","FF0000","FF9900","99CC00","339966","33CCCC","3366FF","800080","969696","FF00FF","FFCC00","FFFF00","00FF00","00FFFF","00CCFF","993366","C0C0C0","FF99CC","FFCC99","FFFF99","CCFFCC","CCFFFF","99CCFF","CC99FF","FFFFFF"],onRender:function(b,a){var d=this.tpl||new Ext.XTemplate('<tpl for="."><a href="#" class="color-{.}" hidefocus="on"><em><span style="background:#{.}" unselectable="on">&#160;</span></em></a></tpl>');var e=document.createElement("div");e.id=this.getId();e.className=this.itemCls;d.overwrite(e,this.colors);b.dom.insertBefore(e,a);this.el=Ext.get(e);this.mon(this.el,this.clickEvent,this.handleClick,this,{delegate:"a"});if(this.clickEvent!="click"){this.mon(this.el,"click",Ext.emptyFn,this,{delegate:"a",preventDefault:true})}},afterRender:function(){Ext.ColorPalette.superclass.afterRender.call(this);if(this.value){var a=this.value;this.value=null;this.select(a)}},handleClick:function(b,a){b.preventDefault();if(!this.disabled){var d=a.className.match(/(?:^|\s)color-(.{6})(?:\s|$)/)[1];this.select(d.toUpperCase())}},select:function(a){a=a.replace("#","");if(a!=this.value||this.allowReselect){var b=this.el;if(this.value){b.child("a.color-"+this.value).removeClass("x-color-palette-sel")}b.child("a.color-"+a).addClass("x-color-palette-sel");this.value=a;this.fireEvent("select",this,a)}}});Ext.reg("colorpalette",Ext.ColorPalette);Ext.DatePicker=Ext.extend(Ext.BoxComponent,{todayText:"Today",okText:"&#160;OK&#160;",cancelText:"Cancel",todayTip:"{0} (Spacebar)",minText:"This date is before the minimum date",maxText:"This date is after the maximum date",format:"m/d/y",disabledDaysText:"Disabled",disabledDatesText:"Disabled",monthNames:Date.monthNames,dayNames:Date.dayNames,nextText:"Next Month (Control+Right)",prevText:"Previous Month (Control+Left)",monthYearText:"Choose a month (Control+Up/Down to move years)",startDay:0,showToday:true,initComponent:function(){Ext.DatePicker.superclass.initComponent.call(this);this.value=this.value?this.value.clearTime():new Date().clearTime();this.addEvents("select");if(this.handler){this.on("select",this.handler,this.scope||this)}this.initDisabledDays()},initDisabledDays:function(){if(!this.disabledDatesRE&&this.disabledDates){var a=this.disabledDates;var d="(?:";for(var b=0;b<a.length;b++){d+=a[b];if(b!=a.length-1){d+="|"}}this.disabledDatesRE=new RegExp(d+")")}},setDisabledDates:function(a){if(Ext.isArray(a)){this.disabledDates=a;this.disabledDatesRE=null}else{this.disabledDatesRE=a}this.initDisabledDays();this.update(this.value,true)},setDisabledDays:function(a){this.disabledDays=a;this.update(this.value,true)},setMinDate:function(a){this.minDate=a;this.update(this.value,true)},setMaxDate:function(a){this.maxDate=a;this.update(this.value,true)},setValue:function(b){var a=this.value;this.value=b.clearTime(true);if(this.el){this.update(this.value)}},getValue:function(){return this.value},focus:function(){if(this.el){this.update(this.activeDate)}},onRender:function(a,j){var e=['<table cellspacing="0">','<tr><td class="x-date-left"><a href="#" title="',this.prevText,'">&#160;</a></td><td class="x-date-middle" align="center"></td><td class="x-date-right"><a href="#" title="',this.nextText,'">&#160;</a></td></tr>','<tr><td colspan="3"><table class="x-date-inner" cellspacing="0"><thead><tr>'];var h=this.dayNames;for(var g=0;g<7;g++){var k=this.startDay+g;if(k>6){k=k-7}e.push("<th><span>",h[k].substr(0,1),"</span></th>")}e[e.length]="</tr></thead><tbody><tr>";for(var g=0;g<42;g++){if(g%7==0&&g!=0){e[e.length]="</tr><tr>"}e[e.length]='<td><a href="#" hidefocus="on" class="x-date-date" tabIndex="1"><em><span></span></em></a></td>'}e.push("</tr></tbody></table></td></tr>",this.showToday?'<tr><td colspan="3" class="x-date-bottom" align="center"></td></tr>':"",'</table><div class="x-date-mp"></div>');var b=document.createElement("div");b.className="x-date-picker";b.innerHTML=e.join("");a.dom.insertBefore(b,j);this.el=Ext.get(b);this.eventEl=Ext.get(b.firstChild);new Ext.util.ClickRepeater(this.el.child("td.x-date-left a"),{handler:this.showPrevMonth,scope:this,preventDefault:true,stopDefault:true});new Ext.util.ClickRepeater(this.el.child("td.x-date-right a"),{handler:this.showNextMonth,scope:this,preventDefault:true,stopDefault:true});this.mon(this.eventEl,"mousewheel",this.handleMouseWheel,this);this.monthPicker=this.el.down("div.x-date-mp");this.monthPicker.enableDisplayMode("block");var n=new Ext.KeyNav(this.eventEl,{left:function(d){d.ctrlKey?this.showPrevMonth():this.update(this.activeDate.add("d",-1))},right:function(d){d.ctrlKey?this.showNextMonth():this.update(this.activeDate.add("d",1))},up:function(d){d.ctrlKey?this.showNextYear():this.update(this.activeDate.add("d",-7))},down:function(d){d.ctrlKey?this.showPrevYear():this.update(this.activeDate.add("d",7))},pageUp:function(d){this.showNextMonth()},pageDown:function(d){this.showPrevMonth()},enter:function(d){d.stopPropagation();return true},scope:this});this.mon(this.eventEl,"click",this.handleDateClick,this,{delegate:"a.x-date-date"});this.el.unselectable();this.cells=this.el.select("table.x-date-inner tbody td");this.textNodes=this.el.query("table.x-date-inner tbody span");this.mbtn=new Ext.Button({text:"&#160;",tooltip:this.monthYearText,renderTo:this.el.child("td.x-date-middle",true)});this.mon(this.mbtn,"click",this.showMonthPicker,this);this.mbtn.el.child("em").addClass("x-btn-arrow");if(this.showToday){this.todayKeyListener=this.eventEl.addKeyListener(Ext.EventObject.SPACE,this.selectToday,this);var l=(new Date()).dateFormat(this.format);this.todayBtn=new Ext.Button({renderTo:this.el.child("td.x-date-bottom",true),text:String.format(this.todayText,l),tooltip:String.format(this.todayTip,l),handler:this.selectToday,scope:this})}if(Ext.isIE){this.el.repaint()}this.update(this.value)},createMonthPicker:function(){if(!this.monthPicker.dom.firstChild){var a=['<table border="0" cellspacing="0">'];for(var b=0;b<6;b++){a.push('<tr><td class="x-date-mp-month"><a href="#">',this.monthNames[b].substr(0,3),"</a></td>",'<td class="x-date-mp-month x-date-mp-sep"><a href="#">',this.monthNames[b+6].substr(0,3),"</a></td>",b==0?'<td class="x-date-mp-ybtn" align="center"><a class="x-date-mp-prev"></a></td><td class="x-date-mp-ybtn" align="center"><a class="x-date-mp-next"></a></td></tr>':'<td class="x-date-mp-year"><a href="#"></a></td><td class="x-date-mp-year"><a href="#"></a></td></tr>')}a.push('<tr class="x-date-mp-btns"><td colspan="4"><button type="button" class="x-date-mp-ok">',this.okText,'</button><button type="button" class="x-date-mp-cancel">',this.cancelText,"</button></td></tr>","</table>");this.monthPicker.update(a.join(""));this.mon(this.monthPicker,"click",this.onMonthClick,this);this.mon(this.monthPicker,"dblclick",this.onMonthDblClick,this);this.mpMonths=this.monthPicker.select("td.x-date-mp-month");this.mpYears=this.monthPicker.select("td.x-date-mp-year");this.mpMonths.each(function(d,e,g){g+=1;if((g%2)==0){d.dom.xmonth=5+Math.round(g*0.5)}else{d.dom.xmonth=Math.round((g-1)*0.5)}})}},showMonthPicker:function(){this.createMonthPicker();var a=this.el.getSize();this.monthPicker.setSize(a);this.monthPicker.child("table").setSize(a);this.mpSelMonth=(this.activeDate||this.value).getMonth();this.updateMPMonth(this.mpSelMonth);this.mpSelYear=(this.activeDate||this.value).getFullYear();this.updateMPYear(this.mpSelYear);this.monthPicker.slideIn("t",{duration:0.2})},updateMPYear:function(g){this.mpyear=g;var d=this.mpYears.elements;for(var b=1;b<=10;b++){var e=d[b-1],a;if((b%2)==0){a=g+Math.round(b*0.5);e.firstChild.innerHTML=a;e.xyear=a}else{a=g-(5-Math.round(b*0.5));e.firstChild.innerHTML=a;e.xyear=a}this.mpYears.item(b-1)[a==this.mpSelYear?"addClass":"removeClass"]("x-date-mp-sel")}},updateMPMonth:function(a){this.mpMonths.each(function(b,d,e){b[b.dom.xmonth==a?"addClass":"removeClass"]("x-date-mp-sel")})},selectMPMonth:function(a){},onMonthClick:function(h,b){h.stopEvent();var g=new Ext.Element(b),a;if(g.is("button.x-date-mp-cancel")){this.hideMonthPicker()}else{if(g.is("button.x-date-mp-ok")){var j=new Date(this.mpSelYear,this.mpSelMonth,(this.activeDate||this.value).getDate());if(j.getMonth()!=this.mpSelMonth){j=new Date(this.mpSelYear,this.mpSelMonth,1).getLastDateOfMonth()}this.update(j);this.hideMonthPicker()}else{if(a=g.up("td.x-date-mp-month",2)){this.mpMonths.removeClass("x-date-mp-sel");a.addClass("x-date-mp-sel");this.mpSelMonth=a.dom.xmonth}else{if(a=g.up("td.x-date-mp-year",2)){this.mpYears.removeClass("x-date-mp-sel");a.addClass("x-date-mp-sel");this.mpSelYear=a.dom.xyear}else{if(g.is("a.x-date-mp-prev")){this.updateMPYear(this.mpyear-10)}else{if(g.is("a.x-date-mp-next")){this.updateMPYear(this.mpyear+10)}}}}}}},onMonthDblClick:function(g,b){g.stopEvent();var d=new Ext.Element(b),a;if(a=d.up("td.x-date-mp-month",2)){this.update(new Date(this.mpSelYear,a.dom.xmonth,(this.activeDate||this.value).getDate()));this.hideMonthPicker()}else{if(a=d.up("td.x-date-mp-year",2)){this.update(new Date(a.dom.xyear,this.mpSelMonth,(this.activeDate||this.value).getDate()));this.hideMonthPicker()}}},hideMonthPicker:function(a){if(this.monthPicker){if(a===true){this.monthPicker.hide()}else{this.monthPicker.slideOut("t",{duration:0.2})}}},showPrevMonth:function(a){this.update(this.activeDate.add("mo",-1))},showNextMonth:function(a){this.update(this.activeDate.add("mo",1))},showPrevYear:function(){this.update(this.activeDate.add("y",-1))},showNextYear:function(){this.update(this.activeDate.add("y",1))},handleMouseWheel:function(a){var b=a.getWheelDelta();if(b>0){this.showPrevMonth();a.stopEvent()}else{if(b<0){this.showNextMonth();a.stopEvent()}}},handleDateClick:function(b,a){b.stopEvent();if(a.dateValue&&!Ext.fly(a.parentNode).hasClass("x-date-disabled")){this.setValue(new Date(a.dateValue));this.fireEvent("select",this,this.value)}},selectToday:function(){if(this.todayBtn&&!this.todayBtn.disabled){this.setValue(new Date().clearTime());this.fireEvent("select",this,this.value)}},update:function(I,C){var a=this.activeDate;this.activeDate=I;if(!C&&a&&this.el){var p=I.getTime();if(a.getMonth()==I.getMonth()&&a.getFullYear()==I.getFullYear()){this.cells.removeClass("x-date-selected");this.cells.each(function(d){if(d.dom.firstChild.dateValue==p){d.addClass("x-date-selected");setTimeout(function(){try{d.dom.firstChild.focus()}catch(t){}},50);return false}});return}}var l=I.getDaysInMonth();var q=I.getFirstDateOfMonth();var h=q.getDay()-this.startDay;if(h<=this.startDay){h+=7}var D=I.add("mo",-1);var j=D.getDaysInMonth()-h;var g=this.cells.elements;var r=this.textNodes;l+=h;var z=86400000;var F=(new Date(D.getFullYear(),D.getMonth(),j)).clearTime();var E=new Date().clearTime().getTime();var x=I.clearTime().getTime();var u=this.minDate?this.minDate.clearTime():Number.NEGATIVE_INFINITY;var A=this.maxDate?this.maxDate.clearTime():Number.POSITIVE_INFINITY;var H=this.disabledDatesRE;var s=this.disabledDatesText;var K=this.disabledDays?this.disabledDays.join(""):false;var G=this.disabledDaysText;var B=this.format;if(this.showToday){var n=new Date().clearTime();var e=(n<u||n>A||(H&&B&&H.test(n.dateFormat(B)))||(K&&K.indexOf(n.getDay())!=-1));this.todayBtn.setDisabled(e);this.todayKeyListener[e?"disable":"enable"]()}var m=function(M,d){d.title="";var w=F.getTime();d.firstChild.dateValue=w;if(w==E){d.className+=" x-date-today";d.title=M.todayText}if(w==x){d.className+=" x-date-selected";setTimeout(function(){try{d.firstChild.focus()}catch(t){}},50)}if(w<u){d.className=" x-date-disabled";d.title=M.minText;return}if(w>A){d.className=" x-date-disabled";d.title=M.maxText;return}if(K){if(K.indexOf(F.getDay())!=-1){d.title=G;d.className=" x-date-disabled"}}if(H&&B){var L=F.dateFormat(B);if(H.test(L)){d.title=s.replace("%0",L);d.className=" x-date-disabled"}}};var y=0;for(;y<h;y++){r[y].innerHTML=(++j);F.setDate(F.getDate()+1);g[y].className="x-date-prevday";m(this,g[y])}for(;y<l;y++){var b=y-h+1;r[y].innerHTML=(b);F.setDate(F.getDate()+1);g[y].className="x-date-active";m(this,g[y])}var J=0;for(;y<42;y++){r[y].innerHTML=(++J);F.setDate(F.getDate()+1);g[y].className="x-date-nextday";m(this,g[y])}this.mbtn.setText(this.monthNames[I.getMonth()]+" "+I.getFullYear());if(!this.internalRender){var k=this.el.dom.firstChild;var o=k.offsetWidth;this.el.setWidth(o+this.el.getBorderWidth("lr"));Ext.fly(k).setWidth(o);this.internalRender=true;if(Ext.isOpera&&!this.secondPass){k.rows[0].cells[1].style.width=(o-(k.rows[0].cells[0].offsetWidth+k.rows[0].cells[2].offsetWidth))+"px";this.secondPass=true;this.update.defer(10,this,[I])}}},beforeDestroy:function(){if(this.rendered){Ext.destroy(this.leftClickRpt,this.rightClickRpt,this.monthPicker,this.eventEl,this.mbtn,this.todayBtn)}}});Ext.reg("datepicker",Ext.DatePicker);Ext.TabPanel=Ext.extend(Ext.Panel,{monitorResize:true,deferredRender:true,tabWidth:120,minTabWidth:30,resizeTabs:false,enableTabScroll:false,scrollIncrement:0,scrollRepeatInterval:400,scrollDuration:0.35,animScroll:true,tabPosition:"top",baseCls:"x-tab-panel",autoTabs:false,autoTabSelector:"div.x-tab",activeTab:null,tabMargin:2,plain:false,wheelIncrement:20,idDelimiter:"__",itemCls:"x-tab-item",elements:"body",headerAsText:false,frame:false,hideBorders:true,initComponent:function(){this.frame=false;Ext.TabPanel.superclass.initComponent.call(this);this.addEvents("beforetabchange","tabchange","contextmenu");this.setLayout(new Ext.layout.CardLayout(Ext.apply({layoutOnCardChange:this.layoutOnTabChange,deferredRender:this.deferredRender},this.layoutConfig)));if(this.tabPosition=="top"){this.elements+=",header";this.stripTarget="header"}else{this.elements+=",footer";this.stripTarget="footer"}if(!this.stack){this.stack=Ext.TabPanel.AccessStack()}this.initItems()},onRender:function(d,a){Ext.TabPanel.superclass.onRender.call(this,d,a);if(this.plain){var h=this.tabPosition=="top"?"header":"footer";this[h].addClass("x-tab-panel-"+h+"-plain")}var b=this[this.stripTarget];this.stripWrap=b.createChild({cls:"x-tab-strip-wrap",cn:{tag:"ul",cls:"x-tab-strip x-tab-strip-"+this.tabPosition}});var g=(this.tabPosition=="bottom"?this.stripWrap:null);this.stripSpacer=b.createChild({cls:"x-tab-strip-spacer"},g);this.strip=new Ext.Element(this.stripWrap.dom.firstChild);this.edge=this.strip.createChild({tag:"li",cls:"x-tab-edge"});this.strip.createChild({cls:"x-clear"});this.body.addClass("x-tab-panel-body-"+this.tabPosition);if(!this.itemTpl){var e=new Ext.Template('<li class="{cls}" id="{id}"><a class="x-tab-strip-close" onclick="return false;"></a>','<a class="x-tab-right" href="#" onclick="return false;"><em class="x-tab-left">','<span class="x-tab-strip-inner"><span class="x-tab-strip-text {iconCls}">{text}</span></span>',"</em></a></li>");e.disableFormats=true;e.compile();Ext.TabPanel.prototype.itemTpl=e}this.items.each(this.initTab,this)},afterRender:function(){Ext.TabPanel.superclass.afterRender.call(this);if(this.autoTabs){this.readTabs(false)}if(this.activeTab!==undefined){var a=(typeof this.activeTab=="object")?this.activeTab:this.items.get(this.activeTab);delete this.activeTab;this.setActiveTab(a)}},initEvents:function(){Ext.TabPanel.superclass.initEvents.call(this);this.on("add",this.onAdd,this,{target:this});this.on("remove",this.onRemove,this,{target:this});this.mon(this.strip,"mousedown",this.onStripMouseDown,this);this.mon(this.strip,"contextmenu",this.onStripContextMenu,this);if(this.enableTabScroll){this.mon(this.strip,"mousewheel",this.onStripContextMenu,this)}},findTargets:function(d){var b=null;var a=d.getTarget("li",this.strip);if(a){b=this.getComponent(a.id.split(this.idDelimiter)[1]);if(b.disabled){return{close:null,item:null,el:null}}}return{close:d.getTarget(".x-tab-strip-close",this.strip),item:b,el:a}},onStripMouseDown:function(b){if(b.button!=0){return}b.preventDefault();var a=this.findTargets(b);if(a.close){if(a.item.fireEvent("beforeclose",a.item)!==false){a.item.fireEvent("close",a.item);this.remove(a.item)}return}if(a.item&&a.item!=this.activeTab){this.setActiveTab(a.item)}},onStripContextMenu:function(b){b.preventDefault();var a=this.findTargets(b);if(a.item){this.fireEvent("contextmenu",this,a.item,b)}},readTabs:function(e){if(e===true){this.items.each(function(j){this.remove(j)},this)}var d=this.el.query(this.autoTabSelector);for(var b=0,a=d.length;b<a;b++){var g=d[b];var h=g.getAttribute("title");g.removeAttribute("title");this.add({title:h,contentEl:g})}},initTab:function(d,a){var e=this.strip.dom.childNodes[a];var g=this.getTemplateArgs(d);var b=e?this.itemTpl.insertBefore(e,g):this.itemTpl.append(this.strip,g);Ext.fly(b).addClassOnOver("x-tab-strip-over");if(d.tabTip){Ext.fly(b).child("span.x-tab-strip-text",true).qtip=d.tabTip}d.tabEl=b;d.on("disable",this.onItemDisabled,this);d.on("enable",this.onItemEnabled,this);d.on("titlechange",this.onItemTitleChanged,this);d.on("iconchange",this.onItemIconChanged,this);d.on("beforeshow",this.onBeforeShowItem,this)},getTemplateArgs:function(b){var a=b.closable?"x-tab-strip-closable":"";if(b.disabled){a+=" x-item-disabled"}if(b.iconCls){a+=" x-tab-with-icon"}if(b.tabCls){a+=" "+b.tabCls}return{id:this.id+this.idDelimiter+b.getItemId(),text:b.title,cls:a,iconCls:b.iconCls||""}},onAdd:function(d,b,a){this.initTab(b,a);if(this.items.getCount()==1){this.syncSize()}this.delegateUpdates()},onBeforeAdd:function(b){var a=b.events?(this.items.containsKey(b.getItemId())?b:null):this.items.get(b);if(a){this.setActiveTab(b);return false}Ext.TabPanel.superclass.onBeforeAdd.apply(this,arguments);var d=b.elements;b.elements=d?d.replace(",header",""):d;b.border=(b.border===true)},onRemove:function(d,b){Ext.destroy(Ext.get(this.getTabEl(b)));this.stack.remove(b);b.un("disable",this.onItemDisabled,this);b.un("enable",this.onItemEnabled,this);b.un("titlechange",this.onItemTitleChanged,this);b.un("iconchange",this.onItemIconChanged,this);b.un("beforeshow",this.onBeforeShowItem,this);if(b==this.activeTab){var a=this.stack.next();if(a){this.setActiveTab(a)}else{if(this.items.getCount()>0){this.setActiveTab(0)}else{this.activeTab=null}}}this.delegateUpdates()},onBeforeShowItem:function(a){if(a!=this.activeTab){this.setActiveTab(a);return false}},onItemDisabled:function(b){var a=this.getTabEl(b);if(a){Ext.fly(a).addClass("x-item-disabled")}this.stack.remove(b)},onItemEnabled:function(b){var a=this.getTabEl(b);if(a){Ext.fly(a).removeClass("x-item-disabled")}},onItemTitleChanged:function(b){var a=this.getTabEl(b);if(a){Ext.fly(a).child("span.x-tab-strip-text",true).innerHTML=b.title}},onItemIconChanged:function(e,a,d){var b=this.getTabEl(e);if(b){Ext.fly(b).child("span.x-tab-strip-text").replaceClass(d,a)}},getTabEl:function(a){var b=(typeof a==="number")?this.items.items[a].getItemId():a.getItemId();return document.getElementById(this.id+this.idDelimiter+b)},onResize:function(){Ext.TabPanel.superclass.onResize.apply(this,arguments);this.delegateUpdates()},beginUpdate:function(){this.suspendUpdates=true},endUpdate:function(){this.suspendUpdates=false;this.delegateUpdates()},hideTabStripItem:function(b){b=this.getComponent(b);var a=this.getTabEl(b);if(a){a.style.display="none";this.delegateUpdates()}this.stack.remove(b)},unhideTabStripItem:function(b){b=this.getComponent(b);var a=this.getTabEl(b);if(a){a.style.display="";this.delegateUpdates()}},delegateUpdates:function(){if(this.suspendUpdates){return}if(this.resizeTabs&&this.rendered){this.autoSizeTabs()}if(this.enableTabScroll&&this.rendered){this.autoScrollTabs()}},autoSizeTabs:function(){var j=this.items.length;var b=this.tabPosition!="bottom"?"header":"footer";var d=this[b].dom.offsetWidth;var a=this[b].dom.clientWidth;if(!this.resizeTabs||j<1||!a){return}var l=Math.max(Math.min(Math.floor((a-4)/j)-this.tabMargin,this.tabWidth),this.minTabWidth);this.lastTabWidth=l;var n=this.strip.query("li:not([className^=x-tab-edge])");for(var g=0,k=n.length;g<k;g++){var m=n[g];var o=Ext.fly(m).child(".x-tab-strip-inner",true);var h=m.offsetWidth;var e=o.offsetWidth;o.style.width=(l-(h-e))+"px"}},adjustBodyWidth:function(a){if(this.header){this.header.setWidth(a)}if(this.footer){this.footer.setWidth(a)}return a},setActiveTab:function(d){d=this.getComponent(d);if(!d||this.fireEvent("beforetabchange",this,d,this.activeTab)===false){return}if(!this.rendered){this.activeTab=d;return}if(this.activeTab!=d){if(this.activeTab){var a=this.getTabEl(this.activeTab);if(a){Ext.fly(a).removeClass("x-tab-strip-active")}this.activeTab.fireEvent("deactivate",this.activeTab)}var b=this.getTabEl(d);Ext.fly(b).addClass("x-tab-strip-active");this.activeTab=d;this.stack.add(d);this.layout.setActiveItem(d);if(this.scrolling){this.scrollToTab(d,this.animScroll)}d.fireEvent("activate",d);this.fireEvent("tabchange",this,d)}},getActiveTab:function(){return this.activeTab||null},getItem:function(a){return this.getComponent(a)},autoScrollTabs:function(){this.pos=this.tabPosition=="bottom"?this.footer:this.header;var j=this.items.length;var e=this.pos.dom.offsetWidth;var d=this.pos.dom.clientWidth;var h=this.stripWrap;var g=h.dom;var b=g.offsetWidth;var k=this.getScrollPos();var a=this.edge.getOffsetsTo(this.stripWrap)[0]+k;if(!this.enableTabScroll||j<1||b<20){return}if(a<=d){g.scrollLeft=0;h.setWidth(d);if(this.scrolling){this.scrolling=false;this.pos.removeClass("x-tab-scrolling");this.scrollLeft.hide();this.scrollRight.hide();if(Ext.isAir||Ext.isWebKit){g.style.marginLeft="";g.style.marginRight=""}}}else{if(!this.scrolling){this.pos.addClass("x-tab-scrolling");if(Ext.isAir||Ext.isWebKit){g.style.marginLeft="18px";g.style.marginRight="18px"}}d-=h.getMargins("lr");h.setWidth(d>20?d:20);if(!this.scrolling){if(!this.scrollLeft){this.createScrollers()}else{this.scrollLeft.show();this.scrollRight.show()}}this.scrolling=true;if(k>(a-d)){g.scrollLeft=a-d}else{this.scrollToTab(this.activeTab,false)}this.updateScrollButtons()}},createScrollers:function(){this.pos.addClass("x-tab-scrolling-"+this.tabPosition);var d=this.stripWrap.dom.offsetHeight;var a=this.pos.insertFirst({cls:"x-tab-scroller-left"});a.setHeight(d);a.addClassOnOver("x-tab-scroller-left-over");this.leftRepeater=new Ext.util.ClickRepeater(a,{interval:this.scrollRepeatInterval,handler:this.onScrollLeft,scope:this});this.scrollLeft=a;var b=this.pos.insertFirst({cls:"x-tab-scroller-right"});b.setHeight(d);b.addClassOnOver("x-tab-scroller-right-over");this.rightRepeater=new Ext.util.ClickRepeater(b,{interval:this.scrollRepeatInterval,handler:this.onScrollRight,scope:this});this.scrollRight=b},getScrollWidth:function(){return this.edge.getOffsetsTo(this.stripWrap)[0]+this.getScrollPos()},getScrollPos:function(){return parseInt(this.stripWrap.dom.scrollLeft,10)||0},getScrollArea:function(){return parseInt(this.stripWrap.dom.clientWidth,10)||0},getScrollAnim:function(){return{duration:this.scrollDuration,callback:this.updateScrollButtons,scope:this}},getScrollIncrement:function(){return this.scrollIncrement||(this.resizeTabs?this.lastTabWidth+2:100)},scrollToTab:function(g,a){if(!g){return}var d=this.getTabEl(g);var j=this.getScrollPos(),e=this.getScrollArea();var h=Ext.fly(d).getOffsetsTo(this.stripWrap)[0]+j;var b=h+d.offsetWidth;if(h<j){this.scrollTo(h,a)}else{if(b>(j+e)){this.scrollTo(b-e,a)}}},scrollTo:function(b,a){this.stripWrap.scrollTo("left",b,a?this.getScrollAnim():false);if(!a){this.updateScrollButtons()}},onWheel:function(h){var j=h.getWheelDelta()*this.wheelIncrement*-1;h.stopEvent();var k=this.getScrollPos();var g=k+j;var a=this.getScrollWidth()-this.getScrollArea();var b=Math.max(0,Math.min(a,g));if(b!=k){this.scrollTo(b,false)}},onScrollRight:function(){var a=this.getScrollWidth()-this.getScrollArea();var d=this.getScrollPos();var b=Math.min(a,d+this.getScrollIncrement());if(b!=d){this.scrollTo(b,this.animScroll)}},onScrollLeft:function(){var b=this.getScrollPos();var a=Math.max(0,b-this.getScrollIncrement());if(a!=b){this.scrollTo(a,this.animScroll)}},updateScrollButtons:function(){var a=this.getScrollPos();this.scrollLeft[a==0?"addClass":"removeClass"]("x-tab-scroller-left-disabled");this.scrollRight[a>=(this.getScrollWidth()-this.getScrollArea())?"addClass":"removeClass"]("x-tab-scroller-right-disabled")},beforeDestroy:function(){if(this.items){this.items.each(function(a){if(a&&a.tabEl){Ext.get(a.tabEl).removeAllListeners();a.tabEl=null}},this)}if(this.strip){this.strip.removeAllListeners()}Ext.TabPanel.superclass.beforeDestroy.apply(this)}});Ext.reg("tabpanel",Ext.TabPanel);Ext.TabPanel.prototype.activate=Ext.TabPanel.prototype.setActiveTab;Ext.TabPanel.AccessStack=function(){var a=[];return{add:function(b){a.push(b);if(a.length>10){a.shift()}},remove:function(g){var e=[];for(var d=0,b=a.length;d<b;d++){if(a[d]!=g){e.push(a[d])}}a=e},next:function(){return a.pop()}}};Ext.Button=Ext.extend(Ext.BoxComponent,{hidden:false,disabled:false,pressed:false,enableToggle:false,menuAlign:"tl-bl?",type:"button",menuClassTarget:"tr:nth(2)",clickEvent:"click",handleMouseEvents:true,tooltipType:"qtip",buttonSelector:"button:first-child",scale:"small",iconAlign:"left",arrowAlign:"right",initComponent:function(){Ext.Button.superclass.initComponent.call(this);this.addEvents("click","toggle","mouseover","mouseout","menushow","menuhide","menutriggerover","menutriggerout");if(this.menu){this.menu=Ext.menu.MenuMgr.get(this.menu)}if(typeof this.toggleGroup==="string"){this.enableToggle=true}},getTemplateArgs:function(){var a=(this.cls||"");a+=(this.iconCls||this.icon)?(this.text?" x-btn-text-icon":" x-btn-icon"):" x-btn-noicon";if(this.pressed){a+=" x-btn-pressed"}return[this.text||"&#160;",this.type,this.iconCls||"",a,"x-btn-"+this.scale+" x-btn-icon-"+this.scale+"-"+this.iconAlign,this.getMenuClass()]},getMenuClass:function(){return this.menu?(this.arrowAlign!="bottom"?"x-btn-arrow":"x-btn-arrow-bottom"):""},onRender:function(d,a){if(!this.template){if(!Ext.Button.buttonTemplate){Ext.Button.buttonTemplate=new Ext.Template('<table cellspacing="0" class="x-btn {3}"><tbody class="{4}">','<tr><td class="x-btn-tl"><i>&#160;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&#160;</i></td></tr>','<tr><td class="x-btn-ml"><i>&#160;</i></td><td class="x-btn-mc"><em class="{5}" unselectable="on"><button class="x-btn-text {2}" type="{1}">{0}</button></em></td><td class="x-btn-mr"><i>&#160;</i></td></tr>','<tr><td class="x-btn-bl"><i>&#160;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&#160;</i></td></tr>',"</tbody></table>");Ext.Button.buttonTemplate.compile()}this.template=Ext.Button.buttonTemplate}var b,g=this.getTemplateArgs();if(a){b=this.template.insertBefore(a,g,true)}else{b=this.template.append(d,g,true)}var e=this.btnEl=b.child(this.buttonSelector);this.mon(e,"focus",this.onFocus,this);this.mon(e,"blur",this.onBlur,this);this.initButtonEl(b,e);Ext.ButtonToggleMgr.register(this)},initButtonEl:function(b,d){this.el=b;if(this.id){this.el.dom.id=this.el.id=this.id}if(this.icon){d.setStyle("background-image","url("+this.icon+")")}if(this.tabIndex!==undefined){d.dom.tabIndex=this.tabIndex}if(this.tooltip){this.setTooltip(this.tooltip)}if(this.handleMouseEvents){this.mon(b,"mouseover",this.onMouseOver,this);this.mon(b,"mousedown",this.onMouseDown,this)}if(this.menu){this.mon(this.menu,"show",this.onMenuShow,this);this.mon(this.menu,"hide",this.onMenuHide,this)}if(this.repeat){var a=new Ext.util.ClickRepeater(b,typeof this.repeat=="object"?this.repeat:{});this.mon(a,"click",this.onClick,this)}this.mon(b,this.clickEvent,this.onClick,this)},afterRender:function(){Ext.Button.superclass.afterRender.call(this);if(Ext.isIE6){this.doAutoWidth.defer(1,this)}else{this.doAutoWidth()}},setIconClass:function(a){if(this.el){this.btnEl.replaceClass(this.iconCls,a)}this.iconCls=a;return this},setTooltip:function(a){if(Ext.isObject(a)){Ext.QuickTips.register(Ext.apply({target:this.btnEl.id},a))}else{this.btnEl.dom[this.tooltipType]=a}return this},beforeDestroy:function(){if(this.rendered){if(this.btnEl){if(typeof this.tooltip=="object"){Ext.QuickTips.unregister(this.btnEl)}}}Ext.destroy(this.menu)},onDestroy:function(){if(this.rendered){Ext.ButtonToggleMgr.unregister(this)}},doAutoWidth:function(){if(this.el&&this.text&&typeof this.width=="undefined"){this.el.setWidth("auto");if(Ext.isIE7&&Ext.isStrict){var a=this.btnEl;if(a&&a.getWidth()>20){a.clip();a.setWidth(Ext.util.TextMetrics.measure(a,this.text).width+a.getFrameWidth("lr"))}}if(this.minWidth){if(this.el.getWidth()<this.minWidth){this.el.setWidth(this.minWidth)}}}},setHandler:function(b,a){this.handler=b;this.scope=a;return this},setText:function(a){this.text=a;if(this.el){this.el.child("td.x-btn-mc "+this.buttonSelector).update(a)}this.doAutoWidth();return this},getText:function(){return this.text},toggle:function(b,a){b=b===undefined?!this.pressed:!!b;if(b!=this.pressed){this.el[b?"addClass":"removeClass"]("x-btn-pressed");this.pressed=b;if(!a){this.fireEvent("toggle",this,b);if(this.toggleHandler){this.toggleHandler.call(this.scope||this,this,b)}}}return this},focus:function(){this.btnEl.focus()},onDisable:function(){this.onDisableChange(true)},onEnable:function(){this.onDisableChange(false)},onDisableChange:function(a){if(this.el){if(!Ext.isIE6||!this.text){this.el[a?"addClass":"removeClass"](this.disabledClass)}this.el.dom.disabled=a}this.disabled=a},showMenu:function(){if(this.menu){this.menu.show(this.el,this.menuAlign)}return this},hideMenu:function(){if(this.menu){this.menu.hide()}return this},hasVisibleMenu:function(){return this.menu&&this.menu.isVisible()},onClick:function(a){if(a){a.preventDefault()}if(a.button!=0){return}if(!this.disabled){if(this.enableToggle&&(this.allowDepress!==false||!this.pressed)){this.toggle()}if(this.menu&&!this.menu.isVisible()&&!this.ignoreNextClick){this.showMenu()}this.fireEvent("click",this,a);if(this.handler){this.handler.call(this.scope||this,this,a)}}},isMenuTriggerOver:function(b,a){return this.menu&&!a},isMenuTriggerOut:function(b,a){return this.menu&&!a},onMouseOver:function(b){if(!this.disabled){var a=b.within(this.el,true);if(!a){this.el.addClass("x-btn-over");if(!this.monitoringMouseOver){Ext.getDoc().on("mouseover",this.monitorMouseOver,this);this.monitoringMouseOver=true}this.fireEvent("mouseover",this,b)}if(this.isMenuTriggerOver(b,a)){this.fireEvent("menutriggerover",this,this.menu,b)}}},monitorMouseOver:function(a){if(a.target!=this.el.dom&&!a.within(this.el)){if(this.monitoringMouseOver){Ext.getDoc().un("mouseover",this.monitorMouseOver,this);this.monitoringMouseOver=false}this.onMouseOut(a)}},onMouseOut:function(b){var a=b.within(this.el)&&b.target!=this.el.dom;this.el.removeClass("x-btn-over");this.fireEvent("mouseout",this,b);if(this.isMenuTriggerOut(b,a)){this.fireEvent("menutriggerout",this,this.menu,b)}},onFocus:function(a){if(!this.disabled){this.el.addClass("x-btn-focus")}},onBlur:function(a){this.el.removeClass("x-btn-focus")},getClickEl:function(b,a){return this.el},onMouseDown:function(a){if(!this.disabled&&a.button==0){this.getClickEl(a).addClass("x-btn-click");Ext.getDoc().on("mouseup",this.onMouseUp,this)}},onMouseUp:function(a){if(a.button==0){this.getClickEl(a,true).removeClass("x-btn-click");Ext.getDoc().un("mouseup",this.onMouseUp,this)}},onMenuShow:function(a){this.ignoreNextClick=0;this.el.addClass("x-btn-menu-active");this.fireEvent("menushow",this,this.menu)},onMenuHide:function(a){this.el.removeClass("x-btn-menu-active");this.ignoreNextClick=this.restoreClick.defer(250,this);this.fireEvent("menuhide",this,this.menu)},restoreClick:function(){this.ignoreNextClick=0}});Ext.reg("button",Ext.Button);Ext.ButtonToggleMgr=function(){var a={};function b(h,k){if(k){var j=a[h.toggleGroup];for(var e=0,d=j.length;e<d;e++){if(j[e]!=h){j[e].toggle(false)}}}}return{register:function(d){if(!d.toggleGroup){return}var e=a[d.toggleGroup];if(!e){e=a[d.toggleGroup]=[]}e.push(d);d.on("toggle",b)},unregister:function(d){if(!d.toggleGroup){return}var e=a[d.toggleGroup];if(e){e.remove(d);d.un("toggle",b)}},getPressed:function(j){var h=a[j];if(h){for(var e=0,d=h.length;e<d;e++){if(h[e].pressed===true){return h[e]}}}return null}}}();Ext.SplitButton=Ext.extend(Ext.Button,{arrowSelector:"em",split:true,initComponent:function(){Ext.SplitButton.superclass.initComponent.call(this);this.addEvents("arrowclick")},onRender:function(){Ext.SplitButton.superclass.onRender.apply(this,arguments);if(this.arrowTooltip){btn.child(this.arrowSelector).dom[this.tooltipType]=this.arrowTooltip}},setArrowHandler:function(b,a){this.arrowHandler=b;this.scope=a},getMenuClass:function(){return this.menu&&this.arrowAlign!="bottom"?"x-btn-split":"x-btn-split-bottom"},isClickOnArrow:function(a){return this.arrowAlign!="bottom"?a.getPageX()>this.el.child(this.buttonSelector).getRegion().right:a.getPageY()>this.el.child(this.buttonSelector).getRegion().bottom},onClick:function(b,a){b.preventDefault();if(!this.disabled){if(this.isClickOnArrow(b)){if(this.menu&&!this.menu.isVisible()&&!this.ignoreNextClick){this.showMenu()}this.fireEvent("arrowclick",this,b);if(this.arrowHandler){this.arrowHandler.call(this.scope||this,this,b)}}else{if(this.enableToggle){this.toggle()}this.fireEvent("click",this,b);if(this.handler){this.handler.call(this.scope||this,this,b)}}}},isMenuTriggerOver:function(a){return this.menu&&a.target.tagName=="em"},isMenuTriggerOut:function(b,a){return this.menu&&b.target.tagName!="em"}});Ext.reg("splitbutton",Ext.SplitButton);Ext.CycleButton=Ext.extend(Ext.SplitButton,{getItemText:function(a){if(a&&this.showText===true){var b="";if(this.prependText){b+=this.prependText}b+=a.text;return b}return undefined},setActiveItem:function(d,a){if(typeof d!="object"){d=this.menu.items.get(d)}if(d){if(!this.rendered){this.text=this.getItemText(d);this.iconCls=d.iconCls}else{var b=this.getItemText(d);if(b){this.setText(b)}this.setIconClass(d.iconCls)}this.activeItem=d;if(!d.checked){d.setChecked(true,true)}if(this.forceIcon){this.setIconClass(this.forceIcon)}if(!a){this.fireEvent("change",this,d)}}},getActiveItem:function(){return this.activeItem},initComponent:function(){this.addEvents("change");if(this.changeHandler){this.on("change",this.changeHandler,this.scope||this);delete this.changeHandler}this.itemCount=this.items.length;this.menu={cls:"x-cycle-menu",items:[]};var e;for(var b=0,a=this.itemCount;b<a;b++){var d=this.items[b];d.group=d.group||this.id;d.itemIndex=b;d.checkHandler=this.checkHandler;d.scope=this;d.checked=d.checked||false;this.menu.items.push(d);if(d.checked){e=d}}this.setActiveItem(e,true);Ext.CycleButton.superclass.initComponent.call(this);this.on("click",this.toggleSelected,this)},checkHandler:function(a,b){if(b){this.setActiveItem(a)}},toggleSelected:function(){this.menu.render();var d,a;for(var b=1;b<this.itemCount;b++){d=(this.activeItem.itemIndex+b)%this.itemCount;a=this.menu.items.itemAt(d);if(!a.disabled){a.setChecked(true);break}}}});Ext.reg("cycle",Ext.CycleButton);Ext.layout.ToolbarLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,triggerWidth:18,lastOverflow:false,noItemsMenuText:'<div class="x-toolbar-no-items">(None)</div>',onLayout:function(d,g){if(!this.leftTr){g.addClass("x-toolbar-layout-ct");g.insertHtml("beforeEnd",'<table cellspacing="0" class="x-toolbar-ct"><tbody><tr><td class="x-toolbar-left" align="left"><table cellspacing="0"><tbody><tr class="x-toolbar-left-row"></tr></tbody></table></td><td class="x-toolbar-right" align="right"><table cellspacing="0" class="x-toolbar-right-ct"><tbody><tr><td><table cellspacing="0"><tbody><tr class="x-toolbar-right-row"></tr></tbody></table></td><td><table cellspacing="0"><tbody><tr class="x-toolbar-extras-row"></tr></tbody></table></td></tr></tbody></td></tr></tbody></table>');this.leftTr=g.child("tr.x-toolbar-left-row",true);this.rightTr=g.child("tr.x-toolbar-right-row",true);this.extrasTr=g.child("tr.x-toolbar-extras-row",true)}var h=this.leftTr;var l=0;var j=d.items.items;for(var b=0,e=j.length,k;b<e;b++,l++){k=j[b];if(k.isFill){h=this.rightTr;l=-1}else{if(!k.rendered){k.render(this.insertCell(k,h,l))}else{if(!k.xtbHidden&&!this.isValidParent(k,h.childNodes[l])){var a=this.insertCell(k,h,l);a.appendChild(k.getDomPositionEl().dom);k.container=Ext.get(a)}}}}this.cleanup(this.leftTr);this.cleanup(this.rightTr);this.cleanup(this.extrasTr);this.fitToSize(g)},cleanup:function(b){var e=b.childNodes;for(var a=e.length-1,d;a>=0&&(d=e[a]);a--){if(!d.firstChild){b.removeChild(d)}}},insertCell:function(e,a,d){var b=document.createElement("td");b.className="x-toolbar-cell";a.insertBefore(b,a.childNodes[d]||null);return b},hideItem:function(b){var a=(this.hiddens=this.hiddens||[]);a.push(b);b.xtbHidden=true;b.xtbWidth=b.getDomPositionEl().dom.parentNode.offsetWidth;b.hide()},unhideItem:function(a){a.show();a.xtbHidden=false;this.hiddens.remove(a);if(this.hiddens.length<1){delete this.hiddens}},getItemWidth:function(a){return a.hidden?(a.xtbWidth||0):a.getDomPositionEl().dom.parentNode.offsetWidth},fitToSize:function(n){if(this.container.enableOverflow===false){return}var m=n.dom.clientWidth;var b=this.lastWidth||0;this.lastWidth=m;var d=n.dom.firstChild.offsetWidth;var l=m-this.triggerWidth;var k=-1;if(d>m||(this.hiddens&&m>b)){var e,h=this.container.items.items,g=h.length,j;var a=0;for(e=0;e<g;e++){j=h[e];if(!j.isFill){a+=this.getItemWidth(j);if(a>l){if(!j.xtbHidden){this.hideItem(j)}}else{if(j.xtbHidden){this.unhideItem(j)}}}}}if(this.hiddens){this.initMore();if(!this.lastOverflow){this.container.fireEvent("overflowchange",this.container,true);this.lastOverflow=true}}else{if(this.more){this.clearMenu();this.more.destroy();delete this.more;if(this.lastOverflow){this.container.fireEvent("overflowchange",this.container,false);this.lastOverflow=false}}}},createMenuConfig:function(d,b){var a={text:d.text,iconCls:d.iconCls,icon:d.icon,itemId:d.itemId,disabled:d.disabled,handler:d.handler,scope:d.scope,menu:d.menu};a.hideOnClick=b;delete a.xtype;delete a.id;return a},addComponentToMenu:function(a,b){if(b instanceof Ext.Toolbar.Separator){a.add("-")}else{if(typeof b.isXType=="function"){if(b.isXType("splitbutton")){a.add(this.createMenuConfig(b,true))}else{if(b.isXType("button")){a.add(this.createMenuConfig(b,!b.menu))}else{if(b.isXType("buttongroup")){a.add("-");b.items.each(function(d){this.addComponentToMenu(a,d)},this);a.add("-")}}}}}},clearMenu:function(){var a=this.moreMenu;if(a&&a.items){this.moreMenu.items.each(function(b){delete b.menu})}},beforeMoreShow:function(b){this.clearMenu();b.removeAll();for(var d=0,e=this.container.items.items,a=e.length,g;d<a;d++){g=e[d];if(g.xtbHidden){this.addComponentToMenu(b,g)}}if(b.items.length<1){b.add(this.noItemsMenuText)}},initMore:function(){if(!this.more){this.moreMenu=new Ext.menu.Menu({listeners:{beforeshow:this.beforeMoreShow,scope:this}});this.more=new Ext.Button({iconCls:"x-toolbar-more-icon",cls:"x-toolbar-more",menu:this.moreMenu});var a=this.insertCell(this.more,this.extrasTr,100);this.more.render(a)}}});Ext.Container.LAYOUTS.toolbar=Ext.layout.ToolbarLayout;Ext.Toolbar=function(a){if(Ext.isArray(a)){a={items:a,layout:"toolbar"}}else{a=Ext.apply({layout:"toolbar"},a);if(a.buttons){a.items=a.buttons}}Ext.Toolbar.superclass.constructor.call(this,a)};(function(){var a=Ext.Toolbar;Ext.extend(a,Ext.Container,{defaultType:"button",trackMenus:true,internalDefaults:{removeMode:"container",hideParent:true},toolbarCls:"x-toolbar",initComponent:function(){a.superclass.initComponent.call(this);this.addEvents("overflowchange")},onRender:function(d,b){if(!this.el){if(!this.autoCreate){this.autoCreate={cls:this.toolbarCls+" x-small-editor"}}this.el=d.createChild(Ext.apply({id:this.id},this.autoCreate),b)}},add:function(){var d=arguments,b=d.length;for(var e=0;e<b;e++){var g=d[e];if(g.isFormField){this.addField(g)}else{if(g.render){this.addItem(g)}else{if(typeof g=="string"){if(g=="separator"||g=="-"){this.addSeparator()}else{if(g==" "){this.addSpacer()}else{if(g=="->"){this.addFill()}else{this.addText(g)}}}}else{if(g.tag){this.addDom(g)}else{if(g.tagName){this.addElement(g)}else{if(typeof g=="object"){if(g.xtype){this.addItem(Ext.create(g,"button"))}else{this.addButton(g)}}}}}}}}},addSeparator:function(){return this.addItem(new a.Separator())},addSpacer:function(){return this.addItem(new a.Spacer())},addFill:function(){this.addItem(new a.Fill())},addElement:function(b){var d=new a.Item({el:b});this.addItem(d);return d},addItem:function(b){Ext.Toolbar.superclass.add.apply(this,arguments);return b},addButton:function(g){if(Ext.isArray(g)){var j=[];for(var h=0,e=g.length;h<e;h++){j.push(this.addButton(g[h]))}return j}var d=g;if(!d.events){d=g.split?new a.SplitButton(g):new a.Button(g)}this.initMenuTracking(d);this.addItem(d);return d},initMenuTracking:function(b){if(this.trackMenus&&b.menu){this.mon(b,{menutriggerover:this.onButtonTriggerOver,menushow:this.onButtonMenuShow,menuhide:this.onButtonMenuHide,scope:this})}},addText:function(d){var b=new a.TextItem(d);this.addItem(b);return b},insertButton:function(d,h){if(Ext.isArray(h)){var g=[];for(var e=0,b=h.length;e<b;e++){g.push(this.insertButton(d+e,h[e]))}return g}if(!(h instanceof a.Button)){h=new a.Button(h)}Ext.Toolbar.superclass.insert.call(this,d,h);return h},addDom:function(b){var d=new a.Item({autoEl:b});this.addItem(d);return d},addField:function(b){this.addItem(b);return b},applyDefaults:function(e){e=Ext.Toolbar.superclass.applyDefaults.call(this,e);var b=this.internalDefaults;if(e.events){Ext.applyIf(e.initialConfig,b);Ext.apply(e,b)}else{Ext.applyIf(e,b)}return e},onDisable:function(){this.items.each(function(b){if(b.disable){b.disable()}})},onEnable:function(){this.items.each(function(b){if(b.enable){b.enable()}})},onButtonTriggerOver:function(b){if(this.activeMenuBtn&&this.activeMenuBtn!=b){this.activeMenuBtn.hideMenu();b.showMenu();this.activeMenuBtn=b}},onButtonMenuShow:function(b){this.activeMenuBtn=b},onButtonMenuHide:function(b){delete this.activeMenuBtn}});Ext.reg("toolbar",Ext.Toolbar);a.Item=Ext.extend(Ext.BoxComponent,{hideParent:true,enable:Ext.emptyFn,disable:Ext.emptyFn,focus:Ext.emptyFn});Ext.reg("tbitem",a.Item);a.Separator=Ext.extend(a.Item,{onRender:function(d,b){this.el=d.createChild({tag:"span",cls:"xtb-sep"},b)}});Ext.reg("tbseparator",a.Separator);a.Spacer=Ext.extend(a.Item,{onRender:function(d,b){this.el=d.createChild({tag:"div",cls:"xtb-spacer",style:this.width?"width:"+this.width+"px":""},b)}});Ext.reg("tbspacer",a.Spacer);a.Fill=Ext.extend(a.Item,{render:Ext.emptyFn,isFill:true});Ext.reg("tbfill",a.Fill);a.TextItem=Ext.extend(a.Item,{constructor:function(b){if(typeof b=="string"){b={autoEl:{cls:"xtb-text",html:b}}}else{b.autoEl={cls:"xtb-text",html:b.text||""}}a.TextItem.superclass.constructor.call(this,b)},setText:function(b){if(this.rendered){this.el.dom.innerHTML=b}else{this.autoEl.html=b}}});Ext.reg("tbtext",a.TextItem);a.Button=Ext.extend(Ext.Button,{});a.SplitButton=Ext.extend(Ext.SplitButton,{});Ext.reg("tbbutton",a.Button);Ext.reg("tbsplit",a.SplitButton)})();Ext.ButtonGroup=Ext.extend(Ext.Panel,{baseCls:"x-btn-group",layout:"table",defaultType:"button",frame:true,internalDefaults:{removeMode:"container",hideParent:true},initComponent:function(){this.layoutConfig=this.layoutConfig||{};Ext.applyIf(this.layoutConfig,{columns:this.columns});if(!this.title){this.addClass("x-btn-group-notitle")}this.on("afterlayout",this.onAfterLayout,this);Ext.ButtonGroup.superclass.initComponent.call(this)},applyDefaults:function(b){b=Ext.ButtonGroup.superclass.applyDefaults.call(this,b);var a=this.internalDefaults;if(b.events){Ext.applyIf(b.initialConfig,a);Ext.apply(b,a)}else{Ext.applyIf(b,a)}return b},onAfterLayout:function(){var a=this.body.getFrameWidth("lr")+this.body.dom.firstChild.offsetWidth;this.body.setWidth(a);this.el.setWidth(a+this.getFrameWidth())}});Ext.reg("buttongroup",Ext.ButtonGroup);(function(){var a=Ext.Toolbar;Ext.PagingToolbar=Ext.extend(Ext.Toolbar,{pageSize:20,displayMsg:"Displaying {0} - {1} of {2}",emptyMsg:"No data to display",beforePageText:"Page",afterPageText:"of {0}",firstText:"First Page",prevText:"Previous Page",nextText:"Next Page",lastText:"Last Page",refreshText:"Refresh",paramNames:{start:"start",limit:"limit"},initComponent:function(){var d=[this.first=new a.Button({tooltip:this.firstText,iconCls:"x-tbar-page-first",disabled:true,handler:this.onClick,scope:this}),this.prev=new a.Button({tooltip:this.prevText,iconCls:"x-tbar-page-prev",disabled:true,handler:this.onClick,scope:this}),"-",this.beforePageText,this.inputItem=new a.Item({height:18,autoEl:{tag:"input",type:"text",size:"3",value:"1",cls:"x-tbar-page-number"}}),this.afterTextItem=new a.TextItem({text:String.format(this.afterPageText,1)}),"-",this.next=new a.Button({tooltip:this.nextText,iconCls:"x-tbar-page-next",disabled:true,handler:this.onClick,scope:this}),this.last=new a.Button({tooltip:this.lastText,iconCls:"x-tbar-page-last",disabled:true,handler:this.onClick,scope:this}),"-",this.refresh=new a.Button({tooltip:this.refreshText,iconCls:"x-tbar-loading",handler:this.onClick,scope:this})];var b=this.items||this.buttons||[];if(this.prependButtons){this.items=b.concat(d)}else{this.items=d.concat(b)}delete this.buttons;if(this.displayInfo){this.items.push("->");this.items.push(this.displayItem=new a.TextItem({}))}Ext.PagingToolbar.superclass.initComponent.call(this);this.addEvents("change","beforechange");this.on("afterlayout",this.onFirstLayout,this,{single:true});this.cursor=0;this.bindStore(this.store)},onFirstLayout:function(b){this.mon(this.inputItem.el,"keydown",this.onPagingKeyDown,this);this.mon(this.inputItem.el,"blur",this.onPagingBlur,this);this.mon(this.inputItem.el,"focus",this.onPagingFocus,this);this.field=this.inputItem.el.dom;if(this.dsLoaded){this.onLoad.apply(this,this.dsLoaded)}},updateInfo:function(){if(this.displayItem){var b=this.store.getCount();var d=b==0?this.emptyMsg:String.format(this.displayMsg,this.cursor+1,this.cursor+b,this.store.getTotalCount());this.displayItem.setText(d)}},onLoad:function(b,g,k){if(!this.rendered){this.dsLoaded=[b,g,k];return}this.cursor=(k.params&&k.params[this.paramNames.start])?k.params[this.paramNames.start]:0;var j=this.getPageData(),e=j.activePage,h=j.pages;this.afterTextItem.setText(String.format(this.afterPageText,j.pages));this.field.value=e;this.first.setDisabled(e==1);this.prev.setDisabled(e==1);this.next.setDisabled(e==h);this.last.setDisabled(e==h);this.refresh.enable();this.updateInfo();this.fireEvent("change",this,j)},getPageData:function(){var b=this.store.getTotalCount();return{total:b,activePage:Math.ceil((this.cursor+this.pageSize)/this.pageSize),pages:b<this.pageSize?1:Math.ceil(b/this.pageSize)}},changePage:function(b){this.doLoad(((b-1)*this.pageSize).constrain(0,this.store.getTotalCount()))},onLoadError:function(){if(!this.rendered){return}this.refresh.enable()},readPage:function(g){var b=this.field.value,e;if(!b||isNaN(e=parseInt(b,10))){this.field.value=g.activePage;return false}return e},onPagingFocus:function(){this.field.select()},onPagingBlur:function(b){this.field.value=this.getPageData().activePage},onPagingKeyDown:function(j){var g=j.getKey(),l=this.getPageData(),h;if(g==j.RETURN){j.stopEvent();h=this.readPage(l);if(h!==false){h=Math.min(Math.max(1,h),l.pages)-1;this.doLoad(h*this.pageSize)}}else{if(g==j.HOME||g==j.END){j.stopEvent();h=g==j.HOME?1:l.pages;this.field.value=h}else{if(g==j.UP||g==j.PAGEUP||g==j.DOWN||g==j.PAGEDOWN){j.stopEvent();if(h=this.readPage(l)){var b=j.shiftKey?10:1;if(g==j.DOWN||g==j.PAGEDOWN){b*=-1}h+=b;if(h>=1&h<=l.pages){this.field.value=h}}}}}},beforeLoad:function(){if(this.rendered&&this.refresh){this.refresh.disable()}},doLoad:function(e){var d={},b=this.paramNames;d[b.start]=e;d[b.limit]=this.pageSize;if(this.fireEvent("beforechange",this,d)!==false){this.store.load({params:d})}},onClick:function(e){var d=this.store;switch(e){case this.first:this.doLoad(0);break;case this.prev:this.doLoad(Math.max(0,this.cursor-this.pageSize));break;case this.next:this.doLoad(this.cursor+this.pageSize);break;case this.last:var h=d.getTotalCount();var b=h%this.pageSize;var g=b?(h-b):h-this.pageSize;this.doLoad(g);break;case this.refresh:this.doLoad(this.cursor);break}},bindStore:function(b,d){if(!d&&this.store){this.store.un("beforeload",this.beforeLoad,this);this.store.un("load",this.onLoad,this);this.store.un("loadexception",this.onLoadError,this);if(b!==this.store&&this.store.autoDestroy){this.store.destroy()}}if(b){b=Ext.StoreMgr.lookup(b);b.on("beforeload",this.beforeLoad,this);b.on("load",this.onLoad,this);b.on("loadexception",this.onLoadError,this);this.paramNames.start=b.paramNames.start;this.paramNames.limit=b.paramNames.limit;if(b.getCount()>0){this.onLoad(b,null,{})}}this.store=b},unbind:function(b){this.bindStore(null)},bind:function(b){this.bindStore(b)},onDestroy:function(){this.bindStore(null);Ext.PagingToolbar.superclass.onDestroy.call(this)}})})();Ext.reg("paging",Ext.PagingToolbar);Ext.Resizable=function(e,g){this.el=Ext.get(e);if(g&&g.wrap){g.resizeChild=this.el;this.el=this.el.wrap(typeof g.wrap=="object"?g.wrap:{cls:"xresizable-wrap"});this.el.id=this.el.dom.id=g.resizeChild.id+"-rzwrap";this.el.setStyle("overflow","hidden");this.el.setPositioning(g.resizeChild.getPositioning());g.resizeChild.clearPositioning();if(!g.width||!g.height){var h=g.resizeChild.getSize();this.el.setSize(h.width,h.height)}if(g.pinned&&!g.adjustments){g.adjustments="auto"}}this.proxy=this.el.createProxy({tag:"div",cls:"x-resizable-proxy",id:this.el.id+"-rzproxy"},Ext.getBody());this.proxy.unselectable();this.proxy.enableDisplayMode("block");Ext.apply(this,g);if(this.pinned){this.disableTrackOver=true;this.el.addClass("x-resizable-pinned")}var l=this.el.getStyle("position");if(l!="absolute"&&l!="fixed"){this.el.setStyle("position","relative")}if(!this.handles){this.handles="s,e,se";if(this.multiDirectional){this.handles+=",n,w"}}if(this.handles=="all"){this.handles="n s e w ne nw se sw"}var p=this.handles.split(/\s*?[,;]\s*?| /);var d=Ext.Resizable.positions;for(var k=0,m=p.length;k<m;k++){if(p[k]&&d[p[k]]){var o=d[p[k]];this[o]=new Ext.Resizable.Handle(this,o,this.disableTrackOver,this.transparent)}}this.corner=this.southeast;if(this.handles.indexOf("n")!=-1||this.handles.indexOf("w")!=-1){this.updateBox=true}this.activeHandle=null;if(this.resizeChild){if(typeof this.resizeChild=="boolean"){this.resizeChild=Ext.get(this.el.dom.firstChild,true)}else{this.resizeChild=Ext.get(this.resizeChild,true)}}if(this.adjustments=="auto"){var b=this.resizeChild;var n=this.west,j=this.east,a=this.north,p=this.south;if(b&&(n||a)){b.position("relative");b.setLeft(n?n.el.getWidth():0);b.setTop(a?a.el.getHeight():0)}this.adjustments=[(j?-j.el.getWidth():0)+(n?-n.el.getWidth():0),(a?-a.el.getHeight():0)+(p?-p.el.getHeight():0)-1]}if(this.draggable){this.dd=this.dynamic?this.el.initDD(null):this.el.initDDProxy(null,{dragElId:this.proxy.id});this.dd.setHandleElId(this.resizeChild?this.resizeChild.id:this.el.id)}this.addEvents("beforeresize","resize");if(this.width!==null&&this.height!==null){this.resizeTo(this.width,this.height)}else{this.updateChildSize()}if(Ext.isIE){this.el.dom.style.zoom=1}Ext.Resizable.superclass.constructor.call(this)};Ext.extend(Ext.Resizable,Ext.util.Observable,{resizeChild:false,adjustments:[0,0],minWidth:5,minHeight:5,maxWidth:10000,maxHeight:10000,enabled:true,animate:false,duration:0.35,dynamic:false,handles:false,multiDirectional:false,disableTrackOver:false,easing:"easeOutStrong",widthIncrement:0,heightIncrement:0,pinned:false,width:null,height:null,preserveRatio:false,transparent:false,minX:0,minY:0,draggable:false,resizeTo:function(b,a){this.el.setSize(b,a);this.updateChildSize();this.fireEvent("resize",this,b,a,null)},startSizing:function(d,b){this.fireEvent("beforeresize",this,d);if(this.enabled){if(!this.overlay){this.overlay=this.el.createProxy({tag:"div",cls:"x-resizable-overlay",html:"&#160;"},Ext.getBody());this.overlay.unselectable();this.overlay.enableDisplayMode("block");this.overlay.on("mousemove",this.onMouseMove,this);this.overlay.on("mouseup",this.onMouseUp,this)}this.overlay.setStyle("cursor",b.el.getStyle("cursor"));this.resizing=true;this.startBox=this.el.getBox();this.startPoint=d.getXY();this.offsets=[(this.startBox.x+this.startBox.width)-this.startPoint[0],(this.startBox.y+this.startBox.height)-this.startPoint[1]];this.overlay.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true));this.overlay.show();if(this.constrainTo){var a=Ext.get(this.constrainTo);this.resizeRegion=a.getRegion().adjust(a.getFrameWidth("t"),a.getFrameWidth("l"),-a.getFrameWidth("b"),-a.getFrameWidth("r"))}this.proxy.setStyle("visibility","hidden");this.proxy.show();this.proxy.setBox(this.startBox);if(!this.dynamic){this.proxy.setStyle("visibility","visible")}}},onMouseDown:function(a,b){if(this.enabled){b.stopEvent();this.activeHandle=a;this.startSizing(b,a)}},onMouseUp:function(b){var a=this.resizeElement();this.resizing=false;this.handleOut();this.overlay.hide();this.proxy.hide();this.fireEvent("resize",this,a.width,a.height,b)},updateChildSize:function(){if(this.resizeChild){var e=this.el;var g=this.resizeChild;var d=this.adjustments;if(e.dom.offsetWidth){var a=e.getSize(true);g.setSize(a.width+d[0],a.height+d[1])}if(Ext.isIE){setTimeout(function(){if(e.dom.offsetWidth){var h=e.getSize(true);g.setSize(h.width+d[0],h.height+d[1])}},10)}}},snap:function(d,g,b){if(!g||!d){return d}var e=d;var a=d%g;if(a>0){if(a>(g/2)){e=d+(g-a)}else{e=d-a}}return Math.max(b,e)},resizeElement:function(){var a=this.proxy.getBox();if(this.updateBox){this.el.setBox(a,false,this.animate,this.duration,null,this.easing)}else{this.el.setSize(a.width,a.height,this.animate,this.duration,null,this.easing)}this.updateChildSize();if(!this.dynamic){this.proxy.hide()}return a},constrain:function(b,d,a,e){if(b-d<a){d=b-a}else{if(b-d>e){d=e-b}}return d},onMouseMove:function(B){if(this.enabled){try{if(this.resizeRegion&&!this.resizeRegion.contains(B.getPoint())){return}var z=this.curSize||this.startBox;var n=this.startBox.x,m=this.startBox.y;var d=n,b=m;var o=z.width,A=z.height;var g=o,q=A;var p=this.minWidth,C=this.minHeight;var u=this.maxWidth,F=this.maxHeight;var k=this.widthIncrement;var a=this.heightIncrement;var D=B.getXY();var t=-(this.startPoint[0]-Math.max(this.minX,D[0]));var r=-(this.startPoint[1]-Math.max(this.minY,D[1]));var l=this.activeHandle.position;switch(l){case"east":o+=t;o=Math.min(Math.max(p,o),u);break;case"south":A+=r;A=Math.min(Math.max(C,A),F);break;case"southeast":o+=t;A+=r;o=Math.min(Math.max(p,o),u);A=Math.min(Math.max(C,A),F);break;case"north":r=this.constrain(A,r,C,F);m+=r;A-=r;break;case"west":t=this.constrain(o,t,p,u);n+=t;o-=t;break;case"northeast":o+=t;o=Math.min(Math.max(p,o),u);r=this.constrain(A,r,C,F);m+=r;A-=r;break;case"northwest":t=this.constrain(o,t,p,u);r=this.constrain(A,r,C,F);m+=r;A-=r;n+=t;o-=t;break;case"southwest":t=this.constrain(o,t,p,u);A+=r;A=Math.min(Math.max(C,A),F);n+=t;o-=t;break}var s=this.snap(o,k,p);var E=this.snap(A,a,C);if(s!=o||E!=A){switch(l){case"northeast":m-=E-A;break;case"north":m-=E-A;break;case"southwest":n-=s-o;break;case"west":n-=s-o;break;case"northwest":n-=s-o;m-=E-A;break}o=s;A=E}if(this.preserveRatio){switch(l){case"southeast":case"east":A=q*(o/g);A=Math.min(Math.max(C,A),F);o=g*(A/q);break;case"south":o=g*(A/q);o=Math.min(Math.max(p,o),u);A=q*(o/g);break;case"northeast":o=g*(A/q);o=Math.min(Math.max(p,o),u);A=q*(o/g);break;case"north":var G=o;o=g*(A/q);o=Math.min(Math.max(p,o),u);A=q*(o/g);n+=(G-o)/2;break;case"southwest":A=q*(o/g);A=Math.min(Math.max(C,A),F);var G=o;o=g*(A/q);n+=G-o;break;case"west":var j=A;A=q*(o/g);A=Math.min(Math.max(C,A),F);m+=(j-A)/2;var G=o;o=g*(A/q);n+=G-o;break;case"northwest":var G=o;var j=A;A=q*(o/g);A=Math.min(Math.max(C,A),F);o=g*(A/q);m+=j-A;n+=G-o;break}}this.proxy.setBounds(n,m,o,A);if(this.dynamic){this.resizeElement()}}catch(B){}}},handleOver:function(){if(this.enabled){this.el.addClass("x-resizable-over")}},handleOut:function(){if(!this.resizing){this.el.removeClass("x-resizable-over")}},getEl:function(){return this.el},getResizeChild:function(){return this.resizeChild},destroy:function(b){if(this.dd){this.dd.destroy()}if(this.overlay){Ext.destroy(this.overlay);this.overlay=null}Ext.destroy(this.proxy);this.proxy=null;var d=Ext.Resizable.positions;for(var a in d){if(typeof d[a]!="function"&&this[d[a]]){this[d[a]].destroy()}}if(b){this.el.update("");Ext.destroy(this.el);this.el=null}},syncHandleHeight:function(){var a=this.el.getHeight(true);if(this.west){this.west.el.setHeight(a)}if(this.east){this.east.el.setHeight(a)}}});Ext.Resizable.positions={n:"north",s:"south",e:"east",w:"west",se:"southeast",sw:"southwest",nw:"northwest",ne:"northeast"};Ext.Resizable.Handle=function(d,g,b,e){if(!this.tpl){var a=Ext.DomHelper.createTemplate({tag:"div",cls:"x-resizable-handle x-resizable-handle-{0}"});a.compile();Ext.Resizable.Handle.prototype.tpl=a}this.position=g;this.rz=d;this.el=this.tpl.append(d.el.dom,[this.position],true);this.el.unselectable();if(e){this.el.setOpacity(0)}this.el.on("mousedown",this.onMouseDown,this);if(!b){this.el.on("mouseover",this.onMouseOver,this);this.el.on("mouseout",this.onMouseOut,this)}};Ext.Resizable.Handle.prototype={afterResize:function(a){},onMouseDown:function(a){this.rz.onMouseDown(this,a)},onMouseOver:function(a){this.rz.handleOver(this,a)},onMouseOut:function(a){this.rz.handleOut(this,a)},destroy:function(){Ext.destroy(this.el);this.el=null}};Ext.Editor=function(b,a){if(b.field){this.field=Ext.create(b.field,"textfield");a=Ext.apply({},b);delete a.field}else{this.field=b}Ext.Editor.superclass.constructor.call(this,a)};Ext.extend(Ext.Editor,Ext.Component,{value:"",alignment:"c-c?",shadow:"frame",constrain:false,swallowKeys:true,completeOnEnter:false,cancelOnEsc:false,updateEl:false,initComponent:function(){Ext.Editor.superclass.initComponent.call(this);this.addEvents("beforestartedit","startedit","beforecomplete","complete","canceledit","specialkey")},onRender:function(b,a){this.el=new Ext.Layer({shadow:this.shadow,cls:"x-editor",parentEl:b,shim:this.shim,shadowOffset:this.shadowOffset||4,id:this.id,constrain:this.constrain});if(this.zIndex){this.el.setZIndex(this.zIndex)}this.el.setStyle("overflow",Ext.isGecko?"auto":"hidden");if(this.field.msgTarget!="title"){this.field.msgTarget="qtip"}this.field.inEditor=true;this.field.render(this.el);if(Ext.isGecko){this.field.el.dom.setAttribute("autocomplete","off")}this.mon(this.field,"specialkey",this.onSpecialKey,this);if(this.swallowKeys){this.field.el.swallowEvent(["keydown","keypress"])}this.field.show();this.mon(this.field,"blur",this.onBlur,this);if(this.field.grow){this.mon(this.field,"autosize",this.el.sync,this.el,{delay:1})}},onSpecialKey:function(d,b){var a=b.getKey();if(this.completeOnEnter&&a==b.ENTER){b.stopEvent();this.completeEdit()}else{if(this.cancelOnEsc&&a==b.ESC){this.cancelEdit()}else{this.fireEvent("specialkey",d,b)}}if(this.field.triggerBlur&&(a==b.ENTER||a==b.ESC||a==b.TAB)){this.field.triggerBlur()}},startEdit:function(b,d){if(this.editing){this.completeEdit()}this.boundEl=Ext.get(b);var a=d!==undefined?d:this.boundEl.dom.innerHTML;if(!this.rendered){this.render(this.parentEl||document.body)}if(this.fireEvent("beforestartedit",this,this.boundEl,a)===false){return}this.startValue=a;this.field.setValue(a);this.doAutoSize();this.el.alignTo(this.boundEl,this.alignment);this.editing=true;this.show()},doAutoSize:function(){if(this.autoSize){var a=this.boundEl.getSize();switch(this.autoSize){case"width":this.setSize(a.width,"");break;case"height":this.setSize("",a.height);break;default:this.setSize(a.width,a.height)}}},setSize:function(a,b){delete this.field.lastSize;this.field.setSize(a,b);if(this.el){if(Ext.isGecko2||Ext.isOpera){this.el.setSize(a,b)}this.el.sync()}},realign:function(){this.el.alignTo(this.boundEl,this.alignment)},completeEdit:function(a){if(!this.editing){return}var b=this.getValue();if(this.revertInvalid!==false&&!this.field.isValid()){b=this.startValue;this.cancelEdit(true)}if(String(b)===String(this.startValue)&&this.ignoreNoChange){this.editing=false;this.hide();return}if(this.fireEvent("beforecomplete",this,b,this.startValue)!==false){this.editing=false;if(this.updateEl&&this.boundEl){this.boundEl.update(b)}if(a!==true){this.hide()}this.fireEvent("complete",this,b,this.startValue)}},onShow:function(){this.el.show();if(this.hideEl!==false){this.boundEl.hide()}this.field.show();if(Ext.isIE&&!this.fixIEFocus){this.fixIEFocus=true;this.deferredFocus.defer(50,this)}else{this.field.focus()}this.fireEvent("startedit",this.boundEl,this.startValue)},deferredFocus:function(){if(this.editing){this.field.focus()}},cancelEdit:function(a){if(this.editing){var b=this.getValue();this.setValue(this.startValue);if(a!==true){this.hide()}this.fireEvent("canceledit",this,b,this.startValue)}},onBlur:function(){if(this.allowBlur!==true&&this.editing){this.completeEdit()}},onHide:function(){if(this.editing){this.completeEdit();return}this.field.blur();if(this.field.collapse){this.field.collapse()}this.el.hide();if(this.hideEl!==false){this.boundEl.show()}},setValue:function(a){this.field.setValue(a)},getValue:function(){return this.field.getValue()},beforeDestroy:function(){Ext.destroy(this.field);this.field=null}});Ext.reg("editor",Ext.Editor);Ext.MessageBox=function(){var u,b,q,t;var j,m,s,a,n,p,k,h;var r,w,o,d="";var e=function(y){if(u.isVisible()){u.hide();Ext.callback(b.fn,b.scope||window,[y,w.dom.value,b],1)}};var x=function(){if(b&&b.cls){u.el.removeClass(b.cls)}n.reset()};var g=function(A,y,z){if(b&&b.closable!==false){u.hide()}if(z){z.stopEvent()}};var l=function(y){var A=0;if(!y){r.ok.hide();r.cancel.hide();r.yes.hide();r.no.hide();return A}u.footer.dom.style.display="";for(var z in r){if(typeof r[z]!="function"){if(y[z]){r[z].show();r[z].setText(typeof y[z]=="string"?y[z]:Ext.MessageBox.buttonText[z]);A+=r[z].el.getWidth()+15}else{r[z].hide()}}}return A};return{getDialog:function(y){if(!u){u=new Ext.Window({autoCreate:true,title:y,resizable:false,constrain:true,constrainHeader:true,minimizable:false,maximizable:false,stateful:false,modal:true,shim:true,buttonAlign:"center",width:400,height:100,minHeight:80,plain:true,footer:true,closable:true,close:function(){if(b&&b.buttons&&b.buttons.no&&!b.buttons.cancel){e("no")}else{e("cancel")}}});r={};var z=this.buttonText;r.ok=u.addButton(z.ok,e.createCallback("ok"));r.yes=u.addButton(z.yes,e.createCallback("yes"));r.no=u.addButton(z.no,e.createCallback("no"));r.cancel=u.addButton(z.cancel,e.createCallback("cancel"));r.ok.hideMode=r.yes.hideMode=r.no.hideMode=r.cancel.hideMode="offsets";u.render(document.body);u.getEl().addClass("x-window-dlg");q=u.mask;j=u.body.createChild({html:'<div class="ext-mb-icon"></div><div class="ext-mb-content"><span class="ext-mb-text"></span><br /><div class="ext-mb-fix-cursor"><input type="text" class="ext-mb-input" /><textarea class="ext-mb-textarea"></textarea></div></div>'});k=Ext.get(j.dom.firstChild);var A=j.dom.childNodes[1];m=Ext.get(A.firstChild);s=Ext.get(A.childNodes[2].firstChild);s.enableDisplayMode();s.addKeyListener([10,13],function(){if(u.isVisible()&&b&&b.buttons){if(b.buttons.ok){e("ok")}else{if(b.buttons.yes){e("yes")}}}});a=Ext.get(A.childNodes[2].childNodes[1]);a.enableDisplayMode();n=new Ext.ProgressBar({renderTo:j});j.createChild({cls:"x-clear"})}return u},updateText:function(B){if(!u.isVisible()&&!b.width){u.setSize(this.maxWidth,100)}m.update(B||"&#160;");var z=d!=""?(k.getWidth()+k.getMargins("lr")):0;var D=m.getWidth()+m.getMargins("lr");var A=u.getFrameWidth("lr");var C=u.body.getFrameWidth("lr");if(Ext.isIE&&z>0){z+=3}var y=Math.max(Math.min(b.width||z+D+A+C,this.maxWidth),Math.max(b.minWidth||this.minWidth,o||0));if(b.prompt===true){w.setWidth(y-z-A-C)}if(b.progress===true||b.wait===true){n.setSize(y-z-A-C)}if(Ext.isIE&&y==o){y+=4}u.setSize(y,"auto").center();return this},updateProgress:function(z,y,A){n.updateProgress(z,y);if(A){this.updateText(A)}return this},isVisible:function(){return u&&u.isVisible()},hide:function(){var y=u?u.activeGhost:null;if(this.isVisible()||y){u.hide();x();if(y){u.unghost(false,false)}}return this},show:function(B){if(this.isVisible()){this.hide()}b=B;var C=this.getDialog(b.title||"&#160;");C.setTitle(b.title||"&#160;");var y=(b.closable!==false&&b.progress!==true&&b.wait!==true);C.tools.close.setDisplayed(y);w=s;b.prompt=b.prompt||(b.multiline?true:false);if(b.prompt){if(b.multiline){s.hide();a.show();a.setHeight(typeof b.multiline=="number"?b.multiline:this.defaultTextHeight);w=a}else{s.show();a.hide()}}else{s.hide();a.hide()}w.dom.value=b.value||"";if(b.prompt){C.focusEl=w}else{var A=b.buttons;var z=null;if(A&&A.ok){z=r.ok}else{if(A&&A.yes){z=r.yes}}if(z){C.focusEl=z}}if(b.iconCls){C.setIconClass(b.iconCls)}this.setIcon(b.icon);o=l(b.buttons);n.setVisible(b.progress===true||b.wait===true);this.updateProgress(0,b.progressText);this.updateText(b.msg);if(b.cls){C.el.addClass(b.cls)}C.proxyDrag=b.proxyDrag===true;C.modal=b.modal!==false;C.mask=b.modal!==false?q:false;if(!C.isVisible()){document.body.appendChild(u.el.dom);C.setAnimateTarget(b.animEl);C.show(b.animEl)}C.on("show",function(){if(y===true){C.keyMap.enable()}else{C.keyMap.disable()}},this,{single:true});if(b.wait===true){n.wait(b.waitConfig)}return this},setIcon:function(y){if(y&&y!=""){k.removeClass("x-hidden");k.replaceClass(d,y);j.addClass("x-dlg-icon");d=y}else{k.replaceClass(d,"x-hidden");j.removeClass("x-dlg-icon");d=""}return this},progress:function(A,z,y){this.show({title:A,msg:z,buttons:false,progress:true,closable:false,minWidth:this.minProgressWidth,progressText:y});return this},wait:function(A,z,y){this.show({title:z,msg:A,buttons:false,closable:false,wait:true,modal:true,minWidth:this.minProgressWidth,waitConfig:y});return this},alert:function(B,A,z,y){this.show({title:B,msg:A,buttons:this.OK,fn:z,scope:y});return this},confirm:function(B,A,z,y){this.show({title:B,msg:A,buttons:this.YESNO,fn:z,scope:y,icon:this.QUESTION});return this},prompt:function(D,C,A,z,y,B){this.show({title:D,msg:C,buttons:this.OKCANCEL,fn:A,minWidth:250,scope:z,prompt:true,multiline:y,value:B});return this},OK:{ok:true},CANCEL:{cancel:true},OKCANCEL:{ok:true,cancel:true},YESNO:{yes:true,no:true},YESNOCANCEL:{yes:true,no:true,cancel:true},INFO:"ext-mb-info",WARNING:"ext-mb-warning",QUESTION:"ext-mb-question",ERROR:"ext-mb-error",defaultTextHeight:75,maxWidth:600,minWidth:100,minProgressWidth:250,buttonText:{ok:"OK",cancel:"Cancel",yes:"Yes",no:"No"}}}();Ext.Msg=Ext.MessageBox;Ext.Tip=Ext.extend(Ext.Panel,{minWidth:40,maxWidth:300,shadow:"sides",defaultAlign:"tl-bl?",autoRender:true,quickShowInterval:250,frame:true,hidden:true,baseCls:"x-tip",floating:{shadow:true,shim:true,useDisplay:true,constrain:false},autoHeight:true,closeAction:"hide",initComponent:function(){Ext.Tip.superclass.initComponent.call(this);if(this.closable&&!this.title){this.elements+=",header"}},afterRender:function(){Ext.Tip.superclass.afterRender.call(this);if(this.closable){this.addTool({id:"close",handler:this[this.closeAction],scope:this})}},showAt:function(a){Ext.Tip.superclass.show.call(this);if(this.measureWidth!==false&&(!this.initialConfig||typeof this.initialConfig.width!="number")){this.doAutoWidth()}if(this.constrainPosition){a=this.el.adjustForConstraints(a)}this.setPagePosition(a[0],a[1])},doAutoWidth:function(){var a=this.body.getTextWidth();if(this.title){a=Math.max(a,this.header.child("span").getTextWidth(this.title))}a+=this.getFrameWidth()+(this.closable?20:0)+this.body.getPadding("lr");this.setWidth(a.constrain(this.minWidth,this.maxWidth));if(Ext.isIE7&&!this.repainted){this.el.repaint();this.repainted=true}},showBy:function(a,b){if(!this.rendered){this.render(Ext.getBody())}this.showAt(this.el.getAlignToXY(a,b||this.defaultAlign))},initDraggable:function(){this.dd=new Ext.Tip.DD(this,typeof this.draggable=="boolean"?null:this.draggable);this.header.addClass("x-tip-draggable")}});Ext.Tip.DD=function(b,a){Ext.apply(this,a);this.tip=b;Ext.Tip.DD.superclass.constructor.call(this,b.el.id,"WindowDD-"+b.id);this.setHandleElId(b.header.id);this.scroll=false};Ext.extend(Ext.Tip.DD,Ext.dd.DD,{moveOnly:true,scroll:false,headerOffsets:[100,25],startDrag:function(){this.tip.el.disableShadow()},endDrag:function(a){this.tip.el.enableShadow(true)}});Ext.ToolTip=Ext.extend(Ext.Tip,{showDelay:500,hideDelay:200,dismissDelay:5000,trackMouse:false,anchorToTarget:true,anchorOffset:0,targetCounter:0,constrainPosition:false,initComponent:function(){Ext.ToolTip.superclass.initComponent.call(this);this.lastActive=new Date();this.initTarget(this.target);this.origAnchor=this.anchor},onRender:function(b,a){Ext.ToolTip.superclass.onRender.call(this,b,a);this.anchorCls="x-tip-anchor-"+this.getAnchorPosition();this.anchorEl=this.el.createChild({cls:"x-tip-anchor "+this.anchorCls})},afterRender:function(){Ext.ToolTip.superclass.afterRender.call(this);this.anchorEl.setStyle("z-index",this.el.getZIndex()+1)},initTarget:function(b){var a;if((a=Ext.get(b))){if(this.target){this.target=Ext.get(this.target);this.target.un("mouseover",this.onTargetOver,this);this.target.un("mouseout",this.onTargetOut,this);this.target.un("mousemove",this.onMouseMove,this)}this.mon(a,{mouseover:this.onTargetOver,mouseout:this.onTargetOut,mousemove:this.onMouseMove,scope:this});this.target=a}if(this.anchor){this.anchorTarget=this.target}},onMouseMove:function(b){var a=this.delegate?b.getTarget(this.delegate):this.triggerElement=true;if(a){this.targetXY=b.getXY();if(a===this.triggerElement){if(!this.hidden&&this.trackMouse){this.setPagePosition(this.getTargetXY())}}else{this.hide();this.lastActive=new Date(0);this.onTargetOver(b)}}else{if(!this.closable&&this.isVisible()){this.hide()}}},getTargetXY:function(){if(this.anchor){this.targetCounter++;var d=this.getOffsets();var l=(this.anchorToTarget&&!this.trackMouse)?this.el.getAlignToXY(this.anchorTarget,this.getAnchorAlign()):this.targetXY;var a=Ext.lib.Dom.getViewWidth()-5;var h=Ext.lib.Dom.getViewHeight()-5;var k=(document.documentElement.scrollLeft||document.body.scrollLeft||0)+5;var j=(document.documentElement.scrollTop||document.body.scrollTop||0)+5;var b=[l[0]+d[0],l[1]+d[1]];var g=this.getSize();this.anchorEl.removeClass(this.anchorCls);if(this.targetCounter<2){if(b[0]<k){if(this.anchorToTarget){this.defaultAlign="l-r";if(this.mouseOffset){this.mouseOffset[0]*=-1}}this.anchor="left";return this.getTargetXY()}if(b[0]+g.width>a){if(this.anchorToTarget){this.defaultAlign="r-l";if(this.mouseOffset){this.mouseOffset[0]*=-1}}this.anchor="right";return this.getTargetXY()}if(b[1]<j){if(this.anchorToTarget){this.defaultAlign="t-b";if(this.mouseOffset){this.mouseOffset[1]*=-1}}this.anchor="top";return this.getTargetXY()}if(b[1]+g.height>h){if(this.anchorToTarget){this.defaultAlign="b-t";if(this.mouseOffset){this.mouseOffset[1]*=-1}}this.anchor="bottom";return this.getTargetXY()}}this.anchorCls="x-tip-anchor-"+this.getAnchorPosition();this.anchorEl.addClass(this.anchorCls);this.targetCounter=0;return b}else{var e=this.getMouseOffset();return[this.targetXY[0]+e[0],this.targetXY[1]+e[1]]}},getMouseOffset:function(){var a=this.anchor?[0,0]:[15,18];if(this.mouseOffset){a[0]+=this.mouseOffset[0];a[1]+=this.mouseOffset[1]}return a},getAnchorPosition:function(){if(this.anchor){this.tipAnchor=this.anchor.charAt(0)}else{var a=this.defaultAlign.match(/^([a-z]+)-([a-z]+)(\?)?$/);if(!a){throw"AnchorTip.defaultAlign is invalid"}this.tipAnchor=a[1].charAt(0)}switch(this.tipAnchor){case"t":return"top";case"b":return"bottom";case"r":return"right"}return"left"},getAnchorAlign:function(){switch(this.anchor){case"top":return"tl-bl";case"left":return"tl-tr";case"right":return"tr-tl";default:return"bl-tl"}},getOffsets:function(){var b,a=this.getAnchorPosition().charAt(0);if(this.anchorToTarget&&!this.trackMouse){switch(a){case"t":b=[0,9];break;case"b":b=[0,-13];break;case"r":b=[-13,0];break;default:b=[9,0];break}}else{switch(a){case"t":b=[-15-this.anchorOffset,30];break;case"b":b=[-19-this.anchorOffset,-13-this.el.dom.offsetHeight];break;case"r":b=[-15-this.el.dom.offsetWidth,-13-this.anchorOffset];break;default:b=[25,-13-this.anchorOffset];break}}var d=this.getMouseOffset();b[0]+=d[0];b[1]+=d[1];return b},onTargetOver:function(b){if(this.disabled||b.within(this.target.dom,true)){return}var a=b.getTarget(this.delegate);if(a){this.triggerElement=a;this.clearTimer("hide");this.targetXY=b.getXY();this.delayShow()}},delayShow:function(){if(this.hidden&&!this.showTimer){if(this.lastActive.getElapsed()<this.quickShowInterval){this.show()}else{this.showTimer=this.show.defer(this.showDelay,this)}}else{if(!this.hidden&&this.autoHide!==false){this.show()}}},onTargetOut:function(a){if(this.disabled||a.within(this.target.dom,true)){return}this.clearTimer("show");if(this.autoHide!==false){this.delayHide()}},delayHide:function(){if(!this.hidden&&!this.hideTimer){this.hideTimer=this.hide.defer(this.hideDelay,this)}},hide:function(){this.clearTimer("dismiss");this.lastActive=new Date();delete this.triggerElement;if(this.anchorEl){this.anchorEl.hide()}Ext.ToolTip.superclass.hide.call(this)},show:function(){if(this.anchor){this.showAt([-1000,-1000]);this.origConstrainPosition=this.constrainPosition;this.constrainPosition=false;this.anchor=this.origAnchor}this.showAt(this.getTargetXY());if(this.anchor){this.syncAnchor();this.anchorEl.show();this.constrainPosition=this.origConstrainPosition}else{this.anchorEl.hide()}},showAt:function(a){this.lastActive=new Date();this.clearTimers();Ext.ToolTip.superclass.showAt.call(this,a);if(this.dismissDelay&&this.autoHide!==false){this.dismissTimer=this.hide.defer(this.dismissDelay,this)}},syncAnchor:function(){var a,b,d;switch(this.tipAnchor.charAt(0)){case"t":a="b";b="tl";d=[20+this.anchorOffset,2];break;case"r":a="l";b="tr";d=[-2,11+this.anchorOffset];break;case"b":a="t";b="bl";d=[20+this.anchorOffset,-2];break;default:a="r";b="tl";d=[2,11+this.anchorOffset];break}this.anchorEl.alignTo(this.el,a+"-"+b,d)},setPagePosition:function(a,b){Ext.ToolTip.superclass.setPagePosition.call(this,a,b);if(this.anchor){this.syncAnchor()}},clearTimer:function(a){a=a+"Timer";clearTimeout(this[a]);delete this[a]},clearTimers:function(){this.clearTimer("show");this.clearTimer("dismiss");this.clearTimer("hide")},onShow:function(){Ext.ToolTip.superclass.onShow.call(this);Ext.getDoc().on("mousedown",this.onDocMouseDown,this)},onHide:function(){Ext.ToolTip.superclass.onHide.call(this);Ext.getDoc().un("mousedown",this.onDocMouseDown,this)},onDocMouseDown:function(a){if(this.autoHide!==true&&!this.closable&&!a.within(this.el.dom)){this.disable();this.enable.defer(100,this)}},onDisable:function(){this.clearTimers();this.hide()},adjustPosition:function(a,e){if(this.contstrainPosition){var d=this.targetXY[1],b=this.getSize().height;if(e<=d&&(e+b)>=d){e=d-b-5}}return{x:a,y:e}},onDestroy:function(){Ext.getDoc().un("mousedown",this.onDocMouseDown,this);Ext.ToolTip.superclass.onDestroy.call(this)}});Ext.QuickTip=Ext.extend(Ext.ToolTip,{interceptTitles:false,tagConfig:{namespace:"ext",attribute:"qtip",width:"qwidth",target:"target",title:"qtitle",hide:"hide",cls:"qclass",align:"qalign",anchor:"anchor"},initComponent:function(){this.target=this.target||Ext.getDoc();this.targets=this.targets||{};Ext.QuickTip.superclass.initComponent.call(this)},register:function(e){var h=Ext.isArray(e)?e:arguments;for(var g=0,a=h.length;g<a;g++){var l=h[g];var k=l.target;if(k){if(Ext.isArray(k)){for(var d=0,b=k.length;d<b;d++){this.targets[Ext.id(k[d])]=l}}else{this.targets[Ext.id(k)]=l}}}},unregister:function(a){delete this.targets[Ext.id(a)]},onTargetOver:function(k){if(this.disabled){return}this.targetXY=k.getXY();var d=k.getTarget();if(!d||d.nodeType!==1||d==document||d==document.body){return}if(this.activeTarget&&d==this.activeTarget.el){this.clearTimer("hide");this.show();return}if(d&&this.targets[d.id]){this.activeTarget=this.targets[d.id];this.activeTarget.el=d;this.anchor=this.activeTarget.anchor;if(this.anchor){this.anchorTarget=d}this.delayShow();return}var h,j=Ext.fly(d),b=this.tagConfig;var g=b.namespace;if(this.interceptTitles&&d.title){h=d.title;d.qtip=h;d.removeAttribute("title");k.preventDefault()}else{h=d.qtip||j.getAttributeNS(g,b.attribute)}if(h){var a=j.getAttributeNS(g,b.hide);this.activeTarget={el:d,text:h,width:j.getAttributeNS(g,b.width),autoHide:a!="user"&&a!=="false",title:j.getAttributeNS(g,b.title),cls:j.getAttributeNS(g,b.cls),align:j.getAttributeNS(g,b.align)};this.anchor=j.getAttributeNS(g,b.anchor);if(this.anchor){this.anchorTarget=d}this.delayShow()}},onTargetOut:function(a){this.clearTimer("show");if(this.autoHide!==false){this.delayHide()}},showAt:function(b){var a=this.activeTarget;if(a){if(!this.rendered){this.render(Ext.getBody());this.activeTarget=a}if(a.width){this.setWidth(a.width);this.body.setWidth(this.adjustBodyWidth(a.width-this.getFrameWidth()));this.measureWidth=false}else{this.measureWidth=true}this.setTitle(a.title||"");this.body.update(a.text);this.autoHide=a.autoHide;this.dismissDelay=a.dismissDelay||this.dismissDelay;if(this.lastCls){this.el.removeClass(this.lastCls);delete this.lastCls}if(a.cls){this.el.addClass(a.cls);this.lastCls=a.cls}if(this.anchor){this.constrainPosition=false}else{if(a.align){b=this.el.getAlignToXY(a.el,a.align);this.constrainPosition=false}else{this.constrainPosition=true}}}Ext.QuickTip.superclass.showAt.call(this,b)},hide:function(){delete this.activeTarget;Ext.QuickTip.superclass.hide.call(this)}});Ext.QuickTips=function(){var b,a=[];return{init:function(d){if(!b){if(!Ext.isReady){Ext.onReady(function(){Ext.QuickTips.init(d)});return}b=new Ext.QuickTip({elements:"header,body"});if(d!==false){b.render(Ext.getBody())}}},enable:function(){if(b){a.pop();if(a.length<1){b.enable()}}},disable:function(){if(b){b.disable()}a.push(1)},isEnabled:function(){return b!==undefined&&!b.disabled},getQuickTip:function(){return b},register:function(){b.register.apply(b,arguments)},unregister:function(){b.unregister.apply(b,arguments)},tips:function(){b.register.apply(b,arguments)}}}();Ext.tree.TreePanel=Ext.extend(Ext.Panel,{rootVisible:true,animate:Ext.enableFx,lines:true,enableDD:false,hlDrop:Ext.enableFx,pathSeparator:"/",initComponent:function(){Ext.tree.TreePanel.superclass.initComponent.call(this);if(!this.eventModel){this.eventModel=new Ext.tree.TreeEventModel(this)}var a=this.loader;if(!a){a=new Ext.tree.TreeLoader({dataUrl:this.dataUrl})}else{if(typeof a=="object"&&!a.load){a=new Ext.tree.TreeLoader(a)}}this.loader=a;this.nodeHash={};if(this.root){var b=this.root;delete this.root;this.setRootNode(b)}this.addEvents("append","remove","movenode","insert","beforeappend","beforeremove","beforemovenode","beforeinsert","beforeload","load","textchange","beforeexpandnode","beforecollapsenode","expandnode","disabledchange","collapsenode","beforeclick","click","checkchange","dblclick","contextmenu","beforechildrenrendered","startdrag","enddrag","dragdrop","beforenodedrop","nodedrop","nodedragover");if(this.singleExpand){this.on("beforeexpandnode",this.restrictExpand,this)}},proxyNodeEvent:function(d,b,a,j,h,g,e){if(d=="collapse"||d=="expand"||d=="beforecollapse"||d=="beforeexpand"||d=="move"||d=="beforemove"){d=d+"node"}return this.fireEvent(d,b,a,j,h,g,e)},getRootNode:function(){return this.root},setRootNode:function(b){Ext.destroy(this.root);if(!b.render){b=this.loader.createNode(b)}this.root=b;b.ownerTree=this;b.isRoot=true;this.registerNode(b);if(!this.rootVisible){var a=b.attributes.uiProvider;b.ui=a?new a(b):new Ext.tree.RootTreeNodeUI(b)}if(this.innerCt){this.innerCt.update("");this.afterRender()}return b},getNodeById:function(a){return this.nodeHash[a]},registerNode:function(a){this.nodeHash[a.id]=a},unregisterNode:function(a){delete this.nodeHash[a.id]},toString:function(){return"[Tree"+(this.id?" "+this.id:"")+"]"},restrictExpand:function(a){var b=a.parentNode;if(b){if(b.expandedChild&&b.expandedChild.parentNode==b){b.expandedChild.collapse()}b.expandedChild=a}},getChecked:function(b,d){d=d||this.root;var e=[];var g=function(){if(this.attributes.checked){e.push(!b?this:(b=="id"?this.id:this.attributes[b]))}};d.cascade(g);return e},getEl:function(){return this.el},getLoader:function(){return this.loader},expandAll:function(){this.root.expand(true)},collapseAll:function(){this.root.collapse(true)},getSelectionModel:function(){if(!this.selModel){this.selModel=new Ext.tree.DefaultSelectionModel()}return this.selModel},expandPath:function(h,a,j){a=a||"id";var e=h.split(this.pathSeparator);var d=this.root;if(d.attributes[a]!=e[1]){if(j){j(false,null)}return}var b=1;var g=function(){if(++b==e.length){if(j){j(true,d)}return}var k=d.findChild(a,e[b]);if(!k){if(j){j(false,d)}return}d=k;k.expand(false,false,g)};d.expand(false,false,g)},selectPath:function(g,a,h){a=a||"id";var d=g.split(this.pathSeparator);var b=d.pop();if(d.length>0){var e=function(k,j){if(k&&j){var l=j.findChild(a,b);if(l){l.select();if(h){h(true,l)}}else{if(h){h(false,l)}}}else{if(h){h(false,l)}}};this.expandPath(d.join(this.pathSeparator),a,e)}else{this.root.select();if(h){h(true,this.root)}}},getTreeEl:function(){return this.body},onRender:function(b,a){Ext.tree.TreePanel.superclass.onRender.call(this,b,a);this.el.addClass("x-tree");this.innerCt=this.body.createChild({tag:"ul",cls:"x-tree-root-ct "+(this.useArrows?"x-tree-arrows":this.lines?"x-tree-lines":"x-tree-no-lines")})},initEvents:function(){Ext.tree.TreePanel.superclass.initEvents.call(this);if(this.containerScroll){Ext.dd.ScrollManager.register(this.body)}if((this.enableDD||this.enableDrop)&&!this.dropZone){this.dropZone=new Ext.tree.TreeDropZone(this,this.dropConfig||{ddGroup:this.ddGroup||"TreeDD",appendOnly:this.ddAppendOnly===true})}if((this.enableDD||this.enableDrag)&&!this.dragZone){this.dragZone=new Ext.tree.TreeDragZone(this,this.dragConfig||{ddGroup:this.ddGroup||"TreeDD",scroll:this.ddScroll})}this.getSelectionModel().init(this)},afterRender:function(){Ext.tree.TreePanel.superclass.afterRender.call(this);this.root.render();if(!this.rootVisible){this.root.renderChildren()}},onDestroy:function(){if(this.rendered){this.body.removeAllListeners();Ext.dd.ScrollManager.unregister(this.body);if(this.dropZone){this.dropZone.unreg()}if(this.dragZone){this.dragZone.unreg()}}this.root.destroy();this.nodeHash=null;Ext.tree.TreePanel.superclass.onDestroy.call(this)}});Ext.tree.TreePanel.nodeTypes={};Ext.reg("treepanel",Ext.tree.TreePanel);Ext.tree.TreeEventModel=function(a){this.tree=a;this.tree.on("render",this.initEvents,this)};Ext.tree.TreeEventModel.prototype={initEvents:function(){var a=this.tree.getTreeEl();a.on("click",this.delegateClick,this);if(this.tree.trackMouseOver!==false){this.tree.innerCt.on("mouseover",this.delegateOver,this);this.tree.innerCt.on("mouseout",this.delegateOut,this)}a.on("dblclick",this.delegateDblClick,this);a.on("contextmenu",this.delegateContextMenu,this)},getNode:function(b){var a;if(a=b.getTarget(".x-tree-node-el",10)){var d=Ext.fly(a,"_treeEvents").getAttributeNS("ext","tree-node-id");if(d){return this.tree.getNodeById(d)}}return null},getNodeTarget:function(b){var a=b.getTarget(".x-tree-node-icon",1);if(!a){a=b.getTarget(".x-tree-node-el",6)}return a},delegateOut:function(b,a){if(!this.beforeEvent(b)){return}if(b.getTarget(".x-tree-ec-icon",1)){var d=this.getNode(b);this.onIconOut(b,d);if(d==this.lastEcOver){delete this.lastEcOver}}if((a=this.getNodeTarget(b))&&!b.within(a,true)){this.onNodeOut(b,this.getNode(b))}},delegateOver:function(b,a){if(!this.beforeEvent(b)){return}if(Ext.isGecko&&!this.trackingDoc){Ext.getBody().on("mouseover",this.trackExit,this);this.trackingDoc=true}if(this.lastEcOver){this.onIconOut(b,this.lastEcOver);delete this.lastEcOver}if(b.getTarget(".x-tree-ec-icon",1)){this.lastEcOver=this.getNode(b);this.onIconOver(b,this.lastEcOver)}if(a=this.getNodeTarget(b)){this.onNodeOver(b,this.getNode(b))}},trackExit:function(a){if(this.lastOverNode&&!a.within(this.lastOverNode.ui.getEl())){this.onNodeOut(a,this.lastOverNode);delete this.lastOverNode;Ext.getBody().un("mouseover",this.trackExit,this);this.trackingDoc=false}},delegateClick:function(b,a){if(!this.beforeEvent(b)){return}if(b.getTarget("input[type=checkbox]",1)){this.onCheckboxClick(b,this.getNode(b))}else{if(b.getTarget(".x-tree-ec-icon",1)){this.onIconClick(b,this.getNode(b))}else{if(this.getNodeTarget(b)){this.onNodeClick(b,this.getNode(b))}}}},delegateDblClick:function(b,a){if(this.beforeEvent(b)&&this.getNodeTarget(b)){this.onNodeDblClick(b,this.getNode(b))}},delegateContextMenu:function(b,a){if(this.beforeEvent(b)&&this.getNodeTarget(b)){this.onNodeContextMenu(b,this.getNode(b))}},onNodeClick:function(b,a){a.ui.onClick(b)},onNodeOver:function(b,a){this.lastOverNode=a;a.ui.onOver(b)},onNodeOut:function(b,a){a.ui.onOut(b)},onIconOver:function(b,a){a.ui.addClass("x-tree-ec-over")},onIconOut:function(b,a){a.ui.removeClass("x-tree-ec-over")},onIconClick:function(b,a){a.ui.ecClick(b)},onCheckboxClick:function(b,a){a.ui.onCheckChange(b)},onNodeDblClick:function(b,a){a.ui.onDblClick(b)},onNodeContextMenu:function(b,a){a.ui.onContextMenu(b)},beforeEvent:function(a){if(this.disabled){a.stopEvent();return false}return true},disable:function(){this.disabled=true},enable:function(){this.disabled=false}};Ext.tree.DefaultSelectionModel=function(a){this.selNode=null;this.addEvents("selectionchange","beforeselect");Ext.apply(this,a);Ext.tree.DefaultSelectionModel.superclass.constructor.call(this)};Ext.extend(Ext.tree.DefaultSelectionModel,Ext.util.Observable,{init:function(a){this.tree=a;a.getTreeEl().on("keydown",this.onKeyDown,this);a.on("click",this.onNodeClick,this)},onNodeClick:function(a,b){this.select(a)},select:function(b){var a=this.selNode;if(a!=b&&this.fireEvent("beforeselect",this,b,a)!==false){if(a){a.ui.onSelectedChange(false)}this.selNode=b;b.ui.onSelectedChange(true);this.fireEvent("selectionchange",this,b,a)}return b},unselect:function(a){if(this.selNode==a){this.clearSelections()}},clearSelections:function(){var a=this.selNode;if(a){a.ui.onSelectedChange(false);this.selNode=null;this.fireEvent("selectionchange",this,null)}return a},getSelectedNode:function(){return this.selNode},isSelected:function(a){return this.selNode==a},selectPrevious:function(){var a=this.selNode||this.lastSelNode;if(!a){return null}var d=a.previousSibling;if(d){if(!d.isExpanded()||d.childNodes.length<1){return this.select(d)}else{var b=d.lastChild;while(b&&b.isExpanded()&&b.childNodes.length>0){b=b.lastChild}return this.select(b)}}else{if(a.parentNode&&(this.tree.rootVisible||!a.parentNode.isRoot)){return this.select(a.parentNode)}}return null},selectNext:function(){var b=this.selNode||this.lastSelNode;if(!b){return null}if(b.firstChild&&b.isExpanded()){return this.select(b.firstChild)}else{if(b.nextSibling){return this.select(b.nextSibling)}else{if(b.parentNode){var a=null;b.parentNode.bubble(function(){if(this.nextSibling){a=this.getOwnerTree().selModel.select(this.nextSibling);return false}});return a}}}return null},onKeyDown:function(d){var b=this.selNode||this.lastSelNode;var g=this;if(!b){return}var a=d.getKey();switch(a){case d.DOWN:d.stopEvent();this.selectNext();break;case d.UP:d.stopEvent();this.selectPrevious();break;case d.RIGHT:d.preventDefault();if(b.hasChildNodes()){if(!b.isExpanded()){b.expand()}else{if(b.firstChild){this.select(b.firstChild,d)}}}break;case d.LEFT:d.preventDefault();if(b.hasChildNodes()&&b.isExpanded()){b.collapse()}else{if(b.parentNode&&(this.tree.rootVisible||b.parentNode!=this.tree.getRootNode())){this.select(b.parentNode,d)}}break}}});Ext.tree.MultiSelectionModel=function(a){this.selNodes=[];this.selMap={};this.addEvents("selectionchange");Ext.apply(this,a);Ext.tree.MultiSelectionModel.superclass.constructor.call(this)};Ext.extend(Ext.tree.MultiSelectionModel,Ext.util.Observable,{init:function(a){this.tree=a;a.getTreeEl().on("keydown",this.onKeyDown,this);a.on("click",this.onNodeClick,this)},onNodeClick:function(a,b){if(b.ctrlKey&&this.isSelected(a)){this.unselect(a)}else{this.select(a,b,b.ctrlKey)}},select:function(a,d,b){if(b!==true){this.clearSelections(true)}if(this.isSelected(a)){this.lastSelNode=a;return a}this.selNodes.push(a);this.selMap[a.id]=a;this.lastSelNode=a;a.ui.onSelectedChange(true);this.fireEvent("selectionchange",this,this.selNodes);return a},unselect:function(b){if(this.selMap[b.id]){b.ui.onSelectedChange(false);var d=this.selNodes;var a=d.indexOf(b);if(a!=-1){this.selNodes.splice(a,1)}delete this.selMap[b.id];this.fireEvent("selectionchange",this,this.selNodes)}},clearSelections:function(b){var e=this.selNodes;if(e.length>0){for(var d=0,a=e.length;d<a;d++){e[d].ui.onSelectedChange(false)}this.selNodes=[];this.selMap={};if(b!==true){this.fireEvent("selectionchange",this,this.selNodes)}}},isSelected:function(a){return this.selMap[a.id]?true:false},getSelectedNodes:function(){return this.selNodes},onKeyDown:Ext.tree.DefaultSelectionModel.prototype.onKeyDown,selectNext:Ext.tree.DefaultSelectionModel.prototype.selectNext,selectPrevious:Ext.tree.DefaultSelectionModel.prototype.selectPrevious});Ext.tree.TreeNode=function(a){a=a||{};if(typeof a=="string"){a={text:a}}this.childrenRendered=false;this.rendered=false;Ext.tree.TreeNode.superclass.constructor.call(this,a);this.expanded=a.expanded===true;this.isTarget=a.isTarget!==false;this.draggable=a.draggable!==false&&a.allowDrag!==false;this.allowChildren=a.allowChildren!==false&&a.allowDrop!==false;this.text=a.text;this.disabled=a.disabled===true;this.hidden=a.hidden===true;this.addEvents("textchange","beforeexpand","beforecollapse","expand","disabledchange","collapse","beforeclick","click","checkchange","dblclick","contextmenu","beforechildrenrendered");var b=this.attributes.uiProvider||this.defaultUI||Ext.tree.TreeNodeUI;this.ui=new b(this)};Ext.extend(Ext.tree.TreeNode,Ext.data.Node,{preventHScroll:true,isExpanded:function(){return this.expanded},getUI:function(){return this.ui},getLoader:function(){var a;return this.loader||((a=this.getOwnerTree())&&a.loader?a.loader:new Ext.tree.TreeLoader())},setFirstChild:function(a){var b=this.firstChild;Ext.tree.TreeNode.superclass.setFirstChild.call(this,a);if(this.childrenRendered&&b&&a!=b){b.renderIndent(true,true)}if(this.rendered){this.renderIndent(true,true)}},setLastChild:function(b){var a=this.lastChild;Ext.tree.TreeNode.superclass.setLastChild.call(this,b);if(this.childrenRendered&&a&&b!=a){a.renderIndent(true,true)}if(this.rendered){this.renderIndent(true,true)}},appendChild:function(b){if(!b.render&&!Ext.isArray(b)){b=this.getLoader().createNode(b)}var a=Ext.tree.TreeNode.superclass.appendChild.call(this,b);if(a&&this.childrenRendered){a.render()}this.ui.updateExpandIcon();return a},removeChild:function(a){this.ownerTree.getSelectionModel().unselect(a);Ext.tree.TreeNode.superclass.removeChild.apply(this,arguments);if(this.childrenRendered){a.ui.remove()}if(this.childNodes.length<1){this.collapse(false,false)}else{this.ui.updateExpandIcon()}if(!this.firstChild&&!this.isHiddenRoot()){this.childrenRendered=false}return a},insertBefore:function(d,a){if(!d.render){d=this.getLoader().createNode(d)}var b=Ext.tree.TreeNode.superclass.insertBefore.call(this,d,a);if(b&&a&&this.childrenRendered){d.render()}this.ui.updateExpandIcon();return b},setText:function(b){var a=this.text;this.text=b;this.attributes.text=b;if(this.rendered){this.ui.onTextChange(this,b,a)}this.fireEvent("textchange",this,b,a)},select:function(){this.getOwnerTree().getSelectionModel().select(this)},unselect:function(){this.getOwnerTree().getSelectionModel().unselect(this)},isSelected:function(){return this.getOwnerTree().getSelectionModel().isSelected(this)},expand:function(a,b,d){if(!this.expanded){if(this.fireEvent("beforeexpand",this,a,b)===false){return}if(!this.childrenRendered){this.renderChildren()}this.expanded=true;if(!this.isHiddenRoot()&&(this.getOwnerTree().animate&&b!==false)||b){this.ui.animExpand(function(){this.fireEvent("expand",this);if(typeof d=="function"){d(this)}if(a===true){this.expandChildNodes(true)}}.createDelegate(this));return}else{this.ui.expand();this.fireEvent("expand",this);if(typeof d=="function"){d(this)}}}else{if(typeof d=="function"){d(this)}}if(a===true){this.expandChildNodes(true)}},isHiddenRoot:function(){return this.isRoot&&!this.getOwnerTree().rootVisible},collapse:function(b,g){if(this.expanded&&!this.isHiddenRoot()){if(this.fireEvent("beforecollapse",this,b,g)===false){return}this.expanded=false;if((this.getOwnerTree().animate&&g!==false)||g){this.ui.animCollapse(function(){this.fireEvent("collapse",this);if(b===true){this.collapseChildNodes(true)}}.createDelegate(this));return}else{this.ui.collapse();this.fireEvent("collapse",this)}}if(b===true){var e=this.childNodes;for(var d=0,a=e.length;d<a;d++){e[d].collapse(true,false)}}},delayedExpand:function(a){if(!this.expandProcId){this.expandProcId=this.expand.defer(a,this)}},cancelExpand:function(){if(this.expandProcId){clearTimeout(this.expandProcId)}this.expandProcId=false},toggle:function(){if(this.expanded){this.collapse()}else{this.expand()}},ensureVisible:function(b){var a=this.getOwnerTree();a.expandPath(this.parentNode?this.parentNode.getPath():this.getPath(),false,function(){var d=a.getNodeById(this.id);a.getTreeEl().scrollChildIntoView(d.ui.anchor);Ext.callback(b)}.createDelegate(this))},expandChildNodes:function(b){var e=this.childNodes;for(var d=0,a=e.length;d<a;d++){e[d].expand(b)}},collapseChildNodes:function(b){var e=this.childNodes;for(var d=0,a=e.length;d<a;d++){e[d].collapse(b)}},disable:function(){this.disabled=true;this.unselect();if(this.rendered&&this.ui.onDisableChange){this.ui.onDisableChange(this,true)}this.fireEvent("disabledchange",this,true)},enable:function(){this.disabled=false;if(this.rendered&&this.ui.onDisableChange){this.ui.onDisableChange(this,false)}this.fireEvent("disabledchange",this,false)},renderChildren:function(b){if(b!==false){this.fireEvent("beforechildrenrendered",this)}var e=this.childNodes;for(var d=0,a=e.length;d<a;d++){e[d].render(true)}this.childrenRendered=true},sort:function(g,e){Ext.tree.TreeNode.superclass.sort.apply(this,arguments);if(this.childrenRendered){var d=this.childNodes;for(var b=0,a=d.length;b<a;b++){d[b].render(true)}}},render:function(a){this.ui.render(a);if(!this.rendered){this.getOwnerTree().registerNode(this);this.rendered=true;if(this.expanded){this.expanded=false;this.expand(false,false)}}},renderIndent:function(b,g){if(g){this.ui.childIndent=null}this.ui.renderIndent();if(b===true&&this.childrenRendered){var e=this.childNodes;for(var d=0,a=e.length;d<a;d++){e[d].renderIndent(true,g)}}},beginUpdate:function(){this.childrenRendered=false},endUpdate:function(){if(this.expanded&&this.rendered){this.renderChildren()}},destroy:function(){if(this.childNodes){for(var b=0,a=this.childNodes.length;b<a;b++){this.childNodes[b].destroy()}this.childNodes=null}if(this.ui.destroy){this.ui.destroy()}},onIdChange:function(a){this.ui.onIdChange(a)}});Ext.tree.TreePanel.nodeTypes.node=Ext.tree.TreeNode;Ext.tree.AsyncTreeNode=function(a){this.loaded=a&&a.loaded===true;this.loading=false;Ext.tree.AsyncTreeNode.superclass.constructor.apply(this,arguments);this.addEvents("beforeload","load")};Ext.extend(Ext.tree.AsyncTreeNode,Ext.tree.TreeNode,{expand:function(b,e,h){if(this.loading){var g;var d=function(){if(!this.loading){clearInterval(g);this.expand(b,e,h)}}.createDelegate(this);g=setInterval(d,200);return}if(!this.loaded){if(this.fireEvent("beforeload",this)===false){return}this.loading=true;this.ui.beforeLoad(this);var a=this.loader||this.attributes.loader||this.getOwnerTree().getLoader();if(a){a.load(this,this.loadComplete.createDelegate(this,[b,e,h]));return}}Ext.tree.AsyncTreeNode.superclass.expand.call(this,b,e,h)},isLoading:function(){return this.loading},loadComplete:function(a,b,d){this.loading=false;this.loaded=true;this.ui.afterLoad(this);this.fireEvent("load",this);this.expand(a,b,d)},isLoaded:function(){return this.loaded},hasChildNodes:function(){if(!this.isLeaf()&&!this.loaded){return true}else{return Ext.tree.AsyncTreeNode.superclass.hasChildNodes.call(this)}},reload:function(a){this.collapse(false,false);while(this.firstChild){this.removeChild(this.firstChild).destroy()}this.childrenRendered=false;this.loaded=false;if(this.isHiddenRoot()){this.expanded=false}this.expand(false,false,a)}});Ext.tree.TreePanel.nodeTypes.async=Ext.tree.AsyncTreeNode;Ext.tree.TreeNodeUI=function(a){this.node=a;this.rendered=false;this.animating=false;this.wasLeaf=true;this.ecc="x-tree-ec-icon x-tree-elbow";this.emptyIcon=Ext.BLANK_IMAGE_URL};Ext.tree.TreeNodeUI.prototype={removeChild:function(a){if(this.rendered){this.ctNode.removeChild(a.ui.getEl())}},beforeLoad:function(){this.addClass("x-tree-node-loading")},afterLoad:function(){this.removeClass("x-tree-node-loading")},onTextChange:function(b,d,a){if(this.rendered){this.textNode.innerHTML=d}},onDisableChange:function(a,b){this.disabled=b;if(this.checkbox){this.checkbox.disabled=b}if(b){this.addClass("x-tree-node-disabled")}else{this.removeClass("x-tree-node-disabled")}},onSelectedChange:function(a){if(a){this.focus();this.addClass("x-tree-selected")}else{this.removeClass("x-tree-selected")}},onMove:function(a,j,g,h,e,b){this.childIndent=null;if(this.rendered){var k=h.ui.getContainer();if(!k){this.holder=document.createElement("div");this.holder.appendChild(this.wrap);return}var d=b?b.ui.getEl():null;if(d){k.insertBefore(this.wrap,d)}else{k.appendChild(this.wrap)}this.node.renderIndent(true)}},addClass:function(a){if(this.elNode){Ext.fly(this.elNode).addClass(a)}},removeClass:function(a){if(this.elNode){Ext.fly(this.elNode).removeClass(a)}},remove:function(){if(this.rendered){this.holder=document.createElement("div");this.holder.appendChild(this.wrap)}},fireEvent:function(){return this.node.fireEvent.apply(this.node,arguments)},initEvents:function(){this.node.on("move",this.onMove,this);if(this.node.disabled){this.addClass("x-tree-node-disabled");if(this.checkbox){this.checkbox.disabled=true}}if(this.node.hidden){this.hide()}var b=this.node.getOwnerTree();var a=b.enableDD||b.enableDrag||b.enableDrop;if(a&&(!this.node.isRoot||b.rootVisible)){Ext.dd.Registry.register(this.elNode,{node:this.node,handles:this.getDDHandles(),isHandle:false})}},getDDHandles:function(){return[this.iconNode,this.textNode,this.elNode]},hide:function(){this.node.hidden=true;if(this.wrap){this.wrap.style.display="none"}},show:function(){this.node.hidden=false;if(this.wrap){this.wrap.style.display=""}},onContextMenu:function(a){if(this.node.hasListener("contextmenu")||this.node.getOwnerTree().hasListener("contextmenu")){a.preventDefault();this.focus();this.fireEvent("contextmenu",this.node,a)}},onClick:function(d){if(this.dropping){d.stopEvent();return}if(this.fireEvent("beforeclick",this.node,d)!==false){var b=d.getTarget("a");if(!this.disabled&&this.node.attributes.href&&b){this.fireEvent("click",this.node,d);return}else{if(b&&d.ctrlKey){d.stopEvent()}}d.preventDefault();if(this.disabled){return}if(this.node.attributes.singleClickExpand&&!this.animating&&this.node.isExpandable()){this.node.toggle()}this.fireEvent("click",this.node,d)}else{d.stopEvent()}},onDblClick:function(a){a.preventDefault();if(this.disabled){return}if(this.checkbox){this.toggleCheck()}if(!this.animating&&this.node.isExpandable()){this.node.toggle()}this.fireEvent("dblclick",this.node,a)},onOver:function(a){this.addClass("x-tree-node-over")},onOut:function(a){this.removeClass("x-tree-node-over")},onCheckChange:function(){var a=this.checkbox.checked;this.checkbox.defaultChecked=a;this.node.attributes.checked=a;this.fireEvent("checkchange",this.node,a)},ecClick:function(a){if(!this.animating&&this.node.isExpandable()){this.node.toggle()}},startDrop:function(){this.dropping=true},endDrop:function(){setTimeout(function(){this.dropping=false}.createDelegate(this),50)},expand:function(){this.updateExpandIcon();this.ctNode.style.display=""},focus:function(){if(!this.node.preventHScroll){try{this.anchor.focus()}catch(d){}}else{try{var b=this.node.getOwnerTree().getTreeEl().dom;var a=b.scrollLeft;this.anchor.focus();b.scrollLeft=a}catch(d){}}},toggleCheck:function(b){var a=this.checkbox;if(a){a.checked=(b===undefined?!a.checked:b);this.onCheckChange()}},blur:function(){try{this.anchor.blur()}catch(a){}},animExpand:function(b){var a=Ext.get(this.ctNode);a.stopFx();if(!this.node.isExpandable()){this.updateExpandIcon();this.ctNode.style.display="";Ext.callback(b);return}this.animating=true;this.updateExpandIcon();a.slideIn("t",{callback:function(){this.animating=false;Ext.callback(b)},scope:this,duration:this.node.ownerTree.duration||0.25})},highlight:function(){var a=this.node.getOwnerTree();Ext.fly(this.wrap).highlight(a.hlColor||"C3DAF9",{endColor:a.hlBaseColor})},collapse:function(){this.updateExpandIcon();this.ctNode.style.display="none"},animCollapse:function(b){var a=Ext.get(this.ctNode);a.enableDisplayMode("block");a.stopFx();this.animating=true;this.updateExpandIcon();a.slideOut("t",{callback:function(){this.animating=false;Ext.callback(b)},scope:this,duration:this.node.ownerTree.duration||0.25})},getContainer:function(){return this.ctNode},getEl:function(){return this.wrap},appendDDGhost:function(a){a.appendChild(this.elNode.cloneNode(true))},getDDRepairXY:function(){return Ext.lib.Dom.getXY(this.iconNode)},onRender:function(){this.render()},render:function(d){var g=this.node,b=g.attributes;var e=g.parentNode?g.parentNode.ui.getContainer():g.ownerTree.innerCt.dom;if(!this.rendered){this.rendered=true;this.renderElements(g,b,e,d);if(b.qtip){if(this.textNode.setAttributeNS){this.textNode.setAttributeNS("ext","qtip",b.qtip);if(b.qtipTitle){this.textNode.setAttributeNS("ext","qtitle",b.qtipTitle)}}else{this.textNode.setAttribute("ext:qtip",b.qtip);if(b.qtipTitle){this.textNode.setAttribute("ext:qtitle",b.qtipTitle)}}}else{if(b.qtipCfg){b.qtipCfg.target=Ext.id(this.textNode);Ext.QuickTips.register(b.qtipCfg)}}this.initEvents();if(!this.node.expanded){this.updateExpandIcon(true)}}else{if(d===true){e.appendChild(this.wrap)}}},renderElements:function(g,m,l,o){this.indentMarkup=g.parentNode?g.parentNode.ui.getChildIndent():"";var h=typeof m.checked=="boolean";var d=m.href?m.href:Ext.isGecko?"":"#";var e=['<li class="x-tree-node"><div ext:tree-node-id="',g.id,'" class="x-tree-node-el x-tree-node-leaf x-unselectable ',m.cls,'" unselectable="on">','<span class="x-tree-node-indent">',this.indentMarkup,"</span>",'<img src="',this.emptyIcon,'" class="x-tree-ec-icon x-tree-elbow" />','<img src="',m.icon||this.emptyIcon,'" class="x-tree-node-icon',(m.icon?" x-tree-node-inline-icon":""),(m.iconCls?" "+m.iconCls:""),'" unselectable="on" />',h?('<input class="x-tree-node-cb" type="checkbox" '+(m.checked?'checked="checked" />':"/>")):"",'<a hidefocus="on" class="x-tree-node-anchor" href="',d,'" tabIndex="1" ',m.hrefTarget?' target="'+m.hrefTarget+'"':"",'><span unselectable="on">',g.text,"</span></a></div>",'<ul class="x-tree-node-ct" style="display:none;"></ul>',"</li>"].join("");var b;if(o!==true&&g.nextSibling&&(b=g.nextSibling.ui.getEl())){this.wrap=Ext.DomHelper.insertHtml("beforeBegin",b,e)}else{this.wrap=Ext.DomHelper.insertHtml("beforeEnd",l,e)}this.elNode=this.wrap.childNodes[0];this.ctNode=this.wrap.childNodes[1];var k=this.elNode.childNodes;this.indentNode=k[0];this.ecNode=k[1];this.iconNode=k[2];var j=3;if(h){this.checkbox=k[3];this.checkbox.defaultChecked=this.checkbox.checked;j++}this.anchor=k[j];this.textNode=k[j].firstChild},getAnchor:function(){return this.anchor},getTextEl:function(){return this.textNode},getIconEl:function(){return this.iconNode},isChecked:function(){return this.checkbox?this.checkbox.checked:false},updateExpandIcon:function(){if(this.rendered){var h=this.node,e,d;var a=h.isLast()?"x-tree-elbow-end":"x-tree-elbow";var g=h.hasChildNodes();if(g||h.attributes.expandable){if(h.expanded){a+="-minus";e="x-tree-node-collapsed";d="x-tree-node-expanded"}else{a+="-plus";e="x-tree-node-expanded";d="x-tree-node-collapsed"}if(this.wasLeaf){this.removeClass("x-tree-node-leaf");this.wasLeaf=false}if(this.c1!=e||this.c2!=d){Ext.fly(this.elNode).replaceClass(e,d);this.c1=e;this.c2=d}}else{if(!this.wasLeaf){Ext.fly(this.elNode).replaceClass("x-tree-node-expanded","x-tree-node-leaf");delete this.c1;delete this.c2;this.wasLeaf=true}}var b="x-tree-ec-icon "+a;if(this.ecc!=b){this.ecNode.className=b;this.ecc=b}}},onIdChange:function(a){if(this.rendered){this.elNode.setAttribute("ext:tree-node-id",a)}},getChildIndent:function(){if(!this.childIndent){var a=[];var b=this.node;while(b){if(!b.isRoot||(b.isRoot&&b.ownerTree.rootVisible)){if(!b.isLast()){a.unshift('<img src="'+this.emptyIcon+'" class="x-tree-elbow-line" />')}else{a.unshift('<img src="'+this.emptyIcon+'" class="x-tree-icon" />')}}b=b.parentNode}this.childIndent=a.join("")}return this.childIndent},renderIndent:function(){if(this.rendered){var a="";var b=this.node.parentNode;if(b){a=b.ui.getChildIndent()}if(this.indentMarkup!=a){this.indentNode.innerHTML=a;this.indentMarkup=a}this.updateExpandIcon()}},destroy:function(){if(this.elNode){Ext.dd.Registry.unregister(this.elNode.id)}delete this.elNode;delete this.ctNode;delete this.indentNode;delete this.ecNode;delete this.iconNode;delete this.checkbox;delete this.anchor;delete this.textNode;if(this.holder){delete this.wrap;Ext.removeNode(this.holder);delete this.holder}else{Ext.removeNode(this.wrap);delete this.wrap}}};Ext.tree.RootTreeNodeUI=Ext.extend(Ext.tree.TreeNodeUI,{render:function(){if(!this.rendered){var a=this.node.ownerTree.innerCt.dom;this.node.expanded=true;a.innerHTML='<div class="x-tree-root-node"></div>';this.wrap=this.ctNode=a.firstChild}},collapse:Ext.emptyFn,expand:Ext.emptyFn});Ext.tree.TreeLoader=function(a){this.baseParams={};Ext.apply(this,a);this.addEvents("beforeload","load","loadexception");Ext.tree.TreeLoader.superclass.constructor.call(this)};Ext.extend(Ext.tree.TreeLoader,Ext.util.Observable,{uiProviders:{},clearOnLoad:true,load:function(a,b){if(this.clearOnLoad){while(a.firstChild){a.removeChild(a.firstChild)}}if(this.doPreload(a)){if(typeof b=="function"){b()}}else{if(this.dataUrl||this.url){this.requestData(a,b)}}},doPreload:function(e){if(e.attributes.children){if(e.childNodes.length<1){var d=e.attributes.children;e.beginUpdate();for(var b=0,a=d.length;b<a;b++){var g=e.appendChild(this.createNode(d[b]));if(this.preloadChildren){this.doPreload(g)}}e.endUpdate()}return true}else{return false}},getParams:function(e){var a=[],d=this.baseParams;for(var b in d){if(typeof d[b]!="function"){a.push(encodeURIComponent(b),"=",encodeURIComponent(d[b]),"&")}}a.push("node=",encodeURIComponent(e.id));return a.join("")},requestData:function(a,b){if(this.fireEvent("beforeload",this,a,b)!==false){this.transId=Ext.Ajax.request({method:this.requestMethod,url:this.dataUrl||this.url,success:this.handleResponse,failure:this.handleFailure,scope:this,argument:{callback:b,node:a},params:this.getParams(a)})}else{if(typeof b=="function"){b()}}},isLoading:function(){return!!this.transId},abort:function(){if(this.isLoading()){Ext.Ajax.abort(this.transId)}},createNode:function(attr){if(this.baseAttrs){Ext.applyIf(attr,this.baseAttrs)}if(this.applyLoader!==false){attr.loader=this}if(typeof attr.uiProvider=="string"){attr.uiProvider=this.uiProviders[attr.uiProvider]||eval(attr.uiProvider)}if(attr.nodeType){return new Ext.tree.TreePanel.nodeTypes[attr.nodeType](attr)}else{return attr.leaf?new Ext.tree.TreeNode(attr):new Ext.tree.AsyncTreeNode(attr)}},processResponse:function(g,d,l){var m=g.responseText;try{var a=Ext.decode(m);d.beginUpdate();for(var h=0,j=a.length;h<j;h++){var b=this.createNode(a[h]);if(b){d.appendChild(b)}}d.endUpdate();if(typeof l=="function"){l(this,d)}}catch(k){this.handleFailure(g)}},handleResponse:function(d){this.transId=false;var b=d.argument;this.processResponse(d,b.node,b.callback);this.fireEvent("load",this,b.node,d)},handleFailure:function(d){this.transId=false;var b=d.argument;this.fireEvent("loadexception",this,b.node,d);if(typeof b.callback=="function"){b.callback(this,b.node)}}});Ext.tree.TreeFilter=function(a,b){this.tree=a;this.filtered={};Ext.apply(this,b)};Ext.tree.TreeFilter.prototype={clearBlank:false,reverse:false,autoClear:false,remove:false,filter:function(e,a,b){a=a||"text";var d;if(typeof e=="string"){var g=e.length;if(g==0&&this.clearBlank){this.clear();return}e=e.toLowerCase();d=function(h){return h.attributes[a].substr(0,g).toLowerCase()==e}}else{if(e.exec){d=function(h){return e.test(h.attributes[a])}}else{throw"Illegal filter type, must be string or regex"}}this.filterBy(d,null,b)},filterBy:function(e,d,b){b=b||this.tree.root;if(this.autoClear){this.clear()}var a=this.filtered,k=this.reverse;var g=function(o){if(o==b){return true}if(a[o.id]){return false}var l=e.call(d||o,o);if(!l||k){a[o.id]=o;o.ui.hide();return false}return true};b.cascade(g);if(this.remove){for(var j in a){if(typeof j!="function"){var h=a[j];if(h&&h.parentNode){h.parentNode.removeChild(h)}}}}},clear:function(){var b=this.tree;var a=this.filtered;for(var e in a){if(typeof e!="function"){var d=a[e];if(d){d.ui.show()}}}this.filtered={}}};Ext.tree.TreeSorter=function(b,d){Ext.apply(this,d);b.on("beforechildrenrendered",this.doSort,this);b.on("append",this.updateSort,this);b.on("insert",this.updateSort,this);b.on("textchange",this.updateSortParent,this);var g=this.dir&&this.dir.toLowerCase()=="desc";var h=this.property||"text";var j=this.sortType;var a=this.folderSort;var e=this.caseSensitive===true;var k=this.leafAttr||"leaf";this.sortFn=function(m,l){if(a){if(m.attributes[k]&&!l.attributes[k]){return 1}if(!m.attributes[k]&&l.attributes[k]){return-1}}var o=j?j(m):(e?m.attributes[h]:m.attributes[h].toUpperCase());var n=j?j(l):(e?l.attributes[h]:l.attributes[h].toUpperCase());if(o<n){return g?+1:-1}else{if(o>n){return g?-1:+1}else{return 0}}}};Ext.tree.TreeSorter.prototype={doSort:function(a){a.sort(this.sortFn)},compareNodes:function(b,a){return(b.text.toUpperCase()>a.text.toUpperCase()?1:-1)},updateSort:function(a,b){if(b.childrenRendered){this.doSort.defer(1,this,[b])}},updateSortParent:function(a){var b=a.parentNode;if(b&&b.childrenRendered){this.doSort.defer(1,this,[b])}}};if(Ext.dd.DropZone){Ext.tree.TreeDropZone=function(a,b){this.allowParentInsert=false;this.allowContainerDrop=false;this.appendOnly=false;Ext.tree.TreeDropZone.superclass.constructor.call(this,a.innerCt,b);this.tree=a;this.dragOverData={};this.lastInsertClass="x-tree-no-status"};Ext.extend(Ext.tree.TreeDropZone,Ext.dd.DropZone,{ddGroup:"TreeDD",expandDelay:1000,expandNode:function(a){if(a.hasChildNodes()&&!a.isExpanded()){a.expand(false,null,this.triggerCacheRefresh.createDelegate(this))}},queueExpand:function(a){this.expandProcId=this.expandNode.defer(this.expandDelay,this,[a])},cancelExpand:function(){if(this.expandProcId){clearTimeout(this.expandProcId);this.expandProcId=false}},isValidDropPoint:function(a,m,k,g,d){if(!a||!d){return false}var h=a.node;var j=d.node;if(!(h&&h.isTarget&&m)){return false}if(m=="append"&&h.allowChildren===false){return false}if((m=="above"||m=="below")&&(h.parentNode&&h.parentNode.allowChildren===false)){return false}if(j&&(h==j||j.contains(h))){return false}var b=this.dragOverData;b.tree=this.tree;b.target=h;b.data=d;b.point=m;b.source=k;b.rawEvent=g;b.dropNode=j;b.cancel=false;var l=this.tree.fireEvent("nodedragover",b);return b.cancel===false&&l!==false},getDropPoint:function(j,h,o){var p=h.node;if(p.isRoot){return p.allowChildren!==false?"append":false}var d=h.ddel;var r=Ext.lib.Dom.getY(d),l=r+d.offsetHeight;var k=Ext.lib.Event.getPageY(j);var m=p.allowChildren===false||p.isLeaf();if(this.appendOnly||p.parentNode.allowChildren===false){return m?false:"append"}var g=false;if(!this.allowParentInsert){g=p.hasChildNodes()&&p.isExpanded()}var a=(l-r)/(m?2:3);if(k>=r&&k<(r+a)){return"above"}else{if(!g&&(m||k>=l-a&&k<=l)){return"below"}else{return"append"}}},onNodeEnter:function(g,a,d,b){this.cancelExpand()},onNodeOver:function(b,k,j,h){var m=this.getDropPoint(j,b,k);var d=b.node;if(!this.expandProcId&&m=="append"&&d.hasChildNodes()&&!b.node.isExpanded()){this.queueExpand(d)}else{if(m!="append"){this.cancelExpand()}}var g=this.dropNotAllowed;if(this.isValidDropPoint(b,m,k,j,h)){if(m){var a=b.ddel;var l;if(m=="above"){g=b.node.isFirst()?"x-tree-drop-ok-above":"x-tree-drop-ok-between";l="x-tree-drag-insert-above"}else{if(m=="below"){g=b.node.isLast()?"x-tree-drop-ok-below":"x-tree-drop-ok-between";l="x-tree-drag-insert-below"}else{g="x-tree-drop-ok-append";l="x-tree-drag-append"}}if(this.lastInsertClass!=l){Ext.fly(a).replaceClass(this.lastInsertClass,l);this.lastInsertClass=l}}}return g},onNodeOut:function(g,a,d,b){this.cancelExpand();this.removeDropIndicators(g)},onNodeDrop:function(d,m,h,g){var l=this.getDropPoint(h,d,m);var j=d.node;j.ui.startDrop();if(!this.isValidDropPoint(d,l,m,h,g)){j.ui.endDrop();return false}var k=g.node||(m.getTreeNode?m.getTreeNode(g,j,l,h):null);var b={tree:this.tree,target:j,data:g,point:l,source:m,rawEvent:h,dropNode:k,cancel:!k,dropStatus:false};var a=this.tree.fireEvent("beforenodedrop",b);if(a===false||b.cancel===true||!b.dropNode){j.ui.endDrop();return b.dropStatus}j=b.target;if(l=="append"&&!j.isExpanded()){j.expand(false,null,function(){this.completeDrop(b)}.createDelegate(this))}else{this.completeDrop(b)}return true},completeDrop:function(j){var e=j.dropNode,g=j.point,d=j.target;if(!Ext.isArray(e)){e=[e]}var h;for(var b=0,a=e.length;b<a;b++){h=e[b];if(g=="above"){d.parentNode.insertBefore(h,d)}else{if(g=="below"){d.parentNode.insertBefore(h,d.nextSibling)}else{d.appendChild(h)}}}h.ui.focus();if(Ext.enableFx&&this.tree.hlDrop){h.ui.highlight()}d.ui.endDrop();this.tree.fireEvent("nodedrop",j)},afterNodeMoved:function(a,d,h,g,b){if(Ext.enableFx&&this.tree.hlDrop){b.ui.focus();b.ui.highlight()}this.tree.fireEvent("nodedrop",this.tree,g,d,a,h)},getTree:function(){return this.tree},removeDropIndicators:function(b){if(b&&b.ddel){var a=b.ddel;Ext.fly(a).removeClass(["x-tree-drag-insert-above","x-tree-drag-insert-below","x-tree-drag-append"]);this.lastInsertClass="_noclass"}},beforeDragDrop:function(b,a,d){this.cancelExpand();return true},afterRepair:function(a){if(a&&Ext.enableFx){a.node.ui.highlight()}this.hideProxy()}})}if(Ext.dd.DragZone){Ext.tree.TreeDragZone=function(a,b){Ext.tree.TreeDragZone.superclass.constructor.call(this,a.getTreeEl(),b);this.tree=a};Ext.extend(Ext.tree.TreeDragZone,Ext.dd.DragZone,{ddGroup:"TreeDD",onBeforeDrag:function(a,b){var d=a.node;return d&&d.draggable&&!d.disabled},onInitDrag:function(b){var a=this.dragData;this.tree.getSelectionModel().select(a.node);this.tree.eventModel.disable();this.proxy.update("");a.node.ui.appendDDGhost(this.proxy.ghost.dom);this.tree.fireEvent("startdrag",this.tree,a.node,b)},getRepairXY:function(b,a){return a.node.ui.getDDRepairXY()},onEndDrag:function(a,b){this.tree.eventModel.enable.defer(100,this.tree.eventModel);this.tree.fireEvent("enddrag",this.tree,a.node,b)},onValidDrop:function(a,b,d){this.tree.fireEvent("dragdrop",this.tree,this.dragData.node,a,b);this.hideProxy()},beforeInvalidDrop:function(a,d){var b=this.tree.getSelectionModel();b.clearSelections();b.select(this.dragData.node)},afterRepair:function(){if(Ext.enableFx&&this.tree.hlDrop){Ext.Element.fly(this.dragData.ddel).highlight(this.hlColor||"c3daf9")}this.dragging=false}})}Ext.tree.TreeEditor=function(a,d,b){d=d||{};var e=d.events?d:new Ext.form.TextField(d);Ext.tree.TreeEditor.superclass.constructor.call(this,e,b);this.tree=a;if(!a.rendered){a.on("render",this.initEditor,this)}else{this.initEditor(a)}};Ext.extend(Ext.tree.TreeEditor,Ext.Editor,{alignment:"l-l",autoSize:false,hideEl:false,cls:"x-small-editor x-tree-editor",shim:false,shadow:"frame",maxWidth:250,editDelay:350,initEditor:function(a){a.on("beforeclick",this.beforeNodeClick,this);a.on("dblclick",this.onNodeDblClick,this);this.on("complete",this.updateNode,this);this.on("beforestartedit",this.fitToTree,this);this.on("startedit",this.bindScroll,this,{delay:10});this.on("specialkey",this.onSpecialKey,this)},fitToTree:function(b,d){var g=this.tree.getTreeEl().dom,e=d.dom;if(g.scrollLeft>e.offsetLeft){g.scrollLeft=e.offsetLeft}var a=Math.min(this.maxWidth,(g.clientWidth>20?g.clientWidth:g.offsetWidth)-Math.max(0,e.offsetLeft-g.scrollLeft)-5);this.setSize(a,"")},triggerEdit:function(a,d){this.completeEdit();if(a.attributes.editable!==false){this.editNode=a;if(this.tree.autoScroll){a.ui.getEl().scrollIntoView(this.tree.body)}var b=a.text||"";if(!Ext.isGecko&&Ext.isEmpty(a.text)){a.setText("&nbsp;")}this.autoEditTimer=this.startEdit.defer(this.editDelay,this,[a.ui.textNode,b]);return false}},bindScroll:function(){this.tree.getTreeEl().on("scroll",this.cancelEdit,this)},beforeNodeClick:function(a,b){clearTimeout(this.autoEditTimer);if(this.tree.getSelectionModel().isSelected(a)){b.stopEvent();return this.triggerEdit(a)}},onNodeDblClick:function(a,b){clearTimeout(this.autoEditTimer)},updateNode:function(a,b){this.tree.getTreeEl().un("scroll",this.cancelEdit,this);this.editNode.setText(b)},onHide:function(){Ext.tree.TreeEditor.superclass.onHide.call(this);if(this.editNode){this.editNode.ui.focus.defer(50,this.editNode.ui)}},onSpecialKey:function(d,b){var a=b.getKey();if(a==b.ESC){b.stopEvent();this.cancelEdit()}else{if(a==b.ENTER&&!b.hasModifier()){b.stopEvent();this.completeEdit()}}}});Ext.layout.MenuLayout=Ext.extend(Ext.layout.ContainerLayout,{renderItem:function(g,b,e){if(!this.itemTpl){this.itemTpl=Ext.layout.MenuLayout.prototype.itemTpl=new Ext.XTemplate('<li id="{itemId}" class="{itemCls}">','<tpl if="needsIcon">','<img src="{icon}" class="{iconCls}">',"</tpl>","</li>")}if(g&&!g.rendered){if(typeof b=="number"){b=e.dom.childNodes[b]}var d=this.getItemArgs(g);g.render(g.positionEl=b?this.itemTpl.insertBefore(b,d,true):this.itemTpl.append(e,d,true));g.positionEl.menuItemId=g.itemId||g.id;if(!d.isMenuItem&&d.needsIcon){g.positionEl.addClass("x-menu-list-item-indent")}}else{if(g&&!this.isValidParent(g,e)){if(typeof b=="number"){b=e.dom.childNodes[b]}e.dom.insertBefore(g.getActionEl().dom,b||null)}}},getItemArgs:function(b){var a=b instanceof Ext.menu.Item;return{isMenuItem:a,needsIcon:!a&&(b.icon||b.iconCls),icon:b.icon||Ext.BLANK_IMAGE_URL,iconCls:"x-menu-item-icon "+(b.iconCls||""),itemId:"x-menu-el-"+b.id,itemCls:"x-menu-list-item "+(this.extraCls||"")}},isValidParent:function(b,a){return b.el.up("li.x-menu-list-item",5).dom.parentNode===(a.dom||a)},onLayout:function(a,b){this.renderAll(a,b);this.doAutoSize()},doAutoSize:function(){var d=this.container,a=d.width;if(a){d.setWidth(a)}else{if(Ext.isIE){d.setWidth(Ext.isStrict&&(Ext.isIE7||Ext.isIE8)?"auto":d.minWidth);var e=d.getEl(),b=e.dom.offsetWidth;d.setWidth(d.getLayoutTarget().getWidth()+e.getFrameWidth("lr"))}}}});Ext.Container.LAYOUTS.menu=Ext.layout.MenuLayout;Ext.menu.Menu=Ext.extend(Ext.Container,{minWidth:120,shadow:"sides",subMenuAlign:"tl-tr?",defaultAlign:"tl-bl?",allowOtherMenus:false,ignoreParentClicks:false,enableScrolling:true,maxHeight:null,scrollIncrement:24,showSeparator:true,floating:true,hidden:true,hideMode:"offsets",layout:"menu",scrollerHeight:8,autoLayout:true,initComponent:function(){if(Ext.isArray(this.initalConfig)){Ext.apply(this,{items:this.initalConfig})}this.addEvents("beforeshow","beforehide","show","hide","click","mouseover","mouseout","itemclick");Ext.menu.MenuMgr.register(this);Ext.menu.Menu.superclass.initComponent.call(this);if(this.autoLayout){this.on({add:this.doLayout,remove:this.doLayout,scope:this})}},getLayoutTarget:function(){return this.ul},onRender:function(b,a){if(!b){b=Ext.getBody()}var d={id:this.getId(),cls:"x-menu "+((this.floating)?"x-layer ":"")+(this.cls||"")+(this.plain?" x-menu-plain":"")+(this.showSeparator?"":" x-menu-nosep"),style:this.style,cn:[{tag:"a",cls:"x-menu-focus",href:"#",onclick:"return false;",tabIndex:"-1"},{tag:"ul",cls:"x-menu-list"}]};if(this.floating){this.el=new Ext.Layer({shadow:this.shadow,dh:d,constrain:false,parentEl:b,zindex:15000})}else{this.el=b.createChild(d)}Ext.menu.Menu.superclass.onRender.call(this,b,a);if(!this.keyNav){this.keyNav=new Ext.menu.MenuNav(this)}this.focusEl=this.el.child("a.x-menu-focus");this.ul=this.el.child("ul.x-menu-list");this.mon(this.ul,"click",this.onClick,this);this.mon(this.ul,"mouseover",this.onMouseOver,this);this.mon(this.ul,"mouseout",this.onMouseOut,this);if(this.enableScrolling){this.mon(this.el,"click",this.onScroll,this,{delegate:".x-menu-scroller"});this.mon(this.el,"mouseover",this.deactivateActive,this,{delegate:".x-menu-scroller"})}},findTargetItem:function(b){var a=b.getTarget(".x-menu-list-item",this.ul,true);if(a&&a.menuItemId){return this.items.get(a.menuItemId)}},onClick:function(b){var a=this.findTargetItem(b);if(a){if(a.isFormField){this.setActiveItem(a)}else{if(a.menu&&this.ignoreParentClicks){a.expandMenu()}else{if(a.onClick){a.onClick(b);this.fireEvent("click",this,a,b)}}}}},setActiveItem:function(a,b){if(a!=this.activeItem){this.deactivateActive();if((this.activeItem=a).isFormField){a.focus()}else{a.activate(b)}}else{if(b){a.expandMenu()}}},deactivateActive:function(){var b=this.activeItem;if(b){if(b.isFormField){if(b.collapse){b.collapse()}}else{b.deactivate()}this.activeItem=null}},tryActivate:function(h,g){var b=this.items;for(var d=h,a=b.length;d>=0&&d<a;d+=g){var e=b.get(d);if(!e.disabled&&(e.canActivate||e.isFormField)){this.setActiveItem(e,false);return e}}return false},onMouseOver:function(b){var a=this.findTargetItem(b);if(a){if(a.canActivate&&!a.disabled){this.setActiveItem(a,true)}}this.over=true;this.fireEvent("mouseover",this,b,a)},onMouseOut:function(b){var a=this.findTargetItem(b);if(a){if(a==this.activeItem&&a.shouldDeactivate&&a.shouldDeactivate(b)){this.activeItem.deactivate();delete this.activeItem}}this.over=false;this.fireEvent("mouseout",this,b,a)},onScroll:function(g,b){if(g){g.stopEvent()}var a=this.ul.dom,d=Ext.fly(b).is(".x-menu-scroller-top");a.scrollTop+=this.scrollIncrement*(d?-1:1);if(d?a.scrollTop<=0:a.scrollTop+this.activeMax>=a.scrollHeight){this.onScrollerOut(null,b)}},onScrollerIn:function(g,b){var a=this.ul.dom,d=Ext.fly(b).is(".x-menu-scroller-top");if(d?a.scrollTop>0:a.scrollTop+this.activeMax<a.scrollHeight){Ext.fly(b).addClass(["x-menu-item-active","x-menu-scroller-active"])}},onScrollerOut:function(b,a){Ext.fly(a).removeClass(["x-menu-item-active","x-menu-scroller-active"])},show:function(b,d,a){this.parentMenu=a;if(!this.el){this.render()}this.fireEvent("beforeshow",this);this.showAt(this.el.getAlignToXY(b,d||this.defaultAlign),a,false)},showAt:function(d,b,a){this.parentMenu=b;if(!this.el){this.render()}if(a!==false){this.fireEvent("beforeshow",this);d=this.el.adjustForConstraints(d)}Ext.menu.Menu.superclass.onShow.call(this);this.el.setXY(d);if(this.enableScrolling){this.constrainScroll(d[1])}this.el.show();if(Ext.isIE){this.layout.doAutoSize()}this.hidden=false;this.focus();this.fireEvent("show",this)},constrainScroll:function(e){var a,d=this.ul.setHeight("auto").getHeight();if(this.maxHeight){a=this.maxHeight-(this.scrollerHeight*3)}else{var b=Ext.get(this.el.dom.parentNode);a=Ext.fly(this.el.dom.parentNode).getViewSize().height-e-(this.scrollerHeight*3)}if(d>a&&a>0){this.activeMax=a;this.ul.setHeight(a);this.createScrollers()}else{this.ul.setHeight(d);this.el.select(".x-menu-scroller").setDisplayed("none")}this.ul.dom.scrollTop=0},createScrollers:function(){if(!this.scroller){this.scroller={pos:0,top:this.el.insertFirst({tag:"div",cls:"x-menu-scroller x-menu-scroller-top",html:"&nbsp;"}),bottom:this.el.createChild({tag:"div",cls:"x-menu-scroller x-menu-scroller-bottom",html:"&nbsp;"})};this.scroller.top.hover(this.onScrollerIn,this.onScrollerOut,this);this.scroller.topRepeater=new Ext.util.ClickRepeater(this.scroller.top,{listeners:{click:this.onScroll.createDelegate(this,[null,this.scroller.top],false)}});this.scroller.bottom.hover(this.onScrollerIn,this.onScrollerOut,this);this.scroller.bottomRepeater=new Ext.util.ClickRepeater(this.scroller.bottom,{listeners:{click:this.onScroll.createDelegate(this,[null,this.scroller.bottom],false)}})}},focus:function(){if(!this.hidden){this.doFocus.defer(50,this)}},doFocus:function(){if(!this.hidden){this.focusEl.focus()}},hide:function(a){if(this.el){Ext.menu.Menu.superclass.hide.call(this);this.el.hide();if(a===true&&this.parentMenu){this.parentMenu.hide(true)}}},onHide:function(){Ext.menu.Menu.superclass.onHide.call(this);this.deactivateActive()},lookupComponent:function(b){var a;if(b.render){a=b}else{if(typeof b=="string"){if(b=="separator"||b=="-"){a=new Ext.menu.Separator()}else{a=new Ext.menu.TextItem(b)}}else{if(b.tagName||b.el){a=new Ext.BoxComponent({el:b})}else{if(typeof b=="object"){Ext.applyIf(b,this.defaults);a=this.getMenuItem(b)}}}}return a},addSeparator:function(){return this.add(new Ext.menu.Separator())},addElement:function(a){return this.add(new Ext.menu.BaseItem(a))},addItem:function(a){return this.add(a)},addMenuItem:function(a){return this.add(this.getMenuItem(a))},getMenuItem:function(a){if(!(a.isXType&&a.isXType(Ext.menu.Item))){if(a.xtype){return Ext.ComponentMgr.create(a,this.defaultType)}else{if(typeof a.checked=="boolean"){return new Ext.menu.CheckItem(a)}else{return new Ext.menu.Item(a)}}}return a},addText:function(a){return this.add(new Ext.menu.TextItem(a))},onDestroy:function(){Ext.menu.Menu.superclass.onDestroy.call(this);Ext.menu.MenuMgr.unregister(this);Ext.EventManager.removeResizeListener(this.hide,this);if(this.keyNav){this.keyNav.disable()}var a=this.scroller;if(a){Ext.destroy(a.topRepeater,a.bottomRepeater,a.top,a.bottom)}}});Ext.reg("menu",Ext.menu.Menu);Ext.menu.MenuNav=Ext.extend(Ext.KeyNav,function(){function a(g,d){if(!d.tryActivate(d.items.indexOf(d.activeItem)-1,-1)){d.tryActivate(d.items.length-1,-1)}}function b(g,d){if(!d.tryActivate(d.items.indexOf(d.activeItem)+1,1)){d.tryActivate(0,1)}}return{constructor:function(d){Ext.menu.MenuNav.superclass.constructor.call(this,d.el);this.scope=this.menu=d},doRelay:function(j,g){var d=j.getKey();if(this.menu.activeItem&&this.menu.activeItem.isFormField&&d!=j.TAB){return false}if(!this.menu.activeItem&&j.isNavKeyPress()&&d!=j.SPACE&&d!=j.RETURN){this.menu.tryActivate(0,1);return false}return g.call(this.scope||this,j,this.menu)},tab:function(g,d){g.stopEvent();if(g.shiftKey){a(g,d)}else{b(g,d)}},up:a,down:b,right:function(g,d){if(d.activeItem){d.activeItem.expandMenu(true)}},left:function(g,d){d.hide();if(d.parentMenu&&d.parentMenu.activeItem){d.parentMenu.activeItem.activate()}},enter:function(g,d){if(d.activeItem){g.stopPropagation();d.activeItem.onClick(g);d.fireEvent("click",this,d.activeItem);return true}}}}());Ext.menu.MenuMgr=function(){var h,e,d={},a=false,n=new Date();function p(){h={};e=new Ext.util.MixedCollection();Ext.getDoc().addKeyListener(27,function(){if(e.length>0){k()}})}function k(){if(e&&e.length>0){var q=e.clone();q.each(function(r){r.hide()})}}function g(q){e.remove(q);if(e.length<1){Ext.getDoc().un("mousedown",o);a=false}}function m(q){var r=e.last();n=new Date();e.add(q);if(!a){Ext.getDoc().on("mousedown",o);a=true}if(q.parentMenu){q.getEl().setZIndex(parseInt(q.parentMenu.getEl().getStyle("z-index"),10)+3);q.parentMenu.activeChild=q}else{if(r&&r.isVisible()){q.getEl().setZIndex(parseInt(r.getEl().getStyle("z-index"),10)+3)}}}function b(q){if(q.activeChild){q.activeChild.hide()}if(q.autoHideTimer){clearTimeout(q.autoHideTimer);delete q.autoHideTimer}}function j(q){var r=q.parentMenu;if(!r&&!q.allowOtherMenus){k()}else{if(r&&r.activeChild){r.activeChild.hide()}}}function o(q){if(n.getElapsed()>50&&e.length>0&&!q.getTarget(".x-menu")){k()}}function l(r,u){if(u){var t=d[r.group];for(var s=0,q=t.length;s<q;s++){if(t[s]!=r){t[s].setChecked(false)}}}}return{hideAll:function(){k()},register:function(r){if(!h){p()}h[r.id]=r;r.on("beforehide",b);r.on("hide",g);r.on("beforeshow",j);r.on("show",m);var q=r.group;if(q&&r.events.checkchange){if(!d[q]){d[q]=[]}d[q].push(r);r.on("checkchange",onCheck)}},get:function(q){if(typeof q=="string"){if(!h){return null}return h[q]}else{if(q.events){return q}else{if(typeof q.length=="number"){return new Ext.menu.Menu({items:q})}else{return new Ext.menu.Menu(q)}}}},unregister:function(r){delete h[r.id];r.un("beforehide",b);r.un("hide",g);r.un("beforeshow",j);r.un("show",m);var q=r.group;if(q&&r.events.checkchange){d[q].remove(r);r.un("checkchange",onCheck)}},registerCheckable:function(q){var r=q.group;if(r){if(!d[r]){d[r]=[]}d[r].push(q);q.on("beforecheckchange",l)}},unregisterCheckable:function(q){var r=q.group;if(r){d[r].remove(q);q.un("beforecheckchange",l)}},getCheckedItem:function(s){var t=d[s];if(t){for(var r=0,q=t.length;r<q;r++){if(t[r].checked){return t[r]}}}return null},setCheckedItem:function(s,u){var t=d[s];if(t){for(var r=0,q=t.length;r<q;r++){if(t[r].id==u){t[r].setChecked(true)}}}return null}}}();Ext.menu.BaseItem=function(a){Ext.menu.BaseItem.superclass.constructor.call(this,a);this.addEvents("click","activate","deactivate");if(this.handler){this.on("click",this.handler,this.scope)}};Ext.extend(Ext.menu.BaseItem,Ext.Component,{canActivate:false,activeClass:"x-menu-item-active",hideOnClick:true,clickHideDelay:1,ctype:"Ext.menu.BaseItem",actionMode:"container",onRender:function(b,a){Ext.menu.BaseItem.superclass.onRender.apply(this,arguments);if(this.ownerCt&&this.ownerCt.isXType(Ext.menu.Menu)){this.parentMenu=this.ownerCt}else{this.container.addClass("x-menu-list-item");this.mon(this.el,"click",this.onClick,this);this.mon(this.el,"mouseenter",this.activate,this);this.mon(this.el,"mouseleave",this.deactivate,this)}},setHandler:function(b,a){if(this.handler){this.un("click",this.handler,this.scope)}this.on("click",this.handler=b,this.scope=a)},onClick:function(a){if(!this.disabled&&this.fireEvent("click",this,a)!==false&&(this.parentMenu&&this.parentMenu.fireEvent("itemclick",this,a)!==false)){this.handleClick(a)}else{a.stopEvent()}},activate:function(){if(this.disabled){return false}var a=this.container;a.addClass(this.activeClass);this.region=a.getRegion().adjust(2,2,-2,-2);this.fireEvent("activate",this);return true},deactivate:function(){this.container.removeClass(this.activeClass);this.fireEvent("deactivate",this)},shouldDeactivate:function(a){return!this.region||!this.region.contains(a.getPoint())},handleClick:function(a){if(this.hideOnClick){this.parentMenu.hide.defer(this.clickHideDelay,this.parentMenu,[true])}},expandMenu:Ext.emptyFn,hideMenu:Ext.emptyFn});Ext.reg("menubaseitem",Ext.menu.BaseItem);Ext.menu.TextItem=function(a){if(typeof a=="string"){a={text:a}}Ext.menu.TextItem.superclass.constructor.call(this,a)};Ext.extend(Ext.menu.TextItem,Ext.menu.BaseItem,{hideOnClick:false,itemCls:"x-menu-text",onRender:function(){var a=document.createElement("span");a.className=this.itemCls;a.innerHTML=this.text;this.el=a;Ext.menu.TextItem.superclass.onRender.apply(this,arguments)}});Ext.reg("menutextitem",Ext.menu.TextItem);Ext.menu.Separator=function(a){Ext.menu.Separator.superclass.constructor.call(this,a)};Ext.extend(Ext.menu.Separator,Ext.menu.BaseItem,{itemCls:"x-menu-sep",hideOnClick:false,onRender:function(a){var b=document.createElement("span");b.className=this.itemCls;b.innerHTML="&#160;";this.el=b;a.addClass("x-menu-sep-li");Ext.menu.Separator.superclass.onRender.apply(this,arguments)}});Ext.reg("menuseparator",Ext.menu.Separator);Ext.menu.Item=function(a){Ext.menu.Item.superclass.constructor.call(this,a);if(this.menu){this.menu=Ext.menu.MenuMgr.get(this.menu)}};Ext.extend(Ext.menu.Item,Ext.menu.BaseItem,{itemCls:"x-menu-item",canActivate:true,showDelay:200,hideDelay:200,ctype:"Ext.menu.Item",onRender:function(e,b){if(!this.itemTpl){this.itemTpl=Ext.menu.Item.prototype.itemTpl=new Ext.XTemplate('<a id="{id}" class="{cls}" hidefocus="true" unselectable="on" href="{href}"','<tpl if="hrefTarget">',' target="{hrefTarget}"',"</tpl>",">",'<img src="{icon}" class="x-menu-item-icon {iconCls}">','<span class="x-menu-item-text">{text}</span>',"</a>")}var d=this.getTemplateArgs();this.el=b?this.itemTpl.insertBefore(b,d,true):this.itemTpl.append(e,d,true);this.iconEl=this.el.child("img.x-menu-item-icon");this.textEl=this.el.child(".x-menu-item-text");Ext.menu.Item.superclass.onRender.call(this,e,b)},getTemplateArgs:function(){return{id:this.id,cls:this.itemCls+(this.menu?" x-menu-item-arrow":"")+(this.cls?" "+this.cls:""),href:this.href||"#",hrefTarget:this.hrefTarget,icon:this.icon||Ext.BLANK_IMAGE_URL,iconCls:this.iconCls||"",text:this.itemText||this.text||"&#160;"}},setText:function(a){this.text=a||"&#160;";if(this.rendered){this.textEl.update(this.text);this.parentMenu.layout.doAutoSize()}},setIconClass:function(a){var b=this.iconCls;this.iconCls=a;if(this.rendered){this.iconEl.replaceClass(b,this.iconCls)}},beforeDestroy:function(){if(this.menu){this.menu.destroy()}Ext.menu.Item.superclass.beforeDestroy.call(this)},handleClick:function(a){if(!this.href){a.stopEvent()}Ext.menu.Item.superclass.handleClick.apply(this,arguments)},activate:function(a){if(Ext.menu.Item.superclass.activate.apply(this,arguments)){this.focus();if(a){this.expandMenu()}}return true},shouldDeactivate:function(a){if(Ext.menu.Item.superclass.shouldDeactivate.call(this,a)){if(this.menu&&this.menu.isVisible()){return!this.menu.getEl().getRegion().contains(a.getPoint())}return true}return false},deactivate:function(){Ext.menu.Item.superclass.deactivate.apply(this,arguments);this.hideMenu()},expandMenu:function(a){if(!this.disabled&&this.menu){clearTimeout(this.hideTimer);delete this.hideTimer;if(!this.menu.isVisible()&&!this.showTimer){this.showTimer=this.deferExpand.defer(this.showDelay,this,[a])}else{if(this.menu.isVisible()&&a){this.menu.tryActivate(0,1)}}}},deferExpand:function(a){delete this.showTimer;this.menu.show(this.container,this.parentMenu.subMenuAlign||"tl-tr?",this.parentMenu);if(a){this.menu.tryActivate(0,1)}},hideMenu:function(){clearTimeout(this.showTimer);delete this.showTimer;if(!this.hideTimer&&this.menu&&this.menu.isVisible()){this.hideTimer=this.deferHide.defer(this.hideDelay,this)}},deferHide:function(){delete this.hideTimer;if(this.menu.over){this.parentMenu.setActiveItem(this,false)}else{this.menu.hide()}}});Ext.reg("menuitem",Ext.menu.Item);Ext.menu.CheckItem=function(a){Ext.menu.CheckItem.superclass.constructor.call(this,a);this.addEvents("beforecheckchange","checkchange");if(this.checkHandler){this.on("checkchange",this.checkHandler,this.scope)}Ext.menu.MenuMgr.registerCheckable(this)};Ext.extend(Ext.menu.CheckItem,Ext.menu.Item,{itemCls:"x-menu-item x-menu-check-item",groupClass:"x-menu-group-item",checked:false,ctype:"Ext.menu.CheckItem",onRender:function(a){Ext.menu.CheckItem.superclass.onRender.apply(this,arguments);if(this.group){this.el.addClass(this.groupClass)}if(this.checked){this.checked=false;this.setChecked(true,true)}},destroy:function(){Ext.menu.MenuMgr.unregisterCheckable(this);Ext.menu.CheckItem.superclass.destroy.apply(this,arguments)},setChecked:function(b,a){if(this.checked!=b&&this.fireEvent("beforecheckchange",this,b)!==false){if(this.container){this.container[b?"addClass":"removeClass"]("x-menu-item-checked")}this.checked=b;if(a!==true){this.fireEvent("checkchange",this,b)}}},handleClick:function(a){if(!this.disabled&&!(this.checked&&this.group)){this.setChecked(!this.checked)}Ext.menu.CheckItem.superclass.handleClick.apply(this,arguments)}});Ext.reg("menucheckitem",Ext.menu.CheckItem);Ext.menu.DateItem=Ext.DatePicker;Ext.menu.ColorItem=Ext.ColorPalette;Ext.menu.DateMenu=Ext.extend(Ext.menu.Menu,{enableScrolling:false,cls:"x-date-menu",initComponent:function(){this.on("beforeshow",this.onBeforeShow,this);if(this.strict=(Ext.isIE7&&Ext.isStrict)){this.on("show",this.onShow,this,{single:true,delay:20})}Ext.apply(this,{plain:true,showSeparator:false,items:this.picker=new Ext.DatePicker(Ext.apply({internalRender:this.strict||!Ext.isIE,ctCls:"x-menu-date-item"},this.initialConfig))});Ext.menu.DateMenu.superclass.initComponent.call(this);this.relayEvents(this.picker,["select"])},onClick:function(){if(this.hideOnClick){this.hide(true)}},onBeforeShow:function(){if(this.picker){this.picker.hideMonthPicker(true)}},onShow:function(){var a=this.picker.getEl();a.setWidth(a.getWidth())}});Ext.reg("datemenu",Ext.menu.DateMenu);Ext.menu.ColorMenu=Ext.extend(Ext.menu.Menu,{enableScrolling:false,initComponent:function(){Ext.apply(this,{plain:true,showSeparator:false,items:this.palette=new Ext.ColorPalette(this.initialConfig)});Ext.menu.ColorMenu.superclass.initComponent.call(this);this.relayEvents(this.palette,["select"])},onClick:function(){this.hide(true)}});Ext.reg("colormenu",Ext.menu.ColorMenu);Ext.form.Field=Ext.extend(Ext.BoxComponent,{invalidClass:"x-form-invalid",invalidText:"The value in this field is invalid",focusClass:"x-form-focus",validationEvent:"keyup",validateOnBlur:true,validationDelay:250,defaultAutoCreate:{tag:"input",type:"text",size:"20",autocomplete:"off"},fieldClass:"x-form-field",msgTarget:"qtip",msgFx:"normal",readOnly:false,disabled:false,isFormField:true,hasFocus:false,initComponent:function(){Ext.form.Field.superclass.initComponent.call(this);this.addEvents("focus","blur","specialkey","change","invalid","valid")},getName:function(){return this.rendered&&this.el.dom.name?this.el.dom.name:(this.hiddenName||"")},onRender:function(d,a){if(!this.el){var b=this.getAutoCreate();if(!b.name){b.name=this.name||this.id}if(this.inputType){b.type=this.inputType}this.autoEl=b}Ext.form.Field.superclass.onRender.call(this,d,a);var e=this.el.dom.type;if(e){if(e=="password"){e="text"}this.el.addClass("x-form-"+e)}if(this.readOnly){this.el.dom.readOnly=true}if(this.tabIndex!==undefined){this.el.dom.setAttribute("tabIndex",this.tabIndex)}this.el.addClass([this.fieldClass,this.cls])},getItemCt:function(){return this.el.up(".x-form-item",4)},initValue:function(){if(this.value!==undefined){this.setValue(this.value)}else{if(!Ext.isEmpty(this.el.dom.value)&&this.el.dom.value!=this.emptyText){this.setValue(this.el.dom.value)}}this.originalValue=this.getValue()},isDirty:function(){if(this.disabled){return false}return String(this.getValue())!==String(this.originalValue)},afterRender:function(){Ext.form.Field.superclass.afterRender.call(this);this.initEvents();this.initValue()},fireKey:function(a){if(a.isSpecialKey()){this.fireEvent("specialkey",this,a)}},reset:function(){this.setValue(this.originalValue);this.clearInvalid()},initEvents:function(){this.mon(this.el,Ext.isIE||Ext.isSafari3||Ext.isChrome?"keydown":"keypress",this.fireKey,this);this.mon(this.el,"focus",this.onFocus,this);var a=this.inEditor&&Ext.isWindows&&Ext.isGecko?{buffer:10}:null;this.mon(this.el,"blur",this.onBlur,this,a)},onFocus:function(){if(this.focusClass){this.el.addClass(this.focusClass)}if(!this.hasFocus){this.hasFocus=true;this.startValue=this.getValue();this.fireEvent("focus",this)}},beforeBlur:Ext.emptyFn,onBlur:function(){this.beforeBlur();if(this.focusClass){this.el.removeClass(this.focusClass)}this.hasFocus=false;if(this.validationEvent!==false&&this.validateOnBlur&&this.validationEvent!="blur"){this.validate()}var a=this.getValue();if(String(a)!==String(this.startValue)){this.fireEvent("change",this,a,this.startValue)}this.fireEvent("blur",this)},isValid:function(a){if(this.disabled){return true}var d=this.preventMark;this.preventMark=a===true;var b=this.validateValue(this.processValue(this.getRawValue()));this.preventMark=d;return b},validate:function(){if(this.disabled||this.validateValue(this.processValue(this.getRawValue()))){this.clearInvalid();return true}return false},processValue:function(a){return a},validateValue:function(a){return true},markInvalid:function(d){if(!this.rendered||this.preventMark){return}d=d||this.invalidText;var a=this.getMessageHandler();if(a){a.mark(this,d)}else{if(this.msgTarget){this.el.addClass(this.invalidClass);var b=Ext.getDom(this.msgTarget);if(b){b.innerHTML=d;b.style.display=this.msgDisplay}}}this.fireEvent("invalid",this,d)},clearInvalid:function(){if(!this.rendered||this.preventMark){return}this.el.removeClass(this.invalidClass);var a=this.getMessageHandler();if(a){a.clear(this)}else{if(this.msgTarget){this.el.removeClass(this.invalidClass);var b=Ext.getDom(this.msgTarget);if(b){b.innerHTML="";b.style.display="none"}}}this.fireEvent("valid",this)},getMessageHandler:function(){return Ext.form.MessageTargets[this.msgTarget]},getErrorCt:function(){return this.el.findParent(".x-form-element",5,true)||this.el.findParent(".x-form-field-wrap",5,true)},alignErrorIcon:function(){this.errorIcon.alignTo(this.el,"tl-tr",[2,0])},getRawValue:function(){var a=this.rendered?this.el.getValue():Ext.value(this.value,"");if(a===this.emptyText){a=""}return a},getValue:function(){if(!this.rendered){return this.value}var a=this.el.getValue();if(a===this.emptyText||a===undefined){a=""}return a},setRawValue:function(a){return this.el.dom.value=(Ext.isEmpty(a)?"":a)},setValue:function(a){this.value=a;if(this.rendered){this.el.dom.value=(Ext.isEmpty(a)?"":a);this.validate()}return this},append:function(a){this.setValue([this.getValue(),a].join(""))},adjustSize:function(a,e){var d=Ext.form.Field.superclass.adjustSize.call(this,a,e);d.width=this.adjustWidth(this.el.dom.tagName,d.width);if(this.offsetCt){var b=this.getItemCt();d.width-=b.getFrameWidth("lr");d.height-=b.getFrameWidth("tb")}return d},adjustWidth:function(a,b){a=a.toLowerCase();if(typeof b=="number"&&!Ext.isWebKit&&!this.normalWidth){if(Ext.isIE&&(a=="input"||a=="textarea")){if(a=="input"&&!Ext.isStrict){return this.inEditor?b:b-3}if(a=="input"&&Ext.isStrict){return b-(Ext.isIE6?4:1)}if(a=="textarea"&&Ext.isStrict){return b-2}}else{if(Ext.isOpera&&Ext.isStrict){if(a=="input"){return b+2}if(a=="textarea"){return b-2}}}}return b}});Ext.form.MessageTargets={qtip:{mark:function(a,b){a.el.addClass(a.invalidClass);a.el.dom.qtip=b;a.el.dom.qclass="x-form-invalid-tip";if(Ext.QuickTips){Ext.QuickTips.enable()}},clear:function(a){a.el.removeClass(a.invalidClass);a.el.dom.qtip=""}},title:{mark:function(a,b){a.el.addClass(a.invalidClass);a.el.dom.title=b},clear:function(a){a.el.dom.title=""}},under:{mark:function(b,d){b.el.addClass(b.invalidClass);if(!b.errorEl){var a=b.getErrorCt();if(!a){b.el.dom.title=d;return}b.errorEl=a.createChild({cls:"x-form-invalid-msg"});b.errorEl.setWidth(a.getWidth(true)-20)}b.errorEl.update(d);Ext.form.Field.msgFx[b.msgFx].show(b.errorEl,b)},clear:function(a){a.el.removeClass(a.invalidClass);if(a.errorEl){Ext.form.Field.msgFx[a.msgFx].hide(a.errorEl,a)}else{a.el.dom.title=""}}},side:{mark:function(b,d){b.el.addClass(b.invalidClass);if(!b.errorIcon){var a=b.getErrorCt();if(!a){b.el.dom.title=d;return}b.errorIcon=a.createChild({cls:"x-form-invalid-icon"})}b.alignErrorIcon();b.errorIcon.dom.qtip=d;b.errorIcon.dom.qclass="x-form-invalid-tip";b.errorIcon.show();b.on("resize",b.alignErrorIcon,b)},clear:function(a){a.el.removeClass(a.invalidClass);if(a.errorIcon){a.errorIcon.dom.qtip="";a.errorIcon.hide();a.un("resize",a.alignErrorIcon,a)}else{a.el.dom.title=""}}}};Ext.form.Field.msgFx={normal:{show:function(a,b){a.setDisplayed("block")},hide:function(a,b){a.setDisplayed(false).update("")}},slide:{show:function(a,b){a.slideIn("t",{stopFx:true})},hide:function(a,b){a.slideOut("t",{stopFx:true,useDisplay:true})}},slideRight:{show:function(a,b){a.fixDisplay();a.alignTo(b.el,"tl-tr");a.slideIn("l",{stopFx:true})},hide:function(a,b){a.slideOut("l",{stopFx:true,useDisplay:true})}}};Ext.reg("field",Ext.form.Field);Ext.form.TextField=Ext.extend(Ext.form.Field,{grow:false,growMin:30,growMax:800,vtype:null,maskRe:null,disableKeyFilter:false,allowBlank:true,minLength:0,maxLength:Number.MAX_VALUE,minLengthText:"The minimum length for this field is {0}",maxLengthText:"The maximum length for this field is {0}",selectOnFocus:false,blankText:"This field is required",validator:null,regex:null,regexText:"",emptyText:null,emptyClass:"x-form-empty-field",initComponent:function(){Ext.form.TextField.superclass.initComponent.call(this);this.addEvents("autosize","keydown","keyup","keypress")},initEvents:function(){Ext.form.TextField.superclass.initEvents.call(this);if(this.validationEvent=="keyup"){this.validationTask=new Ext.util.DelayedTask(this.validate,this);this.mon(this.el,"keyup",this.filterValidation,this)}else{if(this.validationEvent!==false){this.mon(this.el,this.validationEvent,this.validate,this,{buffer:this.validationDelay})}}if(this.selectOnFocus||this.emptyText){this.on("focus",this.preFocus,this);this.mon(this.el,"mousedown",function(){if(!this.hasFocus){this.el.on("mouseup",function(a){a.preventDefault()},this,{single:true})}},this);if(this.emptyText){this.on("blur",this.postBlur,this);this.applyEmptyText()}}if(this.maskRe||(this.vtype&&this.disableKeyFilter!==true&&(this.maskRe=Ext.form.VTypes[this.vtype+"Mask"]))){this.mon(this.el,"keypress",this.filterKeys,this)}if(this.grow){this.mon(this.el,"keyup",this.onKeyUpBuffered,this,{buffer:50});this.mon(this.el,"click",this.autoSize,this)}if(this.enableKeyEvents){this.mon(this.el,"keyup",this.onKeyUp,this);this.mon(this.el,"keydown",this.onKeyDown,this);this.mon(this.el,"keypress",this.onKeyPress,this)}},processValue:function(a){if(this.stripCharsRe){var b=a.replace(this.stripCharsRe,"");if(b!==a){this.setRawValue(b);return b}}return a},filterValidation:function(a){if(!a.isNavKeyPress()){this.validationTask.delay(this.validationDelay)}},onDisable:function(){Ext.form.TextField.superclass.onDisable.call(this);if(Ext.isIE){this.el.dom.unselectable="on"}},onEnable:function(){Ext.form.TextField.superclass.onEnable.call(this);if(Ext.isIE){this.el.dom.unselectable=""}},onKeyUpBuffered:function(a){if(!a.isNavKeyPress()){this.autoSize()}},onKeyUp:function(a){this.fireEvent("keyup",this,a)},onKeyDown:function(a){this.fireEvent("keydown",this,a)},onKeyPress:function(a){this.fireEvent("keypress",this,a)},reset:function(){Ext.form.TextField.superclass.reset.call(this);this.applyEmptyText()},applyEmptyText:function(){if(this.rendered&&this.emptyText&&this.getRawValue().length<1&&!this.hasFocus){this.setRawValue(this.emptyText);this.el.addClass(this.emptyClass)}},preFocus:function(){if(this.emptyText){if(this.el.dom.value==this.emptyText){this.setRawValue("")}this.el.removeClass(this.emptyClass)}if(this.selectOnFocus){this.el.dom.select()}},postBlur:function(){this.applyEmptyText()},filterKeys:function(b){if(b.ctrlKey){return}var a=b.getKey();if(Ext.isGecko&&(b.isNavKeyPress()||a==b.BACKSPACE||(a==b.DELETE&&b.button==-1))){return}var g=b.getCharCode(),d=String.fromCharCode(g);if(!Ext.isGecko&&b.isSpecialKey()&&!d){return}if(!this.maskRe.test(d)){b.stopEvent()}},setValue:function(a){if(this.emptyText&&this.el&&a!==undefined&&a!==null&&a!==""){this.el.removeClass(this.emptyClass)}Ext.form.TextField.superclass.setValue.apply(this,arguments);this.applyEmptyText();this.autoSize();return this},validateValue:function(a){if(Ext.isFunction(this.validator)){var d=this.validator(a);if(d!==true){this.markInvalid(d);return false}}if(this.vtype){var b=Ext.form.VTypes;if(!b[this.vtype](a,this)){this.markInvalid(this.vtypeText||b[this.vtype+"Text"]);return false}}if(this.regex&&!this.regex.test(a)){this.markInvalid(this.regexText);return false}if(a.length<1||a===this.emptyText){if(this.allowBlank){this.clearInvalid();return true}else{this.markInvalid(this.blankText);return false}}if(a.length<this.minLength){this.markInvalid(String.format(this.minLengthText,this.minLength));return false}if(a.length>this.maxLength){this.markInvalid(String.format(this.maxLengthText,this.maxLength));return false}return true},selectText:function(j,a){var e=this.getRawValue();var g=false;if(e.length>0){j=j===undefined?0:j;a=a===undefined?e.length:a;var h=this.el.dom;if(h.setSelectionRange){h.setSelectionRange(j,a)}else{if(h.createTextRange){var b=h.createTextRange();b.moveStart("character",j);b.moveEnd("character",a-e.length);b.select()}}g=Ext.isGecko||Ext.isOpera}else{g=true}if(g){this.focus()}},autoSize:function(){if(!this.grow||!this.rendered){return}if(!this.metrics){this.metrics=Ext.util.TextMetrics.createInstance(this.el)}var e=this.el;var b=e.dom.value;var g=document.createElement("div");g.appendChild(document.createTextNode(b));b=g.innerHTML;g=null;Ext.removeNode(g);b+="&#160;";var a=Math.min(this.growMax,Math.max(this.metrics.getWidth(b)+10,this.growMin));this.el.setWidth(a);this.fireEvent("autosize",this,a)},onDestroy:function(){if(this.validationTask){this.validationTask.cancel();this.validationTask=null}Ext.form.TextField.superclass.onDestroy.call(this)}});Ext.reg("textfield",Ext.form.TextField);Ext.form.TriggerField=Ext.extend(Ext.form.TextField,{defaultAutoCreate:{tag:"input",type:"text",size:"16",autocomplete:"off"},hideTrigger:false,editable:true,autoSize:Ext.emptyFn,monitorTab:true,deferHeight:true,mimicing:false,onResize:function(a,b){Ext.form.TriggerField.superclass.onResize.call(this,a,b);if(typeof a=="number"){this.el.setWidth(this.adjustWidth("input",a-this.trigger.getWidth()))}this.wrap.setWidth(this.el.getWidth()+this.trigger.getWidth())},adjustSize:Ext.BoxComponent.prototype.adjustSize,getResizeEl:function(){return this.wrap},getPositionEl:function(){return this.wrap},alignErrorIcon:function(){if(this.wrap){this.errorIcon.alignTo(this.wrap,"tl-tr",[2,0])}},onRender:function(b,a){Ext.form.TriggerField.superclass.onRender.call(this,b,a);this.wrap=this.el.wrap({cls:"x-form-field-wrap"});this.trigger=this.wrap.createChild(this.triggerConfig||{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-form-trigger "+this.triggerClass});if(this.hideTrigger){this.trigger.setDisplayed(false)}this.initTrigger();if(!this.width){this.wrap.setWidth(this.el.getWidth()+this.trigger.getWidth())}if(!this.editable){this.editable=true;this.setEditable(false)}},afterRender:function(){Ext.form.TriggerField.superclass.afterRender.call(this);var a;if(Ext.isIE&&!this.hideTrigger&&this.el.getY()!=(a=this.trigger.getY())){this.el.position();this.el.setY(a)}},initTrigger:function(){this.mon(this.trigger,"click",this.onTriggerClick,this,{preventDefault:true});this.trigger.addClassOnOver("x-form-trigger-over");this.trigger.addClassOnClick("x-form-trigger-click")},onDestroy:function(){Ext.destroy(this.trigger,this.wrap);if(this.mimicing){Ext.get(Ext.isIE?document.body:document).un("mousedown",this.mimicBlur,this)}Ext.form.TriggerField.superclass.onDestroy.call(this)},onFocus:function(){Ext.form.TriggerField.superclass.onFocus.call(this);if(!this.mimicing){this.wrap.addClass("x-trigger-wrap-focus");this.mimicing=true;Ext.get(Ext.isIE?document.body:document).on("mousedown",this.mimicBlur,this,{delay:10});if(this.monitorTab){this.el.on("keydown",this.checkTab,this)}}},checkTab:function(a){if(a.getKey()==a.TAB){this.triggerBlur()}},onBlur:function(){},mimicBlur:function(a){if(!this.wrap.contains(a.target)&&this.validateBlur(a)){this.triggerBlur()}},triggerBlur:function(){this.mimicing=false;Ext.get(Ext.isIE?document.body:document).un("mousedown",this.mimicBlur,this);if(this.monitorTab&&this.el){this.el.un("keydown",this.checkTab,this)}this.beforeBlur();if(this.wrap){this.wrap.removeClass("x-trigger-wrap-focus")}Ext.form.TriggerField.superclass.onBlur.call(this)},beforeBlur:Ext.emptyFn,setEditable:function(a){if(a==this.editable){return}this.editable=a;if(!a){this.el.addClass("x-trigger-noedit").on("click",this.onTriggerClick,this).dom.setAttribute("readOnly",true)}else{this.el.removeClass("x-trigger-noedit").un("click",this.onTriggerClick,this).dom.removeAttribute("readOnly")}},validateBlur:function(a){return true},onDisable:function(){Ext.form.TriggerField.superclass.onDisable.call(this);if(this.wrap){this.wrap.addClass(this.disabledClass);this.el.removeClass(this.disabledClass)}},onEnable:function(){Ext.form.TriggerField.superclass.onEnable.call(this);if(this.wrap){this.wrap.removeClass(this.disabledClass)}},onShow:function(){if(this.wrap){var a=this.wrap.dom.style;a.display="";a.visibility="visible"}},onHide:function(){this.wrap.dom.style.display="none"},onTriggerClick:Ext.emptyFn});Ext.form.TwinTriggerField=Ext.extend(Ext.form.TriggerField,{initComponent:function(){Ext.form.TwinTriggerField.superclass.initComponent.call(this);this.triggerConfig={tag:"span",cls:"x-form-twin-triggers",cn:[{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-form-trigger "+this.trigger1Class},{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-form-trigger "+this.trigger2Class}]}},getTrigger:function(a){return this.triggers[a]},initTrigger:function(){var a=this.trigger.select(".x-form-trigger",true);this.wrap.setStyle("overflow","hidden");var b=this;a.each(function(e,h,d){e.hide=function(){var j=b.wrap.getWidth();this.dom.style.display="none";b.el.setWidth(j-b.trigger.getWidth())};e.show=function(){var j=b.wrap.getWidth();this.dom.style.display="";b.el.setWidth(j-b.trigger.getWidth())};var g="Trigger"+(d+1);if(this["hide"+g]){e.dom.style.display="none"}this.mon(e,"click",this["on"+g+"Click"],this,{preventDefault:true});e.addClassOnOver("x-form-trigger-over");e.addClassOnClick("x-form-trigger-click")},this);this.triggers=a.elements},onTrigger1Click:Ext.emptyFn,onTrigger2Click:Ext.emptyFn});Ext.reg("trigger",Ext.form.TriggerField);Ext.form.TextArea=Ext.extend(Ext.form.TextField,{growMin:60,growMax:1000,growAppend:"&#160;\n&#160;",growPad:Ext.isWebKit?-6:0,enterIsSpecial:false,preventScrollbars:false,onRender:function(b,a){if(!this.el){this.defaultAutoCreate={tag:"textarea",style:"width:100px;height:60px;",autocomplete:"off"}}Ext.form.TextArea.superclass.onRender.call(this,b,a);if(this.grow){this.textSizeEl=Ext.DomHelper.append(document.body,{tag:"pre",cls:"x-form-grow-sizer"});if(this.preventScrollbars){this.el.setStyle("overflow","hidden")}this.el.setHeight(this.growMin)}},onDestroy:function(){Ext.destroy(this.textSizeEl);Ext.form.TextArea.superclass.onDestroy.call(this)},fireKey:function(a){if(a.isSpecialKey()&&(this.enterIsSpecial||(a.getKey()!=a.ENTER||a.hasModifier()))){this.fireEvent("specialkey",this,a)}},onKeyUp:function(a){if(!a.isNavKeyPress()||a.getKey()==a.ENTER){this.autoSize()}Ext.form.TextArea.superclass.onKeyUp.call(this,a)},autoSize:function(){if(!this.grow||!this.textSizeEl){return}var d=this.el;var a=d.dom.value;var e=this.textSizeEl;e.innerHTML="";e.appendChild(document.createTextNode(a));a=e.innerHTML;Ext.fly(e).setWidth(this.el.getWidth());if(a.length<1){a="&#160;&#160;"}else{a+=this.growAppend;if(Ext.isIE){a=a.replace(/\n/g,"<br />")}}e.innerHTML=a;var b=Math.min(this.growMax,Math.max(e.offsetHeight,this.growMin)+this.growPad);if(b!=this.lastHeight){this.lastHeight=b;this.el.setHeight(b);this.fireEvent("autosize",this,b)}}});Ext.reg("textarea",Ext.form.TextArea);Ext.form.NumberField=Ext.extend(Ext.form.TextField,{fieldClass:"x-form-field x-form-num-field",allowDecimals:true,decimalSeparator:".",decimalPrecision:2,allowNegative:true,minValue:Number.NEGATIVE_INFINITY,maxValue:Number.MAX_VALUE,minText:"The minimum value for this field is {0}",maxText:"The maximum value for this field is {0}",nanText:"{0} is not a valid number",baseChars:"0123456789",initEvents:function(){var a=this.baseChars+"";if(this.allowDecimals){a+=this.decimalSeparator}if(this.allowNegative){a+="-"}this.maskRe=new RegExp("["+Ext.escapeRe(a)+"]");Ext.form.NumberField.superclass.initEvents.call(this)},validateValue:function(b){if(!Ext.form.NumberField.superclass.validateValue.call(this,b)){return false}if(b.length<1){return true}b=String(b).replace(this.decimalSeparator,".");if(isNaN(b)){this.markInvalid(String.format(this.nanText,b));return false}var a=this.parseValue(b);if(a<this.minValue){this.markInvalid(String.format(this.minText,this.minValue));return false}if(a>this.maxValue){this.markInvalid(String.format(this.maxText,this.maxValue));return false}return true},getValue:function(){return this.fixPrecision(this.parseValue(Ext.form.NumberField.superclass.getValue.call(this)))},setValue:function(a){a=typeof a=="number"?a:parseFloat(String(a).replace(this.decimalSeparator,"."));a=isNaN(a)?"":String(a).replace(".",this.decimalSeparator);return Ext.form.NumberField.superclass.setValue.call(this,a)},parseValue:function(a){a=parseFloat(String(a).replace(this.decimalSeparator,"."));return isNaN(a)?"":a},fixPrecision:function(b){var a=isNaN(b);if(!this.allowDecimals||this.decimalPrecision==-1||a||!b){return a?"":b}return parseFloat(parseFloat(b).toFixed(this.decimalPrecision))},beforeBlur:function(){var a=this.parseValue(this.getRawValue());if(!Ext.isEmpty(a)){this.setValue(this.fixPrecision(a))}}});Ext.reg("numberfield",Ext.form.NumberField);Ext.form.DateField=Ext.extend(Ext.form.TriggerField,{format:"m/d/Y",altFormats:"m/d/Y|n/j/Y|n/j/y|m/j/y|n/d/y|m/j/Y|n/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d",disabledDaysText:"Disabled",disabledDatesText:"Disabled",minText:"The date in this field must be equal to or after {0}",maxText:"The date in this field must be equal to or before {0}",invalidText:"{0} is not a valid date - it must be in the format {1}",triggerClass:"x-form-date-trigger",showToday:true,defaultAutoCreate:{tag:"input",type:"text",size:"10",autocomplete:"off"},initComponent:function(){Ext.form.DateField.superclass.initComponent.call(this);this.addEvents("select");if(typeof this.minValue=="string"){this.minValue=this.parseDate(this.minValue)}if(typeof this.maxValue=="string"){this.maxValue=this.parseDate(this.maxValue)}this.disabledDatesRE=null;this.initDisabledDays()},initDisabledDays:function(){if(this.disabledDates){var a=this.disabledDates;var d="(?:";for(var b=0;b<a.length;b++){d+=a[b];if(b!=a.length-1){d+="|"}}this.disabledDatesRE=new RegExp(d+")")}},setDisabledDates:function(a){this.disabledDates=a;this.initDisabledDays();if(this.menu){this.menu.picker.setDisabledDates(this.disabledDatesRE)}},setDisabledDays:function(a){this.disabledDays=a;if(this.menu){this.menu.picker.setDisabledDays(a)}},setMinValue:function(a){this.minValue=(typeof a=="string"?this.parseDate(a):a);if(this.menu){this.menu.picker.setMinDate(this.minValue)}},setMaxValue:function(a){this.maxValue=(typeof a=="string"?this.parseDate(a):a);if(this.menu){this.menu.picker.setMaxDate(this.maxValue)}},validateValue:function(g){g=this.formatDate(g);if(!Ext.form.DateField.superclass.validateValue.call(this,g)){return false}if(g.length<1){return true}var d=g;g=this.parseDate(g);if(!g){this.markInvalid(String.format(this.invalidText,d,this.format));return false}var h=g.getTime();if(this.minValue&&h<this.minValue.getTime()){this.markInvalid(String.format(this.minText,this.formatDate(this.minValue)));return false}if(this.maxValue&&h>this.maxValue.getTime()){this.markInvalid(String.format(this.maxText,this.formatDate(this.maxValue)));return false}if(this.disabledDays){var a=g.getDay();for(var b=0;b<this.disabledDays.length;b++){if(a===this.disabledDays[b]){this.markInvalid(this.disabledDaysText);return false}}}var e=this.formatDate(g);if(this.disabledDatesRE&&this.disabledDatesRE.test(e)){this.markInvalid(String.format(this.disabledDatesText,e));return false}return true},validateBlur:function(){return!this.menu||!this.menu.isVisible()},getValue:function(){return this.parseDate(Ext.form.DateField.superclass.getValue.call(this))||""},setValue:function(a){return Ext.form.DateField.superclass.setValue.call(this,this.formatDate(this.parseDate(a)))},parseDate:function(e){if(!e||Ext.isDate(e)){return e}var b=Date.parseDate(e,this.format);if(!b&&this.altFormats){if(!this.altFormatsArray){this.altFormatsArray=this.altFormats.split("|")}for(var d=0,a=this.altFormatsArray.length;d<a&&!b;d++){b=Date.parseDate(e,this.altFormatsArray[d])}}return b},onDestroy:function(){Ext.destroy(this.menu,this.wrap);Ext.form.DateField.superclass.onDestroy.call(this)},formatDate:function(a){return Ext.isDate(a)?a.dateFormat(this.format):a},onTriggerClick:function(){if(this.disabled){return}if(this.menu==null){this.menu=new Ext.menu.DateMenu({hideOnClick:false})}Ext.apply(this.menu.picker,{minDate:this.minValue,maxDate:this.maxValue,disabledDatesRE:this.disabledDatesRE,disabledDatesText:this.disabledDatesText,disabledDays:this.disabledDays,disabledDaysText:this.disabledDaysText,format:this.format,showToday:this.showToday,minText:String.format(this.minText,this.formatDate(this.minValue)),maxText:String.format(this.maxText,this.formatDate(this.maxValue))});this.menu.picker.setValue(this.getValue()||new Date());this.menu.show(this.el,"tl-bl?");this.menuEvents("on")},menuEvents:function(a){this.menu[a]("select",this.onSelect,this);this.menu[a]("hide",this.onMenuHide,this);this.menu[a]("show",this.onFocus,this)},onSelect:function(a,b){this.setValue(b);this.fireEvent("select",this,b);this.menu.hide()},onMenuHide:function(){this.focus.defer(10,this);this.menuEvents("un")},beforeBlur:function(){var a=this.parseDate(this.getRawValue());if(a){this.setValue(a)}}});Ext.reg("datefield",Ext.form.DateField);Ext.form.DisplayField=Ext.extend(Ext.form.Field,{validationEvent:false,validateOnBlur:false,defaultAutoCreate:{tag:"div"},fieldClass:"x-form-display-field",htmlEncode:false,initEvents:Ext.emptyFn,isValid:function(){return true},validate:function(){return true},getRawValue:function(){var a=this.rendered?this.el.dom.innerHTML:Ext.value(this.value,"");if(a===this.emptyText){a=""}if(this.htmlEncode){a=Ext.util.Format.htmlDecode(a)}return a},getValue:function(){return this.getRawValue()},getName:function(){return this.name},setRawValue:function(a){if(this.htmlEncode){a=Ext.util.Format.htmlEncode(a)}return this.rendered?(this.el.dom.innerHTML=(Ext.isEmpty(a)?"":a)):(this.value=a)},setValue:function(a){this.setRawValue(a);return this}});Ext.reg("displayfield",Ext.form.DisplayField);Ext.form.ComboBox=Ext.extend(Ext.form.TriggerField,{defaultAutoCreate:{tag:"input",type:"text",size:"24",autocomplete:"off"},listClass:"",selectedClass:"x-combo-selected",listEmptyText:"",triggerClass:"x-form-arrow-trigger",shadow:"sides",listAlign:"tl-bl?",maxHeight:300,minHeight:90,triggerAction:"query",minChars:4,typeAhead:false,queryDelay:500,pageSize:0,selectOnFocus:false,queryParam:"query",loadingText:"Loading...",resizable:false,handleHeight:8,allQuery:"",mode:"remote",minListWidth:70,forceSelection:false,typeAheadDelay:250,lazyInit:true,initComponent:function(){Ext.form.ComboBox.superclass.initComponent.call(this);this.addEvents("expand","collapse","beforeselect","select","beforequery");if(this.transform){var e=Ext.getDom(this.transform);if(!this.hiddenName){this.hiddenName=e.name}if(!this.store){this.mode="local";var k=[],g=e.options;for(var b=0,a=g.length;b<a;b++){var j=g[b];var h=(j.hasAttribute?j.hasAttribute("value"):j.getAttribute("value")!==null)?j.value:j.text;if(j.selected&&Ext.isEmpty(this.value,true)){this.value=h}k.push([h,j.text])}this.store=new Ext.data.ArrayStore({id:0,fields:["value","text"],data:k,autoDestroy:true});this.valueField="value";this.displayField="text"}e.name=Ext.id();if(!this.lazyRender){this.target=true;this.el=Ext.DomHelper.insertBefore(e,this.autoCreate||this.defaultAutoCreate);Ext.removeNode(e);this.render(this.el.parentNode)}else{Ext.removeNode(e)}}else{if(Ext.isArray(this.store)){if(Ext.isArray(this.store[0])){this.store=new Ext.data.ArrayStore({fields:["value","text"],data:this.store,autoDestroy:true});this.valueField="value"}else{this.store=new Ext.data.ArrayStore({fields:["text"],data:this.store,expandData:true,autoDestroy:true});this.valueField="text"}this.displayField="text";this.mode="local"}}this.selectedIndex=-1;if(this.mode=="local"){if(this.initialConfig.queryDelay===undefined){this.queryDelay=10}if(this.initialConfig.minChars===undefined){this.minChars=0}}},onRender:function(b,a){Ext.form.ComboBox.superclass.onRender.call(this,b,a);if(this.hiddenName){this.hiddenField=this.el.insertSibling({tag:"input",type:"hidden",name:this.hiddenName,id:(this.hiddenId||this.hiddenName)},"before",true);this.el.dom.removeAttribute("name")}if(Ext.isGecko){this.el.dom.setAttribute("autocomplete","off")}if(!this.lazyInit){this.initList()}else{this.on("focus",this.initList,this,{single:true})}},initValue:function(){Ext.form.ComboBox.superclass.initValue.call(this);if(this.hiddenField){this.hiddenField.value=this.hiddenValue!==undefined?this.hiddenValue:this.value!==undefined?this.value:""}},initList:function(){if(!this.list){var a="x-combo-list";this.list=new Ext.Layer({parentEl:this.getListParent(),shadow:this.shadow,cls:[a,this.listClass].join(" "),constrain:false});var b=this.listWidth||Math.max(this.wrap.getWidth(),this.minListWidth);this.list.setSize(b,0);this.list.swallowEvent("mousewheel");this.assetHeight=0;if(this.syncFont!==false){this.list.setStyle("font-size",this.el.getStyle("font-size"))}if(this.title){this.header=this.list.createChild({cls:a+"-hd",html:this.title});this.assetHeight+=this.header.getHeight()}this.innerList=this.list.createChild({cls:a+"-inner"});this.mon(this.innerList,"mouseover",this.onViewOver,this);this.mon(this.innerList,"mousemove",this.onViewMove,this);this.innerList.setWidth(b-this.list.getFrameWidth("lr"));if(this.pageSize){this.footer=this.list.createChild({cls:a+"-ft"});this.pageTb=new Ext.PagingToolbar({store:this.store,pageSize:this.pageSize,renderTo:this.footer});this.assetHeight+=this.footer.getHeight()}if(!this.tpl){this.tpl='<tpl for="."><div class="'+a+'-item">{'+this.displayField+"}</div></tpl>"}this.view=new Ext.DataView({applyTo:this.innerList,tpl:this.tpl,singleSelect:true,selectedClass:this.selectedClass,itemSelector:this.itemSelector||"."+a+"-item",emptyText:this.listEmptyText});this.mon(this.view,"click",this.onViewClick,this);this.bindStore(this.store,true);if(this.resizable){this.resizer=new Ext.Resizable(this.list,{pinned:true,handles:"se"});this.mon(this.resizer,"resize",function(g,d,e){this.maxHeight=e-this.handleHeight-this.list.getFrameWidth("tb")-this.assetHeight;this.listWidth=d;this.innerList.setWidth(d-this.list.getFrameWidth("lr"));this.restrictHeight()},this);this[this.pageSize?"footer":"innerList"].setStyle("margin-bottom",this.handleHeight+"px")}}},getListParent:function(){return document.body},getStore:function(){return this.store},bindStore:function(a,b){if(this.store&&!b){this.store.un("beforeload",this.onBeforeLoad,this);this.store.un("load",this.onLoad,this);this.store.un("loadexception",this.collapse,this);if(this.store!==a&&this.store.autoDestroy){this.store.destroy()}if(!a){this.store=null;if(this.view){this.view.bindStore(null)}}}if(a){if(!b){this.lastQuery=null;if(this.pageTb){this.pageTb.bindStore(a)}}this.store=Ext.StoreMgr.lookup(a);this.store.on("beforeload",this.onBeforeLoad,this);this.store.on("load",this.onLoad,this);this.store.on("loadexception",this.collapse,this);if(this.view){this.view.bindStore(a)}}},initEvents:function(){Ext.form.ComboBox.superclass.initEvents.call(this);this.keyNav=new Ext.KeyNav(this.el,{up:function(a){this.inKeyMode=true;this.selectPrev()},down:function(a){if(!this.isExpanded()){this.onTriggerClick()}else{this.inKeyMode=true;this.selectNext()}},enter:function(a){this.onViewClick();this.delayedCheck=true;this.unsetDelayCheck.defer(10,this)},esc:function(a){this.collapse()},tab:function(a){this.onViewClick(false);return true},scope:this,doRelay:function(d,b,a){if(a=="down"||this.scope.isExpanded()){return Ext.KeyNav.prototype.doRelay.apply(this,arguments)}return true},forceKeyDown:true});this.queryDelay=Math.max(this.queryDelay||10,this.mode=="local"?10:250);this.dqTask=new Ext.util.DelayedTask(this.initQuery,this);if(this.typeAhead){this.taTask=new Ext.util.DelayedTask(this.onTypeAhead,this)}if(this.editable!==false){this.mon(this.el,"keyup",this.onKeyUp,this)}if(this.forceSelection){this.on("blur",this.doForce,this)}},onDestroy:function(){if(this.dqTask){this.dqTask.cancel();this.dqTask=null}this.bindStore(null);if(this.resizer){this.resizer.destroy(true)}Ext.destroy(this.view,this.pageTb,this.list);Ext.form.ComboBox.superclass.onDestroy.call(this)},unsetDelayCheck:function(){delete this.delayedCheck},fireKey:function(a){if(a.isNavKeyPress()&&!this.isExpanded()&&!this.delayedCheck){this.fireEvent("specialkey",this,a)}},onResize:function(a,b){Ext.form.ComboBox.superclass.onResize.apply(this,arguments);if(this.list&&this.listWidth===undefined){var d=Math.max(a,this.minListWidth);this.list.setWidth(d);this.innerList.setWidth(d-this.list.getFrameWidth("lr"))}},onEnable:function(){Ext.form.ComboBox.superclass.onEnable.apply(this,arguments);if(this.hiddenField){this.hiddenField.disabled=false}},onDisable:function(){Ext.form.ComboBox.superclass.onDisable.apply(this,arguments);if(this.hiddenField){this.hiddenField.disabled=true}},onBeforeLoad:function(){if(!this.hasFocus){return}this.innerList.update(this.loadingText?'<div class="loading-indicator">'+this.loadingText+"</div>":"");this.restrictHeight();this.selectedIndex=-1},onLoad:function(){if(!this.hasFocus){return}if(this.store.getCount()>0){this.expand();this.restrictHeight();if(this.lastQuery==this.allQuery){if(this.editable){this.el.dom.select()}if(!this.selectByValue(this.value,true)){this.select(0,true)}}else{this.selectNext();if(this.typeAhead&&this.lastKey!=Ext.EventObject.BACKSPACE&&this.lastKey!=Ext.EventObject.DELETE){this.taTask.delay(this.typeAheadDelay)}}}else{this.onEmptyResults()}},onTypeAhead:function(){if(this.store.getCount()>0){var b=this.store.getAt(0);var d=b.data[this.displayField];var a=d.length;var e=this.getRawValue().length;if(e!=a){this.setRawValue(d);this.selectText(e,d.length)}}},onSelect:function(a,b){if(this.fireEvent("beforeselect",this,a,b)!==false){this.setValue(a.data[this.valueField||this.displayField]);this.collapse();this.fireEvent("select",this,a,b)}},getValue:function(){if(this.valueField){return typeof this.value!="undefined"?this.value:""}else{return Ext.form.ComboBox.superclass.getValue.call(this)}},clearValue:function(){if(this.hiddenField){this.hiddenField.value=""}this.setRawValue("");this.lastSelectionText="";this.applyEmptyText();this.value=""},setValue:function(a){var d=a;if(this.valueField){var b=this.findRecord(this.valueField,a);if(b){d=b.data[this.displayField]}else{if(this.valueNotFoundText!==undefined){d=this.valueNotFoundText}}}this.lastSelectionText=d;if(this.hiddenField){this.hiddenField.value=a}Ext.form.ComboBox.superclass.setValue.call(this,d);this.value=a;return this},findRecord:function(d,b){var a;if(this.store.getCount()>0){this.store.each(function(e){if(e.data[d]==b){a=e;return false}})}return a},onViewMove:function(b,a){this.inKeyMode=false},onViewOver:function(g,b){if(this.inKeyMode){return}var d=this.view.findItemFromChild(b);if(d){var a=this.view.indexOf(d);this.select(a,false)}},onViewClick:function(b){var a=this.view.getSelectedIndexes()[0];var d=this.store.getAt(a);if(d){this.onSelect(d,a)}if(b!==false){this.el.focus()}},restrictHeight:function(){this.innerList.dom.style.height="";var b=this.innerList.dom;var g=this.list.getFrameWidth("tb")+(this.resizable?this.handleHeight:0)+this.assetHeight;var d=Math.max(b.clientHeight,b.offsetHeight,b.scrollHeight);var a=this.getPosition()[1]-Ext.getBody().getScroll().top;var j=Ext.lib.Dom.getViewHeight()-a-this.getSize().height;var e=Math.max(a,j,this.minHeight||0)-this.list.shadowOffset-g-5;d=Math.min(d,e,this.maxHeight);this.innerList.setHeight(d);this.list.beginUpdate();this.list.setHeight(d+g);this.list.alignTo(this.wrap,this.listAlign);this.list.endUpdate()},onEmptyResults:function(){this.collapse()},isExpanded:function(){return this.list&&this.list.isVisible()},selectByValue:function(a,d){if(a!==undefined&&a!==null){var b=this.findRecord(this.valueField||this.displayField,a);if(b){this.select(this.store.indexOf(b),d);return true}}return false},select:function(a,d){this.selectedIndex=a;this.view.select(a);if(d!==false){var b=this.view.getNode(a);if(b){this.innerList.scrollChildIntoView(b,false)}}},selectNext:function(){var a=this.store.getCount();if(a>0){if(this.selectedIndex==-1){this.select(0)}else{if(this.selectedIndex<a-1){this.select(this.selectedIndex+1)}}}},selectPrev:function(){var a=this.store.getCount();if(a>0){if(this.selectedIndex==-1){this.select(0)}else{if(this.selectedIndex!=0){this.select(this.selectedIndex-1)}}}},onKeyUp:function(a){if(this.editable!==false&&!a.isSpecialKey()){this.lastKey=a.getKey();this.dqTask.delay(this.queryDelay)}},validateBlur:function(){return!this.list||!this.list.isVisible()},initQuery:function(){this.doQuery(this.getRawValue())},doForce:function(){if(this.el.dom.value.length>0){this.el.dom.value=this.lastSelectionText===undefined?"":this.lastSelectionText;this.applyEmptyText()}},doQuery:function(d,b){if(d===undefined||d===null){d=""}var a={query:d,forceAll:b,combo:this,cancel:false};if(this.fireEvent("beforequery",a)===false||a.cancel){return false}d=a.query;b=a.forceAll;if(b===true||(d.length>=this.minChars)){if(this.lastQuery!==d){this.lastQuery=d;if(this.mode=="local"){this.selectedIndex=-1;if(b){this.store.clearFilter()}else{this.store.filter(this.displayField,d)}this.onLoad()}else{this.store.baseParams[this.queryParam]=d;this.store.load({params:this.getParams(d)});this.expand()}}else{this.selectedIndex=-1;this.onLoad()}}},getParams:function(a){var b={};if(this.pageSize){b.start=0;b.limit=this.pageSize}return b},collapse:function(){if(!this.isExpanded()){return}this.list.hide();Ext.getDoc().un("mousewheel",this.collapseIf,this);Ext.getDoc().un("mousedown",this.collapseIf,this);this.fireEvent("collapse",this)},collapseIf:function(a){if(!a.within(this.wrap)&&!a.within(this.list)){this.collapse()}},expand:function(){if(this.isExpanded()||!this.hasFocus){return}this.list.alignTo(this.wrap,this.listAlign);this.list.show();this.innerList.setOverflow("auto");Ext.getDoc().on("mousewheel",this.collapseIf,this);Ext.getDoc().on("mousedown",this.collapseIf,this);this.fireEvent("expand",this)},onTriggerClick:function(){if(this.disabled){return}if(this.isExpanded()){this.collapse();this.el.focus()}else{this.onFocus({});if(this.triggerAction=="all"){this.doQuery(this.allQuery,true)}else{this.doQuery(this.getRawValue())}this.el.focus()}}});Ext.reg("combo",Ext.form.ComboBox);Ext.form.Checkbox=Ext.extend(Ext.form.Field,{focusClass:undefined,fieldClass:"x-form-field",checked:false,defaultAutoCreate:{tag:"input",type:"checkbox",autocomplete:"off"},initComponent:function(){Ext.form.Checkbox.superclass.initComponent.call(this);this.addEvents("check")},onResize:function(){Ext.form.Checkbox.superclass.onResize.apply(this,arguments);if(!this.boxLabel){this.el.alignTo(this.wrap,"c-c")}},initEvents:function(){Ext.form.Checkbox.superclass.initEvents.call(this);this.mon(this.el,"click",this.onClick,this);this.mon(this.el,"change",this.onClick,this)},getResizeEl:function(){return this.wrap},getPositionEl:function(){return this.wrap},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,onRender:function(b,a){Ext.form.Checkbox.superclass.onRender.call(this,b,a);if(this.inputValue!==undefined){this.el.dom.value=this.inputValue}this.wrap=this.el.wrap({cls:"x-form-check-wrap"});if(this.boxLabel){this.wrap.createChild({tag:"label",htmlFor:this.el.id,cls:"x-form-cb-label",html:this.boxLabel})}if(this.checked){this.setValue(true)}else{this.checked=this.el.dom.checked}},onDestroy:function(){if(this.wrap){this.wrap.remove()}Ext.form.Checkbox.superclass.onDestroy.call(this)},initValue:Ext.emptyFn,getValue:function(){if(this.rendered){return this.el.dom.checked}return false},onClick:function(){if(this.el.dom.checked!=this.checked){this.setValue(this.el.dom.checked)}},setValue:function(a){this.checked=(a===true||a==="true"||a=="1"||String(a).toLowerCase()=="on");if(this.el&&this.el.dom){this.el.dom.checked=this.checked;this.el.dom.defaultChecked=this.checked}this.fireEvent("check",this,this.checked);return this}});Ext.reg("checkbox",Ext.form.Checkbox);Ext.form.CheckboxGroup=Ext.extend(Ext.form.Field,{columns:"auto",vertical:false,allowBlank:true,blankText:"You must select at least one item in this group",defaultType:"checkbox",groupCls:"x-form-check-group",onRender:function(k,h){if(!this.el){var q={cls:this.groupCls,layout:"column",border:false,renderTo:k};var a={defaultType:this.defaultType,layout:"form",border:false,defaults:{hideLabel:true,anchor:"100%"}};if(this.items[0].items){Ext.apply(q,{layoutConfig:{columns:this.items.length},defaults:this.defaults,items:this.items});for(var g=0,n=this.items.length;g<n;g++){Ext.applyIf(this.items[g],a)}}else{var e,o=[];if(typeof this.columns=="string"){this.columns=this.items.length}if(!Ext.isArray(this.columns)){var m=[];for(var g=0;g<this.columns;g++){m.push((100/this.columns)*0.01)}this.columns=m}e=this.columns.length;for(var g=0;g<e;g++){var b=Ext.apply({items:[]},a);b[this.columns[g]<=1?"columnWidth":"width"]=this.columns[g];if(this.defaults){b.defaults=Ext.apply(b.defaults||{},this.defaults)}o.push(b)}if(this.vertical){var s=Math.ceil(this.items.length/e),p=0;for(var g=0,n=this.items.length;g<n;g++){if(g>0&&g%s==0){p++}if(this.items[g].fieldLabel){this.items[g].hideLabel=false}o[p].items.push(this.items[g])}}else{for(var g=0,n=this.items.length;g<n;g++){var r=g%e;if(this.items[g].fieldLabel){this.items[g].hideLabel=false}o[r].items.push(this.items[g])}}Ext.apply(q,{layoutConfig:{columns:e},items:o})}this.panel=new Ext.Panel(q);this.el=this.panel.getEl();if(this.forId&&this.itemCls){var d=this.el.up(this.itemCls).child("label",true);if(d){d.setAttribute("htmlFor",this.forId)}}var j=this.panel.findBy(function(l){return l.isFormField},this);this.items=new Ext.util.MixedCollection();this.items.addAll(j)}Ext.form.CheckboxGroup.superclass.onRender.call(this,k,h)},validateValue:function(a){if(!this.allowBlank){var b=true;this.items.each(function(d){if(d.checked){return b=false}},this);if(b){this.markInvalid(this.blankText);return false}}return true},onDisable:function(){this.items.each(function(a){a.disable()})},onEnable:function(){this.items.each(function(a){a.enable()})},onResize:function(a,b){this.panel.setSize(a,b);this.panel.doLayout()},reset:function(){Ext.form.CheckboxGroup.superclass.reset.call(this);this.items.each(function(a){if(a.reset){a.reset()}},this)},initValue:Ext.emptyFn,getValue:Ext.emptyFn,getRawValue:Ext.emptyFn,setValue:Ext.emptyFn,setRawValue:Ext.emptyFn});Ext.reg("checkboxgroup",Ext.form.CheckboxGroup);Ext.form.Radio=Ext.extend(Ext.form.Checkbox,{inputType:"radio",markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,getGroupValue:function(){var a=this.el.up("form")||Ext.getBody();var b=a.child("input[name="+this.el.dom.name+"]:checked",true);return b?b.value:null},onClick:function(){if(this.el.dom.checked!=this.checked){var b=this.el.up("form")||Ext.getBody();var a=b.select("input[name="+this.el.dom.name+"]");a.each(function(d){if(d.dom.id==this.id){this.setValue(true)}else{Ext.getCmp(d.dom.id).setValue(false)}},this)}},setValue:function(a){if(typeof a=="boolean"){Ext.form.Radio.superclass.setValue.call(this,a)}else{var b=this.el.up("form").child("input[name="+this.el.dom.name+"][value="+a+"]",true);if(b){b.checked=true}}return this}});Ext.reg("radio",Ext.form.Radio);Ext.form.RadioGroup=Ext.extend(Ext.form.CheckboxGroup,{allowBlank:true,blankText:"You must select one item in this group",defaultType:"radio",groupCls:"x-form-radio-group"});Ext.reg("radiogroup",Ext.form.RadioGroup);Ext.form.Hidden=Ext.extend(Ext.form.Field,{inputType:"hidden",onRender:function(){Ext.form.Hidden.superclass.onRender.apply(this,arguments)},initEvents:function(){this.originalValue=this.getValue()},setSize:Ext.emptyFn,setWidth:Ext.emptyFn,setHeight:Ext.emptyFn,setPosition:Ext.emptyFn,setPagePosition:Ext.emptyFn,markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn});Ext.reg("hidden",Ext.form.Hidden);Ext.form.BasicForm=function(b,a){Ext.apply(this,a);this.items=new Ext.util.MixedCollection(false,function(d){return d.itemId||d.id||(d.id=Ext.id())});this.addEvents("beforeaction","actionfailed","actioncomplete");if(b){this.initEl(b)}Ext.form.BasicForm.superclass.constructor.call(this)};Ext.extend(Ext.form.BasicForm,Ext.util.Observable,{timeout:30,activeAction:null,trackResetOnLoad:false,initEl:function(a){this.el=Ext.get(a);this.id=this.el.id||Ext.id();if(!this.standardSubmit){this.el.on("submit",this.onSubmit,this)}this.el.addClass("x-form")},getEl:function(){return this.el},onSubmit:function(a){a.stopEvent()},destroy:function(){this.items.each(function(a){Ext.destroy(a)});if(this.el){this.el.removeAllListeners();this.el.remove()}this.purgeListeners()},isValid:function(){var a=true;this.items.each(function(b){if(!b.validate()){a=false}});return a},isDirty:function(){var a=false;this.items.each(function(b){if(b.isDirty()){a=true;return false}});return a},doAction:function(b,a){if(typeof b=="string"){b=new Ext.form.Action.ACTION_TYPES[b](this,a)}if(this.fireEvent("beforeaction",this,b)!==false){this.beforeAction(b);b.run.defer(100,b)}return this},submit:function(b){if(this.standardSubmit){var a=this.isValid();if(a){this.el.dom.submit()}return a}this.doAction("submit",b);return this},load:function(a){this.doAction("load",a);return this},updateRecord:function(b){b.beginEdit();var a=b.fields;a.each(function(d){var e=this.findField(d.name);if(e){b.set(d.name,e.getValue())}},this);b.endEdit();return this},loadRecord:function(a){this.setValues(a.data);return this},beforeAction:function(a){var b=a.options;if(b.waitMsg){if(this.waitMsgTarget===true){this.el.mask(b.waitMsg,"x-mask-loading")}else{if(this.waitMsgTarget){this.waitMsgTarget=Ext.get(this.waitMsgTarget);this.waitMsgTarget.mask(b.waitMsg,"x-mask-loading")}else{Ext.MessageBox.wait(b.waitMsg,b.waitTitle||this.waitTitle||"Please Wait...")}}}},afterAction:function(a,d){this.activeAction=null;var b=a.options;if(b.waitMsg){if(this.waitMsgTarget===true){this.el.unmask()}else{if(this.waitMsgTarget){this.waitMsgTarget.unmask()}else{Ext.MessageBox.updateProgress(1);Ext.MessageBox.hide()}}}if(d){if(b.reset){this.reset()}Ext.callback(b.success,b.scope,[this,a]);this.fireEvent("actioncomplete",this,a)}else{Ext.callback(b.failure,b.scope,[this,a]);this.fireEvent("actionfailed",this,a)}},findField:function(b){var a=this.items.get(b);if(!Ext.isObject(a)){this.items.each(function(d){if(d.isFormField&&(d.dataIndex==b||d.id==b||d.getName()==b)){a=d;return false}})}return a||null},markInvalid:function(j){if(Ext.isArray(j)){for(var d=0,a=j.length;d<a;d++){var b=j[d];var e=this.findField(b.id);if(e){e.markInvalid(b.msg)}}}else{var g,h;for(h in j){if(!Ext.isFunction(j[h])&&(g=this.findField(h))){g.markInvalid(j[h])}}}return this},setValues:function(d){if(Ext.isArray(d)){for(var e=0,a=d.length;e<a;e++){var b=d[e];var g=this.findField(b.id);if(g){g.setValue(b.value);if(this.trackResetOnLoad){g.originalValue=g.getValue()}}}}else{var h,j;for(j in d){if(!Ext.isFunction(d[j])&&(h=this.findField(j))){h.setValue(d[j]);if(this.trackResetOnLoad){h.originalValue=h.getValue()}}}}return this},getValues:function(b){var a=Ext.lib.Ajax.serializeForm(this.el.dom);if(b===true){return a}return Ext.urlDecode(a)},getFieldValues:function(){var a={};this.items.each(function(b){a[b.getName()]=b.getValue()});return a},clearInvalid:function(){this.items.each(function(a){a.clearInvalid()});return this},reset:function(){this.items.each(function(a){a.reset()});return this},add:function(){this.items.addAll(Array.prototype.slice.call(arguments,0));return this},remove:function(a){this.items.remove(a);return this},render:function(){this.items.each(function(a){if(a.isFormField&&!a.rendered&&document.getElementById(a.id)){a.applyToMarkup(a.id)}});return this},applyToFields:function(a){this.items.each(function(b){Ext.apply(b,a)});return this},applyIfToFields:function(a){this.items.each(function(b){Ext.applyIf(b,a)});return this},callFieldMethod:function(b,a){a=a||[];this.items.each(function(d){if(Ext.isFunction(d[b])){d[b].apply(d,a)}});return this}});Ext.BasicForm=Ext.form.BasicForm;Ext.FormPanel=Ext.extend(Ext.Panel,{buttonAlign:"center",minButtonWidth:75,labelAlign:"left",monitorValid:false,monitorPoll:200,layout:"form",initComponent:function(){this.form=this.createForm();Ext.FormPanel.superclass.initComponent.call(this);this.bodyCfg={tag:"form",cls:this.baseCls+"-body",method:this.method||"POST",id:this.formId||Ext.id()};if(this.fileUpload){this.bodyCfg.enctype="multipart/form-data"}this.initItems();this.addEvents("clientvalidation");this.relayEvents(this.form,["beforeaction","actionfailed","actioncomplete"])},createForm:function(){delete this.initialConfig.listeners;return new Ext.form.BasicForm(null,this.initialConfig)},initFields:function(){var d=this.form;var a=this;var b=function(e){if(a.isField(e)){d.add(e)}if(e.isFieldWrap){Ext.applyIf(e,{labelAlign:e.ownerCt.labelAlign,labelWidth:e.ownerCt.labelWidth,itemCls:e.ownerCt.itemCls});d.add(e.field)}else{if(e.doLayout&&e!=a){Ext.applyIf(e,{labelAlign:e.ownerCt.labelAlign,labelWidth:e.ownerCt.labelWidth,itemCls:e.ownerCt.itemCls});if(e.items){e.items.each(b,this)}}}};this.items.each(b,this)},getLayoutTarget:function(){return this.form.el},getForm:function(){return this.form},onRender:function(b,a){this.initFields();Ext.FormPanel.superclass.onRender.call(this,b,a);this.form.initEl(this.body)},beforeDestroy:function(){Ext.FormPanel.superclass.beforeDestroy.call(this);this.stopMonitoring();Ext.destroy(this.form)},isField:function(a){return!!a.setValue&&!!a.getValue&&!!a.markInvalid&&!!a.clearInvalid},initEvents:function(){Ext.FormPanel.superclass.initEvents.call(this);this.on("remove",this.onRemove,this);this.on("add",this.onAdd,this);if(this.monitorValid){this.startMonitoring()}},onAdd:function(a,b){if(this.isField(b)){this.form.add(b)}else{if(b.findBy){Ext.applyIf(b,{labelAlign:b.ownerCt.labelAlign,labelWidth:b.ownerCt.labelWidth,itemCls:b.ownerCt.itemCls});this.form.add.apply(this.form,b.findBy(this.isField))}}},onRemove:function(a,b){if(this.isField(b)){Ext.destroy(b.container.up(".x-form-item"));this.form.remove(b)}else{if(b.findByType){Ext.each(b.findBy(this.isField),this.form.remove,this.form)}}},startMonitoring:function(){if(!this.validTask){this.validTask=new Ext.util.TaskRunner();this.validTask.start({run:this.bindHandler,interval:this.monitorPoll||200,scope:this})}},stopMonitoring:function(){if(this.validTask){this.validTask.stopAll();this.validTask=null}},load:function(){this.form.load.apply(this.form,arguments)},onDisable:function(){Ext.FormPanel.superclass.onDisable.call(this);if(this.form){this.form.items.each(function(){this.disable()})}},onEnable:function(){Ext.FormPanel.superclass.onEnable.call(this);if(this.form){this.form.items.each(function(){this.enable()})}},bindHandler:function(){var g=true;this.form.items.each(function(h){if(!h.isValid(true)){g=false;return false}});if(this.fbar){var b=this.fbar.items.items;for(var e=0,a=b.length;e<a;e++){var d=b[e];if(d.formBind===true&&d.disabled===g){d.setDisabled(!g)}}}this.fireEvent("clientvalidation",this,g)}});Ext.reg("form",Ext.FormPanel);Ext.form.FormPanel=Ext.FormPanel;Ext.form.FieldSet=Ext.extend(Ext.Panel,{baseCls:"x-fieldset",layout:"form",animCollapse:false,onRender:function(b,a){if(!this.el){this.el=document.createElement("fieldset");this.el.id=this.id;if(this.title||this.header||this.checkboxToggle){this.el.appendChild(document.createElement("legend")).className="x-fieldset-header"}}Ext.form.FieldSet.superclass.onRender.call(this,b,a);if(this.checkboxToggle){var d=typeof this.checkboxToggle=="object"?this.checkboxToggle:{tag:"input",type:"checkbox",name:this.checkboxName||this.id+"-checkbox"};this.checkbox=this.header.insertFirst(d);this.checkbox.dom.checked=!this.collapsed;this.mon(this.checkbox,"click",this.onCheckClick,this)}},onCollapse:function(a,b){if(this.checkbox){this.checkbox.dom.checked=false}Ext.form.FieldSet.superclass.onCollapse.call(this,a,b)},onExpand:function(a,b){if(this.checkbox){this.checkbox.dom.checked=true}Ext.form.FieldSet.superclass.onExpand.call(this,a,b)},onCheckClick:function(){this[this.checkbox.dom.checked?"expand":"collapse"]()}});Ext.reg("fieldset",Ext.form.FieldSet);Ext.form.HtmlEditor=Ext.extend(Ext.form.Field,{enableFormat:true,enableFontSize:true,enableColors:true,enableAlignments:true,enableLists:true,enableSourceEdit:true,enableLinks:true,enableFont:true,createLinkText:"Please enter the URL for the link:",defaultLinkValue:"http://",fontFamilies:["Arial","Courier New","Tahoma","Times New Roman","Verdana"],defaultFont:"tahoma",validationEvent:false,deferHeight:true,initialized:false,activated:false,sourceEditMode:false,onFocus:Ext.emptyFn,iframePad:3,hideMode:"offsets",defaultAutoCreate:{tag:"textarea",style:"width:500px;height:300px;",autocomplete:"off"},initComponent:function(){this.addEvents("initialize","activate","beforesync","beforepush","sync","push","editmodechange")},createFontOptions:function(){var e=[],b=this.fontFamilies,d,h;for(var g=0,a=b.length;g<a;g++){d=b[g];h=d.toLowerCase();e.push('<option value="',h,'" style="font-family:',d,';"',(this.defaultFont==h?' selected="true">':">"),d,"</option>")}return e.join("")},createToolbar:function(e){var a=Ext.QuickTips&&Ext.QuickTips.isEnabled();function d(j,g,h){return{itemId:j,cls:"x-btn-icon",iconCls:"x-edit-"+j,enableToggle:g!==false,scope:e,handler:h||e.relayBtnCmd,clickEvent:"mousedown",tooltip:a?e.buttonTips[j]||undefined:undefined,tabIndex:-1}}var b=new Ext.Toolbar({renderTo:this.wrap.dom.firstChild});this.mon(b.el,"click",function(g){g.preventDefault()});if(this.enableFont&&!Ext.isSafari2){this.fontSelect=b.el.createChild({tag:"select",cls:"x-font-select",html:this.createFontOptions()});this.mon(this.fontSelect,"change",function(){var g=this.fontSelect.dom.value;this.relayCmd("fontname",g);this.deferFocus()},this);b.add(this.fontSelect.dom,"-")}if(this.enableFormat){b.add(d("bold"),d("italic"),d("underline"))}if(this.enableFontSize){b.add("-",d("increasefontsize",false,this.adjustFont),d("decreasefontsize",false,this.adjustFont))}if(this.enableColors){b.add("-",{itemId:"forecolor",cls:"x-btn-icon",iconCls:"x-edit-forecolor",clickEvent:"mousedown",tooltip:a?e.buttonTips.forecolor||undefined:undefined,tabIndex:-1,menu:new Ext.menu.ColorMenu({allowReselect:true,focus:Ext.emptyFn,value:"000000",plain:true,listeners:{scope:this,select:function(h,g){this.execCmd("forecolor",Ext.isWebKit||Ext.isIE?"#"+g:g);this.deferFocus()}},clickEvent:"mousedown"})},{itemId:"backcolor",cls:"x-btn-icon",iconCls:"x-edit-backcolor",clickEvent:"mousedown",tooltip:a?e.buttonTips.backcolor||undefined:undefined,tabIndex:-1,menu:new Ext.menu.ColorMenu({focus:Ext.emptyFn,value:"FFFFFF",plain:true,allowReselect:true,listeners:{scope:this,select:function(h,g){if(Ext.isGecko){this.execCmd("useCSS",false);this.execCmd("hilitecolor",g);this.execCmd("useCSS",true);this.deferFocus()}else{this.execCmd(Ext.isOpera?"hilitecolor":"backcolor",Ext.isWebKit||Ext.isIE?"#"+g:g);this.deferFocus()}}},clickEvent:"mousedown"})})}if(this.enableAlignments){b.add("-",d("justifyleft"),d("justifycenter"),d("justifyright"))}if(!Ext.isSafari2){if(this.enableLinks){b.add("-",d("createlink",false,this.createLink))}if(this.enableLists){b.add("-",d("insertorderedlist"),d("insertunorderedlist"))}if(this.enableSourceEdit){b.add("-",d("sourceedit",true,function(g){this.toggleSourceEdit(!this.sourceEditMode)}))}}this.tb=b},getDocMarkup:function(){return'<html><head><style type="text/css">body{border:0;margin:0;padding:3px;height:98%;cursor:text;}</style></head><body></body></html>'},getEditorBody:function(){return this.doc.body||this.doc.documentElement},getDoc:function(){return Ext.isIE?this.getWin().document:(this.iframe.contentDocument||this.getWin().document)},getWin:function(){return Ext.isIE?this.iframe.contentWindow:window.frames[this.iframe.name]},onRender:function(b,a){Ext.form.HtmlEditor.superclass.onRender.call(this,b,a);this.el.dom.style.border="0 none";this.el.dom.setAttribute("tabIndex",-1);this.el.addClass("x-hidden");if(Ext.isIE){this.el.applyStyles("margin-top:-1px;margin-bottom:-1px;")}this.wrap=this.el.wrap({cls:"x-html-editor-wrap",cn:{cls:"x-html-editor-tb"}});this.createToolbar(this);this.disableItems(true);this.createIFrame();if(!this.width){var d=this.el.getSize();this.setSize(d.width,this.height||d.height)}},createIFrame:function(){var a=document.createElement("iframe");a.name=Ext.id();a.frameBorder="0";a.src=Ext.isIE?Ext.SSL_SECURE_URL:"javascript:;";this.wrap.dom.appendChild(a);this.iframe=a;this.initFrame();if(this.autoMonitorDesignMode!==false){this.monitorTask=Ext.TaskMgr.start({run:this.checkDesignMode,scope:this,interval:100})}},initFrame:function(){this.doc=this.getDoc();this.win=this.getWin();this.doc.open();this.doc.write(this.getDocMarkup());this.doc.close();var a={run:function(){if(this.doc.body||this.doc.readyState=="complete"){Ext.TaskMgr.stop(a);this.doc.designMode="on";this.initEditor.defer(10,this)}},interval:10,duration:10000,scope:this};Ext.TaskMgr.start(a)},checkDesignMode:function(){if(this.wrap&&this.wrap.dom.offsetWidth){var a=this.getDoc();if(!a){return}if(!a.editorInitialized||String(a.designMode).toLowerCase()!="on"){this.initFrame()}}},disableItems:function(a){if(this.fontSelect){this.fontSelect.dom.disabled=a}this.tb.items.each(function(b){if(b.itemId!="sourceedit"){b.setDisabled(a)}})},onResize:function(b,d){Ext.form.HtmlEditor.superclass.onResize.apply(this,arguments);if(this.el&&this.iframe){if(typeof b=="number"){var e=b-this.wrap.getFrameWidth("lr");this.el.setWidth(this.adjustWidth("textarea",e));this.tb.setWidth(e);this.iframe.style.width=Math.max(e,0)+"px"}if(typeof d=="number"){var a=d-this.wrap.getFrameWidth("tb")-this.tb.el.getHeight();this.el.setHeight(this.adjustWidth("textarea",a));this.iframe.style.height=Math.max(a,0)+"px";if(this.doc){this.getEditorBody().style.height=Math.max((a-(this.iframePad*2)),0)+"px"}}}},toggleSourceEdit:function(a){if(a===undefined){a=!this.sourceEditMode}this.sourceEditMode=a===true;var d=this.tb.items.get("sourceedit");if(d.pressed!==this.sourceEditMode){d.toggle(this.sourceEditMode);if(!d.xtbHidden){return}}if(this.sourceEditMode){this.disableItems(true);this.syncValue();this.iframe.className="x-hidden";this.el.removeClass("x-hidden");this.el.dom.removeAttribute("tabIndex");this.el.focus()}else{if(this.initialized){this.disableItems(false)}this.pushValue();this.iframe.className="";this.el.addClass("x-hidden");this.el.dom.setAttribute("tabIndex",-1);this.deferFocus()}var b=this.lastSize;if(b){delete this.lastSize;this.setSize(b)}this.fireEvent("editmodechange",this,this.sourceEditMode)},createLink:function(){var a=prompt(this.createLinkText,this.defaultLinkValue);if(a&&a!="http://"){this.relayCmd("createlink",a)}},adjustSize:Ext.BoxComponent.prototype.adjustSize,getResizeEl:function(){return this.wrap},getPositionEl:function(){return this.wrap},initEvents:function(){this.originalValue=this.getValue()},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,setValue:function(a){Ext.form.HtmlEditor.superclass.setValue.call(this,a);this.pushValue();return this},cleanHtml:function(a){a=String(a);if(a.length>5){if(Ext.isWebKit){a=a.replace(/\sclass="(?:Apple-style-span|khtml-block-placeholder)"/gi,"")}}if(a=="&nbsp;"){a=""}return a},syncValue:function(){if(this.initialized){var e=this.getEditorBody();var d=e.innerHTML;if(Ext.isWebKit){var b=e.getAttribute("style");var a=b.match(/text-align:(.*?);/i);if(a&&a[1]){d='<div style="'+a[0]+'">'+d+"</div>"}}d=this.cleanHtml(d);if(this.fireEvent("beforesync",this,d)!==false){this.el.dom.value=d;this.fireEvent("sync",this,d)}}},getValue:function(){this.syncValue();return Ext.form.HtmlEditor.superclass.getValue.call(this)},pushValue:function(){if(this.initialized){var a=this.el.dom.value;if(!this.activated&&a.length<1){a="&nbsp;"}if(this.fireEvent("beforepush",this,a)!==false){this.getEditorBody().innerHTML=a;this.fireEvent("push",this,a)}}},deferFocus:function(){this.focus.defer(10,this)},focus:function(){if(this.win&&!this.sourceEditMode){this.win.focus()}else{this.el.focus()}},initEditor:function(){var b=this.getEditorBody();var a=this.el.getStyles("font-size","font-family","background-image","background-repeat");a["background-attachment"]="fixed";b.bgProperties="fixed";Ext.DomHelper.applyStyles(b,a);if(this.doc){try{Ext.EventManager.removeAll(this.doc)}catch(d){}}this.doc=this.getDoc();Ext.EventManager.on(this.doc,{mousedown:this.onEditorEvent,dblclick:this.onEditorEvent,click:this.onEditorEvent,keyup:this.onEditorEvent,buffer:100,scope:this});if(Ext.isGecko){Ext.EventManager.on(this.doc,"keypress",this.applyCommand,this)}if(Ext.isIE||Ext.isWebKit||Ext.isOpera){Ext.EventManager.on(this.doc,"keydown",this.fixKeys,this)}this.initialized=true;this.fireEvent("initialize",this);this.doc.editorInitialized=true;this.pushValue()},onDestroy:function(){if(this.monitorTask){Ext.TaskMgr.stop(this.monitorTask)}if(this.rendered){this.tb.items.each(function(a){if(a.menu){a.menu.removeAll();if(a.menu.el){a.menu.el.destroy()}}a.destroy()});this.wrap.dom.innerHTML="";this.wrap.remove()}},onFirstFocus:function(){this.activated=true;this.disableItems(false);if(Ext.isGecko){this.win.focus();var a=this.win.getSelection();if(!a.focusNode||a.focusNode.nodeType!=3){var b=a.getRangeAt(0);b.selectNodeContents(this.getEditorBody());b.collapse(true);this.deferFocus()}try{this.execCmd("useCSS",true);this.execCmd("styleWithCSS",false)}catch(d){}}this.fireEvent("activate",this)},adjustFont:function(b){var d=b.itemId=="increasefontsize"?1:-1;var a=parseInt(this.doc.queryCommandValue("FontSize")||2,10);if(Ext.isSafari3||Ext.isChrome||Ext.isAir){if(a<=10){a=1+d}else{if(a<=13){a=2+d}else{if(a<=16){a=3+d}else{if(a<=18){a=4+d}else{if(a<=24){a=5+d}else{a=6+d}}}}}a=a.constrain(1,6)}else{if(Ext.isSafari){d*=2}a=Math.max(1,a+d)+(Ext.isSafari?"px":0)}this.execCmd("FontSize",a)},onEditorEvent:function(a){this.updateToolbar()},updateToolbar:function(){if(!this.activated){this.onFirstFocus();return}var b=this.tb.items.map,d=this.doc;if(this.enableFont&&!Ext.isSafari2){var a=(this.doc.queryCommandValue("FontName")||this.defaultFont).toLowerCase();if(a!=this.fontSelect.dom.value){this.fontSelect.dom.value=a}}if(this.enableFormat){b.bold.toggle(d.queryCommandState("bold"));b.italic.toggle(d.queryCommandState("italic"));b.underline.toggle(d.queryCommandState("underline"))}if(this.enableAlignments){b.justifyleft.toggle(d.queryCommandState("justifyleft"));b.justifycenter.toggle(d.queryCommandState("justifycenter"));b.justifyright.toggle(d.queryCommandState("justifyright"))}if(!Ext.isSafari2&&this.enableLists){b.insertorderedlist.toggle(d.queryCommandState("insertorderedlist"));b.insertunorderedlist.toggle(d.queryCommandState("insertunorderedlist"))}Ext.menu.MenuMgr.hideAll();this.syncValue()},relayBtnCmd:function(a){this.relayCmd(a.itemId)},relayCmd:function(b,a){(function(){this.focus();this.execCmd(b,a);this.updateToolbar()}).defer(10,this)},execCmd:function(b,a){this.doc.execCommand(b,false,a===undefined?null:a);this.syncValue()},applyCommand:function(b){if(b.ctrlKey){var d=b.getCharCode(),a;if(d>0){d=String.fromCharCode(d);switch(d){case"b":a="bold";break;case"i":a="italic";break;case"u":a="underline";break}if(a){this.win.focus();this.execCmd(a);this.deferFocus();b.preventDefault()}}}},insertAtCursor:function(b){if(!this.activated){return}if(Ext.isIE){this.win.focus();var a=this.doc.selection.createRange();if(a){a.collapse(true);a.pasteHTML(b);this.syncValue();this.deferFocus()}}else{if(Ext.isGecko||Ext.isOpera){this.win.focus();this.execCmd("InsertHTML",b);this.deferFocus()}else{if(Ext.isWebKit){this.execCmd("InsertText",b);this.deferFocus()}}}},fixKeys:function(){if(Ext.isIE){return function(g){var a=g.getKey(),b;if(a==g.TAB){g.stopEvent();b=this.doc.selection.createRange();if(b){b.collapse(true);b.pasteHTML("&nbsp;&nbsp;&nbsp;&nbsp;");this.deferFocus()}}else{if(a==g.ENTER){b=this.doc.selection.createRange();if(b){var d=b.parentElement();if(!d||d.tagName.toLowerCase()!="li"){g.stopEvent();b.pasteHTML("<br />");b.collapse(false);b.select()}}}}}}else{if(Ext.isOpera){return function(b){var a=b.getKey();if(a==b.TAB){b.stopEvent();this.win.focus();this.execCmd("InsertHTML","&nbsp;&nbsp;&nbsp;&nbsp;");this.deferFocus()}}}else{if(Ext.isWebKit){return function(b){var a=b.getKey();if(a==b.TAB){b.stopEvent();this.execCmd("InsertText","\t");this.deferFocus()}}}}}}(),getToolbar:function(){return this.tb},buttonTips:{bold:{title:"Bold (Ctrl+B)",text:"Make the selected text bold.",cls:"x-html-editor-tip"},italic:{title:"Italic (Ctrl+I)",text:"Make the selected text italic.",cls:"x-html-editor-tip"},underline:{title:"Underline (Ctrl+U)",text:"Underline the selected text.",cls:"x-html-editor-tip"},increasefontsize:{title:"Grow Text",text:"Increase the font size.",cls:"x-html-editor-tip"},decreasefontsize:{title:"Shrink Text",text:"Decrease the font size.",cls:"x-html-editor-tip"},backcolor:{title:"Text Highlight Color",text:"Change the background color of the selected text.",cls:"x-html-editor-tip"},forecolor:{title:"Font Color",text:"Change the color of the selected text.",cls:"x-html-editor-tip"},justifyleft:{title:"Align Text Left",text:"Align text to the left.",cls:"x-html-editor-tip"},justifycenter:{title:"Center Text",text:"Center text in the editor.",cls:"x-html-editor-tip"},justifyright:{title:"Align Text Right",text:"Align text to the right.",cls:"x-html-editor-tip"},insertunorderedlist:{title:"Bullet List",text:"Start a bulleted list.",cls:"x-html-editor-tip"},insertorderedlist:{title:"Numbered List",text:"Start a numbered list.",cls:"x-html-editor-tip"},createlink:{title:"Hyperlink",text:"Make the selected text a hyperlink.",cls:"x-html-editor-tip"},sourceedit:{title:"Source Edit",text:"Switch to source editing mode.",cls:"x-html-editor-tip"}}});Ext.reg("htmleditor",Ext.form.HtmlEditor);Ext.form.TimeField=Ext.extend(Ext.form.ComboBox,{minValue:null,maxValue:null,minText:"The time in this field must be equal to or after {0}",maxText:"The time in this field must be equal to or before {0}",invalidText:"{0} is not a valid time",format:"g:i A",altFormats:"g:ia|g:iA|g:i a|g:i A|h:i|g:i|H:i|ga|ha|gA|h a|g a|g A|gi|hi|gia|hia|g|H",increment:15,mode:"local",triggerAction:"all",typeAhead:false,initDate:"1/1/2008",initComponent:function(){Ext.form.TimeField.superclass.initComponent.call(this);if(typeof this.minValue=="string"){this.minValue=this.parseDate(this.minValue)}if(typeof this.maxValue=="string"){this.maxValue=this.parseDate(this.maxValue)}if(!this.store){var b=this.parseDate(this.minValue);if(!b){b=new Date(this.initDate).clearTime()}var a=this.parseDate(this.maxValue);if(!a){a=new Date(this.initDate).clearTime().add("mi",(24*60)-1)}var d=[];while(b<=a){d.push([b.dateFormat(this.format)]);b=b.add("mi",this.increment)}this.store=new Ext.data.ArrayStore({fields:["text"],data:d});this.displayField="text"}},getValue:function(){var a=Ext.form.TimeField.superclass.getValue.call(this);return this.formatDate(this.parseDate(a))||""},setValue:function(a){return Ext.form.TimeField.superclass.setValue.call(this,this.formatDate(this.parseDate(a)))},validateValue:Ext.form.DateField.prototype.validateValue,parseDate:Ext.form.DateField.prototype.parseDate,formatDate:Ext.form.DateField.prototype.formatDate,beforeBlur:function(){var a=this.parseDate(this.getRawValue());if(a){this.setValue(a.dateFormat(this.format))}}});Ext.reg("timefield",Ext.form.TimeField);Ext.form.Label=Ext.extend(Ext.BoxComponent,{onRender:function(b,a){if(!this.el){this.el=document.createElement("label");this.el.id=this.getId();this.el.innerHTML=this.text?Ext.util.Format.htmlEncode(this.text):(this.html||"");if(this.forId){this.el.setAttribute("for",this.forId)}}Ext.form.Label.superclass.onRender.call(this,b,a)},setText:function(a,b){this.text=a;if(this.rendered){this.el.dom.innerHTML=b!==false?Ext.util.Format.htmlEncode(a):a}return this}});Ext.reg("label",Ext.form.Label);Ext.form.Action=function(b,a){this.form=b;this.options=a||{}};Ext.form.Action.CLIENT_INVALID="client";Ext.form.Action.SERVER_INVALID="server";Ext.form.Action.CONNECT_FAILURE="connect";Ext.form.Action.LOAD_FAILURE="load";Ext.form.Action.prototype={type:"default",run:function(a){},success:function(a){},handleResponse:function(a){},failure:function(a){this.response=a;this.failureType=Ext.form.Action.CONNECT_FAILURE;this.form.afterAction(this,false)},processResponse:function(a){this.response=a;if(!a.responseText){return true}this.result=this.handleResponse(a);return this.result},getUrl:function(d){var a=this.options.url||this.form.url||this.form.el.dom.action;if(d){var b=this.getParams();if(b){a+=(a.indexOf("?")!=-1?"&":"?")+b}}return a},getMethod:function(){return(this.options.method||this.form.method||this.form.el.dom.method||"POST").toUpperCase()},getParams:function(){var a=this.form.baseParams;var b=this.options.params;if(b){if(typeof b=="object"){b=Ext.urlEncode(Ext.applyIf(b,a))}else{if(typeof b=="string"&&a){b+="&"+Ext.urlEncode(a)}}}else{if(a){b=Ext.urlEncode(a)}}return b},createCallback:function(a){var a=a||{};return{success:this.success,failure:this.failure,scope:this,timeout:(a.timeout*1000)||(this.form.timeout*1000),upload:this.form.fileUpload?this.success:undefined}}};Ext.form.Action.Submit=function(b,a){Ext.form.Action.Submit.superclass.constructor.call(this,b,a)};Ext.extend(Ext.form.Action.Submit,Ext.form.Action,{type:"submit",run:function(){var b=this.options;var d=this.getMethod();var a=d=="GET";if(b.clientValidation===false||this.form.isValid()){Ext.Ajax.request(Ext.apply(this.createCallback(b),{form:this.form.el.dom,url:this.getUrl(a),method:d,headers:b.headers,params:!a?this.getParams():null,isUpload:this.form.fileUpload}))}else{if(b.clientValidation!==false){this.failureType=Ext.form.Action.CLIENT_INVALID;this.form.afterAction(this,false)}}},success:function(b){var a=this.processResponse(b);if(a===true||a.success){this.form.afterAction(this,true);return}if(a.errors){this.form.markInvalid(a.errors);this.failureType=Ext.form.Action.SERVER_INVALID}this.form.afterAction(this,false)},handleResponse:function(d){if(this.form.errorReader){var b=this.form.errorReader.read(d);var h=[];if(b.records){for(var e=0,a=b.records.length;e<a;e++){var g=b.records[e];h[e]=g.data}}if(h.length<1){h=null}return{success:b.success,errors:h}}return Ext.decode(d.responseText)}});Ext.form.Action.Load=function(b,a){Ext.form.Action.Load.superclass.constructor.call(this,b,a);this.reader=this.form.reader};Ext.extend(Ext.form.Action.Load,Ext.form.Action,{type:"load",run:function(){Ext.Ajax.request(Ext.apply(this.createCallback(this.options),{method:this.getMethod(),url:this.getUrl(false),headers:this.options.headers,params:this.getParams()}))},success:function(b){var a=this.processResponse(b);if(a===true||!a.success||!a.data){this.failureType=Ext.form.Action.LOAD_FAILURE;this.form.afterAction(this,false);return}this.form.clearInvalid();this.form.setValues(a.data);this.form.afterAction(this,true)},handleResponse:function(b){if(this.form.reader){var a=this.form.reader.read(b);var d=a.records&&a.records[0]?a.records[0].data:null;return{success:a.success,data:d}}return Ext.decode(b.responseText)}});Ext.form.Action.ACTION_TYPES={load:Ext.form.Action.Load,submit:Ext.form.Action.Submit};Ext.form.VTypes=function(){var d=/^[a-zA-Z_]+$/;var e=/^[a-zA-Z0-9_]+$/;var b=/^([\w]+)(\.[\w]+)*@([\w\-]+\.){1,5}([A-Za-z]){2,4}$/;var a=/(((https?)|(ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i;return{email:function(g){return b.test(g)},emailText:'This field should be an e-mail address in the format "user@domain.com"',emailMask:/[a-z0-9_\.\-@]/i,url:function(g){return a.test(g)},urlText:'This field should be a URL in the format "http://www.domain.com"',alpha:function(g){return d.test(g)},alphaText:"This field should only contain letters and _",alphaMask:/[a-z_]/i,alphanum:function(g){return e.test(g)},alphanumText:"This field should only contain letters, numbers and _",alphanumMask:/[a-z0-9_]/i}}();Ext.grid.GridPanel=Ext.extend(Ext.Panel,{autoExpandColumn:false,autoExpandMax:1000,autoExpandMin:50,columnLines:false,ddText:"{0} selected row{1}",deferRowRender:true,enableColumnHide:true,enableColumnMove:true,enableDragDrop:false,enableHdMenu:true,loadMask:false,minColumnWidth:25,stripeRows:false,trackMouseOver:true,stateEvents:["columnmove","columnresize","sortchange"],view:null,rendered:false,viewReady:false,initComponent:function(){Ext.grid.GridPanel.superclass.initComponent.call(this);if(this.columnLines){this.cls=(this.cls||"")+" x-grid-with-col-lines"}this.autoScroll=false;this.autoWidth=false;if(Ext.isArray(this.columns)){this.colModel=new Ext.grid.ColumnModel(this.columns);delete this.columns}if(this.ds){this.store=this.ds;delete this.ds}if(this.cm){this.colModel=this.cm;delete this.cm}if(this.sm){this.selModel=this.sm;delete this.sm}this.store=Ext.StoreMgr.lookup(this.store);this.addEvents("click","dblclick","contextmenu","mousedown","mouseup","mouseover","mouseout","keypress","keydown","cellmousedown","rowmousedown","headermousedown","cellclick","celldblclick","rowclick","rowdblclick","headerclick","headerdblclick","rowcontextmenu","cellcontextmenu","headercontextmenu","bodyscroll","columnresize","columnmove","sortchange")},onRender:function(d,a){Ext.grid.GridPanel.superclass.onRender.apply(this,arguments);var e=this.body;this.el.addClass("x-grid-panel");var b=this.getView();b.init(this);this.mon(e,{mousedown:this.onMouseDown,click:this.onClick,dblclick:this.onDblClick,contextmenu:this.onContextMenu,keydown:this.onKeyDown,scope:this});this.relayEvents(e,["mousedown","mouseup","mouseover","mouseout","keypress"]);this.getSelectionModel().init(this);this.view.render()},initEvents:function(){Ext.grid.GridPanel.superclass.initEvents.call(this);if(this.loadMask){this.loadMask=new Ext.LoadMask(this.bwrap,Ext.apply({store:this.store},this.loadMask))}},initStateEvents:function(){Ext.grid.GridPanel.superclass.initStateEvents.call(this);this.mon(this.colModel,"hiddenchange",this.saveState,this,{delay:100})},applyState:function(h){var b=this.colModel;var g=h.columns;if(g){for(var d=0,a=g.length;d<a;d++){var e=g[d];var k=b.getColumnById(e.id);if(k){k.hidden=e.hidden;k.width=e.width;var j=b.getIndexById(e.id);if(j!=d){b.moveColumn(j,d)}}}}if(h.sort&&this.store){this.store[this.store.remoteSort?"setDefaultSort":"sort"](h.sort.field,h.sort.direction)}delete h.columns;delete h.sort;Ext.grid.GridPanel.superclass.applyState.call(this,h)},getState:function(){var d={columns:[]};for(var b=0,e;e=this.colModel.config[b];b++){d.columns[b]={id:e.id,width:e.width};if(e.hidden){d.columns[b].hidden=true}}if(this.store){var a=this.store.getSortState();if(a){d.sort=a}}return d},afterRender:function(){Ext.grid.GridPanel.superclass.afterRender.call(this);this.view.layout();if(this.deferRowRender){this.view.afterRender.defer(10,this.view)}else{this.view.afterRender()}this.viewReady=true},reconfigure:function(a,b){if(this.loadMask){this.loadMask.destroy();this.loadMask=new Ext.LoadMask(this.bwrap,Ext.apply({},{store:a},this.initialConfig.loadMask))}this.view.initData(a,b);this.store=a;this.colModel=b;if(this.rendered){this.view.refresh(true)}},onKeyDown:function(a){this.fireEvent("keydown",a)},onDestroy:function(){if(this.rendered){var a=this.body;a.removeAllListeners();a.update("");Ext.destroy(this.view,this.loadMask)}else{if(this.store&&this.store.autoDestroy){this.store.destroy()}}Ext.destroy(this.colModel);this.store=this.colModel=this.view=this.loadMask=null;Ext.grid.GridPanel.superclass.onDestroy.call(this)},processEvent:function(d,h){this.fireEvent(d,h);var g=h.getTarget();var b=this.view;var k=b.findHeaderIndex(g);if(k!==false){this.fireEvent("header"+d,this,k,h)}else{var j=b.findRowIndex(g);var a=b.findCellIndex(g);if(j!==false){this.fireEvent("row"+d,this,j,h);if(a!==false){this.fireEvent("cell"+d,this,j,a,h)}}}},onClick:function(a){this.processEvent("click",a)},onMouseDown:function(a){this.processEvent("mousedown",a)},onContextMenu:function(b,a){this.processEvent("contextmenu",b)},onDblClick:function(a){this.processEvent("dblclick",a)},walkCells:function(m,d,b,g,l){var k=this.colModel,h=k.getColumnCount();var a=this.store,j=a.getCount(),e=true;if(b<0){if(d<0){m--;e=false}while(m>=0){if(!e){d=h-1}e=false;while(d>=0){if(g.call(l||this,m,d,k)===true){return[m,d]}d--}m--}}else{if(d>=h){m++;e=false}while(m<j){if(!e){d=0}e=false;while(d<h){if(g.call(l||this,m,d,k)===true){return[m,d]}d++}m++}}return null},getSelections:function(){return this.selModel.getSelections()},onResize:function(){Ext.grid.GridPanel.superclass.onResize.apply(this,arguments);if(this.viewReady){this.view.layout()}},getGridEl:function(){return this.body},stopEditing:Ext.emptyFn,getSelectionModel:function(){if(!this.selModel){this.selModel=new Ext.grid.RowSelectionModel(this.disableSelection?{selectRow:Ext.emptyFn}:null)}return this.selModel},getStore:function(){return this.store},getColumnModel:function(){return this.colModel},getView:function(){if(!this.view){this.view=new Ext.grid.GridView(this.viewConfig)}return this.view},getDragDropText:function(){var a=this.selModel.getCount();return String.format(this.ddText,a,a==1?"":"s")}});Ext.reg("grid",Ext.grid.GridPanel);Ext.grid.GridView=function(a){Ext.apply(this,a);this.addEvents("beforerowremoved","beforerowsinserted","beforerefresh","rowremoved","rowsinserted","rowupdated","refresh");Ext.grid.GridView.superclass.constructor.call(this)};Ext.extend(Ext.grid.GridView,Ext.util.Observable,{deferEmptyText:true,scrollOffset:19,autoFill:false,forceFit:false,sortClasses:["sort-asc","sort-desc"],sortAscText:"Sort Ascending",sortDescText:"Sort Descending",columnsText:"Columns",selectedRowClass:"x-grid3-row-selected",borderWidth:2,tdClass:"x-grid3-cell",hdCls:"x-grid3-hd",markDirty:true,cellSelectorDepth:4,rowSelectorDepth:10,cellSelector:"td.x-grid3-cell",rowSelector:"div.x-grid3-row",initTemplates:function(){var d=this.templates||{};if(!d.master){d.master=new Ext.Template('<div class="x-grid3" hidefocus="true">','<div class="x-grid3-viewport">','<div class="x-grid3-header"><div class="x-grid3-header-inner"><div class="x-grid3-header-offset" style="{ostyle}">{header}</div></div><div class="x-clear"></div></div>','<div class="x-grid3-scroller"><div class="x-grid3-body" style="{bstyle}">{body}</div><a href="#" class="x-grid3-focus" tabIndex="-1"></a></div>',"</div>",'<div class="x-grid3-resize-marker">&#160;</div>','<div class="x-grid3-resize-proxy">&#160;</div>',"</div>")}if(!d.header){d.header=new Ext.Template('<table border="0" cellspacing="0" cellpadding="0" style="{tstyle}">','<thead><tr class="x-grid3-hd-row">{cells}</tr></thead>',"</table>")}if(!d.hcell){d.hcell=new Ext.Template('<td class="x-grid3-hd x-grid3-cell x-grid3-td-{id} {css}" style="{style}"><div {tooltip} {attr} class="x-grid3-hd-inner x-grid3-hd-{id}" unselectable="on" style="{istyle}">',this.grid.enableHdMenu?'<a class="x-grid3-hd-btn" href="#"></a>':"",'{value}<img class="x-grid3-sort-icon" src="',Ext.BLANK_IMAGE_URL,'" />',"</div></td>")}if(!d.body){d.body=new Ext.Template("{rows}")}if(!d.row){d.row=new Ext.Template('<div class="x-grid3-row {alt}" style="{tstyle}"><table class="x-grid3-row-table" border="0" cellspacing="0" cellpadding="0" style="{tstyle}">',"<tbody><tr>{cells}</tr>",(this.enableRowBody?'<tr class="x-grid3-row-body-tr" style="{bodyStyle}"><td colspan="{cols}" class="x-grid3-body-cell" tabIndex="0" hidefocus="on"><div class="x-grid3-row-body">{body}</div></td></tr>':""),"</tbody></table></div>")}if(!d.cell){d.cell=new Ext.Template('<td class="x-grid3-col x-grid3-cell x-grid3-td-{id} {css}" style="{style}" tabIndex="0" {cellAttr}>','<div class="x-grid3-cell-inner x-grid3-col-{id}" unselectable="on" {attr}>{value}</div>',"</td>")}for(var a in d){var b=d[a];if(b&&typeof b.compile=="function"&&!b.compiled){b.disableFormats=true;b.compile()}}this.templates=d;this.colRe=new RegExp("x-grid3-td-([^\\s]+)","")},fly:function(a){if(!this._flyweight){this._flyweight=new Ext.Element.Flyweight(document.body)}this._flyweight.dom=a;return this._flyweight},getEditorParent:function(a){return this.scroller.dom},initElements:function(){var d=Ext.Element;var b=this.grid.getGridEl().dom.firstChild;var a=b.childNodes;this.el=new d(b);this.mainWrap=new d(a[0]);this.mainHd=new d(this.mainWrap.dom.firstChild);if(this.grid.hideHeaders){this.mainHd.setDisplayed(false)}this.innerHd=this.mainHd.dom.firstChild;this.scroller=new d(this.mainWrap.dom.childNodes[1]);if(this.forceFit){this.scroller.setStyle("overflow-x","hidden")}this.mainBody=new d(this.scroller.dom.firstChild);this.focusEl=new d(this.scroller.dom.childNodes[1]);this.focusEl.swallowEvent("click",true);this.resizeMarker=new d(a[1]);this.resizeProxy=new d(a[2])},getRows:function(){return this.hasRows()?this.mainBody.dom.childNodes:[]},findCell:function(a){if(!a){return false}return this.fly(a).findParent(this.cellSelector,this.cellSelectorDepth)},findCellIndex:function(d,b){var a=this.findCell(d);if(a&&(!b||this.fly(a).hasClass(b))){return this.getCellIndex(a)}return false},getCellIndex:function(b){if(b){var a=b.className.match(this.colRe);if(a&&a[1]){return this.cm.getIndexById(a[1])}}return false},findHeaderCell:function(b){var a=this.findCell(b);return a&&this.fly(a).hasClass(this.hdCls)?a:null},findHeaderIndex:function(a){return this.findCellIndex(a,this.hdCls)},findRow:function(a){if(!a){return false}return this.fly(a).findParent(this.rowSelector,this.rowSelectorDepth)},findRowIndex:function(a){var b=this.findRow(a);return b?b.rowIndex:false},getRow:function(a){return this.getRows()[a]},getCell:function(b,a){return this.getRow(b).getElementsByTagName("td")[a]},getHeaderCell:function(a){return this.mainHd.dom.getElementsByTagName("td")[a]},addRowClass:function(d,a){var b=this.getRow(d);if(b){this.fly(b).addClass(a)}},removeRowClass:function(d,a){var b=this.getRow(d);if(b){this.fly(b).removeClass(a)}},removeRow:function(a){Ext.removeNode(this.getRow(a));this.syncFocusEl(a)},removeRows:function(d,a){var b=this.mainBody.dom;for(var e=d;e<=a;e++){Ext.removeNode(b.childNodes[d])}this.syncFocusEl(d)},getScrollState:function(){var a=this.scroller.dom;return{left:a.scrollLeft,top:a.scrollTop}},restoreScroll:function(a){var b=this.scroller.dom;b.scrollLeft=a.left;b.scrollTop=a.top},scrollToTop:function(){this.scroller.dom.scrollTop=0;this.scroller.dom.scrollLeft=0},syncScroll:function(){this.syncHeaderScroll();var a=this.scroller.dom;this.grid.fireEvent("bodyscroll",a.scrollLeft,a.scrollTop)},syncHeaderScroll:function(){var a=this.scroller.dom;this.innerHd.scrollLeft=a.scrollLeft;this.innerHd.scrollLeft=a.scrollLeft},updateSortIcon:function(b,a){var e=this.sortClasses;var d=this.mainHd.select("td").removeClass(e);d.item(b).addClass(e[a=="DESC"?1:0])},updateAllColumnWidths:function(){var e=this.getTotalWidth();var m=this.cm.getColumnCount();var h=[];for(var b=0;b<m;b++){h[b]=this.getColumnWidth(b)}this.innerHd.firstChild.style.width=this.getOffsetWidth();this.innerHd.firstChild.firstChild.style.width=e;this.mainBody.dom.style.width=e;for(var b=0;b<m;b++){var d=this.getHeaderCell(b);d.style.width=h[b]}var k=this.getRows(),n,l;for(var b=0,g=k.length;b<g;b++){n=k[b];n.style.width=e;if(n.firstChild){n.firstChild.style.width=e;l=n.firstChild.rows[0];for(var a=0;a<m;a++){l.childNodes[a].style.width=h[a]}}}this.onAllColumnWidthsUpdated(h,e)},updateColumnWidth:function(b,a){var k=this.getColumnWidth(b);var g=this.getTotalWidth();this.innerHd.firstChild.style.width=this.getOffsetWidth();this.innerHd.firstChild.firstChild.style.width=g;this.mainBody.dom.style.width=g;var e=this.getHeaderCell(b);e.style.width=k;var j=this.getRows(),l;for(var d=0,h=j.length;d<h;d++){l=j[d];l.style.width=g;if(l.firstChild){l.firstChild.style.width=g;l.firstChild.rows[0].childNodes[b].style.width=k}}this.onColumnWidthUpdated(b,k,g)},updateColumnHidden:function(a,g){var e=this.getTotalWidth();this.innerHd.firstChild.style.width=this.getOffsetWidth();this.innerHd.firstChild.firstChild.style.width=e;this.mainBody.dom.style.width=e;var j=g?"none":"";var d=this.getHeaderCell(a);d.style.display=j;var k=this.getRows(),l;for(var b=0,h=k.length;b<h;b++){l=k[b];l.style.width=e;if(l.firstChild){l.firstChild.style.width=e;l.firstChild.rows[0].childNodes[a].style.display=j}}this.onColumnHiddenUpdated(a,g,e);delete this.lastViewWidth;this.layout()},doRender:function(g,k,s,a,q,x){var b=this.templates,e=b.cell,h=b.row,l=q-1;var d="width:"+this.getTotalWidth()+";";var A=[],t,B,u={},m={tstyle:d},o;for(var w=0,z=k.length;w<z;w++){o=k[w];t=[];var n=(w+a);for(var y=0;y<q;y++){B=g[y];u.id=B.id;u.css=y==0?"x-grid3-cell-first ":(y==l?"x-grid3-cell-last ":"");u.attr=u.cellAttr="";u.value=B.renderer(o.data[B.name],u,o,n,y,s);u.style=B.style;if(u.value==undefined||u.value===""){u.value="&#160;"}if(this.markDirty&&o.dirty&&typeof o.modified[B.name]!=="undefined"){u.css+=" x-grid3-dirty-cell"}t[t.length]=e.apply(u)}var C=[];if(x&&((n+1)%2==0)){C[0]="x-grid3-row-alt"}if(o.dirty){C[1]=" x-grid3-dirty-row"}m.cols=q;if(this.getRowClass){C[2]=this.getRowClass(o,n,m,s)}m.alt=C.join(" ");m.cells=t.join("");A[A.length]=h.apply(m)}return A.join("")},processRows:function(g,e){if(!this.ds||this.ds.getCount()<1){return}e=e||!this.grid.stripeRows;g=g||0;var l=this.getRows();var h=" x-grid3-row-alt ";l[0].className+=" x-grid3-row-first";l[l.length-1].className+=" x-grid3-row-last";for(var b=g,d=l.length;b<d;b++){var k=l[b];k.rowIndex=b;if(!e){var a=((b+1)%2==0);var j=(" "+k.className+" ").indexOf(h)!=-1;if(a==j){continue}if(a){k.className+=" x-grid3-row-alt"}else{k.className=k.className.replace("x-grid3-row-alt","")}}}},afterRender:function(){if(!this.ds||!this.cm){return}this.mainBody.dom.innerHTML=this.renderRows()||"&nbsp;";this.processRows(0,true);if(this.deferEmptyText!==true){this.applyEmptyText()}},renderUI:function(){var e=this.renderHeaders();var a=this.templates.body.apply({rows:"&nbsp;"});var b=this.templates.master.apply({body:a,header:e,ostyle:"width:"+this.getOffsetWidth()+";",bstyle:"width:"+this.getTotalWidth()+";"});var d=this.grid;d.getGridEl().dom.innerHTML=b;this.initElements();Ext.fly(this.innerHd).on("click",this.handleHdDown,this);this.mainHd.on("mouseover",this.handleHdOver,this);this.mainHd.on("mouseout",this.handleHdOut,this);this.mainHd.on("mousemove",this.handleHdMove,this);this.scroller.on("scroll",this.syncScroll,this);if(d.enableColumnResize!==false){this.splitZone=new Ext.grid.GridView.SplitDragZone(d,this.mainHd.dom)}if(d.enableColumnMove){this.columnDrag=new Ext.grid.GridView.ColumnDragZone(d,this.innerHd);this.columnDrop=new Ext.grid.HeaderDropZone(d,this.mainHd.dom)}if(d.enableHdMenu!==false){this.hmenu=new Ext.menu.Menu({id:d.id+"-hctx"});this.hmenu.add({itemId:"asc",text:this.sortAscText,cls:"xg-hmenu-sort-asc"},{itemId:"desc",text:this.sortDescText,cls:"xg-hmenu-sort-desc"});if(d.enableColumnHide!==false){this.colMenu=new Ext.menu.Menu({id:d.id+"-hcols-menu"});this.colMenu.on("beforeshow",this.beforeColMenuShow,this);this.colMenu.on("itemclick",this.handleHdMenuClick,this);this.hmenu.add("-",{itemId:"columns",hideOnClick:false,text:this.columnsText,menu:this.colMenu,iconCls:"x-cols-icon"})}this.hmenu.on("itemclick",this.handleHdMenuClick,this)}if(d.trackMouseOver){this.mainBody.on("mouseover",this.onRowOver,this);this.mainBody.on("mouseout",this.onRowOut,this)}if(d.enableDragDrop||d.enableDrag){this.dragZone=new Ext.grid.GridDragZone(d,{ddGroup:d.ddGroup||"GridDD"})}this.updateHeaderSortState()},layout:function(){if(!this.mainBody){return}var d=this.grid;var j=d.getGridEl();var a=j.getSize(true);var b=a.width;if(b<20||a.height<20){return}if(d.autoHeight){this.scroller.dom.style.overflow="visible";if(Ext.isWebKit){this.scroller.dom.style.position="static"}}else{this.el.setSize(a.width,a.height);var h=this.mainHd.getHeight();var e=a.height-(h);this.scroller.setSize(b,e);if(this.innerHd){this.innerHd.style.width=(b)+"px"}}if(this.forceFit){if(this.lastViewWidth!=b){this.fitColumns(false,false);this.lastViewWidth=b}}else{this.autoExpand();this.syncHeaderScroll()}this.onLayout(b,e)},onLayout:function(a,b){},onColumnWidthUpdated:function(d,a,b){},onAllColumnWidthsUpdated:function(a,b){},onColumnHiddenUpdated:function(b,d,a){},updateColumnText:function(a,b){},afterMove:function(a){},init:function(a){this.grid=a;this.initTemplates();this.initData(a.store,a.colModel);this.initUI(a)},getColumnId:function(a){return this.cm.getColumnId(a)},getOffsetWidth:function(){return(this.cm.getTotalWidth()+this.scrollOffset)+"px"},renderHeaders:function(){var d=this.cm,j=this.templates;var g=j.hcell;var b=[],k={};var a=d.getColumnCount();var h=a-1;for(var e=0;e<a;e++){k.id=d.getColumnId(e);k.value=d.getColumnHeader(e)||"";k.style=this.getColumnStyle(e,true);k.tooltip=this.getColumnTooltip(e);k.css=e==0?"x-grid3-cell-first ":(e==h?"x-grid3-cell-last ":"");if(d.config[e].align=="right"){k.istyle="padding-right:16px"}else{delete k.istyle}b[b.length]=g.apply(k)}return j.header.apply({cells:b.join(""),tstyle:"width:"+this.getTotalWidth()+";"})},getColumnTooltip:function(a){var b=this.cm.getColumnTooltip(a);if(b){if(Ext.QuickTips.isEnabled()){return'ext:qtip="'+b+'"'}else{return'title="'+b+'"'}}return""},beforeUpdate:function(){this.grid.stopEditing(true)},updateHeaders:function(){this.innerHd.firstChild.innerHTML=this.renderHeaders();this.innerHd.firstChild.style.width=this.getOffsetWidth();this.innerHd.firstChild.firstChild.style.width=this.getTotalWidth()},focusRow:function(a){this.focusCell(a,0,false)},focusCell:function(d,a,b){this.syncFocusEl(this.ensureVisible(d,a,b));if(Ext.isGecko){this.focusEl.focus()}else{this.focusEl.focus.defer(1,this.focusEl)}},resolveCell:function(g,d,e){if(typeof g!="number"){g=g.rowIndex}if(!this.ds){return null}if(g<0||g>=this.ds.getCount()){return null}d=(d!==undefined?d:0);var b=this.getRow(g),a;if(!(e===false&&d===0)){while(this.cm.isHidden(d)){d++}a=this.getCell(g,d)}return{row:b,cell:a}},getResolvedXY:function(a){if(!a){return null}var b=this.scroller.dom,e=a.cell,d=a.row;return e?Ext.fly(e).getXY():[this.el.getX(),Ext.fly(d).getY()]},syncFocusEl:function(e,a,d){var b=e;if(!Ext.isArray(b)){e=Math.min(e,Math.max(0,this.getRows().length-1));b=this.getResolvedXY(this.resolveCell(e,a,d))}this.focusEl.setXY(b||this.scroller.getXY())},ensureVisible:function(u,g,e){var s=this.resolveCell(u,g,e);if(!s||!s.row){return}var l=s.row,h=s.cell;var o=this.scroller.dom;var t=0;var d=l,q=this.el.dom;while(d&&d!=q){t+=d.offsetTop;d=d.offsetParent}t-=this.mainHd.dom.offsetHeight;var r=t+l.offsetHeight;var a=o.clientHeight;var q=parseInt(o.scrollTop,10);var n=q+a;if(t<q){o.scrollTop=t}else{if(r>n){o.scrollTop=r-a}}if(e!==false){var m=parseInt(h.offsetLeft,10);var k=m+h.offsetWidth;var j=parseInt(o.scrollLeft,10);var b=j+o.clientWidth;if(m<j){o.scrollLeft=m}else{if(k>b){o.scrollLeft=k-o.clientWidth}}}return this.getResolvedXY(s)},insertRows:function(a,h,d,g){if(!g&&h===0&&d>=a.getCount()-1){this.refresh()}else{if(!g){this.fireEvent("beforerowsinserted",this,h,d)}var b=this.renderRows(h,d);var e=this.getRow(h);if(e){Ext.DomHelper.insertHtml("beforeBegin",e,b)}else{Ext.DomHelper.insertHtml("beforeEnd",this.mainBody.dom,b)}if(!g){this.fireEvent("rowsinserted",this,h,d);this.processRows(h)}}this.syncFocusEl(h)},deleteRows:function(a,d,b){if(a.getRowCount()<1){this.refresh()}else{this.fireEvent("beforerowsdeleted",this,d,b);this.removeRows(d,b);this.processRows(d);this.fireEvent("rowsdeleted",this,d,b)}},getColumnStyle:function(a,d){var b=!d?(this.cm.config[a].css||""):"";b+="width:"+this.getColumnWidth(a)+";";if(this.cm.isHidden(a)){b+="display:none;"}var e=this.cm.config[a].align;if(e){b+="text-align:"+e+";"}return b},getColumnWidth:function(b){var a=this.cm.getColumnWidth(b);if(typeof a=="number"){return(Ext.isBorderBox?a:(a-this.borderWidth>0?a-this.borderWidth:0))+"px"}return a},getTotalWidth:function(){return this.cm.getTotalWidth()+"px"},fitColumns:function(e,j,k){var r=this.cm,l;var m=r.getTotalWidth(false);var a=this.grid.getGridEl().getWidth(true)-this.scrollOffset;if(a<20){return}var g=a-m;if(g===0){return false}var n=r.getColumnCount(true);var t=n-(typeof k=="number"?1:0);if(t===0){t=1;k=undefined}var s=r.getColumnCount();var p=[];var o=0;var d=0;var q;for(l=0;l<s;l++){if(!r.isHidden(l)&&!r.isFixed(l)&&l!==k){q=r.getColumnWidth(l);p.push(l);o=l;p.push(q);d+=q}}var b=(a-r.getTotalWidth())/d;while(p.length){q=p.pop();l=p.pop();r.setColumnWidth(l,Math.max(this.grid.minColumnWidth,Math.floor(q+q*b)),true)}if((m=r.getTotalWidth(false))>a){var h=t!=n?k:o;r.setColumnWidth(h,Math.max(1,r.getColumnWidth(h)-(m-a)),true)}if(e!==true){this.updateAllColumnWidths()}return true},autoExpand:function(b){var k=this.grid,a=this.cm;if(!this.userResized&&k.autoExpandColumn){var e=a.getTotalWidth(false);var l=this.grid.getGridEl().getWidth(true)-this.scrollOffset;if(e!=l){var j=a.getIndexById(k.autoExpandColumn);var h=a.getColumnWidth(j);var d=Math.min(Math.max(((l-e)+h),k.autoExpandMin),k.autoExpandMax);if(d!=h){a.setColumnWidth(j,d,true);if(b!==true){this.updateColumnWidth(j,d)}}}}},getColumnData:function(){var e=[],a=this.cm,g=a.getColumnCount();for(var d=0;d<g;d++){var b=a.getDataIndex(d);e[d]={name:(typeof b=="undefined"?this.ds.fields.get(d).name:b),renderer:a.getRenderer(d),id:a.getColumnId(d),style:this.getColumnStyle(d)}}return e},renderRows:function(l,d){var e=this.grid,j=e.colModel,a=e.store,m=e.stripeRows;var k=j.getColumnCount();if(a.getCount()<1){return""}var h=this.getColumnData();l=l||0;d=typeof d=="undefined"?a.getCount()-1:d;var b=a.getRange(l,d);return this.doRender(h,b,a,l,k,m)},renderBody:function(){var a=this.renderRows()||"&nbsp;";return this.templates.body.apply({rows:a})},refreshRow:function(a){var d=this.ds,b;if(typeof a=="number"){b=a;a=d.getAt(b);if(!a){return}}else{b=d.indexOf(a);if(b<0){return}}this.insertRows(d,b,b,true);this.getRow(b).rowIndex=b;this.onRemove(d,a,b+1,true);this.fireEvent("rowupdated",this,b,a)},refresh:function(b){this.fireEvent("beforerefresh",this);this.grid.stopEditing(true);var a=this.renderBody();this.mainBody.update(a);if(b===true){this.updateHeaders();this.updateHeaderSortState()}this.processRows(0,true);this.layout();this.applyEmptyText();this.fireEvent("refresh",this)},applyEmptyText:function(){if(this.emptyText&&!this.hasRows()){this.mainBody.update('<div class="x-grid-empty">'+this.emptyText+"</div>")}},updateHeaderSortState:function(){var b=this.ds.getSortState();if(!b){return}if(!this.sortState||(this.sortState.field!=b.field||this.sortState.direction!=b.direction)){this.grid.fireEvent("sortchange",this.grid,b)}this.sortState=b;var d=this.cm.findColumnIndex(b.field);if(d!=-1){var a=b.direction;this.updateSortIcon(d,a)}},destroy:function(){if(this.colMenu){Ext.menu.MenuMgr.unregister(this.colMenu);this.colMenu.destroy();delete this.colMenu}if(this.hmenu){Ext.menu.MenuMgr.unregister(this.hmenu);this.hmenu.destroy();delete this.hmenu}if(this.grid.enableColumnMove){var d=Ext.dd.DDM.ids["gridHeader"+this.grid.getGridEl().id];if(d){for(var a in d){if(!d[a].config.isTarget&&d[a].dragElId){var b=d[a].dragElId;d[a].unreg();Ext.get(b).remove()}else{if(d[a].config.isTarget){d[a].proxyTop.remove();d[a].proxyBottom.remove();d[a].unreg()}}if(Ext.dd.DDM.locationCache[a]){delete Ext.dd.DDM.locationCache[a]}}delete Ext.dd.DDM.ids["gridHeader"+this.grid.getGridEl().id]}}if(this.dragZone){this.dragZone.unreg()}Ext.fly(this.innerHd).removeAllListeners();Ext.removeNode(this.innerHd);Ext.destroy(this.resizeMarker,this.resizeProxy,this.focusEl,this.mainBody,this.scroller,this.mainHd,this.mainWrap,this.dragZone,this.splitZone,this.columnDrag,this.columnDrop);this.initData(null,null);Ext.EventManager.removeResizeListener(this.onWindowResize,this);this.purgeListeners()},onDenyColumnHide:function(){},render:function(){if(this.autoFill){var a=this.grid.ownerCt;if(a&&a.getLayout()){a.on("afterlayout",function(){this.fitColumns(true,true);this.updateHeaders()},this,{single:true})}else{this.fitColumns(true,true)}}else{if(this.forceFit){this.fitColumns(true,false)}else{if(this.grid.autoExpandColumn){this.autoExpand(true)}}}this.renderUI()},initData:function(b,a){if(this.ds){this.ds.un("load",this.onLoad,this);this.ds.un("datachanged",this.onDataChange,this);this.ds.un("add",this.onAdd,this);this.ds.un("remove",this.onRemove,this);this.ds.un("update",this.onUpdate,this);this.ds.un("clear",this.onClear,this);if(this.ds!==b&&this.ds.autoDestroy){this.ds.destroy()}}if(b){b.on("load",this.onLoad,this);b.on("datachanged",this.onDataChange,this);b.on("add",this.onAdd,this);b.on("remove",this.onRemove,this);b.on("update",this.onUpdate,this);b.on("clear",this.onClear,this)}this.ds=b;if(this.cm){this.cm.un("configchange",this.onColConfigChange,this);this.cm.un("widthchange",this.onColWidthChange,this);this.cm.un("headerchange",this.onHeaderChange,this);this.cm.un("hiddenchange",this.onHiddenChange,this);this.cm.un("columnmoved",this.onColumnMove,this);this.cm.un("columnlockchange",this.onColumnLock,this)}if(a){delete this.lastViewWidth;a.on("configchange",this.onColConfigChange,this);a.on("widthchange",this.onColWidthChange,this);a.on("headerchange",this.onHeaderChange,this);a.on("hiddenchange",this.onHiddenChange,this);a.on("columnmoved",this.onColumnMove,this);a.on("columnlockchange",this.onColumnLock,this)}this.cm=a},onDataChange:function(){this.refresh();this.updateHeaderSortState();this.syncFocusEl(0)},onClear:function(){this.refresh();this.syncFocusEl(0)},onUpdate:function(b,a){this.refreshRow(a)},onAdd:function(d,a,b){this.insertRows(d,b,b+(a.length-1))},onRemove:function(e,a,b,d){if(d!==true){this.fireEvent("beforerowremoved",this,b,a)}this.removeRow(b);if(d!==true){this.processRows(b);this.applyEmptyText();this.fireEvent("rowremoved",this,b,a)}},onLoad:function(){this.scrollToTop()},onColWidthChange:function(a,b,d){this.updateColumnWidth(b,d)},onHeaderChange:function(a,b,d){this.updateHeaders()},onHiddenChange:function(a,b,d){this.updateColumnHidden(b,d)},onColumnMove:function(a,e,b){this.indexMap=null;var d=this.getScrollState();this.refresh(true);this.restoreScroll(d);this.afterMove(b)},onColConfigChange:function(){delete this.lastViewWidth;this.indexMap=null;this.refresh(true)},initUI:function(a){a.on("headerclick",this.onHeaderClick,this)},initEvents:function(){},onHeaderClick:function(b,a){if(this.headersDisabled||!this.cm.isSortable(a)){return}b.stopEditing(true);b.store.sort(this.cm.getDataIndex(a))},onRowOver:function(b,a){var d;if((d=this.findRowIndex(a))!==false){this.addRowClass(d,"x-grid3-row-over")}},onRowOut:function(b,a){var d;if((d=this.findRowIndex(a))!==false&&!b.within(this.getRow(d),true)){this.removeRowClass(d,"x-grid3-row-over")}},handleWheel:function(a){a.stopPropagation()},onRowSelect:function(a){this.addRowClass(a,this.selectedRowClass)},onRowDeselect:function(a){this.removeRowClass(a,this.selectedRowClass)},onCellSelect:function(d,b){var a=this.getCell(d,b);if(a){this.fly(a).addClass("x-grid3-cell-selected")}},onCellDeselect:function(d,b){var a=this.getCell(d,b);if(a){this.fly(a).removeClass("x-grid3-cell-selected")}},onColumnSplitterMoved:function(d,b){this.userResized=true;var a=this.grid.colModel;a.setColumnWidth(d,b,true);if(this.forceFit){this.fitColumns(true,false,d);this.updateAllColumnWidths()}else{this.updateColumnWidth(d,b);this.syncHeaderScroll()}this.grid.fireEvent("columnresize",d,b)},handleHdMenuClick:function(d){var b=this.hdCtxIndex;var a=this.cm,e=this.ds;switch(d.itemId){case"asc":e.sort(a.getDataIndex(b),"ASC");break;case"desc":e.sort(a.getDataIndex(b),"DESC");break;default:b=a.getIndexById(d.itemId.substr(4));if(b!=-1){if(d.checked&&a.getColumnsBy(this.isHideableColumn,this).length<=1){this.onDenyColumnHide();return false}a.setHidden(b,d.checked)}}return true},isHideableColumn:function(a){return!a.hidden&&!a.fixed},beforeColMenuShow:function(){var a=this.cm,d=a.getColumnCount();this.colMenu.removeAll();for(var b=0;b<d;b++){if(a.config[b].fixed!==true&&a.config[b].hideable!==false){this.colMenu.add(new Ext.menu.CheckItem({itemId:"col-"+a.getColumnId(b),text:a.getColumnHeader(b),checked:!a.isHidden(b),hideOnClick:false,disabled:a.config[b].hideable===false}))}}},handleHdDown:function(j,g){if(Ext.fly(g).hasClass("x-grid3-hd-btn")){j.stopEvent();var h=this.findHeaderCell(g);Ext.fly(h).addClass("x-grid3-hd-menu-open");var d=this.getCellIndex(h);this.hdCtxIndex=d;var b=this.hmenu.items,a=this.cm;b.get("asc").setDisabled(!a.isSortable(d));b.get("desc").setDisabled(!a.isSortable(d));this.hmenu.on("hide",function(){Ext.fly(h).removeClass("x-grid3-hd-menu-open")},this,{single:true});this.hmenu.show(g,"tl-bl?")}},handleHdOver:function(g,a){var d=this.findHeaderCell(a);if(d&&!this.headersDisabled){this.activeHd=d;this.activeHdIndex=this.getCellIndex(d);var b=this.fly(d);this.activeHdRegion=b.getRegion();if(!this.cm.isMenuDisabled(this.activeHdIndex)){b.addClass("x-grid3-hd-over");this.activeHdBtn=b.child(".x-grid3-hd-btn");if(this.activeHdBtn){this.activeHdBtn.dom.style.height=(d.firstChild.offsetHeight-1)+"px"}}}},handleHdMove:function(j,g){if(this.activeHd&&!this.headersDisabled){var b=this.splitHandleWidth||5;var h=this.activeHdRegion;var a=j.getPageX();var d=this.activeHd.style;if(a-h.left<=b&&this.cm.isResizable(this.activeHdIndex-1)){d.cursor=Ext.isAir?"move":Ext.isWebKit?"e-resize":"col-resize"}else{if(h.right-a<=(!this.activeHdBtn?b:2)&&this.cm.isResizable(this.activeHdIndex)){d.cursor=Ext.isAir?"move":Ext.isWebKit?"w-resize":"col-resize"}else{d.cursor=""}}}},handleHdOut:function(d,a){var b=this.findHeaderCell(a);if(b&&(!Ext.isIE||!d.within(b,true))){this.activeHd=null;this.fly(b).removeClass("x-grid3-hd-over");b.style.cursor=""}},hasRows:function(){var a=this.mainBody.dom.firstChild;return a&&a.nodeType==1&&a.className!="x-grid-empty"},bind:function(a,b){this.initData(a,b)}});Ext.grid.GridView.SplitDragZone=function(a,b){this.grid=a;this.view=a.getView();this.marker=this.view.resizeMarker;this.proxy=this.view.resizeProxy;Ext.grid.GridView.SplitDragZone.superclass.constructor.call(this,b,"gridSplitters"+this.grid.getGridEl().id,{dragElId:Ext.id(this.proxy.dom),resizeFrame:false});this.scroll=false;this.hw=this.view.splitHandleWidth||5};Ext.extend(Ext.grid.GridView.SplitDragZone,Ext.dd.DDProxy,{b4StartDrag:function(a,g){this.view.headersDisabled=true;var e=this.view.mainWrap.getHeight();this.marker.setHeight(e);this.marker.show();this.marker.alignTo(this.view.getHeaderCell(this.cellIndex),"tl-tl",[-2,0]);this.proxy.setHeight(e);var b=this.cm.getColumnWidth(this.cellIndex);var d=Math.max(b-this.grid.minColumnWidth,0);this.resetConstraints();this.setXConstraint(d,1000);this.setYConstraint(0,0);this.minX=a-d;this.maxX=a+1000;this.startPos=a;Ext.dd.DDProxy.prototype.b4StartDrag.call(this,a,g)},handleMouseDown:function(a){var k=this.view.findHeaderCell(a.getTarget());if(k){var n=this.view.fly(k).getXY(),g=n[0],d=n[1];var l=a.getXY(),b=l[0];var j=k.offsetWidth,h=false;if((b-g)<=this.hw){h=-1}else{if((g+j)-b<=this.hw){h=0}}if(h!==false){this.cm=this.grid.colModel;var m=this.view.getCellIndex(k);if(h==-1){if(m+h<0){return}while(this.cm.isHidden(m+h)){--h;if(m+h<0){return}}}this.cellIndex=m+h;this.split=k.dom;if(this.cm.isResizable(this.cellIndex)&&!this.cm.isFixed(this.cellIndex)){Ext.grid.GridView.SplitDragZone.superclass.handleMouseDown.apply(this,arguments)}}else{if(this.view.columnDrag){this.view.columnDrag.callHandleMouseDown(a)}}}},endDrag:function(g){this.marker.hide();var a=this.view;var b=Math.max(this.minX,g.getPageX());var d=b-this.startPos;a.onColumnSplitterMoved(this.cellIndex,this.cm.getColumnWidth(this.cellIndex)+d);setTimeout(function(){a.headersDisabled=false},50)},autoOffset:function(){this.setDelta(0,0)}});Ext.grid.GroupingView=Ext.extend(Ext.grid.GridView,{hideGroupedColumn:false,showGroupName:true,startCollapsed:false,enableGrouping:true,enableGroupingMenu:true,enableNoGroups:true,emptyGroupText:"(None)",ignoreAdd:false,groupTextTpl:"{text}",gidSeed:1000,initTemplates:function(){Ext.grid.GroupingView.superclass.initTemplates.call(this);this.state={};var a=this.grid.getSelectionModel();a.on(a.selectRow?"beforerowselect":"beforecellselect",this.onBeforeRowSelect,this);if(!this.startGroup){this.startGroup=new Ext.XTemplate('<div id="{groupId}" class="x-grid-group {cls}">','<div id="{groupId}-hd" class="x-grid-group-hd" style="{style}"><div>',this.groupTextTpl,"</div></div>",'<div id="{groupId}-bd" class="x-grid-group-body">')}this.startGroup.compile();this.endGroup="</div></div>"},findGroup:function(a){return Ext.fly(a).up(".x-grid-group",this.mainBody.dom)},getGroups:function(){return this.hasRows()?this.mainBody.dom.childNodes:[]},onAdd:function(){if(this.enableGrouping&&!this.ignoreAdd){var a=this.getScrollState();this.refresh();this.restoreScroll(a)}else{if(!this.enableGrouping){Ext.grid.GroupingView.superclass.onAdd.apply(this,arguments)}}},onRemove:function(h,a,b,e){Ext.grid.GroupingView.superclass.onRemove.apply(this,arguments);var d=document.getElementById(a._groupId);if(d&&d.childNodes[1].childNodes.length<1){Ext.removeNode(d)}this.applyEmptyText()},refreshRow:function(a){if(this.ds.getCount()==1){this.refresh()}else{this.isUpdating=true;Ext.grid.GroupingView.superclass.refreshRow.apply(this,arguments);this.isUpdating=false}},beforeMenuShow:function(){var d=this.getGroupField();var b=this.hmenu.items.get("groupBy");if(b){b.setDisabled(this.cm.config[this.hdCtxIndex].groupable===false)}var a=this.hmenu.items.get("showGroups");if(a){a.setDisabled(!d&&this.cm.config[this.hdCtxIndex].groupable===false);a.setChecked(!!d,true)}},renderUI:function(){Ext.grid.GroupingView.superclass.renderUI.call(this);this.mainBody.on("mousedown",this.interceptMouse,this);if(this.enableGroupingMenu&&this.hmenu){this.hmenu.add("-",{itemId:"groupBy",text:this.groupByText,handler:this.onGroupByClick,scope:this,iconCls:"x-group-by-icon"});if(this.enableNoGroups){this.hmenu.add({itemId:"showGroups",text:this.showGroupsText,checked:true,checkHandler:this.onShowGroupsClick,scope:this})}this.hmenu.on("beforeshow",this.beforeMenuShow,this)}},onGroupByClick:function(){this.grid.store.groupBy(this.cm.getDataIndex(this.hdCtxIndex));this.beforeMenuShow()},onShowGroupsClick:function(a,b){if(b){this.onGroupByClick()}else{this.grid.store.clearGrouping()}},toggleGroup:function(d,b){this.grid.stopEditing(true);d=Ext.getDom(d);var a=Ext.fly(d);b=b!==undefined?b:a.hasClass("x-grid-group-collapsed");this.state[a.dom.id]=b;a[b?"removeClass":"addClass"]("x-grid-group-collapsed")},toggleAllGroups:function(d){var b=this.getGroups();for(var e=0,a=b.length;e<a;e++){this.toggleGroup(b[e],d)}},expandAllGroups:function(){this.toggleAllGroups(true)},collapseAllGroups:function(){this.toggleAllGroups(false)},interceptMouse:function(b){var a=b.getTarget(".x-grid-group-hd",this.mainBody);if(a){b.stopEvent();this.toggleGroup(a.parentNode)}},getGroup:function(a,e,j,k,b,h){var d=j?j(a,{},e,k,b,h):String(a);if(d===""){d=this.cm.config[b].emptyGroupText||this.emptyGroupText}return d},getGroupField:function(){return this.grid.store.getGroupState()},afterRender:function(){Ext.grid.GroupingView.superclass.afterRender.call(this);if(this.grid.deferRowRender){this.updateGroupWidths()}},renderRows:function(){var a=this.getGroupField();var e=!!a;if(this.hideGroupedColumn){var b=this.cm.findColumnIndex(a);if(!e&&this.lastGroupField!==undefined){this.mainBody.update("");this.cm.setHidden(this.cm.findColumnIndex(this.lastGroupField),false);delete this.lastGroupField}else{if(e&&this.lastGroupField===undefined){this.lastGroupField=a;this.cm.setHidden(b,true)}else{if(e&&this.lastGroupField!==undefined&&a!==this.lastGroupField){this.mainBody.update("");var d=this.cm.findColumnIndex(this.lastGroupField);this.cm.setHidden(d,false);this.lastGroupField=a;this.cm.setHidden(b,true)}}}}return Ext.grid.GroupingView.superclass.renderRows.apply(this,arguments)},doRender:function(e,k,u,a,t,x){if(k.length<1){return""}var E=this.getGroupField();var s=this.cm.findColumnIndex(E);this.enableGrouping=!!E;if(!this.enableGrouping||this.isUpdating){return Ext.grid.GroupingView.superclass.doRender.apply(this,arguments)}var l="width:"+this.getTotalWidth()+";";var w=this.grid.getGridEl().id;var j=this.cm.config[s];var b=j.groupRenderer||j.renderer;var y=this.showGroupName?(j.groupName||j.header)+": ":"";var D=[],o,z,A,q;for(z=0,A=k.length;z<A;z++){var n=a+z;var p=k[z],h=p.data[E],B=this.getGroup(h,p,b,n,s,u);if(!o||o.group!=B){q=w+"-gp-"+E+"-"+Ext.util.Format.htmlEncode(B);var d=typeof this.state[q]!=="undefined"?!this.state[q]:this.startCollapsed;var m=d?"x-grid-group-collapsed":"";o={group:B,gvalue:h,text:y+B,groupId:q,startRow:n,rs:[p],cls:m,style:l};D.push(o)}else{o.rs.push(p)}p._groupId=q}var C=[];for(z=0,A=D.length;z<A;z++){var B=D[z];this.doGroupStart(C,B,e,u,t);C[C.length]=Ext.grid.GroupingView.superclass.doRender.call(this,e,B.rs,u,B.startRow,t,x);this.doGroupEnd(C,B,e,u,t)}return C.join("")},getGroupId:function(h){var e=this.grid.getGridEl().id;var d=this.getGroupField();var g=this.cm.findColumnIndex(d);var b=this.cm.config[g];var j=b.groupRenderer||b.renderer;var a=this.getGroup(h,{data:{}},j,0,g,this.ds);return e+"-gp-"+d+"-"+Ext.util.Format.htmlEncode(h)},doGroupStart:function(a,e,b,h,d){a[a.length]=this.startGroup.apply(e)},doGroupEnd:function(a,e,b,h,d){a[a.length]=this.endGroup},getRows:function(){if(!this.enableGrouping){return Ext.grid.GroupingView.superclass.getRows.call(this)}var l=[];var k,d=this.getGroups();for(var h=0,a=d.length;h<a;h++){k=d[h].childNodes[1].childNodes;for(var e=0,b=k.length;e<b;e++){l[l.length]=k[e]}}return l},updateGroupWidths:function(){if(!this.enableGrouping||!this.hasRows()){return}var d=Math.max(this.cm.getTotalWidth(),this.el.dom.offsetWidth-this.scrollOffset)+"px";var b=this.getGroups();for(var e=0,a=b.length;e<a;e++){b[e].firstChild.style.width=d}},onColumnWidthUpdated:function(d,a,b){Ext.grid.GroupingView.superclass.onColumnWidthUpdated.call(this,d,a,b);this.updateGroupWidths()},onAllColumnWidthsUpdated:function(a,b){Ext.grid.GroupingView.superclass.onAllColumnWidthsUpdated.call(this,a,b);this.updateGroupWidths()},onColumnHiddenUpdated:function(b,d,a){Ext.grid.GroupingView.superclass.onColumnHiddenUpdated.call(this,b,d,a);this.updateGroupWidths()},onLayout:function(){this.updateGroupWidths()},onBeforeRowSelect:function(e,d){if(!this.enableGrouping){return}var b=this.getRow(d);if(b&&!b.offsetParent){var a=this.findGroup(b);this.toggleGroup(a,true)}},groupByText:"Group By This Field",showGroupsText:"Show in Groups"});Ext.grid.GroupingView.GROUP_ID=1000;Ext.grid.HeaderDragZone=function(a,d,b){this.grid=a;this.view=a.getView();this.ddGroup="gridHeader"+this.grid.getGridEl().id;Ext.grid.HeaderDragZone.superclass.constructor.call(this,d);if(b){this.setHandleElId(Ext.id(d));this.setOuterHandleElId(Ext.id(b))}this.scroll=false};Ext.extend(Ext.grid.HeaderDragZone,Ext.dd.DragZone,{maxDragWidth:120,getDragData:function(d){var a=Ext.lib.Event.getTarget(d);var b=this.view.findHeaderCell(a);if(b){return{ddel:b.firstChild,header:b}}return false},onInitDrag:function(a){this.view.headersDisabled=true;var b=this.dragData.ddel.cloneNode(true);b.id=Ext.id();b.style.width=Math.min(this.dragData.header.offsetWidth,this.maxDragWidth)+"px";this.proxy.update(b);return true},afterValidDrop:function(){var a=this.view;setTimeout(function(){a.headersDisabled=false},50)},afterInvalidDrop:function(){var a=this.view;setTimeout(function(){a.headersDisabled=false},50)}});Ext.grid.HeaderDropZone=function(a,d,b){this.grid=a;this.view=a.getView();this.proxyTop=Ext.DomHelper.append(document.body,{cls:"col-move-top",html:"&#160;"},true);this.proxyBottom=Ext.DomHelper.append(document.body,{cls:"col-move-bottom",html:"&#160;"},true);this.proxyTop.hide=this.proxyBottom.hide=function(){this.setLeftTop(-100,-100);this.setStyle("visibility","hidden")};this.ddGroup="gridHeader"+this.grid.getGridEl().id;Ext.grid.HeaderDropZone.superclass.constructor.call(this,a.getGridEl().dom)};Ext.extend(Ext.grid.HeaderDropZone,Ext.dd.DropZone,{proxyOffsets:[-4,-9],fly:Ext.Element.fly,getTargetFromEvent:function(d){var a=Ext.lib.Event.getTarget(d);var b=this.view.findCellIndex(a);if(b!==false){return this.view.getHeaderCell(b)}},nextVisible:function(d){var b=this.view,a=this.grid.colModel;d=d.nextSibling;while(d){if(!a.isHidden(b.getCellIndex(d))){return d}d=d.nextSibling}return null},prevVisible:function(d){var b=this.view,a=this.grid.colModel;d=d.prevSibling;while(d){if(!a.isHidden(b.getCellIndex(d))){return d}d=d.prevSibling}return null},positionIndicator:function(g,m,l){var a=Ext.lib.Event.getPageX(l);var j=Ext.lib.Dom.getRegion(m.firstChild);var d,k,b=j.top+this.proxyOffsets[1];if((j.right-a)<=(j.right-j.left)/2){d=j.right+this.view.borderWidth;k="after"}else{d=j.left;k="before"}if(this.grid.colModel.isFixed(this.view.getCellIndex(m))){return false}d+=this.proxyOffsets[0];this.proxyTop.setLeftTop(d,b);this.proxyTop.show();if(!this.bottomOffset){this.bottomOffset=this.view.mainHd.getHeight()}this.proxyBottom.setLeftTop(d,b+this.proxyTop.dom.offsetHeight+this.bottomOffset);this.proxyBottom.show();return k},onNodeEnter:function(g,a,d,b){if(b.header!=g){this.positionIndicator(b.header,g,d)}},onNodeOver:function(h,b,g,d){var a=false;if(d.header!=h){a=this.positionIndicator(d.header,h,g)}if(!a){this.proxyTop.hide();this.proxyBottom.hide()}return a?this.dropAllowed:this.dropNotAllowed},onNodeOut:function(g,a,d,b){this.proxyTop.hide();this.proxyBottom.hide()},onNodeDrop:function(b,p,j,d){var g=d.header;if(g!=b){var m=this.grid.colModel;var l=Ext.lib.Event.getPageX(j);var a=Ext.lib.Dom.getRegion(b.firstChild);var q=(a.right-l)<=((a.right-a.left)/2)?"after":"before";var k=this.view.getCellIndex(g);var o=this.view.getCellIndex(b);if(q=="after"){o++}if(k<o){o--}m.moveColumn(k,o);this.grid.fireEvent("columnmove",k,o);return true}return false}});Ext.grid.GridView.ColumnDragZone=function(a,b){Ext.grid.GridView.ColumnDragZone.superclass.constructor.call(this,a,b,null);this.proxy.el.addClass("x-grid3-col-dd")};Ext.extend(Ext.grid.GridView.ColumnDragZone,Ext.grid.HeaderDragZone,{handleMouseDown:function(a){},callHandleMouseDown:function(a){Ext.grid.GridView.ColumnDragZone.superclass.handleMouseDown.call(this,a)}});Ext.grid.SplitDragZone=function(a,d,b){this.grid=a;this.view=a.getView();this.proxy=this.view.resizeProxy;Ext.grid.SplitDragZone.superclass.constructor.call(this,d,"gridSplitters"+this.grid.getGridEl().id,{dragElId:Ext.id(this.proxy.dom),resizeFrame:false});this.setHandleElId(Ext.id(d));this.setOuterHandleElId(Ext.id(b));this.scroll=false};Ext.extend(Ext.grid.SplitDragZone,Ext.dd.DDProxy,{fly:Ext.Element.fly,b4StartDrag:function(a,e){this.view.headersDisabled=true;this.proxy.setHeight(this.view.mainWrap.getHeight());var b=this.cm.getColumnWidth(this.cellIndex);var d=Math.max(b-this.grid.minColumnWidth,0);this.resetConstraints();this.setXConstraint(d,1000);this.setYConstraint(0,0);this.minX=a-d;this.maxX=a+1000;this.startPos=a;Ext.dd.DDProxy.prototype.b4StartDrag.call(this,a,e)},handleMouseDown:function(d){var b=Ext.EventObject.setEvent(d);var a=this.fly(b.getTarget());if(a.hasClass("x-grid-split")){this.cellIndex=this.view.getCellIndex(a.dom);this.split=a.dom;this.cm=this.grid.colModel;if(this.cm.isResizable(this.cellIndex)&&!this.cm.isFixed(this.cellIndex)){Ext.grid.SplitDragZone.superclass.handleMouseDown.apply(this,arguments)}}},endDrag:function(d){this.view.headersDisabled=false;var a=Math.max(this.minX,Ext.lib.Event.getPageX(d));var b=a-this.startPos;this.view.onColumnSplitterMoved(this.cellIndex,this.cm.getColumnWidth(this.cellIndex)+b)},autoOffset:function(){this.setDelta(0,0)}});Ext.grid.GridDragZone=function(b,a){this.view=b.getView();Ext.grid.GridDragZone.superclass.constructor.call(this,this.view.mainBody.dom,a);this.scroll=false;this.grid=b;this.ddel=document.createElement("div");this.ddel.className="x-grid-dd-wrap"};Ext.extend(Ext.grid.GridDragZone,Ext.dd.DragZone,{ddGroup:"GridDD",getDragData:function(b){var a=Ext.lib.Event.getTarget(b);var g=this.view.findRowIndex(a);if(g!==false){var d=this.grid.selModel;if(!d.isSelected(g)||b.hasModifier()){d.handleMouseDown(this.grid,g,b)}return{grid:this.grid,ddel:this.ddel,rowIndex:g,selections:d.getSelections()}}return false},onInitDrag:function(b){var a=this.dragData;this.ddel.innerHTML=this.grid.getDragDropText();this.proxy.update(this.ddel)},afterRepair:function(){this.dragging=false},getRepairXY:function(b,a){return false},onEndDrag:function(a,b){},onValidDrop:function(a,b,d){this.hideProxy()},beforeInvalidDrop:function(a,b){}});Ext.grid.ColumnModel=function(a){if(a.columns){Ext.apply(this,a);this.setConfig(a.columns,true)}else{this.setConfig(a,true)}this.addEvents("widthchange","headerchange","hiddenchange","columnmoved","configchange");Ext.grid.ColumnModel.superclass.constructor.call(this)};Ext.extend(Ext.grid.ColumnModel,Ext.util.Observable,{defaultWidth:100,defaultSortable:false,getColumnId:function(a){return this.config[a].id},getColumnAt:function(a){return this.config[a]},setConfig:function(e,d){if(!d){delete this.totalWidth;for(var g=0,a=this.config.length;g<a;g++){var h=this.config[g];if(h.editor){h.editor.destroy()}}}this.defaults=Ext.apply({width:this.defaultWidth,sortable:this.defaultSortable},this.defaults);this.config=e;this.lookup={};for(var g=0,a=e.length;g<a;g++){var h=Ext.applyIf(e[g],this.defaults);if(!h.isColumn){var b=Ext.grid.Column.types[h.xtype||"gridcolumn"];h=new b(h);e[g]=h}this.lookup[h.id]=h}if(!d){this.fireEvent("configchange",this)}},getColumnById:function(a){return this.lookup[a]},getIndexById:function(d){for(var b=0,a=this.config.length;b<a;b++){if(this.config[b].id==d){return b}}return-1},moveColumn:function(d,a){var b=this.config[d];this.config.splice(d,1);this.config.splice(a,0,b);this.dataMap=null;this.fireEvent("columnmoved",this,d,a)},getColumnCount:function(d){if(d===true){var e=0;for(var b=0,a=this.config.length;b<a;b++){if(!this.isHidden(b)){e++}}return e}return this.config.length},getColumnsBy:function(e,d){var g=[];for(var b=0,a=this.config.length;b<a;b++){var h=this.config[b];if(e.call(d||this,h,b)===true){g[g.length]=h}}return g},isSortable:function(a){return this.config[a].sortable},isMenuDisabled:function(a){return!!this.config[a].menuDisabled},getRenderer:function(a){if(!this.config[a].renderer){return Ext.grid.ColumnModel.defaultRenderer}return this.config[a].renderer},setRenderer:function(a,b){this.config[a].renderer=b},getColumnWidth:function(a){return this.config[a].width},setColumnWidth:function(b,d,a){this.config[b].width=d;this.totalWidth=null;if(!a){this.fireEvent("widthchange",this,b,d)}},getTotalWidth:function(b){if(!this.totalWidth){this.totalWidth=0;for(var d=0,a=this.config.length;d<a;d++){if(b||!this.isHidden(d)){this.totalWidth+=this.getColumnWidth(d)}}}return this.totalWidth},getColumnHeader:function(a){return this.config[a].header},setColumnHeader:function(a,b){this.config[a].header=b;this.fireEvent("headerchange",this,a,b)},getColumnTooltip:function(a){return this.config[a].tooltip},setColumnTooltip:function(a,b){this.config[a].tooltip=b},getDataIndex:function(a){return this.config[a].dataIndex},setDataIndex:function(a,b){this.config[a].dataIndex=b},findColumnIndex:function(d){var e=this.config;for(var b=0,a=e.length;b<a;b++){if(e[b].dataIndex==d){return b}}return-1},isCellEditable:function(a,b){return(this.config[a].editable||(typeof this.config[a].editable=="undefined"&&this.config[a].editor))?true:false},getCellEditor:function(a,b){return this.config[a].getCellEditor(b)},setEditable:function(a,b){this.config[a].editable=b},isHidden:function(a){return this.config[a].hidden},isFixed:function(a){return this.config[a].fixed},isResizable:function(a){return a>=0&&this.config[a].resizable!==false&&this.config[a].fixed!==true},setHidden:function(a,b){var d=this.config[a];if(d.hidden!==b){d.hidden=b;this.totalWidth=null;this.fireEvent("hiddenchange",this,a,b)}},setEditor:function(a,b){Ext.destroy(this.config[a].editor);this.config[a].editor=b},destroy:function(){var d=this.config;for(var b=0,d=this.config,a=d.length;b<a;b++){Ext.destroy(d[b].editor)}this.purgeListeners()}});Ext.grid.ColumnModel.defaultRenderer=function(a){if(typeof a=="string"&&a.length<1){return"&#160;"}return a};Ext.grid.AbstractSelectionModel=function(){this.locked=false;Ext.grid.AbstractSelectionModel.superclass.constructor.call(this)};Ext.extend(Ext.grid.AbstractSelectionModel,Ext.util.Observable,{init:function(a){this.grid=a;this.initEvents()},lock:function(){this.locked=true},unlock:function(){this.locked=false},isLocked:function(){return this.locked}});Ext.grid.RowSelectionModel=function(a){Ext.apply(this,a);this.selections=new Ext.util.MixedCollection(false,function(b){return b.id});this.last=false;this.lastActive=false;this.addEvents("selectionchange","beforerowselect","rowselect","rowdeselect");Ext.grid.RowSelectionModel.superclass.constructor.call(this)};Ext.extend(Ext.grid.RowSelectionModel,Ext.grid.AbstractSelectionModel,{singleSelect:false,initEvents:function(){if(!this.grid.enableDragDrop&&!this.grid.enableDrag){this.grid.on("rowmousedown",this.handleMouseDown,this)}else{this.grid.on("rowclick",function(b,g,d){if(d.button===0&&!d.shiftKey&&!d.ctrlKey){this.selectRow(g,false);b.view.focusRow(g)}},this)}this.rowNav=new Ext.KeyNav(this.grid.getGridEl(),{up:function(d){if(!d.shiftKey||this.singleSelect){this.selectPrevious(false)}else{if(this.last!==false&&this.lastActive!==false){var b=this.last;this.selectRange(this.last,this.lastActive-1);this.grid.getView().focusRow(this.lastActive);if(b!==false){this.last=b}}else{this.selectFirstRow()}}},down:function(d){if(!d.shiftKey||this.singleSelect){this.selectNext(false)}else{if(this.last!==false&&this.lastActive!==false){var b=this.last;this.selectRange(this.last,this.lastActive+1);this.grid.getView().focusRow(this.lastActive);if(b!==false){this.last=b}}else{this.selectFirstRow()}}},scope:this});var a=this.grid.view;a.on("refresh",this.onRefresh,this);a.on("rowupdated",this.onRowUpdated,this);a.on("rowremoved",this.onRemove,this)},onRefresh:function(){var h=this.grid.store,b;var e=this.getSelections();this.clearSelections(true);for(var d=0,a=e.length;d<a;d++){var g=e[d];if((b=h.indexOfId(g.id))!=-1){this.selectRow(b,true)}}if(e.length!=this.selections.getCount()){this.fireEvent("selectionchange",this)}},onRemove:function(a,b,d){if(this.selections.remove(d)!==false){this.fireEvent("selectionchange",this)}},onRowUpdated:function(a,b,d){if(this.isSelected(d)){a.onRowSelect(b)}},selectRecords:function(b,g){if(!g){this.clearSelections()}var e=this.grid.store;for(var d=0,a=b.length;d<a;d++){this.selectRow(e.indexOf(b[d]),true)}},getCount:function(){return this.selections.length},selectFirstRow:function(){this.selectRow(0)},selectLastRow:function(a){this.selectRow(this.grid.store.getCount()-1,a)},selectNext:function(a){if(this.hasNext()){this.selectRow(this.last+1,a);this.grid.getView().focusRow(this.last);return true}return false},selectPrevious:function(a){if(this.hasPrevious()){this.selectRow(this.last-1,a);this.grid.getView().focusRow(this.last);return true}return false},hasNext:function(){return this.last!==false&&(this.last+1)<this.grid.store.getCount()},hasPrevious:function(){return!!this.last},getSelections:function(){return[].concat(this.selections.items)},getSelected:function(){return this.selections.itemAt(0)},each:function(g,e){var d=this.getSelections();for(var b=0,a=d.length;b<a;b++){if(g.call(e||this,d[b],b)===false){return false}}return true},clearSelections:function(a){if(this.isLocked()){return}if(a!==true){var d=this.grid.store;var b=this.selections;b.each(function(e){this.deselectRow(d.indexOfId(e.id))},this);b.clear()}else{this.selections.clear()}this.last=false},selectAll:function(){if(this.isLocked()){return}this.selections.clear();for(var b=0,a=this.grid.store.getCount();b<a;b++){this.selectRow(b,true)}},hasSelection:function(){return this.selections.length>0},isSelected:function(a){var b=typeof a=="number"?this.grid.store.getAt(a):a;return(b&&this.selections.key(b.id)?true:false)},isIdSelected:function(a){return(this.selections.key(a)?true:false)},handleMouseDown:function(h,k,j){if(j.button!==0||this.isLocked()){return}var a=this.grid.getView();if(j.shiftKey&&!this.singleSelect&&this.last!==false){var d=this.last;this.selectRange(d,k,j.ctrlKey);this.last=d;a.focusRow(k)}else{var b=this.isSelected(k);if(j.ctrlKey&&b){this.deselectRow(k)}else{if(!b||this.getCount()>1){this.selectRow(k,j.ctrlKey||j.shiftKey);a.focusRow(k)}}}},selectRows:function(d,e){if(!e){this.clearSelections()}for(var b=0,a=d.length;b<a;b++){this.selectRow(d[b],true)}},selectRange:function(b,a,e){if(this.isLocked()){return}if(!e){this.clearSelections()}if(b<=a){for(var d=b;d<=a;d++){this.selectRow(d,true)}}else{for(var d=b;d>=a;d--){this.selectRow(d,true)}}},deselectRange:function(d,b,a){if(this.isLocked()){return}for(var e=d;e<=b;e++){this.deselectRow(e,a)}},selectRow:function(b,e,a){if(this.isLocked()||(b<0||b>=this.grid.store.getCount())||this.isSelected(b)){return}var d=this.grid.store.getAt(b);if(d&&this.fireEvent("beforerowselect",this,b,e,d)!==false){if(!e||this.singleSelect){this.clearSelections()}this.selections.add(d);this.last=this.lastActive=b;if(!a){this.grid.getView().onRowSelect(b)}this.fireEvent("rowselect",this,b,d);this.fireEvent("selectionchange",this)}},deselectRow:function(b,a){if(this.isLocked()){return}if(this.last==b){this.last=false}if(this.lastActive==b){this.lastActive=false}var d=this.grid.store.getAt(b);if(d){this.selections.remove(d);if(!a){this.grid.getView().onRowDeselect(b)}this.fireEvent("rowdeselect",this,b,d);this.fireEvent("selectionchange",this)}},restoreLast:function(){if(this._last){this.last=this._last}},acceptsNav:function(d,b,a){return!a.isHidden(b)&&a.isCellEditable(b,d)},onEditorKey:function(l,j){var d=j.getKey(),m,h=this.grid,b=h.activeEditor;var a=j.shiftKey;if(d==j.TAB){j.stopEvent();b.completeEdit();if(a){m=h.walkCells(b.row,b.col-1,-1,this.acceptsNav,this)}else{m=h.walkCells(b.row,b.col+1,1,this.acceptsNav,this)}}else{if(d==j.ENTER){j.stopEvent();b.completeEdit();if(this.moveEditorOnEnter!==false){if(a){m=h.walkCells(b.row-1,b.col,-1,this.acceptsNav,this)}else{m=h.walkCells(b.row+1,b.col,1,this.acceptsNav,this)}}}else{if(d==j.ESC){b.cancelEdit()}}}if(m){h.startEditing(m[0],m[1])}}});Ext.grid.CellSelectionModel=function(a){Ext.apply(this,a);this.selection=null;this.addEvents("beforecellselect","cellselect","selectionchange");Ext.grid.CellSelectionModel.superclass.constructor.call(this)};Ext.extend(Ext.grid.CellSelectionModel,Ext.grid.AbstractSelectionModel,{initEvents:function(){this.grid.on("cellmousedown",this.handleMouseDown,this);this.grid.getGridEl().on(Ext.isIE||Ext.isSafari3||Ext.isChrome?"keydown":"keypress",this.handleKeyDown,this);var a=this.grid.view;a.on("refresh",this.onViewChange,this);a.on("rowupdated",this.onRowUpdated,this);a.on("beforerowremoved",this.clearSelections,this);a.on("beforerowsinserted",this.clearSelections,this);if(this.grid.isEditor){this.grid.on("beforeedit",this.beforeEdit,this)}},beforeEdit:function(a){this.select(a.row,a.column,false,true,a.record)},onRowUpdated:function(a,b,d){if(this.selection&&this.selection.record==d){a.onCellSelect(b,this.selection.cell[1])}},onViewChange:function(){this.clearSelections(true)},getSelectedCell:function(){return this.selection?this.selection.cell:null},clearSelections:function(b){var a=this.selection;if(a){if(b!==true){this.grid.view.onCellDeselect(a.cell[0],a.cell[1])}this.selection=null;this.fireEvent("selectionchange",this,null)}},hasSelection:function(){return this.selection?true:false},handleMouseDown:function(b,h,a,d){if(d.button!==0||this.isLocked()){return}this.select(h,a)},select:function(h,d,b,g,e){if(this.fireEvent("beforecellselect",this,h,d)!==false){this.clearSelections();e=e||this.grid.store.getAt(h);this.selection={record:e,cell:[h,d]};if(!b){var a=this.grid.getView();a.onCellSelect(h,d);if(g!==true){a.focusCell(h,d)}}this.fireEvent("cellselect",this,h,d);this.fireEvent("selectionchange",this,this.selection)}},isSelectable:function(d,b,a){return!a.isHidden(b)},handleKeyDown:function(l){if(!l.isNavKeyPress()){return}var j=this.grid,p=this.selection;if(!p){l.stopEvent();var o=j.walkCells(0,0,1,this.isSelectable,this);if(o){this.select(o[0],o[1])}return}var b=this;var n=function(k,e,g){return j.walkCells(k,e,g,b.isSelectable,b)};var d=l.getKey(),a=p.cell[0],m=p.cell[1];var h;switch(d){case l.TAB:if(l.shiftKey){h=n(a,m-1,-1)}else{h=n(a,m+1,1)}break;case l.DOWN:h=n(a+1,m,1);break;case l.UP:h=n(a-1,m,-1);break;case l.RIGHT:h=n(a,m+1,1);break;case l.LEFT:h=n(a,m-1,-1);break;case l.ENTER:if(j.isEditor&&!j.editing){j.startEditing(a,m);l.stopEvent();return}break}if(h){this.select(h[0],h[1]);l.stopEvent()}},acceptsNav:function(d,b,a){return!a.isHidden(b)&&a.isCellEditable(b,d)},onEditorKey:function(j,h){var b=h.getKey(),l,d=this.grid,a=d.activeEditor;if(b==h.TAB){if(h.shiftKey){l=d.walkCells(a.row,a.col-1,-1,this.acceptsNav,this)}else{l=d.walkCells(a.row,a.col+1,1,this.acceptsNav,this)}h.stopEvent()}else{if(b==h.ENTER){a.completeEdit();h.stopEvent()}else{if(b==h.ESC){h.stopEvent();a.cancelEdit()}}}if(l){d.startEditing(l[0],l[1])}}});Ext.grid.EditorGridPanel=Ext.extend(Ext.grid.GridPanel,{clicksToEdit:2,forceValidation:false,isEditor:true,detectEdit:false,autoEncode:false,trackMouseOver:false,initComponent:function(){Ext.grid.EditorGridPanel.superclass.initComponent.call(this);if(!this.selModel){this.selModel=new Ext.grid.CellSelectionModel()}this.activeEditor=null;this.addEvents("beforeedit","afteredit","validateedit")},initEvents:function(){Ext.grid.EditorGridPanel.superclass.initEvents.call(this);this.on("bodyscroll",this.stopEditing,this,[true]);this.on("columnresize",this.stopEditing,this,[true]);if(this.clicksToEdit==1){this.on("cellclick",this.onCellDblClick,this)}else{if(this.clicksToEdit=="auto"&&this.view.mainBody){this.view.mainBody.on("mousedown",this.onAutoEditClick,this)}this.on("celldblclick",this.onCellDblClick,this)}},onCellDblClick:function(b,d,a){this.startEditing(d,a)},onAutoEditClick:function(d,b){if(d.button!==0){return}var h=this.view.findRowIndex(b);var a=this.view.findCellIndex(b);if(h!==false&&a!==false){this.stopEditing();if(this.selModel.getSelectedCell){var g=this.selModel.getSelectedCell();if(g&&g.cell[0]===h&&g.cell[1]===a){this.startEditing(h,a)}}else{if(this.selModel.isSelected(h)){this.startEditing(h,a)}}}},onEditComplete:function(b,g,a){this.editing=false;this.activeEditor=null;b.un("specialkey",this.selModel.onEditorKey,this.selModel);var d=b.record;var j=this.colModel.getDataIndex(b.col);g=this.postEditValue(g,a,d,j);if(this.forceValidation===true||String(g)!==String(a)){var h={grid:this,record:d,field:j,originalValue:a,value:g,row:b.row,column:b.col,cancel:false};if(this.fireEvent("validateedit",h)!==false&&!h.cancel&&String(g)!==String(a)){d.set(j,h.value);delete h.cancel;this.fireEvent("afteredit",h)}}this.view.focusCell(b.row,b.col)},startEditing:function(j,b){this.stopEditing();if(this.colModel.isCellEditable(b,j)){this.view.ensureVisible(j,b,true);var d=this.store.getAt(j);var h=this.colModel.getDataIndex(b);var g={grid:this,record:d,field:h,value:d.data[h],row:j,column:b,cancel:false};if(this.fireEvent("beforeedit",g)!==false&&!g.cancel){this.editing=true;var a=this.colModel.getCellEditor(b,j);if(!a){return}if(!a.rendered){a.render(this.view.getEditorParent(a))}(function(){a.row=j;a.col=b;a.record=d;a.on("complete",this.onEditComplete,this,{single:true});a.on("specialkey",this.selModel.onEditorKey,this.selModel);this.activeEditor=a;var e=this.preEditValue(d,h);a.startEdit(this.view.getCell(j,b).firstChild,e===undefined?"":e)}).defer(50,this)}}},preEditValue:function(a,d){var b=a.data[d];return this.autoEncode&&typeof b=="string"?Ext.util.Format.htmlDecode(b):b},postEditValue:function(d,a,b,e){return this.autoEncode&&typeof d=="string"?Ext.util.Format.htmlEncode(d):d},stopEditing:function(a){if(this.activeEditor){this.activeEditor[a===true?"cancelEdit":"completeEdit"]()}this.activeEditor=null}});Ext.reg("editorgrid",Ext.grid.EditorGridPanel);Ext.grid.GridEditor=function(b,a){Ext.grid.GridEditor.superclass.constructor.call(this,b,a);b.monitorTab=false};Ext.extend(Ext.grid.GridEditor,Ext.Editor,{alignment:"tl-tl",autoSize:"width",hideEl:false,cls:"x-small-editor x-grid-editor",shim:false,shadow:false});Ext.grid.PropertyRecord=Ext.data.Record.create([{name:"name",type:"string"},"value"]);Ext.grid.PropertyStore=function(a,b){this.grid=a;this.store=new Ext.data.Store({recordType:Ext.grid.PropertyRecord});this.store.on("update",this.onUpdate,this);if(b){this.setSource(b)}Ext.grid.PropertyStore.superclass.constructor.call(this)};Ext.extend(Ext.grid.PropertyStore,Ext.util.Observable,{setSource:function(d){this.source=d;this.store.removeAll();var b=[];for(var a in d){if(this.isEditableValue(d[a])){b.push(new Ext.grid.PropertyRecord({name:a,value:d[a]},a))}}this.store.loadRecords({records:b},{},true)},onUpdate:function(g,a,e){if(e==Ext.data.Record.EDIT){var b=a.data.value;var d=a.modified.value;if(this.grid.fireEvent("beforepropertychange",this.source,a.id,b,d)!==false){this.source[a.id]=b;a.commit();this.grid.fireEvent("propertychange",this.source,a.id,b,d)}else{a.reject()}}},getProperty:function(a){return this.store.getAt(a)},isEditableValue:function(a){if(Ext.isDate(a)){return true}else{if(typeof a=="object"||typeof a=="function"){return false}}return true},setValue:function(b,a){this.source[b]=a;this.store.getById(b).set("value",a)},getSource:function(){return this.source}});Ext.grid.PropertyColumnModel=function(d,b){this.grid=d;var e=Ext.grid;e.PropertyColumnModel.superclass.constructor.call(this,[{header:this.nameText,width:50,sortable:true,dataIndex:"name",id:"name",menuDisabled:true},{header:this.valueText,width:50,resizable:false,dataIndex:"value",id:"value",menuDisabled:true}]);this.store=b;this.bselect=Ext.DomHelper.append(document.body,{tag:"select",cls:"x-grid-editor x-hide-display",children:[{tag:"option",value:"true",html:"true"},{tag:"option",value:"false",html:"false"}]});var h=Ext.form;var a=new h.Field({el:this.bselect,bselect:this.bselect,autoShow:true,getValue:function(){return this.bselect.value=="true"}});this.editors={date:new e.GridEditor(new h.DateField({selectOnFocus:true})),string:new e.GridEditor(new h.TextField({selectOnFocus:true})),number:new e.GridEditor(new h.NumberField({selectOnFocus:true,style:"text-align:left;"})),"boolean":new e.GridEditor(a)};this.renderCellDelegate=this.renderCell.createDelegate(this);this.renderPropDelegate=this.renderProp.createDelegate(this)};Ext.extend(Ext.grid.PropertyColumnModel,Ext.grid.ColumnModel,{nameText:"Name",valueText:"Value",dateFormat:"m/j/Y",renderDate:function(a){return a.dateFormat(this.dateFormat)},renderBool:function(a){return a?"true":"false"},isCellEditable:function(a,b){return a==1},getRenderer:function(a){return a==1?this.renderCellDelegate:this.renderPropDelegate},renderProp:function(a){return this.getPropertyName(a)},renderCell:function(a){var b=a;if(Ext.isDate(a)){b=this.renderDate(a)}else{if(typeof a=="boolean"){b=this.renderBool(a)}}return Ext.util.Format.htmlEncode(b)},getPropertyName:function(b){var a=this.grid.propertyNames;return a&&a[b]?a[b]:b},getCellEditor:function(a,g){var b=this.store.getProperty(g);var e=b.data.name,d=b.data.value;if(this.grid.customEditors[e]){return this.grid.customEditors[e]}if(Ext.isDate(d)){return this.editors.date}else{if(typeof d=="number"){return this.editors.number}else{if(typeof d=="boolean"){return this.editors["boolean"]}else{return this.editors.string}}}},destroy:function(){Ext.grid.PropertyColumnModel.superclass.destroy.call(this);for(var a in this.editors){Ext.destroy(a)}}});Ext.grid.PropertyGrid=Ext.extend(Ext.grid.EditorGridPanel,{enableColumnMove:false,stripeRows:false,trackMouseOver:false,clicksToEdit:1,enableHdMenu:false,viewConfig:{forceFit:true},initComponent:function(){this.customEditors=this.customEditors||{};this.lastEditRow=null;var b=new Ext.grid.PropertyStore(this);this.propStore=b;var a=new Ext.grid.PropertyColumnModel(this,b);b.store.sort("name","ASC");this.addEvents("beforepropertychange","propertychange");this.cm=a;this.ds=b.store;Ext.grid.PropertyGrid.superclass.initComponent.call(this);this.mon(this.selModel,"beforecellselect",function(g,e,d){if(d===0){this.startEditing.defer(200,this,[e,1]);return false}},this)},onRender:function(){Ext.grid.PropertyGrid.superclass.onRender.apply(this,arguments);this.getGridEl().addClass("x-props-grid")},afterRender:function(){Ext.grid.PropertyGrid.superclass.afterRender.apply(this,arguments);if(this.source){this.setSource(this.source)}},setSource:function(a){this.propStore.setSource(a)},getSource:function(){return this.propStore.getSource()}});Ext.reg("propertygrid",Ext.grid.PropertyGrid);Ext.grid.Column=function(a){Ext.apply(this,a);if(typeof this.renderer=="string"){this.renderer=Ext.util.Format[this.renderer]}else{if(typeof this.renderer=="object"){this.scope=this.renderer.scope;this.renderer=this.renderer.fn}}this.renderer=this.renderer.createDelegate(this.scope||a);if(typeof this.id=="undefined"){this.id=++Ext.grid.Column.AUTO_ID}if(this.editor){if(this.editor.xtype&&!this.editor.events){this.editor=Ext.create(this.editor,"textfield")}}};Ext.grid.Column.AUTO_ID=0;Ext.grid.Column.prototype={isColumn:true,renderer:function(a){if(typeof a=="string"&&a.length<1){return"&#160;"}return a},getEditor:function(a){return this.editable!==false?this.editor:null},getCellEditor:function(b){var a=this.getEditor(b);if(a){if(!a.startEdit){if(!a.gridEditor){a.gridEditor=new Ext.grid.GridEditor(a)}return a.gridEditor}else{if(a.startEdit){return a}}}return null}};Ext.grid.BooleanColumn=Ext.extend(Ext.grid.Column,{trueText:"true",falseText:"false",undefinedText:"&#160;",constructor:function(a){this.supr().constructor.apply(this,arguments);var d=this.trueText,e=this.falseText,b=this.undefinedText;this.renderer=function(g){if(g===undefined){return b}if(!g||g==="false"){return e}return d}}});Ext.grid.NumberColumn=Ext.extend(Ext.grid.Column,{format:"0,000.00",constructor:function(a){this.supr().constructor.apply(this,arguments);this.renderer=Ext.util.Format.numberRenderer(this.format)}});Ext.grid.DateColumn=Ext.extend(Ext.grid.Column,{format:"m/d/Y",constructor:function(a){this.supr().constructor.apply(this,arguments);this.renderer=Ext.util.Format.dateRenderer(this.format)}});Ext.grid.TemplateColumn=Ext.extend(Ext.grid.Column,{constructor:function(a){this.supr().constructor.apply(this,arguments);var b=typeof this.tpl=="object"?this.tpl:new Ext.XTemplate(this.tpl);this.renderer=function(e,g,d){return b.apply(d.data)};this.tpl=b}});Ext.grid.Column.types={gridcolumn:Ext.grid.Column,booleancolumn:Ext.grid.BooleanColumn,numbercolumn:Ext.grid.NumberColumn,datecolumn:Ext.grid.DateColumn,templatecolumn:Ext.grid.TemplateColumn};Ext.grid.RowNumberer=function(a){Ext.apply(this,a);if(this.rowspan){this.renderer=this.renderer.createDelegate(this)}};Ext.grid.RowNumberer.prototype={header:"",width:23,sortable:false,fixed:true,menuDisabled:true,dataIndex:"",id:"numberer",rowspan:undefined,renderer:function(b,d,a,e){if(this.rowspan){d.cellAttr='rowspan="'+this.rowspan+'"'}return e+1}};Ext.grid.CheckboxSelectionModel=Ext.extend(Ext.grid.RowSelectionModel,{header:'<div class="x-grid3-hd-checker">&#160;</div>',width:20,sortable:false,menuDisabled:true,fixed:true,dataIndex:"",id:"checker",constructor:function(){Ext.grid.CheckboxSelectionModel.superclass.constructor.apply(this,arguments);if(this.checkOnly){this.handleMouseDown=Ext.emptyFn}},initEvents:function(){Ext.grid.CheckboxSelectionModel.superclass.initEvents.call(this);this.grid.on("render",function(){var a=this.grid.getView();a.mainBody.on("mousedown",this.onMouseDown,this);Ext.fly(a.innerHd).on("mousedown",this.onHdMouseDown,this)},this)},onMouseDown:function(d,b){if(d.button===0&&b.className=="x-grid3-row-checker"){d.stopEvent();var g=d.getTarget(".x-grid3-row");if(g){var a=g.rowIndex;if(this.isSelected(a)){this.deselectRow(a)}else{this.selectRow(a,true)}}}},onHdMouseDown:function(d,a){if(a.className=="x-grid3-hd-checker"){d.stopEvent();var b=Ext.fly(a.parentNode);var g=b.hasClass("x-grid3-hd-checker-on");if(g){b.removeClass("x-grid3-hd-checker-on");this.clearSelections()}else{b.addClass("x-grid3-hd-checker-on");this.selectAll()}}},renderer:function(b,d,a){return'<div class="x-grid3-row-checker">&#160;</div>'}});Ext.LoadMask=function(d,b){this.el=Ext.get(d);Ext.apply(this,b);if(this.store){this.store.on("beforeload",this.onBeforeLoad,this);this.store.on("load",this.onLoad,this);this.store.on("loadexception",this.onLoad,this);this.removeMask=Ext.value(this.removeMask,false)}else{var a=this.el.getUpdater();a.showLoadIndicator=false;a.on("beforeupdate",this.onBeforeLoad,this);a.on("update",this.onLoad,this);a.on("failure",this.onLoad,this);this.removeMask=Ext.value(this.removeMask,true)}};Ext.LoadMask.prototype={msg:"Loading...",msgCls:"x-mask-loading",disabled:false,disable:function(){this.disabled=true},enable:function(){this.disabled=false},onLoad:function(){this.el.unmask(this.removeMask)},onBeforeLoad:function(){if(!this.disabled){this.el.mask(this.msg,this.msgCls)}},show:function(){this.onBeforeLoad()},hide:function(){this.onLoad()},destroy:function(){if(this.store){this.store.un("beforeload",this.onBeforeLoad,this);this.store.un("load",this.onLoad,this);this.store.un("loadexception",this.onLoad,this)}else{var a=this.el.getUpdater();a.un("beforeupdate",this.onBeforeLoad,this);a.un("update",this.onLoad,this);a.un("failure",this.onLoad,this)}}};Ext.ProgressBar=Ext.extend(Ext.BoxComponent,{baseCls:"x-progress",animate:false,waitTimer:null,initComponent:function(){Ext.ProgressBar.superclass.initComponent.call(this);this.addEvents("update")},onRender:function(e,a){var d=new Ext.Template('<div class="{cls}-wrap">','<div class="{cls}-inner">','<div class="{cls}-bar">','<div class="{cls}-text">',"<div>&#160;</div>","</div>","</div>",'<div class="{cls}-text {cls}-text-back">',"<div>&#160;</div>","</div>","</div>","</div>");this.el=a?d.insertBefore(a,{cls:this.baseCls},true):d.append(e,{cls:this.baseCls},true);if(this.id){this.el.dom.id=this.id}var b=this.el.dom.firstChild;this.progressBar=Ext.get(b.firstChild);if(this.textEl){this.textEl=Ext.get(this.textEl);delete this.textTopEl}else{this.textTopEl=Ext.get(this.progressBar.dom.firstChild);var g=Ext.get(b.childNodes[1]);this.textTopEl.setStyle("z-index",99).addClass("x-hidden");this.textEl=new Ext.CompositeElement([this.textTopEl.dom.firstChild,g.dom.firstChild]);this.textEl.setWidth(b.offsetWidth)}this.progressBar.setHeight(b.offsetHeight)},afterRender:function(){Ext.ProgressBar.superclass.afterRender.call(this);if(this.value){this.updateProgress(this.value,this.text)}else{this.updateText(this.text)}},updateProgress:function(d,e,b){this.value=d||0;if(e){this.updateText(e)}if(this.rendered){var a=Math.floor(d*this.el.dom.firstChild.offsetWidth);this.progressBar.setWidth(a,b===true||(b!==false&&this.animate));if(this.textTopEl){this.textTopEl.removeClass("x-hidden").setWidth(a)}}this.fireEvent("update",this,d,e);return this},wait:function(b){if(!this.waitTimer){var a=this;b=b||{};this.updateText(b.text);this.waitTimer=Ext.TaskMgr.start({run:function(d){var e=b.increment||10;this.updateProgress(((((d+e)%e)+1)*(100/e))*0.01,null,b.animate)},interval:b.interval||1000,duration:b.duration,onStop:function(){if(b.fn){b.fn.apply(b.scope||this)}this.reset()},scope:a})}return this},isWaiting:function(){return this.waitTimer!=null},updateText:function(a){this.text=a||"&#160;";if(this.rendered){this.textEl.update(this.text)}return this},syncProgressBar:function(){if(this.value){this.updateProgress(this.value,this.text)}return this},setSize:function(a,d){Ext.ProgressBar.superclass.setSize.call(this,a,d);if(this.textTopEl){var b=this.el.dom.firstChild;this.textEl.setSize(b.offsetWidth,b.offsetHeight)}this.syncProgressBar();return this},reset:function(a){this.updateProgress(0);if(this.textTopEl){this.textTopEl.addClass("x-hidden")}if(this.waitTimer){this.waitTimer.onStop=null;Ext.TaskMgr.stop(this.waitTimer);this.waitTimer=null}if(a===true){this.hide()}return this}});Ext.reg("progress",Ext.ProgressBar);var deconcept=deconcept||{};if(typeof deconcept.util=="undefined"||!deconcept.util){deconcept.util={}}if(typeof deconcept.SWFObjectUtil=="undefined"||!deconcept.SWFObjectUtil){deconcept.SWFObjectUtil={}}deconcept.SWFObject=function(g,d,o,j,l,n,p,k,a,e){if(!document.getElementById){return}this.DETECT_KEY=e?e:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params={};this.variables={};this.attributes=[];if(g){this.setAttribute("swf",g)}if(d){this.setAttribute("id",d)}if(o){this.setAttribute("width",o)}if(j){this.setAttribute("height",j)}if(l){this.setAttribute("version",new deconcept.PlayerVersion(l.toString().split(".")))}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true}if(n){this.addParam("bgcolor",n)}var b=p?p:"high";this.addParam("quality",b);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var m=(k)?k:window.location;this.setAttribute("xiRedirectUrl",m);this.setAttribute("redirectUrl","");if(a){this.setAttribute("redirectUrl",a)}};deconcept.SWFObject.prototype={useExpressInstall:function(a){this.xiSWFPath=!a?"expressinstall.swf":a;this.setAttribute("useExpressInstall",true)},setAttribute:function(a,b){this.attributes[a]=b},getAttribute:function(a){return this.attributes[a]},addParam:function(a,b){this.params[a]=b},getParams:function(){return this.params},addVariable:function(a,b){this.variables[a]=b},getVariable:function(a){return this.variables[a]},getVariables:function(){return this.variables},getVariablePairs:function(){var a=[];var b;var d=this.getVariables();for(b in d){a[a.length]=b+"="+d[b]}return a},getSWFHTML:function(){var e="";var d={};var a="";var b="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath)}e='<embed type="application/x-shockwave-flash" src="'+this.getAttribute("swf")+'" width="'+this.getAttribute("width")+'" height="'+this.getAttribute("height")+'" style="'+this.getAttribute("style")+'"';e+=' id="'+this.getAttribute("id")+'" name="'+this.getAttribute("id")+'" ';d=this.getParams();for(a in d){e+=[a]+'="'+d[a]+'" '}b=this.getVariablePairs().join("&");if(b.length>0){e+='flashvars="'+b+'"'}e+="/>"}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath)}e='<object id="'+this.getAttribute("id")+'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+this.getAttribute("width")+'" height="'+this.getAttribute("height")+'" style="'+this.getAttribute("style")+'">';e+='<param name="movie" value="'+this.getAttribute("swf")+'" />';d=this.getParams();for(a in d){e+='<param name="'+a+'" value="'+d[a]+'" />'}b=this.getVariablePairs().join("&");if(b.length>0){e+='<param name="flashvars" value="'+b+'" />'}e+="</object>"}return e},write:function(a){if(this.getAttribute("useExpressInstall")){var b=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(b)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title)}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var d=(typeof a=="string")?document.getElementById(a):a;d.innerHTML=this.getSWFHTML();return true}else{if(this.getAttribute("redirectUrl")!==""){document.location.replace(this.getAttribute("redirectUrl"))}}return false}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var g=null;var d=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var a=navigator.plugins["Shockwave Flash"];if(a&&a.description){d=new deconcept.PlayerVersion(a.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."))}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var b=3;while(g){try{b++;g=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+b);d=new deconcept.PlayerVersion([b,0,0])}catch(h){g=null}}}else{try{g=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7")}catch(h){try{g=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");d=new deconcept.PlayerVersion([6,0,21]);g.AllowScriptAccess="always"}catch(h){if(d.major==6){return d}}try{g=new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(h){}}if(g!==null){d=new deconcept.PlayerVersion(g.GetVariable("$version").split(" ")[1].split(","))}}}return d};deconcept.PlayerVersion=function(a){this.major=a[0]!==null?parseInt(a[0],0):0;this.minor=a[1]!==null?parseInt(a[1],0):0;this.rev=a[2]!==null?parseInt(a[2],0):0};deconcept.PlayerVersion.prototype.versionIsValid=function(a){if(this.major<a.major){return false}if(this.major>a.major){return true}if(this.minor<a.minor){return false}if(this.minor>a.minor){return true}if(this.rev<a.rev){return false}return true};deconcept.util={getRequestParameter:function(e){var d=document.location.search||document.location.hash;if(e===null){return d}if(d){var b=d.substring(1).split("&");for(var a=0;a<b.length;a++){if(b[a].substring(0,b[a].indexOf("="))==e){return b[a].substring((b[a].indexOf("=")+1))}}}return""}};deconcept.SWFObjectUtil.cleanupSWFs=function(){var d=document.getElementsByTagName("OBJECT");for(var b=d.length-1;b>=0;b--){d[b].style.display="none";for(var a in d[b]){if(typeof d[b][a]=="function"){d[b][a]=function(){}}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs)};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true}}Ext.FlashComponent=Ext.extend(Ext.BoxComponent,{flashVersion:"9.0.45",backgroundColor:"#ffffff",wmode:"opaque",url:undefined,swfId:undefined,swfWidth:"100%",swfHeight:"100%",expressInstall:false,initComponent:function(){Ext.FlashComponent.superclass.initComponent.call(this);this.addEvents("initialize")},onRender:function(){Ext.FlashComponent.superclass.onRender.apply(this,arguments);var a=this.getSwfId();var b=new deconcept.SWFObject(this.url,a,this.swfWidth,this.swfHeight,this.flashVersion,this.backgroundColor);if(this.expressInstall){b.useExpressInstall(this.expressInstall)}b.addParam("allowScriptAccess","always");if(this.wmode!==undefined){b.addParam("wmode",this.wmode)}b.addVariable("allowedDomain",document.location.hostname);b.addVariable("elementID",this.getId());b.addVariable("eventHandler","Ext.FlashEventProxy.onEvent");var d=b.write(this.el.dom);if(d){this.swf=Ext.getDom(a)}},getSwfId:function(){return this.swfId||(this.swfId="extswf"+(++Ext.Component.AUTO_ID))},getId:function(){return this.id||(this.id="extflashcmp"+(++Ext.Component.AUTO_ID))},onFlashEvent:function(a){switch(a.type){case"swfReady":this.initSwf();return;case"log":return}a.component=this;this.fireEvent(a.type.toLowerCase().replace(/event$/,""),a)},initSwf:function(){this.onSwfReady(!!this.isInitialized);this.isInitialized=true;this.fireEvent("initialize",this)},beforeDestroy:function(){if(Ext.isIE&&this.rendered){var a=this.el.child("object");if(a){a=a.dom;for(var b in a){if(Ext.isFunction(a[b])){a[b]=Ext.emptyFn}}}}Ext.FlashComponent.superclass.beforeDestroy.call(this)},onSwfReady:Ext.emptyFn});Ext.reg("flash",Ext.FlashComponent);Ext.FlashEventProxy={onEvent:function(d,b){var a=Ext.getCmp(d);if(a){a.onFlashEvent(b)}else{arguments.callee.defer(10,this,[d,b])}}};Ext.Slider=Ext.extend(Ext.BoxComponent,{vertical:false,minValue:0,maxValue:100,decimalPrecision:0,keyIncrement:1,increment:0,clickRange:[5,15],clickToChange:true,animate:true,dragging:false,initComponent:function(){if(this.value===undefined){this.value=this.minValue}Ext.Slider.superclass.initComponent.call(this);this.keyIncrement=Math.max(this.increment,this.keyIncrement);this.addEvents("beforechange","change","changecomplete","dragstart","drag","dragend");if(this.vertical){Ext.apply(this,Ext.Slider.Vertical)}},onRender:function(){this.autoEl={cls:"x-slider "+(this.vertical?"x-slider-vert":"x-slider-horz"),cn:{cls:"x-slider-end",cn:{cls:"x-slider-inner",cn:[{cls:"x-slider-thumb"},{tag:"a",cls:"x-slider-focus",href:"#",tabIndex:"-1",hidefocus:"on"}]}}};Ext.Slider.superclass.onRender.apply(this,arguments);this.endEl=this.el.first();this.innerEl=this.endEl.first();this.thumb=this.innerEl.first();this.halfThumb=(this.vertical?this.thumb.getHeight():this.thumb.getWidth())/2;this.focusEl=this.thumb.next();this.initEvents()},initEvents:function(){this.thumb.addClassOnOver("x-slider-thumb-over");this.mon(this.el,"mousedown",this.onMouseDown,this);this.mon(this.el,"keydown",this.onKeyDown,this);this.focusEl.swallowEvent("click",true);this.tracker=new Ext.dd.DragTracker({onBeforeStart:this.onBeforeDragStart.createDelegate(this),onStart:this.onDragStart.createDelegate(this),onDrag:this.onDrag.createDelegate(this),onEnd:this.onDragEnd.createDelegate(this),tolerance:3,autoStart:300});this.tracker.initEl(this.thumb);this.on("beforedestroy",this.tracker.destroy,this.tracker)},onMouseDown:function(b){if(this.disabled){return}if(this.clickToChange&&b.target!=this.thumb.dom){var a=this.innerEl.translatePoints(b.getXY());this.onClickChange(a)}this.focus()},onClickChange:function(a){if(a.top>this.clickRange[0]&&a.top<this.clickRange[1]){this.setValue(Math.round(this.reverseValue(a.left)),undefined,true)}},onKeyDown:function(b){if(this.disabled){b.preventDefault();return}var a=b.getKey();switch(a){case b.UP:case b.RIGHT:b.stopEvent();if(b.ctrlKey){this.setValue(this.maxValue,undefined,true)}else{this.setValue(this.value+this.keyIncrement,undefined,true)}break;case b.DOWN:case b.LEFT:b.stopEvent();if(b.ctrlKey){this.setValue(this.minValue,undefined,true)}else{this.setValue(this.value-this.keyIncrement,undefined,true)}break;default:b.preventDefault()}},doSnap:function(b){if(!this.increment||this.increment==1||!b){return b}var e=b,d=this.increment;var a=b%d;if(a!=0){e-=a;if(a*2>d){e+=d}else{if(a*2<-d){e-=d}}}return e.constrain(this.minValue,this.maxValue)},afterRender:function(){Ext.Slider.superclass.afterRender.apply(this,arguments);if(this.value!==undefined){var a=this.normalizeValue(this.value);if(a!==this.value){delete this.value;this.setValue(a,false)}else{this.moveThumb(this.translateValue(a),false)}}},getRatio:function(){var a=this.innerEl.getWidth();var b=this.maxValue-this.minValue;return b==0?a:(a/b)},normalizeValue:function(a){a=Ext.util.Format.round(a,this.decimalPrecision);a=this.doSnap(a);a=a.constrain(this.minValue,this.maxValue);return a},setValue:function(b,a,d){b=this.normalizeValue(b);if(b!==this.value&&this.fireEvent("beforechange",this,b,this.value)!==false){this.value=b;this.moveThumb(this.translateValue(b),a!==false);this.fireEvent("change",this,b);if(d){this.fireEvent("changecomplete",this,b)}}},translateValue:function(a){var b=this.getRatio();return(a*b)-(this.minValue*b)-this.halfThumb},reverseValue:function(b){var a=this.getRatio();return(b+this.halfThumb+(this.minValue*a))/a},moveThumb:function(b,a){if(!a||this.animate===false){this.thumb.setLeft(b)}else{this.thumb.shift({left:b,stopFx:true,duration:0.35})}},focus:function(){this.focusEl.focus(10)},onBeforeDragStart:function(a){return!this.disabled},onDragStart:function(a){this.thumb.addClass("x-slider-thumb-drag");this.dragging=true;this.dragStartValue=this.value;this.fireEvent("dragstart",this,a)},onDrag:function(a){var b=this.innerEl.translatePoints(this.tracker.getXY());this.setValue(Math.round(this.reverseValue(b.left)),false);this.fireEvent("drag",this,a)},onDragEnd:function(a){this.thumb.removeClass("x-slider-thumb-drag");this.dragging=false;this.fireEvent("dragend",this,a);if(this.dragStartValue!=this.value){this.fireEvent("changecomplete",this,this.value)}},onResize:function(a,b){this.innerEl.setWidth(a-(this.el.getPadding("l")+this.endEl.getPadding("r")));this.syncThumb()},onDisable:function(){Ext.Slider.superclass.onDisable.call(this);this.thumb.addClass(this.disabledClass);if(Ext.isIE){var a=this.thumb.getXY();this.thumb.hide();this.innerEl.addClass(this.disabledClass).dom.disabled=true;if(!this.thumbHolder){this.thumbHolder=this.endEl.createChild({cls:"x-slider-thumb "+this.disabledClass})}this.thumbHolder.show().setXY(a)}},onEnable:function(){Ext.Slider.superclass.onEnable.call(this);this.thumb.removeClass(this.disabledClass);if(Ext.isIE){this.innerEl.removeClass(this.disabledClass).dom.disabled=false;if(this.thumbHolder){this.thumbHolder.hide()}this.thumb.show();this.syncThumb()}},syncThumb:function(){if(this.rendered){this.moveThumb(this.translateValue(this.value))}},getValue:function(){return this.value}});Ext.reg("slider",Ext.Slider);Ext.Slider.Vertical={onResize:function(a,b){this.innerEl.setHeight(b-(this.el.getPadding("t")+this.endEl.getPadding("b")));this.syncThumb()},getRatio:function(){var b=this.innerEl.getHeight();var a=this.maxValue-this.minValue;return b/a},moveThumb:function(b,a){if(!a||this.animate===false){this.thumb.setBottom(b)}else{this.thumb.shift({bottom:b,stopFx:true,duration:0.35})}},onDrag:function(b){var d=this.innerEl.translatePoints(this.tracker.getXY());var a=this.innerEl.getHeight()-d.top;this.setValue(this.minValue+Math.round(a/this.getRatio()),false);this.fireEvent("drag",this,b)},onClickChange:function(b){if(b.left>this.clickRange[0]&&b.left<this.clickRange[1]){var a=this.innerEl.getHeight()-b.top;this.setValue(this.minValue+Math.round(a/this.getRatio()),undefined,true)}}};Ext.util.Cookies={set:function(d,g){var a=arguments;var k=arguments.length;var b=(k>2)?a[2]:null;var j=(k>3)?a[3]:"/";var e=(k>4)?a[4]:null;var h=(k>5)?a[5]:false;document.cookie=d+"="+escape(g)+((b==null)?"":("; expires="+b.toGMTString()))+((j==null)?"":("; path="+j))+((e==null)?"":("; domain="+e))+((h==true)?"; secure":"")},get:function(e){var b=e+"=";var h=b.length;var a=document.cookie.length;var g=0;var d=0;while(g<a){d=g+h;if(document.cookie.substring(g,d)==b){return Ext.util.Cookies.getCookieVal(d)}g=document.cookie.indexOf(" ",g)+1;if(g==0){break}}return null},clear:function(a){if(Ext.util.Cookies.get(a)){document.cookie=a+"=; expires=Thu, 01-Jan-70 00:00:01 GMT"}},getCookieVal:function(b){var a=document.cookie.indexOf(";",b);if(a==-1){a=document.cookie.length}return unescape(document.cookie.substring(b,a))}};Ext.chart.Chart=Ext.extend(Ext.FlashComponent,{url:"http://yui.yahooapis.com/2.5.1/build/charts/assets/charts.swf",refreshBuffer:100,chartStyle:{padding:10,animationEnabled:true,font:{name:"Tahoma",color:4473924,size:11},dataTip:{padding:5,border:{color:10075112,size:1},background:{color:14346230,alpha:0.9},font:{name:"Tahoma",color:1393291,size:10,bold:true}}},initComponent:function(){Ext.chart.Chart.superclass.initComponent.call(this);this.addEvents("itemmouseover","itemmouseout","itemclick","itemdoubleclick","itemdragstart","itemdrag","itemdragend")},setStyle:function(a,b){b=Ext.encode(b);this.swf.setStyle(a,b)},setStyles:function(a){a=Ext.encode(a);this.swf.setStyles(a)},setSeriesStyles:function(b){for(var a=0;a<b.length;a++){b[a]=Ext.encode(b[a])}this.swf.setSeriesStyles(b)},setCategoryNames:function(a){this.swf.setCategoryNames(a)},setTipRenderer:function(b){var a=this;this.tipFnName=this.createFnProxy(function(h,e,g){var d=a.store.getAt(e);return b(a,d,e,g)},this.tipFnName);this.swf.setDataTipFunction(this.tipFnName)},setSeries:function(a){this.series=a;this.refresh()},bindStore:function(a,b){if(!b&&this.store){this.store.un("datachanged",this.refresh,this);this.store.un("add",this.delayRefresh,this);this.store.un("remove",this.delayRefresh,this);this.store.un("update",this.delayRefresh,this);this.store.un("clear",this.refresh,this);if(a!==this.store&&this.store.autoDestroy){this.store.destroy()}}if(a){a=Ext.StoreMgr.lookup(a);a.on("datachanged",this.refresh,this);a.on("add",this.delayRefresh,this);a.on("remove",this.delayRefresh,this);a.on("update",this.delayRefresh,this);a.on("clear",this.refresh,this)}this.store=a;if(a&&!b){this.refresh()}},onSwfReady:function(a){Ext.chart.Chart.superclass.onSwfReady.call(this,a);this.swf.setType(this.type);if(this.chartStyle){this.setStyles(this.chartStyle)}if(this.categoryNames){this.setCategoryNames(this.categoryNames)}if(this.tipRenderer){this.setTipRenderer(this.tipRenderer)}if(!a){this.bindStore(this.store,true)}this.refresh.defer(10,this)},delayRefresh:function(){if(!this.refreshTask){this.refreshTask=new Ext.util.DelayedTask(this.refresh,this)}this.refreshTask.delay(this.refreshBuffer)},refresh:function(){var n=false;var l=[],d=this.store.data.items;for(var h=0,m=d.length;h<m;h++){l[h]=d[h].data}var g=[];var e=0;var o=null;var k=0;if(this.series){e=this.series.length;for(k=0;k<e;k++){o=this.series[k];var b={};for(var a in o){if(a=="style"&&o.style!==null){b.style=Ext.encode(o.style);n=true}else{b[a]=o[a]}}g.push(b)}}if(e>0){for(k=0;k<e;k++){o=g[k];if(!o.type){o.type=this.type}o.dataProvider=l}}else{g.push({type:this.type,dataProvider:l})}this.swf.setDataProvider(g,(this.isFirst=(this.isFirst===undefined)))},createFnProxy:function(b,a){if(a){delete window[a]}var d="extFnProxy"+(++Ext.chart.Chart.PROXY_FN_ID);window[d]=b;return d}});Ext.reg("chart",Ext.chart.Chart);Ext.chart.Chart.PROXY_FN_ID=0;Ext.chart.PieChart=Ext.extend(Ext.chart.Chart,{type:"pie",onSwfReady:function(a){Ext.chart.PieChart.superclass.onSwfReady.call(this,a);this.setDataField(this.dataField);this.setCategoryField(this.categoryField)},setDataField:function(a){this.dataField=a;this.swf.setDataField(a)},setCategoryField:function(a){this.categoryField=a;this.swf.setCategoryField(a)}});Ext.reg("piechart",Ext.chart.PieChart);Ext.chart.CartesianChart=Ext.extend(Ext.chart.Chart,{onSwfReady:function(a){Ext.chart.CartesianChart.superclass.onSwfReady.call(this,a);if(this.xField){this.setXField(this.xField)}if(this.yField){this.setYField(this.yField)}if(this.xAxis){this.setXAxis(this.xAxis)}if(this.yAxis){this.setYAxis(this.yAxis)}},setXField:function(a){this.xField=a;this.swf.setHorizontalField(a)},setYField:function(a){this.yField=a;this.swf.setVerticalField(a)},setXAxis:function(a){this.xAxis=this.createAxis("xAxis",a);this.swf.setHorizontalAxis(this.xAxis)},setYAxis:function(a){this.yAxis=this.createAxis("yAxis",a);this.swf.setVerticalAxis(this.yAxis)},createAxis:function(d,e){var g=Ext.apply({},e),a=null;if(this[d]){a=this[d].labelFunction}if(g.labelRenderer){var b=g.labelRenderer;g.labelFunction=this.createFnProxy(function(h){return b(h)},a);delete g.labelRenderer}return g}});Ext.reg("cartesianchart",Ext.chart.CartesianChart);Ext.chart.LineChart=Ext.extend(Ext.chart.CartesianChart,{type:"line"});Ext.reg("linechart",Ext.chart.LineChart);Ext.chart.ColumnChart=Ext.extend(Ext.chart.CartesianChart,{type:"column"});Ext.reg("columnchart",Ext.chart.ColumnChart);Ext.chart.BarChart=Ext.extend(Ext.chart.CartesianChart,{type:"bar"});Ext.reg("barchart",Ext.chart.BarChart);Ext.chart.Axis=function(a){Ext.apply(this,a)};Ext.chart.Axis.prototype={type:null,orientation:"horizontal",reverse:false,labelFunction:null,hideOverlappingLabels:true};Ext.chart.NumericAxis=Ext.extend(Ext.chart.Axis,{type:"numeric",minimum:NaN,maximum:NaN,majorUnit:NaN,minorUnit:NaN,snapToUnits:true,alwaysShowZero:true,scale:"linear"});Ext.chart.TimeAxis=Ext.extend(Ext.chart.Axis,{type:"time",minimum:null,maximum:null,majorUnit:NaN,majorTimeUnit:null,minorUnit:NaN,minorTimeUnit:null,snapToUnits:true});Ext.chart.CategoryAxis=Ext.extend(Ext.chart.Axis,{type:"category",categoryNames:null});Ext.chart.Series=function(a){Ext.apply(this,a)};Ext.chart.Series.prototype={type:null,displayName:null};Ext.chart.CartesianSeries=Ext.extend(Ext.chart.Series,{xField:null,yField:null});Ext.chart.ColumnSeries=Ext.extend(Ext.chart.CartesianSeries,{type:"column"});Ext.chart.LineSeries=Ext.extend(Ext.chart.CartesianSeries,{type:"line"});Ext.chart.BarSeries=Ext.extend(Ext.chart.CartesianSeries,{type:"bar"});Ext.chart.PieSeries=Ext.extend(Ext.chart.Series,{type:"pie",dataField:null,categoryField:null});Ext.History=(function(){var g,d;var m=false;var e;function h(){var n=top.location.href,o=n.indexOf("#");return o>=0?n.substr(o+1):null}function a(){d.value=e}function j(n){e=n;Ext.History.fireEvent("change",n)}function k(o){var n=['<html><body><div id="state">',o,"</div></body></html>"].join("");try{var q=g.contentWindow.document;q.open();q.write(n);q.close();return true}catch(p){return false}}function b(){if(!g.contentWindow||!g.contentWindow.document){setTimeout(b,10);return}var q=g.contentWindow.document;var o=q.getElementById("state");var n=o?o.innerText:null;var p=h();setInterval(function(){q=g.contentWindow.document;o=q.getElementById("state");var s=o?o.innerText:null;var r=h();if(s!==n){n=s;j(n);top.location.hash=n;p=n;a()}else{if(r!==p){p=r;k(r)}}},50);m=true;Ext.History.fireEvent("ready",Ext.History)}function l(){e=d.value?d.value:h();if(Ext.isIE){b()}else{var n=h();setInterval(function(){var o=h();if(o!==n){n=o;j(n);a()}},50);m=true;Ext.History.fireEvent("ready",Ext.History)}}return{fieldId:"x-history-field",iframeId:"x-history-frame",events:{},init:function(o,n){if(m){Ext.callback(o,n,[this]);return}if(!Ext.isReady){Ext.onReady(function(){Ext.History.init(o,n)});return}d=Ext.getDom(Ext.History.fieldId);if(Ext.isIE){g=Ext.getDom(Ext.History.iframeId)}this.addEvents("ready","change");if(o){this.on("ready",o,n,{single:true})}l()},add:function(n,o){if(o!==false){if(this.getToken()==n){return true}}if(Ext.isIE){return k(n)}else{top.location.hash=n;return true}},back:function(){history.go(-1)},forward:function(){history.go(1)},getToken:function(){return m?e:h()}}})();Ext.apply(Ext.History,new Ext.util.Observable());

/* extjs_cake.js */
var fieldStatuses=new Array();Ext.BLANK_IMAGE_URL='/webapp/img/s.gif';Ext.onReady(function(){Ext.form.VTypes.password=function(v,field){match=true;if(field.initialPasswordField){var pwdElement=Ext.get(field.initialPasswordField);if(pwdElement){var password=pwdElement.getValue();if(password){match=(v==password);}}}
return match;};Ext.form.VTypes.numeric=function(v){return(/^\d*$/.test(v));};});function applyExtTextField(id,config){var el=Ext.get(id);parentStyle='';if(el.prev().dom.innerHTML==""){el.prev().set({style:'padding:0px;margin:0px'});parentStyle='padding-left:0px;padding-top:4px;padding-bottom:4px';}
else{el.prev().set({cls:"x-form-item-label",style:'padding-top:0px;margin-top:0px;text-align:right'});}
el.parent().set({cls:"x-form-item"});el.wrap({cls:'x-form-element',style:parentStyle});fieldStatuses[id]=true;config.id=id;config.applyTo=id;config.msgTarget='under';var f=new Ext.form.TextField(config);f.on('valid',function validateFields(obj){var id=obj.el.dom.id;fieldStatuses[id]=true;validateForm(true);});f.on('invalid',function validateFields(obj){var id=obj.el.dom.id;fieldStatuses[id]=false;validateForm(false);});}
function applyExtComboBox(id,config){var el=Ext.get(id);var label=el.prev();label.set({cls:'x-form-item-label'});labelWidth=0;parentStyle='';if(label.dom.innerHTML!=""){labelWidth=85;parentStyle='padding-left:105px';}
label.dom.setAttribute("style","width:"+labelWidth+"px;padding-top:0px;margin-top:0px;float:left");label.parent().set({cls:'x-form-item',style:"padding-top:4px;padding-bottom:4px"});el.wrap({style:parentStyle});config.transform=id;var c=new Ext.form.ComboBox(config);}
function validateForm(fieldValid){var enabled=fieldValid;if(fieldValid){for(var j=0;j<fieldStatuses.length;j++){if(!fieldStatuses[j]){enabled=false;}}}
Ext.get('btnSubmit').dom.disabled=!enabled;}
Ext.onReady(function(){var arr=Ext.query('input');for(i=0;i<arr.length;i++){var el=arr[i];if(el.type=="submit"&&el.value=="Submit"){Ext.get(el).set({id:'btnSubmit'});}}});

/* common.js */
function setComboByValue(id,value)
{obj=document.getElementById(id);for(i=0;i<obj.options.length;i++)
{if(obj.options[i].value==value)
obj.selectedIndex=i;}}
function setComboById(id,option_id){obj=document.getElementById(id);for(i=0;i<obj.options.length;i++){debugger;if(obj.options[i].value==value)
obj.selectedIndex=i;}}
function getComboValue(id){i=document.getElementById(id).selectedIndex;return document.getElementById(id).options[i].text;}
function getComboId(id){i=document.getElementById(id).selectedIndex;return document.getElementById(id).options[i].value;}