diff options
author | shadlaws <shad@shadlaws.com> | 2013-03-04 19:14:47 +0100 |
---|---|---|
committer | shadlaws <shad@shadlaws.com> | 2013-03-04 19:14:47 +0100 |
commit | 1544a83279853acccccdf179b6c96d044fee1cf6 (patch) | |
tree | a392db6f75d4ff1a29a6c4c3e55c158e9fa19e16 /modules/organize/vendor/ext/js | |
parent | e77276736351700b3bbd1080369738620ff8be28 (diff) |
Minify (and re-minify) JS libraries (in sync with gallery3-vendor).
- minified jQuery libraries.
- re-minified flowplayer, json2-min, and extjs using new minimizer (more efficient, keeps copyrights).
Diffstat (limited to 'modules/organize/vendor/ext/js')
-rw-r--r-- | modules/organize/vendor/ext/js/ext-organize-bundle.js | 3345 |
1 files changed, 1144 insertions, 2201 deletions
diff --git a/modules/organize/vendor/ext/js/ext-organize-bundle.js b/modules/organize/vendor/ext/js/ext-organize-bundle.js index bf483bde..4b7bd9ea 100644 --- a/modules/organize/vendor/ext/js/ext-organize-bundle.js +++ b/modules/organize/vendor/ext/js/ext-organize-bundle.js @@ -1,2202 +1,1145 @@ -window.undefined=window.undefined;Ext={version:'3.3.1',versionDetail:{major:3,minor:3,patch:1}};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,toString=Object.prototype.toString,ua=navigator.userAgent.toLowerCase(),check=function(r){return r.test(ua);},DOC=document,docMode=DOC.documentMode,isStrict=DOC.compatMode=="CSS1Compat",isOpera=check(/opera/),isChrome=check(/\bchrome\b/),isWebKit=check(/webkit/),isSafari=!isChrome&&check(/safari/),isSafari2=isSafari&&check(/applewebkit\/4/),isSafari3=isSafari&&check(/version\/3/),isSafari4=isSafari&&check(/version\/4/),isIE=!isOpera&&check(/msie/),isIE7=isIE&&(check(/msie 7/)||docMode==7),isIE8=isIE&&(check(/msie 8/)&&docMode!=7),isIE6=isIE&&!isIE7&&!isIE8,isGecko=!isWebKit&&check(/gecko/),isGecko2=isGecko&&check(/rv:1\.8/),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(isIE6){try{DOC.execCommand("BackgroundImageCache",false,true);}catch(e){}} -Ext.apply(Ext,{SSL_SECURE_URL:isSecure&&isIE?'javascript:""':'about:blank',isStrict:isStrict,isSecure:isSecure,isReady:false,enableForcedBoxModel:false,enableGarbageCollector:true,enableListenerCollection:false,enableNestedListenerRemoval:false,USE_NATIVE_JSON:false,applyIf:function(o,c){if(o){for(var p in c){if(!Ext.isDefined(o[p])){o[p]=c[p];}}} -return o;},id:function(el,prefix){el=Ext.getDom(el,true)||{};if(!el.id){el.id=(prefix||"ext-gen")+(++idSeed);} -return el.id;},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(typeof sp=='object'){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){return Ext.extend(sb,o);};return sb;};}(),override:function(origclass,overrides){if(overrides){var p=origclass.prototype;Ext.apply(p,overrides);if(Ext.isIE&&overrides.hasOwnProperty('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 empty,buf=[],e=encodeURIComponent;Ext.iterate(o,function(key,item){empty=Ext.isEmpty(item);Ext.each(empty?key:item,function(val){buf.push('&',e(key),'=',(!Ext.isEmpty(val)&&(val!=key||!empty))?(Ext.isDate(val)?Ext.encode(val).replace(/"/g,''):e(val)):'');});});if(!pre){buf.shift();pre='';} -return pre+buf.join('');},urlDecode:function(string,overwrite){if(Ext.isEmpty(string)){return{};} -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;},urlAppend:function(url,s){if(!Ext.isEmpty(s)){return url+(url.indexOf('?')===-1?'?':'&')+s;} -return url;},toArray:function(){return isIE?function(a,i,j,res){res=[];for(var x=0,len=a.length;x<len;x++){res.push(a[x]);} -return res.slice(i||0,j||res.length);}:function(a,i,j){return Array.prototype.slice.call(a,i||0,j||a.length);};}(),isIterable:function(v){if(Ext.isArray(v)||v.callee){return true;} -if(/NodeList|HTMLCollection/.test(toString.call(v))){return true;} -return((typeof v.nextNode!='undefined'||v.item)&&Ext.isNumber(v.length));},each:function(array,fn,scope){if(Ext.isEmpty(array,true)){return;} -if(!Ext.isIterable(array)||Ext.isPrimitive(array)){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;};}},iterate:function(obj,fn,scope){if(Ext.isEmpty(obj)){return;} -if(Ext.isIterable(obj)){Ext.each(obj,fn,scope);return;}else if(typeof obj=='object'){for(var prop in obj){if(obj.hasOwnProperty(prop)){if(fn.call(scope||obj,prop,obj[prop],obj)===false){return;};}}}},getDom:function(el,strict){if(!el||!DOC){return null;} -if(el.dom){return el.dom;}else{if(typeof el=='string'){var e=DOC.getElementById(el);if(e&&isIE&&strict){if(el==e.getAttribute('id')){return e;}else{return null;}} -return e;}else{return el;}}},getBody:function(){return Ext.get(DOC.body||DOC.documentElement);},getHead:function(){var head;return function(){if(head==undefined){head=Ext.get(DOC.getElementsByTagName("head")[0]);} -return head;};}(),removeNode:isIE&&!isIE8?function(){var d;return function(n){if(n&&n.tagName!='BODY'){(Ext.enableNestedListenerRemoval)?Ext.EventManager.purgeElement(n,true):Ext.EventManager.removeAll(n);d=d||DOC.createElement('div');d.appendChild(n);d.innerHTML='';delete Ext.elCache[n.id];}};}():function(n){if(n&&n.parentNode&&n.tagName!='BODY'){(Ext.enableNestedListenerRemoval)?Ext.EventManager.purgeElement(n,true):Ext.EventManager.removeAll(n);n.parentNode.removeChild(n);delete Ext.elCache[n.id];}},isEmpty:function(v,allowBlank){return v===null||v===undefined||((Ext.isArray(v)&&!v.length))||(!allowBlank?v==='':false);},isArray:function(v){return toString.apply(v)==='[object Array]';},isDate:function(v){return toString.apply(v)==='[object Date]';},isObject:function(v){return!!v&&Object.prototype.toString.call(v)==='[object Object]';},isPrimitive:function(v){return Ext.isString(v)||Ext.isNumber(v)||Ext.isBoolean(v);},isFunction:function(v){return toString.apply(v)==='[object Function]';},isNumber:function(v){return typeof v==='number'&&isFinite(v);},isString:function(v){return typeof v==='string';},isBoolean:function(v){return typeof v==='boolean';},isElement:function(v){return v?!!v.tagName:false;},isDefined:function(v){return typeof v!=='undefined';},isOpera:isOpera,isWebKit:isWebKit,isChrome:isChrome,isSafari:isSafari,isSafari3:isSafari3,isSafari4:isSafari4,isSafari2:isSafari2,isIE:isIE,isIE6:isIE6,isIE7:isIE7,isIE8:isIE8,isGecko:isGecko,isGecko2:isGecko2,isGecko3:isGecko3,isBorderBox:isBorderBox,isLinux:isLinux,isWindows:isWindows,isMac:isMac,isAir:isAir});Ext.ns=Ext.namespace;})();Ext.ns('Ext.util','Ext.lib','Ext.data','Ext.supports');Ext.elCache={};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(Ext.isNumber(appendArgs)){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,from){var len=this.length;from=from||0;from+=(from<0)?len:0;for(;from<len;++from){if(this[from]===o){return from;}} -return-1;},remove:function(o){var index=this.indexOf(o);if(index!=-1){this.splice(index,1);} -return this;}});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,ROUND=Math.round,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=[ROUND(b.left+scroll.left),ROUND(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.Event=function(){var loadComplete=false,unloadListeners={},retryCount=0,onAvailStack=[],_interval,locked=false,win=window,doc=document,POLL_RETRYS=200,POLL_INTERVAL=20,TYPE=0,FN=1,OBJ=2,ADJ_SCOPE=3,SCROLLLEFT='scrollLeft',SCROLLTOP='scrollTop',UNLOAD='unload',MOUSEOVER='mouseover',MOUSEOUT='mouseout',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){return!elContains(e.currentTarget,pub.getRelatedTarget(e));} -function elContains(parent,child){if(parent&&parent.firstChild){while(child){if(child===parent){return true;} -child=child.parentNode;if(child&&(child.nodeType!=1)){child=null;}}} -return false;} -function _tryPreloadAttach(){var ret=false,notAvail=[],element,i,v,override,tryAgain=!loadComplete||(retryCount>0);if(!locked){locked=true;for(i=0;i<onAvailStack.length;++i){v=onAvailStack[i];if(v&&(element=doc.getElementById(v.id))){if(!v.checkReady||loadComplete||element.nextSibling||(doc&&doc.body)){override=v.override;element=override?(override===true?v.obj:override):element;v.fn.call(element,v.obj);onAvailStack.remove(v);--i;}else{notAvail.push(v);}}} -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,POLL_INTERVAL);}} -function getScroll(){var dd=doc.documentElement,db=doc.body;if(dd&&(dd[SCROLLTOP]||dd[SCROLLLEFT])){return[dd[SCROLLLEFT],dd[SCROLLTOP]];}else if(db){return[db[SCROLLLEFT],db[SCROLLTOP]];}else{return[0,0];}} -function getPageCoord(ev,xy){ev=ev.browserEvent||ev;var coord=ev['page'+xy];if(!coord&&coord!==0){coord=ev['client'+xy]||0;if(Ext.isIE){coord+=getScroll()[xy=="X"?0:1];}} -return coord;} -var pub={extAdapter:true,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=POLL_RETRYS;startInterval();},addListener:function(el,eventName,fn){el=Ext.getDom(el);if(el&&fn){if(eventName==UNLOAD){if(unloadListeners[el.id]===undefined){unloadListeners[el.id]=[];} -unloadListeners[el.id].push([eventName,fn]);return fn;} -return doAdd(el,eventName,fn,false);} -return false;},removeListener:function(el,eventName,fn){el=Ext.getDom(el);var i,len,li,lis;if(el&&fn){if(eventName==UNLOAD){if((lis=unloadListeners[el.id])!==undefined){for(i=0,len=lis.length;i<len;i++){if((li=lis[i])&&li[TYPE]==eventName&&li[FN]==fn){unloadListeners[el.id].splice(i,1);}}} -return;} -doRemove(el,eventName,fn,false);}},getTarget:function(ev){ev=ev.browserEvent||ev;return this.resolveTextNode(ev.target||ev.srcElement);},resolveTextNode:Ext.isGecko?function(node){if(!node){return;} -var s=HTMLElement.prototype.toString.call(node);if(s=='[xpconnect wrapped native prototype]'||s=='[object XULElement]'){return;} -return node.nodeType==3?node.parentNode:node;}:function(node){return node&&node.nodeType==3?node.parentNode:node;},getRelatedTarget:function(ev){ev=ev.browserEvent||ev;return this.resolveTextNode(ev.relatedTarget||(/(mouseout|mouseleave)/.test(ev.type)?ev.toElement:/(mouseover|mouseenter)/.test(ev.type)?ev.fromElement:null));},getPageX:function(ev){return getPageCoord(ev,"X");},getPageY:function(ev){return getPageCoord(ev,"Y");},getXY:function(ev){return[this.getPageX(ev),this.getPageY(ev)];},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;},getListeners:function(el,eventName){Ext.EventManager.getListeners(el,eventName);},purgeElement:function(el,recurse,eventName){Ext.EventManager.purgeElement(el,recurse,eventName);},_load:function(e){loadComplete=true;if(Ext.isIE&&e!==true){doRemove(win,"load",arguments.callee);}},_unload:function(e){var EU=Ext.lib.Event,i,v,ul,id,len,scope;for(id in unloadListeners){ul=unloadListeners[id];for(i=0,len=ul.length;i<len;i++){v=ul[i];if(v){try{scope=v[ADJ_SCOPE]?(v[ADJ_SCOPE]===true?v[OBJ]:v[ADJ_SCOPE]):win;v[FN].call(scope,EU.getEvent(e),v[OBJ]);}catch(ex){}}}};Ext.EventManager._unload();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.6.0','Msxml2.XMLHTTP.3.0','Msxml2.XMLHTTP'],CONTENTTYPE='Content-Type';function setHeader(o){var conn=o.conn,prop,headers={};function setTheHeaders(conn,headers){for(prop in headers){if(headers.hasOwnProperty(prop)){conn.setRequestHeader(prop,headers[prop]);}}} -Ext.apply(headers,pub.headers,pub.defaultHeaders);setTheHeaders(conn,headers);delete pub.headers;} -function createExceptionObject(tId,callbackArg,isAbort,isTimeout){return{tId:tId,status:isAbort?-1:0,statusText:isAbort?'transaction aborted':'communication failure',isAbort:isAbort,isTimeout:isTimeout,argument:callbackArg};} -function initHeader(label,value){(pub.headers=pub.headers||{})[label]=value;} -function createResponseObject(o,callbackArg){var headerObj={},headerStr,conn=o.conn,t,s,isBrokenStatus=conn.status==1223;try{headerStr=o.conn.getAllResponseHeaders();Ext.each(headerStr.replace(/\r\n/g,'\n').split('\n'),function(v){t=v.indexOf(':');if(t>=0){s=v.substr(0,t).toLowerCase();if(v.charAt(t+1)==' '){++t;} -headerObj[s]=v.substr(t+1);}});}catch(e){} -return{tId:o.tId,status:isBrokenStatus?204:conn.status,statusText:isBrokenStatus?'No Content':conn.statusText,getResponseHeader:function(header){return headerObj[header.toLowerCase()];},getAllResponseHeaders:function(){return headerStr;},responseText:conn.responseText,responseXML:conn.responseXML,argument:callbackArg};} -function releaseObject(o){if(o.tId){pub.conn[o.tId]=null;} -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 checkResponse(o,callback,conn,tId,poll,cbTimeout){if(conn&&conn.readyState==4){clearInterval(poll[tId]);poll[tId]=null;if(cbTimeout){clearTimeout(pub.timeout[tId]);pub.timeout[tId]=null;} -handleTransactionResponse(o,callback);}} -function checkTimeout(o,callback){pub.abort(o,callback,true);} -function handleReadyState(o,callback){callback=callback||{};var conn=o.conn,tId=o.tId,poll=pub.poll,cbTimeout=callback.timeout||null;if(cbTimeout){pub.conn[tId]=conn;pub.timeout[tId]=setTimeout(checkTimeout.createCallback(o,callback),cbTimeout);} -poll[tId]=setInterval(checkResponse.createCallback(o,callback,conn,tId,poll,cbTimeout),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[CONTENTTYPE])){initHeader(CONTENTTYPE,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,hs;Ext.applyIf(me,options);if(xmlData||jsonData){hs=me.headers;if(!hs||!hs[CONTENTTYPE]){initHeader(CONTENTTYPE,xmlData?'text/xml':'application/json');} -data=xmlData||(!Ext.isPrimitive(jsonData)?Ext.encode(jsonData):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,name,data='',type,hasValue;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){hasValue=opt.hasAttribute?opt.hasAttribute('value'):opt.getAttributeNode('value').specified;data+=String.format("{0}={1}&",encoder(name),encoder(hasValue?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:{},conn:{},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;clearTimeout(pub.timeout[tId]);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;}();(function(){var EXTLIB=Ext.lib,noNegatives=/width|height|opacity|padding/i,offsetAttribute=/^((width|height)|(top|left))$/,defaultUnit=/width|height|top$|bottom$|left$|right$/i,offsetUnit=/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i,isset=function(v){return typeof v!=='undefined';},now=function(){return new Date();};EXTLIB.Anim={motion:function(el,args,duration,easing,cb,scope){return this.run(el,args,duration,easing,cb,scope,Ext.lib.Motion);},run:function(el,args,duration,easing,cb,scope,type){type=type||Ext.lib.AnimBase;if(typeof easing=="string"){easing=Ext.lib.Easing[easing];} -var anim=new type(el,args,duration,easing);anim.animateX(function(){if(Ext.isFunction(cb)){cb.call(scope);}});return anim;}};EXTLIB.AnimBase=function(el,attributes,duration,method){if(el){this.init(el,attributes,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(noNegatives.test(attr)&&val<0){val=0;} -Ext.fly(this.el,'_anim').setStyle(attr,val+unit);},getAttr:function(attr){var el=Ext.fly(this.el),val=el.getStyle(attr),a=offsetAttribute.exec(attr)||[];if(val!=='auto'&&!offsetUnit.test(val)){return parseFloat(val);} -return(!!(a[2])||(el.getStyle('position')=='absolute'&&!!(a[3])))?el.dom['offset'+a[0].charAt(0).toUpperCase()+a[0].substr(1)]:0;},getDefaultUnit:function(attr){return defaultUnit.test(attr)?'px':'';},animateX:function(callback,scope){var me=this,f=function(){me.onComplete.removeListener(f);if(Ext.isFunction(callback)){callback.call(scope||me,me);}};me.onComplete.addListener(f,me);me.animate();},setRunAttr:function(attr){var me=this,a=this.attributes[attr],to=a.to,by=a.by,from=a.from,unit=a.unit,ra=(this.runAttrs[attr]={}),end;if(!isset(to)&&!isset(by)){return false;} -var start=isset(from)?from:me.getAttr(attr);if(isset(to)){end=to;}else if(isset(by)){if(Ext.isArray(start)){end=[];for(var i=0,len=start.length;i<len;i++){end[i]=start[i]+by[i];}}else{end=start+by;}} -Ext.apply(ra,{start:start,end:end,unit:isset(unit)?unit:me.getDefaultUnit(attr)});},init:function(el,attributes,duration,method){var me=this,actualFrames=0,mgr=EXTLIB.AnimMgr;Ext.apply(me,{isAnimated:false,startTime:null,el:Ext.getDom(el),attributes:attributes||{},duration:duration||1,method:method||EXTLIB.Easing.easeNone,useSec:true,curFrame:0,totalFrames:mgr.fps,runAttrs:{},animate:function(){var me=this,d=me.duration;if(me.isAnimated){return false;} -me.curFrame=0;me.totalFrames=me.useSec?Math.ceil(mgr.fps*d):d;mgr.registerElement(me);},stop:function(finish){var me=this;if(finish){me.curFrame=me.totalFrames;me._onTween.fire();} -mgr.stop(me);}});var onStart=function(){var me=this,attr;me.onStart.fire();me.runAttrs={};for(attr in this.attributes){this.setRunAttr(attr);} -me.isAnimated=true;me.startTime=now();actualFrames=0;};var onTween=function(){var me=this;me.onTween.fire({duration:now()-me.startTime,curFrame:me.curFrame});var ra=me.runAttrs;for(var attr in ra){this.setAttr(attr,me.doMethod(attr,ra[attr].start,ra[attr].end),ra[attr].unit);} -++actualFrames;};var onComplete=function(){var me=this,actual=(now()-me.startTime)/1000,data={duration:actual,frames:actualFrames,fps:actualFrames/actual};me.isAnimated=false;actualFrames=0;me.onComplete.fire(data);};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);}};Ext.lib.AnimMgr=new function(){var me=this,thread=null,queue=[],tweenCount=0;Ext.apply(me,{fps:1000,delay:1,registerElement:function(tween){queue.push(tween);++tweenCount;tween._onStart.fire();me.start();},unRegister:function(tween,index){tween._onComplete.fire();index=index||getIndex(tween);if(index!=-1){queue.splice(index,1);} -if(--tweenCount<=0){me.stop();}},start:function(){if(thread===null){thread=setInterval(me.run,me.delay);}},stop:function(tween){if(!tween){clearInterval(thread);for(var i=0,len=queue.length;i<len;++i){if(queue[0].isAnimated){me.unRegister(queue[0],0);}} -queue=[];thread=null;tweenCount=0;}else{me.unRegister(tween);}},run:function(){var tf,i,len,tween;for(i=0,len=queue.length;i<len;i++){tween=queue[i];if(tween&&tween.isAnimated){tf=tween.totalFrames;if(tween.curFrame<tf||tf===null){++tween.curFrame;if(tween.useSec){correctFrame(tween);} -tween._onTween.fire();}else{me.stop(tween);}}}}});var getIndex=function(anim){var i,len;for(i=0,len=queue.length;i<len;i++){if(queue[i]===anim){return i;}} -return-1;};var correctFrame=function(tween){var frames=tween.totalFrames,frame=tween.curFrame,duration=tween.duration,expected=(frame*duration*1000/frames),elapsed=(now()-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(tween.curFrame+tweak>=frames){tweak=frames-(frame+1);} -tween.curFrame+=tweak;}};};EXTLIB.Bezier=new function(){this.getPosition=function(points,t){var n=points.length,tmp=[],c=1-t,i,j;for(i=0;i<n;++i){tmp[i]=[points[i][0],points[i][1]];} -for(j=1;j<n;++j){for(i=0;i<n-j;++i){tmp[i][0]=c*tmp[i][0]+t*tmp[parseInt(i+1,10)][0];tmp[i][1]=c*tmp[i][1]+t*tmp[parseInt(i+1,10)][1];}} -return[tmp[0][0],tmp[0][1]];};};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(){EXTLIB.Motion=function(el,attributes,duration,method){if(el){EXTLIB.Motion.superclass.constructor.call(this,el,attributes,duration,method);}};Ext.extend(EXTLIB.Motion,Ext.lib.AnimBase);var superclass=EXTLIB.Motion.superclass,pointsRe=/^points$/i;Ext.apply(EXTLIB.Motion.prototype,{setAttr:function(attr,val,unit){var me=this,setAttr=superclass.setAttr;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 me=this,getAttr=superclass.getAttr;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)?EXTLIB.Bezier.getPosition(me.runAttrs[attr],me.method(me.curFrame,0,100,me.totalFrames)/100):superclass.doMethod.call(me,attr,start,end);},setRunAttr:function(attr){if(pointsRe.test(attr)){var me=this,el=this.el,points=this.attributes.points,control=points.control||[],from=points.from,to=points.to,by=points.by,DOM=EXTLIB.Dom,start,i,end,len,ra;if(control.length>0&&!Ext.isArray(control[0])){control=[control];}else{} -Ext.fly(el,'_anim').position();DOM.setXY(el,isset(from)?from:DOM.getXY(el));start=me.getAttr('points');if(isset(to)){end=translateValues.call(me,to,start);for(i=0,len=control.length;i<len;++i){control[i]=translateValues.call(me,control[i],start);}}else if(isset(by)){end=[start[0]+by[0],start[1]+by[1]];for(i=0,len=control.length;i<len;++i){control[i]=[start[0]+control[i][0],start[1]+control[i][1]];}} -ra=this.runAttrs[attr]=[start];if(control.length>0){ra=ra.concat(control);} -ra[ra.length]=end;}else{superclass.setRunAttr.call(this,attr);}}});var translateValues=function(val,start){var pageXY=EXTLIB.Dom.getXY(this.el);return[val[0]-pageXY[0]+start[0],val[1]-pageXY[1]+start[1]];};})();})();(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\)$/,rgbRE=/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i,hexRE=/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i,hex3RE=/^#?([0-9A-F]{1})([0-9A-F]{1})([0-9A-F]{1})$/i,isset=function(v){return typeof v!=='undefined';};function parseColor(s){var pi=parseInt,base,out=null,c;if(s.length==3){return s;} -Ext.each([hexRE,rgbRE,hex3RE],function(re,idx){base=(idx%2==0)?16:10;c=re.exec(s);if(c&&c.length==4){out=[pi(c[1],base),pi(c[2],base),pi(c[3],base)];return false;}});return out;} -Ext.apply(EXTLIB.ColorAnim.prototype,{getAttr:function(attr){var me=this,el=me.el,val;if(colorRE.test(attr)){while(el&&transparentRE.test(val=Ext.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,i,len,v;if(colorRE.test(attr)){val=[];end=end||[];for(i=0,len=start.length;i<len;i++){v=start[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,a=me.attributes[attr],to=a.to,by=a.by,ra;superclass.setRunAttr.call(me,attr);ra=me.runAttrs[attr];if(colorRE.test(attr)){var start=parseColor(ra.start),end=parseColor(ra.end);if(!isset(to)&&isset(by)){end=parseColor(by);for(var i=0,len=start.length;i<len;i++){end[i]=start[i]+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 superclass=EXTLIB.Scroll.superclass,SCROLL='scroll';Ext.apply(EXTLIB.Scroll.prototype,{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 me=this;if(attr==SCROLL){return[me.el.scrollLeft,me.el.scrollTop];}else{return superclass.getAttr.call(me,attr);}},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);}})();(function(){var EXTUTIL=Ext.util,EACH=Ext.each,TRUE=true,FALSE=false;EXTUTIL.Observable=function(){var me=this,e=me.events;if(me.listeners){me.on(me.listeners);delete me.listeners;} -me.events=e||{};};EXTUTIL.Observable.prototype={filterOptRe:/^(?:scope|delay|buffer|single)$/,fireEvent:function(){var a=Array.prototype.slice.call(arguments,0),ename=a[0].toLowerCase(),me=this,ret=TRUE,ce=me.events[ename],cc,q,c;if(me.eventsSuspended===TRUE){if(q=me.eventQueue){q.push(a);}} -else if(typeof ce=='object'){if(ce.bubble){if(ce.fire.apply(ce,a.slice(1))===FALSE){return FALSE;} -c=me.getBubbleTarget&&me.getBubbleTarget();if(c&&c.enableBubble){cc=c.events[ename];if(!cc||typeof cc!='object'||!cc.bubble){c.enableBubble(ename);} -return c.fireEvent.apply(c,a);}} -else{a.shift();ret=ce.fire.apply(ce,a);}} -return ret;},addListener:function(eventName,fn,scope,o){var me=this,e,oe,ce;if(typeof eventName=='object'){o=eventName;for(e in o){oe=o[e];if(!me.filterOptRe.test(e)){me.addListener(e,oe.fn||oe,oe.scope||o.scope,oe.fn?oe:o);}}}else{eventName=eventName.toLowerCase();ce=me.events[eventName]||TRUE;if(typeof ce=='boolean'){me.events[eventName]=ce=new EXTUTIL.Event(me,eventName);} -ce.addListener(fn,scope,typeof o=='object'?o:{});}},removeListener:function(eventName,fn,scope){var ce=this.events[eventName.toLowerCase()];if(typeof ce=='object'){ce.removeListener(fn,scope);}},purgeListeners:function(){var events=this.events,evt,key;for(key in events){evt=events[key];if(typeof evt=='object'){evt.clearListeners();}}},addEvents:function(o){var me=this;me.events=me.events||{};if(typeof o=='string'){var a=arguments,i=a.length;while(i--){me.events[a[i]]=me.events[a[i]]||TRUE;}}else{Ext.applyIf(me.events,o);}},hasListener:function(eventName){var e=this.events[eventName.toLowerCase()];return typeof e=='object'&&e.listeners.length>0;},suspendEvents:function(queueSuspended){this.eventsSuspended=TRUE;if(queueSuspended&&!this.eventQueue){this.eventQueue=[];}},resumeEvents:function(){var me=this,queued=me.eventQueue||[];me.eventsSuspended=FALSE;delete me.eventQueue;EACH(queued,function(e){me.fireEvent.apply(me,e);});}};var OBSERVABLE=EXTUTIL.Observable.prototype;OBSERVABLE.on=OBSERVABLE.addListener;OBSERVABLE.un=OBSERVABLE.removeListener;EXTUTIL.Observable.releaseCapture=function(o){o.fireEvent=OBSERVABLE.fireEvent;};function createTargeted(h,o,scope){return function(){if(o.target==arguments[0]){h.apply(scope,Array.prototype.slice.call(arguments,0));}};};function createBuffered(h,o,l,scope){l.task=new EXTUTIL.DelayedTask();return function(){l.task.delay(o.buffer,h,scope,Array.prototype.slice.call(arguments,0));};};function createSingle(h,e,fn,scope){return function(){e.removeListener(fn,scope);return h.apply(scope,arguments);};};function createDelayed(h,o,l,scope){return function(){var task=new EXTUTIL.DelayedTask(),args=Array.prototype.slice.call(arguments,0);if(!l.tasks){l.tasks=[];} -l.tasks.push(task);task.delay(o.delay||10,function(){l.tasks.remove(task);h.apply(scope,args);},scope);};};EXTUTIL.Event=function(obj,name){this.name=name;this.obj=obj;this.listeners=[];};EXTUTIL.Event.prototype={addListener:function(fn,scope,options){var me=this,l;scope=scope||me.obj;if(!me.isListening(fn,scope)){l=me.createListener(fn,scope,options);if(me.firing){me.listeners=me.listeners.slice(0);} -me.listeners.push(l);}},createListener:function(fn,scope,o){o=o||{};scope=scope||this.obj;var l={fn:fn,scope:scope,options:o},h=fn;if(o.target){h=createTargeted(h,o,scope);} -if(o.delay){h=createDelayed(h,o,l,scope);} -if(o.single){h=createSingle(h,this,fn,scope);} -if(o.buffer){h=createBuffered(h,o,l,scope);} -l.fireFn=h;return l;},findListener:function(fn,scope){var list=this.listeners,i=list.length,l;scope=scope||this.obj;while(i--){l=list[i];if(l){if(l.fn==fn&&l.scope==scope){return i;}}} -return-1;},isListening:function(fn,scope){return this.findListener(fn,scope)!=-1;},removeListener:function(fn,scope){var index,l,k,me=this,ret=FALSE;if((index=me.findListener(fn,scope))!=-1){if(me.firing){me.listeners=me.listeners.slice(0);} -l=me.listeners[index];if(l.task){l.task.cancel();delete l.task;} -k=l.tasks&&l.tasks.length;if(k){while(k--){l.tasks[k].cancel();} -delete l.tasks;} -me.listeners.splice(index,1);ret=TRUE;} -return ret;},clearListeners:function(){var me=this,l=me.listeners,i=l.length;while(i--){me.removeListener(l[i].fn,l[i].scope);}},fire:function(){var me=this,listeners=me.listeners,len=listeners.length,i=0,l;if(len>0){me.firing=TRUE;var args=Array.prototype.slice.call(arguments,0);for(;i<len;i++){l=listeners[i];if(l&&l.fireFn.apply(l.scope||me.obj||window,args)===FALSE){return(me.firing=FALSE);}}} -me.firing=FALSE;return TRUE;}};})();Ext.DomHelper=function(){var tempTableEl=null,emptyTags=/^(?:br|frame|hr|img|input|link|meta|range|spacer|wbr|area|param|col)$/i,tableRe=/^table|tbody|tr|td$/i,confRe=/tag|children|cn|html$/i,tableElRe=/td|tr|tbody/i,cssRe=/([a-z0-9-]+)\s*:\s*([^;\s]+(?:\s*[^;\s]+)*);?/gi,endRe=/end/i,pub,afterbegin='afterbegin',afterend='afterend',beforebegin='beforebegin',beforeend='beforeend',ts='<table>',te='</table>',tbs=ts+'<tbody>',tbe='</tbody>'+te,trs=tbs+'<tr>',tre='</tr>'+tbe;function doInsert(el,o,returnElement,pos,sibling,append){var newNode=pub.insertHtml(pos,Ext.getDom(el),createHtml(o));return returnElement?Ext.get(newNode,true):newNode;} -function createHtml(o){var b='',attr,val,key,cn;if(typeof o=="string"){b=o;}else if(Ext.isArray(o)){for(var i=0;i<o.length;i++){if(o[i]){b+=createHtml(o[i]);}};}else{b+='<'+(o.tag=o.tag||'div');for(attr in o){val=o[attr];if(!confRe.test(attr)){if(typeof val=="object"){b+=' '+attr+'="';for(key in val){b+=key+':'+val[key]+';';};b+='"';}else{b+=' '+({cls:'class',htmlFor:'for'}[attr]||attr)+'="'+val+'"';}}};if(emptyTags.test(o.tag)){b+='/>';}else{b+='>';if((cn=o.children||o.cn)){b+=createHtml(cn);}else if(o.html){b+=o.html;} -b+='</'+o.tag+'>';}} -return b;} -function ieTable(depth,s,h,e){tempTableEl.innerHTML=[s,h,e].join('');var i=-1,el=tempTableEl,ns;while(++i<depth){el=el.firstChild;} -if(ns=el.nextSibling){var df=document.createDocumentFragment();while(el){ns=el.nextSibling;df.appendChild(el);el=ns;} -el=df;} -return el;} -function insertIntoTable(tag,where,el,html){var node,before;tempTableEl=tempTableEl||document.createElement('div');if(tag=='td'&&(where==afterbegin||where==beforeend)||!tableElRe.test(tag)&&(where==beforebegin||where==afterend)){return;} -before=where==beforebegin?el:where==afterend?el.nextSibling:where==afterbegin?el.firstChild:null;if(where==beforebegin||where==afterend){el=el.parentNode;} -if(tag=='td'||(tag=='tr'&&(where==beforeend||where==afterbegin))){node=ieTable(4,trs,html,tre);}else if((tag=='tbody'&&(where==beforeend||where==afterbegin))||(tag=='tr'&&(where==beforebegin||where==afterend))){node=ieTable(3,tbs,html,tbe);}else{node=ieTable(2,ts,html,te);} -el.insertBefore(node,before);return node;} -pub={markup:function(o){return createHtml(o);},applyStyles:function(el,styles){if(styles){var matches;el=Ext.fly(el);if(typeof styles=="function"){styles=styles.call();} -if(typeof styles=="string"){cssRe.lastIndex=0;while((matches=cssRe.exec(styles))){el.setStyle(matches[1],matches[2]);}}else if(typeof styles=="object"){el.setStyle(styles);}}},insertHtml:function(where,el,html){var hash={},hashVal,setStart,range,frag,rangeEl,rs;where=where.toLowerCase();hash[beforebegin]=['BeforeBegin','previousSibling'];hash[afterend]=['AfterEnd','nextSibling'];if(el.insertAdjacentHTML){if(tableRe.test(el.tagName)&&(rs=insertIntoTable(el.tagName.toLowerCase(),where,el,html))){return rs;} -hash[afterbegin]=['AfterBegin','firstChild'];hash[beforeend]=['BeforeEnd','lastChild'];if((hashVal=hash[where])){el.insertAdjacentHTML(hashVal[0],html);return el[hashVal[1]];}}else{range=el.ownerDocument.createRange();setStart='setStart'+(endRe.test(where)?'After':'Before');if(hash[where]){range[setStart](el);frag=range.createContextualFragment(html);el.parentNode.insertBefore(frag,where==beforebegin?el:el.nextSibling);return el[(where==beforebegin?'previous':'next')+'Sibling'];}else{rangeEl=(where==afterbegin?'first':'last')+'Child';if(el.firstChild){range[setStart](el[rangeEl]);frag=range.createContextualFragment(html);if(where==afterbegin){el.insertBefore(frag,el.firstChild);}else{el.appendChild(frag);}}else{el.innerHTML=html;} -return el[rangeEl];}} -throw'Illegal insertion point -> "'+where+'"';},insertBefore:function(el,o,returnElement){return doInsert(el,o,returnElement,beforebegin);},insertAfter:function(el,o,returnElement){return doInsert(el,o,returnElement,afterend,'nextSibling');},insertFirst:function(el,o,returnElement){return doInsert(el,o,returnElement,afterbegin,'firstChild');},append:function(el,o,returnElement){return doInsert(el,o,returnElement,beforeend,'',true);},overwrite:function(el,o,returnElement){el=Ext.getDom(el);el.innerHTML=createHtml(o);return returnElement?Ext.get(el.firstChild):el.firstChild;},createHtml:createHtml};return pub;}();Ext.Template=function(html){var me=this,a=arguments,buf=[],v;if(Ext.isArray(html)){html=html.join("");}else if(a.length>1){for(var i=0,len=a.length;i<len;i++){v=a[i];if(typeof v=='object'){Ext.apply(me,v);}else{buf.push(v);}};html=buf.join('');} -me.html=html;if(me.compiled){me.compile();}};Ext.Template.prototype={re:/\{([\w-]+)\}/g,applyTemplate:function(values){var me=this;return me.compiled?me.compiled(values):me.html.replace(me.re,function(m,name){return values[name]!==undefined?values[name]:"";});},set:function(html,compile){var me=this;me.html=html;me.compiled=null;return compile?me.compile():me;},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(el,values,returnElement){return this.doInsert('afterBegin',el,values,returnElement);},insertBefore:function(el,values,returnElement){return this.doInsert('beforeBegin',el,values,returnElement);},insertAfter:function(el,values,returnElement){return this.doInsert('afterEnd',el,values,returnElement);},append:function(el,values,returnElement){return this.doInsert('beforeEnd',el,values,returnElement);},doInsert:function(where,el,values,returnEl){el=Ext.getDom(el);var newNode=Ext.DomHelper.insertHtml(where,el,this.applyTemplate(values));return returnEl?Ext.get(newNode,true):newNode;},overwrite:function(el,values,returnElement){el=Ext.getDom(el);el.innerHTML=this.applyTemplate(values);return returnElement?Ext.get(el.firstChild,true):el.firstChild;}};Ext.Template.prototype.apply=Ext.Template.prototype.applyTemplate;Ext.Template.from=function(el,config){el=Ext.getDom(el);return new Ext.Template(el.value||el.innerHTML,config||'');};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(parent,index){var i=0,n=parent.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(parent){var n=parent.firstChild,nodeIndex=-1,nextNode;while(n){nextNode=n.nextSibling;if(n.nodeType==3&&!nonSpace.test(n.nodeValue)){parent.removeChild(n);}else{n.nodeIndex=++nodeIndex;} -n=nextNode;} -return this;} -function byClassName(nodeSet,cls){if(!cls){return nodeSet;} -var result=[],ri=-1;for(var i=0,ci;ci=nodeSet[i];i++){if((' '+ci.className+' ').indexOf(cls)!=-1){result[++ri]=ci;}} -return result;};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.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=="~"){var utag=tagName.toUpperCase();for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)){if(n.nodeName==utag||n.nodeName==tagName||tagName=='*'){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 result=[],ri=-1;tagName=tagName.toLowerCase();for(var i=0,ci;ci=cs[i];i++){if(ci.nodeType==1&&ci.tagName.toLowerCase()==tagName){result[++ri]=ci;}} -return result;} -function byId(cs,id){if(cs.tagName||cs==document){cs=[cs];} -if(!id){return cs;} -var result=[],ri=-1;for(var i=0,ci;ci=cs[i];i++){if(ci&&ci.id==id){result[++ri]=ci;return result;}} -return result;} -function byAttribute(cs,attr,value,op,custom){var result=[],ri=-1,useGetStyle=custom=="{",fn=Ext.DomQuery.operators[op],a,xml,hasXml;for(var i=0,ci;ci=cs[i];i++){if(ci.nodeType!=1){continue;} -if(!hasXml){xml=Ext.DomQuery.isXml(ci);hasXml=true;} -if(!xml){if(useGetStyle){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);}}else{a=ci.getAttribute(attr);} -if((fn&&fn(a,value))||(!fn&&a)){result[++ri]=ci;}} -return result;} -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&&typeof c1[0].selectSingleNode!="undefined"){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,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"],mode,lastPath,matchers=Ext.DomQuery.matchers,matchersLn=matchers.length,modeMatch,lmode=path.match(modeRe);if(lmode&&lmode[1]){fn[fn.length]='mode="'+lmode[1].replace(trimRe,"")+'";';path=path.replace(lmode[1],"");} -while(path.substr(0,1)=="/"){path=path.substr(1);} -while(path&&lastPath!=path){lastPath=path;var tokenMatch=path.match(tagTokenRe);if(type=="select"){if(tokenMatch){if(tokenMatch[1]=="#"){fn[fn.length]='n = quickId(n, mode, root, "'+tokenMatch[2]+'");';}else{fn[fn.length]='n = getNodes(n, mode, "'+tokenMatch[2]+'");';} -path=path.replace(tokenMatch[0],"");}else if(path.substr(0,1)!='@'){fn[fn.length]='n = getNodes(n, mode, "*");';}}else{if(tokenMatch){if(tokenMatch[1]=="#"){fn[fn.length]='n = byId(n, "'+tokenMatch[2]+'");';}else{fn[fn.length]='n = byTag(n, "'+tokenMatch[2]+'");';} -path=path.replace(tokenMatch[0],"");}} -while(!(modeMatch=path.match(modeRe))){var matched=false;for(var j=0;j<matchersLn;j++){var t=matchers[j];var m=path.match(t.re);if(m){fn[fn.length]=t.select.replace(tplRe,function(x,i){return m[i];});path=path.replace(m[0],"");matched=true;break;}} -if(!matched){throw'Error parsing selector, parsing failed at "'+path+'"';}} -if(modeMatch[1]){fn[fn.length]='mode="'+modeMatch[1].replace(trimRe,"")+'";';path=path.replace(modeMatch[1],"");}} -fn[fn.length]="return nodup(n);\n}";eval(fn.join(""));return f;},jsSelect:function(path,root,type){root=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 subPath=paths[i].replace(trimRe,"");if(!cache[subPath]){cache[subPath]=Ext.DomQuery.compile(subPath);if(!cache[subPath]){throw subPath+" is not a valid selector";}} -var result=cache[subPath](root);if(result&&result!=document){results=results.concat(result);}} -if(paths.length>1){return nodup(results);} -return results;},isXml:function(el){var docEl=(el?el.ownerDocument||el:0).documentElement;return docEl?docEl.nodeName!=="HTML":false;},select:document.querySelectorAll?function(path,root,type){root=root||document;if(!Ext.DomQuery.isXml(root)){try{var cs=root.querySelectorAll(path);return Ext.toArray(cs);} -catch(ex){}} -return Ext.DomQuery.jsSelect.call(this,path,root,type);}:function(path,root,type){return Ext.DomQuery.jsSelect.call(this,path,root,type);},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;if(typeof n.normalize=='function')n.normalize();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, " {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, "{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;Ext.util.DelayedTask=function(fn,scope,args){var me=this,id,call=function(){clearInterval(id);id=null;fn.apply(scope,args||[]);};me.delay=function(delay,newFn,newScope,newArgs){me.cancel();fn=newFn||fn;scope=newScope||scope;args=newArgs||args;id=setInterval(call,delay);};me.cancel=function(){if(id){clearInterval(id);id=null;}};};(function(){var DOC=document;Ext.Element=function(element,forceNew){var dom=typeof element=="string"?DOC.getElementById(element):element,id;if(!dom)return null;id=dom.id;if(!forceNew&&id&&Ext.elCache[id]){return Ext.elCache[id].el;} -this.dom=dom;this.id=id||Ext.id(dom);};var DH=Ext.DomHelper,El=Ext.Element,EC=Ext.elCache;El.prototype={set:function(o,useSet){var el=this.dom,attr,val,useSet=(useSet!==false)&&!!el.setAttribute;for(attr in o){if(o.hasOwnProperty(attr)){val=o[attr];if(attr=='style'){DH.applyStyles(el,val);}else if(attr=='cls'){el.className=val;}else if(useSet){el.setAttribute(attr,val);}else{el[attr]=val;}}} -return this;},defaultUnit:"px",is:function(simpleSelector){return Ext.DomQuery.is(this.dom,simpleSelector);},focus:function(defer,dom){var me=this,dom=dom||me.dom;try{if(Number(defer)){me.focus.defer(defer,null,[null,dom]);}else{dom.focus();}}catch(e){} -return me;},blur:function(){try{this.dom.blur();}catch(e){} -return this;},getValue:function(asNumber){var val=this.dom.value;return asNumber?parseInt(val,10):val;},addListener:function(eventName,fn,scope,options){Ext.EventManager.on(this.dom,eventName,fn,scope||this,options);return this;},removeListener:function(eventName,fn,scope){Ext.EventManager.removeListener(this.dom,eventName,fn,scope||this);return this;},removeAllListeners:function(){Ext.EventManager.removeAll(this.dom);return this;},purgeAllListeners:function(){Ext.EventManager.purgeElement(this,true);return this;},addUnits:function(size){if(size===""||size=="auto"||size===undefined){size=size||'';}else if(!isNaN(size)||!unitPattern.test(size)){size=size+(this.defaultUnit||'px');} -return size;},load:function(url,params,cb){Ext.Ajax.request(Ext.apply({params:params,url:url.url||url,callback:cb,el:this.dom,indicatorText:url.indicatorText||''},Ext.isObject(url)?url:{}));return this;},isBorderBox:function(){return Ext.isBorderBox||Ext.isForcedBorderBox||noBoxAdjust[(this.dom.tagName||"").toLowerCase()];},remove:function(){var me=this,dom=me.dom;if(dom){delete me.dom;Ext.removeNode(dom);}},hover:function(overFn,outFn,scope,options){var me=this;me.on('mouseenter',overFn,scope||me.dom,options);me.on('mouseleave',outFn,scope||me.dom,options);return me;},contains:function(el){return!el?false:Ext.lib.Dom.isAncestor(this.dom,el.dom?el.dom:el);},getAttributeNS:function(ns,name){return this.getAttribute(name,ns);},getAttribute:Ext.isIE?function(name,ns){var d=this.dom,type=typeof d[ns+":"+name];if(['undefined','unknown'].indexOf(type)==-1){return d[ns+":"+name];} -return d[name];}:function(name,ns){var d=this.dom;return d.getAttributeNS(ns,name)||d.getAttribute(ns+":"+name)||d.getAttribute(name)||d[name];},update:function(html){if(this.dom){this.dom.innerHTML=html;} -return this;}};var ep=El.prototype;El.addMethods=function(o){Ext.apply(ep,o);};ep.on=ep.addListener;ep.un=ep.removeListener;ep.autoBoxAdjust=true;var unitPattern=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i,docEl;El.get=function(el){var ex,elm,id;if(!el){return null;} -if(typeof el=="string"){if(!(elm=DOC.getElementById(el))){return null;} -if(EC[el]&&EC[el].el){ex=EC[el].el;ex.dom=elm;}else{ex=El.addToCache(new El(elm));} -return ex;}else if(el.tagName){if(!(id=el.id)){id=Ext.id(el);} -if(EC[id]&&EC[id].el){ex=EC[id].el;ex.dom=el;}else{ex=El.addToCache(new El(el));} -return ex;}else if(el instanceof El){if(el!=docEl){if(Ext.isIE&&(el.id==undefined||el.id=='')){el.dom=el.dom;}else{el.dom=DOC.getElementById(el.id)||el.dom;}} -return el;}else if(el.isComposite){return el;}else if(Ext.isArray(el)){return El.select(el);}else if(el==DOC){if(!docEl){var f=function(){};f.prototype=El.prototype;docEl=new f();docEl.dom=DOC;} -return docEl;} -return null;};El.addToCache=function(el,id){id=id||el.id;EC[id]={el:el,data:{},events:{}};return el;};El.data=function(el,key,value){el=El.get(el);if(!el){return null;} -var c=EC[el.id].data;if(arguments.length==2){return c[key];}else{return(c[key]=value);}};function garbageCollect(){if(!Ext.enableGarbageCollector){clearInterval(El.collectorThreadId);}else{var eid,el,d,o;for(eid in EC){o=EC[eid];if(o.skipGC){continue;} -el=o.el;d=el.dom;if(!d||!d.parentNode||(!d.offsetParent&&!DOC.getElementById(eid))){if(Ext.enableListenerCollection){Ext.EventManager.removeAll(d);} -delete EC[eid];}} -if(Ext.isIE){var t={};for(eid in EC){t[eid]=EC[eid];} -EC=Ext.elCache=t;}}} -El.collectorThreadId=setInterval(garbageCollect,30000);var flyFn=function(){};flyFn.prototype=El.prototype;El.Flyweight=function(dom){this.dom=dom;};El.Flyweight.prototype=new flyFn();El.Flyweight.prototype.isFlyweight=true;El._flyweights={};El.fly=function(el,named){var ret=null;named=named||'_global';if(el=Ext.getDom(el)){(El._flyweights[named]=El._flyweights[named]||new El.Flyweight()).dom=el;ret=El._flyweights[named];} -return ret;};Ext.get=El.get;Ext.fly=El.fly;var noBoxAdjust=Ext.isStrict?{select:1}:{input:1,select:1,textarea:1};if(Ext.isIE||Ext.isGecko){noBoxAdjust['button']=1;}})();Ext.Element.addMethods(function(){var PARENTNODE='parentNode',NEXTSIBLING='nextSibling',PREVIOUSSIBLING='previousSibling',DQ=Ext.DomQuery,GET=Ext.get;return{findParent:function(simpleSelector,maxDepth,returnEl){var p=this.dom,b=document.body,depth=0,stopEl;if(Ext.isGecko&&Object.prototype.toString.call(p)=='[object XULElement]'){return null;} -maxDepth=maxDepth||50;if(isNaN(maxDepth)){stopEl=Ext.getDom(maxDepth);maxDepth=Number.MAX_VALUE;} -while(p&&p.nodeType==1&&depth<maxDepth&&p!=b&&p!=stopEl){if(DQ.is(p,simpleSelector)){return returnEl?GET(p):p;} -depth++;p=p.parentNode;} -return null;},findParentNode:function(simpleSelector,maxDepth,returnEl){var p=Ext.fly(this.dom.parentNode,'_internal');return p?p.findParent(simpleSelector,maxDepth,returnEl):null;},up:function(simpleSelector,maxDepth){return this.findParentNode(simpleSelector,maxDepth,true);},select:function(selector){return Ext.Element.select(selector,this.dom);},query:function(selector){return DQ.select(selector,this.dom);},child:function(selector,returnDom){var n=DQ.selectNode(selector,this.dom);return returnDom?n:GET(n);},down:function(selector,returnDom){var n=DQ.selectNode(" > "+selector,this.dom);return returnDom?n:GET(n);},parent:function(selector,returnDom){return this.matchNode(PARENTNODE,PARENTNODE,selector,returnDom);},next:function(selector,returnDom){return this.matchNode(NEXTSIBLING,NEXTSIBLING,selector,returnDom);},prev:function(selector,returnDom){return this.matchNode(PREVIOUSSIBLING,PREVIOUSSIBLING,selector,returnDom);},first:function(selector,returnDom){return this.matchNode(NEXTSIBLING,'firstChild',selector,returnDom);},last:function(selector,returnDom){return this.matchNode(PREVIOUSSIBLING,'lastChild',selector,returnDom);},matchNode:function(dir,start,selector,returnDom){var n=this.dom[start];while(n){if(n.nodeType==1&&(!selector||DQ.is(n,selector))){return!returnDom?GET(n):n;} -n=n[dir];} -return null;}};}());Ext.Element.addMethods(function(){var GETDOM=Ext.getDom,GET=Ext.get,DH=Ext.DomHelper;return{appendChild:function(el){return GET(el).appendTo(this);},appendTo:function(el){GETDOM(el).appendChild(this.dom);return this;},insertBefore:function(el){(el=GETDOM(el)).parentNode.insertBefore(this.dom,el);return this;},insertAfter:function(el){(el=GETDOM(el)).parentNode.insertBefore(this.dom,el.nextSibling);return this;},insertFirst:function(el,returnDom){el=el||{};if(el.nodeType||el.dom||typeof el=='string'){el=GETDOM(el);this.dom.insertBefore(el,this.dom.firstChild);return!returnDom?GET(el):el;}else{return this.createChild(el,this.dom.firstChild,returnDom);}},replace:function(el){el=GET(el);this.insertBefore(el);el.remove();return this;},replaceWith:function(el){var me=this;if(el.nodeType||el.dom||typeof el=='string'){el=GETDOM(el);me.dom.parentNode.insertBefore(el,me.dom);}else{el=DH.insertBefore(me.dom,el);} -delete Ext.elCache[me.id];Ext.removeNode(me.dom);me.id=Ext.id(me.dom=el);Ext.Element.addToCache(me.isFlyweight?new Ext.Element(me.dom):me);return me;},createChild:function(config,insertBefore,returnDom){config=config||{tag:'div'};return insertBefore?DH.insertBefore(insertBefore,config,returnDom!==true):DH[!this.dom.firstChild?'overwrite':'append'](this.dom,config,returnDom!==true);},wrap:function(config,returnDom){var newEl=DH.insertBefore(this.dom,config||{tag:"div"},!returnDom);newEl.dom?newEl.dom.appendChild(this.dom):newEl.appendChild(this.dom);return newEl;},insertHtml:function(where,html,returnEl){var el=DH.insertHtml(where,this.dom,html);return returnEl?Ext.get(el):el;}};}());Ext.Element.addMethods(function(){var supports=Ext.supports,propCache={},camelRe=/(-[a-z])/gi,view=document.defaultView,opacityRe=/alpha\(opacity=(.*)\)/i,trimRe=/^\s+|\s+$/g,EL=Ext.Element,spacesRe=/\s+/,wordsRe=/\w/g,PADDING="padding",MARGIN="margin",BORDER="border",LEFT="-left",RIGHT="-right",TOP="-top",BOTTOM="-bottom",WIDTH="-width",MATH=Math,HIDDEN='hidden',ISCLIPPED='isClipped',OVERFLOW='overflow',OVERFLOWX='overflow-x',OVERFLOWY='overflow-y',ORIGINALCLIP='originalClip',borders={l:BORDER+LEFT+WIDTH,r:BORDER+RIGHT+WIDTH,t:BORDER+TOP+WIDTH,b:BORDER+BOTTOM+WIDTH},paddings={l:PADDING+LEFT,r:PADDING+RIGHT,t:PADDING+TOP,b:PADDING+BOTTOM},margins={l:MARGIN+LEFT,r:MARGIN+RIGHT,t:MARGIN+TOP,b:MARGIN+BOTTOM},data=Ext.Element.data;function camelFn(m,a){return a.charAt(1).toUpperCase();} -function chkCache(prop){return propCache[prop]||(propCache[prop]=prop=='float'?(supports.cssFloat?'cssFloat':'styleFloat'):prop.replace(camelRe,camelFn));} -return{adjustWidth:function(width){var me=this;var isNum=(typeof width=="number");if(isNum&&me.autoBoxAdjust&&!me.isBorderBox()){width-=(me.getBorderWidth("lr")+me.getPadding("lr"));} -return(isNum&&width<0)?0:width;},adjustHeight:function(height){var me=this;var isNum=(typeof height=="number");if(isNum&&me.autoBoxAdjust&&!me.isBorderBox()){height-=(me.getBorderWidth("tb")+me.getPadding("tb"));} -return(isNum&&height<0)?0:height;},addClass:function(className){var me=this,i,len,v,cls=[];if(!Ext.isArray(className)){if(typeof className=='string'&&!this.hasClass(className)){me.dom.className+=" "+className;}} -else{for(i=0,len=className.length;i<len;i++){v=className[i];if(typeof v=='string'&&(' '+me.dom.className+' ').indexOf(' '+v+' ')==-1){cls.push(v);}} -if(cls.length){me.dom.className+=" "+cls.join(" ");}} -return me;},removeClass:function(className){var me=this,i,idx,len,cls,elClasses;if(!Ext.isArray(className)){className=[className];} -if(me.dom&&me.dom.className){elClasses=me.dom.className.replace(trimRe,'').split(spacesRe);for(i=0,len=className.length;i<len;i++){cls=className[i];if(typeof cls=='string'){cls=cls.replace(trimRe,'');idx=elClasses.indexOf(cls);if(idx!=-1){elClasses.splice(idx,1);}}} -me.dom.className=elClasses.join(" ");} -return me;},radioClass:function(className){var cn=this.dom.parentNode.childNodes,v,i,len;className=Ext.isArray(className)?className:[className];for(i=0,len=cn.length;i<len;i++){v=cn[i];if(v&&v.nodeType==1){Ext.fly(v,'_internal').removeClass(className);}};return this.addClass(className);},toggleClass:function(className){return this.hasClass(className)?this.removeClass(className):this.addClass(className);},hasClass:function(className){return className&&(' '+this.dom.className+' ').indexOf(' '+className+' ')!=-1;},replaceClass:function(oldClassName,newClassName){return this.removeClass(oldClassName).addClass(newClassName);},isStyle:function(style,val){return this.getStyle(style)==val;},getStyle:function(){return view&&view.getComputedStyle?function(prop){var el=this.dom,v,cs,out,display;if(el==document){return null;} -prop=chkCache(prop);out=(v=el.style[prop])?v:(cs=view.getComputedStyle(el,""))?cs[prop]:null;if(prop=='marginRight'&&out!='0px'&&!supports.correctRightMargin){display=el.style.display;el.style.display='inline-block';out=view.getComputedStyle(el,'').marginRight;el.style.display=display;} -if(prop=='backgroundColor'&&out=='rgba(0, 0, 0, 0)'&&!supports.correctTransparentColor){out='transparent';} -return out;}:function(prop){var el=this.dom,m,cs;if(el==document)return null;if(prop=='opacity'){if(el.style.filter.match){if(m=el.style.filter.match(opacityRe)){var fv=parseFloat(m[1]);if(!isNaN(fv)){return fv?fv/100:0;}}} -return 1;} -prop=chkCache(prop);return el.style[prop]||((cs=el.currentStyle)?cs[prop]:null);};}(),getColor:function(attr,defaultValue,prefix){var v=this.getStyle(attr),color=(typeof prefix!='undefined')?prefix:'#',h;if(!v||(/transparent|inherit/.test(v))){return defaultValue;} -if(/^r/.test(v)){Ext.each(v.slice(4,v.length-1).split(','),function(s){h=parseInt(s,10);color+=(h<16?'0':'')+h.toString(16);});}else{v=v.replace('#','');color+=v.length==3?v.replace(/^(\w)(\w)(\w)$/,'$1$1$2$2$3$3'):v;} -return(color.length>5?color.toLowerCase():defaultValue);},setStyle:function(prop,value){var tmp,style;if(typeof prop!='object'){tmp={};tmp[prop]=value;prop=tmp;} -for(style in prop){value=prop[style];style=='opacity'?this.setOpacity(value):this.dom.style[chkCache(style)]=value;} -return this;},setOpacity:function(opacity,animate){var me=this,s=me.dom.style;if(!animate||!me.anim){if(Ext.isIE){var opac=opacity<1?'alpha(opacity='+opacity*100+')':'',val=s.filter.replace(opacityRe,'').replace(trimRe,'');s.zoom=1;s.filter=val+(val.length>0?' ':'')+opac;}else{s.opacity=opacity;}}else{me.anim({opacity:{to:opacity}},me.preanim(arguments,1),null,.35,'easeIn');} -return me;},clearOpacity:function(){var style=this.dom.style;if(Ext.isIE){if(!Ext.isEmpty(style.filter)){style.filter=style.filter.replace(opacityRe,'').replace(trimRe,'');}}else{style.opacity=style['-moz-opacity']=style['-khtml-opacity']='';} -return this;},getHeight:function(contentHeight){var me=this,dom=me.dom,hidden=Ext.isIE&&me.isStyle('display','none'),h=MATH.max(dom.offsetHeight,hidden?0:dom.clientHeight)||0;h=!contentHeight?h:h-me.getBorderWidth("tb")-me.getPadding("tb");return h<0?0:h;},getWidth:function(contentWidth){var me=this,dom=me.dom,hidden=Ext.isIE&&me.isStyle('display','none'),w=MATH.max(dom.offsetWidth,hidden?0:dom.clientWidth)||0;w=!contentWidth?w:w-me.getBorderWidth("lr")-me.getPadding("lr");return w<0?0:w;},setWidth:function(width,animate){var me=this;width=me.adjustWidth(width);!animate||!me.anim?me.dom.style.width=me.addUnits(width):me.anim({width:{to:width}},me.preanim(arguments,1));return me;},setHeight:function(height,animate){var me=this;height=me.adjustHeight(height);!animate||!me.anim?me.dom.style.height=me.addUnits(height):me.anim({height:{to:height}},me.preanim(arguments,1));return me;},getBorderWidth:function(side){return this.addStyles(side,borders);},getPadding:function(side){return this.addStyles(side,paddings);},clip:function(){var me=this,dom=me.dom;if(!data(dom,ISCLIPPED)){data(dom,ISCLIPPED,true);data(dom,ORIGINALCLIP,{o:me.getStyle(OVERFLOW),x:me.getStyle(OVERFLOWX),y:me.getStyle(OVERFLOWY)});me.setStyle(OVERFLOW,HIDDEN);me.setStyle(OVERFLOWX,HIDDEN);me.setStyle(OVERFLOWY,HIDDEN);} -return me;},unclip:function(){var me=this,dom=me.dom;if(data(dom,ISCLIPPED)){data(dom,ISCLIPPED,false);var o=data(dom,ORIGINALCLIP);if(o.o){me.setStyle(OVERFLOW,o.o);} -if(o.x){me.setStyle(OVERFLOWX,o.x);} -if(o.y){me.setStyle(OVERFLOWY,o.y);}} -return me;},addStyles:function(sides,styles){var ttlSize=0,sidesArr=sides.match(wordsRe),side,size,i,len=sidesArr.length;for(i=0;i<len;i++){side=sidesArr[i];size=side&&parseInt(this.getStyle(styles[side]),10);if(size){ttlSize+=MATH.abs(size);}} -return ttlSize;},margins:margins};}());(function(){var D=Ext.lib.Dom,LEFT="left",RIGHT="right",TOP="top",BOTTOM="bottom",POSITION="position",STATIC="static",RELATIVE="relative",AUTO="auto",ZINDEX="z-index";Ext.Element.addMethods({getX:function(){return D.getX(this.dom);},getY:function(){return D.getY(this.dom);},getXY:function(){return D.getXY(this.dom);},getOffsetsTo:function(el){var o=this.getXY(),e=Ext.fly(el,'_internal').getXY();return[o[0]-e[0],o[1]-e[1]];},setX:function(x,animate){return this.setXY([x,this.getY()],this.animTest(arguments,animate,1));},setY:function(y,animate){return this.setXY([this.getX(),y],this.animTest(arguments,animate,1));},setLeft:function(left){this.setStyle(LEFT,this.addUnits(left));return this;},setTop:function(top){this.setStyle(TOP,this.addUnits(top));return this;},setRight:function(right){this.setStyle(RIGHT,this.addUnits(right));return this;},setBottom:function(bottom){this.setStyle(BOTTOM,this.addUnits(bottom));return this;},setXY:function(pos,animate){var me=this;if(!animate||!me.anim){D.setXY(me.dom,pos);}else{me.anim({points:{to:pos}},me.preanim(arguments,1),'motion');} -return me;},setLocation:function(x,y,animate){return this.setXY([x,y],this.animTest(arguments,animate,2));},moveTo:function(x,y,animate){return this.setXY([x,y],this.animTest(arguments,animate,2));},getLeft:function(local){return!local?this.getX():parseInt(this.getStyle(LEFT),10)||0;},getRight:function(local){var me=this;return!local?me.getX()+me.getWidth():(me.getLeft(true)+me.getWidth())||0;},getTop:function(local){return!local?this.getY():parseInt(this.getStyle(TOP),10)||0;},getBottom:function(local){var me=this;return!local?me.getY()+me.getHeight():(me.getTop(true)+me.getHeight())||0;},position:function(pos,zIndex,x,y){var me=this;if(!pos&&me.isStyle(POSITION,STATIC)){me.setStyle(POSITION,RELATIVE);}else if(pos){me.setStyle(POSITION,pos);} -if(zIndex){me.setStyle(ZINDEX,zIndex);} -if(x||y)me.setXY([x||false,y||false]);},clearPositioning:function(value){value=value||'';this.setStyle({left:value,right:value,top:value,bottom:value,"z-index":"",position:STATIC});return this;},getPositioning:function(){var l=this.getStyle(LEFT);var t=this.getStyle(TOP);return{"position":this.getStyle(POSITION),"left":l,"right":l?"":this.getStyle(RIGHT),"top":t,"bottom":t?"":this.getStyle(BOTTOM),"z-index":this.getStyle(ZINDEX)};},setPositioning:function(pc){var me=this,style=me.dom.style;me.setStyle(pc);if(pc.right==AUTO){style.right="";} -if(pc.bottom==AUTO){style.bottom="";} -return me;},translatePoints:function(x,y){y=isNaN(x[1])?y:x[1];x=isNaN(x[0])?x:x[0];var me=this,relative=me.isStyle(POSITION,RELATIVE),o=me.getXY(),l=parseInt(me.getStyle(LEFT),10),t=parseInt(me.getStyle(TOP),10);l=!isNaN(l)?l:(relative?0:me.dom.offsetLeft);t=!isNaN(t)?t:(relative?0:me.dom.offsetTop);return{left:(x-o[0]+l),top:(y-o[1]+t)};},animTest:function(args,animate,i){return!!animate&&this.preanim?this.preanim(args,i):false;}});})();Ext.Element.addMethods({isScrollable:function(){var dom=this.dom;return dom.scrollHeight>dom.clientHeight||dom.scrollWidth>dom.clientWidth;},scrollTo:function(side,value){this.dom["scroll"+(/top/i.test(side)?"Top":"Left")]=value;return this;},getScroll:function(){var d=this.dom,doc=document,body=doc.body,docElement=doc.documentElement,l,t,ret;if(d==doc||d==body){if(Ext.isIE&&Ext.isStrict){l=docElement.scrollLeft;t=docElement.scrollTop;}else{l=window.pageXOffset;t=window.pageYOffset;} -ret={left:l||(body?body.scrollLeft:0),top:t||(body?body.scrollTop:0)};}else{ret={left:d.scrollLeft,top:d.scrollTop};} -return ret;}});Ext.Element.VISIBILITY=1;Ext.Element.DISPLAY=2;Ext.Element.OFFSETS=3;Ext.Element.ASCLASS=4;Ext.Element.visibilityCls='x-hide-nosize';Ext.Element.addMethods(function(){var El=Ext.Element,OPACITY="opacity",VISIBILITY="visibility",DISPLAY="display",HIDDEN="hidden",OFFSETS="offsets",ASCLASS="asclass",NONE="none",NOSIZE='nosize',ORIGINALDISPLAY='originalDisplay',VISMODE='visibilityMode',ISVISIBLE='isVisible',data=El.data,getDisplay=function(dom){var d=data(dom,ORIGINALDISPLAY);if(d===undefined){data(dom,ORIGINALDISPLAY,d='');} -return d;},getVisMode=function(dom){var m=data(dom,VISMODE);if(m===undefined){data(dom,VISMODE,m=1);} -return m;};return{originalDisplay:"",visibilityMode:1,setVisibilityMode:function(visMode){data(this.dom,VISMODE,visMode);return this;},animate:function(args,duration,onComplete,easing,animType){this.anim(args,{duration:duration,callback:onComplete,easing:easing},animType);return this;},anim:function(args,opt,animType,defaultDur,defaultEase,cb){animType=animType||'run';opt=opt||{};var me=this,anim=Ext.lib.Anim[animType](me.dom,args,(opt.duration||defaultDur)||.35,(opt.easing||defaultEase)||'easeOut',function(){if(cb)cb.call(me);if(opt.callback)opt.callback.call(opt.scope||me,me,opt);},me);opt.anim=anim;return anim;},preanim:function(a,i){return!a[i]?false:(typeof a[i]=='object'?a[i]:{duration:a[i+1],callback:a[i+2],easing:a[i+3]});},isVisible:function(){var me=this,dom=me.dom,visible=data(dom,ISVISIBLE);if(typeof visible=='boolean'){return visible;} -visible=!me.isStyle(VISIBILITY,HIDDEN)&&!me.isStyle(DISPLAY,NONE)&&!((getVisMode(dom)==El.ASCLASS)&&me.hasClass(me.visibilityCls||El.visibilityCls));data(dom,ISVISIBLE,visible);return visible;},setVisible:function(visible,animate){var me=this,isDisplay,isVisibility,isOffsets,isNosize,dom=me.dom,visMode=getVisMode(dom);if(typeof animate=='string'){switch(animate){case DISPLAY:visMode=El.DISPLAY;break;case VISIBILITY:visMode=El.VISIBILITY;break;case OFFSETS:visMode=El.OFFSETS;break;case NOSIZE:case ASCLASS:visMode=El.ASCLASS;break;} -me.setVisibilityMode(visMode);animate=false;} -if(!animate||!me.anim){if(visMode==El.ASCLASS){me[visible?'removeClass':'addClass'](me.visibilityCls||El.visibilityCls);}else if(visMode==El.DISPLAY){return me.setDisplayed(visible);}else if(visMode==El.OFFSETS){if(!visible){me.hideModeStyles={position:me.getStyle('position'),top:me.getStyle('top'),left:me.getStyle('left')};me.applyStyles({position:'absolute',top:'-10000px',left:'-10000px'});}else{me.applyStyles(me.hideModeStyles||{position:'',top:'',left:''});delete me.hideModeStyles;}}else{me.fixDisplay();dom.style.visibility=visible?"visible":HIDDEN;}}else{if(visible){me.setOpacity(.01);me.setVisible(true);} -me.anim({opacity:{to:(visible?1:0)}},me.preanim(arguments,1),null,.35,'easeIn',function(){visible||me.setVisible(false).setOpacity(1);});} -data(dom,ISVISIBLE,visible);return me;},hasMetrics:function(){var dom=this.dom;return this.isVisible()||(getVisMode(dom)==El.VISIBILITY);},toggle:function(animate){var me=this;me.setVisible(!me.isVisible(),me.preanim(arguments,0));return me;},setDisplayed:function(value){if(typeof value=="boolean"){value=value?getDisplay(this.dom):NONE;} -this.setStyle(DISPLAY,value);return this;},fixDisplay:function(){var me=this;if(me.isStyle(DISPLAY,NONE)){me.setStyle(VISIBILITY,HIDDEN);me.setStyle(DISPLAY,getDisplay(this.dom));if(me.isStyle(DISPLAY,NONE)){me.setStyle(DISPLAY,"block");}}},hide:function(animate){if(typeof animate=='string'){this.setVisible(false,animate);return this;} -this.setVisible(false,this.preanim(arguments,0));return this;},show:function(animate){if(typeof animate=='string'){this.setVisible(true,animate);return this;} -this.setVisible(true,this.preanim(arguments,0));return this;}};}());(function(){var NULL=null,UNDEFINED=undefined,TRUE=true,FALSE=false,SETX="setX",SETY="setY",SETXY="setXY",LEFT="left",BOTTOM="bottom",TOP="top",RIGHT="right",HEIGHT="height",WIDTH="width",POINTS="points",HIDDEN="hidden",ABSOLUTE="absolute",VISIBLE="visible",MOTION="motion",POSITION="position",EASEOUT="easeOut",flyEl=new Ext.Element.Flyweight(),queues={},getObject=function(o){return o||{};},fly=function(dom){flyEl.dom=dom;flyEl.id=Ext.id(dom);return flyEl;},getQueue=function(id){if(!queues[id]){queues[id]=[];} -return queues[id];},setQueue=function(id,value){queues[id]=value;};Ext.enableFx=TRUE;Ext.Fx={switchStatements:function(key,fn,argHash){return fn.apply(this,argHash[key]);},slideIn:function(anchor,o){o=getObject(o);var me=this,dom=me.dom,st=dom.style,xy,r,b,wrap,after,st,args,pt,bw,bh;anchor=anchor||"t";me.queueFx(o,function(){xy=fly(dom).getXY();fly(dom).fixDisplay();r=fly(dom).getFxRestore();b={x:xy[0],y:xy[1],0:xy[0],1:xy[1],width:dom.offsetWidth,height:dom.offsetHeight};b.right=b.x+b.width;b.bottom=b.y+b.height;fly(dom).setWidth(b.width).setHeight(b.height);wrap=fly(dom).fxWrap(r.pos,o,HIDDEN);st.visibility=VISIBLE;st.position=ABSOLUTE;function after(){fly(dom).fxUnwrap(wrap,r.pos,o);st.width=r.width;st.height=r.height;fly(dom).afterFx(o);} -pt={to:[b.x,b.y]};bw={to:b.width};bh={to:b.height};function argCalc(wrap,style,ww,wh,sXY,sXYval,s1,s2,w,h,p){var ret={};fly(wrap).setWidth(ww).setHeight(wh);if(fly(wrap)[sXY]){fly(wrap)[sXY](sXYval);} -style[s1]=style[s2]="0";if(w){ret.width=w;} -if(h){ret.height=h;} -if(p){ret.points=p;} -return ret;};args=fly(dom).switchStatements(anchor.toLowerCase(),argCalc,{t:[wrap,st,b.width,0,NULL,NULL,LEFT,BOTTOM,NULL,bh,NULL],l:[wrap,st,0,b.height,NULL,NULL,RIGHT,TOP,bw,NULL,NULL],r:[wrap,st,b.width,b.height,SETX,b.right,LEFT,TOP,NULL,NULL,pt],b:[wrap,st,b.width,b.height,SETY,b.bottom,LEFT,TOP,NULL,bh,pt],tl:[wrap,st,0,0,NULL,NULL,RIGHT,BOTTOM,bw,bh,pt],bl:[wrap,st,0,0,SETY,b.y+b.height,RIGHT,TOP,bw,bh,pt],br:[wrap,st,0,0,SETXY,[b.right,b.bottom],LEFT,TOP,bw,bh,pt],tr:[wrap,st,0,0,SETX,b.x+b.width,LEFT,BOTTOM,bw,bh,pt]});st.visibility=VISIBLE;fly(wrap).show();arguments.callee.anim=fly(wrap).fxanim(args,o,MOTION,.5,EASEOUT,after);});return me;},slideOut:function(anchor,o){o=getObject(o);var me=this,dom=me.dom,st=dom.style,xy=me.getXY(),wrap,r,b,a,zero={to:0};anchor=anchor||"t";me.queueFx(o,function(){r=fly(dom).getFxRestore();b={x:xy[0],y:xy[1],0:xy[0],1:xy[1],width:dom.offsetWidth,height:dom.offsetHeight};b.right=b.x+b.width;b.bottom=b.y+b.height;fly(dom).setWidth(b.width).setHeight(b.height);wrap=fly(dom).fxWrap(r.pos,o,VISIBLE);st.visibility=VISIBLE;st.position=ABSOLUTE;fly(wrap).setWidth(b.width).setHeight(b.height);function after(){o.useDisplay?fly(dom).setDisplayed(FALSE):fly(dom).hide();fly(dom).fxUnwrap(wrap,r.pos,o);st.width=r.width;st.height=r.height;fly(dom).afterFx(o);} -function argCalc(style,s1,s2,p1,v1,p2,v2,p3,v3){var ret={};style[s1]=style[s2]="0";ret[p1]=v1;if(p2){ret[p2]=v2;} -if(p3){ret[p3]=v3;} -return ret;};a=fly(dom).switchStatements(anchor.toLowerCase(),argCalc,{t:[st,LEFT,BOTTOM,HEIGHT,zero],l:[st,RIGHT,TOP,WIDTH,zero],r:[st,LEFT,TOP,WIDTH,zero,POINTS,{to:[b.right,b.y]}],b:[st,LEFT,TOP,HEIGHT,zero,POINTS,{to:[b.x,b.bottom]}],tl:[st,RIGHT,BOTTOM,WIDTH,zero,HEIGHT,zero],bl:[st,RIGHT,TOP,WIDTH,zero,HEIGHT,zero,POINTS,{to:[b.x,b.bottom]}],br:[st,LEFT,TOP,WIDTH,zero,HEIGHT,zero,POINTS,{to:[b.x+b.width,b.bottom]}],tr:[st,LEFT,BOTTOM,WIDTH,zero,HEIGHT,zero,POINTS,{to:[b.right,b.y]}]});arguments.callee.anim=fly(wrap).fxanim(a,o,MOTION,.5,EASEOUT,after);});return me;},puff:function(o){o=getObject(o);var me=this,dom=me.dom,st=dom.style,width,height,r;me.queueFx(o,function(){width=fly(dom).getWidth();height=fly(dom).getHeight();fly(dom).clearOpacity();fly(dom).show();r=fly(dom).getFxRestore();function after(){o.useDisplay?fly(dom).setDisplayed(FALSE):fly(dom).hide();fly(dom).clearOpacity();fly(dom).setPositioning(r.pos);st.width=r.width;st.height=r.height;st.fontSize='';fly(dom).afterFx(o);} -arguments.callee.anim=fly(dom).fxanim({width:{to:fly(dom).adjustWidth(width*2)},height:{to:fly(dom).adjustHeight(height*2)},points:{by:[-width*.5,-height*.5]},opacity:{to:0},fontSize:{to:200,unit:"%"}},o,MOTION,.5,EASEOUT,after);});return me;},switchOff:function(o){o=getObject(o);var me=this,dom=me.dom,st=dom.style,r;me.queueFx(o,function(){fly(dom).clearOpacity();fly(dom).clip();r=fly(dom).getFxRestore();function after(){o.useDisplay?fly(dom).setDisplayed(FALSE):fly(dom).hide();fly(dom).clearOpacity();fly(dom).setPositioning(r.pos);st.width=r.width;st.height=r.height;fly(dom).afterFx(o);};fly(dom).fxanim({opacity:{to:0.3}},NULL,NULL,.1,NULL,function(){fly(dom).clearOpacity();(function(){fly(dom).fxanim({height:{to:1},points:{by:[0,fly(dom).getHeight()*.5]}},o,MOTION,0.3,'easeIn',after);}).defer(100);});});return me;},highlight:function(color,o){o=getObject(o);var me=this,dom=me.dom,attr=o.attr||"backgroundColor",a={},restore;me.queueFx(o,function(){fly(dom).clearOpacity();fly(dom).show();function after(){dom.style[attr]=restore;fly(dom).afterFx(o);} -restore=dom.style[attr];a[attr]={from:color||"ffff9c",to:o.endColor||fly(dom).getColor(attr)||"ffffff"};arguments.callee.anim=fly(dom).fxanim(a,o,'color',1,'easeIn',after);});return me;},frame:function(color,count,o){o=getObject(o);var me=this,dom=me.dom,proxy,active;me.queueFx(o,function(){color=color||'#C3DAF9';if(color.length==6){color='#'+color;} -count=count||1;fly(dom).show();var xy=fly(dom).getXY(),b={x:xy[0],y:xy[1],0:xy[0],1:xy[1],width:dom.offsetWidth,height:dom.offsetHeight},queue=function(){proxy=fly(document.body||document.documentElement).createChild({style:{position:ABSOLUTE,'z-index':35000,border:'0px solid '+color}});return proxy.queueFx({},animFn);};arguments.callee.anim={isAnimated:true,stop:function(){count=0;proxy.stopFx();}};function animFn(){var scale=Ext.isBorderBox?2:1;active=proxy.anim({top:{from:b.y,to:b.y-20},left:{from:b.x,to:b.x-20},borderWidth:{from:0,to:10},opacity:{from:1,to:0},height:{from:b.height,to:b.height+20*scale},width:{from:b.width,to:b.width+20*scale}},{duration:o.duration||1,callback:function(){proxy.remove();--count>0?queue():fly(dom).afterFx(o);}});arguments.callee.anim={isAnimated:true,stop:function(){active.stop();}};};queue();});return me;},pause:function(seconds){var dom=this.dom,t;this.queueFx({},function(){t=setTimeout(function(){fly(dom).afterFx({});},seconds*1000);arguments.callee.anim={isAnimated:true,stop:function(){clearTimeout(t);fly(dom).afterFx({});}};});return this;},fadeIn:function(o){o=getObject(o);var me=this,dom=me.dom,to=o.endOpacity||1;me.queueFx(o,function(){fly(dom).setOpacity(0);fly(dom).fixDisplay();dom.style.visibility=VISIBLE;arguments.callee.anim=fly(dom).fxanim({opacity:{to:to}},o,NULL,.5,EASEOUT,function(){if(to==1){fly(dom).clearOpacity();} -fly(dom).afterFx(o);});});return me;},fadeOut:function(o){o=getObject(o);var me=this,dom=me.dom,style=dom.style,to=o.endOpacity||0;me.queueFx(o,function(){arguments.callee.anim=fly(dom).fxanim({opacity:{to:to}},o,NULL,.5,EASEOUT,function(){if(to==0){Ext.Element.data(dom,'visibilityMode')==Ext.Element.DISPLAY||o.useDisplay?style.display="none":style.visibility=HIDDEN;fly(dom).clearOpacity();} -fly(dom).afterFx(o);});});return me;},scale:function(w,h,o){this.shift(Ext.apply({},o,{width:w,height:h}));return this;},shift:function(o){o=getObject(o);var dom=this.dom,a={};this.queueFx(o,function(){for(var prop in o){if(o[prop]!=UNDEFINED){a[prop]={to:o[prop]};}} -a.width?a.width.to=fly(dom).adjustWidth(o.width):a;a.height?a.height.to=fly(dom).adjustWidth(o.height):a;if(a.x||a.y||a.xy){a.points=a.xy||{to:[a.x?a.x.to:fly(dom).getX(),a.y?a.y.to:fly(dom).getY()]};} -arguments.callee.anim=fly(dom).fxanim(a,o,MOTION,.35,EASEOUT,function(){fly(dom).afterFx(o);});});return this;},ghost:function(anchor,o){o=getObject(o);var me=this,dom=me.dom,st=dom.style,a={opacity:{to:0},points:{}},pt=a.points,r,w,h;anchor=anchor||"b";me.queueFx(o,function(){r=fly(dom).getFxRestore();w=fly(dom).getWidth();h=fly(dom).getHeight();function after(){o.useDisplay?fly(dom).setDisplayed(FALSE):fly(dom).hide();fly(dom).clearOpacity();fly(dom).setPositioning(r.pos);st.width=r.width;st.height=r.height;fly(dom).afterFx(o);} -pt.by=fly(dom).switchStatements(anchor.toLowerCase(),function(v1,v2){return[v1,v2];},{t:[0,-h],l:[-w,0],r:[w,0],b:[0,h],tl:[-w,-h],bl:[-w,h],br:[w,h],tr:[w,-h]});arguments.callee.anim=fly(dom).fxanim(a,o,MOTION,.5,EASEOUT,after);});return me;},syncFx:function(){var me=this;me.fxDefaults=Ext.apply(me.fxDefaults||{},{block:FALSE,concurrent:TRUE,stopFx:FALSE});return me;},sequenceFx:function(){var me=this;me.fxDefaults=Ext.apply(me.fxDefaults||{},{block:FALSE,concurrent:FALSE,stopFx:FALSE});return me;},nextFx:function(){var ef=getQueue(this.dom.id)[0];if(ef){ef.call(this);}},hasActiveFx:function(){return getQueue(this.dom.id)[0];},stopFx:function(finish){var me=this,id=me.dom.id;if(me.hasActiveFx()){var cur=getQueue(id)[0];if(cur&&cur.anim){if(cur.anim.isAnimated){setQueue(id,[cur]);cur.anim.stop(finish!==undefined?finish:TRUE);}else{setQueue(id,[]);}}} -return me;},beforeFx:function(o){if(this.hasActiveFx()&&!o.concurrent){if(o.stopFx){this.stopFx();return TRUE;} -return FALSE;} -return TRUE;},hasFxBlock:function(){var q=getQueue(this.dom.id);return q&&q[0]&&q[0].block;},queueFx:function(o,fn){var me=fly(this.dom);if(!me.hasFxBlock()){Ext.applyIf(o,me.fxDefaults);if(!o.concurrent){var run=me.beforeFx(o);fn.block=o.block;getQueue(me.dom.id).push(fn);if(run){me.nextFx();}}else{fn.call(me);}} -return me;},fxWrap:function(pos,o,vis){var dom=this.dom,wrap,wrapXY;if(!o.wrap||!(wrap=Ext.getDom(o.wrap))){if(o.fixPosition){wrapXY=fly(dom).getXY();} -var div=document.createElement("div");div.style.visibility=vis;wrap=dom.parentNode.insertBefore(div,dom);fly(wrap).setPositioning(pos);if(fly(wrap).isStyle(POSITION,"static")){fly(wrap).position("relative");} -fly(dom).clearPositioning('auto');fly(wrap).clip();wrap.appendChild(dom);if(wrapXY){fly(wrap).setXY(wrapXY);}} -return wrap;},fxUnwrap:function(wrap,pos,o){var dom=this.dom;fly(dom).clearPositioning();fly(dom).setPositioning(pos);if(!o.wrap){var pn=fly(wrap).dom.parentNode;pn.insertBefore(dom,wrap);fly(wrap).remove();}},getFxRestore:function(){var st=this.dom.style;return{pos:this.getPositioning(),width:st.width,height:st.height};},afterFx:function(o){var dom=this.dom,id=dom.id;if(o.afterStyle){fly(dom).setStyle(o.afterStyle);} -if(o.afterCls){fly(dom).addClass(o.afterCls);} -if(o.remove==TRUE){fly(dom).remove();} -if(o.callback){o.callback.call(o.scope,fly(dom));} -if(!o.concurrent){getQueue(id).shift();fly(dom).nextFx();}},fxanim:function(args,opt,animType,defaultDur,defaultEase,cb){animType=animType||'run';opt=opt||{};var anim=Ext.lib.Anim[animType](this.dom,args,(opt.duration||defaultDur)||.35,(opt.easing||defaultEase)||EASEOUT,cb,this);opt.anim=anim;return anim;}};Ext.Fx.resize=Ext.Fx.scale;Ext.Element.addMethods(Ext.Fx);})();Ext.CompositeElementLite=function(els,root){this.elements=[];this.add(els,root);this.el=new Ext.Element.Flyweight();};Ext.CompositeElementLite.prototype={isComposite:true,getElement:function(el){var e=this.el;e.dom=el;e.id=el.id;return e;},transformElement:function(el){return Ext.getDom(el);},getCount:function(){return this.elements.length;},add:function(els,root){var me=this,elements=me.elements;if(!els){return this;} -if(typeof els=="string"){els=Ext.Element.selectorFunction(els,root);}else if(els.isComposite){els=els.elements;}else if(!Ext.isIterable(els)){els=[els];} -for(var i=0,len=els.length;i<len;++i){elements.push(me.transformElement(els[i]));} -return me;},invoke:function(fn,args){var me=this,els=me.elements,len=els.length,e,i;for(i=0;i<len;i++){e=els[i];if(e){Ext.Element.prototype[fn].apply(me.getElement(e),args);}} -return me;},item:function(index){var me=this,el=me.elements[index],out=null;if(el){out=me.getElement(el);} -return out;},addListener:function(eventName,handler,scope,opt){var els=this.elements,len=els.length,i,e;for(i=0;i<len;i++){e=els[i];if(e){Ext.EventManager.on(e,eventName,handler,scope||e,opt);}} -return this;},each:function(fn,scope){var me=this,els=me.elements,len=els.length,i,e;for(i=0;i<len;i++){e=els[i];if(e){e=this.getElement(e);if(fn.call(scope||e,e,me,i)===false){break;}}} -return me;},fill:function(els){var me=this;me.elements=[];me.add(els);return me;},filter:function(selector){var els=[],me=this,fn=Ext.isFunction(selector)?selector:function(el){return el.is(selector);};me.each(function(el,self,i){if(fn(el,i)!==false){els[els.length]=me.transformElement(el);}});me.elements=els;return me;},indexOf:function(el){return this.elements.indexOf(this.transformElement(el));},replaceElement:function(el,replacement,domReplace){var index=!isNaN(el)?el:this.indexOf(el),d;if(index>-1){replacement=Ext.getDom(replacement);if(domReplace){d=this.elements[index];d.parentNode.insertBefore(replacement,d);Ext.removeNode(d);} -this.elements.splice(index,1,replacement);} -return this;},clear:function(){this.elements=[];}};Ext.CompositeElementLite.prototype.on=Ext.CompositeElementLite.prototype.addListener;Ext.CompositeElementLite.importElementMethods=function(){var fnName,ElProto=Ext.Element.prototype,CelProto=Ext.CompositeElementLite.prototype;for(fnName in ElProto){if(typeof ElProto[fnName]=='function'){(function(fnName){CelProto[fnName]=CelProto[fnName]||function(){return this.invoke(fnName,arguments);};}).call(CelProto,fnName);}}};Ext.CompositeElementLite.importElementMethods();if(Ext.DomQuery){Ext.Element.selectorFunction=Ext.DomQuery.select;} -Ext.Element.select=function(selector,root){var els;if(typeof selector=="string"){els=Ext.Element.selectorFunction(selector,root);}else if(selector.length!==undefined){els=selector;}else{throw"Invalid selector";} -return new Ext.CompositeElementLite(els);};Ext.select=Ext.Element.select;(function(){var BEFOREREQUEST="beforerequest",REQUESTCOMPLETE="requestcomplete",REQUESTEXCEPTION="requestexception",UNDEFINED=undefined,LOAD='load',POST='POST',GET='GET',WINDOW=window;Ext.data.Connection=function(config){Ext.apply(this,config);this.addEvents(BEFOREREQUEST,REQUESTCOMPLETE,REQUESTEXCEPTION);Ext.data.Connection.superclass.constructor.call(this);};Ext.extend(Ext.data.Connection,Ext.util.Observable,{timeout:30000,autoAbort:false,disableCaching:true,disableCachingParam:'_dc',request:function(o){var me=this;if(me.fireEvent(BEFOREREQUEST,me,o)){if(o.el){if(!Ext.isEmpty(o.indicatorText)){me.indicatorText='<div class="loading-indicator">'+o.indicatorText+"</div>";} -if(me.indicatorText){Ext.getDom(o.el).innerHTML=me.indicatorText;} -o.success=(Ext.isFunction(o.success)?o.success:function(){}).createInterceptor(function(response){Ext.getDom(o.el).innerHTML=response.responseText;});} -var p=o.params,url=o.url||me.url,method,cb={success:me.handleResponse,failure:me.handleFailure,scope:me,argument:{options:o},timeout:Ext.num(o.timeout,me.timeout)},form,serForm;if(Ext.isFunction(p)){p=p.call(o.scope||WINDOW,o);} -p=Ext.urlEncode(me.extraParams,Ext.isObject(p)?Ext.urlEncode(p):p);if(Ext.isFunction(url)){url=url.call(o.scope||WINDOW,o);} -if((form=Ext.getDom(o.form))){url=url||form.action;if(o.isUpload||(/multipart\/form-data/i.test(form.getAttribute("enctype")))){return me.doFormUpload.call(me,o,p,url);} -serForm=Ext.lib.Ajax.serializeForm(form);p=p?(p+'&'+serForm):serForm;} -method=o.method||me.method||((p||o.xmlData||o.jsonData)?POST:GET);if(method===GET&&(me.disableCaching&&o.disableCaching!==false)||o.disableCaching===true){var dcp=o.disableCachingParam||me.disableCachingParam;url=Ext.urlAppend(url,dcp+'='+(new Date().getTime()));} -o.headers=Ext.apply(o.headers||{},me.defaultHeaders||{});if(o.autoAbort===true||me.autoAbort){me.abort();} -if((method==GET||o.xmlData||o.jsonData)&&p){url=Ext.urlAppend(url,p);p='';} -return(me.transId=Ext.lib.Ajax.request(method,url,cb,p,o));}else{return o.callback?o.callback.apply(o.scope,[o,UNDEFINED,UNDEFINED]):null;}},isLoading:function(transId){return transId?Ext.lib.Ajax.isCallInProgress(transId):!!this.transId;},abort:function(transId){if(transId||this.isLoading()){Ext.lib.Ajax.abort(transId||this.transId);}},handleResponse:function(response){this.transId=false;var options=response.argument.options;response.argument=options?options.argument:null;this.fireEvent(REQUESTCOMPLETE,this,response,options);if(options.success){options.success.call(options.scope,response,options);} -if(options.callback){options.callback.call(options.scope,options,true,response);}},handleFailure:function(response,e){this.transId=false;var options=response.argument.options;response.argument=options?options.argument:null;this.fireEvent(REQUESTEXCEPTION,this,response,options,e);if(options.failure){options.failure.call(options.scope,response,options);} -if(options.callback){options.callback.call(options.scope,options,false,response);}},doFormUpload:function(o,ps,url){var id=Ext.id(),doc=document,frame=doc.createElement('iframe'),form=Ext.getDom(o.form),hiddens=[],hd,encoding='multipart/form-data',buf={target:form.target,method:form.method,encoding:form.encoding,enctype:form.enctype,action:form.action};Ext.fly(frame).set({id:id,name:id,cls:'x-hidden',src:Ext.SSL_SECURE_URL});doc.body.appendChild(frame);if(Ext.isIE){document.frames[id].name=id;} -Ext.fly(form).set({target:id,method:POST,enctype:encoding,encoding:encoding,action:url||buf.action});Ext.iterate(Ext.urlDecode(ps,false),function(k,v){hd=doc.createElement('input');Ext.fly(hd).set({type:'hidden',value:v,name:k});form.appendChild(hd);hiddens.push(hd);});function cb(){var me=this,r={responseText:'',responseXML:null,argument:o.argument},doc,firstChild;try{doc=frame.contentWindow.document||frame.contentDocument||WINDOW.frames[id].document;if(doc){if(doc.body){if(/textarea/i.test((firstChild=doc.body.firstChild||{}).tagName)){r.responseText=firstChild.value;}else{r.responseText=doc.body.innerHTML;}} -r.responseXML=doc.XMLDocument||doc;}} -catch(e){} -Ext.EventManager.removeListener(frame,LOAD,cb,me);me.fireEvent(REQUESTCOMPLETE,me,r,o);function runCallback(fn,scope,args){if(Ext.isFunction(fn)){fn.apply(scope,args);}} -runCallback(o.success,o.scope,[r,o]);runCallback(o.callback,o.scope,[o,true,r]);if(!me.debugUploads){setTimeout(function(){Ext.removeNode(frame);},100);}} -Ext.EventManager.on(frame,LOAD,cb,this);form.submit();Ext.fly(form).set(buf);Ext.each(hiddens,function(h){Ext.removeNode(h);});}});})();Ext.Ajax=new Ext.data.Connection({autoAbort:false,serializeForm:function(form){return Ext.lib.Ajax.serializeForm(form);}});Ext.util.JSON=new(function(){var useHasOwn=!!{}.hasOwnProperty,isNative=function(){var useNative=null;return function(){if(useNative===null){useNative=Ext.USE_NATIVE_JSON&&window.JSON&&JSON.toString()=='[object JSON]';} -return useNative;};}(),pad=function(n){return n<10?"0"+n:n;},doDecode=function(json){return eval("("+json+")");},doEncode=function(o){if(!Ext.isDefined(o)||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(Ext.isString(o)){return encodeString(o);}else if(typeof o=="number"){return isFinite(o)?String(o):"null";}else if(Ext.isBoolean(o)){return String(o);}else{var a=["{"],b,i,v;for(i in o){if(!o.getElementsByTagName){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(doEncode(i),":",v===null?"null":doEncode(v));b=true;}}}} -a.push("}");return a.join("");}},m={"\b":'\\b',"\t":'\\t',"\n":'\\n',"\f":'\\f',"\r":'\\r','"':'\\"',"\\":'\\\\'},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+'"';},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=function(){var ec;return function(o){if(!ec){ec=isNative()?JSON.stringify:doEncode;} -return ec(o);};}();this.decode=function(){var dc;return function(json){if(!dc){dc=isNative()?JSON.parse:doDecode;} -return dc(json);};}();})();Ext.encode=Ext.util.JSON.encode;Ext.decode=Ext.util.JSON.decode;Ext.EventManager=function(){var docReadyEvent,docReadyProcId,docReadyState=false,DETECT_NATIVE=Ext.isGecko||Ext.isWebKit||Ext.isSafari,E=Ext.lib.Event,D=Ext.lib.Dom,DOC=document,WINDOW=window,DOMCONTENTLOADED="DOMContentLoaded",COMPLETE='complete',propRe=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/,specialElCache=[];function getId(el){var id=false,i=0,len=specialElCache.length,skip=false,o;if(el){if(el.getElementById||el.navigator){for(;i<len;++i){o=specialElCache[i];if(o.el===el){id=o.id;break;}} -if(!id){id=Ext.id(el);specialElCache.push({id:id,el:el});skip=true;}}else{id=Ext.id(el);} -if(!Ext.elCache[id]){Ext.Element.addToCache(new Ext.Element(el),id);if(skip){Ext.elCache[id].skipGC=true;}}} -return id;} -function addListener(el,ename,fn,task,wrap,scope){el=Ext.getDom(el);var id=getId(el),es=Ext.elCache[id].events,wfn;wfn=E.on(el,ename,wrap);es[ename]=es[ename]||[];es[ename].push([fn,wrap,scope,wfn,task]);if(el.addEventListener&&ename=="mousewheel"){var args=["DOMMouseScroll",wrap,false];el.addEventListener.apply(el,args);Ext.EventManager.addListener(WINDOW,'unload',function(){el.removeEventListener.apply(el,args);});} -if(el==DOC&&ename=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.addListener(wrap);}} -function doScrollChk(){if(window!=top){return false;} -try{DOC.documentElement.doScroll('left');}catch(e){return false;} -fireDocReady();return true;} -function checkReadyState(e){if(Ext.isIE&&doScrollChk()){return true;} -if(DOC.readyState==COMPLETE){fireDocReady();return true;} -docReadyState||(docReadyProcId=setTimeout(arguments.callee,2));return false;} -var styles;function checkStyleSheets(e){styles||(styles=Ext.query('style, link[rel=stylesheet]'));if(styles.length==DOC.styleSheets.length){fireDocReady();return true;} -docReadyState||(docReadyProcId=setTimeout(arguments.callee,2));return false;} -function OperaDOMContentLoaded(e){DOC.removeEventListener(DOMCONTENTLOADED,arguments.callee,false);checkStyleSheets();} -function fireDocReady(e){if(!docReadyState){docReadyState=true;if(docReadyProcId){clearTimeout(docReadyProcId);} -if(DETECT_NATIVE){DOC.removeEventListener(DOMCONTENTLOADED,fireDocReady,false);} -if(Ext.isIE&&checkReadyState.bindIE){DOC.detachEvent('onreadystatechange',checkReadyState);} -E.un(WINDOW,"load",arguments.callee);} -if(docReadyEvent&&!Ext.isReady){Ext.isReady=true;docReadyEvent.fire();docReadyEvent.listeners=[];}} -function initDocReady(){docReadyEvent||(docReadyEvent=new Ext.util.Event());if(DETECT_NATIVE){DOC.addEventListener(DOMCONTENTLOADED,fireDocReady,false);} -if(Ext.isIE){if(!checkReadyState()){checkReadyState.bindIE=true;DOC.attachEvent('onreadystatechange',checkReadyState);}}else if(Ext.isOpera){(DOC.readyState==COMPLETE&&checkStyleSheets())||DOC.addEventListener(DOMCONTENTLOADED,OperaDOMContentLoaded,false);}else if(Ext.isWebKit){checkReadyState();} -E.on(WINDOW,"load",fireDocReady);} -function createTargeted(h,o){return function(){var args=Ext.toArray(arguments);if(o.target==Ext.EventObject.setEvent(args[0]).target){h.apply(this,args);}};} -function createBuffered(h,o,task){return function(e){task.delay(o.buffer,h,null,[new Ext.EventObjectImpl(e)]);};} -function createSingle(h,el,ename,fn,scope){return function(e){Ext.EventManager.removeListener(el,ename,fn,scope);h(e);};} -function createDelayed(h,o,fn){return function(e){var task=new Ext.util.DelayedTask(h);if(!fn.tasks){fn.tasks=[];} -fn.tasks.push(task);task.delay(o.delay||10,h,null,[new Ext.EventObjectImpl(e)]);};} -function listen(element,ename,opt,fn,scope){var o=(!opt||typeof opt=="boolean")?{}:opt,el=Ext.getDom(element),task;fn=fn||o.fn;scope=scope||o.scope;if(!el){throw"Error listening for \""+ename+'\". Element "'+element+'" doesn\'t exist.';} -function h(e){if(!Ext){return;} -e=Ext.EventObject.setEvent(e);var t;if(o.delegate){if(!(t=e.getTarget(o.delegate,el))){return;}}else{t=e.target;} -if(o.stopEvent){e.stopEvent();} -if(o.preventDefault){e.preventDefault();} -if(o.stopPropagation){e.stopPropagation();} -if(o.normalized===false){e=e.browserEvent;} -fn.call(scope||el,e,t,o);} -if(o.target){h=createTargeted(h,o);} -if(o.delay){h=createDelayed(h,o,fn);} -if(o.single){h=createSingle(h,el,ename,fn,scope);} -if(o.buffer){task=new Ext.util.DelayedTask(h);h=createBuffered(h,o,task);} -addListener(el,ename,fn,task,h,scope);return h;} -var pub={addListener:function(element,eventName,fn,scope,options){if(typeof eventName=='object'){var o=eventName,e,val;for(e in o){val=o[e];if(!propRe.test(e)){if(Ext.isFunction(val)){listen(element,e,o,val,o.scope);}else{listen(element,e,val);}}}}else{listen(element,eventName,options,fn,scope);}},removeListener:function(el,eventName,fn,scope){el=Ext.getDom(el);var id=getId(el),f=el&&(Ext.elCache[id].events)[eventName]||[],wrap,i,l,k,len,fnc;for(i=0,len=f.length;i<len;i++){if(Ext.isArray(fnc=f[i])&&fnc[0]==fn&&(!scope||fnc[2]==scope)){if(fnc[4]){fnc[4].cancel();} -k=fn.tasks&&fn.tasks.length;if(k){while(k--){fn.tasks[k].cancel();} -delete fn.tasks;} -wrap=fnc[1];E.un(el,eventName,E.extAdapter?fnc[3]:wrap);if(wrap&&el.addEventListener&&eventName=="mousewheel"){el.removeEventListener("DOMMouseScroll",wrap,false);} -if(wrap&&el==DOC&&eventName=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.removeListener(wrap);} -f.splice(i,1);if(f.length===0){delete Ext.elCache[id].events[eventName];} -for(k in Ext.elCache[id].events){return false;} -Ext.elCache[id].events={};return false;}}},removeAll:function(el){el=Ext.getDom(el);var id=getId(el),ec=Ext.elCache[id]||{},es=ec.events||{},f,i,len,ename,fn,k,wrap;for(ename in es){if(es.hasOwnProperty(ename)){f=es[ename];for(i=0,len=f.length;i<len;i++){fn=f[i];if(fn[4]){fn[4].cancel();} -if(fn[0].tasks&&(k=fn[0].tasks.length)){while(k--){fn[0].tasks[k].cancel();} -delete fn.tasks;} -wrap=fn[1];E.un(el,ename,E.extAdapter?fn[3]:wrap);if(el.addEventListener&&wrap&&ename=="mousewheel"){el.removeEventListener("DOMMouseScroll",wrap,false);} -if(wrap&&el==DOC&&ename=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.removeListener(wrap);}}}} -if(Ext.elCache[id]){Ext.elCache[id].events={};}},getListeners:function(el,eventName){el=Ext.getDom(el);var id=getId(el),ec=Ext.elCache[id]||{},es=ec.events||{},results=[];if(es&&es[eventName]){return es[eventName];}else{return null;}},purgeElement:function(el,recurse,eventName){el=Ext.getDom(el);var id=getId(el),ec=Ext.elCache[id]||{},es=ec.events||{},i,f,len;if(eventName){if(es&&es.hasOwnProperty(eventName)){f=es[eventName];for(i=0,len=f.length;i<len;i++){Ext.EventManager.removeListener(el,eventName,f[i][0]);}}}else{Ext.EventManager.removeAll(el);} -if(recurse&&el&&el.childNodes){for(i=0,len=el.childNodes.length;i<len;i++){Ext.EventManager.purgeElement(el.childNodes[i],recurse,eventName);}}},_unload:function(){var el;for(el in Ext.elCache){Ext.EventManager.removeAll(el);} -delete Ext.elCache;delete Ext.Element._flyweights;var c,conn,tid,ajax=Ext.lib.Ajax;(typeof ajax.conn=='object')?conn=ajax.conn:conn={};for(tid in conn){c=conn[tid];if(c){ajax.abort({conn:c,tId:tid});}}},onDocumentReady:function(fn,scope,options){if(Ext.isReady){docReadyEvent||(docReadyEvent=new Ext.util.Event());docReadyEvent.addListener(fn,scope,options);docReadyEvent.fire();docReadyEvent.listeners=[];}else{if(!docReadyEvent){initDocReady();} -options=options||{};options.delay=options.delay||1;docReadyEvent.addListener(fn,scope,options);}},fireDocReady:fireDocReady};pub.on=pub.addListener;pub.un=pub.removeListener;pub.stoppedMouseDownEvent=new Ext.util.Event();return pub;}();Ext.onReady=Ext.EventManager.onDocumentReady;(function(){var initExtCss=function(){var bd=document.body||document.getElementsByTagName('body')[0];if(!bd){return false;} -var cls=[' ',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":""];if(Ext.isSafari){cls.push("ext-safari "+(Ext.isSafari2?'ext-safari2':(Ext.isSafari3?'ext-safari3':'ext-safari4')));}else if(Ext.isChrome){cls.push("ext-chrome");} -if(Ext.isMac){cls.push("ext-mac");} -if(Ext.isLinux){cls.push("ext-linux");} -if(Ext.isStrict||Ext.isBorderBox){var p=bd.parentNode;if(p){Ext.fly(p,'_internal').addClass(((Ext.isStrict&&Ext.isIE)||(!Ext.enableForcedBoxModel&&!Ext.isIE))?' ext-strict':' ext-border-box');}} -if(Ext.enableForcedBoxModel&&!Ext.isIE){Ext.isForcedBorderBox=true;cls.push("ext-forced-border-box");} -Ext.fly(bd,'_internal').addClass(cls);return true;};if(!initExtCss()){Ext.onReady(initExtCss);}})();(function(){var supports=Ext.apply(Ext.supports,{correctRightMargin:true,correctTransparentColor:true,cssFloat:true});var supportTests=function(){var div=document.createElement('div'),doc=document,view,last;div.innerHTML='<div style="height:30px;width:50px;"><div style="height:20px;width:20px;"></div></div><div style="float:left;background-color:transparent;">';doc.body.appendChild(div);last=div.lastChild;if((view=doc.defaultView)){if(view.getComputedStyle(div.firstChild.firstChild,null).marginRight!='0px'){supports.correctRightMargin=false;} -if(view.getComputedStyle(last,null).backgroundColor!='transparent'){supports.correctTransparentColor=false;}} -supports.cssFloat=!!last.style.cssFloat;doc.body.removeChild(div);};if(Ext.isReady){supportTests();}else{Ext.onReady(supportTests);}})();Ext.EventObject=function(){var E=Ext.lib.Event,clickRe=/(dbl)?click/,safariKeys={3:13,63234:37,63235:39,63232:38,63233:40,63276:33,63277:34,63272:46,63273:36,63275:35},btnMap=Ext.isIE?{1:0,4:1,2:2}:{0:0,1:1,2:2};Ext.EventObjectImpl=function(e){if(e){this.setEvent(e.browserEvent||e);}};Ext.EventObjectImpl.prototype={setEvent:function(e){var me=this;if(e==me||(e&&e.browserEvent)){return e;} -me.browserEvent=e;if(e){me.button=e.button?btnMap[e.button]:(e.which?e.which-1:-1);if(clickRe.test(e.type)&&me.button==-1){me.button=0;} -me.type=e.type;me.shiftKey=e.shiftKey;me.ctrlKey=e.ctrlKey||e.metaKey||false;me.altKey=e.altKey;me.keyCode=e.keyCode;me.charCode=e.charCode;me.target=E.getTarget(e);me.xy=E.getXY(e);}else{me.button=-1;me.shiftKey=false;me.ctrlKey=false;me.altKey=false;me.keyCode=0;me.charCode=0;me.target=null;me.xy=[0,0];} -return me;},stopEvent:function(){var me=this;if(me.browserEvent){if(me.browserEvent.type=='mousedown'){Ext.EventManager.stoppedMouseDownEvent.fire(me);} -E.stopEvent(me.browserEvent);}},preventDefault:function(){if(this.browserEvent){E.preventDefault(this.browserEvent);}},stopPropagation:function(){var me=this;if(me.browserEvent){if(me.browserEvent.type=='mousedown'){Ext.EventManager.stoppedMouseDownEvent.fire(me);} -E.stopPropagation(me.browserEvent);}},getCharCode:function(){return this.charCode||this.keyCode;},getKey:function(){return this.normalizeKey(this.keyCode||this.charCode);},normalizeKey:function(k){return Ext.isSafari?(safariKeys[k]||k):k;},getPageX:function(){return this.xy[0];},getPageY:function(){return this.xy[1];},getXY:function(){return this.xy;},getTarget:function(selector,maxDepth,returnEl){return selector?Ext.fly(this.target).findParent(selector,maxDepth,returnEl):(returnEl?Ext.get(this.target):this.target);},getRelatedTarget:function(){return this.browserEvent?E.getRelatedTarget(this.browserEvent):null;},getWheelDelta:function(){var e=this.browserEvent;var delta=0;if(e.wheelDelta){delta=e.wheelDelta/120;}else if(e.detail){delta=-e.detail/3;} -return delta;},within:function(el,related,allowEl){if(el){var t=this[related?"getRelatedTarget":"getTarget"]();return t&&((allowEl?(t==Ext.getDom(el)):false)||Ext.fly(el).contains(t));} -return false;}};return new Ext.EventObjectImpl();}();Ext.Loader=Ext.apply({},{load:function(fileList,callback,scope,preserveOrder){var scope=scope||this,head=document.getElementsByTagName("head")[0],fragment=document.createDocumentFragment(),numFiles=fileList.length,loadedFiles=0,me=this;var loadFileIndex=function(index){head.appendChild(me.buildScriptTag(fileList[index],onFileLoaded));};var onFileLoaded=function(){loadedFiles++;if(numFiles==loadedFiles&&typeof callback=='function'){callback.call(scope);}else{if(preserveOrder===true){loadFileIndex(loadedFiles);}}};if(preserveOrder===true){loadFileIndex.call(this,0);}else{Ext.each(fileList,function(file,index){fragment.appendChild(this.buildScriptTag(file,onFileLoaded));},this);head.appendChild(fragment);}},buildScriptTag:function(filename,callback){var script=document.createElement('script');script.type="text/javascript";script.src=filename;if(script.readyState){script.onreadystatechange=function(){if(script.readyState=="loaded"||script.readyState=="complete"){script.onreadystatechange=null;callback();}};}else{script.onload=callback;} -return script;}});Ext.ns("Ext.grid","Ext.list","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,scrollWidth=null;return{emptyFn:function(){},BLANK_IMAGE_URL:Ext.isIE6||Ext.isIE7||Ext.isAir?'http:/'+'/www.extjs.com/s.gif':'data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==',extendX:function(supr,fn){return Ext.extend(supr,fn(supr.prototype));},getDoc:function(){return Ext.get(document);},num:function(v,defaultValue){v=Number(Ext.isEmpty(v)||Ext.isArray(v)||typeof v=='boolean'||(typeof v=='string'&&v.trim().length==0)?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;}},getScrollBarWidth:function(force){if(!Ext.isReady){return 0;} -if(force===true||scrollWidth===null){var div=Ext.getBody().createChild('<div class="x-hide-offsets" style="width:100px;height:50px;overflow:hidden;"><div style="height:200px;"></div></div>'),child=div.child('div',true);var w1=child.offsetWidth;div.setStyle('overflow',(Ext.isWebKit||Ext.isGecko)?'auto':'scroll');var w2=child.offsetWidth;div.remove();scrollWidth=w1-w2+2;} -return scrollWidth;},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]/);} -Ext.each(names,function(name){if(source.hasOwnProperty(name)){dest[name]=source[name];}},this);return dest;},destroy:function(){Ext.each(arguments,function(arg){if(arg){if(Ext.isArray(arg)){this.destroy.apply(this,arg);}else if(typeof arg.destroy=='function'){arg.destroy();}else if(arg.dom){arg.remove();}}},this);},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){if(Ext.isArray(v)){rFlatten(v);}else{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;},mean:function(arr){return arr.length>0?Ext.sum(arr)/arr.length:undefined;},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.isIE6||(E.isMac&&E.isGecko2),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(typeof cb=='function'){if(delay){cb.defer(delay,scope,args||[]);}else{cb.apply(scope,args||[]);}}}};}());Ext.apply(Function.prototype,{createSequence:function(fcn,scope){var method=this;return(typeof fcn!='function')?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.lib.Dom.getRegion=function(el){return Ext.lib.Region.getRegion(el);};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&®ion.right<=me.right&®ion.top>=me.top&®ion.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();Ext.apply(Ext.DomHelper,function(){var pub,afterbegin='afterbegin',afterend='afterend',beforebegin='beforebegin',beforeend='beforeend',confRe=/tag|children|cn|html$/i;function doInsert(el,o,returnElement,pos,sibling,append){el=Ext.getDom(el);var newNode;if(pub.useDom){newNode=createDom(o,null);if(append){el.appendChild(newNode);}else{(sibling=='firstChild'?el:el.parentNode).insertBefore(newNode,el[sibling]||el);}}else{newNode=Ext.DomHelper.insertHtml(pos,el,Ext.DomHelper.createHtml(o));} -return returnElement?Ext.get(newNode,true):newNode;} -function createDom(o,parentNode){var el,doc=document,useSet,attr,val,cn;if(Ext.isArray(o)){el=doc.createDocumentFragment();for(var i=0,l=o.length;i<l;i++){createDom(o[i],el);}}else if(typeof o=='string'){el=doc.createTextNode(o);}else{el=doc.createElement(o.tag||'div');useSet=!!el.setAttribute;for(var attr in o){if(!confRe.test(attr)){val=o[attr];if(attr=='cls'){el.className=val;}else{if(useSet){el.setAttribute(attr,val);}else{el[attr]=val;}}}} -Ext.DomHelper.applyStyles(el,o.style);if((cn=o.children||o.cn)){createDom(cn,el);}else if(o.html){el.innerHTML=o.html;}} -if(parentNode){parentNode.appendChild(el);} -return el;} -pub={createTemplate:function(o){var html=Ext.DomHelper.createHtml(o);return new Ext.Template(html);},useDom:false,insertBefore:function(el,o,returnElement){return doInsert(el,o,returnElement,beforebegin);},insertAfter:function(el,o,returnElement){return doInsert(el,o,returnElement,afterend,'nextSibling');},insertFirst:function(el,o,returnElement){return doInsert(el,o,returnElement,afterbegin,'firstChild');},append:function(el,o,returnElement){return doInsert(el,o,returnElement,beforeend,'',true);},createDom:createDom};return pub;}());Ext.apply(Ext.Template.prototype,{disableFormats:false,re:/\{([\w-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g,argsRe:/^\s*['"](.*)["']\s*$/,compileARe:/\\/g,compileBRe:/(\r\n|\n)/g,compileCRe:/'/g,applyTemplate:function(values){var me=this,useF=me.disableFormats!==true,fm=Ext.util.Format,tpl=me;if(me.compiled){return me.compiled(values);} -function fn(m,name,format,args){if(format&&useF){if(format.substr(0,5)=="this."){return tpl.call(format.substr(5),values[name],values);}else{if(args){var re=me.argsRe;args=args.split(',');for(var i=0,len=args.length;i<len;i++){args[i]=args[i].replace(re,"$1");} -args=[values[name]].concat(args);}else{args=[values[name]];} -return fm[format].apply(fm,args);}}else{return values[name]!==undefined?values[name]:"";}} -return me.html.replace(me.re,fn);},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(me.compileARe,'\\\\').replace(me.compileBRe,'\\n').replace(me.compileCRe,"\\'").replace(me.re,fn)+"';};";}else{body=["this.compiled = function(values){ return ['"];body.push(me.html.replace(me.compileARe,'\\\\').replace(me.compileBRe,'\\n').replace(me.compileCRe,"\\'").replace(me.re,fn));body.push("'].join('');};");body=body.join('');} -eval(body);return me;},call:function(fnName,value,allValues){return this[fnName](value,allValues);}});Ext.Template.prototype.apply=Ext.Template.prototype.applyTemplate;Ext.util.Functions={createInterceptor:function(origFn,newFn,scope){var method=origFn;if(!Ext.isFunction(newFn)){return origFn;} -else{return function(){var me=this,args=arguments;newFn.target=me;newFn.method=origFn;return(newFn.apply(scope||me||window,args)!==false)?origFn.apply(me||window,args):null;};}},createDelegate:function(fn,obj,args,appendArgs){if(!Ext.isFunction(fn)){return fn;} -return function(){var callArgs=args||arguments;if(appendArgs===true){callArgs=Array.prototype.slice.call(arguments,0);callArgs=callArgs.concat(args);} -else if(Ext.isNumber(appendArgs)){callArgs=Array.prototype.slice.call(arguments,0);var applyArgs=[appendArgs,0].concat(args);Array.prototype.splice.apply(callArgs,applyArgs);} -return fn.apply(obj||window,callArgs);};},defer:function(fn,millis,obj,args,appendArgs){fn=Ext.util.Functions.createDelegate(fn,obj,args,appendArgs);if(millis>0){return setTimeout(fn,millis);} -fn();return 0;},createSequence:function(origFn,newFn,scope){if(!Ext.isFunction(newFn)){return origFn;} -else{return function(){var retval=origFn.apply(this||window,arguments);newFn.apply(scope||this||window,arguments);return retval;};}}};Ext.defer=Ext.util.Functions.defer;Ext.createInterceptor=Ext.util.Functions.createInterceptor;Ext.createSequence=Ext.util.Functions.createSequence;Ext.createDelegate=Ext.util.Functions.createDelegate;Ext.apply(Ext.util.Observable.prototype,function(){function getMethodEvent(method){var e=(this.methodEvents=this.methodEvents||{})[method],returnValue,v,cancel,obj=this;if(!e){this.methodEvents[method]=e={};e.originalFn=this[method];e.methodName=method;e.before=[];e.after=[];var makeCall=function(fn,scope,args){if((v=fn.apply(scope||obj,args))!==undefined){if(typeof v=='object'){if(v.returnValue!==undefined){returnValue=v.returnValue;}else{returnValue=v;} -cancel=!!v.cancel;} -else -if(v===false){cancel=true;} -else{returnValue=v;}}};this[method]=function(){var args=Array.prototype.slice.call(arguments,0),b;returnValue=v=undefined;cancel=false;for(var i=0,len=e.before.length;i<len;i++){b=e.before[i];makeCall(b.fn,b.scope,args);if(cancel){return returnValue;}} -if((v=e.originalFn.apply(obj,args))!==undefined){returnValue=v;} -for(var i=0,len=e.after.length;i<len;i++){b=e.after[i];makeCall(b.fn,b.scope,args);if(cancel){return returnValue;}} -return returnValue;};} -return e;} -return{beforeMethod:function(method,fn,scope){getMethodEvent.call(this,method).before.push({fn:fn,scope:scope});},afterMethod:function(method,fn,scope){getMethodEvent.call(this,method).after.push({fn:fn,scope:scope});},removeMethodListener:function(method,fn,scope){var e=this.getMethodEvent(method);for(var i=0,len=e.before.length;i<len;i++){if(e.before[i].fn==fn&&e.before[i].scope==scope){e.before.splice(i,1);return;}} -for(var i=0,len=e.after.length;i<len;i++){if(e.after[i].fn==fn&&e.after[i].scope==scope){e.after.splice(i,1);return;}}},relayEvents:function(o,events){var me=this;function createHandler(ename){return function(){return me.fireEvent.apply(me,[ename].concat(Array.prototype.slice.call(arguments,0)));};} -for(var i=0,len=events.length;i<len;i++){var ename=events[i];me.events[ename]=me.events[ename]||true;o.on(ename,createHandler(ename),me);}},enableBubble:function(events){var me=this;if(!Ext.isEmpty(events)){events=Ext.isArray(events)?events:Array.prototype.slice.call(arguments,0);for(var i=0,len=events.length;i<len;i++){var ename=events[i];ename=ename.toLowerCase();var ce=me.events[ename]||true;if(typeof ce=='boolean'){ce=new Ext.util.Event(me,ename);me.events[ename]=ce;} -ce.bubble=true;}}}};}());Ext.util.Observable.capture=function(o,fn,scope){o.fireEvent=o.fireEvent.createInterceptor(fn,scope);};Ext.util.Observable.observeClass=function(c,listeners){if(c){if(!c.fireEvent){Ext.apply(c,new Ext.util.Observable());Ext.util.Observable.capture(c.prototype,c.fireEvent,c);} -if(typeof listeners=='object'){c.on(listeners);} -return c;}};Ext.apply(Ext.EventManager,function(){var resizeEvent,resizeTask,textEvent,textSize,D=Ext.lib.Dom,propRe=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/,curWidth=0,curHeight=0,useKeydown=Ext.isWebKit?Ext.num(navigator.userAgent.match(/AppleWebKit\/(\d+)/)[1])>=525:!((Ext.isGecko&&!Ext.isWindows)||Ext.isOpera);return{doResizeEvent:function(){var h=D.getViewHeight(),w=D.getViewWidth();if(curHeight!=h||curWidth!=w){resizeEvent.fire(curWidth=w,curHeight=h);}},onWindowResize:function(fn,scope,options){if(!resizeEvent){resizeEvent=new Ext.util.Event();resizeTask=new Ext.util.DelayedTask(this.doResizeEvent);Ext.EventManager.on(window,"resize",this.fireWindowResize,this);} -resizeEvent.addListener(fn,scope,options);},fireWindowResize:function(){if(resizeEvent){resizeTask.delay(100);}},onTextResize:function(fn,scope,options){if(!textEvent){textEvent=new Ext.util.Event();var textEl=new Ext.Element(document.createElement('div'));textEl.dom.className='x-text-resize';textEl.dom.innerHTML='X';textEl.appendTo(document.body);textSize=textEl.dom.offsetHeight;setInterval(function(){if(textEl.dom.offsetHeight!=textSize){textEvent.fire(textSize,textSize=textEl.dom.offsetHeight);}},this.textResizeInterval);} -textEvent.addListener(fn,scope,options);},removeResizeListener:function(fn,scope){if(resizeEvent){resizeEvent.removeListener(fn,scope);}},fireResize:function(){if(resizeEvent){resizeEvent.fire(D.getViewWidth(),D.getViewHeight());}},textResizeInterval:50,ieDeferSrc:false,getKeyEvent:function(){return useKeydown?'keydown':'keypress';},useKeydown:useKeydown};}());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 me=this,k=this.normalizeKey(me.keyCode);return(k>=33&&k<=40)||k==me.RETURN||k==me.TAB||k==me.ESC;},isSpecialKey:function(){var k=this.normalizeKey(this.keyCode);return(this.type=='keypress'&&this.ctrlKey)||this.isNavKeyPress()||(k==this.BACKSPACE)||(k>=16&&k<=20)||(k>=44&&k<=46);},getPoint:function(){return new Ext.lib.Point(this.xy[0],this.xy[1]);},hasModifier:function(){return((this.ctrlKey||this.altKey)||this.shiftKey);}});Ext.Element.addMethods({swallowEvent:function(eventName,preventDefault){var me=this;function fn(e){e.stopPropagation();if(preventDefault){e.preventDefault();}} -if(Ext.isArray(eventName)){Ext.each(eventName,function(e){me.on(e,fn);});return me;} -me.on(eventName,fn);return me;},relayEvent:function(eventName,observable){this.on(eventName,function(e){observable.fireEvent(eventName,e);});},clean:function(forceReclean){var me=this,dom=me.dom,n=dom.firstChild,ni=-1;if(Ext.Element.data(dom,'isCleaned')&&forceReclean!==true){return me;} -while(n){var nx=n.nextSibling;if(n.nodeType==3&&!(/\S/.test(n.nodeValue))){dom.removeChild(n);}else{n.nodeIndex=++ni;} -n=nx;} -Ext.Element.data(dom,'isCleaned',true);return me;},load:function(){var updateManager=this.getUpdater();updateManager.update.apply(updateManager,arguments);return this;},getUpdater:function(){return this.updateManager||(this.updateManager=new Ext.Updater(this));},update:function(html,loadScripts,callback){if(!this.dom){return this;} -html=html||"";if(loadScripts!==true){this.dom.innerHTML=html;if(typeof callback=='function'){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(typeof callback=='function'){callback();}});dom.innerHTML=html.replace(/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,"");return this;},removeAllListeners:function(){this.removeAnchor();Ext.EventManager.removeAll(this.dom);return this;},createProxy:function(config,renderTo,matchBox){config=(typeof config=='object')?config:{tag:"div",cls:config};var me=this,proxy=renderTo?Ext.DomHelper.append(renderTo,config,true):Ext.DomHelper.insertBefore(me.dom,config,true);if(matchBox&&me.setBox&&me.getBox){proxy.setBox(me.getBox());} -return proxy;}});Ext.Element.prototype.getUpdateManager=Ext.Element.prototype.getUpdater;Ext.Element.addMethods({getAnchorXY:function(anchor,local,s){anchor=(anchor||"tl").toLowerCase();s=s||{};var me=this,vp=me.dom==document.body||me.dom==document,w=s.width||vp?Ext.lib.Dom.getViewWidth():me.getWidth(),h=s.height||vp?Ext.lib.Dom.getViewHeight():me.getHeight(),xy,r=Math.round,o=me.getXY(),scroll=me.getScroll(),extraX=vp?scroll.left:!local?o[0]:0,extraY=vp?scroll.top:!local?o[1]:0,hash={c:[r(w*0.5),r(h*0.5)],t:[r(w*0.5),0],l:[0,r(h*0.5)],r:[w,r(h*0.5)],b:[r(w*0.5),h],tl:[0,0],bl:[0,h],br:[w,h],tr:[w,0]};xy=hash[anchor];return[xy[0]+extraX,xy[1]+extraY];},anchorTo:function(el,alignment,offsets,animate,monitorScroll,callback){var me=this,dom=me.dom,scroll=!Ext.isEmpty(monitorScroll),action=function(){Ext.fly(dom).alignTo(el,alignment,offsets,animate);Ext.callback(callback,Ext.fly(dom));},anchor=this.getAnchor();this.removeAnchor();Ext.apply(anchor,{fn:action,scroll:scroll});Ext.EventManager.onWindowResize(action,null);if(scroll){Ext.EventManager.on(window,'scroll',action,null,{buffer:!isNaN(monitorScroll)?monitorScroll:50});} -action.call(me);return me;},removeAnchor:function(){var me=this,anchor=this.getAnchor();if(anchor&&anchor.fn){Ext.EventManager.removeResizeListener(anchor.fn);if(anchor.scroll){Ext.EventManager.un(window,'scroll',anchor.fn);} -delete anchor.fn;} -return me;},getAnchor:function(){var data=Ext.Element.data,dom=this.dom;if(!dom){return;} -var anchor=data(dom,'_anchor');if(!anchor){anchor=data(dom,'_anchor',{});} -return anchor;},getAlignToXY:function(el,p,o){el=Ext.get(el);if(!el||!el.dom){throw"Element.alignToXY with an element that doesn't exist";} -o=o||[0,0];p=(!p||p=="?"?"tl-bl?":(!(/-/).test(p)&&p!==""?"tl-"+p:p||"tl-bl")).toLowerCase();var me=this,d=me.dom,a1,a2,x,y,w,h,r,dw=Ext.lib.Dom.getViewWidth()-10,dh=Ext.lib.Dom.getViewHeight()-10,p1y,p1x,p2y,p2x,swapY,swapX,doc=document,docElement=doc.documentElement,docBody=doc.body,scrollX=(docElement.scrollLeft||docBody.scrollLeft||0)+5,scrollY=(docElement.scrollTop||docBody.scrollTop||0)+5,c=false,p1="",p2="",m=p.match(/^([a-z]+)-([a-z]+)(\?)?$/);if(!m){throw"Element.alignTo with an invalid alignment "+p;} -p1=m[1];p2=m[2];c=!!m[3];a1=me.getAnchorXY(p1,true);a2=el.getAnchorXY(p2,false);x=a2[0]-a1[0]+o[0];y=a2[1]-a1[1]+o[1];if(c){w=me.getWidth();h=me.getHeight();r=el.getRegion();p1y=p1.charAt(0);p1x=p1.charAt(p1.length-1);p2y=p2.charAt(0);p2x=p2.charAt(p2.length-1);swapY=((p1y=="t"&&p2y=="b")||(p1y=="b"&&p2y=="t"));swapX=((p1x=="r"&&p2x=="l")||(p1x=="l"&&p2x=="r"));if(x+w>dw+scrollX){x=swapX?r.left-w:dw+scrollX-w;} -if(x<scrollX){x=swapX?r.right:scrollX;} -if(y+h>dh+scrollY){y=swapY?r.top-h:dh+scrollY-h;} -if(y<scrollY){y=swapY?r.bottom:scrollY;}} -return[x,y];},alignTo:function(element,position,offsets,animate){var me=this;return me.setXY(me.getAlignToXY(element,position,offsets),me.preanim&&!!animate?me.preanim(arguments,3):false);},adjustForConstraints:function(xy,parent,offsets){return this.getConstrainToXY(parent||document,false,offsets,xy)||xy;},getConstrainToXY:function(el,local,offsets,proposedXY){var os={top:0,left:0,bottom:0,right:0};return function(el,local,offsets,proposedXY){el=Ext.get(el);offsets=offsets?Ext.applyIf(offsets,os):os;var vw,vh,vx=0,vy=0;if(el.dom==document.body||el.dom==document){vw=Ext.lib.Dom.getViewWidth();vh=Ext.lib.Dom.getViewHeight();}else{vw=el.dom.clientWidth;vh=el.dom.clientHeight;if(!local){var vxy=el.getXY();vx=vxy[0];vy=vxy[1];}} -var s=el.getScroll();vx+=offsets.left+s.left;vy+=offsets.top+s.top;vw-=offsets.right;vh-=offsets.bottom;var vr=vx+vw,vb=vy+vh,xy=proposedXY||(!local?this.getXY():[this.getLeft(true),this.getTop(true)]),x=xy[0],y=xy[1],offset=this.getConstrainOffset(),w=this.dom.offsetWidth+offset,h=this.dom.offsetHeight+offset;var moved=false;if((x+w)>vr){x=vr-w;moved=true;} -if((y+h)>vb){y=vb-h;moved=true;} -if(x<vx){x=vx;moved=true;} -if(y<vy){y=vy;moved=true;} -return moved?[x,y]:false;};}(),getConstrainOffset:function(){return 0;},getCenterXY:function(){return this.getAlignToXY(document,'c-c');},center:function(centerIn){return this.alignTo(centerIn||document,'c-c');}});Ext.Element.addMethods({select:function(selector,unique){return Ext.Element.select(selector,unique,this.dom);}});Ext.apply(Ext.Element.prototype,function(){var GETDOM=Ext.getDom,GET=Ext.get,DH=Ext.DomHelper;return{insertSibling:function(el,where,returnDom){var me=this,rt,isAfter=(where||'before').toLowerCase()=='after',insertEl;if(Ext.isArray(el)){insertEl=me;Ext.each(el,function(e){rt=Ext.fly(insertEl,'_internal').insertSibling(e,where,returnDom);if(isAfter){insertEl=rt;}});return rt;} -el=el||{};if(el.nodeType||el.dom){rt=me.dom.parentNode.insertBefore(GETDOM(el),isAfter?me.dom.nextSibling:me.dom);if(!returnDom){rt=GET(rt);}}else{if(isAfter&&!me.dom.nextSibling){rt=DH.append(me.dom.parentNode,el,!returnDom);}else{rt=DH[isAfter?'insertAfter':'insertBefore'](me.dom,el,!returnDom);}} -return rt;}};}());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 INTERNAL="_internal",pxMatch=/(\d+\.?\d+)px/;return{applyStyles:function(style){Ext.DomHelper.applyStyles(this.dom,style);return this;},getStyles:function(){var ret={};Ext.each(arguments,function(v){ret[v]=this.getStyle(v);},this);return ret;},setOverflow:function(v){var dom=this.dom;if(v=='auto'&&Ext.isMac&&Ext.isGecko2){dom.style.overflow='hidden';(function(){dom.style.overflow='auto';}).defer(1);}else{dom.style.overflow=v;}},boxWrap:function(cls){cls=cls||'x-box';var el=Ext.get(this.insertHtml("beforeBegin","<div class='"+cls+"'>"+String.format(Ext.Element.boxMarkup,cls)+"</div>"));Ext.DomQuery.selectNode('.'+cls+'-mc',el.dom).appendChild(this.dom);return el;},setSize:function(width,height,animate){var me=this;if(typeof width=='object'){height=width.height;width=width.width;} -width=me.adjustWidth(width);height=me.adjustHeight(height);if(!animate||!me.anim){me.dom.style.width=me.addUnits(width);me.dom.style.height=me.addUnits(height);}else{me.anim({width:{to:width},height:{to:height}},me.preanim(arguments,2));} -return me;},getComputedHeight:function(){var me=this,h=Math.max(me.dom.offsetHeight,me.dom.clientHeight);if(!h){h=parseFloat(me.getStyle('height'))||0;if(!me.isBorderBox()){h+=me.getFrameWidth('tb');}} -return h;},getComputedWidth:function(){var w=Math.max(this.dom.offsetWidth,this.dom.clientWidth);if(!w){w=parseFloat(this.getStyle('width'))||0;if(!this.isBorderBox()){w+=this.getFrameWidth('lr');}} -return w;},getFrameWidth:function(sides,onlyContentBox){return onlyContentBox&&this.isBorderBox()?0:(this.getPadding(sides)+this.getBorderWidth(sides));},addClassOnOver:function(className){this.hover(function(){Ext.fly(this,INTERNAL).addClass(className);},function(){Ext.fly(this,INTERNAL).removeClass(className);});return this;},addClassOnFocus:function(className){this.on("focus",function(){Ext.fly(this,INTERNAL).addClass(className);},this.dom);this.on("blur",function(){Ext.fly(this,INTERNAL).removeClass(className);},this.dom);return this;},addClassOnClick:function(className){var dom=this.dom;this.on("mousedown",function(){Ext.fly(dom,INTERNAL).addClass(className);var d=Ext.getDoc(),fn=function(){Ext.fly(dom,INTERNAL).removeClass(className);d.removeListener("mouseup",fn);};d.on("mouseup",fn);});return this;},getViewSize:function(){var doc=document,d=this.dom,isDoc=(d==doc||d==doc.body);if(isDoc){var extdom=Ext.lib.Dom;return{width:extdom.getViewWidth(),height:extdom.getViewHeight()};}else{return{width:d.clientWidth,height:d.clientHeight};}},getStyleSize:function(){var me=this,w,h,doc=document,d=this.dom,isDoc=(d==doc||d==doc.body),s=d.style;if(isDoc){var extdom=Ext.lib.Dom;return{width:extdom.getViewWidth(),height:extdom.getViewHeight()};} -if(s.width&&s.width!='auto'){w=parseFloat(s.width);if(me.isBorderBox()){w-=me.getFrameWidth('lr');}} -if(s.height&&s.height!='auto'){h=parseFloat(s.height);if(me.isBorderBox()){h-=me.getFrameWidth('tb');}} -return{width:w||me.getWidth(true),height:h||me.getHeight(true)};},getSize:function(contentSize){return{width:this.getWidth(contentSize),height:this.getHeight(contentSize)};},repaint:function(){var dom=this.dom;this.addClass("x-repaint");setTimeout(function(){Ext.fly(dom).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(side){var me=this,key,hash={t:"top",l:"left",r:"right",b:"bottom"},o={};if(!side){for(key in me.margins){o[hash[key]]=parseFloat(me.getStyle(me.margins[key]))||0;} -return o;}else{return me.addStyles.call(me,side,me.margins);}}};}());Ext.Element.addMethods({setBox:function(box,adjust,animate){var me=this,w=box.width,h=box.height;if((adjust&&!me.autoBoxAdjust)&&!me.isBorderBox()){w-=(me.getBorderWidth("lr")+me.getPadding("lr"));h-=(me.getBorderWidth("tb")+me.getPadding("tb"));} -me.setBounds(box.x,box.y,w,h,me.animTest.call(me,arguments,animate,2));return me;},getBox:function(contentBox,local){var me=this,xy,left,top,getBorderWidth=me.getBorderWidth,getPadding=me.getPadding,l,r,t,b;if(!local){xy=me.getXY();}else{left=parseInt(me.getStyle("left"),10)||0;top=parseInt(me.getStyle("top"),10)||0;xy=[left,top];} -var el=me.dom,w=el.offsetWidth,h=el.offsetHeight,bx;if(!contentBox){bx={x:xy[0],y:xy[1],0:xy[0],1:xy[1],width:w,height:h};}else{l=getBorderWidth.call(me,"l")+getPadding.call(me,"l");r=getBorderWidth.call(me,"r")+getPadding.call(me,"r");t=getBorderWidth.call(me,"t")+getPadding.call(me,"t");b=getBorderWidth.call(me,"b")+getPadding.call(me,"b");bx={x:xy[0]+l,y:xy[1]+t,0:xy[0]+l,1:xy[1]+t,width:w-(l+r),height:h-(t+b)};} -bx.right=bx.x+bx.width;bx.bottom=bx.y+bx.height;return bx;},move:function(direction,distance,animate){var me=this,xy=me.getXY(),x=xy[0],y=xy[1],left=[x-distance,y],right=[x+distance,y],top=[x,y-distance],bottom=[x,y+distance],hash={l:left,left:left,r:right,right:right,t:top,top:top,up:top,b:bottom,bottom:bottom,down:bottom};direction=direction.toLowerCase();me.moveTo(hash[direction][0],hash[direction][1],me.animTest.call(me,arguments,animate,2));},setLeftTop:function(left,top){var me=this,style=me.dom.style;style.left=me.addUnits(left);style.top=me.addUnits(top);return me;},getRegion:function(){return Ext.lib.Dom.getRegion(this.dom);},setBounds:function(x,y,width,height,animate){var me=this;if(!animate||!me.anim){me.setSize(width,height);me.setLocation(x,y);}else{me.anim({points:{to:[x,y]},width:{to:me.adjustWidth(width)},height:{to:me.adjustHeight(height)}},me.preanim(arguments,4),'motion');} -return me;},setRegion:function(region,animate){return this.setBounds(region.left,region.top,region.right-region.left,region.bottom-region.top,this.animTest.call(this,arguments,animate,1));}});Ext.Element.addMethods({scrollTo:function(side,value,animate){var top=/top/i.test(side),me=this,dom=me.dom,prop;if(!animate||!me.anim){prop='scroll'+(top?'Top':'Left');dom[prop]=value;} -else{prop='scroll'+(top?'Left':'Top');me.anim({scroll:{to:top?[dom[prop],value]:[value,dom[prop]]}},me.preanim(arguments,2),'scroll');} -return me;},scrollIntoView:function(container,hscroll){var c=Ext.getDom(container)||Ext.getBody().dom,el=this.dom,o=this.getOffsetsTo(c),l=o[0]+c.scrollLeft,t=o[1]+c.scrollTop,b=t+el.offsetHeight,r=l+el.offsetWidth,ch=c.clientHeight,ct=parseInt(c.scrollTop,10),cl=parseInt(c.scrollLeft,10),cb=ct+ch,cr=cl+c.clientWidth;if(el.offsetHeight>ch||t<ct){c.scrollTop=t;} -else if(b>cb){c.scrollTop=b-ch;} -c.scrollTop=c.scrollTop;if(hscroll!==false){if(el.offsetWidth>c.clientWidth||l<cl){c.scrollLeft=l;} -else if(r>cr){c.scrollLeft=r-c.clientWidth;} -c.scrollLeft=c.scrollLeft;} -return this;},scrollChildIntoView:function(child,hscroll){Ext.fly(child,'_scrollChildIntoView').scrollIntoView(this,hscroll);},scroll:function(direction,distance,animate){if(!this.isScrollable()){return false;} -var el=this.dom,l=el.scrollLeft,t=el.scrollTop,w=el.scrollWidth,h=el.scrollHeight,cw=el.clientWidth,ch=el.clientHeight,scrolled=false,v,hash={l:Math.min(l+distance,w-cw),r:v=Math.max(l-distance,0),t:Math.max(t-distance,0),b:Math.min(t+distance,h-ch)};hash.d=hash.b;hash.u=hash.t;direction=direction.substr(0,1);if((v=hash[direction])>-1){scrolled=true;this.scrollTo(direction=='l'||direction=='r'?'left':'top',v,this.preanim(arguments,2));} -return scrolled;}});Ext.Element.addMethods(function(){var VISIBILITY="visibility",DISPLAY="display",HIDDEN="hidden",NONE="none",XMASKED="x-masked",XMASKEDRELATIVE="x-masked-relative",data=Ext.Element.data;return{isVisible:function(deep){var vis=!this.isStyle(VISIBILITY,HIDDEN)&&!this.isStyle(DISPLAY,NONE),p=this.dom.parentNode;if(deep!==true||!vis){return vis;} -while(p&&!(/^body/i.test(p.tagName))){if(!Ext.fly(p,'_isVisible').isVisible()){return false;} -p=p.parentNode;} -return true;},isDisplayed:function(){return!this.isStyle(DISPLAY,NONE);},enableDisplayMode:function(display){this.setVisibilityMode(Ext.Element.DISPLAY);if(!Ext.isEmpty(display)){data(this.dom,'originalDisplay',display);} -return this;},mask:function(msg,msgCls){var me=this,dom=me.dom,dh=Ext.DomHelper,EXTELMASKMSG="ext-el-mask-msg",el,mask;if(!(/^body/i.test(dom.tagName)&&me.getStyle('position')=='static')){me.addClass(XMASKEDRELATIVE);} -if(el=data(dom,'maskMsg')){el.remove();} -if(el=data(dom,'mask')){el.remove();} -mask=dh.append(dom,{cls:"ext-el-mask"},true);data(dom,'mask',mask);me.addClass(XMASKED);mask.setDisplayed(true);if(typeof msg=='string'){var mm=dh.append(dom,{cls:EXTELMASKMSG,cn:{tag:'div'}},true);data(dom,'maskMsg',mm);mm.dom.className=msgCls?EXTELMASKMSG+" "+msgCls:EXTELMASKMSG;mm.dom.firstChild.innerHTML=msg;mm.setDisplayed(true);mm.center(me);} -if(Ext.isIE&&!(Ext.isIE7&&Ext.isStrict)&&me.getStyle('height')=='auto'){mask.setSize(undefined,me.getHeight());} -return mask;},unmask:function(){var me=this,dom=me.dom,mask=data(dom,'mask'),maskMsg=data(dom,'maskMsg');if(mask){if(maskMsg){maskMsg.remove();data(dom,'maskMsg',undefined);} -mask.remove();data(dom,'mask',undefined);me.removeClass([XMASKED,XMASKEDRELATIVE]);}},isMasked:function(){var m=data(this.dom,'mask');return m&&m.isVisible();},createShim:function(){var el=document.createElement('iframe'),shim;el.frameBorder='0';el.className='ext-shim';el.src=Ext.SSL_SECURE_URL;shim=Ext.get(this.dom.parentNode.insertBefore(el,this.dom));shim.autoBoxAdjust=false;return shim;}};}());Ext.Element.addMethods({addKeyListener:function(key,fn,scope){var config;if(typeof key!='object'||Ext.isArray(key)){config={key:key,fn:fn,scope:scope};}else{config={key:key.key,shift:key.shift,ctrl:key.ctrl,alt:key.alt,fn:fn,scope:scope};} -return new Ext.KeyMap(this,config);},addKeyMap:function(config){return new Ext.KeyMap(this,config);}});Ext.CompositeElementLite.importElementMethods();Ext.apply(Ext.CompositeElementLite.prototype,{addElements:function(els,root){if(!els){return this;} -if(typeof els=="string"){els=Ext.Element.selectorFunction(els,root);} -var yels=this.elements;Ext.each(els,function(e){yels.push(Ext.get(e));});return this;},first:function(){return this.item(0);},last:function(){return this.item(this.getCount()-1);},contains:function(el){return this.indexOf(el)!=-1;},removeElement:function(keys,removeDom){var me=this,els=this.elements,el;Ext.each(keys,function(val){if((el=(els[val]||els[val=me.indexOf(val)]))){if(removeDom){if(el.dom){el.remove();}else{Ext.removeNode(el);}} -els.splice(val,1);}});return this;}});Ext.CompositeElement=Ext.extend(Ext.CompositeElementLite,{constructor:function(els,root){this.elements=[];this.add(els,root);},getElement:function(el){return el;},transformElement:function(el){return Ext.get(el);}});Ext.Element.select=function(selector,unique,root){var els;if(typeof selector=="string"){els=Ext.Element.selectorFunction(selector,root);}else if(selector.length!==undefined){els=selector;}else{throw"Invalid selector";} -return(unique===true)?new Ext.CompositeElement(els):new Ext.CompositeElementLite(els);};Ext.select=Ext.Element.select;Ext.UpdateManager=Ext.Updater=Ext.extend(Ext.util.Observable,function(){var BEFOREUPDATE="beforeupdate",UPDATE="update",FAILURE="failure";function processSuccess(response){var me=this;me.transaction=null;if(response.argument.form&&response.argument.reset){try{response.argument.form.reset();}catch(e){}} -if(me.loadScripts){me.renderer.render(me.el,response,me,updateComplete.createDelegate(me,[response]));}else{me.renderer.render(me.el,response,me);updateComplete.call(me,response);}} -function updateComplete(response,type,success){this.fireEvent(type||UPDATE,this.el,response);if(Ext.isFunction(response.argument.callback)){response.argument.callback.call(response.argument.scope,this.el,Ext.isEmpty(success)?true:false,response,response.argument.options);}} -function processFailure(response){updateComplete.call(this,response,FAILURE,!!(this.transaction=null));} -return{constructor:function(el,forceNew){var me=this;el=Ext.get(el);if(!forceNew&&el.updateManager){return el.updateManager;} -me.el=el;me.defaultUrl=null;me.addEvents(BEFOREUPDATE,UPDATE,FAILURE);Ext.apply(me,Ext.Updater.defaults);me.transaction=null;me.refreshDelegate=me.refresh.createDelegate(me);me.updateDelegate=me.update.createDelegate(me);me.formUpdateDelegate=(me.formUpdate||function(){}).createDelegate(me);me.renderer=me.renderer||me.getDefaultRenderer();Ext.Updater.superclass.constructor.call(me);},setRenderer:function(renderer){this.renderer=renderer;},getRenderer:function(){return this.renderer;},getDefaultRenderer:function(){return new Ext.Updater.BasicRenderer();},setDefaultUrl:function(defaultUrl){this.defaultUrl=defaultUrl;},getEl:function(){return this.el;},update:function(url,params,callback,discardUrl){var me=this,cfg,callerScope;if(me.fireEvent(BEFOREUPDATE,me.el,url,params)!==false){if(Ext.isObject(url)){cfg=url;url=cfg.url;params=params||cfg.params;callback=callback||cfg.callback;discardUrl=discardUrl||cfg.discardUrl;callerScope=cfg.scope;if(!Ext.isEmpty(cfg.nocache)){me.disableCaching=cfg.nocache;};if(!Ext.isEmpty(cfg.text)){me.indicatorText='<div class="loading-indicator">'+cfg.text+"</div>";};if(!Ext.isEmpty(cfg.scripts)){me.loadScripts=cfg.scripts;};if(!Ext.isEmpty(cfg.timeout)){me.timeout=cfg.timeout;};} -me.showLoading();if(!discardUrl){me.defaultUrl=url;} -if(Ext.isFunction(url)){url=url.call(me);} -var o=Ext.apply({},{url:url,params:(Ext.isFunction(params)&&callerScope)?params.createDelegate(callerScope):params,success:processSuccess,failure:processFailure,scope:me,callback:undefined,timeout:(me.timeout*1000),disableCaching:me.disableCaching,argument:{"options":cfg,"url":url,"form":null,"callback":callback,"scope":callerScope||window,"params":params}},cfg);me.transaction=Ext.Ajax.request(o);}},formUpdate:function(form,url,reset,callback){var me=this;if(me.fireEvent(BEFOREUPDATE,me.el,form,url)!==false){if(Ext.isFunction(url)){url=url.call(me);} -form=Ext.getDom(form);me.transaction=Ext.Ajax.request({form:form,url:url,success:processSuccess,failure:processFailure,scope:me,timeout:(me.timeout*1000),argument:{"url":url,"form":form,"callback":callback,"reset":reset}});me.showLoading.defer(1,me);}},startAutoRefresh:function(interval,url,params,callback,refreshNow){var me=this;if(refreshNow){me.update(url||me.defaultUrl,params,callback,true);} -if(me.autoRefreshProcId){clearInterval(me.autoRefreshProcId);} -me.autoRefreshProcId=setInterval(me.update.createDelegate(me,[url||me.defaultUrl,params,callback,true]),interval*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(callback){if(this.defaultUrl){this.update(this.defaultUrl,null,callback,true);}}};}());Ext.Updater.defaults={timeout:30,disableCaching:false,showLoadIndicator:true,indicatorText:'<div class="loading-indicator">Loading...</div>',loadScripts:false,sslBlankUrl:Ext.SSL_SECURE_URL};Ext.Updater.updateElement=function(el,url,params,options){var um=Ext.get(el).getUpdater();Ext.apply(um,options);um.update(url,params,options?options.callback:null);};Ext.Updater.BasicRenderer=function(){};Ext.Updater.BasicRenderer.prototype={render:function(el,response,updateManager,callback){el.update(response.responseText,updateManager.loadScripts,callback);}};(function(){Date.useStrict=false;function xf(format){var args=Array.prototype.slice.call(arguments,1);return format.replace(/\{(\d+)\}/g,function(m,i){return args[i];});} -Date.formatCodeToRegex=function(character,currentGroup){var p=Date.parseCodes[character];if(p){p=typeof p=='function'?p():p;Date.parseCodes[character]=p;} -return p?Ext.applyIf({c:p.c?xf(p.c,currentGroup||"{0}"):p.c},p):{g:0,c:null,s:Ext.escapeRe(character)};};var $f=Date.formatCodeToRegex;Ext.apply(Date,{parseFunctions:{"M$":function(input,strict){var re=new RegExp('\\/Date\\(([-+])?(\\d+)(?:[+-]\\d{4})?\\)\\/');var r=(input||'').match(re);return r?new Date(((r[1]||'')+r[2])*1):null;}},parseRegexes:[],formatFunctions:{"M$":function(){return'\\/Date('+this.getTime()+')\\/';}},y2kYear:50,MILLI:"ms",SECOND:"s",MINUTE:"mi",HOUR:"h",DAY:"d",MONTH:"mo",YEAR:"y",defaults:{},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(month){return Date.monthNames[month].substring(0,3);},getShortDayName:function(day){return Date.dayNames[day].substring(0,3);},getMonthNumber:function(name){return Date.monthNumbers[name.substring(0,1).toUpperCase()+name.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:"String.leftPad(this.getFullYear(), 4, '0')",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 c="Y-m-dTH:i:sP",code=[],i=0,l=c.length;i<l;++i){var e=c.charAt(i);code.push(e=="T"?"'T'":Date.getFormatCode(e));} -return code.join(" + ");},U:"Math.round(this.getTime() / 1000)"},isValid:function(y,m,d,h,i,s,ms){h=h||0;i=i||0;s=s||0;ms=ms||0;var dt=new Date(y<100?100:y,m-1,d,h,i,s,ms).add(Date.YEAR,y<100?y-100:0);return y==dt.getFullYear()&&m==dt.getMonth()+1&&d==dt.getDate()&&h==dt.getHours()&&i==dt.getMinutes()&&s==dt.getSeconds()&&ms==dt.getMilliseconds();},parseDate:function(input,format,strict){var p=Date.parseFunctions;if(p[format]==null){Date.createParser(format);} -return p[format](input,Ext.isDefined(strict)?strict:Date.useStrict);},getFormatCode:function(character){var f=Date.formatCodes[character];if(f){f=typeof f=='function'?f():f;Date.formatCodes[character]=f;} -return f||("'"+String.escape(character)+"'");},createFormat:function(format){var code=[],special=false,ch='';for(var i=0;i<format.length;++i){ch=format.charAt(i);if(!special&&ch=="\\"){special=true;}else if(special){special=false;code.push("'"+String.escape(ch)+"'");}else{code.push(Date.getFormatCode(ch));}} -Date.formatFunctions[format]=new Function("return "+code.join('+'));},createParser:function(){var code=["var dt, y, m, d, h, i, s, ms, o, z, zz, u, v,","def = Date.defaults,","results = String(input).match(Date.parseRegexes[{0}]);","if(results){","{1}","if(u != null){","v = new Date(u * 1000);","}else{","dt = (new Date()).clearTime();","y = Ext.num(y, Ext.num(def.y, dt.getFullYear()));","m = Ext.num(m, Ext.num(def.m - 1, dt.getMonth()));","d = Ext.num(d, Ext.num(def.d, dt.getDate()));","h = Ext.num(h, Ext.num(def.h, dt.getHours()));","i = Ext.num(i, Ext.num(def.i, dt.getMinutes()));","s = Ext.num(s, Ext.num(def.s, dt.getSeconds()));","ms = Ext.num(ms, Ext.num(def.ms, dt.getMilliseconds()));","if(z >= 0 && y >= 0){","v = new Date(y < 100 ? 100 : y, 0, 1, h, i, s, ms).add(Date.YEAR, y < 100 ? y - 100 : 0);","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 < 100 ? 100 : y, m, d, h, i, s, ms).add(Date.YEAR, y < 100 ? y - 100 : 0);","}","}","}","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(format){var regexNum=Date.parseRegexes.length,currentGroup=1,calc=[],regex=[],special=false,ch="",i=0,obj,last;for(;i<format.length;++i){ch=format.charAt(i);if(!special&&ch=="\\"){special=true;}else if(special){special=false;regex.push(String.escape(ch));}else{obj=$f(ch,currentGroup);currentGroup+=obj.g;regex.push(obj.s);if(obj.g&&obj.c){if(obj.calcLast){last=obj.c;}else{calc.push(obj.c);}}}} -if(last){calc.push(last);} -Date.parseRegexes[regexNum]=new RegExp("^"+regex.join('')+"$",'i');Date.parseFunctions[format]=new Function("input","strict",xf(code,regexNum,calc.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 a=[],i=0;i<7;a.push(Date.getShortDayName(i)),++i);return{g:0,c:null,s:"(?:"+a.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 a=[],i=0;i<12;a.push(Date.getShortMonthName(i)),++i);return Ext.applyIf({s:"("+a.join("|")+")"},$f("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 $f("Y");},Y:{g:1,c:"y = parseInt(results[{0}], 10);\n",s:"(\\d{4})"},y:{g:1,c:"var ty = parseInt(results[{0}], 10);\n" -+"y = ty > Date.y2kYear ? 1900 + ty : 2000 + ty;\n",s:"(\\d{1,2})"},a:function(){return $f("A");},A:{calcLast:true,g:1,c:"if (/(am)/i.test(results[{0}])) {\n" -+"if (!h || h == 12) { h = 0; }\n" -+"} else { if (!h || h < 12) { h = (h || 0) + 12; }}",s:"(AM|PM|am|pm)"},g:function(){return $f("G");},G:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(\\d{1,2})"},h:function(){return $f("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;\n" -+"zz = (-43200 <= zz && zz <= 50400)? zz : null;\n",s:"([+\-]?\\d{1,5})"},c:function(){var calc=[],arr=[$f("Y",1),$f("m",2),$f("d",3),$f("h",4),$f("i",5),$f("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){",$f("P",8).c,"}else{",$f("O",8).c,"}","}"].join('\n')}];for(var i=0,l=arr.length;i<l;++i){calc.push(arr[i].c);} -return{g:1,c:calc.join(""),s:[arr[0].s,"(?:","-",arr[1].s,"(?:","-",arr[2].s,"(?:","(?:T| )?",arr[3].s,":",arr[4].s,"(?::",arr[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(format){if(Date.formatFunctions[format]==null){Date.createFormat(format);} -return Date.formatFunctions[format].call(this);},getTimezone:function(){return this.toString().replace(/^.* (?:\((.*)\)|([A-Z]{1,4})(?:[\-+][0-9]{4})?(?: -?\d+)?)$/,"$1$2").replace(/[^A-Z]/g,"");},getGMTOffset:function(colon){return(this.getTimezoneOffset()>0?"-":"+") -+String.leftPad(Math.floor(Math.abs(this.getTimezoneOffset())/60),2,"0") -+(colon?":":"") -+String.leftPad(Math.abs(this.getTimezoneOffset()%60),2,"0");},getDayOfYear:function(){var num=0,d=this.clone(),m=this.getMonth(),i;for(i=0,d.setDate(1),d.setMonth(0);i<m;d.setMonth(++i)){num+=d.getDaysInMonth();} -return num+this.getDate()-1;},getWeekOfYear:function(){var ms1d=864e5,ms7d=7*ms1d;return function(){var DC3=Date.UTC(this.getFullYear(),this.getMonth(),this.getDate()+3)/ms1d,AWN=Math.floor(DC3/7),Wyr=new Date(AWN*ms7d).getUTCFullYear();return AWN-Math.floor(Date.UTC(Wyr,0,7)/ms7d)+1;};}(),isLeapYear:function(){var year=this.getFullYear();return!!((year&3)==0&&(year%100||(year%400==0&&year)));},getFirstDayOfMonth:function(){var day=(this.getDay()-(this.getDate()-1))%7;return(day<0)?(day+7):day;},getLastDayOfMonth:function(){return this.getLastDateOfMonth().getDay();},getFirstDateOfMonth:function(){return new Date(this.getFullYear(),this.getMonth(),1);},getLastDateOfMonth:function(){return new Date(this.getFullYear(),this.getMonth(),this.getDaysInMonth());},getDaysInMonth:function(){var daysInMonth=[31,28,31,30,31,30,31,31,30,31,30,31];return function(){var m=this.getMonth();return m==1&&this.isLeapYear()?29:daysInMonth[m];};}(),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(clone){if(clone){return this.clone().clearTime();} -var d=this.getDate();this.setHours(0);this.setMinutes(0);this.setSeconds(0);this.setMilliseconds(0);if(this.getDate()!=d){for(var hr=1,c=this.add(Date.HOUR,hr);c.getDate()!=d;hr++,c=this.add(Date.HOUR,hr));this.setDate(d);this.setHours(c.getHours());} -return this;},add:function(interval,value){var d=this.clone();if(!interval||value===0)return d;switch(interval.toLowerCase()){case Date.MILLI:d.setMilliseconds(this.getMilliseconds()+value);break;case Date.SECOND:d.setSeconds(this.getSeconds()+value);break;case Date.MINUTE:d.setMinutes(this.getMinutes()+value);break;case Date.HOUR:d.setHours(this.getHours()+value);break;case Date.DAY:d.setDate(this.getDate()+value);break;case Date.MONTH:var day=this.getDate();if(day>28){day=Math.min(day,this.getFirstDateOfMonth().add('mo',value).getLastDateOfMonth().getDate());} -d.setDate(day);d.setMonth(this.getMonth()+value);break;case Date.YEAR:d.setFullYear(this.getFullYear()+value);break;} -return d;},between:function(start,end){var t=this.getTime();return start.getTime()<=t&&t<=end.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(num){if(num<=-1){var n=Math.ceil(-num),back_year=Math.ceil(n/12),month=(n%12)?12-n%12:0;this.setFullYear(this.getFullYear()-back_year);return this._xMonth(month);}else{return this._xMonth(num);}},setDate:function(d){return this.setTime(this.getTime()-(this.getDate()-d)*864e5);}});} -Ext.util.MixedCollection=function(allowFunctions,keyFn){this.items=[];this.map={};this.keys=[];this.length=0;this.addEvents('clear','add','replace','remove','sort');this.allowFunctions=allowFunctions===true;if(keyFn){this.getKey=keyFn;} -Ext.util.MixedCollection.superclass.constructor.call(this);};Ext.extend(Ext.util.MixedCollection,Ext.util.Observable,{allowFunctions:false,add:function(key,o){if(arguments.length==1){o=arguments[0];key=this.getKey(o);} -if(typeof key!='undefined'&&key!==null){var old=this.map[key];if(typeof old!='undefined'){return this.replace(key,o);} -this.map[key]=o;} -this.length++;this.items.push(o);this.keys.push(key);this.fireEvent('add',this.length-1,o,key);return o;},getKey:function(o){return o.id;},replace:function(key,o){if(arguments.length==1){o=arguments[0];key=this.getKey(o);} -var old=this.map[key];if(typeof key=='undefined'||key===null||typeof old=='undefined'){return this.add(key,o);} -var index=this.indexOfKey(key);this.items[index]=o;this.map[key]=o;this.fireEvent('replace',key,old,o);return o;},addAll:function(objs){if(arguments.length>1||Ext.isArray(objs)){var args=arguments.length>1?arguments:objs;for(var i=0,len=args.length;i<len;i++){this.add(args[i]);}}else{for(var key in objs){if(this.allowFunctions||typeof objs[key]!='function'){this.add(key,objs[key]);}}}},each:function(fn,scope){var items=[].concat(this.items);for(var i=0,len=items.length;i<len;i++){if(fn.call(scope||items[i],items[i],i,len)===false){break;}}},eachKey:function(fn,scope){for(var i=0,len=this.keys.length;i<len;i++){fn.call(scope||window,this.keys[i],this.items[i],i,len);}},find:function(fn,scope){for(var i=0,len=this.items.length;i<len;i++){if(fn.call(scope||window,this.items[i],this.keys[i])){return this.items[i];}} -return null;},insert:function(index,key,o){if(arguments.length==2){o=arguments[1];key=this.getKey(o);} -if(this.containsKey(key)){this.suspendEvents();this.removeKey(key);this.resumeEvents();} -if(index>=this.length){return this.add(key,o);} -this.length++;this.items.splice(index,0,o);if(typeof key!='undefined'&&key!==null){this.map[key]=o;} -this.keys.splice(index,0,key);this.fireEvent('add',index,o,key);return o;},remove:function(o){return this.removeAt(this.indexOf(o));},removeAt:function(index){if(index<this.length&&index>=0){this.length--;var o=this.items[index];this.items.splice(index,1);var key=this.keys[index];if(typeof key!='undefined'){delete this.map[key];} -this.keys.splice(index,1);this.fireEvent('remove',o,key);return o;} -return false;},removeKey:function(key){return this.removeAt(this.indexOfKey(key));},getCount:function(){return this.length;},indexOf:function(o){return this.items.indexOf(o);},indexOfKey:function(key){return this.keys.indexOf(key);},item:function(key){var mk=this.map[key],item=mk!==undefined?mk:(typeof key=='number')?this.items[key]:undefined;return typeof item!='function'||this.allowFunctions?item:null;},itemAt:function(index){return this.items[index];},key:function(key){return this.map[key];},contains:function(o){return this.indexOf(o)!=-1;},containsKey:function(key){return typeof this.map[key]!='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(property,dir,fn){var i,len,dsc=String(dir).toUpperCase()=='DESC'?-1:1,c=[],keys=this.keys,items=this.items;fn=fn||function(a,b){return a-b;};for(i=0,len=items.length;i<len;i++){c[c.length]={key:keys[i],value:items[i],index:i};} -c.sort(function(a,b){var v=fn(a[property],b[property])*dsc;if(v===0){v=(a.index<b.index?-1:1);} -return v;});for(i=0,len=c.length;i<len;i++){items[i]=c[i].value;keys[i]=c[i].key;} -this.fireEvent('sort',this);},sort:function(dir,fn){this._sort('value',dir,fn);},reorder:function(mapping){this.suspendEvents();var items=this.items,index=0,length=items.length,order=[],remaining=[],oldIndex;for(oldIndex in mapping){order[mapping[oldIndex]]=items[oldIndex];} -for(index=0;index<length;index++){if(mapping[index]==undefined){remaining.push(items[index]);}} -for(index=0;index<length;index++){if(order[index]==undefined){order[index]=remaining.shift();}} -this.clear();this.addAll(order);this.resumeEvents();this.fireEvent('sort',this);},keySort:function(dir,fn){this._sort('key',dir,fn||function(a,b){var v1=String(a).toUpperCase(),v2=String(b).toUpperCase();return v1>v2?1:(v1<v2?-1:0);});},getRange:function(start,end){var items=this.items;if(items.length<1){return[];} -start=start||0;end=Math.min(typeof end=='undefined'?this.length-1:end,this.length-1);var i,r=[];if(start<=end){for(i=start;i<=end;i++){r[r.length]=items[i];}}else{for(i=start;i>=end;i--){r[r.length]=items[i];}} -return r;},filter:function(property,value,anyMatch,caseSensitive){if(Ext.isEmpty(value,false)){return this.clone();} -value=this.createValueMatcher(value,anyMatch,caseSensitive);return this.filterBy(function(o){return o&&value.test(o[property]);});},filterBy:function(fn,scope){var r=new Ext.util.MixedCollection();r.getKey=this.getKey;var k=this.keys,it=this.items;for(var i=0,len=it.length;i<len;i++){if(fn.call(scope||this,it[i],k[i])){r.add(k[i],it[i]);}} -return r;},findIndex:function(property,value,start,anyMatch,caseSensitive){if(Ext.isEmpty(value,false)){return-1;} -value=this.createValueMatcher(value,anyMatch,caseSensitive);return this.findIndexBy(function(o){return o&&value.test(o[property]);},null,start);},findIndexBy:function(fn,scope,start){var k=this.keys,it=this.items;for(var i=(start||0),len=it.length;i<len;i++){if(fn.call(scope||this,it[i],k[i])){return i;}} -return-1;},createValueMatcher:function(value,anyMatch,caseSensitive,exactMatch){if(!value.exec){var er=Ext.escapeRe;value=String(value);if(anyMatch===true){value=er(value);}else{value='^'+er(value);if(exactMatch===true){value+='$';}} -value=new RegExp(value,caseSensitive?'':'i');} -return value;},clone:function(){var r=new Ext.util.MixedCollection();var k=this.keys,it=this.items;for(var i=0,len=it.length;i<len;i++){r.add(k[i],it[i]);} -r.getKey=this.getKey;return r;}});Ext.util.MixedCollection.prototype.get=Ext.util.MixedCollection.prototype.item;Ext.AbstractManager=Ext.extend(Object,{typeName:'type',constructor:function(config){Ext.apply(this,config||{});this.all=new Ext.util.MixedCollection();this.types={};},get:function(id){return this.all.get(id);},register:function(item){this.all.add(item);},unregister:function(item){this.all.remove(item);},registerType:function(type,cls){this.types[type]=cls;cls[this.typeName]=type;},isRegistered:function(type){return this.types[type]!==undefined;},create:function(config,defaultType){var type=config[this.typeName]||config.type||defaultType,Constructor=this.types[type];if(Constructor==undefined){throw new Error(String.format("The '{0}' type has not been registered with this manager",type));} -return new Constructor(config);},onAvailable:function(id,fn,scope){var all=this.all;all.on("add",function(index,o){if(o.id==id){fn.call(scope||o,o);all.un("add",fn,scope);}});}});Ext.util.Format=function(){var trimRe=/^\s+|\s+$/g,stripTagsRE=/<\/?[^>]+>/gi,stripScriptsRe=/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,nl2brRe=/\r?\n/g;return{ellipsis:function(value,len,word){if(value&&value.length>len){if(word){var vs=value.substr(0,len-2),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,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""");},htmlDecode:function(value){return!value?value:String(value).replace(/>/g,">").replace(/</g,"<").replace(/"/g,'"').replace(/&/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('.'),whole=ps[0],sub=ps[1]?'.'+ps[1]:'.00',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);};},stripTags:function(v){return!v?v:String(v).replace(stripTagsRE,"");},stripScripts:function(v){return!v?v:String(v).replace(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=Ext.num(v,NaN);if(isNaN(v)){return'';} -var comma=',',dec='.',i18n=false,neg=v<0;v=Math.abs(v);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();psplit=fnum.split('.');if(hasComma){var cnum=psplit[0],parr=[],j=cnum.length,m=Math.floor(j/3),n=cnum.length%3||3,i;for(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];}}else{if(psplit[1]){fnum=psplit[0]+dec+psplit[1];}} -return(neg?'-':'')+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 Ext.isEmpty(v)?'':v.replace(nl2brRe,'<br/>');}};}();Ext.XTemplate=function(){Ext.XTemplate.superclass.constructor.apply(this,arguments);var me=this,s=me.html,re=/<tpl\b[^>]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>/,nameRe=/^<tpl\b[^>]*?for="(.*?)"/,ifRe=/^<tpl\b[^>]*?if="(.*?)"/,execRe=/^<tpl\b[^>]*?exec="(.*?)"/,m,id=0,tpls=[],VALUES='values',PARENT='parent',XINDEX='xindex',XCOUNT='xcount',RETURN='return ',WITHVALUES='with(values){ ';s=['<tpl>',s,'</tpl>'].join('');while((m=s.match(re))){var m2=m[0].match(nameRe),m3=m[0].match(ifRe),m4=m[0].match(execRe),exp=null,fn=null,exec=null,name=m2&&m2[1]?m2[1]:'';if(m3){exp=m3&&m3[1]?m3[1]:null;if(exp){fn=new Function(VALUES,PARENT,XINDEX,XCOUNT,WITHVALUES+RETURN+(Ext.util.Format.htmlDecode(exp))+'; }');}} -if(m4){exp=m4&&m4[1]?m4[1]:null;if(exp){exec=new Function(VALUES,PARENT,XINDEX,XCOUNT,WITHVALUES+(Ext.util.Format.htmlDecode(exp))+'; }');}} -if(name){switch(name){case'.':name=new Function(VALUES,PARENT,WITHVALUES+RETURN+VALUES+'; }');break;case'..':name=new Function(VALUES,PARENT,WITHVALUES+RETURN+PARENT+'; }');break;default:name=new Function(VALUES,PARENT,WITHVALUES+RETURN+name+'; }');}} -tpls.push({id:id,target:name,exec:exec,test:fn,body:m[1]||''});s=s.replace(m[0],'{xtpl'+id+'}');++id;} -for(var i=tpls.length-1;i>=0;--i){me.compileTpl(tpls[i]);} -me.master=tpls[tpls.length-1];me.tpls=tpls;};Ext.extend(Ext.XTemplate,Ext.Template,{re:/\{([\w-\.\#]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?(\s?[\+\-\*\\]\s?[\d\.\+\-\*\\\(\)]+)?\}/g,codeRe:/\{\[((?:\\\]|.|\n)*?)\]\}/g,applySubTemplate:function(id,values,parent,xindex,xcount){var me=this,len,t=me.tpls[id],vs,buf=[];if((t.test&&!t.test.call(me,values,parent,xindex,xcount))||(t.exec&&t.exec.call(me,values,parent,xindex,xcount))){return'';} -vs=t.target?t.target.call(me,values,parent):values;len=vs.length;parent=t.target?values:parent;if(t.target&&Ext.isArray(vs)){for(var i=0,len=vs.length;i<len;i++){buf[buf.length]=t.compiled.call(me,vs[i],parent,i+1,len);} -return buf.join('');} -return t.compiled.call(me,vs,parent,xindex,xcount);},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.replace(/\\'/g,"'")+')'+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(values){return this.master.compiled.call(this,values,{},1,1);},compile:function(){return this;}});Ext.XTemplate.prototype.apply=Ext.XTemplate.prototype.applyTemplate;Ext.XTemplate.from=function(el){el=Ext.getDom(el);return new Ext.XTemplate(el.value||el.innerHTML);};Ext.util.CSS=function(){var rules=null;var doc=document;var camelRe=/(-[a-z])/gi;var camelFn=function(m,a){return a.charAt(1).toUpperCase();};return{createStyleSheet:function(cssText,id){var ss;var head=doc.getElementsByTagName("head")[0];var rules=doc.createElement("style");rules.setAttribute("type","text/css");if(id){rules.setAttribute("id",id);} -if(Ext.isIE){head.appendChild(rules);ss=rules.styleSheet;ss.cssText=cssText;}else{try{rules.appendChild(doc.createTextNode(cssText));}catch(e){rules.cssText=cssText;} -head.appendChild(rules);ss=rules.styleSheet?rules.styleSheet:(rules.sheet||doc.styleSheets[doc.styleSheets.length-1]);} -this.cacheStyleSheet(ss);return ss;},removeStyleSheet:function(id){var existing=doc.getElementById(id);if(existing){existing.parentNode.removeChild(existing);}},swapStyleSheet:function(id,url){this.removeStyleSheet(id);var ss=doc.createElement("link");ss.setAttribute("rel","stylesheet");ss.setAttribute("type","text/css");ss.setAttribute("id",id);ss.setAttribute("href",url);doc.getElementsByTagName("head")[0].appendChild(ss);},refreshCache:function(){return this.getRules(true);},cacheStyleSheet:function(ss){if(!rules){rules={};} -try{var ssRules=ss.cssRules||ss.rules;for(var j=ssRules.length-1;j>=0;--j){rules[ssRules[j].selectorText.toLowerCase()]=ssRules[j];}}catch(e){}},getRules:function(refreshCache){if(rules===null||refreshCache){rules={};var ds=doc.styleSheets;for(var i=0,len=ds.length;i<len;i++){try{this.cacheStyleSheet(ds[i]);}catch(e){}}} -return rules;},getRule:function(selector,refreshCache){var rs=this.getRules(refreshCache);if(!Ext.isArray(selector)){return rs[selector.toLowerCase()];} -for(var i=0;i<selector.length;i++){if(rs[selector[i]]){return rs[selector[i].toLowerCase()];}} -return null;},updateRule:function(selector,property,value){if(!Ext.isArray(selector)){var rule=this.getRule(selector);if(rule){rule.style[property.replace(camelRe,camelFn)]=value;return true;}}else{for(var i=0;i<selector.length;i++){if(this.updateRule(selector[i],property,value)){return true;}}} -return false;}};}();Ext.util.ClickRepeater=Ext.extend(Ext.util.Observable,{constructor:function(el,config){this.el=Ext.get(el);this.el.unselectable();Ext.apply(this,config);this.addEvents("mousedown","click","mouseup");if(!this.disabled){this.disabled=true;this.enable();} -if(this.handler){this.on("click",this.handler,this.scope||this);} -Ext.util.ClickRepeater.superclass.constructor.call(this);},interval:20,delay:250,preventDefault:true,stopDefault:false,timer:0,enable:function(){if(this.disabled){this.el.on('mousedown',this.handleMouseDown,this);if(Ext.isIE){this.el.on('dblclick',this.handleDblClick,this);} -if(this.preventDefault||this.stopDefault){this.el.on('click',this.eventOptions,this);}} -this.disabled=false;},disable:function(force){if(force||!this.disabled){clearTimeout(this.timer);if(this.pressClass){this.el.removeClass(this.pressClass);} -Ext.getDoc().un('mouseup',this.handleMouseUp,this);this.el.removeAllListeners();} -this.disabled=true;},setDisabled:function(disabled){this[disabled?'disable':'enable']();},eventOptions:function(e){if(this.preventDefault){e.preventDefault();} -if(this.stopDefault){e.stopEvent();}},destroy:function(){this.disable(true);Ext.destroy(this.el);this.purgeListeners();},handleDblClick:function(e){clearTimeout(this.timer);this.el.blur();this.fireEvent("mousedown",this,e);this.fireEvent("click",this,e);},handleMouseDown:function(e){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,e);this.fireEvent("click",this,e);if(this.accelerate){this.delay=400;} -this.timer=this.click.defer(this.delay||this.interval,this,[e]);},click:function(e){this.fireEvent("click",this,e);this.timer=this.click.defer(this.accelerate?this.easeOutExpo(this.mousedownTime.getElapsed(),400,-390,12000):this.interval,this,[e]);},easeOutExpo:function(t,b,c,d){return(t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b;},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(e){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,e);}});Ext.KeyNav=function(el,config){this.el=Ext.get(el);Ext.apply(this,config);if(!this.disabled){this.disabled=true;this.enable();}};Ext.KeyNav.prototype={disabled:false,defaultEventAction:"stopEvent",forceKeyDown:false,relay:function(e){var k=e.getKey(),h=this.keyToHandler[k];if(h&&this[h]){if(this.doRelay(e,this[h],h)!==true){e[this.defaultEventAction]();}}},doRelay:function(e,h,hname){return h.call(this.scope||this,e,hname);},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"},stopKeyUp:function(e){var k=e.getKey();if(k>=37&&k<=40){e.stopEvent();}},destroy:function(){this.disable();},enable:function(){if(this.disabled){if(Ext.isSafari2){this.el.on('keyup',this.stopKeyUp,this);} -this.el.on(this.isKeydown()?'keydown':'keypress',this.relay,this);this.disabled=false;}},disable:function(){if(!this.disabled){if(Ext.isSafari2){this.el.un('keyup',this.stopKeyUp,this);} -this.el.un(this.isKeydown()?'keydown':'keypress',this.relay,this);this.disabled=true;}},setDisabled:function(disabled){this[disabled?"disable":"enable"]();},isKeydown:function(){return this.forceKeyDown||Ext.EventManager.useKeydown;}};Ext.KeyMap=function(el,config,eventName){this.el=Ext.get(el);this.eventName=eventName||"keydown";this.bindings=[];if(config){this.addBinding(config);} -this.enable();};Ext.KeyMap.prototype={stopEvent:false,addBinding:function(config){if(Ext.isArray(config)){Ext.each(config,function(c){this.addBinding(c);},this);return;} -var keyCode=config.key,fn=config.fn||config.handler,scope=config.scope;if(config.stopEvent){this.stopEvent=config.stopEvent;} -if(typeof keyCode=="string"){var ks=[];var keyString=keyCode.toUpperCase();for(var j=0,len=keyString.length;j<len;j++){ks.push(keyString.charCodeAt(j));} -keyCode=ks;} -var keyArray=Ext.isArray(keyCode);var handler=function(e){if(this.checkModifiers(config,e)){var k=e.getKey();if(keyArray){for(var i=0,len=keyCode.length;i<len;i++){if(keyCode[i]==k){if(this.stopEvent){e.stopEvent();} -fn.call(scope||window,k,e);return;}}}else{if(k==keyCode){if(this.stopEvent){e.stopEvent();} -fn.call(scope||window,k,e);}}}};this.bindings.push(handler);},checkModifiers:function(config,e){var val,key,keys=['shift','ctrl','alt'];for(var i=0,len=keys.length;i<len;++i){key=keys[i];val=config[key];if(!(val===undefined||(val===e[key+'Key']))){return false;}} -return true;},on:function(key,fn,scope){var keyCode,shift,ctrl,alt;if(typeof key=="object"&&!Ext.isArray(key)){keyCode=key.key;shift=key.shift;ctrl=key.ctrl;alt=key.alt;}else{keyCode=key;} -this.addBinding({key:keyCode,shift:shift,ctrl:ctrl,alt:alt,fn:fn,scope:scope});},handleKeyDown:function(e){if(this.enabled){var b=this.bindings;for(var i=0,len=b.length;i<len;i++){b[i].call(this,e);}}},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(disabled){this[disabled?"disable":"enable"]();}};Ext.util.TextMetrics=function(){var shared;return{measure:function(el,text,fixedWidth){if(!shared){shared=Ext.util.TextMetrics.Instance(el,fixedWidth);} -shared.bind(el);shared.setFixedWidth(fixedWidth||'auto');return shared.getSize(text);},createInstance:function(el,fixedWidth){return Ext.util.TextMetrics.Instance(el,fixedWidth);}};}();Ext.util.TextMetrics.Instance=function(bindTo,fixedWidth){var ml=new Ext.Element(document.createElement('div'));document.body.appendChild(ml.dom);ml.position('absolute');ml.setLeftTop(-1000,-1000);ml.hide();if(fixedWidth){ml.setWidth(fixedWidth);} -var instance={getSize:function(text){ml.update(text);var s=ml.getSize();ml.update('');return s;},bind:function(el){ml.setStyle(Ext.fly(el).getStyles('font-size','font-style','font-weight','font-family','line-height','text-transform','letter-spacing'));},setFixedWidth:function(width){ml.setWidth(width);},getWidth:function(text){ml.dom.style.width='auto';return this.getSize(text).width;},getHeight:function(text){return this.getSize(text).height;}};instance.bind(bindTo);return instance;};Ext.Element.addMethods({getTextWidth:function(text,min,max){return(Ext.util.TextMetrics.measure(this.dom,Ext.value(text,this.dom.innerHTML,true)).width).constrain(min||0,max||1000000);}});Ext.util.Cookies={set:function(name,value){var argv=arguments;var argc=arguments.length;var expires=(argc>2)?argv[2]:null;var path=(argc>3)?argv[3]:'/';var domain=(argc>4)?argv[4]:null;var secure=(argc>5)?argv[5]:false;document.cookie=name+"="+escape(value)+((expires===null)?"":("; expires="+expires.toGMTString()))+((path===null)?"":("; path="+path))+((domain===null)?"":("; domain="+domain))+((secure===true)?"; secure":"");},get:function(name){var arg=name+"=";var alen=arg.length;var clen=document.cookie.length;var i=0;var j=0;while(i<clen){j=i+alen;if(document.cookie.substring(i,j)==arg){return Ext.util.Cookies.getCookieVal(j);} -i=document.cookie.indexOf(" ",i)+1;if(i===0){break;}} -return null;},clear:function(name){if(Ext.util.Cookies.get(name)){document.cookie=name+"="+"; expires=Thu, 01-Jan-70 00:00:01 GMT";}},getCookieVal:function(offset){var endstr=document.cookie.indexOf(";",offset);if(endstr==-1){endstr=document.cookie.length;} -return unescape(document.cookie.substring(offset,endstr));}};Ext.handleError=function(e){throw e;};Ext.Error=function(message){this.message=(this.lang[message])?this.lang[message]:message;};Ext.Error.prototype=new Error();Ext.apply(Ext.Error.prototype,{lang:{},name:'Ext.Error',getName:function(){return this.name;},getMessage:function(){return this.message;},toJson:function(){return Ext.encode(this);}});Ext.ComponentMgr=function(){var all=new Ext.util.MixedCollection();var types={};var ptypes={};return{register:function(c){all.add(c);},unregister:function(c){all.remove(c);},get:function(id){return all.get(id);},onAvailable:function(id,fn,scope){all.on("add",function(index,o){if(o.id==id){fn.call(scope||o,o);all.un("add",fn,scope);}});},all:all,types:types,ptypes:ptypes,isRegistered:function(xtype){return types[xtype]!==undefined;},isPluginRegistered:function(ptype){return ptypes[ptype]!==undefined;},registerType:function(xtype,cls){types[xtype]=cls;cls.xtype=xtype;},create:function(config,defaultType){return config.render?config:new types[config.xtype||defaultType](config);},registerPlugin:function(ptype,cls){ptypes[ptype]=cls;cls.ptype=ptype;},createPlugin:function(config,defaultType){var PluginCls=ptypes[config.ptype||defaultType];if(PluginCls.init){return PluginCls;}else{return new PluginCls(config);}}};}();Ext.reg=Ext.ComponentMgr.registerType;Ext.preg=Ext.ComponentMgr.registerPlugin;Ext.create=Ext.ComponentMgr.create;Ext.Component=function(config){config=config||{};if(config.initialConfig){if(config.isAction){this.baseAction=config;} -config=config.initialConfig;}else if(config.tagName||config.dom||Ext.isString(config)){config={applyTo:config,id:config.id||config};} -this.initialConfig=config;Ext.apply(this,config);this.addEvents('added','disable','enable','beforeshow','show','beforehide','hide','removed','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 i=0,len=this.plugins.length;i<len;i++){this.plugins[i]=this.initPlugin(this.plugins[i]);}}else{this.plugins=this.initPlugin(this.plugins);}} -if(this.stateful!==false){this.initState();} -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,{disabled:false,hidden:false,autoEl:'div',disabledClass:'x-item-disabled',allowDomMove:true,autoShow:false,hideMode:'display',hideParent:false,rendered:false,tplWriteMode:'overwrite',bubbleEvents:[],ctype:'Ext.Component',actionMode:'el',getActionEl:function(){return this[this.actionMode];},initPlugin:function(p){if(p.ptype&&!Ext.isFunction(p.init)){p=Ext.ComponentMgr.createPlugin(p);}else if(Ext.isString(p)){p=Ext.ComponentMgr.createPlugin({ptype:p});} -p.init(this);return p;},initComponent:function(){if(this.listeners){this.on(this.listeners);delete this.listeners;} -this.enableBubble(this.bubbleEvents);},render:function(container,position){if(!this.rendered&&this.fireEvent('beforerender',this)!==false){if(!container&&this.el){this.el=Ext.get(this.el);container=this.el.dom.parentNode;this.allowDomMove=false;} -this.container=Ext.get(container);if(this.ctCls){this.container.addClass(this.ctCls);} -this.rendered=true;if(position!==undefined){if(Ext.isNumber(position)){position=this.container.dom.childNodes[position];}else{position=Ext.getDom(position);}} -this.onRender(this.container,position||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);var contentTarget=this.getContentTarget();if(this.html){contentTarget.update(Ext.DomHelper.markup(this.html));delete this.html;} -if(this.contentEl){var ce=Ext.getDom(this.contentEl);Ext.fly(ce).removeClass(['x-hidden','x-hide-display']);contentTarget.appendChild(ce);} -if(this.tpl){if(!this.tpl.compile){this.tpl=new Ext.XTemplate(this.tpl);} -if(this.data){this.tpl[this.tplWriteMode](contentTarget,this.data);delete this.data;}} -this.afterRender(this.container);if(this.hidden){this.doHide();} -if(this.disabled){this.disable(true);} -if(this.stateful!==false){this.initStateEvents();} -this.fireEvent('afterrender',this);} -return this;},update:function(htmlOrData,loadScripts,cb){var contentTarget=this.getContentTarget();if(this.tpl&&typeof htmlOrData!=="string"){this.tpl[this.tplWriteMode](contentTarget,htmlOrData||{});}else{var html=Ext.isObject(htmlOrData)?Ext.DomHelper.markup(htmlOrData):htmlOrData;contentTarget.update(html,loadScripts,cb);}},onAdded:function(container,pos){this.ownerCt=container;this.initRef();this.fireEvent('added',this,container,pos);},onRemoved:function(){this.removeRef();this.fireEvent('removed',this,this.ownerCt);delete this.ownerCt;},initRef:function(){if(this.ref&&!this.refOwner){var levels=this.ref.split('/'),last=levels.length,i=0,t=this;while(t&&i<last){t=t.ownerCt;++i;} -if(t){t[this.refName=levels[--i]]=this;this.refOwner=t;}}},removeRef:function(){if(this.refOwner&&this.refName){delete this.refOwner[this.refName];delete this.refOwner;}},initState:function(){if(Ext.state.Manager){var id=this.getStateId();if(id){var state=Ext.state.Manager.get(id);if(state){if(this.fireEvent('beforestaterestore',this,state)!==false){this.applyState(Ext.apply({},state));this.fireEvent('staterestore',this,state);}}}}},getStateId:function(){return this.stateId||((/^(ext-comp-|ext-gen)/).test(String(this.id))?null:this.id);},initStateEvents:function(){if(this.stateEvents){for(var i=0,e;e=this.stateEvents[i];i++){this.on(e,this.saveState,this,{delay:100});}}},applyState:function(state){if(state){Ext.apply(this,state);}},getState:function(){return null;},saveState:function(){if(Ext.state.Manager&&this.stateful!==false){var id=this.getStateId();if(id){var state=this.getState();if(this.fireEvent('beforestatesave',this,state)!==false){Ext.state.Manager.set(id,state);this.fireEvent('statesave',this,state);}}}},applyToMarkup:function(el){this.allowDomMove=false;this.el=Ext.get(el);this.render(this.el.dom.parentNode);},addClass:function(cls){if(this.el){this.el.addClass(cls);}else{this.cls=this.cls?this.cls+' '+cls:cls;} -return this;},removeClass:function(cls){if(this.el){this.el.removeClass(cls);}else if(this.cls){this.cls=this.cls.split(' ').remove(cls).join(' ');} -return this;},onRender:function(ct,position){if(!this.el&&this.autoEl){if(Ext.isString(this.autoEl)){this.el=document.createElement(this.autoEl);}else{var div=document.createElement('div');Ext.DomHelper.overwrite(div,this.autoEl);this.el=div.firstChild;} -if(!this.el.id){this.el.id=this.getId();}} -if(this.el){this.el=Ext.get(this.el);if(this.allowDomMove!==false){ct.dom.insertBefore(this.el.dom,position);if(div){Ext.removeNode(div);div=null;}}}},getAutoCreate:function(){var cfg=Ext.isObject(this.autoCreate)?this.autoCreate:Ext.apply({},this.defaultAutoCreate);if(this.id&&!cfg.id){cfg.id=this.id;} -return cfg;},afterRender:Ext.emptyFn,destroy:function(){if(!this.isDestroyed){if(this.fireEvent('beforedestroy',this)!==false){this.destroying=true;this.beforeDestroy();if(this.ownerCt&&this.ownerCt.remove){this.ownerCt.remove(this,false);} -if(this.rendered){this.el.remove();if(this.actionMode=='container'||this.removeMode=='container'){this.container.remove();}} -if(this.focusTask&&this.focusTask.cancel){this.focusTask.cancel();} -this.onDestroy();Ext.ComponentMgr.unregister(this);this.fireEvent('destroy',this);this.purgeListeners();this.destroying=false;this.isDestroyed=true;}}},deleteMembers:function(){var args=arguments;for(var i=0,len=args.length;i<len;++i){delete this[args[i]];}},beforeDestroy:Ext.emptyFn,onDestroy:Ext.emptyFn,getEl:function(){return this.el;},getContentTarget: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(selectText,delay){if(delay){this.focusTask=new Ext.util.DelayedTask(this.focus,this,[selectText,false]);this.focusTask.delay(Ext.isNumber(delay)?delay:10);return this;} -if(this.rendered&&!this.isDestroyed){this.el.focus();if(selectText===true){this.el.dom.select();}} -return this;},blur:function(){if(this.rendered){this.el.blur();} -return this;},disable:function(silent){if(this.rendered){this.onDisable();} -this.disabled=true;if(silent!==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(disabled){return this[disabled?'disable':'enable']();},show:function(){if(this.fireEvent('beforeshow',this)!==false){this.hidden=false;if(this.autoRender){this.render(Ext.isBoolean(this.autoRender)?Ext.getBody():this.autoRender);} -if(this.rendered){this.onShow();} -this.fireEvent('show',this);} -return this;},onShow:function(){this.getVisibilityEl().removeClass('x-hide-'+this.hideMode);},hide:function(){if(this.fireEvent('beforehide',this)!==false){this.doHide();this.fireEvent('hide',this);} -return this;},doHide:function(){this.hidden=true;if(this.rendered){this.onHide();}},onHide:function(){this.getVisibilityEl().addClass('x-hide-'+this.hideMode);},getVisibilityEl:function(){return this.hideParent?this.container:this.getActionEl();},setVisible:function(visible){return this[visible?'show':'hide']();},isVisible:function(){return this.rendered&&this.getVisibilityEl().isVisible();},cloneConfig:function(overrides){overrides=overrides||{};var id=overrides.id||Ext.id();var cfg=Ext.applyIf(overrides,this.initialConfig);cfg.id=id;return new this.constructor(cfg);},getXType:function(){return this.constructor.xtype;},isXType:function(xtype,shallow){if(Ext.isFunction(xtype)){xtype=xtype.xtype;}else if(Ext.isObject(xtype)){xtype=xtype.constructor.xtype;} -return!shallow?('/'+this.getXTypes()+'/').indexOf('/'+xtype+'/')!=-1:this.constructor.xtype==xtype;},getXTypes:function(){var tc=this.constructor;if(!tc.xtypes){var c=[],sc=this;while(sc&&sc.constructor.xtype){c.unshift(sc.constructor.xtype);sc=sc.constructor.superclass;} -tc.xtypeChain=c;tc.xtypes=c.join('/');} -return tc.xtypes;},findParentBy:function(fn){for(var p=this.ownerCt;(p!=null)&&!fn(p,this);p=p.ownerCt);return p||null;},findParentByType:function(xtype,shallow){return this.findParentBy(function(c){return c.isXType(xtype,shallow);});},bubble:function(fn,scope,args){var p=this;while(p){if(fn.apply(scope||p,args||[p])===false){break;} -p=p.ownerCt;} -return this;},getPositionEl:function(){return this.positionEl||this.el;},purgeListeners:function(){Ext.Component.superclass.purgeListeners.call(this);if(this.mons){this.on('beforedestroy',this.clearMons,this,{single:true});}},clearMons:function(){Ext.each(this.mons,function(m){m.item.un(m.ename,m.fn,m.scope);},this);this.mons=[];},createMons:function(){if(!this.mons){this.mons=[];this.on('beforedestroy',this.clearMons,this,{single:true});}},mon:function(item,ename,fn,scope,opt){this.createMons();if(Ext.isObject(ename)){var propRe=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;var o=ename;for(var e in o){if(propRe.test(e)){continue;} -if(Ext.isFunction(o[e])){this.mons.push({item:item,ename:e,fn:o[e],scope:o.scope});item.on(e,o[e],o.scope,o);}else{this.mons.push({item:item,ename:e,fn:o[e],scope:o.scope});item.on(e,o[e]);}} -return;} -this.mons.push({item:item,ename:ename,fn:fn,scope:scope});item.on(ename,fn,scope,opt);},mun:function(item,ename,fn,scope){var found,mon;this.createMons();for(var i=0,len=this.mons.length;i<len;++i){mon=this.mons[i];if(item===mon.item&&ename==mon.ename&&fn===mon.fn&&scope===mon.scope){this.mons.splice(i,1);item.un(ename,fn,scope);found=true;break;}} -return found;},nextSibling:function(){if(this.ownerCt){var index=this.ownerCt.items.indexOf(this);if(index!=-1&&index+1<this.ownerCt.items.getCount()){return this.ownerCt.items.itemAt(index+1);}} -return null;},previousSibling:function(){if(this.ownerCt){var index=this.ownerCt.items.indexOf(this);if(index>0){return this.ownerCt.items.itemAt(index-1);}} -return null;},getBubbleTarget:function(){return this.ownerCt;}});Ext.reg('component',Ext.Component);Ext.Action=Ext.extend(Object,{constructor:function(config){this.initialConfig=config;this.itemId=config.itemId=(config.itemId||config.id||Ext.id());this.items=[];},isAction:true,setText:function(text){this.initialConfig.text=text;this.callEach('setText',[text]);},getText:function(){return this.initialConfig.text;},setIconClass:function(cls){this.initialConfig.iconCls=cls;this.callEach('setIconClass',[cls]);},getIconClass:function(){return this.initialConfig.iconCls;},setDisabled:function(v){this.initialConfig.disabled=v;this.callEach('setDisabled',[v]);},enable:function(){this.setDisabled(false);},disable:function(){this.setDisabled(true);},isDisabled:function(){return this.initialConfig.disabled;},setHidden:function(v){this.initialConfig.hidden=v;this.callEach('setVisible',[!v]);},show:function(){this.setHidden(false);},hide:function(){this.setHidden(true);},isHidden:function(){return this.initialConfig.hidden;},setHandler:function(fn,scope){this.initialConfig.handler=fn;this.initialConfig.scope=scope;this.callEach('setHandler',[fn,scope]);},each:function(fn,scope){Ext.each(this.items,fn,scope);},callEach:function(fnName,args){var cs=this.items;for(var i=0,len=cs.length;i<len;i++){cs[i][fnName].apply(cs[i],args);}},addComponent:function(comp){this.items.push(comp);comp.on('destroy',this.removeComponent,this);},removeComponent:function(comp){this.items.remove(comp);},execute:function(){this.initialConfig.handler.apply(this.initialConfig.scope||window,arguments);}});(function(){Ext.Layer=function(config,existingEl){config=config||{};var dh=Ext.DomHelper,cp=config.parentEl,pel=cp?Ext.getDom(cp):document.body;if(existingEl){this.dom=Ext.getDom(existingEl);} -if(!this.dom){var o=config.dh||{tag:'div',cls:'x-layer'};this.dom=dh.append(pel,o);} -if(config.cls){this.addClass(config.cls);} -this.constrain=config.constrain!==false;this.setVisibilityMode(Ext.Element.VISIBILITY);if(config.id){this.id=this.dom.id=config.id;}else{this.id=Ext.id(this.dom);} -this.zindex=config.zindex||this.getZIndex();this.position('absolute',this.zindex);if(config.shadow){this.shadowOffset=config.shadowOffset||4;this.shadow=new Ext.Shadow({offset:this.shadowOffset,mode:config.shadow});}else{this.shadowOffset=0;} -this.useShim=config.shim!==false&&Ext.useShims;this.useDisplay=config.useDisplay;this.hide();};var supr=Ext.Element.prototype;var shims=[];Ext.extend(Ext.Layer,Ext.Element,{getZIndex:function(){return this.zindex||parseInt((this.getShim()||this).getStyle('z-index'),10)||11000;},getShim:function(){if(!this.useShim){return null;} -if(this.shim){return this.shim;} -var shim=shims.shift();if(!shim){shim=this.createShim();shim.enableDisplayMode('block');shim.dom.style.display='none';shim.dom.style.visibility='visible';} -var pn=this.dom.parentNode;if(shim.dom.parentNode!=pn){pn.insertBefore(shim.dom,this.dom);} -shim.setStyle('z-index',this.getZIndex()-2);this.shim=shim;return shim;},hideShim:function(){if(this.shim){this.shim.setDisplayed(false);shims.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(show){if(this.shadow){this.shadowDisabled=false;this.shadowOffset=this.lastShadowOffset;delete this.lastShadowOffset;if(show){this.sync(true);}}},sync:function(doShow){var shadow=this.shadow;if(!this.updating&&this.isVisible()&&(shadow||this.useShim)){var shim=this.getShim(),w=this.getWidth(),h=this.getHeight(),l=this.getLeft(true),t=this.getTop(true);if(shadow&&!this.shadowDisabled){if(doShow&&!shadow.isVisible()){shadow.show(this);}else{shadow.realign(l,t,w,h);} -if(shim){if(doShow){shim.show();} -var shadowAdj=shadow.el.getXY(),shimStyle=shim.dom.style,shadowSize=shadow.el.getSize();shimStyle.left=(shadowAdj[0])+'px';shimStyle.top=(shadowAdj[1])+'px';shimStyle.width=(shadowSize.width)+'px';shimStyle.height=(shadowSize.height)+'px';}}else if(shim){if(doShow){shim.show();} -shim.setSize(w,h);shim.setLeftTop(l,t);}}},destroy:function(){this.hideShim();if(this.shadow){this.shadow.hide();} -this.removeAllListeners();Ext.removeNode(this.dom);delete this.dom;},remove:function(){this.destroy();},beginUpdate:function(){this.updating=true;},endUpdate:function(){this.updating=false;this.sync(true);},hideUnders:function(negOffset){if(this.shadow){this.shadow.hide();} -this.hideShim();},constrainXY:function(){if(this.constrain){var vw=Ext.lib.Dom.getViewWidth(),vh=Ext.lib.Dom.getViewHeight();var s=Ext.getDoc().getScroll();var xy=this.getXY();var x=xy[0],y=xy[1];var so=this.shadowOffset;var w=this.dom.offsetWidth+so,h=this.dom.offsetHeight+so;var moved=false;if((x+w)>vw+s.left){x=vw-w-so;moved=true;} -if((y+h)>vh+s.top){y=vh-h-so;moved=true;} -if(x<s.left){x=s.left;moved=true;} -if(y<s.top){y=s.top;moved=true;} -if(moved){if(this.avoidY){var ay=this.avoidY;if(y<=ay&&(y+h)>=ay){y=ay-h-5;}} -xy=[x,y];this.storeXY(xy);supr.setXY.call(this,xy);this.sync();}} -return this;},getConstrainOffset:function(){return this.shadowOffset;},isVisible:function(){return this.visible;},showAction:function(){this.visible=true;if(this.useDisplay===true){this.setDisplayed('');}else if(this.lastXY){supr.setXY.call(this,this.lastXY);}else if(this.lastLT){supr.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(v,a,d,c,e){if(v){this.showAction();} -if(a&&v){var cb=function(){this.sync(true);if(c){c();}}.createDelegate(this);supr.setVisible.call(this,true,true,d,cb,e);}else{if(!v){this.hideUnders(true);} -var cb=c;if(a){cb=function(){this.hideAction();if(c){c();}}.createDelegate(this);} -supr.setVisible.call(this,v,a,d,cb,e);if(v){this.sync(true);}else if(!a){this.hideAction();}} -return this;},storeXY:function(xy){delete this.lastLT;this.lastXY=xy;},storeLeftTop:function(left,top){delete this.lastXY;this.lastLT=[left,top];},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(left){this.storeLeftTop(left,this.getTop(true));supr.setLeft.apply(this,arguments);this.sync();return this;},setTop:function(top){this.storeLeftTop(this.getLeft(true),top);supr.setTop.apply(this,arguments);this.sync();return this;},setLeftTop:function(left,top){this.storeLeftTop(left,top);supr.setLeftTop.apply(this,arguments);this.sync();return this;},setXY:function(xy,a,d,c,e){this.fixDisplay();this.beforeAction();this.storeXY(xy);var cb=this.createCB(c);supr.setXY.call(this,xy,a,d,cb,e);if(!a){cb();} -return this;},createCB:function(c){var el=this;return function(){el.constrainXY();el.sync(true);if(c){c();}};},setX:function(x,a,d,c,e){this.setXY([x,this.getY()],a,d,c,e);return this;},setY:function(y,a,d,c,e){this.setXY([this.getX(),y],a,d,c,e);return this;},setSize:function(w,h,a,d,c,e){this.beforeAction();var cb=this.createCB(c);supr.setSize.call(this,w,h,a,d,cb,e);if(!a){cb();} -return this;},setWidth:function(w,a,d,c,e){this.beforeAction();var cb=this.createCB(c);supr.setWidth.call(this,w,a,d,cb,e);if(!a){cb();} -return this;},setHeight:function(h,a,d,c,e){this.beforeAction();var cb=this.createCB(c);supr.setHeight.call(this,h,a,d,cb,e);if(!a){cb();} -return this;},setBounds:function(x,y,w,h,a,d,c,e){this.beforeAction();var cb=this.createCB(c);if(!a){this.storeXY([x,y]);supr.setXY.call(this,[x,y]);supr.setSize.call(this,w,h,a,d,cb,e);cb();}else{supr.setBounds.call(this,x,y,w,h,a,d,cb,e);} -return this;},setZIndex:function(zindex){this.zindex=zindex;this.setStyle('z-index',zindex+2);if(this.shadow){this.shadow.setZIndex(zindex+1);} -if(this.shim){this.shim.setStyle('z-index',zindex);} -return this;}});})();Ext.Shadow=function(config){Ext.apply(this,config);if(typeof this.mode!="string"){this.mode=this.defaultMode;} -var o=this.offset,a={h:0},rad=Math.floor(this.offset/2);switch(this.mode.toLowerCase()){case"drop":a.w=0;a.l=a.t=o;a.t-=1;if(Ext.isIE){a.l-=this.offset+rad;a.t-=this.offset+rad;a.w-=rad;a.h-=rad;a.t+=1;} -break;case"sides":a.w=(o*2);a.l=-o;a.t=o-1;if(Ext.isIE){a.l-=(this.offset-rad);a.t-=this.offset+rad;a.l+=1;a.w-=(this.offset-rad)*2;a.w-=rad+1;a.h-=1;} -break;case"frame":a.w=a.h=(o*2);a.l=a.t=-o;a.t+=1;a.h-=2;if(Ext.isIE){a.l-=(this.offset-rad);a.t-=(this.offset-rad);a.l+=1;a.w-=(this.offset+rad+1);a.h-=(this.offset+rad);a.h+=1;} -break;};this.adjusts=a;};Ext.Shadow.prototype={offset:4,defaultMode:"drop",show:function(target){target=Ext.get(target);if(!this.el){this.el=Ext.Shadow.Pool.pull();if(this.el.dom.nextSibling!=target.dom){this.el.insertBefore(target);}} -this.el.setStyle("z-index",this.zIndex||parseInt(target.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(target.getLeft(true),target.getTop(true),target.getWidth(),target.getHeight());this.el.dom.style.display="block";},isVisible:function(){return this.el?true:false;},realign:function(l,t,w,h){if(!this.el){return;} -var a=this.adjusts,d=this.el.dom,s=d.style,iea=0,sw=(w+a.w),sh=(h+a.h),sws=sw+"px",shs=sh+"px",cn,sww;s.left=(l+a.l)+"px";s.top=(t+a.t)+"px";if(s.width!=sws||s.height!=shs){s.width=sws;s.height=shs;if(!Ext.isIE){cn=d.childNodes;sww=Math.max(0,(sw-12))+"px";cn[0].childNodes[1].style.width=sww;cn[1].childNodes[1].style.width=sww;cn[2].childNodes[1].style.width=sww;cn[1].style.height=Math.max(0,(sh-12))+"px";}}},hide:function(){if(this.el){this.el.dom.style.display="none";Ext.Shadow.Pool.push(this.el);delete this.el;}},setZIndex:function(z){this.zIndex=z;if(this.el){this.el.setStyle("z-index",z);}}};Ext.Shadow.Pool=function(){var p=[],markup=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 sh=p.shift();if(!sh){sh=Ext.get(Ext.DomHelper.insertHtml("beforeBegin",document.body.firstChild,markup));sh.autoBoxAdjust=false;} -return sh;},push:function(sh){p.push(sh);}};}();Ext.BoxComponent=Ext.extend(Ext.Component,{initComponent:function(){Ext.BoxComponent.superclass.initComponent.call(this);this.addEvents('resize','move');},boxReady:false,deferHeight:false,setSize:function(w,h){if(typeof w=='object'){h=w.height;w=w.width;} -if(Ext.isDefined(w)&&Ext.isDefined(this.boxMinWidth)&&(w<this.boxMinWidth)){w=this.boxMinWidth;} -if(Ext.isDefined(h)&&Ext.isDefined(this.boxMinHeight)&&(h<this.boxMinHeight)){h=this.boxMinHeight;} -if(Ext.isDefined(w)&&Ext.isDefined(this.boxMaxWidth)&&(w>this.boxMaxWidth)){w=this.boxMaxWidth;} -if(Ext.isDefined(h)&&Ext.isDefined(this.boxMaxHeight)&&(h>this.boxMaxHeight)){h=this.boxMaxHeight;} -if(!this.boxReady){this.width=w;this.height=h;return this;} -if(this.cacheSizes!==false&&this.lastSize&&this.lastSize.width==w&&this.lastSize.height==h){return this;} -this.lastSize={width:w,height:h};var adj=this.adjustSize(w,h),aw=adj.width,ah=adj.height,rz;if(aw!==undefined||ah!==undefined){rz=this.getResizeEl();if(!this.deferHeight&&aw!==undefined&&ah!==undefined){rz.setSize(aw,ah);}else if(!this.deferHeight&&ah!==undefined){rz.setHeight(ah);}else if(aw!==undefined){rz.setWidth(aw);} -this.onResize(aw,ah,w,h);this.fireEvent('resize',this,aw,ah,w,h);} -return this;},setWidth:function(width){return this.setSize(width);},setHeight:function(height){return this.setSize(undefined,height);},getSize:function(){return this.getResizeEl().getSize();},getWidth:function(){return this.getResizeEl().getWidth();},getHeight:function(){return this.getResizeEl().getHeight();},getOuterSize:function(){var el=this.getResizeEl();return{width:el.getWidth()+el.getMargins('lr'),height:el.getHeight()+el.getMargins('tb')};},getPosition:function(local){var el=this.getPositionEl();if(local===true){return[el.getLeft(true),el.getTop(true)];} -return this.xy||el.getXY();},getBox:function(local){var pos=this.getPosition(local);var s=this.getSize();s.x=pos[0];s.y=pos[1];return s;},updateBox:function(box){this.setSize(box.width,box.height);this.setPagePosition(box.x,box.y);return this;},getResizeEl:function(){return this.resizeEl||this.el;},setAutoScroll:function(scroll){if(this.rendered){this.getContentTarget().setOverflow(scroll?'auto':'');} -this.autoScroll=scroll;return this;},setPosition:function(x,y){if(x&&typeof x[1]=='number'){y=x[1];x=x[0];} -this.x=x;this.y=y;if(!this.boxReady){return this;} -var adj=this.adjustPosition(x,y);var ax=adj.x,ay=adj.y;var el=this.getPositionEl();if(ax!==undefined||ay!==undefined){if(ax!==undefined&&ay!==undefined){el.setLeftTop(ax,ay);}else if(ax!==undefined){el.setLeft(ax);}else if(ay!==undefined){el.setTop(ay);} -this.onPosition(ax,ay);this.fireEvent('move',this,ax,ay);} -return this;},setPagePosition:function(x,y){if(x&&typeof x[1]=='number'){y=x[1];x=x[0];} -this.pageX=x;this.pageY=y;if(!this.boxReady){return;} -if(x===undefined||y===undefined){return;} -var p=this.getPositionEl().translatePoints(x,y);this.setPosition(p.left,p.top);return this;},afterRender:function(){Ext.BoxComponent.superclass.afterRender.call(this);if(this.resizeEl){this.resizeEl=Ext.get(this.resizeEl);} -if(this.positionEl){this.positionEl=Ext.get(this.positionEl);} -this.boxReady=true;Ext.isDefined(this.autoScroll)&&this.setAutoScroll(this.autoScroll);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(adjWidth,adjHeight,rawWidth,rawHeight){},onPosition:function(x,y){},adjustSize:function(w,h){if(this.autoWidth){w='auto';} -if(this.autoHeight){h='auto';} -return{width:w,height:h};},adjustPosition:function(x,y){return{x:x,y:y};}});Ext.reg('box',Ext.BoxComponent);Ext.Spacer=Ext.extend(Ext.BoxComponent,{autoEl:'div'});Ext.reg('spacer',Ext.Spacer);Ext.SplitBar=function(dragElement,resizingElement,orientation,placement,existingProxy){this.el=Ext.get(dragElement,true);this.el.dom.unselectable="on";this.resizingEl=Ext.get(resizingElement,true);this.orientation=orientation||Ext.SplitBar.HORIZONTAL;this.minSize=0;this.maxSize=2000;this.animate=false;this.useShim=false;this.shim=null;if(!existingProxy){this.proxy=Ext.SplitBar.createProxy(this.orientation);}else{this.proxy=Ext.get(existingProxy).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=placement||(this.el.getX()>this.resizingEl.getX()?Ext.SplitBar.LEFT:Ext.SplitBar.RIGHT);this.el.addClass("x-splitbar-h");}else{this.placement=placement||(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(x,y){this.fireEvent("beforeresize",this);this.overlay=Ext.DomHelper.append(document.body,{cls:"x-drag-overlay",html:" "},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 size=this.adapter.getElementSize(this);this.activeMinSize=this.getMinimumSize();this.activeMaxSize=this.getMaximumSize();var c1=size-this.activeMinSize;var c2=Math.max(this.activeMaxSize-size,0);if(this.orientation==Ext.SplitBar.HORIZONTAL){this.dd.resetConstraints();this.dd.setXConstraint(this.placement==Ext.SplitBar.LEFT?c1:c2,this.placement==Ext.SplitBar.LEFT?c2:c1,this.tickSize);this.dd.setYConstraint(0,0);}else{this.dd.resetConstraints();this.dd.setXConstraint(0,0);this.dd.setYConstraint(this.placement==Ext.SplitBar.TOP?c1:c2,this.placement==Ext.SplitBar.TOP?c2:c1,this.tickSize);} -this.dragSpecs.startSize=size;this.dragSpecs.startPoint=[x,y];Ext.dd.DDProxy.prototype.b4StartDrag.call(this.dd,x,y);},onEndProxyDrag:function(e){Ext.get(this.proxy).setDisplayed(false);var endPoint=Ext.lib.Event.getXY(e);if(this.overlay){Ext.destroy(this.overlay);delete this.overlay;} -var newSize;if(this.orientation==Ext.SplitBar.HORIZONTAL){newSize=this.dragSpecs.startSize+ -(this.placement==Ext.SplitBar.LEFT?endPoint[0]-this.dragSpecs.startPoint[0]:this.dragSpecs.startPoint[0]-endPoint[0]);}else{newSize=this.dragSpecs.startSize+ -(this.placement==Ext.SplitBar.TOP?endPoint[1]-this.dragSpecs.startPoint[1]:this.dragSpecs.startPoint[1]-endPoint[1]);} -newSize=Math.min(Math.max(newSize,this.activeMinSize),this.activeMaxSize);if(newSize!=this.dragSpecs.startSize){if(this.fireEvent('beforeapply',this,newSize)!==false){this.adapter.setElementSize(this,newSize);this.fireEvent("moved",this,newSize);this.fireEvent("resize",this,newSize);}}},getAdapter:function(){return this.adapter;},setAdapter:function(adapter){this.adapter=adapter;this.adapter.init(this);},getMinimumSize:function(){return this.minSize;},setMinimumSize:function(minSize){this.minSize=minSize;},getMaximumSize:function(){return this.maxSize;},setMaximumSize:function(maxSize){this.maxSize=maxSize;},setCurrentSize:function(size){var oldAnimate=this.animate;this.animate=false;this.adapter.setElementSize(this,size);this.animate=oldAnimate;},destroy:function(removeEl){Ext.destroy(this.shim,Ext.get(this.proxy));this.dd.unreg();if(removeEl){this.el.remove();} -this.purgeListeners();}});Ext.SplitBar.createProxy=function(dir){var proxy=new Ext.Element(document.createElement("div"));document.body.appendChild(proxy.dom);proxy.unselectable();var cls='x-splitbar-proxy';proxy.addClass(cls+' '+(dir==Ext.SplitBar.HORIZONTAL?cls+'-h':cls+'-v'));return proxy.dom;};Ext.SplitBar.BasicLayoutAdapter=function(){};Ext.SplitBar.BasicLayoutAdapter.prototype={init:function(s){},getElementSize:function(s){if(s.orientation==Ext.SplitBar.HORIZONTAL){return s.resizingEl.getWidth();}else{return s.resizingEl.getHeight();}},setElementSize:function(s,newSize,onComplete){if(s.orientation==Ext.SplitBar.HORIZONTAL){if(!s.animate){s.resizingEl.setWidth(newSize);if(onComplete){onComplete(s,newSize);}}else{s.resizingEl.setWidth(newSize,true,.1,onComplete,'easeOut');}}else{if(!s.animate){s.resizingEl.setHeight(newSize);if(onComplete){onComplete(s,newSize);}}else{s.resizingEl.setHeight(newSize,true,.1,onComplete,'easeOut');}}}};Ext.SplitBar.AbsoluteLayoutAdapter=function(container){this.basic=new Ext.SplitBar.BasicLayoutAdapter();this.container=Ext.get(container);};Ext.SplitBar.AbsoluteLayoutAdapter.prototype={init:function(s){this.basic.init(s);},getElementSize:function(s){return this.basic.getElementSize(s);},setElementSize:function(s,newSize,onComplete){this.basic.setElementSize(s,newSize,this.moveSplitter.createDelegate(this,[s]));},moveSplitter:function(s){var yes=Ext.SplitBar;switch(s.placement){case yes.LEFT:s.el.setX(s.resizingEl.getRight());break;case yes.RIGHT:s.el.setStyle("right",(this.container.getWidth()-s.resizingEl.getLeft())+"px");break;case yes.TOP:s.el.setY(s.resizingEl.getBottom());break;case yes.BOTTOM:s.el.setY(s.resizingEl.getTop()-s.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,{bufferResize:50,autoDestroy:true,forceLayout:false,defaultType:'panel',resizeEvent:'resize',bubbleEvents:['add','remove'],initComponent:function(){Ext.Container.superclass.initComponent.call(this);this.addEvents('afterlayout','beforeadd','beforeremove','add','remove');var items=this.items;if(items){delete this.items;this.add(items);}},initItems:function(){if(!this.items){this.items=new Ext.util.MixedCollection(false,this.getComponentId);this.getLayout();}},setLayout:function(layout){if(this.layout&&this.layout!=layout){this.layout.setContainer(null);} -this.layout=layout;this.initItems();layout.setContainer(this);},afterRender:function(){Ext.Container.superclass.afterRender.call(this);if(!this.layout){this.layout='auto';} -if(Ext.isObject(this.layout)&&!this.layout.layout){this.layoutConfig=this.layout;this.layout=this.layoutConfig.type;} -if(Ext.isString(this.layout)){this.layout=new Ext.Container.LAYOUTS[this.layout.toLowerCase()](this.layoutConfig);} -this.setLayout(this.layout);if(this.activeItem!==undefined&&this.layout.setActiveItem){var item=this.activeItem;delete this.activeItem;this.layout.setActiveItem(item);} -if(!this.ownerCt){this.doLayout(false,true);} -if(this.monitorResize===true){Ext.EventManager.onWindowResize(this.doLayout,this,[false]);}},getLayoutTarget:function(){return this.el;},getComponentId:function(comp){return comp.getItemId();},add:function(comp){this.initItems();var args=arguments.length>1;if(args||Ext.isArray(comp)){var result=[];Ext.each(args?arguments:comp,function(c){result.push(this.add(c));},this);return result;} -var c=this.lookupComponent(this.applyDefaults(comp));var index=this.items.length;if(this.fireEvent('beforeadd',this,c,index)!==false&&this.onBeforeAdd(c)!==false){this.items.add(c);c.onAdded(this,index);this.onAdd(c);this.fireEvent('add',this,c,index);} -return c;},onAdd:function(c){},onAdded:function(container,pos){this.ownerCt=container;this.initRef();this.cascade(function(c){c.initRef();});this.fireEvent('added',this,container,pos);},insert:function(index,comp){var args=arguments,length=args.length,result=[],i,c;this.initItems();if(length>2){for(i=length-1;i>=1;--i){result.push(this.insert(index,args[i]));} -return result;} -c=this.lookupComponent(this.applyDefaults(comp));index=Math.min(index,this.items.length);if(this.fireEvent('beforeadd',this,c,index)!==false&&this.onBeforeAdd(c)!==false){if(c.ownerCt==this){this.items.remove(c);} -this.items.insert(index,c);c.onAdded(this,index);this.onAdd(c);this.fireEvent('add',this,c,index);} -return c;},applyDefaults:function(c){var d=this.defaults;if(d){if(Ext.isFunction(d)){d=d.call(this,c);} -if(Ext.isString(c)){c=Ext.ComponentMgr.get(c);Ext.apply(c,d);}else if(!c.events){Ext.applyIf(c.isAction?c.initialConfig:c,d);}else{Ext.apply(c,d);}} -return c;},onBeforeAdd:function(item){if(item.ownerCt){item.ownerCt.remove(item,false);} -if(this.hideBorders===true){item.border=(item.border===true);}},remove:function(comp,autoDestroy){this.initItems();var c=this.getComponent(comp);if(c&&this.fireEvent('beforeremove',this,c)!==false){this.doRemove(c,autoDestroy);this.fireEvent('remove',this,c);} -return c;},onRemove:function(c){},doRemove:function(c,autoDestroy){var l=this.layout,hasLayout=l&&this.rendered;if(hasLayout){l.onRemove(c);} -this.items.remove(c);c.onRemoved();this.onRemove(c);if(autoDestroy===true||(autoDestroy!==false&&this.autoDestroy)){c.destroy();} -if(hasLayout){l.afterRemove(c);}},removeAll:function(autoDestroy){this.initItems();var item,rem=[],items=[];this.items.each(function(i){rem.push(i);});for(var i=0,len=rem.length;i<len;++i){item=rem[i];this.remove(item,autoDestroy);if(item.ownerCt!==this){items.push(item);}} -return items;},getComponent:function(comp){if(Ext.isObject(comp)){comp=comp.getItemId();} -return this.items.get(comp);},lookupComponent:function(comp){if(Ext.isString(comp)){return Ext.ComponentMgr.get(comp);}else if(!comp.events){return this.createComponent(comp);} -return comp;},createComponent:function(config,defaultType){if(config.render){return config;} -var c=Ext.create(Ext.apply({ownerCt:this},config),defaultType||this.defaultType);delete c.initialConfig.ownerCt;delete c.ownerCt;return c;},canLayout:function(){var el=this.getVisibilityEl();return el&&el.dom&&!el.isStyle("display","none");},doLayout:function(shallow,force){var rendered=this.rendered,forceLayout=force||this.forceLayout;if(this.collapsed||!this.canLayout()){this.deferLayout=this.deferLayout||!shallow;if(!forceLayout){return;} -shallow=shallow&&!this.deferLayout;}else{delete this.deferLayout;} -if(rendered&&this.layout){this.layout.layout();} -if(shallow!==true&&this.items){var cs=this.items.items;for(var i=0,len=cs.length;i<len;i++){var c=cs[i];if(c.doLayout){c.doLayout(false,forceLayout);}}} -if(rendered){this.onLayout(shallow,forceLayout);} -this.hasLayout=true;delete this.forceLayout;},onLayout:Ext.emptyFn,shouldBufferLayout:function(){var hl=this.hasLayout;if(this.ownerCt){return hl?!this.hasLayoutPending():false;} -return hl;},hasLayoutPending:function(){var pending=false;this.ownerCt.bubble(function(c){if(c.layoutPending){pending=true;return false;}});return pending;},onShow:function(){Ext.Container.superclass.onShow.call(this);if(Ext.isDefined(this.deferLayout)){delete this.deferLayout;this.doLayout(true);}},getLayout:function(){if(!this.layout){var layout=new Ext.layout.AutoLayout(this.layoutConfig);this.setLayout(layout);} -return this.layout;},beforeDestroy:function(){var c;if(this.items){while(c=this.items.first()){this.doRemove(c,true);}} -if(this.monitorResize){Ext.EventManager.removeResizeListener(this.doLayout,this);} -Ext.destroy(this.layout);Ext.Container.superclass.beforeDestroy.call(this);},cascade:function(fn,scope,args){if(fn.apply(scope||this,args||[this])!==false){if(this.items){var cs=this.items.items;for(var i=0,len=cs.length;i<len;i++){if(cs[i].cascade){cs[i].cascade(fn,scope,args);}else{fn.apply(scope||cs[i],args||[cs[i]]);}}}} -return this;},findById:function(id){var m=null,ct=this;this.cascade(function(c){if(ct!=c&&c.id===id){m=c;return false;}});return m;},findByType:function(xtype,shallow){return this.findBy(function(c){return c.isXType(xtype,shallow);});},find:function(prop,value){return this.findBy(function(c){return c[prop]===value;});},findBy:function(fn,scope){var m=[],ct=this;this.cascade(function(c){if(ct!=c&&fn.call(scope||c,c,ct)===true){m.push(c);}});return m;},get:function(key){return this.getComponent(key);}});Ext.Container.LAYOUTS={};Ext.reg('container',Ext.Container);Ext.layout.ContainerLayout=Ext.extend(Object,{monitorResize:false,activeItem:null,constructor:function(config){this.id=Ext.id(null,'ext-layout-');Ext.apply(this,config);},type:'container',IEMeasureHack:function(target,viewFlag){var tChildren=target.dom.childNodes,tLen=tChildren.length,c,d=[],e,i,ret;for(i=0;i<tLen;i++){c=tChildren[i];e=Ext.get(c);if(e){d[i]=e.getStyle('display');e.setStyle({display:'none'});}} -ret=target?target.getViewSize(viewFlag):{};for(i=0;i<tLen;i++){c=tChildren[i];e=Ext.get(c);if(e){e.setStyle({display:d[i]});}} -return ret;},getLayoutTargetSize:Ext.EmptyFn,layout:function(){var ct=this.container,target=ct.getLayoutTarget();if(!(this.hasLayout||Ext.isEmpty(this.targetCls))){target.addClass(this.targetCls);} -this.onLayout(ct,target);ct.fireEvent('afterlayout',ct,this);},onLayout:function(ct,target){this.renderAll(ct,target);},isValidParent:function(c,target){return target&&c.getPositionEl().dom.parentNode==(target.dom||target);},renderAll:function(ct,target){var items=ct.items.items,i,c,len=items.length;for(i=0;i<len;i++){c=items[i];if(c&&(!c.rendered||!this.isValidParent(c,target))){this.renderItem(c,i,target);}}},renderItem:function(c,position,target){if(c){if(!c.rendered){c.render(target,position);this.configureItem(c);}else if(!this.isValidParent(c,target)){if(Ext.isNumber(position)){position=target.dom.childNodes[position];} -target.dom.insertBefore(c.getPositionEl().dom,position||null);c.container=target;this.configureItem(c);}}},getRenderedItems:function(ct){var t=ct.getLayoutTarget(),cti=ct.items.items,len=cti.length,i,c,items=[];for(i=0;i<len;i++){if((c=cti[i]).rendered&&this.isValidParent(c,t)&&c.shouldLayout!==false){items.push(c);}};return items;},configureItem:function(c){if(this.extraCls){var t=c.getPositionEl?c.getPositionEl():c;t.addClass(this.extraCls);} -if(c.doLayout&&this.forceLayout){c.doLayout();} -if(this.renderHidden&&c!=this.activeItem){c.hide();}},onRemove:function(c){if(this.activeItem==c){delete this.activeItem;} -if(c.rendered&&this.extraCls){var t=c.getPositionEl?c.getPositionEl():c;t.removeClass(this.extraCls);}},afterRemove:function(c){if(c.removeRestore){c.removeMode='container';delete c.removeRestore;}},onResize:function(){var ct=this.container,b;if(ct.collapsed){return;} -if(b=ct.bufferResize&&ct.shouldBufferLayout()){if(!this.resizeTask){this.resizeTask=new Ext.util.DelayedTask(this.runLayout,this);this.resizeBuffer=Ext.isNumber(b)?b:50;} -ct.layoutPending=true;this.resizeTask.delay(this.resizeBuffer);}else{this.runLayout();}},runLayout:function(){var ct=this.container;this.layout();ct.onLayout();delete ct.layoutPending;},setContainer:function(ct){if(this.monitorResize&&ct!=this.container){var old=this.container;if(old){old.un(old.resizeEvent,this.onResize,this);} -if(ct){ct.on(ct.resizeEvent,this.onResize,this);}} -this.container=ct;},parseMargins:function(v){if(Ext.isNumber(v)){v=v.toString();} -var ms=v.split(' '),len=ms.length;if(len==1){ms[1]=ms[2]=ms[3]=ms[0];}else if(len==2){ms[2]=ms[0];ms[3]=ms[1];}else if(len==3){ms[3]=ms[1];} -return{top:parseInt(ms[0],10)||0,right:parseInt(ms[1],10)||0,bottom:parseInt(ms[2],10)||0,left:parseInt(ms[3],10)||0};},fieldTpl:(function(){var t=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>');t.disableFormats=true;return t.compile();})(),destroy:function(){if(this.resizeTask&&this.resizeTask.cancel){this.resizeTask.cancel();} -if(this.container){this.container.un(this.container.resizeEvent,this.onResize,this);} -if(!Ext.isEmpty(this.targetCls)){var target=this.container.getLayoutTarget();if(target){target.removeClass(this.targetCls);}}}});Ext.layout.AutoLayout=Ext.extend(Ext.layout.ContainerLayout,{type:'auto',monitorResize:true,onLayout:function(ct,target){Ext.layout.AutoLayout.superclass.onLayout.call(this,ct,target);var cs=this.getRenderedItems(ct),len=cs.length,i,c;for(i=0;i<len;i++){c=cs[i];if(c.doLayout){c.doLayout(true);}}}});Ext.Container.LAYOUTS['auto']=Ext.layout.AutoLayout;Ext.layout.FitLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,type:'fit',getLayoutTargetSize:function(){var target=this.container.getLayoutTarget();if(!target){return{};} -return target.getStyleSize();},onLayout:function(ct,target){Ext.layout.FitLayout.superclass.onLayout.call(this,ct,target);if(!ct.collapsed){this.setItemSize(this.activeItem||ct.items.itemAt(0),this.getLayoutTargetSize());}},setItemSize:function(item,size){if(item&&size.height>0){item.setSize(size);}}});Ext.Container.LAYOUTS['fit']=Ext.layout.FitLayout;Ext.layout.CardLayout=Ext.extend(Ext.layout.FitLayout,{deferredRender:false,layoutOnCardChange:false,renderHidden:true,type:'card',setActiveItem:function(item){var ai=this.activeItem,ct=this.container;item=ct.getComponent(item);if(item&&ai!=item){if(ai){ai.hide();if(ai.hidden!==true){return false;} -ai.fireEvent('deactivate',ai);} -var layout=item.doLayout&&(this.layoutOnCardChange||!item.rendered);this.activeItem=item;delete item.deferLayout;item.show();this.layout();if(layout){item.doLayout();} -item.fireEvent('activate',item);}},renderAll:function(ct,target){if(this.deferredRender){this.renderItem(this.activeItem,undefined,target);}else{Ext.layout.CardLayout.superclass.renderAll.call(this,ct,target);}}});Ext.Container.LAYOUTS['card']=Ext.layout.CardLayout;Ext.layout.AnchorLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,type:'anchor',defaultAnchor:'100%',parseAnchorRE:/^(r|right|b|bottom)$/i,getLayoutTargetSize:function(){var target=this.container.getLayoutTarget(),ret={};if(target){ret=target.getViewSize();if(Ext.isIE&&Ext.isStrict&&ret.width==0){ret=target.getStyleSize();} -ret.width-=target.getPadding('lr');ret.height-=target.getPadding('tb');} -return ret;},onLayout:function(container,target){Ext.layout.AnchorLayout.superclass.onLayout.call(this,container,target);var size=this.getLayoutTargetSize(),containerWidth=size.width,containerHeight=size.height,overflow=target.getStyle('overflow'),components=this.getRenderedItems(container),len=components.length,boxes=[],box,anchorWidth,anchorHeight,component,anchorSpec,calcWidth,calcHeight,anchorsArray,totalHeight=0,i,el;if(containerWidth<20&&containerHeight<20){return;} -if(container.anchorSize){if(typeof container.anchorSize=='number'){anchorWidth=container.anchorSize;}else{anchorWidth=container.anchorSize.width;anchorHeight=container.anchorSize.height;}}else{anchorWidth=container.initialConfig.width;anchorHeight=container.initialConfig.height;} -for(i=0;i<len;i++){component=components[i];el=component.getPositionEl();if(!component.anchor&&component.items&&!Ext.isNumber(component.width)&&!(Ext.isIE6&&Ext.isStrict)){component.anchor=this.defaultAnchor;} -if(component.anchor){anchorSpec=component.anchorSpec;if(!anchorSpec){anchorsArray=component.anchor.split(' ');component.anchorSpec=anchorSpec={right:this.parseAnchor(anchorsArray[0],component.initialConfig.width,anchorWidth),bottom:this.parseAnchor(anchorsArray[1],component.initialConfig.height,anchorHeight)};} -calcWidth=anchorSpec.right?this.adjustWidthAnchor(anchorSpec.right(containerWidth)-el.getMargins('lr'),component):undefined;calcHeight=anchorSpec.bottom?this.adjustHeightAnchor(anchorSpec.bottom(containerHeight)-el.getMargins('tb'),component):undefined;if(calcWidth||calcHeight){boxes.push({component:component,width:calcWidth||undefined,height:calcHeight||undefined});}}} -for(i=0,len=boxes.length;i<len;i++){box=boxes[i];box.component.setSize(box.width,box.height);} -if(overflow&&overflow!='hidden'&&!this.adjustmentPass){var newTargetSize=this.getLayoutTargetSize();if(newTargetSize.width!=size.width||newTargetSize.height!=size.height){this.adjustmentPass=true;this.onLayout(container,target);}} -delete this.adjustmentPass;},parseAnchor:function(a,start,cstart){if(a&&a!='none'){var last;if(this.parseAnchorRE.test(a)){var diff=cstart-start;return function(v){if(v!==last){last=v;return v-diff;}};}else if(a.indexOf('%')!=-1){var ratio=parseFloat(a.replace('%',''))*.01;return function(v){if(v!==last){last=v;return Math.floor(v*ratio);}};}else{a=parseInt(a,10);if(!isNaN(a)){return function(v){if(v!==last){last=v;return v+a;}};}}} -return false;},adjustWidthAnchor:function(value,comp){return value;},adjustHeightAnchor:function(value,comp){return value;}});Ext.Container.LAYOUTS['anchor']=Ext.layout.AnchorLayout;Ext.layout.ColumnLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,type:'column',extraCls:'x-column',scrollOffset:0,targetCls:'x-column-layout-ct',isValidParent:function(c,target){return this.innerCt&&c.getPositionEl().dom.parentNode==this.innerCt.dom;},getLayoutTargetSize:function(){var target=this.container.getLayoutTarget(),ret;if(target){ret=target.getViewSize();if(Ext.isIE&&Ext.isStrict&&ret.width==0){ret=target.getStyleSize();} -ret.width-=target.getPadding('lr');ret.height-=target.getPadding('tb');} -return ret;},renderAll:function(ct,target){if(!this.innerCt){this.innerCt=target.createChild({cls:'x-column-inner'});this.innerCt.createChild({cls:'x-clear'});} -Ext.layout.ColumnLayout.superclass.renderAll.call(this,ct,this.innerCt);},onLayout:function(ct,target){var cs=ct.items.items,len=cs.length,c,i,m,margins=[];this.renderAll(ct,target);var size=this.getLayoutTargetSize();if(size.width<1&&size.height<1){return;} -var w=size.width-this.scrollOffset,h=size.height,pw=w;this.innerCt.setWidth(w);for(i=0;i<len;i++){c=cs[i];m=c.getPositionEl().getMargins('lr');margins[i]=m;if(!c.columnWidth){pw-=(c.getWidth()+m);}} -pw=pw<0?0:pw;for(i=0;i<len;i++){c=cs[i];m=margins[i];if(c.columnWidth){c.setSize(Math.floor(c.columnWidth*pw)-m);}} -if(Ext.isIE){if(i=target.getStyle('overflow')&&i!='hidden'&&!this.adjustmentPass){var ts=this.getLayoutTargetSize();if(ts.width!=size.width){this.adjustmentPass=true;this.onLayout(ct,target);}}} -delete this.adjustmentPass;}});Ext.Container.LAYOUTS['column']=Ext.layout.ColumnLayout;Ext.layout.BorderLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,rendered:false,type:'border',targetCls:'x-border-layout-ct',getLayoutTargetSize:function(){var target=this.container.getLayoutTarget();return target?target.getViewSize():{};},onLayout:function(ct,target){var collapsed,i,c,pos,items=ct.items.items,len=items.length;if(!this.rendered){collapsed=[];for(i=0;i<len;i++){c=items[i];pos=c.region;if(c.collapsed){collapsed.push(c);} -c.collapsed=false;if(!c.rendered){c.render(target,i);c.getPositionEl().addClass('x-border-panel');} -this[pos]=pos!='center'&&c.split?new Ext.layout.BorderLayout.SplitRegion(this,c.initialConfig,pos):new Ext.layout.BorderLayout.Region(this,c.initialConfig,pos);this[pos].render(target,c);} -this.rendered=true;} -var size=this.getLayoutTargetSize();if(size.width<20||size.height<20){if(collapsed){this.restoreCollapsed=collapsed;} -return;}else if(this.restoreCollapsed){collapsed=this.restoreCollapsed;delete this.restoreCollapsed;} -var w=size.width,h=size.height,centerW=w,centerH=h,centerY=0,centerX=0,n=this.north,s=this.south,west=this.west,e=this.east,c=this.center,b,m,totalWidth,totalHeight;if(!c&&Ext.layout.BorderLayout.WARN!==false){throw'No center region defined in BorderLayout '+ct.id;} -if(n&&n.isVisible()){b=n.getSize();m=n.getMargins();b.width=w-(m.left+m.right);b.x=m.left;b.y=m.top;centerY=b.height+b.y+m.bottom;centerH-=centerY;n.applyLayout(b);} -if(s&&s.isVisible()){b=s.getSize();m=s.getMargins();b.width=w-(m.left+m.right);b.x=m.left;totalHeight=(b.height+m.top+m.bottom);b.y=h-totalHeight+m.top;centerH-=totalHeight;s.applyLayout(b);} -if(west&&west.isVisible()){b=west.getSize();m=west.getMargins();b.height=centerH-(m.top+m.bottom);b.x=m.left;b.y=centerY+m.top;totalWidth=(b.width+m.left+m.right);centerX+=totalWidth;centerW-=totalWidth;west.applyLayout(b);} -if(e&&e.isVisible()){b=e.getSize();m=e.getMargins();b.height=centerH-(m.top+m.bottom);totalWidth=(b.width+m.left+m.right);b.x=w-totalWidth+m.left;b.y=centerY+m.top;centerW-=totalWidth;e.applyLayout(b);} -if(c){m=c.getMargins();var centerBox={x:centerX+m.left,y:centerY+m.top,width:centerW-(m.left+m.right),height:centerH-(m.top+m.bottom)};c.applyLayout(centerBox);} -if(collapsed){for(i=0,len=collapsed.length;i<len;i++){collapsed[i].collapse(false);}} -if(Ext.isIE&&Ext.isStrict){target.repaint();} -if(i=target.getStyle('overflow')&&i!='hidden'&&!this.adjustmentPass){var ts=this.getLayoutTargetSize();if(ts.width!=size.width||ts.height!=size.height){this.adjustmentPass=true;this.onLayout(ct,target);}} -delete this.adjustmentPass;},destroy:function(){var r=['north','south','east','west'],i,region;for(i=0;i<r.length;i++){region=this[r[i]];if(region){if(region.destroy){region.destroy();}else if(region.split){region.split.destroy(true);}}} -Ext.layout.BorderLayout.superclass.destroy.call(this);}});Ext.layout.BorderLayout.Region=function(layout,config,pos){Ext.apply(this,config);this.layout=layout;this.position=pos;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||{},pos=='north'||pos=='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(ct,p){this.panel=p;p.el.enableDisplayMode();this.targetEl=ct;this.el=p.el;var gs=p.getState,ps=this.position;p.getState=function(){return Ext.apply(gs.call(p)||{},this.state);}.createDelegate(this);if(ps!='center'){p.allowQueuedExpand=false;p.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){p.collapseEl='el';p.slideAnchor=this.getSlideAnchor();} -if(p.tools&&p.tools.toggle){p.tools.toggle.addClass('x-tool-collapse-'+ps);p.tools.toggle.addClassOnOver('x-tool-collapse-'+ps+'-over');}}},getCollapsedEl:function(){if(!this.collapsedEl){if(!this.toolTemplate){var tt=new Ext.Template('<div class="x-tool x-tool-{id}"> </div>');tt.disableFormats=true;tt.compile();Ext.layout.BorderLayout.Region.prototype.toolTemplate=tt;} -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:" "});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 t=this.expandToolEl=this.toolTemplate.append(this.collapsedEl.dom,{id:'expand-'+this.position},true);t.addClassOnOver('x-tool-expand-'+this.position+'-over');t.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(e){if(this.isSlid){this.panel.expand(false);}else{this.panel.expand();}},onCollapseClick:function(e){this.panel.collapse();},beforeCollapse:function(p,animate){this.lastAnim=animate;if(this.splitEl){this.splitEl.hide();} -this.getCollapsedEl().show();var el=this.panel.getEl();this.originalZIndex=el.getStyle('z-index');el.setStyle('z-index',100);this.isCollapsed=true;this.layout.layout();},onCollapse:function(animate){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:.2});} -this.state.collapsed=true;this.panel.saveState();},beforeExpand:function(animate){if(this.isSlid){this.afterSlideIn();} -var c=this.getCollapsedEl();this.el.show();if(this.position=='east'||this.position=='west'){this.panel.setSize(undefined,c.getHeight());}else{this.panel.setSize(c.getWidth(),undefined);} -c.hide();c.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',this.originalZIndex);this.state.collapsed=false;this.panel.saveState();},collapseClick:function(e){if(this.isSlid){e.stopPropagation();this.slideIn();}else{e.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(panel){this.panel=panel;},getMinWidth:function(){return this.minWidth;},getMinHeight:function(){return this.minHeight;},applyLayoutCollapsed:function(box){var ce=this.getCollapsedEl();ce.setLeftTop(box.x,box.y);ce.setSize(box.width,box.height);},applyLayout:function(box){if(this.isCollapsed){this.applyLayoutCollapsed(box);}else{this.panel.setPosition(box.x,box.y);this.panel.setSize(box.width,box.height);}},beforeSlide:function(){this.panel.beforeEffect();},afterSlide:function(){this.panel.afterEffect();},initAutoHide:function(){if(this.autoHide!==false){if(!this.autoHideHd){this.autoHideSlideTask=new Ext.util.DelayedTask(this.slideIn,this);this.autoHideHd={"mouseout":function(e){if(!e.within(this.el,true)){this.autoHideSlideTask.delay(500);}},"mouseover":function(e){this.autoHideSlideTask.cancel();},scope:this};} -this.el.on(this.autoHideHd);this.collapsedEl.on(this.autoHideHd);}},clearAutoHide:function(){if(this.autoHide!==false){this.el.un("mouseout",this.autoHideHd.mouseout);this.el.un("mouseover",this.autoHideHd.mouseover);this.collapsedEl.un("mouseout",this.autoHideHd.mouseout);this.collapsedEl.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 ts=this.panel.tools,dh,pc;if(ts&&ts.toggle){ts.toggle.hide();} -this.el.show();pc=this.panel.collapsed;this.panel.collapsed=false;if(this.position=='east'||this.position=='west'){dh=this.panel.deferHeight;this.panel.deferHeight=false;this.panel.setSize(undefined,this.collapsedEl.getHeight());this.panel.deferHeight=dh;}else{this.panel.setSize(this.collapsedEl.getWidth(),undefined);} -this.panel.collapsed=pc;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 ts=this.panel.tools;if(ts&&ts.toggle){ts.toggle.show();}},slideIn:function(cb){if(!this.isSlid||this.el.hasActiveFx()){Ext.callback(cb);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(cb);},scope:this,block:true});}else{this.el.hide();this.afterSlideIn();}},slideInIf:function(e){if(!e.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 cm=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 c=this.collapsedEl,cm=this.cmargins;switch(this.position){case"west":return[-(cm.right+c.getWidth()+cm.left),0];break;case"east":return[cm.right+c.getWidth()+cm.left,0];break;case"north":return[0,-(cm.top+cm.bottom+c.getHeight())];break;case"south":return[0,cm.top+cm.bottom+c.getHeight()];break;}},destroy:function(){if(this.autoHideSlideTask&&this.autoHideSlideTask.cancel){this.autoHideSlideTask.cancel();} -Ext.destroyMembers(this,'miniCollapsedEl','collapsedEl','expandToolEl');}};Ext.layout.BorderLayout.SplitRegion=function(layout,config,pos){Ext.layout.BorderLayout.SplitRegion.superclass.constructor.call(this,layout,config,pos);this.applyLayout=this.applyFns[pos];};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(box){if(this.isCollapsed){return this.applyLayoutCollapsed(box);} -var sd=this.splitEl.dom,s=sd.style;this.panel.setPosition(box.x,box.y);var sw=sd.offsetWidth;s.left=(box.x+box.width-sw)+'px';s.top=(box.y)+'px';s.height=Math.max(0,box.height)+'px';this.panel.setSize(box.width-sw,box.height);},east:function(box){if(this.isCollapsed){return this.applyLayoutCollapsed(box);} -var sd=this.splitEl.dom,s=sd.style;var sw=sd.offsetWidth;this.panel.setPosition(box.x+sw,box.y);s.left=(box.x)+'px';s.top=(box.y)+'px';s.height=Math.max(0,box.height)+'px';this.panel.setSize(box.width-sw,box.height);},north:function(box){if(this.isCollapsed){return this.applyLayoutCollapsed(box);} -var sd=this.splitEl.dom,s=sd.style;var sh=sd.offsetHeight;this.panel.setPosition(box.x,box.y);s.left=(box.x)+'px';s.top=(box.y+box.height-sh)+'px';s.width=Math.max(0,box.width)+'px';this.panel.setSize(box.width,box.height-sh);},south:function(box){if(this.isCollapsed){return this.applyLayoutCollapsed(box);} -var sd=this.splitEl.dom,s=sd.style;var sh=sd.offsetHeight;this.panel.setPosition(box.x,box.y+sh);s.left=(box.x)+'px';s.top=(box.y)+'px';s.width=Math.max(0,box.width)+'px';this.panel.setSize(box.width,box.height-sh);}},render:function(ct,p){Ext.layout.BorderLayout.SplitRegion.superclass.render.call(this,ct,p);var ps=this.position;this.splitEl=ct.createChild({cls:"x-layout-split x-layout-split-"+ps,html:" ",id:this.panel.id+'-xsplit'});if(this.collapseMode=='mini'){this.miniSplitEl=this.splitEl.createChild({cls:"x-layout-mini x-layout-mini-"+ps,html:" "});this.miniSplitEl.addClassOnOver('x-layout-mini-over');this.miniSplitEl.on('click',this.onCollapseClick,this,{stopEvent:true});} -var s=this.splitSettings[ps];this.split=new Ext.SplitBar(this.splitEl.dom,p.el,s.orientation);this.split.tickSize=this.tickSize;this.split.placement=s.placement;this.split.getMaximumSize=this[s.maxFn].createDelegate(this);this.split.minSize=this.minSize||this[s.minProp];this.split.on("beforeapply",this.onSplitMove,this);this.split.useShim=this.useShim===true;this.maxSize=this.maxSize||this[s.maxProp];if(p.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 s=this.panel.getSize();if(this.position=='north'||this.position=='south'){s.height+=this.splitEl.dom.offsetHeight;}else{s.width+=this.splitEl.dom.offsetWidth;} -return s;},getHMaxSize:function(){var cmax=this.maxSize||10000;var center=this.layout.center;return Math.min(cmax,(this.el.getWidth()+center.el.getWidth())-center.getMinWidth());},getVMaxSize:function(){var cmax=this.maxSize||10000;var center=this.layout.center;return Math.min(cmax,(this.el.getHeight()+center.el.getHeight())-center.getMinHeight());},onSplitMove:function(split,newSize){var s=this.panel.getSize();this.lastSplitSize=newSize;if(this.position=='north'||this.position=='south'){this.panel.setSize(s.width,newSize);this.state.height=newSize;}else{this.panel.setSize(newSize,s.height);this.state.width=newSize;} -this.layout.layout();this.panel.saveState();return false;},getSplitBar:function(){return this.split;},destroy:function(){Ext.destroy(this.miniSplitEl,this.split,this.splitEl);Ext.layout.BorderLayout.SplitRegion.superclass.destroy.call(this);}});Ext.Container.LAYOUTS['border']=Ext.layout.BorderLayout;Ext.layout.FormLayout=Ext.extend(Ext.layout.AnchorLayout,{labelSeparator:':',trackLabels:true,type:'form',onRemove:function(c){Ext.layout.FormLayout.superclass.onRemove.call(this,c);if(this.trackLabels){c.un('show',this.onFieldShow,this);c.un('hide',this.onFieldHide,this);} -var el=c.getPositionEl(),ct=c.getItemCt&&c.getItemCt();if(c.rendered&&ct){if(el&&el.dom){el.insertAfter(ct);} -Ext.destroy(ct);Ext.destroyMembers(c,'label','itemCt');if(c.customItemCt){Ext.destroyMembers(c,'getItemCt','customItemCt');}}},setContainer:function(ct){Ext.layout.FormLayout.superclass.setContainer.call(this,ct);if(ct.labelAlign){ct.addClass('x-form-label-'+ct.labelAlign);} -if(ct.hideLabels){Ext.apply(this,{labelStyle:'display:none',elementStyle:'padding-left:0;',labelAdjust:0});}else{this.labelSeparator=Ext.isDefined(ct.labelSeparator)?ct.labelSeparator:this.labelSeparator;ct.labelWidth=ct.labelWidth||100;if(Ext.isNumber(ct.labelWidth)){var pad=Ext.isNumber(ct.labelPad)?ct.labelPad:5;Ext.apply(this,{labelAdjust:ct.labelWidth+pad,labelStyle:'width:'+ct.labelWidth+'px;',elementStyle:'padding-left:'+(ct.labelWidth+pad)+'px'});} -if(ct.labelAlign=='top'){Ext.apply(this,{labelStyle:'width:auto;',labelAdjust:0,elementStyle:'padding-left:0;'});}}},isHide:function(c){return c.hideLabel||this.container.hideLabels;},onFieldShow:function(c){c.getItemCt().removeClass('x-hide-'+c.hideMode);if(c.isComposite){c.doLayout();}},onFieldHide:function(c){c.getItemCt().addClass('x-hide-'+c.hideMode);},getLabelStyle:function(s){var ls='',items=[this.labelStyle,s];for(var i=0,len=items.length;i<len;++i){if(items[i]){ls+=items[i];if(ls.substr(-1,1)!=';'){ls+=';';}}} -return ls;},renderItem:function(c,position,target){if(c&&(c.isFormField||c.fieldLabel)&&c.inputType!='hidden'){var args=this.getTemplateArgs(c);if(Ext.isNumber(position)){position=target.dom.childNodes[position]||null;} -if(position){c.itemCt=this.fieldTpl.insertBefore(position,args,true);}else{c.itemCt=this.fieldTpl.append(target,args,true);} -if(!c.getItemCt){Ext.apply(c,{getItemCt:function(){return c.itemCt;},customItemCt:true});} -c.label=c.getItemCt().child('label.x-form-item-label');if(!c.rendered){c.render('x-form-el-'+c.id);}else if(!this.isValidParent(c,target)){Ext.fly('x-form-el-'+c.id).appendChild(c.getPositionEl());} -if(this.trackLabels){if(c.hidden){this.onFieldHide(c);} -c.on({scope:this,show:this.onFieldShow,hide:this.onFieldHide});} -this.configureItem(c);}else{Ext.layout.FormLayout.superclass.renderItem.apply(this,arguments);}},getTemplateArgs:function(field){var noLabelSep=!field.fieldLabel||field.hideLabel;return{id:field.id,label:field.fieldLabel,itemCls:(field.itemCls||this.container.itemCls||'')+(field.hideLabel?' x-hide-label':''),clearCls:field.clearCls||'x-form-clear-left',labelStyle:this.getLabelStyle(field.labelStyle),elementStyle:this.elementStyle||'',labelSeparator:noLabelSep?'':(Ext.isDefined(field.labelSeparator)?field.labelSeparator:this.labelSeparator)};},adjustWidthAnchor:function(value,c){if(c.label&&!this.isHide(c)&&(this.container.labelAlign!='top')){var adjust=Ext.isIE6||(Ext.isIE&&!Ext.isStrict);return value-this.labelAdjust+(adjust?-3:0);} -return value;},adjustHeightAnchor:function(value,c){if(c.label&&!this.isHide(c)&&(this.container.labelAlign=='top')){return value-c.label.getHeight();} -return value;},isValidParent:function(c,target){return target&&this.container.getEl().contains(c.getPositionEl());}});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,type:'accordion',renderItem:function(c){if(this.animate===false){c.animCollapse=false;} -c.collapsible=true;if(this.autoWidth){c.autoWidth=true;} -if(this.titleCollapse){c.titleCollapse=true;} -if(this.hideCollapseTool){c.hideCollapseTool=true;} -if(this.collapseFirst!==undefined){c.collapseFirst=this.collapseFirst;} -if(!this.activeItem&&!c.collapsed){this.setActiveItem(c,true);}else if(this.activeItem&&this.activeItem!=c){c.collapsed=true;} -Ext.layout.AccordionLayout.superclass.renderItem.apply(this,arguments);c.header.addClass('x-accordion-hd');c.on('beforeexpand',this.beforeExpand,this);},onRemove:function(c){Ext.layout.AccordionLayout.superclass.onRemove.call(this,c);if(c.rendered){c.header.removeClass('x-accordion-hd');} -c.un('beforeexpand',this.beforeExpand,this);},beforeExpand:function(p,anim){var ai=this.activeItem;if(ai){if(this.sequence){delete this.activeItem;if(!ai.collapsed){ai.collapse({callback:function(){p.expand(anim||true);},scope:this});return false;}}else{ai.collapse(this.animate);}} -this.setActive(p);if(this.activeOnTop){p.el.dom.parentNode.insertBefore(p.el.dom,p.el.dom.parentNode.firstChild);} -this.layout();},setItemSize:function(item,size){if(this.fill&&item){var hh=0,i,ct=this.getRenderedItems(this.container),len=ct.length,p;for(i=0;i<len;i++){if((p=ct[i])!=item&&!p.hidden){hh+=p.header.getHeight();}};size.height-=hh;item.setSize(size);}},setActiveItem:function(item){this.setActive(item,true);},setActive:function(item,expand){var ai=this.activeItem;item=this.container.getComponent(item);if(ai!=item){if(item.rendered&&item.collapsed&&expand){item.expand();}else{if(ai){ai.fireEvent('deactivate',ai);} -this.activeItem=item;item.fireEvent('activate',item);}}}});Ext.Container.LAYOUTS.accordion=Ext.layout.AccordionLayout;Ext.layout.Accordion=Ext.layout.AccordionLayout;Ext.layout.TableLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:false,type:'table',targetCls:'x-table-layout-ct',tableAttrs:null,setContainer:function(ct){Ext.layout.TableLayout.superclass.setContainer.call(this,ct);this.currentRow=0;this.currentColumn=0;this.cells=[];},onLayout:function(ct,target){var cs=ct.items.items,len=cs.length,c,i;if(!this.table){target.addClass('x-table-layout-ct');this.table=target.createChild(Ext.apply({tag:'table',cls:'x-table-layout',cellspacing:0,cn:{tag:'tbody'}},this.tableAttrs),null,true);} -this.renderAll(ct,target);},getRow:function(index){var row=this.table.tBodies[0].childNodes[index];if(!row){row=document.createElement('tr');this.table.tBodies[0].appendChild(row);} -return row;},getNextCell:function(c){var cell=this.getNextNonSpan(this.currentColumn,this.currentRow);var curCol=this.currentColumn=cell[0],curRow=this.currentRow=cell[1];for(var rowIndex=curRow;rowIndex<curRow+(c.rowspan||1);rowIndex++){if(!this.cells[rowIndex]){this.cells[rowIndex]=[];} -for(var colIndex=curCol;colIndex<curCol+(c.colspan||1);colIndex++){this.cells[rowIndex][colIndex]=true;}} -var td=document.createElement('td');if(c.cellId){td.id=c.cellId;} -var cls='x-table-layout-cell';if(c.cellCls){cls+=' '+c.cellCls;} -td.className=cls;if(c.colspan){td.colSpan=c.colspan;} -if(c.rowspan){td.rowSpan=c.rowspan;} -this.getRow(curRow).appendChild(td);return td;},getNextNonSpan:function(colIndex,rowIndex){var cols=this.columns;while((cols&&colIndex>=cols)||(this.cells[rowIndex]&&this.cells[rowIndex][colIndex])){if(cols&&colIndex>=cols){rowIndex++;colIndex=0;}else{colIndex++;}} -return[colIndex,rowIndex];},renderItem:function(c,position,target){if(!this.table){this.table=target.createChild(Ext.apply({tag:'table',cls:'x-table-layout',cellspacing:0,cn:{tag:'tbody'}},this.tableAttrs),null,true);} -if(c&&!c.rendered){c.render(this.getNextCell(c));this.configureItem(c);}else if(c&&!this.isValidParent(c,target)){var container=this.getNextCell(c);container.insertBefore(c.getPositionEl().dom,null);c.container=Ext.get(container);this.configureItem(c);}},isValidParent:function(c,target){return c.getPositionEl().up('table',5).dom.parentNode===(target.dom||target);},destroy:function(){delete this.table;Ext.layout.TableLayout.superclass.destroy.call(this);}});Ext.Container.LAYOUTS['table']=Ext.layout.TableLayout;Ext.layout.AbsoluteLayout=Ext.extend(Ext.layout.AnchorLayout,{extraCls:'x-abs-layout-item',type:'absolute',onLayout:function(ct,target){target.position();this.paddingLeft=target.getPadding('l');this.paddingTop=target.getPadding('t');Ext.layout.AbsoluteLayout.superclass.onLayout.call(this,ct,target);},adjustWidthAnchor:function(value,comp){return value?value-comp.getPosition(true)[0]+this.paddingLeft:value;},adjustHeightAnchor:function(value,comp){return value?value-comp.getPosition(true)[1]+this.paddingTop:value;}});Ext.Container.LAYOUTS['absolute']=Ext.layout.AbsoluteLayout;Ext.layout.BoxLayout=Ext.extend(Ext.layout.ContainerLayout,{defaultMargins:{left:0,top:0,right:0,bottom:0},padding:'0',pack:'start',monitorResize:true,type:'box',scrollOffset:0,extraCls:'x-box-item',targetCls:'x-box-layout-ct',innerCls:'x-box-inner',constructor:function(config){Ext.layout.BoxLayout.superclass.constructor.call(this,config);if(Ext.isString(this.defaultMargins)){this.defaultMargins=this.parseMargins(this.defaultMargins);} -var handler=this.overflowHandler;if(typeof handler=='string'){handler={type:handler};} -var handlerType='none';if(handler&&handler.type!=undefined){handlerType=handler.type;} -var constructor=Ext.layout.boxOverflow[handlerType];if(constructor[this.type]){constructor=constructor[this.type];} -this.overflowHandler=new constructor(this,handler);},onLayout:function(container,target){Ext.layout.BoxLayout.superclass.onLayout.call(this,container,target);var tSize=this.getLayoutTargetSize(),items=this.getVisibleItems(container),calcs=this.calculateChildBoxes(items,tSize),boxes=calcs.boxes,meta=calcs.meta;if(tSize.width>0){var handler=this.overflowHandler,method=meta.tooNarrow?'handleOverflow':'clearOverflow';var results=handler[method](calcs,tSize);if(results){if(results.targetSize){tSize=results.targetSize;} -if(results.recalculate){items=this.getVisibleItems(container);calcs=this.calculateChildBoxes(items,tSize);boxes=calcs.boxes;}}} -this.layoutTargetLastSize=tSize;this.childBoxCache=calcs;this.updateInnerCtSize(tSize,calcs);this.updateChildBoxes(boxes);this.handleTargetOverflow(tSize,container,target);},updateChildBoxes:function(boxes){for(var i=0,length=boxes.length;i<length;i++){var box=boxes[i],comp=box.component;if(box.dirtySize){comp.setSize(box.width,box.height);} -if(isNaN(box.left)||isNaN(box.top)){continue;} -comp.setPosition(box.left,box.top);}},updateInnerCtSize:function(tSize,calcs){var align=this.align,padding=this.padding,width=tSize.width,height=tSize.height;if(this.type=='hbox'){var innerCtWidth=width,innerCtHeight=calcs.meta.maxHeight+padding.top+padding.bottom;if(align=='stretch'){innerCtHeight=height;}else if(align=='middle'){innerCtHeight=Math.max(height,innerCtHeight);}}else{var innerCtHeight=height,innerCtWidth=calcs.meta.maxWidth+padding.left+padding.right;if(align=='stretch'){innerCtWidth=width;}else if(align=='center'){innerCtWidth=Math.max(width,innerCtWidth);}} -this.innerCt.setSize(innerCtWidth||undefined,innerCtHeight||undefined);},handleTargetOverflow:function(previousTargetSize,container,target){var overflow=target.getStyle('overflow');if(overflow&&overflow!='hidden'&&!this.adjustmentPass){var newTargetSize=this.getLayoutTargetSize();if(newTargetSize.width!=previousTargetSize.width||newTargetSize.height!=previousTargetSize.height){this.adjustmentPass=true;this.onLayout(container,target);}} -delete this.adjustmentPass;},isValidParent:function(c,target){return this.innerCt&&c.getPositionEl().dom.parentNode==this.innerCt.dom;},getVisibleItems:function(ct){var ct=ct||this.container,t=ct.getLayoutTarget(),cti=ct.items.items,len=cti.length,i,c,items=[];for(i=0;i<len;i++){if((c=cti[i]).rendered&&this.isValidParent(c,t)&&c.hidden!==true&&c.collapsed!==true&&c.shouldLayout!==false){items.push(c);}} -return items;},renderAll:function(ct,target){if(!this.innerCt){this.innerCt=target.createChild({cls:this.innerCls});this.padding=this.parseMargins(this.padding);} -Ext.layout.BoxLayout.superclass.renderAll.call(this,ct,this.innerCt);},getLayoutTargetSize:function(){var target=this.container.getLayoutTarget(),ret;if(target){ret=target.getViewSize();if(Ext.isIE&&Ext.isStrict&&ret.width==0){ret=target.getStyleSize();} -ret.width-=target.getPadding('lr');ret.height-=target.getPadding('tb');} -return ret;},renderItem:function(c){if(Ext.isString(c.margins)){c.margins=this.parseMargins(c.margins);}else if(!c.margins){c.margins=this.defaultMargins;} -Ext.layout.BoxLayout.superclass.renderItem.apply(this,arguments);},destroy:function(){Ext.destroy(this.overflowHandler);Ext.layout.BoxLayout.superclass.destroy.apply(this,arguments);}});Ext.ns('Ext.layout.boxOverflow');Ext.layout.boxOverflow.None=Ext.extend(Object,{constructor:function(layout,config){this.layout=layout;Ext.apply(this,config||{});},handleOverflow:Ext.emptyFn,clearOverflow:Ext.emptyFn});Ext.layout.boxOverflow.none=Ext.layout.boxOverflow.None;Ext.layout.boxOverflow.Menu=Ext.extend(Ext.layout.boxOverflow.None,{afterCls:'x-strip-right',noItemsMenuText:'<div class="x-toolbar-no-items">(None)</div>',constructor:function(layout){Ext.layout.boxOverflow.Menu.superclass.constructor.apply(this,arguments);this.menuItems=[];},createInnerElements:function(){if(!this.afterCt){this.afterCt=this.layout.innerCt.insertSibling({cls:this.afterCls},'before');}},clearOverflow:function(calculations,targetSize){var newWidth=targetSize.width+(this.afterCt?this.afterCt.getWidth():0),items=this.menuItems;this.hideTrigger();for(var index=0,length=items.length;index<length;index++){items.pop().component.show();} -return{targetSize:{height:targetSize.height,width:newWidth}};},showTrigger:function(){this.createMenu();this.menuTrigger.show();},hideTrigger:function(){if(this.menuTrigger!=undefined){this.menuTrigger.hide();}},beforeMenuShow:function(menu){var items=this.menuItems,len=items.length,item,prev;var needsSep=function(group,item){return group.isXType('buttongroup')&&!(item instanceof Ext.Toolbar.Separator);};this.clearMenu();menu.removeAll();for(var i=0;i<len;i++){item=items[i].component;if(prev&&(needsSep(item,prev)||needsSep(prev,item))){menu.add('-');} -this.addComponentToMenu(menu,item);prev=item;} -if(menu.items.length<1){menu.add(this.noItemsMenuText);}},createMenuConfig:function(component,hideOnClick){var config=Ext.apply({},component.initialConfig),group=component.toggleGroup;Ext.copyTo(config,component,['iconCls','icon','itemId','disabled','handler','scope','menu']);Ext.apply(config,{text:component.overflowText||component.text,hideOnClick:hideOnClick});if(group||component.enableToggle){Ext.apply(config,{group:group,checked:component.pressed,listeners:{checkchange:function(item,checked){component.toggle(checked);}}});} -delete config.ownerCt;delete config.xtype;delete config.id;return config;},addComponentToMenu:function(menu,component){if(component instanceof Ext.Toolbar.Separator){menu.add('-');}else if(Ext.isFunction(component.isXType)){if(component.isXType('splitbutton')){menu.add(this.createMenuConfig(component,true));}else if(component.isXType('button')){menu.add(this.createMenuConfig(component,!component.menu));}else if(component.isXType('buttongroup')){component.items.each(function(item){this.addComponentToMenu(menu,item);},this);}}},clearMenu:function(){var menu=this.moreMenu;if(menu&&menu.items){menu.items.each(function(item){delete item.menu;});}},createMenu:function(){if(!this.menuTrigger){this.createInnerElements();this.menu=new Ext.menu.Menu({ownerCt:this.layout.container,listeners:{scope:this,beforeshow:this.beforeMenuShow}});this.menuTrigger=new Ext.Button({iconCls:'x-toolbar-more-icon',cls:'x-toolbar-more',menu:this.menu,renderTo:this.afterCt});}},destroy:function(){Ext.destroy(this.menu,this.menuTrigger);}});Ext.layout.boxOverflow.menu=Ext.layout.boxOverflow.Menu;Ext.layout.boxOverflow.HorizontalMenu=Ext.extend(Ext.layout.boxOverflow.Menu,{constructor:function(){Ext.layout.boxOverflow.HorizontalMenu.superclass.constructor.apply(this,arguments);var me=this,layout=me.layout,origFunction=layout.calculateChildBoxes;layout.calculateChildBoxes=function(visibleItems,targetSize){var calcs=origFunction.apply(layout,arguments),meta=calcs.meta,items=me.menuItems;var hiddenWidth=0;for(var index=0,length=items.length;index<length;index++){hiddenWidth+=items[index].width;} -meta.minimumWidth+=hiddenWidth;meta.tooNarrow=meta.minimumWidth>targetSize.width;return calcs;};},handleOverflow:function(calculations,targetSize){this.showTrigger();var newWidth=targetSize.width-this.afterCt.getWidth(),boxes=calculations.boxes,usedWidth=0,recalculate=false;for(var index=0,length=boxes.length;index<length;index++){usedWidth+=boxes[index].width;} -var spareWidth=newWidth-usedWidth,showCount=0;for(var index=0,length=this.menuItems.length;index<length;index++){var hidden=this.menuItems[index],comp=hidden.component,width=hidden.width;if(width<spareWidth){comp.show();spareWidth-=width;showCount++;recalculate=true;}else{break;}} -if(recalculate){this.menuItems=this.menuItems.slice(showCount);}else{for(var i=boxes.length-1;i>=0;i--){var item=boxes[i].component,right=boxes[i].left+boxes[i].width;if(right>=newWidth){this.menuItems.unshift({component:item,width:boxes[i].width});item.hide();}else{break;}}} -if(this.menuItems.length==0){this.hideTrigger();} -return{targetSize:{height:targetSize.height,width:newWidth},recalculate:recalculate};}});Ext.layout.boxOverflow.menu.hbox=Ext.layout.boxOverflow.HorizontalMenu;Ext.layout.boxOverflow.Scroller=Ext.extend(Ext.layout.boxOverflow.None,{animateScroll:true,scrollIncrement:100,wheelIncrement:3,scrollRepeatInterval:400,scrollDuration:0.4,beforeCls:'x-strip-left',afterCls:'x-strip-right',scrollerCls:'x-strip-scroller',beforeScrollerCls:'x-strip-scroller-left',afterScrollerCls:'x-strip-scroller-right',createWheelListener:function(){this.layout.innerCt.on({scope:this,mousewheel:function(e){e.stopEvent();this.scrollBy(e.getWheelDelta()*this.wheelIncrement*-1,false);}});},handleOverflow:function(calculations,targetSize){this.createInnerElements();this.showScrollers();},clearOverflow:function(){this.hideScrollers();},showScrollers:function(){this.createScrollers();this.beforeScroller.show();this.afterScroller.show();this.updateScrollButtons();},hideScrollers:function(){if(this.beforeScroller!=undefined){this.beforeScroller.hide();this.afterScroller.hide();}},createScrollers:function(){if(!this.beforeScroller&&!this.afterScroller){var before=this.beforeCt.createChild({cls:String.format("{0} {1} ",this.scrollerCls,this.beforeScrollerCls)});var after=this.afterCt.createChild({cls:String.format("{0} {1}",this.scrollerCls,this.afterScrollerCls)});before.addClassOnOver(this.beforeScrollerCls+'-hover');after.addClassOnOver(this.afterScrollerCls+'-hover');before.setVisibilityMode(Ext.Element.DISPLAY);after.setVisibilityMode(Ext.Element.DISPLAY);this.beforeRepeater=new Ext.util.ClickRepeater(before,{interval:this.scrollRepeatInterval,handler:this.scrollLeft,scope:this});this.afterRepeater=new Ext.util.ClickRepeater(after,{interval:this.scrollRepeatInterval,handler:this.scrollRight,scope:this});this.beforeScroller=before;this.afterScroller=after;}},destroy:function(){Ext.destroy(this.beforeScroller,this.afterScroller,this.beforeRepeater,this.afterRepeater,this.beforeCt,this.afterCt);},scrollBy:function(delta,animate){this.scrollTo(this.getScrollPosition()+delta,animate);},getItem:function(item){if(Ext.isString(item)){item=Ext.getCmp(item);}else if(Ext.isNumber(item)){item=this.items[item];} -return item;},getScrollAnim:function(){return{duration:this.scrollDuration,callback:this.updateScrollButtons,scope:this};},updateScrollButtons:function(){if(this.beforeScroller==undefined||this.afterScroller==undefined){return;} -var beforeMeth=this.atExtremeBefore()?'addClass':'removeClass',afterMeth=this.atExtremeAfter()?'addClass':'removeClass',beforeCls=this.beforeScrollerCls+'-disabled',afterCls=this.afterScrollerCls+'-disabled';this.beforeScroller[beforeMeth](beforeCls);this.afterScroller[afterMeth](afterCls);this.scrolling=false;},atExtremeBefore:function(){return this.getScrollPosition()===0;},scrollLeft:function(animate){this.scrollBy(-this.scrollIncrement,animate);},scrollRight:function(animate){this.scrollBy(this.scrollIncrement,animate);},scrollToItem:function(item,animate){item=this.getItem(item);if(item!=undefined){var visibility=this.getItemVisibility(item);if(!visibility.fullyVisible){var box=item.getBox(true,true),newX=box.x;if(visibility.hiddenRight){newX-=(this.layout.innerCt.getWidth()-box.width);} -this.scrollTo(newX,animate);}}},getItemVisibility:function(item){var box=this.getItem(item).getBox(true,true),itemLeft=box.x,itemRight=box.x+box.width,scrollLeft=this.getScrollPosition(),scrollRight=this.layout.innerCt.getWidth()+scrollLeft;return{hiddenLeft:itemLeft<scrollLeft,hiddenRight:itemRight>scrollRight,fullyVisible:itemLeft>scrollLeft&&itemRight<scrollRight};}});Ext.layout.boxOverflow.scroller=Ext.layout.boxOverflow.Scroller;Ext.layout.boxOverflow.VerticalScroller=Ext.extend(Ext.layout.boxOverflow.Scroller,{scrollIncrement:75,wheelIncrement:2,handleOverflow:function(calculations,targetSize){Ext.layout.boxOverflow.VerticalScroller.superclass.handleOverflow.apply(this,arguments);return{targetSize:{height:targetSize.height-(this.beforeCt.getHeight()+this.afterCt.getHeight()),width:targetSize.width}};},createInnerElements:function(){var target=this.layout.innerCt;if(!this.beforeCt){this.beforeCt=target.insertSibling({cls:this.beforeCls},'before');this.afterCt=target.insertSibling({cls:this.afterCls},'after');this.createWheelListener();}},scrollTo:function(position,animate){var oldPosition=this.getScrollPosition(),newPosition=position.constrain(0,this.getMaxScrollBottom());if(newPosition!=oldPosition&&!this.scrolling){if(animate==undefined){animate=this.animateScroll;} -this.layout.innerCt.scrollTo('top',newPosition,animate?this.getScrollAnim():false);if(animate){this.scrolling=true;}else{this.scrolling=false;this.updateScrollButtons();}}},getScrollPosition:function(){return parseInt(this.layout.innerCt.dom.scrollTop,10)||0;},getMaxScrollBottom:function(){return this.layout.innerCt.dom.scrollHeight-this.layout.innerCt.getHeight();},atExtremeAfter:function(){return this.getScrollPosition()>=this.getMaxScrollBottom();}});Ext.layout.boxOverflow.scroller.vbox=Ext.layout.boxOverflow.VerticalScroller;Ext.layout.boxOverflow.HorizontalScroller=Ext.extend(Ext.layout.boxOverflow.Scroller,{handleOverflow:function(calculations,targetSize){Ext.layout.boxOverflow.HorizontalScroller.superclass.handleOverflow.apply(this,arguments);return{targetSize:{height:targetSize.height,width:targetSize.width-(this.beforeCt.getWidth()+this.afterCt.getWidth())}};},createInnerElements:function(){var target=this.layout.innerCt;if(!this.beforeCt){this.afterCt=target.insertSibling({cls:this.afterCls},'before');this.beforeCt=target.insertSibling({cls:this.beforeCls},'before');this.createWheelListener();}},scrollTo:function(position,animate){var oldPosition=this.getScrollPosition(),newPosition=position.constrain(0,this.getMaxScrollRight());if(newPosition!=oldPosition&&!this.scrolling){if(animate==undefined){animate=this.animateScroll;} -this.layout.innerCt.scrollTo('left',newPosition,animate?this.getScrollAnim():false);if(animate){this.scrolling=true;}else{this.scrolling=false;this.updateScrollButtons();}}},getScrollPosition:function(){return parseInt(this.layout.innerCt.dom.scrollLeft,10)||0;},getMaxScrollRight:function(){return this.layout.innerCt.dom.scrollWidth-this.layout.innerCt.getWidth();},atExtremeAfter:function(){return this.getScrollPosition()>=this.getMaxScrollRight();}});Ext.layout.boxOverflow.scroller.hbox=Ext.layout.boxOverflow.HorizontalScroller;Ext.layout.HBoxLayout=Ext.extend(Ext.layout.BoxLayout,{align:'top',type:'hbox',calculateChildBoxes:function(visibleItems,targetSize){var visibleCount=visibleItems.length,padding=this.padding,topOffset=padding.top,leftOffset=padding.left,paddingVert=topOffset+padding.bottom,paddingHoriz=leftOffset+padding.right,width=targetSize.width-this.scrollOffset,height=targetSize.height,availHeight=Math.max(0,height-paddingVert),isStart=this.pack=='start',isCenter=this.pack=='center',isEnd=this.pack=='end',nonFlexWidth=0,maxHeight=0,totalFlex=0,desiredWidth=0,minimumWidth=0,boxes=[],child,childWidth,childHeight,childSize,childMargins,canLayout,i,calcs,flexedWidth,horizMargins,vertMargins,stretchHeight;for(i=0;i<visibleCount;i++){child=visibleItems[i];childHeight=child.height;childWidth=child.width;canLayout=!child.hasLayout&&typeof child.doLayout=='function';if(typeof childWidth!='number'){if(child.flex&&!childWidth){totalFlex+=child.flex;}else{if(!childWidth&&canLayout){child.doLayout();} -childSize=child.getSize();childWidth=childSize.width;childHeight=childSize.height;}} -childMargins=child.margins;horizMargins=childMargins.left+childMargins.right;nonFlexWidth+=horizMargins+(childWidth||0);desiredWidth+=horizMargins+(child.flex?child.minWidth||0:childWidth);minimumWidth+=horizMargins+(child.minWidth||childWidth||0);if(typeof childHeight!='number'){if(canLayout){child.doLayout();} -childHeight=child.getHeight();} -maxHeight=Math.max(maxHeight,childHeight+childMargins.top+childMargins.bottom);boxes.push({component:child,height:childHeight||undefined,width:childWidth||undefined});} -var shortfall=desiredWidth-width,tooNarrow=minimumWidth>width;var availableWidth=Math.max(0,width-nonFlexWidth-paddingHoriz);if(tooNarrow){for(i=0;i<visibleCount;i++){boxes[i].width=visibleItems[i].minWidth||visibleItems[i].width||boxes[i].width;}}else{if(shortfall>0){var minWidths=[];for(var index=0,length=visibleCount;index<length;index++){var item=visibleItems[index],minWidth=item.minWidth||0;if(item.flex){boxes[index].width=minWidth;}else{minWidths.push({minWidth:minWidth,available:boxes[index].width-minWidth,index:index});}} -minWidths.sort(function(a,b){return a.available>b.available?1:-1;});for(var i=0,length=minWidths.length;i<length;i++){var itemIndex=minWidths[i].index;if(itemIndex==undefined){continue;} -var item=visibleItems[itemIndex],box=boxes[itemIndex],oldWidth=box.width,minWidth=item.minWidth,newWidth=Math.max(minWidth,oldWidth-Math.ceil(shortfall/(length-i))),reduction=oldWidth-newWidth;boxes[itemIndex].width=newWidth;shortfall-=reduction;}}else{var remainingWidth=availableWidth,remainingFlex=totalFlex;for(i=0;i<visibleCount;i++){child=visibleItems[i];calcs=boxes[i];childMargins=child.margins;vertMargins=childMargins.top+childMargins.bottom;if(isStart&&child.flex&&!child.width){flexedWidth=Math.ceil((child.flex/remainingFlex)*remainingWidth);remainingWidth-=flexedWidth;remainingFlex-=child.flex;calcs.width=flexedWidth;calcs.dirtySize=true;}}}} -if(isCenter){leftOffset+=availableWidth/2;}else if(isEnd){leftOffset+=availableWidth;} -for(i=0;i<visibleCount;i++){child=visibleItems[i];calcs=boxes[i];childMargins=child.margins;leftOffset+=childMargins.left;vertMargins=childMargins.top+childMargins.bottom;calcs.left=leftOffset;calcs.top=topOffset+childMargins.top;switch(this.align){case'stretch':stretchHeight=availHeight-vertMargins;calcs.height=stretchHeight.constrain(child.minHeight||0,child.maxHeight||1000000);calcs.dirtySize=true;break;case'stretchmax':stretchHeight=maxHeight-vertMargins;calcs.height=stretchHeight.constrain(child.minHeight||0,child.maxHeight||1000000);calcs.dirtySize=true;break;case'middle':var diff=availHeight-calcs.height-vertMargins;if(diff>0){calcs.top=topOffset+vertMargins+(diff/2);}} -leftOffset+=calcs.width+childMargins.right;} -return{boxes:boxes,meta:{maxHeight:maxHeight,nonFlexWidth:nonFlexWidth,desiredWidth:desiredWidth,minimumWidth:minimumWidth,shortfall:desiredWidth-width,tooNarrow:tooNarrow}};}});Ext.Container.LAYOUTS.hbox=Ext.layout.HBoxLayout;Ext.layout.VBoxLayout=Ext.extend(Ext.layout.BoxLayout,{align:'left',type:'vbox',calculateChildBoxes:function(visibleItems,targetSize){var visibleCount=visibleItems.length,padding=this.padding,topOffset=padding.top,leftOffset=padding.left,paddingVert=topOffset+padding.bottom,paddingHoriz=leftOffset+padding.right,width=targetSize.width-this.scrollOffset,height=targetSize.height,availWidth=Math.max(0,width-paddingHoriz),isStart=this.pack=='start',isCenter=this.pack=='center',isEnd=this.pack=='end',nonFlexHeight=0,maxWidth=0,totalFlex=0,desiredHeight=0,minimumHeight=0,boxes=[],child,childWidth,childHeight,childSize,childMargins,canLayout,i,calcs,flexedWidth,horizMargins,vertMargins,stretchWidth;for(i=0;i<visibleCount;i++){child=visibleItems[i];childHeight=child.height;childWidth=child.width;canLayout=!child.hasLayout&&typeof child.doLayout=='function';if(typeof childHeight!='number'){if(child.flex&&!childHeight){totalFlex+=child.flex;}else{if(!childHeight&&canLayout){child.doLayout();} -childSize=child.getSize();childWidth=childSize.width;childHeight=childSize.height;}} -childMargins=child.margins;vertMargins=childMargins.top+childMargins.bottom;nonFlexHeight+=vertMargins+(childHeight||0);desiredHeight+=vertMargins+(child.flex?child.minHeight||0:childHeight);minimumHeight+=vertMargins+(child.minHeight||childHeight||0);if(typeof childWidth!='number'){if(canLayout){child.doLayout();} -childWidth=child.getWidth();} -maxWidth=Math.max(maxWidth,childWidth+childMargins.left+childMargins.right);boxes.push({component:child,height:childHeight||undefined,width:childWidth||undefined});} -var shortfall=desiredHeight-height,tooNarrow=minimumHeight>height;var availableHeight=Math.max(0,(height-nonFlexHeight-paddingVert));if(tooNarrow){for(i=0,length=visibleCount;i<length;i++){boxes[i].height=visibleItems[i].minHeight||visibleItems[i].height||boxes[i].height;}}else{if(shortfall>0){var minHeights=[];for(var index=0,length=visibleCount;index<length;index++){var item=visibleItems[index],minHeight=item.minHeight||0;if(item.flex){boxes[index].height=minHeight;}else{minHeights.push({minHeight:minHeight,available:boxes[index].height-minHeight,index:index});}} -minHeights.sort(function(a,b){return a.available>b.available?1:-1;});for(var i=0,length=minHeights.length;i<length;i++){var itemIndex=minHeights[i].index;if(itemIndex==undefined){continue;} -var item=visibleItems[itemIndex],box=boxes[itemIndex],oldHeight=box.height,minHeight=item.minHeight,newHeight=Math.max(minHeight,oldHeight-Math.ceil(shortfall/(length-i))),reduction=oldHeight-newHeight;boxes[itemIndex].height=newHeight;shortfall-=reduction;}}else{var remainingHeight=availableHeight,remainingFlex=totalFlex;for(i=0;i<visibleCount;i++){child=visibleItems[i];calcs=boxes[i];childMargins=child.margins;horizMargins=childMargins.left+childMargins.right;if(isStart&&child.flex&&!child.height){flexedHeight=Math.ceil((child.flex/remainingFlex)*remainingHeight);remainingHeight-=flexedHeight;remainingFlex-=child.flex;calcs.height=flexedHeight;calcs.dirtySize=true;}}}} -if(isCenter){topOffset+=availableHeight/2;}else if(isEnd){topOffset+=availableHeight;} -for(i=0;i<visibleCount;i++){child=visibleItems[i];calcs=boxes[i];childMargins=child.margins;topOffset+=childMargins.top;horizMargins=childMargins.left+childMargins.right;calcs.left=leftOffset+childMargins.left;calcs.top=topOffset;switch(this.align){case'stretch':stretchWidth=availWidth-horizMargins;calcs.width=stretchWidth.constrain(child.minWidth||0,child.maxWidth||1000000);calcs.dirtySize=true;break;case'stretchmax':stretchWidth=maxWidth-horizMargins;calcs.width=stretchWidth.constrain(child.minWidth||0,child.maxWidth||1000000);calcs.dirtySize=true;break;case'center':var diff=availWidth-calcs.width-horizMargins;if(diff>0){calcs.left=leftOffset+horizMargins+(diff/2);}} -topOffset+=calcs.height+childMargins.bottom;} -return{boxes:boxes,meta:{maxWidth:maxWidth,nonFlexHeight:nonFlexHeight,desiredHeight:desiredHeight,minimumHeight:minimumHeight,shortfall:desiredHeight-height,tooNarrow:tooNarrow}};}});Ext.Container.LAYOUTS.vbox=Ext.layout.VBoxLayout;Ext.layout.ToolbarLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,type:'toolbar',triggerWidth:18,noItemsMenuText:'<div class="x-toolbar-no-items">(None)</div>',lastOverflow:false,tableHTML:['<table cellspacing="0" class="x-toolbar-ct">','<tbody>','<tr>','<td class="x-toolbar-left" align="{0}">','<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>','</table>','</td>','</tr>','</tbody>','</table>'].join(""),onLayout:function(ct,target){if(!this.leftTr){var align=ct.buttonAlign=='center'?'center':'left';target.addClass('x-toolbar-layout-ct');target.insertHtml('beforeEnd',String.format(this.tableHTML,align));this.leftTr=target.child('tr.x-toolbar-left-row',true);this.rightTr=target.child('tr.x-toolbar-right-row',true);this.extrasTr=target.child('tr.x-toolbar-extras-row',true);if(this.hiddenItem==undefined){this.hiddenItems=[];}} -var side=ct.buttonAlign=='right'?this.rightTr:this.leftTr,items=ct.items.items,position=0;for(var i=0,len=items.length,c;i<len;i++,position++){c=items[i];if(c.isFill){side=this.rightTr;position=-1;}else if(!c.rendered){c.render(this.insertCell(c,side,position));this.configureItem(c);}else{if(!c.xtbHidden&&!this.isValidParent(c,side.childNodes[position])){var td=this.insertCell(c,side,position);td.appendChild(c.getPositionEl().dom);c.container=Ext.get(td);}}} -this.cleanup(this.leftTr);this.cleanup(this.rightTr);this.cleanup(this.extrasTr);this.fitToSize(target);},cleanup:function(el){var cn=el.childNodes,i,c;for(i=cn.length-1;i>=0&&(c=cn[i]);i--){if(!c.firstChild){el.removeChild(c);}}},insertCell:function(c,target,position){var td=document.createElement('td');td.className='x-toolbar-cell';target.insertBefore(td,target.childNodes[position]||null);return td;},hideItem:function(item){this.hiddenItems.push(item);item.xtbHidden=true;item.xtbWidth=item.getPositionEl().dom.parentNode.offsetWidth;item.hide();},unhideItem:function(item){item.show();item.xtbHidden=false;this.hiddenItems.remove(item);},getItemWidth:function(c){return c.hidden?(c.xtbWidth||0):c.getPositionEl().dom.parentNode.offsetWidth;},fitToSize:function(target){if(this.container.enableOverflow===false){return;} -var width=target.dom.clientWidth,tableWidth=target.dom.firstChild.offsetWidth,clipWidth=width-this.triggerWidth,lastWidth=this.lastWidth||0,hiddenItems=this.hiddenItems,hasHiddens=hiddenItems.length!=0,isLarger=width>=lastWidth;this.lastWidth=width;if(tableWidth>width||(hasHiddens&&isLarger)){var items=this.container.items.items,len=items.length,loopWidth=0,item;for(var i=0;i<len;i++){item=items[i];if(!item.isFill){loopWidth+=this.getItemWidth(item);if(loopWidth>clipWidth){if(!(item.hidden||item.xtbHidden)){this.hideItem(item);}}else if(item.xtbHidden){this.unhideItem(item);}}}} -hasHiddens=hiddenItems.length!=0;if(hasHiddens){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(component,hideOnClick){var config=Ext.apply({},component.initialConfig),group=component.toggleGroup;Ext.copyTo(config,component,['iconCls','icon','itemId','disabled','handler','scope','menu']);Ext.apply(config,{text:component.overflowText||component.text,hideOnClick:hideOnClick});if(group||component.enableToggle){Ext.apply(config,{group:group,checked:component.pressed,listeners:{checkchange:function(item,checked){component.toggle(checked);}}});} -delete config.ownerCt;delete config.xtype;delete config.id;return config;},addComponentToMenu:function(menu,component){if(component instanceof Ext.Toolbar.Separator){menu.add('-');}else if(Ext.isFunction(component.isXType)){if(component.isXType('splitbutton')){menu.add(this.createMenuConfig(component,true));}else if(component.isXType('button')){menu.add(this.createMenuConfig(component,!component.menu));}else if(component.isXType('buttongroup')){component.items.each(function(item){this.addComponentToMenu(menu,item);},this);}}},clearMenu:function(){var menu=this.moreMenu;if(menu&&menu.items){menu.items.each(function(item){delete item.menu;});}},beforeMoreShow:function(menu){var items=this.container.items.items,len=items.length,item,prev;var needsSep=function(group,item){return group.isXType('buttongroup')&&!(item instanceof Ext.Toolbar.Separator);};this.clearMenu();menu.removeAll();for(var i=0;i<len;i++){item=items[i];if(item.xtbHidden){if(prev&&(needsSep(item,prev)||needsSep(prev,item))){menu.add('-');} -this.addComponentToMenu(menu,item);prev=item;}} -if(menu.items.length<1){menu.add(this.noItemsMenuText);}},initMore:function(){if(!this.more){this.moreMenu=new Ext.menu.Menu({ownerCt:this.container,listeners:{beforeshow:this.beforeMoreShow,scope:this}});this.more=new Ext.Button({iconCls:'x-toolbar-more-icon',cls:'x-toolbar-more',menu:this.moreMenu,ownerCt:this.container});var td=this.insertCell(this.more,this.extrasTr,100);this.more.render(td);}},destroy:function(){Ext.destroy(this.more,this.moreMenu);delete this.leftTr;delete this.rightTr;delete this.extrasTr;Ext.layout.ToolbarLayout.superclass.destroy.call(this);}});Ext.Container.LAYOUTS.toolbar=Ext.layout.ToolbarLayout;Ext.layout.MenuLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,type:'menu',setContainer:function(ct){this.monitorResize=!ct.floating;ct.on('autosize',this.doAutoSize,this);Ext.layout.MenuLayout.superclass.setContainer.call(this,ct);},renderItem:function(c,position,target){if(!this.itemTpl){this.itemTpl=Ext.layout.MenuLayout.prototype.itemTpl=new Ext.XTemplate('<li id="{itemId}" class="{itemCls}">','<tpl if="needsIcon">','<img alt="{altText}" src="{icon}" class="{iconCls}"/>','</tpl>','</li>');} -if(c&&!c.rendered){if(Ext.isNumber(position)){position=target.dom.childNodes[position];} -var a=this.getItemArgs(c);c.render(c.positionEl=position?this.itemTpl.insertBefore(position,a,true):this.itemTpl.append(target,a,true));c.positionEl.menuItemId=c.getItemId();if(!a.isMenuItem&&a.needsIcon){c.positionEl.addClass('x-menu-list-item-indent');} -this.configureItem(c);}else if(c&&!this.isValidParent(c,target)){if(Ext.isNumber(position)){position=target.dom.childNodes[position];} -target.dom.insertBefore(c.getActionEl().dom,position||null);}},getItemArgs:function(c){var isMenuItem=c instanceof Ext.menu.Item,canHaveIcon=!(isMenuItem||c instanceof Ext.menu.Separator);return{isMenuItem:isMenuItem,needsIcon:canHaveIcon&&(c.icon||c.iconCls),icon:c.icon||Ext.BLANK_IMAGE_URL,iconCls:'x-menu-item-icon '+(c.iconCls||''),itemId:'x-menu-el-'+c.id,itemCls:'x-menu-list-item ',altText:c.altText||''};},isValidParent:function(c,target){return c.el.up('li.x-menu-list-item',5).dom.parentNode===(target.dom||target);},onLayout:function(ct,target){Ext.layout.MenuLayout.superclass.onLayout.call(this,ct,target);this.doAutoSize();},doAutoSize:function(){var ct=this.container,w=ct.width;if(ct.floating){if(w){ct.setWidth(w);}else if(Ext.isIE){ct.setWidth(Ext.isStrict&&(Ext.isIE7||Ext.isIE8)?'auto':ct.minWidth);var el=ct.getEl(),t=el.dom.offsetWidth;ct.setWidth(ct.getLayoutTarget().getWidth()+el.getFrameWidth('lr'));}}}});Ext.Container.LAYOUTS['menu']=Ext.layout.MenuLayout;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(w,h){this.fireEvent('resize',this,w,h,w,h);}});Ext.reg('viewport',Ext.Viewport);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',preventBodyReset:false,padding:undefined,resizeEvent:'bodyresize',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';} -this.toolbars=[];if(this.tbar){this.elements+=',tbar';this.topToolbar=this.createToolbar(this.tbar);this.tbar=null;} -if(this.bbar){this.elements+=',bbar';this.bottomToolbar=this.createToolbar(this.bbar);this.bbar=null;} -if(this.header===true){this.elements+=',header';this.header=null;}else if(this.headerCfg||(this.title&&this.header!==false)){this.elements+=',header';} -if(this.footerCfg||this.footer===true){this.elements+=',footer';this.footer=null;} -if(this.buttons){this.fbar=this.buttons;this.buttons=null;} -if(this.fbar){this.createFbar(this.fbar);} -if(this.autoLoad){this.on('render',this.doAutoLoad,this,{delay:10});}},createFbar:function(fbar){var min=this.minButtonWidth;this.elements+=',footer';this.fbar=this.createToolbar(fbar,{buttonAlign:this.buttonAlign,toolbarCls:'x-panel-fbar',enableOverflow:false,defaults:function(c){return{minWidth:c.minWidth||min};}});this.fbar.items.each(function(c){c.minWidth=c.minWidth||this.minButtonWidth;},this);this.buttons=this.fbar.items.items;},createToolbar:function(tb,options){var result;if(Ext.isArray(tb)){tb={items:tb};} -result=tb.events?Ext.apply(tb,options):this.createComponent(Ext.apply({},tb,options),'toolbar');this.toolbars.push(result);return result;},createElement:function(name,pnode){if(this[name]){pnode.appendChild(this[name].dom);return;} -if(name==='bwrap'||this.elements.indexOf(name)!=-1){if(this[name+'Cfg']){this[name]=Ext.fly(pnode).createChild(this[name+'Cfg']);}else{var el=document.createElement('div');el.className=this[name+'Cls'];this[name]=Ext.get(pnode.appendChild(el));} -if(this[name+'CssClass']){this[name].addClass(this[name+'CssClass']);} -if(this[name+'Style']){this[name].applyStyles(this[name+'Style']);}}},onRender:function(ct,position){Ext.Panel.superclass.onRender.call(this,ct,position);this.createClasses();var el=this.el,d=el.dom,bw,ts;if(this.collapsible&&!this.hideCollapseTool){this.tools=this.tools?this.tools.slice(0):[];this.tools[this.collapseFirst?'unshift':'push']({id:'toggle',handler:this.toggleCollapse,scope:this});} -if(this.tools){ts=this.tools;this.elements+=(this.header!==false)?',header':'';} -this.tools={};el.addClass(this.baseCls);if(d.firstChild){this.header=el.down('.'+this.headerCls);this.bwrap=el.down('.'+this.bwrapCls);var cp=this.bwrap?this.bwrap:el;this.tbar=cp.down('.'+this.tbarCls);this.body=cp.down('.'+this.bodyCls);this.bbar=cp.down('.'+this.bbarCls);this.footer=cp.down('.'+this.footerCls);this.fromMarkup=true;} -if(this.preventBodyReset===true){el.addClass('x-panel-reset');} -if(this.cls){el.addClass(this.cls);} -if(this.buttons){this.elements+=',footer';} -if(this.frame){el.insertHtml('afterBegin',String.format(Ext.Element.boxMarkup,this.baseCls));this.createElement('header',d.firstChild.firstChild.firstChild);this.createElement('bwrap',d);bw=this.bwrap.dom;var ml=d.childNodes[1],bl=d.childNodes[2];bw.appendChild(ml);bw.appendChild(bl);var mc=bw.firstChild.firstChild.firstChild;this.createElement('tbar',mc);this.createElement('body',mc);this.createElement('bbar',mc);this.createElement('footer',bw.lastChild.firstChild.firstChild);if(!this.footer){this.bwrap.dom.lastChild.className+=' x-panel-nofooter';} -this.ft=Ext.get(this.bwrap.dom.lastChild);this.mc=Ext.get(mc);}else{this.createElement('header',d);this.createElement('bwrap',d);bw=this.bwrap.dom;this.createElement('tbar',bw);this.createElement('body',bw);this.createElement('bbar',bw);this.createElement('footer',bw);if(!this.header){this.body.addClass(this.bodyCls+'-noheader');if(this.tbar){this.tbar.addClass(this.tbarCls+'-noheader');}}} -if(Ext.isDefined(this.padding)){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.titleCollapse&&this.header){this.mon(this.header,'click',this.toggleCollapse,this);this.header.setStyle('cursor','pointer');} -if(ts){this.addTool.apply(this,ts);} -if(this.fbar){this.footer.addClass('x-panel-btns');this.fbar.ownerCt=this;this.fbar.render(this.footer);this.footer.createChild({cls:'x-clear'});} -if(this.tbar&&this.topToolbar){this.topToolbar.ownerCt=this;this.topToolbar.render(this.tbar);} -if(this.bbar&&this.bottomToolbar){this.bottomToolbar.ownerCt=this;this.bottomToolbar.render(this.bbar);}},setIconClass:function(cls){var old=this.iconCls;this.iconCls=cls;if(this.rendered&&this.header){if(this.frame){this.header.addClass('x-panel-icon');this.header.replaceClass(old,this.iconCls);}else{var hd=this.header,img=hd.child('img.x-panel-inline-icon');if(img){Ext.fly(img).replaceClass(old,this.iconCls);}else{var hdspan=hd.child('span.'+this.headerTextCls);if(hdspan){Ext.DomHelper.insertBefore(hdspan.dom,{tag:'img',alt:'',src:Ext.BLANK_IMAGE_URL,cls:'x-panel-inline-icon '+this.iconCls});}}}} -this.fireEvent('iconchange',this,cls,old);},makeFloating:function(cfg){this.floating=true;this.el=new Ext.Layer(Ext.apply({},cfg,{shadow:Ext.isDefined(this.shadow)?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;},getFooterToolbar:function(){return this.fbar;},addButton:function(config,handler,scope){if(!this.fbar){this.createFbar([]);} -if(handler){if(Ext.isString(config)){config={text:config};} -config=Ext.apply({handler:handler,scope:scope},config);} -return this.fbar.add(config);},addTool:function(){if(!this.rendered){if(!this.tools){this.tools=[];} -Ext.each(arguments,function(arg){this.tools.push(arg);},this);return;} -if(!this[this.toolTarget]){return;} -if(!this.toolTemplate){var tt=new Ext.Template('<div class="x-tool x-tool-{id}"> </div>');tt.disableFormats=true;tt.compile();Ext.Panel.prototype.toolTemplate=tt;} -for(var i=0,a=arguments,len=a.length;i<len;i++){var tc=a[i];if(!this.tools[tc.id]){var overCls='x-tool-'+tc.id+'-over';var t=this.toolTemplate.insertFirst(this[this.toolTarget],tc,true);this.tools[tc.id]=t;t.enableDisplayMode('block');this.mon(t,'click',this.createToolHandler(t,tc,overCls,this));if(tc.on){this.mon(t,tc.on);} -if(tc.hidden){t.hide();} -if(tc.qtip){if(Ext.isObject(tc.qtip)){Ext.QuickTips.register(Ext.apply({target:t.id},tc.qtip));}else{t.dom.qtip=tc.qtip;}} -t.addClassOnOver(overCls);}}},onLayout:function(shallow,force){Ext.Panel.superclass.onLayout.apply(this,arguments);if(this.hasLayout&&this.toolbars.length>0){Ext.each(this.toolbars,function(tb){tb.doLayout(undefined,force);});this.syncHeight();}},syncHeight:function(){var h=this.toolbarHeight,bd=this.body,lsh=this.lastSize.height,sz;if(this.autoHeight||!Ext.isDefined(lsh)||lsh=='auto'){return;} -if(h!=this.getToolbarHeight()){h=Math.max(0,lsh-this.getFrameHeight());bd.setHeight(h);sz=bd.getSize();this.toolbarHeight=this.getToolbarHeight();this.onBodyResize(sz.width,sz.height);}},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(t,tc,overCls,panel){return function(e){t.removeClass(overCls);if(tc.stopEvent!==false){e.stopEvent();} -if(tc.handler){tc.handler.call(tc.scope||t,e,t,panel,tc);}};},afterRender:function(){if(this.floating&&!this.hidden){this.el.show();} -if(this.title){this.setTitle(this.title);} -Ext.Panel.superclass.afterRender.call(this);if(this.collapsed){this.collapsed=false;this.collapse(false);} -this.initEvents();},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();} -if(this.toolbars.length>0){Ext.each(this.toolbars,function(tb){tb.doLayout();tb.on({scope:this,afterlayout:this.syncHeight,remove:this.syncHeight});},this);this.syncHeight();}},initDraggable:function(){this.dd=new Ext.Panel.DD(this,Ext.isBoolean(this.draggable)?null:this.draggable);},beforeEffect:function(anim){if(this.floating){this.el.beforeAction();} -if(anim!==false){this.el.addClass('x-panel-animated');}},afterEffect:function(anim){this.syncShadow();this.el.removeClass('x-panel-animated');},createEffect:function(a,cb,scope){var o={scope:scope,block:true};if(a===true){o.callback=cb;return o;}else if(!a.callback){o.callback=cb;}else{o.callback=function(){cb.call(scope);Ext.callback(a.callback,a.scope);};} -return Ext.applyIf(o,a);},collapse:function(animate){if(this.collapsed||this.el.hasFxBlock()||this.fireEvent('beforecollapse',this,animate)===false){return;} -var doAnim=animate===true||(animate!==false&&this.animCollapse);this.beforeEffect(doAnim);this.onCollapse(doAnim,animate);return this;},onCollapse:function(doAnim,animArg){if(doAnim){this[this.collapseEl].slideOut(this.slideAnchor,Ext.apply(this.createEffect(animArg||true,this.afterCollapse,this),this.collapseDefaults));}else{this[this.collapseEl].hide(this.hideMode);this.afterCollapse(false);}},afterCollapse:function(anim){this.collapsed=true;this.el.addClass(this.collapsedCls);if(anim!==false){this[this.collapseEl].hide(this.hideMode);} -this.afterEffect(anim);this.cascade(function(c){if(c.lastSize){c.lastSize={width:undefined,height:undefined};}});this.fireEvent('collapse',this);},expand:function(animate){if(!this.collapsed||this.el.hasFxBlock()||this.fireEvent('beforeexpand',this,animate)===false){return;} -var doAnim=animate===true||(animate!==false&&this.animCollapse);this.el.removeClass(this.collapsedCls);this.beforeEffect(doAnim);this.onExpand(doAnim,animate);return this;},onExpand:function(doAnim,animArg){if(doAnim){this[this.collapseEl].slideIn(this.slideAnchor,Ext.apply(this.createEffect(animArg||true,this.afterExpand,this),this.expandDefaults));}else{this[this.collapseEl].show(this.hideMode);this.afterExpand(false);}},afterExpand:function(anim){this.collapsed=false;if(anim!==false){this[this.collapseEl].show(this.hideMode);} -this.afterEffect(anim);if(this.deferLayout){delete this.deferLayout;this.doLayout(true);} -this.fireEvent('expand',this);},toggleCollapse:function(animate){this[this.collapsed?'expand':'collapse'](animate);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(adjWidth,adjHeight,rawWidth,rawHeight){var w=adjWidth,h=adjHeight;if(Ext.isDefined(w)||Ext.isDefined(h)){if(!this.collapsed){if(Ext.isNumber(w)){this.body.setWidth(w=this.adjustBodyWidth(w-this.getFrameWidth()));}else if(w=='auto'){w=this.body.setWidth('auto').dom.offsetWidth;}else{w=this.body.dom.offsetWidth;} -if(this.tbar){this.tbar.setWidth(w);if(this.topToolbar){this.topToolbar.setSize(w);}} -if(this.bbar){this.bbar.setWidth(w);if(this.bottomToolbar){this.bottomToolbar.setSize(w);if(Ext.isIE){this.bbar.setStyle('position','static');this.bbar.setStyle('position','');}}} -if(this.footer){this.footer.setWidth(w);if(this.fbar){this.fbar.setSize(Ext.isIE?(w-this.footer.getFrameWidth('lr')):'auto');}} -if(Ext.isNumber(h)){h=Math.max(0,h-this.getFrameHeight());this.body.setHeight(h);}else if(h=='auto'){this.body.setHeight(h);} -if(this.disabled&&this.el._mask){this.el._mask.setSize(this.el.dom.clientWidth,this.el.getHeight());}}else{this.queuedBodySize={width:w,height:h};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,{single:true});}} -this.onBodyResize(w,h);} -this.syncShadow();Ext.Panel.superclass.onResize.call(this,adjWidth,adjHeight,rawWidth,rawHeight);},onBodyResize:function(w,h){this.fireEvent('bodyresize',this,w,h);},getToolbarHeight:function(){var h=0;if(this.rendered){Ext.each(this.toolbars,function(tb){h+=tb.getHeight();},this);} -return h;},adjustBodyHeight:function(h){return h;},adjustBodyWidth:function(w){return w;},onPosition:function(){this.syncShadow();},getFrameWidth:function(){var w=this.el.getFrameWidth('lr')+this.bwrap.getFrameWidth('lr');if(this.frame){var l=this.bwrap.dom.firstChild;w+=(Ext.fly(l).getFrameWidth('l')+Ext.fly(l.firstChild).getFrameWidth('r'));w+=this.mc.getFrameWidth('lr');} -return w;},getFrameHeight:function(){var h=this.el.getFrameWidth('tb')+this.bwrap.getFrameWidth('tb');h+=(this.tbar?this.tbar.getHeight():0)+ -(this.bbar?this.bbar.getHeight():0);if(this.frame){h+=this.el.dom.firstChild.offsetHeight+this.ft.dom.offsetHeight+this.mc.getFrameWidth('tb');}else{h+=(this.header?this.header.getHeight():0)+ -(this.footer?this.footer.getHeight():0);} -return h;},getInnerWidth:function(){return this.getSize().width-this.getFrameWidth();},getInnerHeight:function(){return this.body.getHeight();},syncShadow:function(){if(this.floating){this.el.sync(true);}},getLayoutTarget:function(){return this.body;},getContentTarget:function(){return this.body;},setTitle:function(title,iconCls){this.title=title;if(this.header&&this.headerAsText){this.header.child('span').update(title);} -if(iconCls){this.setIconClass(iconCls);} -this.fireEvent('titlechange',this,title);return this;},getUpdater:function(){return this.body.getUpdater();},load:function(){var um=this.body.getUpdater();um.update.apply(um,arguments);return this;},beforeDestroy:function(){Ext.Panel.superclass.beforeDestroy.call(this);if(this.header){this.header.removeAllListeners();} -if(this.tools){for(var k in this.tools){Ext.destroy(this.tools[k]);}} -if(this.toolbars.length>0){Ext.each(this.toolbars,function(tb){tb.un('afterlayout',this.syncHeight,this);tb.un('remove',this.syncHeight,this);},this);} -if(Ext.isArray(this.buttons)){while(this.buttons.length){Ext.destroy(this.buttons[0]);}} -if(this.rendered){Ext.destroy(this.ft,this.header,this.footer,this.tbar,this.bbar,this.body,this.mc,this.bwrap,this.dd);if(this.fbar){Ext.destroy(this.fbar,this.fbar.el);}} -Ext.destroy(this.toolbars);},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(cls,useShim,appendTo){var el=document.createElement('div');el.className='x-panel-ghost '+(cls?cls:'');if(this.header){el.appendChild(this.el.dom.firstChild.cloneNode(true));} -Ext.fly(el.appendChild(document.createElement('ul'))).setHeight(this.bwrap.getHeight());el.style.width=this.el.dom.offsetWidth+'px';;if(!appendTo){this.container.dom.appendChild(el);}else{Ext.getDom(appendTo).appendChild(el);} -if(useShim!==false&&this.el.useShim!==false){var layer=new Ext.Layer({shadow:false,useDisplay:true,constrain:false},el);layer.show();return layer;}else{return new Ext.Element(el);}},doAutoLoad:function(){var u=this.body.getUpdater();if(this.renderer){u.setRenderer(this.renderer);} -u.update(Ext.isObject(this.autoLoad)?this.autoLoad:{url:this.autoLoad});},getTool:function(id){return this.tools[id];}});Ext.reg('panel',Ext.Panel);Ext.Editor=function(field,config){if(field.field){this.field=Ext.create(field.field,'textfield');config=Ext.apply({},field);delete config.field;}else{this.field=field;} -Ext.Editor.superclass.constructor.call(this,config);};Ext.extend(Ext.Editor,Ext.Component,{allowBlur:true,value:"",alignment:"c-c?",offsets:[0,0],shadow:"frame",constrain:false,swallowKeys:true,completeOnEnter:true,cancelOnEsc:true,updateEl:false,initComponent:function(){Ext.Editor.superclass.initComponent.call(this);this.addEvents("beforestartedit","startedit","beforecomplete","complete","canceledit","specialkey");},onRender:function(ct,position){this.el=new Ext.Layer({shadow:this.shadow,cls:"x-editor",parentEl:ct,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.mon(this.field,{scope:this,blur:this.onBlur,specialkey:this.onSpecialKey});if(this.field.grow){this.mon(this.field,"autosize",this.el.sync,this.el,{delay:1});} -this.field.render(this.el).show();this.field.getEl().dom.name='';if(this.swallowKeys){this.field.el.swallowEvent(['keypress','keydown']);}},onSpecialKey:function(field,e){var key=e.getKey(),complete=this.completeOnEnter&&key==e.ENTER,cancel=this.cancelOnEsc&&key==e.ESC;if(complete||cancel){e.stopEvent();if(complete){this.completeEdit();}else{this.cancelEdit();} -if(field.triggerBlur){field.triggerBlur();}} -this.fireEvent('specialkey',field,e);},startEdit:function(el,value){if(this.editing){this.completeEdit();} -this.boundEl=Ext.get(el);var v=value!==undefined?value:this.boundEl.dom.innerHTML;if(!this.rendered){this.render(this.parentEl||document.body);} -if(this.fireEvent("beforestartedit",this,this.boundEl,v)!==false){this.startValue=v;this.field.reset();this.field.setValue(v);this.realign(true);this.editing=true;this.show();}},doAutoSize:function(){if(this.autoSize){var sz=this.boundEl.getSize(),fs=this.field.getSize();switch(this.autoSize){case"width":this.setSize(sz.width,fs.height);break;case"height":this.setSize(fs.width,sz.height);break;case"none":this.setSize(fs.width,fs.height);break;default:this.setSize(sz.width,sz.height);}}},setSize:function(w,h){delete this.field.lastSize;this.field.setSize(w,h);if(this.el){if(Ext.isGecko2||Ext.isOpera||(Ext.isIE7&&Ext.isStrict)){this.el.setSize(w,h);} -this.el.sync();}},realign:function(autoSize){if(autoSize===true){this.doAutoSize();} -this.el.alignTo(this.boundEl,this.alignment,this.offsets);},completeEdit:function(remainVisible){if(!this.editing){return;} -if(this.field.assertValue){this.field.assertValue();} -var v=this.getValue();if(!this.field.isValid()){if(this.revertInvalid!==false){this.cancelEdit(remainVisible);} -return;} -if(String(v)===String(this.startValue)&&this.ignoreNoChange){this.hideEdit(remainVisible);return;} -if(this.fireEvent("beforecomplete",this,v,this.startValue)!==false){v=this.getValue();if(this.updateEl&&this.boundEl){this.boundEl.update(v);} -this.hideEdit(remainVisible);this.fireEvent("complete",this,v,this.startValue);}},onShow:function(){this.el.show();if(this.hideEl!==false){this.boundEl.hide();} -this.field.show().focus(false,true);this.fireEvent("startedit",this.boundEl,this.startValue);},cancelEdit:function(remainVisible){if(this.editing){var v=this.getValue();this.setValue(this.startValue);this.hideEdit(remainVisible);this.fireEvent("canceledit",this,v,this.startValue);}},hideEdit:function(remainVisible){if(remainVisible!==true){this.editing=false;this.hide();}},onBlur:function(){if(this.allowBlur===true&&this.editing&&this.selectSameEditor!==true){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(v){this.field.setValue(v);},getValue:function(){return this.field.getValue();},beforeDestroy:function(){Ext.destroyMembers(this,'field');delete this.parentEl;delete this.boundEl;}});Ext.reg('editor',Ext.Editor);Ext.ColorPalette=Ext.extend(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'],initComponent:function(){Ext.ColorPalette.superclass.initComponent.call(this);this.addEvents('select');if(this.handler){this.on('select',this.handler,this.scope,true);}},onRender:function(container,position){this.autoEl={tag:'div',cls:this.itemCls};Ext.ColorPalette.superclass.onRender.call(this,container,position);var t=this.tpl||new Ext.XTemplate('<tpl for="."><a href="#" class="color-{.}" hidefocus="on"><em><span style="background:#{.}" unselectable="on"> </span></em></a></tpl>');t.overwrite(this.el,this.colors);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 s=this.value;this.value=null;this.select(s,true);}},handleClick:function(e,t){e.preventDefault();if(!this.disabled){var c=t.className.match(/(?:^|\s)color-(.{6})(?:\s|$)/)[1];this.select(c.toUpperCase());}},select:function(color,suppressEvent){color=color.replace('#','');if(color!=this.value||this.allowReselect){var el=this.el;if(this.value){el.child('a.color-'+this.value).removeClass('x-color-palette-sel');} -el.child('a.color-'+color).addClass('x-color-palette-sel');this.value=color;if(suppressEvent!==true){this.fireEvent('select',this,color);}}}});Ext.reg('colorpalette',Ext.ColorPalette);Ext.DatePicker=Ext.extend(Ext.BoxComponent,{todayText:'Today',okText:' OK ',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,focusOnSelect:true,initHour:12,initComponent:function(){Ext.DatePicker.superclass.initComponent.call(this);this.value=this.value?this.value.clearTime(true):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 dd=this.disabledDates,len=dd.length-1,re='(?:';Ext.each(dd,function(d,i){re+=Ext.isDate(d)?'^'+Ext.escapeRe(d.dateFormat(this.format))+'$':dd[i];if(i!=len){re+='|';}},this);this.disabledDatesRE=new RegExp(re+')');}},setDisabledDates:function(dd){if(Ext.isArray(dd)){this.disabledDates=dd;this.disabledDatesRE=null;}else{this.disabledDatesRE=dd;} -this.initDisabledDays();this.update(this.value,true);},setDisabledDays:function(dd){this.disabledDays=dd;this.update(this.value,true);},setMinDate:function(dt){this.minDate=dt;this.update(this.value,true);},setMaxDate:function(dt){this.maxDate=dt;this.update(this.value,true);},setValue:function(value){this.value=value.clearTime(true);this.update(this.value);},getValue:function(){return this.value;},focus:function(){this.update(this.activeDate);},onEnable:function(initial){Ext.DatePicker.superclass.onEnable.call(this);this.doDisabled(false);this.update(initial?this.value:this.activeDate);if(Ext.isIE){this.el.repaint();}},onDisable:function(){Ext.DatePicker.superclass.onDisable.call(this);this.doDisabled(true);if(Ext.isIE&&!Ext.isIE8){Ext.each([].concat(this.textNodes,this.el.query('th span')),function(el){Ext.fly(el).repaint();});}},doDisabled:function(disabled){this.keyNav.setDisabled(disabled);this.prevRepeater.setDisabled(disabled);this.nextRepeater.setDisabled(disabled);if(this.showToday){this.todayKeyListener.setDisabled(disabled);this.todayBtn.setDisabled(disabled);}},onRender:function(container,position){var m=['<table cellspacing="0">','<tr><td class="x-date-left"><a href="#" title="',this.prevText,'"> </a></td><td class="x-date-middle" align="center"></td><td class="x-date-right"><a href="#" title="',this.nextText,'"> </a></td></tr>','<tr><td colspan="3"><table class="x-date-inner" cellspacing="0"><thead><tr>'],dn=this.dayNames,i;for(i=0;i<7;i++){var d=this.startDay+i;if(d>6){d=d-7;} -m.push('<th><span>',dn[d].substr(0,1),'</span></th>');} -m[m.length]='</tr></thead><tbody><tr>';for(i=0;i<42;i++){if(i%7===0&&i!==0){m[m.length]='</tr><tr>';} -m[m.length]='<td><a href="#" hidefocus="on" class="x-date-date" tabIndex="1"><em><span></span></em></a></td>';} -m.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 el=document.createElement('div');el.className='x-date-picker';el.innerHTML=m.join('');container.dom.insertBefore(el,position);this.el=Ext.get(el);this.eventEl=Ext.get(el.firstChild);this.prevRepeater=new Ext.util.ClickRepeater(this.el.child('td.x-date-left a'),{handler:this.showPrevMonth,scope:this,preventDefault:true,stopDefault:true});this.nextRepeater=new Ext.util.ClickRepeater(this.el.child('td.x-date-right a'),{handler:this.showNextMonth,scope:this,preventDefault:true,stopDefault:true});this.monthPicker=this.el.down('div.x-date-mp');this.monthPicker.enableDisplayMode('block');this.keyNav=new Ext.KeyNav(this.eventEl,{'left':function(e){if(e.ctrlKey){this.showPrevMonth();}else{this.update(this.activeDate.add('d',-1));}},'right':function(e){if(e.ctrlKey){this.showNextMonth();}else{this.update(this.activeDate.add('d',1));}},'up':function(e){if(e.ctrlKey){this.showNextYear();}else{this.update(this.activeDate.add('d',-7));}},'down':function(e){if(e.ctrlKey){this.showPrevYear();}else{this.update(this.activeDate.add('d',7));}},'pageUp':function(e){this.showNextMonth();},'pageDown':function(e){this.showPrevMonth();},'enter':function(e){e.stopPropagation();return true;},scope:this});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:' ',tooltip:this.monthYearText,renderTo:this.el.child('td.x-date-middle',true)});this.mbtn.el.child('em').addClass('x-btn-arrow');if(this.showToday){this.todayKeyListener=this.eventEl.addKeyListener(Ext.EventObject.SPACE,this.selectToday,this);var today=(new Date()).dateFormat(this.format);this.todayBtn=new Ext.Button({renderTo:this.el.child('td.x-date-bottom',true),text:String.format(this.todayText,today),tooltip:String.format(this.todayTip,today),handler:this.selectToday,scope:this});} -this.mon(this.eventEl,'mousewheel',this.handleMouseWheel,this);this.mon(this.eventEl,'click',this.handleDateClick,this,{delegate:'a.x-date-date'});this.mon(this.mbtn,'click',this.showMonthPicker,this);this.onEnable(true);},createMonthPicker:function(){if(!this.monthPicker.dom.firstChild){var buf=['<table border="0" cellspacing="0">'];for(var i=0;i<6;i++){buf.push('<tr><td class="x-date-mp-month"><a href="#">',Date.getShortMonthName(i),'</a></td>','<td class="x-date-mp-month x-date-mp-sep"><a href="#">',Date.getShortMonthName(i+6),'</a></td>',i===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>');} -buf.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(buf.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(m,a,i){i+=1;if((i%2)===0){m.dom.xmonth=5+Math.round(i*0.5);}else{m.dom.xmonth=Math.round((i-1)*0.5);}});}},showMonthPicker:function(){if(!this.disabled){this.createMonthPicker();var size=this.el.getSize();this.monthPicker.setSize(size);this.monthPicker.child('table').setSize(size);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(y){this.mpyear=y;var ys=this.mpYears.elements;for(var i=1;i<=10;i++){var td=ys[i-1],y2;if((i%2)===0){y2=y+Math.round(i*0.5);td.firstChild.innerHTML=y2;td.xyear=y2;}else{y2=y-(5-Math.round(i*0.5));td.firstChild.innerHTML=y2;td.xyear=y2;} -this.mpYears.item(i-1)[y2==this.mpSelYear?'addClass':'removeClass']('x-date-mp-sel');}},updateMPMonth:function(sm){this.mpMonths.each(function(m,a,i){m[m.dom.xmonth==sm?'addClass':'removeClass']('x-date-mp-sel');});},selectMPMonth:function(m){},onMonthClick:function(e,t){e.stopEvent();var el=new Ext.Element(t),pn;if(el.is('button.x-date-mp-cancel')){this.hideMonthPicker();} -else if(el.is('button.x-date-mp-ok')){var d=new Date(this.mpSelYear,this.mpSelMonth,(this.activeDate||this.value).getDate());if(d.getMonth()!=this.mpSelMonth){d=new Date(this.mpSelYear,this.mpSelMonth,1).getLastDateOfMonth();} -this.update(d);this.hideMonthPicker();} -else if((pn=el.up('td.x-date-mp-month',2))){this.mpMonths.removeClass('x-date-mp-sel');pn.addClass('x-date-mp-sel');this.mpSelMonth=pn.dom.xmonth;} -else if((pn=el.up('td.x-date-mp-year',2))){this.mpYears.removeClass('x-date-mp-sel');pn.addClass('x-date-mp-sel');this.mpSelYear=pn.dom.xyear;} -else if(el.is('a.x-date-mp-prev')){this.updateMPYear(this.mpyear-10);} -else if(el.is('a.x-date-mp-next')){this.updateMPYear(this.mpyear+10);}},onMonthDblClick:function(e,t){e.stopEvent();var el=new Ext.Element(t),pn;if((pn=el.up('td.x-date-mp-month',2))){this.update(new Date(this.mpSelYear,pn.dom.xmonth,(this.activeDate||this.value).getDate()));this.hideMonthPicker();} -else if((pn=el.up('td.x-date-mp-year',2))){this.update(new Date(pn.dom.xyear,this.mpSelMonth,(this.activeDate||this.value).getDate()));this.hideMonthPicker();}},hideMonthPicker:function(disableAnim){if(this.monthPicker){if(disableAnim===true){this.monthPicker.hide();}else{this.monthPicker.slideOut('t',{duration:0.2});}}},showPrevMonth:function(e){this.update(this.activeDate.add('mo',-1));},showNextMonth:function(e){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(e){e.stopEvent();if(!this.disabled){var delta=e.getWheelDelta();if(delta>0){this.showPrevMonth();}else if(delta<0){this.showNextMonth();}}},handleDateClick:function(e,t){e.stopEvent();if(!this.disabled&&t.dateValue&&!Ext.fly(t.parentNode).hasClass('x-date-disabled')){this.cancelFocus=this.focusOnSelect===false;this.setValue(new Date(t.dateValue));delete this.cancelFocus;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(date,forceRefresh){if(this.rendered){var vd=this.activeDate,vis=this.isVisible();this.activeDate=date;if(!forceRefresh&&vd&&this.el){var t=date.getTime();if(vd.getMonth()==date.getMonth()&&vd.getFullYear()==date.getFullYear()){this.cells.removeClass('x-date-selected');this.cells.each(function(c){if(c.dom.firstChild.dateValue==t){c.addClass('x-date-selected');if(vis&&!this.cancelFocus){Ext.fly(c.dom.firstChild).focus(50);} -return false;}},this);return;}} -var days=date.getDaysInMonth(),firstOfMonth=date.getFirstDateOfMonth(),startingPos=firstOfMonth.getDay()-this.startDay;if(startingPos<0){startingPos+=7;} -days+=startingPos;var pm=date.add('mo',-1),prevStart=pm.getDaysInMonth()-startingPos,cells=this.cells.elements,textEls=this.textNodes,d=(new Date(pm.getFullYear(),pm.getMonth(),prevStart,this.initHour)),today=new Date().clearTime().getTime(),sel=date.clearTime(true).getTime(),min=this.minDate?this.minDate.clearTime(true):Number.NEGATIVE_INFINITY,max=this.maxDate?this.maxDate.clearTime(true):Number.POSITIVE_INFINITY,ddMatch=this.disabledDatesRE,ddText=this.disabledDatesText,ddays=this.disabledDays?this.disabledDays.join(''):false,ddaysText=this.disabledDaysText,format=this.format;if(this.showToday){var td=new Date().clearTime(),disable=(td<min||td>max||(ddMatch&&format&&ddMatch.test(td.dateFormat(format)))||(ddays&&ddays.indexOf(td.getDay())!=-1));if(!this.disabled){this.todayBtn.setDisabled(disable);this.todayKeyListener[disable?'disable':'enable']();}} -var setCellClass=function(cal,cell){cell.title='';var t=d.clearTime(true).getTime();cell.firstChild.dateValue=t;if(t==today){cell.className+=' x-date-today';cell.title=cal.todayText;} -if(t==sel){cell.className+=' x-date-selected';if(vis){Ext.fly(cell.firstChild).focus(50);}} -if(t<min){cell.className=' x-date-disabled';cell.title=cal.minText;return;} -if(t>max){cell.className=' x-date-disabled';cell.title=cal.maxText;return;} -if(ddays){if(ddays.indexOf(d.getDay())!=-1){cell.title=ddaysText;cell.className=' x-date-disabled';}} -if(ddMatch&&format){var fvalue=d.dateFormat(format);if(ddMatch.test(fvalue)){cell.title=ddText.replace('%0',fvalue);cell.className=' x-date-disabled';}}};var i=0;for(;i<startingPos;i++){textEls[i].innerHTML=(++prevStart);d.setDate(d.getDate()+1);cells[i].className='x-date-prevday';setCellClass(this,cells[i]);} -for(;i<days;i++){var intDay=i-startingPos+1;textEls[i].innerHTML=(intDay);d.setDate(d.getDate()+1);cells[i].className='x-date-active';setCellClass(this,cells[i]);} -var extraDays=0;for(;i<42;i++){textEls[i].innerHTML=(++extraDays);d.setDate(d.getDate()+1);cells[i].className='x-date-nextday';setCellClass(this,cells[i]);} -this.mbtn.setText(this.monthNames[date.getMonth()]+' '+date.getFullYear());if(!this.internalRender){var main=this.el.dom.firstChild,w=main.offsetWidth;this.el.setWidth(w+this.el.getBorderWidth('lr'));Ext.fly(main).setWidth(w);this.internalRender=true;if(Ext.isOpera&&!this.secondPass){main.rows[0].cells[1].style.width=(w-(main.rows[0].cells[0].offsetWidth+main.rows[0].cells[2].offsetWidth))+'px';this.secondPass=true;this.update.defer(10,this,[date]);}}}},beforeDestroy:function(){if(this.rendered){Ext.destroy(this.keyNav,this.monthPicker,this.eventEl,this.mbtn,this.nextRepeater,this.prevRepeater,this.cells.el,this.todayBtn);delete this.textNodes;delete this.cells.elements;}}});Ext.reg('datepicker',Ext.DatePicker);Ext.LoadMask=function(el,config){this.el=Ext.get(el);Ext.apply(this,config);if(this.store){this.store.on({scope:this,beforeload:this.onBeforeLoad,load:this.onLoad,exception:this.onLoad});this.removeMask=Ext.value(this.removeMask,false);}else{var um=this.el.getUpdater();um.showLoadIndicator=false;um.on({scope:this,beforeupdate:this.onBeforeLoad,update:this.onLoad,failure:this.onLoad});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('exception',this.onLoad,this);}else{var um=this.el.getUpdater();um.un('beforeupdate',this.onBeforeLoad,this);um.un('update',this.onLoad,this);um.un('failure',this.onLoad,this);}}};Ext.ns('Ext.slider');Ext.slider.Thumb=Ext.extend(Object,{dragging:false,constructor:function(config){Ext.apply(this,config||{},{cls:'x-slider-thumb',constrain:false});Ext.slider.Thumb.superclass.constructor.call(this,config);if(this.slider.vertical){Ext.apply(this,Ext.slider.Thumb.Vertical);}},render:function(){this.el=this.slider.innerEl.insertFirst({cls:this.cls});this.initEvents();},enable:function(){this.disabled=false;this.el.removeClass(this.slider.disabledClass);},disable:function(){this.disabled=true;this.el.addClass(this.slider.disabledClass);},initEvents:function(){var el=this.el;el.addClassOnOver('x-slider-thumb-over');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(el);},onBeforeDragStart:function(e){if(this.disabled){return false;}else{this.slider.promoteThumb(this);return true;}},onDragStart:function(e){this.el.addClass('x-slider-thumb-drag');this.dragging=true;this.dragStartValue=this.value;this.slider.fireEvent('dragstart',this.slider,e,this);},onDrag:function(e){var slider=this.slider,index=this.index,newValue=this.getNewValue();if(this.constrain){var above=slider.thumbs[index+1],below=slider.thumbs[index-1];if(below!=undefined&&newValue<=below.value)newValue=below.value;if(above!=undefined&&newValue>=above.value)newValue=above.value;} -slider.setValue(index,newValue,false);slider.fireEvent('drag',slider,e,this);},getNewValue:function(){var slider=this.slider,pos=slider.innerEl.translatePoints(this.tracker.getXY());return Ext.util.Format.round(slider.reverseValue(pos.left),slider.decimalPrecision);},onDragEnd:function(e){var slider=this.slider,value=this.value;this.el.removeClass('x-slider-thumb-drag');this.dragging=false;slider.fireEvent('dragend',slider,e);if(this.dragStartValue!=value){slider.fireEvent('changecomplete',slider,value,this);}},destroy:function(){Ext.destroyMembers(this,'tracker','el');}});Ext.slider.MultiSlider=Ext.extend(Ext.BoxComponent,{vertical:false,minValue:0,maxValue:100,decimalPrecision:0,keyIncrement:1,increment:0,clickRange:[5,15],clickToChange:true,animate:true,constrainThumbs:true,topThumbZIndex:10000,initComponent:function(){if(!Ext.isDefined(this.value)){this.value=this.minValue;} -this.thumbs=[];Ext.slider.MultiSlider.superclass.initComponent.call(this);this.keyIncrement=Math.max(this.increment,this.keyIncrement);this.addEvents('beforechange','change','changecomplete','dragstart','drag','dragend');if(this.values==undefined||Ext.isEmpty(this.values))this.values=[0];var values=this.values;for(var i=0;i<values.length;i++){this.addThumb(values[i]);} -if(this.vertical){Ext.apply(this,Ext.slider.Vertical);}},addThumb:function(value){var thumb=new Ext.slider.Thumb({value:value,slider:this,index:this.thumbs.length,constrain:this.constrainThumbs});this.thumbs.push(thumb);if(this.rendered)thumb.render();},promoteThumb:function(topThumb){var thumbs=this.thumbs,zIndex,thumb;for(var i=0,j=thumbs.length;i<j;i++){thumb=thumbs[i];if(thumb==topThumb){zIndex=this.topThumbZIndex;}else{zIndex='';} -thumb.el.setStyle('zIndex',zIndex);}},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:[{tag:'a',cls:'x-slider-focus',href:"#",tabIndex:'-1',hidefocus:'on'}]}}};Ext.slider.MultiSlider.superclass.onRender.apply(this,arguments);this.endEl=this.el.first();this.innerEl=this.endEl.first();this.focusEl=this.innerEl.child('.x-slider-focus');for(var i=0;i<this.thumbs.length;i++){this.thumbs[i].render();} -var thumb=this.innerEl.child('.x-slider-thumb');this.halfThumb=(this.vertical?thumb.getHeight():thumb.getWidth())/2;this.initEvents();},initEvents:function(){this.mon(this.el,{scope:this,mousedown:this.onMouseDown,keydown:this.onKeyDown});this.focusEl.swallowEvent("click",true);},onMouseDown:function(e){if(this.disabled){return;} -var thumbClicked=false;for(var i=0;i<this.thumbs.length;i++){thumbClicked=thumbClicked||e.target==this.thumbs[i].el.dom;} -if(this.clickToChange&&!thumbClicked){var local=this.innerEl.translatePoints(e.getXY());this.onClickChange(local);} -this.focus();},onClickChange:function(local){if(local.top>this.clickRange[0]&&local.top<this.clickRange[1]){var thumb=this.getNearest(local,'left'),index=thumb.index;this.setValue(index,Ext.util.Format.round(this.reverseValue(local.left),this.decimalPrecision),undefined,true);}},getNearest:function(local,prop){var localValue=prop=='top'?this.innerEl.getHeight()-local[prop]:local[prop],clickValue=this.reverseValue(localValue),nearestDistance=(this.maxValue-this.minValue)+5,index=0,nearest=null;for(var i=0;i<this.thumbs.length;i++){var thumb=this.thumbs[i],value=thumb.value,dist=Math.abs(value-clickValue);if(Math.abs(dist<=nearestDistance)){nearest=thumb;index=i;nearestDistance=dist;}} -return nearest;},onKeyDown:function(e){if(this.disabled||this.thumbs.length!==1){e.preventDefault();return;} -var k=e.getKey(),val;switch(k){case e.UP:case e.RIGHT:e.stopEvent();val=e.ctrlKey?this.maxValue:this.getValue(0)+this.keyIncrement;this.setValue(0,val,undefined,true);break;case e.DOWN:case e.LEFT:e.stopEvent();val=e.ctrlKey?this.minValue:this.getValue(0)-this.keyIncrement;this.setValue(0,val,undefined,true);break;default:e.preventDefault();}},doSnap:function(value){if(!(this.increment&&value)){return value;} -var newValue=value,inc=this.increment,m=value%inc;if(m!=0){newValue-=m;if(m*2>=inc){newValue+=inc;}else if(m*2<-inc){newValue-=inc;}} -return newValue.constrain(this.minValue,this.maxValue);},afterRender:function(){Ext.slider.MultiSlider.superclass.afterRender.apply(this,arguments);for(var i=0;i<this.thumbs.length;i++){var thumb=this.thumbs[i];if(thumb.value!==undefined){var v=this.normalizeValue(thumb.value);if(v!==thumb.value){this.setValue(i,v,false);}else{this.moveThumb(i,this.translateValue(v),false);}}};},getRatio:function(){var w=this.innerEl.getWidth(),v=this.maxValue-this.minValue;return v==0?w:(w/v);},normalizeValue:function(v){v=this.doSnap(v);v=Ext.util.Format.round(v,this.decimalPrecision);v=v.constrain(this.minValue,this.maxValue);return v;},setMinValue:function(val){this.minValue=val;var i=0,thumbs=this.thumbs,len=thumbs.length,t;for(;i<len;++i){t=thumbs[i];t.value=t.value<val?val:t.value;} -this.syncThumb();},setMaxValue:function(val){this.maxValue=val;var i=0,thumbs=this.thumbs,len=thumbs.length,t;for(;i<len;++i){t=thumbs[i];t.value=t.value>val?val:t.value;} -this.syncThumb();},setValue:function(index,v,animate,changeComplete){var thumb=this.thumbs[index],el=thumb.el;v=this.normalizeValue(v);if(v!==thumb.value&&this.fireEvent('beforechange',this,v,thumb.value,thumb)!==false){thumb.value=v;if(this.rendered){this.moveThumb(index,this.translateValue(v),animate!==false);this.fireEvent('change',this,v,thumb);if(changeComplete){this.fireEvent('changecomplete',this,v,thumb);}}}},translateValue:function(v){var ratio=this.getRatio();return(v*ratio)-(this.minValue*ratio)-this.halfThumb;},reverseValue:function(pos){var ratio=this.getRatio();return(pos+(this.minValue*ratio))/ratio;},moveThumb:function(index,v,animate){var thumb=this.thumbs[index].el;if(!animate||this.animate===false){thumb.setLeft(v);}else{thumb.shift({left:v,stopFx:true,duration:.35});}},focus:function(){this.focusEl.focus(10);},onResize:function(w,h){var thumbs=this.thumbs,len=thumbs.length,i=0;for(;i<len;++i){thumbs[i].el.stopFx();} -if(Ext.isNumber(w)){this.innerEl.setWidth(w-(this.el.getPadding('l')+this.endEl.getPadding('r')));} -this.syncThumb();Ext.slider.MultiSlider.superclass.onResize.apply(this,arguments);},onDisable:function(){Ext.slider.MultiSlider.superclass.onDisable.call(this);for(var i=0;i<this.thumbs.length;i++){var thumb=this.thumbs[i],el=thumb.el;thumb.disable();if(Ext.isIE){var xy=el.getXY();el.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(xy);}}},onEnable:function(){Ext.slider.MultiSlider.superclass.onEnable.call(this);for(var i=0;i<this.thumbs.length;i++){var thumb=this.thumbs[i],el=thumb.el;thumb.enable();if(Ext.isIE){this.innerEl.removeClass(this.disabledClass).dom.disabled=false;if(this.thumbHolder)this.thumbHolder.hide();el.show();this.syncThumb();}}},syncThumb:function(){if(this.rendered){for(var i=0;i<this.thumbs.length;i++){this.moveThumb(i,this.translateValue(this.thumbs[i].value));}}},getValue:function(index){return this.thumbs[index].value;},getValues:function(){var values=[];for(var i=0;i<this.thumbs.length;i++){values.push(this.thumbs[i].value);} -return values;},beforeDestroy:function(){var thumbs=this.thumbs;for(var i=0,len=thumbs.length;i<len;++i){thumbs[i].destroy();thumbs[i]=null;} -Ext.destroyMembers(this,'endEl','innerEl','focusEl','thumbHolder');Ext.slider.MultiSlider.superclass.beforeDestroy.call(this);}});Ext.reg('multislider',Ext.slider.MultiSlider);Ext.slider.SingleSlider=Ext.extend(Ext.slider.MultiSlider,{constructor:function(config){config=config||{};Ext.applyIf(config,{values:[config.value||0]});Ext.slider.SingleSlider.superclass.constructor.call(this,config);},getValue:function(){return Ext.slider.SingleSlider.superclass.getValue.call(this,0);},setValue:function(value,animate){var args=Ext.toArray(arguments),len=args.length;if(len==1||(len<=3&&typeof arguments[1]!='number')){args.unshift(0);} -return Ext.slider.SingleSlider.superclass.setValue.apply(this,args);},syncThumb:function(){return Ext.slider.SingleSlider.superclass.syncThumb.apply(this,[0].concat(arguments));},getNearest:function(){return this.thumbs[0];}});Ext.Slider=Ext.slider.SingleSlider;Ext.reg('slider',Ext.slider.SingleSlider);Ext.slider.Vertical={onResize:function(w,h){this.innerEl.setHeight(h-(this.el.getPadding('t')+this.endEl.getPadding('b')));this.syncThumb();},getRatio:function(){var h=this.innerEl.getHeight(),v=this.maxValue-this.minValue;return h/v;},moveThumb:function(index,v,animate){var thumb=this.thumbs[index],el=thumb.el;if(!animate||this.animate===false){el.setBottom(v);}else{el.shift({bottom:v,stopFx:true,duration:.35});}},onClickChange:function(local){if(local.left>this.clickRange[0]&&local.left<this.clickRange[1]){var thumb=this.getNearest(local,'top'),index=thumb.index,value=this.minValue+this.reverseValue(this.innerEl.getHeight()-local.top);this.setValue(index,Ext.util.Format.round(value,this.decimalPrecision),undefined,true);}}};Ext.slider.Thumb.Vertical={getNewValue:function(){var slider=this.slider,innerEl=slider.innerEl,pos=innerEl.translatePoints(this.tracker.getXY()),bottom=innerEl.getHeight()-pos.top;return slider.minValue+Ext.util.Format.round(bottom/slider.getRatio(),slider.decimalPrecision);}};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(ct,position){var tpl=new Ext.Template('<div class="{cls}-wrap">','<div class="{cls}-inner">','<div class="{cls}-bar">','<div class="{cls}-text">','<div> </div>','</div>','</div>','<div class="{cls}-text {cls}-text-back">','<div> </div>','</div>','</div>','</div>');this.el=position?tpl.insertBefore(position,{cls:this.baseCls},true):tpl.append(ct,{cls:this.baseCls},true);if(this.id){this.el.dom.id=this.id;} -var inner=this.el.dom.firstChild;this.progressBar=Ext.get(inner.firstChild);if(this.textEl){this.textEl=Ext.get(this.textEl);delete this.textTopEl;}else{this.textTopEl=Ext.get(this.progressBar.dom.firstChild);var textBackEl=Ext.get(inner.childNodes[1]);this.textTopEl.setStyle("z-index",99).addClass('x-hidden');this.textEl=new Ext.CompositeElement([this.textTopEl.dom.firstChild,textBackEl.dom.firstChild]);this.textEl.setWidth(inner.offsetWidth);} -this.progressBar.setHeight(inner.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(value,text,animate){this.value=value||0;if(text){this.updateText(text);} -if(this.rendered&&!this.isDestroyed){var w=Math.floor(value*this.el.dom.firstChild.offsetWidth);this.progressBar.setWidth(w,animate===true||(animate!==false&&this.animate));if(this.textTopEl){this.textTopEl.removeClass('x-hidden').setWidth(w);}} -this.fireEvent('update',this,value,text);return this;},wait:function(o){if(!this.waitTimer){var scope=this;o=o||{};this.updateText(o.text);this.waitTimer=Ext.TaskMgr.start({run:function(i){var inc=o.increment||10;i-=1;this.updateProgress(((((i+inc)%inc)+1)*(100/inc))*0.01,null,o.animate);},interval:o.interval||1000,duration:o.duration,onStop:function(){if(o.fn){o.fn.apply(o.scope||this);} -this.reset();},scope:scope});} -return this;},isWaiting:function(){return this.waitTimer!==null;},updateText:function(text){this.text=text||' ';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(w,h){Ext.ProgressBar.superclass.setSize.call(this,w,h);if(this.textTopEl){var inner=this.el.dom.firstChild;this.textEl.setSize(inner.offsetWidth,inner.offsetHeight);} -this.syncProgressBar();return this;},reset:function(hide){this.updateProgress(0);if(this.textTopEl){this.textTopEl.addClass('x-hidden');} -this.clearTimer();if(hide===true){this.hide();} -return this;},clearTimer:function(){if(this.waitTimer){this.waitTimer.onStop=null;Ext.TaskMgr.stop(this.waitTimer);this.waitTimer=null;}},onDestroy:function(){this.clearTimer();if(this.rendered){if(this.textEl.isComposite){this.textEl.clear();} -Ext.destroyMembers(this,'textEl','progressBar','textTopEl');} -Ext.ProgressBar.superclass.onDestroy.call(this);}});Ext.reg('progress',Ext.ProgressBar);Ext.DataView=Ext.extend(Ext.BoxComponent,{selectedClass:"x-view-selected",emptyText:"",deferEmptyText:true,trackOver:false,blockRefresh:false,last:false,initComponent:function(){Ext.DataView.superclass.initComponent.call(this);if(Ext.isString(this.tpl)||Ext.isArray(this.tpl)){this.tpl=new Ext.XTemplate(this.tpl);} -this.addEvents("beforeclick","click","mouseenter","mouseleave","containerclick","dblclick","contextmenu","containercontextmenu","selectionchange","beforeselect");this.store=Ext.StoreMgr.lookup(this.store);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 el=this.getTemplateTarget(),records=this.store.getRange();el.update('');if(records.length<1){if(!this.deferEmptyText||this.hasSkippedEmptyText){el.update(this.emptyText);} -this.all.clear();}else{this.tpl.overwrite(el,this.collectData(records,0));this.all.fill(Ext.query(this.itemSelector,el.dom));this.updateIndexes(0);} -this.hasSkippedEmptyText=true;},getTemplateTarget:function(){return this.el;},prepareData:function(data){return data;},collectData:function(records,startIndex){var r=[],i=0,len=records.length;for(;i<len;i++){r[r.length]=this.prepareData(records[i].data,startIndex+i,records[i]);} -return r;},bufferRender:function(records,index){var div=document.createElement('div');this.tpl.overwrite(div,this.collectData(records,index));return Ext.query(this.itemSelector,div);},onUpdate:function(ds,record){var index=this.store.indexOf(record);if(index>-1){var sel=this.isSelected(index),original=this.all.elements[index],node=this.bufferRender([record],index)[0];this.all.replaceElement(index,node,true);if(sel){this.selected.replaceElement(original,node);this.all.item(index).addClass(this.selectedClass);} -this.updateIndexes(index,index);}},onAdd:function(ds,records,index){if(this.all.getCount()===0){this.refresh();return;} -var nodes=this.bufferRender(records,index),n,a=this.all.elements;if(index<this.all.getCount()){n=this.all.item(index).insertSibling(nodes,'before',true);a.splice.apply(a,[index,0].concat(nodes));}else{n=this.all.last().insertSibling(nodes,'after',true);a.push.apply(a,nodes);} -this.updateIndexes(index);},onRemove:function(ds,record,index){this.deselect(index);this.all.removeElement(index,true);this.updateIndexes(index);if(this.store.getCount()===0){this.refresh();}},refreshNode:function(index){this.onUpdate(this.store,this.store.getAt(index));},updateIndexes:function(startIndex,endIndex){var ns=this.all.elements;startIndex=startIndex||0;endIndex=endIndex||((endIndex===0)?0:(ns.length-1));for(var i=startIndex;i<=endIndex;i++){ns[i].viewIndex=i;}},getStore:function(){return this.store;},bindStore:function(store,initial){if(!initial&&this.store){if(store!==this.store&&this.store.autoDestroy){this.store.destroy();}else{this.store.un("beforeload",this.onBeforeLoad,this);this.store.un("datachanged",this.onDataChanged,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(!store){this.store=null;}} -if(store){store=Ext.StoreMgr.lookup(store);store.on({scope:this,beforeload:this.onBeforeLoad,datachanged:this.onDataChanged,add:this.onAdd,remove:this.onRemove,update:this.onUpdate,clear:this.refresh});} -this.store=store;if(store){this.refresh();}},onDataChanged:function(){if(this.blockRefresh!==true){this.refresh.apply(this,arguments);}},findItemFromChild:function(node){return Ext.fly(node).findParent(this.itemSelector,this.getTemplateTarget());},onClick:function(e){var item=e.getTarget(this.itemSelector,this.getTemplateTarget()),index;if(item){index=this.indexOf(item);if(this.onItemClick(item,index,e)!==false){this.fireEvent("click",this,index,item,e);}}else{if(this.fireEvent("containerclick",this,e)!==false){this.onContainerClick(e);}}},onContainerClick:function(e){this.clearSelections();},onContextMenu:function(e){var item=e.getTarget(this.itemSelector,this.getTemplateTarget());if(item){this.fireEvent("contextmenu",this,this.indexOf(item),item,e);}else{this.fireEvent("containercontextmenu",this,e);}},onDblClick:function(e){var item=e.getTarget(this.itemSelector,this.getTemplateTarget());if(item){this.fireEvent("dblclick",this,this.indexOf(item),item,e);}},onMouseOver:function(e){var item=e.getTarget(this.itemSelector,this.getTemplateTarget());if(item&&item!==this.lastItem){this.lastItem=item;Ext.fly(item).addClass(this.overClass);this.fireEvent("mouseenter",this,this.indexOf(item),item,e);}},onMouseOut:function(e){if(this.lastItem){if(!e.within(this.lastItem,true,true)){Ext.fly(this.lastItem).removeClass(this.overClass);this.fireEvent("mouseleave",this,this.indexOf(this.lastItem),this.lastItem,e);delete this.lastItem;}}},onItemClick:function(item,index,e){if(this.fireEvent("beforeclick",this,index,item,e)===false){return false;} -if(this.multiSelect){this.doMultiSelection(item,index,e);e.preventDefault();}else if(this.singleSelect){this.doSingleSelection(item,index,e);e.preventDefault();} -return true;},doSingleSelection:function(item,index,e){if(e.ctrlKey&&this.isSelected(index)){this.deselect(index);}else{this.select(index,false);}},doMultiSelection:function(item,index,e){if(e.shiftKey&&this.last!==false){var last=this.last;this.selectRange(last,index,e.ctrlKey);this.last=last;}else{if((e.ctrlKey||this.simpleSelect)&&this.isSelected(index)){this.deselect(index);}else{this.select(index,e.ctrlKey||e.shiftKey||this.simpleSelect);}}},getSelectionCount:function(){return this.selected.getCount();},getSelectedNodes:function(){return this.selected.elements;},getSelectedIndexes:function(){var indexes=[],selected=this.selected.elements,i=0,len=selected.length;for(;i<len;i++){indexes.push(selected[i].viewIndex);} -return indexes;},getSelectedRecords:function(){return this.getRecords(this.selected.elements);},getRecords:function(nodes){var records=[],i=0,len=nodes.length;for(;i<len;i++){records[records.length]=this.store.getAt(nodes[i].viewIndex);} -return records;},getRecord:function(node){return this.store.getAt(node.viewIndex);},clearSelections:function(suppressEvent,skipUpdate){if((this.multiSelect||this.singleSelect)&&this.selected.getCount()>0){if(!skipUpdate){this.selected.removeClass(this.selectedClass);} -this.selected.clear();this.last=false;if(!suppressEvent){this.fireEvent("selectionchange",this,this.selected.elements);}}},isSelected:function(node){return this.selected.contains(this.getNode(node));},deselect:function(node){if(this.isSelected(node)){node=this.getNode(node);this.selected.removeElement(node);if(this.last==node.viewIndex){this.last=false;} -Ext.fly(node).removeClass(this.selectedClass);this.fireEvent("selectionchange",this,this.selected.elements);}},select:function(nodeInfo,keepExisting,suppressEvent){if(Ext.isArray(nodeInfo)){if(!keepExisting){this.clearSelections(true);} -for(var i=0,len=nodeInfo.length;i<len;i++){this.select(nodeInfo[i],true,true);} -if(!suppressEvent){this.fireEvent("selectionchange",this,this.selected.elements);}}else{var node=this.getNode(nodeInfo);if(!keepExisting){this.clearSelections(true);} -if(node&&!this.isSelected(node)){if(this.fireEvent("beforeselect",this,node,this.selected.elements)!==false){Ext.fly(node).addClass(this.selectedClass);this.selected.add(node);this.last=node.viewIndex;if(!suppressEvent){this.fireEvent("selectionchange",this,this.selected.elements);}}}}},selectRange:function(start,end,keepExisting){if(!keepExisting){this.clearSelections(true);} -this.select(this.getNodes(start,end),true);},getNode:function(nodeInfo){if(Ext.isString(nodeInfo)){return document.getElementById(nodeInfo);}else if(Ext.isNumber(nodeInfo)){return this.all.elements[nodeInfo];}else if(nodeInfo instanceof Ext.data.Record){var idx=this.store.indexOf(nodeInfo);return this.all.elements[idx];} -return nodeInfo;},getNodes:function(start,end){var ns=this.all.elements,nodes=[],i;start=start||0;end=!Ext.isDefined(end)?Math.max(ns.length-1,0):end;if(start<=end){for(i=start;i<=end&&ns[i];i++){nodes.push(ns[i]);}}else{for(i=start;i>=end&&ns[i];i--){nodes.push(ns[i]);}} -return nodes;},indexOf:function(node){node=this.getNode(node);if(Ext.isNumber(node.viewIndex)){return node.viewIndex;} -return this.all.indexOf(node);},onBeforeLoad:function(){if(this.loadingText){this.clearSelections(false,true);this.getTemplateTarget().update('<div class="loading-indicator">'+this.loadingText+'</div>');this.all.clear();}},onDestroy:function(){this.all.clear();this.selected.clear();Ext.DataView.superclass.onDestroy.call(this);this.bindStore(null);}});Ext.DataView.prototype.setStore=Ext.DataView.prototype.bindStore;Ext.reg('dataview',Ext.DataView);Ext.list.ListView=Ext.extend(Ext.DataView,{itemSelector:'dl',selectedClass:'x-list-selected',overClass:'x-list-over',scrollOffset:undefined,columnResize:true,columnSort:true,maxColumnWidth:Ext.isIE?99:100,initComponent:function(){if(this.columnResize){this.colResizer=new Ext.list.ColumnResizer(this.colResizer);this.colResizer.init(this);} -if(this.columnSort){this.colSorter=new Ext.list.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:{[values.width*100]}%;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:{[values.width*100]}%;text-align:{align};">','<em unselectable="on"<tpl if="cls"> class="{cls}</tpl>">','{[values.tpl.apply(parent)]}','</em></dt>','</tpl>','<div class="x-clear"></div>','</dl>','</tpl>');};var cs=this.columns,allocatedWidth=0,colsWithWidth=0,len=cs.length,columns=[];for(var i=0;i<len;i++){var c=cs[i];if(!c.isColumn){c.xtype=c.xtype?(/^lv/.test(c.xtype)?c.xtype:'lv'+c.xtype):'lvcolumn';c=Ext.create(c);} -if(c.width){allocatedWidth+=c.width*100;if(allocatedWidth>this.maxColumnWidth){c.width-=(allocatedWidth-this.maxColumnWidth)/100;} -colsWithWidth++;} -columns.push(c);} -cs=this.columns=columns;if(colsWithWidth<len){var remaining=len-colsWithWidth;if(allocatedWidth<this.maxColumnWidth){var perCol=((this.maxColumnWidth-allocatedWidth)/remaining)/100;for(var j=0;j<len;j++){var c=cs[j];if(!c.width){c.width=perCol;}}}} -Ext.list.ListView.superclass.initComponent.call(this);},onRender:function(){this.autoEl={cls:'x-list-wrap'};Ext.list.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 rs=Ext.list.ListView.superclass.collectData.apply(this,arguments);return{columns:this.columns,rows:rs};},verifyInternalSize:function(){if(this.lastSize){this.onResize(this.lastSize.width,this.lastSize.height);}},onResize:function(w,h){var body=this.innerBody.dom,header=this.innerHd.dom,scrollWidth=w-Ext.num(this.scrollOffset,Ext.getScrollBarWidth())+'px',parentNode;if(!body){return;} -parentNode=body.parentNode;if(Ext.isNumber(w)){if(this.reserveScrollOffset||((parentNode.offsetWidth-parentNode.clientWidth)>10)){body.style.width=scrollWidth;header.style.width=scrollWidth;}else{body.style.width=w+'px';header.style.width=w+'px';setTimeout(function(){if((parentNode.offsetWidth-parentNode.clientWidth)>10){body.style.width=scrollWidth;header.style.width=scrollWidth;}},10);}} -if(Ext.isNumber(h)){parentNode.style.height=Math.max(0,h-header.parentNode.offsetHeight)+'px';}},updateIndexes:function(){Ext.list.ListView.superclass.updateIndexes.apply(this,arguments);this.verifyInternalSize();},findHeaderIndex:function(header){header=header.dom||header;var parentNode=header.parentNode,children=parentNode.parentNode.childNodes,i=0,c;for(;c=children[i];i++){if(c==parentNode){return i;}} -return-1;},setHdWidths:function(){var els=this.innerHd.dom.getElementsByTagName('div'),i=0,columns=this.columns,len=columns.length;for(;i<len;i++){els[i].style.width=(columns[i].width*100)+'%';}}});Ext.reg('listview',Ext.list.ListView);Ext.ListView=Ext.list.ListView;Ext.list.Column=Ext.extend(Object,{isColumn:true,align:'left',header:'',width:null,cls:'',constructor:function(c){if(!c.tpl){c.tpl=new Ext.XTemplate('{'+c.dataIndex+'}');} -else if(Ext.isString(c.tpl)){c.tpl=new Ext.XTemplate(c.tpl);} -Ext.apply(this,c);}});Ext.reg('lvcolumn',Ext.list.Column);Ext.list.NumberColumn=Ext.extend(Ext.list.Column,{format:'0,000.00',constructor:function(c){c.tpl=c.tpl||new Ext.XTemplate('{'+c.dataIndex+':number("'+(c.format||this.format)+'")}');Ext.list.NumberColumn.superclass.constructor.call(this,c);}});Ext.reg('lvnumbercolumn',Ext.list.NumberColumn);Ext.list.DateColumn=Ext.extend(Ext.list.Column,{format:'m/d/Y',constructor:function(c){c.tpl=c.tpl||new Ext.XTemplate('{'+c.dataIndex+':date("'+(c.format||this.format)+'")}');Ext.list.DateColumn.superclass.constructor.call(this,c);}});Ext.reg('lvdatecolumn',Ext.list.DateColumn);Ext.list.BooleanColumn=Ext.extend(Ext.list.Column,{trueText:'true',falseText:'false',undefinedText:' ',constructor:function(c){c.tpl=c.tpl||new Ext.XTemplate('{'+c.dataIndex+':this.format}');var t=this.trueText,f=this.falseText,u=this.undefinedText;c.tpl.format=function(v){if(v===undefined){return u;} -if(!v||v==='false'){return f;} -return t;};Ext.list.DateColumn.superclass.constructor.call(this,c);}});Ext.reg('lvbooleancolumn',Ext.list.BooleanColumn);Ext.list.ColumnResizer=Ext.extend(Ext.util.Observable,{minPct:.05,constructor:function(config){Ext.apply(this,config);Ext.list.ColumnResizer.superclass.constructor.call(this);},init:function(listView){this.view=listView;listView.on('render',this.initEvents,this);},initEvents:function(view){view.mon(view.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(view.innerHd);view.on('beforedestroy',this.tracker.destroy,this.tracker);},handleHdMove:function(e,t){var handleWidth=5,x=e.getPageX(),header=e.getTarget('em',3,true);if(header){var region=header.getRegion(),style=header.dom.style,parentNode=header.dom.parentNode;if(x-region.left<=handleWidth&&parentNode!=parentNode.parentNode.firstChild){this.activeHd=Ext.get(parentNode.previousSibling.firstChild);style.cursor=Ext.isWebKit?'e-resize':'col-resize';}else if(region.right-x<=handleWidth&&parentNode!=parentNode.parentNode.lastChild.previousSibling){this.activeHd=header;style.cursor=Ext.isWebKit?'w-resize':'col-resize';}else{delete this.activeHd;style.cursor='';}}},onBeforeStart:function(e){this.dragHd=this.activeHd;return!!this.dragHd;},onStart:function(e){var me=this,view=me.view,dragHeader=me.dragHd,x=me.tracker.getXY()[0];me.proxy=view.el.createChild({cls:'x-list-resizer'});me.dragX=dragHeader.getX();me.headerIndex=view.findHeaderIndex(dragHeader);me.headersDisabled=view.disableHeaders;view.disableHeaders=true;me.proxy.setHeight(view.el.getHeight());me.proxy.setX(me.dragX);me.proxy.setWidth(x-me.dragX);this.setBoundaries();},setBoundaries:function(relativeX){var view=this.view,headerIndex=this.headerIndex,width=view.innerHd.getWidth(),relativeX=view.innerHd.getX(),minWidth=Math.ceil(width*this.minPct),maxWidth=width-minWidth,numColumns=view.columns.length,headers=view.innerHd.select('em',true),minX=minWidth+relativeX,maxX=maxWidth+relativeX,header;if(numColumns==2){this.minX=minX;this.maxX=maxX;}else{header=headers.item(headerIndex+2);this.minX=headers.item(headerIndex).getX()+minWidth;this.maxX=header?header.getX()-minWidth:maxX;if(headerIndex==0){this.minX=minX;}else if(headerIndex==numColumns-2){this.maxX=maxX;}}},onDrag:function(e){var me=this,cursorX=me.tracker.getXY()[0].constrain(me.minX,me.maxX);me.proxy.setWidth(cursorX-this.dragX);},onEnd:function(e){var newWidth=this.proxy.getWidth(),index=this.headerIndex,view=this.view,columns=view.columns,width=view.innerHd.getWidth(),newPercent=Math.ceil(newWidth*view.maxColumnWidth/width)/100,disabled=this.headersDisabled,headerCol=columns[index],otherCol=columns[index+1],totalPercent=headerCol.width+otherCol.width;this.proxy.remove();headerCol.width=newPercent;otherCol.width=totalPercent-newPercent;delete this.dragHd;view.setHdWidths();view.refresh();setTimeout(function(){view.disableHeaders=disabled;},100);}});Ext.ListView.ColumnResizer=Ext.list.ColumnResizer;Ext.list.Sorter=Ext.extend(Ext.util.Observable,{sortClasses:["sort-asc","sort-desc"],constructor:function(config){Ext.apply(this,config);Ext.list.Sorter.superclass.constructor.call(this);},init:function(listView){this.view=listView;listView.on('render',this.initEvents,this);},initEvents:function(view){view.mon(view.innerHd,'click',this.onHdClick,this);view.innerHd.setStyle('cursor','pointer');view.mon(view.store,'datachanged',this.updateSortState,this);this.updateSortState.defer(10,this,[view.store]);},updateSortState:function(store){var state=store.getSortState();if(!state){return;} -this.sortState=state;var cs=this.view.columns,sortColumn=-1;for(var i=0,len=cs.length;i<len;i++){if(cs[i].dataIndex==state.field){sortColumn=i;break;}} -if(sortColumn!=-1){var sortDir=state.direction;this.updateSortIcon(sortColumn,sortDir);}},updateSortIcon:function(col,dir){var sc=this.sortClasses;var hds=this.view.innerHd.select('em').removeClass(sc);hds.item(col).addClass(sc[dir=="DESC"?1:0]);},onHdClick:function(e){var hd=e.getTarget('em',3);if(hd&&!this.view.disableHeaders){var index=this.view.findHeaderIndex(hd);this.view.store.sort(this.view.columns[index].dataIndex);}}});Ext.ListView.Sorter=Ext.list.Sorter;Ext.DataView.LabelEditor=Ext.extend(Ext.Editor,{alignment:"tl-tl",hideEl:false,cls:"x-small-editor",shim:false,completeOnEnter:true,cancelOnEsc:true,labelSelector:'span.x-editable',constructor:function(cfg,field){Ext.DataView.LabelEditor.superclass.constructor.call(this,field||new Ext.form.TextField({allowBlank:false,growMin:90,growMax:240,grow:true,selectOnFocus:true}),cfg);},init:function(view){this.view=view;view.on('render',this.initEditor,this);this.on('complete',this.onSave,this);},initEditor:function(){this.view.on({scope:this,containerclick:this.doBlur,click:this.doBlur});this.view.getEl().on('mousedown',this.onMouseDown,this,{delegate:this.labelSelector});},doBlur:function(){if(this.editing){this.field.blur();}},onMouseDown:function(e,target){if(!e.ctrlKey&&!e.shiftKey){var item=this.view.findItemFromChild(target);e.stopEvent();var record=this.view.store.getAt(this.view.indexOf(item));this.startEdit(target,record.data[this.dataIndex]);this.activeRecord=record;}else{e.preventDefault();}},onSave:function(ed,value){this.activeRecord.set(this.dataIndex,value);}});Ext.DataView.DragSelector=function(cfg){cfg=cfg||{};var view,proxy,tracker;var rs,bodyRegion,dragRegion=new Ext.lib.Region(0,0,0,0);var dragSafe=cfg.dragSafe===true;this.init=function(dataView){view=dataView;view.on('render',onRender);};function fillRegions(){rs=[];view.all.each(function(el){rs[rs.length]=el.getRegion();});bodyRegion=view.el.getRegion();} -function cancelClick(){return false;} -function onBeforeStart(e){return!dragSafe||e.target==view.el.dom;} -function onStart(e){view.on('containerclick',cancelClick,view,{single:true});if(!proxy){proxy=view.el.createChild({cls:'x-view-selector'});}else{if(proxy.dom.parentNode!==view.el.dom){view.el.dom.appendChild(proxy.dom);} -proxy.setDisplayed('block');} -fillRegions();view.clearSelections();} -function onDrag(e){var startXY=tracker.startXY;var xy=tracker.getXY();var x=Math.min(startXY[0],xy[0]);var y=Math.min(startXY[1],xy[1]);var w=Math.abs(startXY[0]-xy[0]);var h=Math.abs(startXY[1]-xy[1]);dragRegion.left=x;dragRegion.top=y;dragRegion.right=x+w;dragRegion.bottom=y+h;dragRegion.constrainTo(bodyRegion);proxy.setRegion(dragRegion);for(var i=0,len=rs.length;i<len;i++){var r=rs[i],sel=dragRegion.intersect(r);if(sel&&!r.selected){r.selected=true;view.select(i,true);}else if(!sel&&r.selected){r.selected=false;view.deselect(i);}}} -function onEnd(e){if(!Ext.isIE){view.un('containerclick',cancelClick,view);} -if(proxy){proxy.setDisplayed(false);}} -function onRender(view){tracker=new Ext.dd.DragTracker({onBeforeStart:onBeforeStart,onStart:onStart,onDrag:onDrag,onEnd:onEnd});tracker.initEl(view.el);}};Ext.data.Api=(function(){var validActions={};return{actions:{create:'create',read:'read',update:'update',destroy:'destroy'},restActions:{create:'POST',read:'GET',update:'PUT',destroy:'DELETE'},isAction:function(action){return(Ext.data.Api.actions[action])?true:false;},getVerb:function(name){if(validActions[name]){return validActions[name];} -for(var verb in this.actions){if(this.actions[verb]===name){validActions[name]=verb;break;}} -return(validActions[name]!==undefined)?validActions[name]:null;},isValid:function(api){var invalid=[];var crud=this.actions;for(var action in api){if(!(action in crud)){invalid.push(action);}} -return(!invalid.length)?true:invalid;},hasUniqueUrl:function(proxy,verb){var url=(proxy.api[verb])?proxy.api[verb].url:null;var unique=true;for(var action in proxy.api){if((unique=(action===verb)?true:(proxy.api[action].url!=url)?true:false)===false){break;}} -return unique;},prepare:function(proxy){if(!proxy.api){proxy.api={};} -for(var verb in this.actions){var action=this.actions[verb];proxy.api[action]=proxy.api[action]||proxy.url||proxy.directFn;if(typeof(proxy.api[action])=='string'){proxy.api[action]={url:proxy.api[action],method:(proxy.restful===true)?Ext.data.Api.restActions[action]:undefined};}}},restify:function(proxy){proxy.restful=true;for(var verb in this.restActions){proxy.api[this.actions[verb]].method||(proxy.api[this.actions[verb]].method=this.restActions[verb]);} -proxy.onWrite=proxy.onWrite.createInterceptor(function(action,o,response,rs){var reader=o.reader;var res=new Ext.data.Response({action:action,raw:response});switch(response.status){case 200:return true;break;case 201:if(Ext.isEmpty(res.raw.responseText)){res.success=true;}else{return true;} -break;case 204:res.success=true;res.data=null;break;default:return true;break;} -if(res.success===true){this.fireEvent("write",this,action,res.data,res,rs,o.request.arg);}else{this.fireEvent('exception',this,'remote',action,o,res,rs);} -o.request.callback.call(o.request.scope,res.data,res,res.success);return false;},proxy);}};})();Ext.data.Response=function(params,response){Ext.apply(this,params,{raw:response});};Ext.data.Response.prototype={message:null,success:false,status:null,root:null,raw:null,getMessage:function(){return this.message;},getSuccess:function(){return this.success;},getStatus:function(){return this.status;},getRoot:function(){return this.root;},getRawResponse:function(){return this.raw;}};Ext.data.Api.Error=Ext.extend(Ext.Error,{constructor:function(message,arg){this.arg=arg;Ext.Error.call(this,message);},name:'Ext.data.Api'});Ext.apply(Ext.data.Api.Error.prototype,{lang:{'action-url-undefined':'No fallback url defined for this action. When defining a DataProxy api, please be sure to define an url for each CRUD action in Ext.data.Api.actions or define a default url in addition to your api-configuration.','invalid':'received an invalid API-configuration. Please ensure your proxy API-configuration contains only the actions defined in Ext.data.Api.actions','invalid-url':'Invalid url. Please review your proxy configuration.','execute':'Attempted to execute an unknown action. Valid API actions are defined in Ext.data.Api.actions"'}});Ext.data.SortTypes={none:function(s){return s;},stripTagsRE:/<\/?[^>]+>/gi,asText:function(s){return String(s).replace(this.stripTagsRE,"");},asUCText:function(s){return String(s).toUpperCase().replace(this.stripTagsRE,"");},asUCString:function(s){return String(s).toUpperCase();},asDate:function(s){if(!s){return 0;} -if(Ext.isDate(s)){return s.getTime();} -return Date.parse(String(s));},asFloat:function(s){var val=parseFloat(String(s).replace(/,/g,""));return isNaN(val)?0:val;},asInt:function(s){var val=parseInt(String(s).replace(/,/g,""),10);return isNaN(val)?0:val;}};Ext.data.Record=function(data,id){this.id=(id||id===0)?id:Ext.data.Record.id(this);this.data=data||{};};Ext.data.Record.create=function(o){var f=Ext.extend(Ext.data.Record,{});var p=f.prototype;p.fields=new Ext.util.MixedCollection(false,function(field){return field.name;});for(var i=0,len=o.length;i<len;i++){p.fields.add(new Ext.data.Field(o[i]));} -f.getField=function(name){return p.fields.get(name);};return f;};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(rec){rec.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(store){this.store=store;},set:function(name,value){var encode=Ext.isPrimitive(value)?String:Ext.encode;if(encode(this.data[name])==encode(value)){return;} -this.dirty=true;if(!this.modified){this.modified={};} -if(this.modified[name]===undefined){this.modified[name]=this.data[name];} -this.data[name]=value;if(!this.editing){this.afterEdit();}},afterEdit:function(){if(this.store!=undefined&&typeof this.store.afterEdit=="function"){this.store.afterEdit(this);}},afterReject:function(){if(this.store){this.store.afterReject(this);}},afterCommit:function(){if(this.store){this.store.afterCommit(this);}},get:function(name){return this.data[name];},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(silent){var m=this.modified;for(var n in m){if(typeof m[n]!="function"){this.data[n]=m[n];}} -this.dirty=false;delete this.modified;this.editing=false;if(silent!==true){this.afterReject();}},commit:function(silent){this.dirty=false;delete this.modified;this.editing=false;if(silent!==true){this.afterCommit();}},getChanges:function(){var m=this.modified,cs={};for(var n in m){if(m.hasOwnProperty(n)){cs[n]=this.data[n];}} -return cs;},hasError:function(){return this.error!==null;},clearError:function(){this.error=null;},copy:function(newId){return new this.constructor(Ext.apply({},this.data),newId||this.id);},isModified:function(fieldName){return!!(this.modified&&this.modified.hasOwnProperty(fieldName));},isValid:function(){return this.fields.find(function(f){return(f.allowBlank===false&&Ext.isEmpty(this.data[f.name]))?true:false;},this)?false:true;},markDirty:function(){this.dirty=true;if(!this.modified){this.modified={};} -this.fields.each(function(f){this.modified[f.name]=this.data[f.name];},this);}};Ext.StoreMgr=Ext.apply(new Ext.util.MixedCollection(),{register:function(){for(var i=0,s;(s=arguments[i]);i++){this.add(s);}},unregister:function(){for(var i=0,s;(s=arguments[i]);i++){this.remove(this.lookup(s));}},lookup:function(id){if(Ext.isArray(id)){var fields=['field1'],expand=!Ext.isArray(id[0]);if(!expand){for(var i=2,len=id[0].length;i<=len;++i){fields.push('field'+i);}} -return new Ext.data.ArrayStore({fields:fields,data:id,expandData:expand,autoDestroy:true,autoCreated:true});} -return Ext.isObject(id)?(id.events?id:Ext.create(id,'store')):this.get(id);},getKey:function(o){return o.storeId;}});Ext.data.Store=Ext.extend(Ext.util.Observable,{writer:undefined,remoteSort:false,autoDestroy:false,pruneModifiedRecords:false,lastOptions:null,autoSave:true,batch:true,restful:false,paramNames:undefined,defaultParamNames:{start:'start',limit:'limit',sort:'sort',dir:'dir'},isDestroyed:false,hasMultiSort:false,batchKey:'_ext_batch_',constructor:function(config){this.data=new Ext.util.MixedCollection(false);this.data.getKey=function(o){return o.id;};this.removed=[];if(config&&config.data){this.inlineData=config.data;delete config.data;} -Ext.apply(this,config);this.baseParams=Ext.isObject(this.baseParams)?this.baseParams:{};this.paramNames=Ext.applyIf(this.paramNames||{},this.defaultParamNames);if((this.url||this.api)&&!this.proxy){this.proxy=new Ext.data.HttpProxy({url:this.url,api:this.api});} -if(this.restful===true&&this.proxy){this.batch=false;Ext.data.Api.restify(this.proxy);} -if(this.reader){if(!this.recordType){this.recordType=this.reader.recordType;} -if(this.reader.onMetaChange){this.reader.onMetaChange=this.reader.onMetaChange.createSequence(this.onMetaChange,this);} -if(this.writer){if(this.writer instanceof(Ext.data.DataWriter)===false){this.writer=this.buildWriter(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','exception','beforeload','load','loadexception','beforewrite','write','beforesave','save');if(this.proxy){this.relayEvents(this.proxy,['loadexception','exception']);} -if(this.writer){this.on({scope:this,add:this.createRecords,remove:this.destroyRecord,update:this.updateRecord,clear:this.onClear});} -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]);} -this.batchCounter=0;this.batches={};},buildWriter:function(config){var klass=undefined,type=(config.format||'json').toLowerCase();switch(type){case'json':klass=Ext.data.JsonWriter;break;case'xml':klass=Ext.data.XmlWriter;break;default:klass=Ext.data.JsonWriter;} -return new klass(config);},destroy:function(){if(!this.isDestroyed){if(this.storeId){Ext.StoreMgr.unregister(this);} -this.clearData();this.data=null;Ext.destroy(this.proxy);this.reader=this.writer=null;this.purgeListeners();this.isDestroyed=true;}},add:function(records){var i,len,record,index;records=[].concat(records);if(records.length<1){return;} -for(i=0,len=records.length;i<len;i++){record=records[i];record.join(this);if(record.dirty||record.phantom){this.modified.push(record);}} -index=this.data.length;this.data.addAll(records);if(this.snapshot){this.snapshot.addAll(records);} -this.fireEvent('add',this,records,index);},addSorted:function(record){var index=this.findInsertIndex(record);this.insert(index,record);},doUpdate:function(rec){this.data.replace(rec.id,rec);if(this.snapshot){this.snapshot.replace(rec.id,rec);} -this.fireEvent('update',this,rec,Ext.data.Record.COMMIT);},remove:function(record){if(Ext.isArray(record)){Ext.each(record,function(r){this.remove(r);},this);return;} -var index=this.data.indexOf(record);if(index>-1){record.join(null);this.data.removeAt(index);} -if(this.pruneModifiedRecords){this.modified.remove(record);} -if(this.snapshot){this.snapshot.remove(record);} -if(index>-1){this.fireEvent('remove',this,record,index);}},removeAt:function(index){this.remove(this.getAt(index));},removeAll:function(silent){var items=[];this.each(function(rec){items.push(rec);});this.clearData();if(this.snapshot){this.snapshot.clear();} -if(this.pruneModifiedRecords){this.modified=[];} -if(silent!==true){this.fireEvent('clear',this,items);}},onClear:function(store,records){Ext.each(records,function(rec,index){this.destroyRecord(this,rec,index);},this);},insert:function(index,records){var i,len,record;records=[].concat(records);for(i=0,len=records.length;i<len;i++){record=records[i];this.data.insert(index+i,record);record.join(this);if(record.dirty||record.phantom){this.modified.push(record);}} -if(this.snapshot){this.snapshot.addAll(records);} -this.fireEvent('add',this,records,index);},indexOf:function(record){return this.data.indexOf(record);},indexOfId:function(id){return this.data.indexOfKey(id);},getById:function(id){return(this.snapshot||this.data).key(id);},getAt:function(index){return this.data.itemAt(index);},getRange:function(start,end){return this.data.getRange(start,end);},storeOptions:function(o){o=Ext.apply({},o);delete o.callback;delete o.scope;this.lastOptions=o;},clearData:function(){this.data.each(function(rec){rec.join(null);});this.data.clear();},load:function(options){options=Ext.apply({},options);this.storeOptions(options);if(this.sortInfo&&this.remoteSort){var pn=this.paramNames;options.params=Ext.apply({},options.params);options.params[pn.sort]=this.sortInfo.field;options.params[pn.dir]=this.sortInfo.direction;} -try{return this.execute('read',null,options);}catch(e){this.handleException(e);return false;}},updateRecord:function(store,record,action){if(action==Ext.data.Record.EDIT&&this.autoSave===true&&(!record.phantom||(record.phantom&&record.isValid()))){this.save();}},createRecords:function(store,records,index){var modified=this.modified,length=records.length,record,i;for(i=0;i<length;i++){record=records[i];if(record.phantom&&record.isValid()){record.markDirty();if(modified.indexOf(record)==-1){modified.push(record);}}} -if(this.autoSave===true){this.save();}},destroyRecord:function(store,record,index){if(this.modified.indexOf(record)!=-1){this.modified.remove(record);} -if(!record.phantom){this.removed.push(record);record.lastIndex=index;if(this.autoSave===true){this.save();}}},execute:function(action,rs,options,batch){if(!Ext.data.Api.isAction(action)){throw new Ext.data.Api.Error('execute',action);} -options=Ext.applyIf(options||{},{params:{}});if(batch!==undefined){this.addToBatch(batch);} -var doRequest=true;if(action==='read'){doRequest=this.fireEvent('beforeload',this,options);Ext.applyIf(options.params,this.baseParams);} -else{if(this.writer.listful===true&&this.restful!==true){rs=(Ext.isArray(rs))?rs:[rs];} -else if(Ext.isArray(rs)&&rs.length==1){rs=rs.shift();} -if((doRequest=this.fireEvent('beforewrite',this,action,rs,options))!==false){this.writer.apply(options.params,this.baseParams,action,rs);}} -if(doRequest!==false){if(this.writer&&this.proxy.url&&!this.proxy.restful&&!Ext.data.Api.hasUniqueUrl(this.proxy,action)){options.params.xaction=action;} -this.proxy.request(Ext.data.Api.actions[action],rs,options.params,this.reader,this.createCallback(action,rs,batch),this,options);} -return doRequest;},save:function(){if(!this.writer){throw new Ext.data.Store.Error('writer-undefined');} -var queue=[],len,trans,batch,data={},i;if(this.removed.length){queue.push(['destroy',this.removed]);} -var rs=[].concat(this.getModifiedRecords());if(rs.length){var phantoms=[];for(i=rs.length-1;i>=0;i--){if(rs[i].phantom===true){var rec=rs.splice(i,1).shift();if(rec.isValid()){phantoms.push(rec);}}else if(!rs[i].isValid()){rs.splice(i,1);}} -if(phantoms.length){queue.push(['create',phantoms]);} -if(rs.length){queue.push(['update',rs]);}} -len=queue.length;if(len){batch=++this.batchCounter;for(i=0;i<len;++i){trans=queue[i];data[trans[0]]=trans[1];} -if(this.fireEvent('beforesave',this,data)!==false){for(i=0;i<len;++i){trans=queue[i];this.doTransaction(trans[0],trans[1],batch);} -return batch;}} -return-1;},doTransaction:function(action,rs,batch){function transaction(records){try{this.execute(action,records,undefined,batch);}catch(e){this.handleException(e);}} -if(this.batch===false){for(var i=0,len=rs.length;i<len;i++){transaction.call(this,rs[i]);}}else{transaction.call(this,rs);}},addToBatch:function(batch){var b=this.batches,key=this.batchKey+batch,o=b[key];if(!o){b[key]=o={id:batch,count:0,data:{}};} -++o.count;},removeFromBatch:function(batch,action,data){var b=this.batches,key=this.batchKey+batch,o=b[key],arr;if(o){arr=o.data[action]||[];o.data[action]=arr.concat(data);if(o.count===1){data=o.data;delete b[key];this.fireEvent('save',this,batch,data);}else{--o.count;}}},createCallback:function(action,rs,batch){var actions=Ext.data.Api.actions;return(action=='read')?this.loadRecords:function(data,response,success){this['on'+Ext.util.Format.capitalize(action)+'Records'](success,rs,[].concat(data));if(success===true){this.fireEvent('write',this,action,data,response,rs);} -this.removeFromBatch(batch,action,data);};},clearModified:function(rs){if(Ext.isArray(rs)){for(var n=rs.length-1;n>=0;n--){this.modified.splice(this.modified.indexOf(rs[n]),1);}}else{this.modified.splice(this.modified.indexOf(rs),1);}},reMap:function(record){if(Ext.isArray(record)){for(var i=0,len=record.length;i<len;i++){this.reMap(record[i]);}}else{delete this.data.map[record._phid];this.data.map[record.id]=record;var index=this.data.keys.indexOf(record._phid);this.data.keys.splice(index,1,record.id);delete record._phid;}},onCreateRecords:function(success,rs,data){if(success===true){try{this.reader.realize(rs,data);this.reMap(rs);} -catch(e){this.handleException(e);if(Ext.isArray(rs)){this.onCreateRecords(success,rs,data);}}}},onUpdateRecords:function(success,rs,data){if(success===true){try{this.reader.update(rs,data);}catch(e){this.handleException(e);if(Ext.isArray(rs)){this.onUpdateRecords(success,rs,data);}}}},onDestroyRecords:function(success,rs,data){rs=(rs instanceof Ext.data.Record)?[rs]:[].concat(rs);for(var i=0,len=rs.length;i<len;i++){this.removed.splice(this.removed.indexOf(rs[i]),1);} -if(success===false){for(i=rs.length-1;i>=0;i--){this.insert(rs[i].lastIndex,rs[i]);}}},handleException:function(e){Ext.handleError(e);},reload:function(options){this.load(Ext.applyIf(options||{},this.lastOptions));},loadRecords:function(o,options,success){var i,len;if(this.isDestroyed===true){return;} -if(!o||success===false){if(success!==false){this.fireEvent('load',this,[],options);} -if(options.callback){options.callback.call(options.scope||this,[],options,false,o);} -return;} -var r=o.records,t=o.totalRecords||r.length;if(!options||options.add!==true){if(this.pruneModifiedRecords){this.modified=[];} -for(i=0,len=r.length;i<len;i++){r[i].join(this);} -if(this.snapshot){this.data=this.snapshot;delete this.snapshot;} -this.clearData();this.data.addAll(r);this.totalLength=t;this.applySort();this.fireEvent('datachanged',this);}else{var toAdd=[],rec,cnt=0;for(i=0,len=r.length;i<len;++i){rec=r[i];if(this.indexOfId(rec.id)>-1){this.doUpdate(rec);}else{toAdd.push(rec);++cnt;}} -this.totalLength=Math.max(t,this.data.length+cnt);this.add(toAdd);} -this.fireEvent('load',this,r,options);if(options.callback){options.callback.call(options.scope||this,r,options,true);}},loadData:function(o,append){var r=this.reader.readRecords(o);this.loadRecords(r,{add:append},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.multiSortInfo)&&!this.remoteSort){this.sortData();}},sortData:function(){var sortInfo=this.hasMultiSort?this.multiSortInfo:this.sortInfo,direction=sortInfo.direction||"ASC",sorters=sortInfo.sorters,sortFns=[];if(!this.hasMultiSort){sorters=[{direction:direction,field:sortInfo.field}];} -for(var i=0,j=sorters.length;i<j;i++){sortFns.push(this.createSortFunction(sorters[i].field,sorters[i].direction));} -if(sortFns.length==0){return;} -var directionModifier=direction.toUpperCase()=="DESC"?-1:1;var fn=function(r1,r2){var result=sortFns[0].call(this,r1,r2);if(sortFns.length>1){for(var i=1,j=sortFns.length;i<j;i++){result=result||sortFns[i].call(this,r1,r2);}} -return directionModifier*result;};this.data.sort(direction,fn);if(this.snapshot&&this.snapshot!=this.data){this.snapshot.sort(direction,fn);}},createSortFunction:function(field,direction){direction=direction||"ASC";var directionModifier=direction.toUpperCase()=="DESC"?-1:1;var sortType=this.fields.get(field).sortType;return function(r1,r2){var v1=sortType(r1.data[field]),v2=sortType(r2.data[field]);return directionModifier*(v1>v2?1:(v1<v2?-1:0));};},setDefaultSort:function(field,dir){dir=dir?dir.toUpperCase():'ASC';this.sortInfo={field:field,direction:dir};this.sortToggle[field]=dir;},sort:function(fieldName,dir){if(Ext.isArray(arguments[0])){return this.multiSort.call(this,fieldName,dir);}else{return this.singleSort(fieldName,dir);}},singleSort:function(fieldName,dir){var field=this.fields.get(fieldName);if(!field){return false;} -var name=field.name,sortInfo=this.sortInfo||null,sortToggle=this.sortToggle?this.sortToggle[name]:null;if(!dir){if(sortInfo&&sortInfo.field==name){dir=(this.sortToggle[name]||'ASC').toggle('ASC','DESC');}else{dir=field.sortDir;}} -this.sortToggle[name]=dir;this.sortInfo={field:name,direction:dir};this.hasMultiSort=false;if(this.remoteSort){if(!this.load(this.lastOptions)){if(sortToggle){this.sortToggle[name]=sortToggle;} -if(sortInfo){this.sortInfo=sortInfo;}}}else{this.applySort();this.fireEvent('datachanged',this);} -return true;},multiSort:function(sorters,direction){this.hasMultiSort=true;direction=direction||"ASC";if(this.multiSortInfo&&direction==this.multiSortInfo.direction){direction=direction.toggle("ASC","DESC");} -this.multiSortInfo={sorters:sorters,direction:direction};if(this.remoteSort){this.singleSort(sorters[0].field,sorters[0].direction);}else{this.applySort();this.fireEvent('datachanged',this);}},each:function(fn,scope){this.data.each(fn,scope);},getModifiedRecords:function(){return this.modified;},sum:function(property,start,end){var rs=this.data.items,v=0;start=start||0;end=(end||end===0)?end:rs.length-1;for(var i=start;i<=end;i++){v+=(rs[i].data[property]||0);} -return v;},createFilterFn:function(property,value,anyMatch,caseSensitive,exactMatch){if(Ext.isEmpty(value,false)){return false;} -value=this.data.createValueMatcher(value,anyMatch,caseSensitive,exactMatch);return function(r){return value.test(r.data[property]);};},createMultipleFilterFn:function(filters){return function(record){var isMatch=true;for(var i=0,j=filters.length;i<j;i++){var filter=filters[i],fn=filter.fn,scope=filter.scope;isMatch=isMatch&&fn.call(scope,record);} -return isMatch;};},filter:function(property,value,anyMatch,caseSensitive,exactMatch){var fn;if(Ext.isObject(property)){property=[property];} -if(Ext.isArray(property)){var filters=[];for(var i=0,j=property.length;i<j;i++){var filter=property[i],func=filter.fn,scope=filter.scope||this;if(!Ext.isFunction(func)){func=this.createFilterFn(filter.property,filter.value,filter.anyMatch,filter.caseSensitive,filter.exactMatch);} -filters.push({fn:func,scope:scope});} -fn=this.createMultipleFilterFn(filters);}else{fn=this.createFilterFn(property,value,anyMatch,caseSensitive,exactMatch);} -return fn?this.filterBy(fn):this.clearFilter();},filterBy:function(fn,scope){this.snapshot=this.snapshot||this.data;this.data=this.queryBy(fn,scope||this);this.fireEvent('datachanged',this);},clearFilter:function(suppressEvent){if(this.isFiltered()){this.data=this.snapshot;delete this.snapshot;if(suppressEvent!==true){this.fireEvent('datachanged',this);}}},isFiltered:function(){return!!this.snapshot&&this.snapshot!=this.data;},query:function(property,value,anyMatch,caseSensitive){var fn=this.createFilterFn(property,value,anyMatch,caseSensitive);return fn?this.queryBy(fn):this.data.clone();},queryBy:function(fn,scope){var data=this.snapshot||this.data;return data.filterBy(fn,scope||this);},find:function(property,value,start,anyMatch,caseSensitive){var fn=this.createFilterFn(property,value,anyMatch,caseSensitive);return fn?this.data.findIndexBy(fn,null,start):-1;},findExact:function(property,value,start){return this.data.findIndexBy(function(rec){return rec.get(property)===value;},this,start);},findBy:function(fn,scope,start){return this.data.findIndexBy(fn,scope,start);},collect:function(dataIndex,allowNull,bypassFilter){var d=(bypassFilter===true&&this.snapshot)?this.snapshot.items:this.data.items;var v,sv,r=[],l={};for(var i=0,len=d.length;i<len;i++){v=d[i].data[dataIndex];sv=String(v);if((allowNull||!Ext.isEmpty(v))&&!l[sv]){l[sv]=true;r[r.length]=v;}} -return r;},afterEdit:function(record){if(this.modified.indexOf(record)==-1){this.modified.push(record);} -this.fireEvent('update',this,record,Ext.data.Record.EDIT);},afterReject:function(record){this.modified.remove(record);this.fireEvent('update',this,record,Ext.data.Record.REJECT);},afterCommit:function(record){this.modified.remove(record);this.fireEvent('update',this,record,Ext.data.Record.COMMIT);},commitChanges:function(){var modified=this.modified.slice(0),length=modified.length,i;for(i=0;i<length;i++){modified[i].commit();} -this.modified=[];this.removed=[];},rejectChanges:function(){var modified=this.modified.slice(0),removed=this.removed.slice(0).reverse(),mLength=modified.length,rLength=removed.length,i;for(i=0;i<mLength;i++){modified[i].reject();} -for(i=0;i<rLength;i++){this.insert(removed[i].lastIndex||0,removed[i]);removed[i].reject();} -this.modified=[];this.removed=[];},onMetaChange:function(meta){this.recordType=this.reader.recordType;this.fields=this.recordType.prototype.fields;delete this.snapshot;if(this.reader.meta.sortInfo){this.sortInfo=this.reader.meta.sortInfo;}else if(this.sortInfo&&!this.fields.get(this.sortInfo.field)){delete this.sortInfo;} -if(this.writer){this.writer.meta=this.reader.meta;} -this.modified=[];this.fireEvent('metachange',this,this.reader.meta);},findInsertIndex:function(record){this.suspendEvents();var data=this.data.clone();this.data.add(record);this.applySort();var index=this.data.indexOf(record);this.data=data;this.resumeEvents();return index;},setBaseParam:function(name,value){this.baseParams=this.baseParams||{};this.baseParams[name]=value;}});Ext.reg('store',Ext.data.Store);Ext.data.Store.Error=Ext.extend(Ext.Error,{name:'Ext.data.Store'});Ext.apply(Ext.data.Store.Error.prototype,{lang:{'writer-undefined':'Attempted to execute a write-action without a DataWriter installed.'}});Ext.data.Field=Ext.extend(Object,{constructor:function(config){if(Ext.isString(config)){config={name:config};} -Ext.apply(this,config);var types=Ext.data.Types,st=this.sortType,t;if(this.type){if(Ext.isString(this.type)){this.type=Ext.data.Types[this.type.toUpperCase()]||types.AUTO;}}else{this.type=types.AUTO;} -if(Ext.isString(st)){this.sortType=Ext.data.SortTypes[st];}else if(Ext.isEmpty(st)){this.sortType=this.type.sortType;} -if(!this.convert){this.convert=this.type.convert;}},dateFormat:null,useNull:false,defaultValue:"",mapping:null,sortType:null,sortDir:"ASC",allowBlank:true});Ext.data.DataReader=function(meta,recordType){this.meta=meta;this.recordType=Ext.isArray(recordType)?Ext.data.Record.create(recordType):recordType;if(this.recordType){this.buildExtractors();}};Ext.data.DataReader.prototype={getTotal:Ext.emptyFn,getRoot:Ext.emptyFn,getMessage:Ext.emptyFn,getSuccess:Ext.emptyFn,getId:Ext.emptyFn,buildExtractors:Ext.emptyFn,extractValues:Ext.emptyFn,realize:function(rs,data){if(Ext.isArray(rs)){for(var i=rs.length-1;i>=0;i--){if(Ext.isArray(data)){this.realize(rs.splice(i,1).shift(),data.splice(i,1).shift());} -else{this.realize(rs.splice(i,1).shift(),data);}}} -else{if(Ext.isArray(data)&&data.length==1){data=data.shift();} -if(!this.isData(data)){throw new Ext.data.DataReader.Error('realize',rs);} -rs.phantom=false;rs._phid=rs.id;rs.id=this.getId(data);rs.data=data;rs.commit();}},update:function(rs,data){if(Ext.isArray(rs)){for(var i=rs.length-1;i>=0;i--){if(Ext.isArray(data)){this.update(rs.splice(i,1).shift(),data.splice(i,1).shift());} -else{this.update(rs.splice(i,1).shift(),data);}}} -else{if(Ext.isArray(data)&&data.length==1){data=data.shift();} -if(this.isData(data)){rs.data=Ext.apply(rs.data,data);} -rs.commit();}},extractData:function(root,returnRecords){var rawName=(this instanceof Ext.data.JsonReader)?'json':'node';var rs=[];if(this.isData(root)&&!(this instanceof Ext.data.XmlReader)){root=[root];} -var f=this.recordType.prototype.fields,fi=f.items,fl=f.length,rs=[];if(returnRecords===true){var Record=this.recordType;for(var i=0;i<root.length;i++){var n=root[i];var record=new Record(this.extractValues(n,fi,fl),this.getId(n));record[rawName]=n;rs.push(record);}} -else{for(var i=0;i<root.length;i++){var data=this.extractValues(root[i],fi,fl);data[this.meta.idProperty]=this.getId(root[i]);rs.push(data);}} -return rs;},isData:function(data){return(data&&Ext.isObject(data)&&!Ext.isEmpty(this.getId(data)))?true:false;},onMetaChange:function(meta){delete this.ef;this.meta=meta;this.recordType=Ext.data.Record.create(meta.fields);this.buildExtractors();}};Ext.data.DataReader.Error=Ext.extend(Ext.Error,{constructor:function(message,arg){this.arg=arg;Ext.Error.call(this,message);},name:'Ext.data.DataReader'});Ext.apply(Ext.data.DataReader.Error.prototype,{lang:{'update':"#update received invalid data from server. Please see docs for DataReader#update and review your DataReader configuration.",'realize':"#realize was called with invalid remote-data. Please see the docs for DataReader#realize and review your DataReader configuration.",'invalid-response':"#readResponse received an invalid response from the server."}});Ext.data.DataWriter=function(config){Ext.apply(this,config);};Ext.data.DataWriter.prototype={writeAllFields:false,listful:false,apply:function(params,baseParams,action,rs){var data=[],renderer=action+'Record';if(Ext.isArray(rs)){Ext.each(rs,function(rec){data.push(this[renderer](rec));},this);} -else if(rs instanceof Ext.data.Record){data=this[renderer](rs);} -this.render(params,baseParams,data);},render:Ext.emptyFn,updateRecord:Ext.emptyFn,createRecord:Ext.emptyFn,destroyRecord:Ext.emptyFn,toHash:function(rec,config){var map=rec.fields.map,data={},raw=(this.writeAllFields===false&&rec.phantom===false)?rec.getChanges():rec.data,m;Ext.iterate(raw,function(prop,value){if((m=map[prop])){data[m.mapping?m.mapping:m.name]=value;}});if(rec.phantom){if(rec.fields.containsKey(this.meta.idProperty)&&Ext.isEmpty(rec.data[this.meta.idProperty])){delete data[this.meta.idProperty];}}else{data[this.meta.idProperty]=rec.id;} -return data;},toArray:function(data){var fields=[];Ext.iterate(data,function(k,v){fields.push({name:k,value:v});},this);return fields;}};Ext.data.DataProxy=function(conn){conn=conn||{};this.api=conn.api;this.url=conn.url;this.restful=conn.restful;this.listeners=conn.listeners;this.prettyUrls=conn.prettyUrls;this.addEvents('exception','beforeload','load','loadexception','beforewrite','write');Ext.data.DataProxy.superclass.constructor.call(this);try{Ext.data.Api.prepare(this);}catch(e){if(e instanceof Ext.data.Api.Error){e.toConsole();}} -Ext.data.DataProxy.relayEvents(this,['beforewrite','write','exception']);};Ext.extend(Ext.data.DataProxy,Ext.util.Observable,{restful:false,setApi:function(){if(arguments.length==1){var valid=Ext.data.Api.isValid(arguments[0]);if(valid===true){this.api=arguments[0];} -else{throw new Ext.data.Api.Error('invalid',valid);}} -else if(arguments.length==2){if(!Ext.data.Api.isAction(arguments[0])){throw new Ext.data.Api.Error('invalid',arguments[0]);} -this.api[arguments[0]]=arguments[1];} -Ext.data.Api.prepare(this);},isApiAction:function(action){return(this.api[action])?true:false;},request:function(action,rs,params,reader,callback,scope,options){if(!this.api[action]&&!this.load){throw new Ext.data.DataProxy.Error('action-undefined',action);} -params=params||{};if((action===Ext.data.Api.actions.read)?this.fireEvent("beforeload",this,params):this.fireEvent("beforewrite",this,action,rs,params)!==false){this.doRequest.apply(this,arguments);} -else{callback.call(scope||this,null,options,false);}},load:null,doRequest:function(action,rs,params,reader,callback,scope,options){this.load(params,reader,callback,scope,options);},onRead:Ext.emptyFn,onWrite:Ext.emptyFn,buildUrl:function(action,record){record=record||null;var url=(this.conn&&this.conn.url)?this.conn.url:(this.api[action])?this.api[action].url:this.url;if(!url){throw new Ext.data.Api.Error('invalid-url',action);} -var provides=null;var m=url.match(/(.*)(\.json|\.xml|\.html)$/);if(m){provides=m[2];url=m[1];} -if((this.restful===true||this.prettyUrls===true)&&record instanceof Ext.data.Record&&!record.phantom){url+='/'+record.id;} -return(provides===null)?url:url+provides;},destroy:function(){this.purgeListeners();}});Ext.apply(Ext.data.DataProxy,Ext.util.Observable.prototype);Ext.util.Observable.call(Ext.data.DataProxy);Ext.data.DataProxy.Error=Ext.extend(Ext.Error,{constructor:function(message,arg){this.arg=arg;Ext.Error.call(this,message);},name:'Ext.data.DataProxy'});Ext.apply(Ext.data.DataProxy.Error.prototype,{lang:{'action-undefined':"DataProxy attempted to execute an API-action but found an undefined url / function. Please review your Proxy url/api-configuration.",'api-invalid':'Recieved an invalid API-configuration. Please ensure your proxy API-configuration contains only the actions from Ext.data.Api.actions.'}});Ext.data.Request=function(params){Ext.apply(this,params);};Ext.data.Request.prototype={action:undefined,rs:undefined,params:undefined,callback:Ext.emptyFn,scope:undefined,reader:undefined};Ext.data.Response=function(params){Ext.apply(this,params);};Ext.data.Response.prototype={action:undefined,success:undefined,message:undefined,data:undefined,raw:undefined,records:undefined};Ext.data.ScriptTagProxy=function(config){Ext.apply(this,config);Ext.data.ScriptTagProxy.superclass.constructor.call(this,config);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(action,rs,params,reader,callback,scope,arg){var p=Ext.urlEncode(Ext.apply(params,this.extraParams));var url=this.buildUrl(action,rs);if(!url){throw new Ext.data.Api.Error('invalid-url',url);} -url=Ext.urlAppend(url,p);if(this.nocache){url=Ext.urlAppend(url,'_dc='+(new Date().getTime()));} -var transId=++Ext.data.ScriptTagProxy.TRANS_ID;var trans={id:transId,action:action,cb:"stcCallback"+transId,scriptId:"stcScript"+transId,params:params,arg:arg,url:url,callback:callback,scope:scope,reader:reader};window[trans.cb]=this.createCallback(action,rs,trans);url+=String.format("&{0}={1}",this.callbackParam,trans.cb);if(this.autoAbort!==false){this.abort();} -trans.timeoutId=this.handleFailure.defer(this.timeout,this,[trans]);var script=document.createElement("script");script.setAttribute("src",url);script.setAttribute("type","text/javascript");script.setAttribute("id",trans.scriptId);this.head.appendChild(script);this.trans=trans;},createCallback:function(action,rs,trans){var self=this;return function(res){self.trans=false;self.destroyTrans(trans,true);if(action===Ext.data.Api.actions.read){self.onRead.call(self,action,trans,res);}else{self.onWrite.call(self,action,trans,res,rs);}};},onRead:function(action,trans,res){var result;try{result=trans.reader.readRecords(res);}catch(e){this.fireEvent("loadexception",this,trans,res,e);this.fireEvent('exception',this,'response',action,trans,res,e);trans.callback.call(trans.scope||window,null,trans.arg,false);return;} -if(result.success===false){this.fireEvent('loadexception',this,trans,res);this.fireEvent('exception',this,'remote',action,trans,res,null);}else{this.fireEvent("load",this,res,trans.arg);} -trans.callback.call(trans.scope||window,result,trans.arg,result.success);},onWrite:function(action,trans,response,rs){var reader=trans.reader;try{var res=reader.readResponse(action,response);}catch(e){this.fireEvent('exception',this,'response',action,trans,res,e);trans.callback.call(trans.scope||window,null,res,false);return;} -if(!res.success===true){this.fireEvent('exception',this,'remote',action,trans,res,rs);trans.callback.call(trans.scope||window,null,res,false);return;} -this.fireEvent("write",this,action,res.data,res,rs,trans.arg);trans.callback.call(trans.scope||window,res.data,res,true);},isLoading:function(){return this.trans?true:false;},abort:function(){if(this.isLoading()){this.destroyTrans(this.trans);}},destroyTrans:function(trans,isLoaded){this.head.removeChild(document.getElementById(trans.scriptId));clearTimeout(trans.timeoutId);if(isLoaded){window[trans.cb]=undefined;try{delete window[trans.cb];}catch(e){}}else{window[trans.cb]=function(){window[trans.cb]=undefined;try{delete window[trans.cb];}catch(e){}};}},handleFailure:function(trans){this.trans=false;this.destroyTrans(trans,false);if(trans.action===Ext.data.Api.actions.read){this.fireEvent("loadexception",this,null,trans.arg);} -this.fireEvent('exception',this,'response',trans.action,{response:null,options:trans.arg});trans.callback.call(trans.scope||window,null,trans.arg,false);},destroy:function(){this.abort();Ext.data.ScriptTagProxy.superclass.destroy.call(this);}});Ext.data.HttpProxy=function(conn){Ext.data.HttpProxy.superclass.constructor.call(this,conn);this.conn=conn;this.conn.url=null;this.useAjax=!conn||!conn.events;var actions=Ext.data.Api.actions;this.activeRequest={};for(var verb in actions){this.activeRequest[actions[verb]]=undefined;}};Ext.extend(Ext.data.HttpProxy,Ext.data.DataProxy,{getConnection:function(){return this.useAjax?Ext.Ajax:this.conn;},setUrl:function(url,makePermanent){this.conn.url=url;if(makePermanent===true){this.url=url;this.api=null;Ext.data.Api.prepare(this);}},doRequest:function(action,rs,params,reader,cb,scope,arg){var o={method:(this.api[action])?this.api[action]['method']:undefined,request:{callback:cb,scope:scope,arg:arg},reader:reader,callback:this.createCallback(action,rs),scope:this};if(params.jsonData){o.jsonData=params.jsonData;}else if(params.xmlData){o.xmlData=params.xmlData;}else{o.params=params||{};} -this.conn.url=this.buildUrl(action,rs);if(this.useAjax){Ext.applyIf(o,this.conn);if(this.activeRequest[action]){} -this.activeRequest[action]=Ext.Ajax.request(o);}else{this.conn.request(o);} -this.conn.url=null;},createCallback:function(action,rs){return function(o,success,response){this.activeRequest[action]=undefined;if(!success){if(action===Ext.data.Api.actions.read){this.fireEvent('loadexception',this,o,response);} -this.fireEvent('exception',this,'response',action,o,response);o.request.callback.call(o.request.scope,null,o.request.arg,false);return;} -if(action===Ext.data.Api.actions.read){this.onRead(action,o,response);}else{this.onWrite(action,o,response,rs);}};},onRead:function(action,o,response){var result;try{result=o.reader.read(response);}catch(e){this.fireEvent('loadexception',this,o,response,e);this.fireEvent('exception',this,'response',action,o,response,e);o.request.callback.call(o.request.scope,null,o.request.arg,false);return;} -if(result.success===false){this.fireEvent('loadexception',this,o,response);var res=o.reader.readResponse(action,response);this.fireEvent('exception',this,'remote',action,o,res,null);} -else{this.fireEvent('load',this,o,o.request.arg);} -o.request.callback.call(o.request.scope,result,o.request.arg,result.success);},onWrite:function(action,o,response,rs){var reader=o.reader;var res;try{res=reader.readResponse(action,response);}catch(e){this.fireEvent('exception',this,'response',action,o,response,e);o.request.callback.call(o.request.scope,null,o.request.arg,false);return;} -if(res.success===true){this.fireEvent('write',this,action,res.data,res,rs,o.request.arg);}else{this.fireEvent('exception',this,'remote',action,o,res,rs);} -o.request.callback.call(o.request.scope,res.data,res,res.success);},destroy:function(){if(!this.useAjax){this.conn.abort();}else if(this.activeRequest){var actions=Ext.data.Api.actions;for(var verb in actions){if(this.activeRequest[actions[verb]]){Ext.Ajax.abort(this.activeRequest[actions[verb]]);}}} -Ext.data.HttpProxy.superclass.destroy.call(this);}});Ext.data.MemoryProxy=function(data){var api={};api[Ext.data.Api.actions.read]=true;Ext.data.MemoryProxy.superclass.constructor.call(this,{api:api});this.data=data;};Ext.extend(Ext.data.MemoryProxy,Ext.data.DataProxy,{doRequest:function(action,rs,params,reader,callback,scope,arg){params=params||{};var result;try{result=reader.readRecords(this.data);}catch(e){this.fireEvent("loadexception",this,null,arg,e);this.fireEvent('exception',this,'response',action,arg,null,e);callback.call(scope,null,arg,false);return;} -callback.call(scope,result,arg,true);}});Ext.data.Types=new function(){var st=Ext.data.SortTypes;Ext.apply(this,{stripRe:/[\$,%]/g,AUTO:{convert:function(v){return v;},sortType:st.none,type:'auto'},STRING:{convert:function(v){return(v===undefined||v===null)?'':String(v);},sortType:st.asUCString,type:'string'},INT:{convert:function(v){return v!==undefined&&v!==null&&v!==''?parseInt(String(v).replace(Ext.data.Types.stripRe,''),10):(this.useNull?null:0);},sortType:st.none,type:'int'},FLOAT:{convert:function(v){return v!==undefined&&v!==null&&v!==''?parseFloat(String(v).replace(Ext.data.Types.stripRe,''),10):(this.useNull?null:0);},sortType:st.none,type:'float'},BOOL:{convert:function(v){return v===true||v==='true'||v==1;},sortType:st.none,type:'bool'},DATE:{convert:function(v){var df=this.dateFormat;if(!v){return null;} -if(Ext.isDate(v)){return v;} -if(df){if(df=='timestamp'){return new Date(v*1000);} -if(df=='time'){return new Date(parseInt(v,10));} -return Date.parseDate(v,df);} -var parsed=Date.parse(v);return parsed?new Date(parsed):null;},sortType:st.asDate,type:'date'}});Ext.apply(this,{BOOLEAN:this.BOOL,INTEGER:this.INT,NUMBER:this.FLOAT});};Ext.data.JsonWriter=Ext.extend(Ext.data.DataWriter,{encode:true,encodeDelete:false,constructor:function(config){Ext.data.JsonWriter.superclass.constructor.call(this,config);},render:function(params,baseParams,data){if(this.encode===true){Ext.apply(params,baseParams);params[this.meta.root]=Ext.encode(data);}else{var jdata=Ext.apply({},baseParams);jdata[this.meta.root]=data;params.jsonData=jdata;}},createRecord:function(rec){return this.toHash(rec);},updateRecord:function(rec){return this.toHash(rec);},destroyRecord:function(rec){if(this.encodeDelete){var data={};data[this.meta.idProperty]=rec.id;return data;}else{return rec.id;}}});Ext.data.JsonReader=function(meta,recordType){meta=meta||{};Ext.applyIf(meta,{idProperty:'id',successProperty:'success',totalProperty:'total'});Ext.data.JsonReader.superclass.constructor.call(this,meta,recordType||meta.fields);};Ext.extend(Ext.data.JsonReader,Ext.data.DataReader,{read:function(response){var json=response.responseText;var o=Ext.decode(json);if(!o){throw{message:'JsonReader.read: Json object not found'};} -return this.readRecords(o);},readResponse:function(action,response){var o=(response.responseText!==undefined)?Ext.decode(response.responseText):response;if(!o){throw new Ext.data.JsonReader.Error('response');} -var root=this.getRoot(o);if(action===Ext.data.Api.actions.create){var def=Ext.isDefined(root);if(def&&Ext.isEmpty(root)){throw new Ext.data.JsonReader.Error('root-empty',this.meta.root);} -else if(!def){throw new Ext.data.JsonReader.Error('root-undefined-response',this.meta.root);}} -var res=new Ext.data.Response({action:action,success:this.getSuccess(o),data:(root)?this.extractData(root,false):[],message:this.getMessage(o),raw:o});if(Ext.isEmpty(res.success)){throw new Ext.data.JsonReader.Error('successProperty-response',this.meta.successProperty);} -return res;},readRecords:function(o){this.jsonData=o;if(o.metaData){this.onMetaChange(o.metaData);} -var s=this.meta,Record=this.recordType,f=Record.prototype.fields,fi=f.items,fl=f.length,v;var root=this.getRoot(o),c=root.length,totalRecords=c,success=true;if(s.totalProperty){v=parseInt(this.getTotal(o),10);if(!isNaN(v)){totalRecords=v;}} -if(s.successProperty){v=this.getSuccess(o);if(v===false||v==='false'){success=false;}} -return{success:success,records:this.extractData(root,true),totalRecords:totalRecords};},buildExtractors:function(){if(this.ef){return;} -var s=this.meta,Record=this.recordType,f=Record.prototype.fields,fi=f.items,fl=f.length;if(s.totalProperty){this.getTotal=this.createAccessor(s.totalProperty);} -if(s.successProperty){this.getSuccess=this.createAccessor(s.successProperty);} -if(s.messageProperty){this.getMessage=this.createAccessor(s.messageProperty);} -this.getRoot=s.root?this.createAccessor(s.root):function(p){return p;};if(s.id||s.idProperty){var g=this.createAccessor(s.id||s.idProperty);this.getId=function(rec){var r=g(rec);return(r===undefined||r==='')?null:r;};}else{this.getId=function(){return null;};} -var ef=[];for(var i=0;i<fl;i++){f=fi[i];var map=(f.mapping!==undefined&&f.mapping!==null)?f.mapping:f.name;ef.push(this.createAccessor(map));} -this.ef=ef;},simpleAccess:function(obj,subsc){return obj[subsc];},createAccessor:function(){var re=/[\[\.]/;return function(expr){if(Ext.isEmpty(expr)){return Ext.emptyFn;} -if(Ext.isFunction(expr)){return expr;} -var i=String(expr).search(re);if(i>=0){return new Function('obj','return obj'+(i>0?'.':'')+expr);} -return function(obj){return obj[expr];};};}(),extractValues:function(data,items,len){var f,values={};for(var j=0;j<len;j++){f=items[j];var v=this.ef[j](data);values[f.name]=f.convert((v!==undefined)?v:f.defaultValue,data);} -return values;}});Ext.data.JsonReader.Error=Ext.extend(Ext.Error,{constructor:function(message,arg){this.arg=arg;Ext.Error.call(this,message);},name:'Ext.data.JsonReader'});Ext.apply(Ext.data.JsonReader.Error.prototype,{lang:{'response':'An error occurred while json-decoding your server response','successProperty-response':'Could not locate your "successProperty" in your server response. Please review your JsonReader config to ensure the config-property "successProperty" matches the property in your server-response. See the JsonReader docs.','root-undefined-config':'Your JsonReader was configured without a "root" property. Please review your JsonReader config and make sure to define the root property. See the JsonReader docs.','idProperty-undefined':'Your JsonReader was configured without an "idProperty" Please review your JsonReader configuration and ensure the "idProperty" is set (e.g.: "id"). See the JsonReader docs.','root-empty':'Data was expected to be returned by the server in the "root" property of the response. Please review your JsonReader configuration to ensure the "root" property matches that returned in the server-response. See JsonReader docs.'}});Ext.data.ArrayReader=Ext.extend(Ext.data.JsonReader,{readRecords:function(o){this.arrayData=o;var s=this.meta,sid=s?Ext.num(s.idIndex,s.id):null,recordType=this.recordType,fields=recordType.prototype.fields,records=[],success=true,v;var root=this.getRoot(o);for(var i=0,len=root.length;i<len;i++){var n=root[i],values={},id=((sid||sid===0)&&n[sid]!==undefined&&n[sid]!==""?n[sid]:null);for(var j=0,jlen=fields.length;j<jlen;j++){var f=fields.items[j],k=f.mapping!==undefined&&f.mapping!==null?f.mapping:j;v=n[k]!==undefined?n[k]:f.defaultValue;v=f.convert(v,n);values[f.name]=v;} -var record=new recordType(values,id);record.json=n;records[records.length]=record;} -var totalRecords=records.length;if(s.totalProperty){v=parseInt(this.getTotal(o),10);if(!isNaN(v)){totalRecords=v;}} -if(s.successProperty){v=this.getSuccess(o);if(v===false||v==='false'){success=false;}} -return{success:success,records:records,totalRecords:totalRecords};}});Ext.data.ArrayStore=Ext.extend(Ext.data.Store,{constructor:function(config){Ext.data.ArrayStore.superclass.constructor.call(this,Ext.apply(config,{reader:new Ext.data.ArrayReader(config)}));},loadData:function(data,append){if(this.expandData===true){var r=[];for(var i=0,len=data.length;i<len;i++){r[r.length]=[data[i]];} -data=r;} -Ext.data.ArrayStore.superclass.loadData.call(this,data,append);}});Ext.reg('arraystore',Ext.data.ArrayStore);Ext.data.SimpleStore=Ext.data.ArrayStore;Ext.reg('simplestore',Ext.data.SimpleStore);Ext.data.JsonStore=Ext.extend(Ext.data.Store,{constructor:function(config){Ext.data.JsonStore.superclass.constructor.call(this,Ext.apply(config,{reader:new Ext.data.JsonReader(config)}));}});Ext.reg('jsonstore',Ext.data.JsonStore);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,submitValue:true,isFormField:true,msgDisplay:'',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.name||this.id||'';},onRender:function(ct,position){if(!this.el){var cfg=this.getAutoCreate();if(!cfg.name){cfg.name=this.name||this.id;} -if(this.inputType){cfg.type=this.inputType;} -this.autoEl=cfg;} -Ext.form.Field.superclass.onRender.call(this,ct,position);if(this.submitValue===false){this.el.dom.removeAttribute('name');} -var type=this.el.dom.type;if(type){if(type=='password'){type='text';} -this.el.addClass('x-form-'+type);} -if(this.readOnly){this.setReadOnly(true);} -if(this.tabIndex!==undefined){this.el.dom.setAttribute('tabIndex',this.tabIndex);} -this.el.addClass([this.fieldClass,this.cls]);},getItemCt:function(){return this.itemCt;},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||!this.rendered){return false;} -return String(this.getValue())!==String(this.originalValue);},setReadOnly:function(readOnly){if(this.rendered){this.el.dom.readOnly=readOnly;} -this.readOnly=readOnly;},afterRender:function(){Ext.form.Field.superclass.afterRender.call(this);this.initEvents();this.initValue();},fireKey:function(e){if(e.isSpecialKey()){this.fireEvent('specialkey',this,e);}},reset:function(){this.setValue(this.originalValue);this.clearInvalid();},initEvents:function(){this.mon(this.el,Ext.EventManager.getKeyEvent(),this.fireKey,this);this.mon(this.el,'focus',this.onFocus,this);this.mon(this.el,'blur',this.onBlur,this,this.inEditor?{buffer:10}:null);},preFocus:Ext.emptyFn,onFocus:function(){this.preFocus();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 v=this.getValue();if(String(v)!==String(this.startValue)){this.fireEvent('change',this,v,this.startValue);} -this.fireEvent('blur',this);this.postBlur();},postBlur:Ext.emptyFn,isValid:function(preventMark){if(this.disabled){return true;} -var restore=this.preventMark;this.preventMark=preventMark===true;var v=this.validateValue(this.processValue(this.getRawValue()));this.preventMark=restore;return v;},validate:function(){if(this.disabled||this.validateValue(this.processValue(this.getRawValue()))){this.clearInvalid();return true;} -return false;},processValue:function(value){return value;},validateValue:function(value){var error=this.getErrors(value)[0];if(error==undefined){return true;}else{this.markInvalid(error);return false;}},getErrors:function(){return[];},getActiveError:function(){return this.activeError||'';},markInvalid:function(msg){if(this.rendered&&!this.preventMark){msg=msg||this.invalidText;var mt=this.getMessageHandler();if(mt){mt.mark(this,msg);}else if(this.msgTarget){this.el.addClass(this.invalidClass);var t=Ext.getDom(this.msgTarget);if(t){t.innerHTML=msg;t.style.display=this.msgDisplay;}}} -this.setActiveError(msg);},clearInvalid:function(){if(this.rendered&&!this.preventMark){this.el.removeClass(this.invalidClass);var mt=this.getMessageHandler();if(mt){mt.clear(this);}else if(this.msgTarget){this.el.removeClass(this.invalidClass);var t=Ext.getDom(this.msgTarget);if(t){t.innerHTML='';t.style.display='none';}}} -this.unsetActiveError();},setActiveError:function(msg,suppressEvent){this.activeError=msg;if(suppressEvent!==true)this.fireEvent('invalid',this,msg);},unsetActiveError:function(suppressEvent){delete this.activeError;if(suppressEvent!==true)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);},alignErrorEl:function(){this.errorEl.setWidth(this.getErrorCt().getWidth(true)-20);},alignErrorIcon:function(){this.errorIcon.alignTo(this.el,'tl-tr',[2,0]);},getRawValue:function(){var v=this.rendered?this.el.getValue():Ext.value(this.value,'');if(v===this.emptyText){v='';} -return v;},getValue:function(){if(!this.rendered){return this.value;} -var v=this.el.getValue();if(v===this.emptyText||v===undefined){v='';} -return v;},setRawValue:function(v){return this.rendered?(this.el.dom.value=(Ext.isEmpty(v)?'':v)):'';},setValue:function(v){this.value=v;if(this.rendered){this.el.dom.value=(Ext.isEmpty(v)?'':v);this.validate();} -return this;},append:function(v){this.setValue([this.getValue(),v].join(''));}});Ext.form.MessageTargets={'qtip':{mark:function(field,msg){field.el.addClass(field.invalidClass);field.el.dom.qtip=msg;field.el.dom.qclass='x-form-invalid-tip';if(Ext.QuickTips){Ext.QuickTips.enable();}},clear:function(field){field.el.removeClass(field.invalidClass);field.el.dom.qtip='';}},'title':{mark:function(field,msg){field.el.addClass(field.invalidClass);field.el.dom.title=msg;},clear:function(field){field.el.dom.title='';}},'under':{mark:function(field,msg){field.el.addClass(field.invalidClass);if(!field.errorEl){var elp=field.getErrorCt();if(!elp){field.el.dom.title=msg;return;} -field.errorEl=elp.createChild({cls:'x-form-invalid-msg'});field.on('resize',field.alignErrorEl,field);field.on('destroy',function(){Ext.destroy(this.errorEl);},field);} -field.alignErrorEl();field.errorEl.update(msg);Ext.form.Field.msgFx[field.msgFx].show(field.errorEl,field);},clear:function(field){field.el.removeClass(field.invalidClass);if(field.errorEl){Ext.form.Field.msgFx[field.msgFx].hide(field.errorEl,field);}else{field.el.dom.title='';}}},'side':{mark:function(field,msg){field.el.addClass(field.invalidClass);if(!field.errorIcon){var elp=field.getErrorCt();if(!elp){field.el.dom.title=msg;return;} -field.errorIcon=elp.createChild({cls:'x-form-invalid-icon'});if(field.ownerCt){field.ownerCt.on('afterlayout',field.alignErrorIcon,field);field.ownerCt.on('expand',field.alignErrorIcon,field);} -field.on('resize',field.alignErrorIcon,field);field.on('destroy',function(){Ext.destroy(this.errorIcon);},field);} -field.alignErrorIcon();field.errorIcon.dom.qtip=msg;field.errorIcon.dom.qclass='x-form-invalid-tip';field.errorIcon.show();},clear:function(field){field.el.removeClass(field.invalidClass);if(field.errorIcon){field.errorIcon.dom.qtip='';field.errorIcon.hide();}else{field.el.dom.title='';}}}};Ext.form.Field.msgFx={normal:{show:function(msgEl,f){msgEl.setDisplayed('block');},hide:function(msgEl,f){msgEl.setDisplayed(false).update('');}},slide:{show:function(msgEl,f){msgEl.slideIn('t',{stopFx:true});},hide:function(msgEl,f){msgEl.slideOut('t',{stopFx:true,useDisplay:true});}},slideRight:{show:function(msgEl,f){msgEl.fixDisplay();msgEl.alignTo(f.el,'tl-tr');msgEl.slideIn('l',{stopFx:true});},hide:function(msgEl,f){msgEl.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.validationEvent!='blur'){this.mon(this.el,this.validationEvent,this.validate,this,{buffer:this.validationDelay});} -if(this.selectOnFocus||this.emptyText){this.mon(this.el,'mousedown',this.onMouseDown,this);if(this.emptyText){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,{scope:this,keyup:this.onKeyUp,keydown:this.onKeyDown,keypress:this.onKeyPress});}},onMouseDown:function(e){if(!this.hasFocus){this.mon(this.el,'mouseup',Ext.emptyFn,this,{single:true,preventDefault:true});}},processValue:function(value){if(this.stripCharsRe){var newValue=value.replace(this.stripCharsRe,'');if(newValue!==value){this.setRawValue(newValue);return newValue;}} -return value;},filterValidation:function(e){if(!e.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(e){if(this.doAutoSize(e)){this.autoSize();}},doAutoSize:function(e){return!e.isNavKeyPress();},onKeyUp:function(e){this.fireEvent('keyup',this,e);},onKeyDown:function(e){this.fireEvent('keydown',this,e);},onKeyPress:function(e){this.fireEvent('keypress',this,e);},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(){var el=this.el,isEmpty;if(this.emptyText){if(el.dom.value==this.emptyText){this.setRawValue('');isEmpty=true;} -el.removeClass(this.emptyClass);} -if(this.selectOnFocus||isEmpty){el.dom.select();}},postBlur:function(){this.applyEmptyText();},filterKeys:function(e){if(e.ctrlKey){return;} -var k=e.getKey();if(Ext.isGecko&&(e.isNavKeyPress()||k==e.BACKSPACE||(k==e.DELETE&&e.button==-1))){return;} -var cc=String.fromCharCode(e.getCharCode());if(!Ext.isGecko&&e.isSpecialKey()&&!cc){return;} -if(!this.maskRe.test(cc)){e.stopEvent();}},setValue:function(v){if(this.emptyText&&this.el&&!Ext.isEmpty(v)){this.el.removeClass(this.emptyClass);} -Ext.form.TextField.superclass.setValue.apply(this,arguments);this.applyEmptyText();this.autoSize();return this;},getErrors:function(value){var errors=Ext.form.TextField.superclass.getErrors.apply(this,arguments);value=Ext.isDefined(value)?value:this.processValue(this.getRawValue());if(Ext.isFunction(this.validator)){var msg=this.validator(value);if(msg!==true){errors.push(msg);}} -if(value.length<1||value===this.emptyText){if(this.allowBlank){return errors;}else{errors.push(this.blankText);}} -if(!this.allowBlank&&(value.length<1||value===this.emptyText)){errors.push(this.blankText);} -if(value.length<this.minLength){errors.push(String.format(this.minLengthText,this.minLength));} -if(value.length>this.maxLength){errors.push(String.format(this.maxLengthText,this.maxLength));} -if(this.vtype){var vt=Ext.form.VTypes;if(!vt[this.vtype](value,this)){errors.push(this.vtypeText||vt[this.vtype+'Text']);}} -if(this.regex&&!this.regex.test(value)){errors.push(this.regexText);} -return errors;},selectText:function(start,end){var v=this.getRawValue();var doFocus=false;if(v.length>0){start=start===undefined?0:start;end=end===undefined?v.length:end;var d=this.el.dom;if(d.setSelectionRange){d.setSelectionRange(start,end);}else if(d.createTextRange){var range=d.createTextRange();range.moveStart('character',start);range.moveEnd('character',end-v.length);range.select();} -doFocus=Ext.isGecko||Ext.isOpera;}else{doFocus=true;} -if(doFocus){this.focus();}},autoSize:function(){if(!this.grow||!this.rendered){return;} -if(!this.metrics){this.metrics=Ext.util.TextMetrics.createInstance(this.el);} -var el=this.el;var v=el.dom.value;var d=document.createElement('div');d.appendChild(document.createTextNode(v));v=d.innerHTML;Ext.removeNode(d);d=null;v+=' ';var w=Math.min(this.growMax,Math.max(this.metrics.getWidth(v)+10,this.growMin));this.el.setWidth(w);this.fireEvent('autosize',this,w);},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,readOnly:false,wrapFocusClass:'x-trigger-wrap-focus',autoSize:Ext.emptyFn,monitorTab:true,deferHeight:true,mimicing:false,actionMode:'wrap',defaultTriggerWidth:17,onResize:function(w,h){Ext.form.TriggerField.superclass.onResize.call(this,w,h);var tw=this.getTriggerWidth();if(Ext.isNumber(w)){this.el.setWidth(w-tw);} -this.wrap.setWidth(this.el.getWidth()+tw);},getTriggerWidth:function(){var tw=this.trigger.getWidth();if(!this.hideTrigger&&!this.readOnly&&tw===0){tw=this.defaultTriggerWidth;} -return tw;},alignErrorIcon:function(){if(this.wrap){this.errorIcon.alignTo(this.wrap,'tl-tr',[2,0]);}},onRender:function(ct,position){this.doc=Ext.isIE?Ext.getBody():Ext.getDoc();Ext.form.TriggerField.superclass.onRender.call(this,ct,position);this.wrap=this.el.wrap({cls:'x-form-field-wrap x-form-field-trigger-wrap'});this.trigger=this.wrap.createChild(this.triggerConfig||{tag:"img",src:Ext.BLANK_IMAGE_URL,alt:"",cls:"x-form-trigger "+this.triggerClass});this.initTrigger();if(!this.width){this.wrap.setWidth(this.el.getWidth()+this.trigger.getWidth());} -this.resizeEl=this.positionEl=this.wrap;},getWidth:function(){return(this.el.getWidth()+this.trigger.getWidth());},updateEditState:function(){if(this.rendered){if(this.readOnly){this.el.dom.readOnly=true;this.el.addClass('x-trigger-noedit');this.mun(this.el,'click',this.onTriggerClick,this);this.trigger.setDisplayed(false);}else{if(!this.editable){this.el.dom.readOnly=true;this.el.addClass('x-trigger-noedit');this.mon(this.el,'click',this.onTriggerClick,this);}else{this.el.dom.readOnly=false;this.el.removeClass('x-trigger-noedit');this.mun(this.el,'click',this.onTriggerClick,this);} -this.trigger.setDisplayed(!this.hideTrigger);} -this.onResize(this.width||this.wrap.getWidth());}},setHideTrigger:function(hideTrigger){if(hideTrigger!=this.hideTrigger){this.hideTrigger=hideTrigger;this.updateEditState();}},setEditable:function(editable){if(editable!=this.editable){this.editable=editable;this.updateEditState();}},setReadOnly:function(readOnly){if(readOnly!=this.readOnly){this.readOnly=readOnly;this.updateEditState();}},afterRender:function(){Ext.form.TriggerField.superclass.afterRender.call(this);this.updateEditState();},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){this.doc.un('mousedown',this.mimicBlur,this);} -delete this.doc;Ext.form.TriggerField.superclass.onDestroy.call(this);},onFocus:function(){Ext.form.TriggerField.superclass.onFocus.call(this);if(!this.mimicing){this.wrap.addClass(this.wrapFocusClass);this.mimicing=true;this.doc.on('mousedown',this.mimicBlur,this,{delay:10});if(this.monitorTab){this.on('specialkey',this.checkTab,this);}}},checkTab:function(me,e){if(e.getKey()==e.TAB){this.triggerBlur();}},onBlur:Ext.emptyFn,mimicBlur:function(e){if(!this.isDestroyed&&!this.wrap.contains(e.target)&&this.validateBlur(e)){this.triggerBlur();}},triggerBlur:function(){this.mimicing=false;this.doc.un('mousedown',this.mimicBlur,this);if(this.monitorTab&&this.el){this.un('specialkey',this.checkTab,this);} -Ext.form.TriggerField.superclass.onBlur.call(this);if(this.wrap){this.wrap.removeClass(this.wrapFocusClass);}},beforeBlur:Ext.emptyFn,validateBlur:function(e){return true;},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,alt:"",cls:"x-form-trigger "+this.trigger1Class},{tag:"img",src:Ext.BLANK_IMAGE_URL,alt:"",cls:"x-form-trigger "+this.trigger2Class}]};},getTrigger:function(index){return this.triggers[index];},afterRender:function(){Ext.form.TwinTriggerField.superclass.afterRender.call(this);var triggers=this.triggers,i=0,len=triggers.length;for(;i<len;++i){if(this['hideTrigger'+(i+1)]){triggers[i].hide();}}},initTrigger:function(){var ts=this.trigger.select('.x-form-trigger',true),triggerField=this;ts.each(function(t,all,index){var triggerIndex='Trigger'+(index+1);t.hide=function(){var w=triggerField.wrap.getWidth();this.dom.style.display='none';triggerField.el.setWidth(w-triggerField.trigger.getWidth());triggerField['hidden'+triggerIndex]=true;};t.show=function(){var w=triggerField.wrap.getWidth();this.dom.style.display='';triggerField.el.setWidth(w-triggerField.trigger.getWidth());triggerField['hidden'+triggerIndex]=false;};this.mon(t,'click',this['on'+triggerIndex+'Click'],this,{preventDefault:true});t.addClassOnOver('x-form-trigger-over');t.addClassOnClick('x-form-trigger-click');},this);this.triggers=ts.elements;},getTriggerWidth:function(){var tw=0;Ext.each(this.triggers,function(t,index){var triggerIndex='Trigger'+(index+1),w=t.getWidth();if(w===0&&!this['hidden'+triggerIndex]){tw+=this.defaultTriggerWidth;}else{tw+=w;}},this);return tw;},onDestroy:function(){Ext.destroy(this.triggers);Ext.form.TwinTriggerField.superclass.onDestroy.call(this);},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:' \n ',enterIsSpecial:false,preventScrollbars:false,onRender:function(ct,position){if(!this.el){this.defaultAutoCreate={tag:"textarea",style:"width:100px;height:60px;",autocomplete:"off"};} -Ext.form.TextArea.superclass.onRender.call(this,ct,position);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.removeNode(this.textSizeEl);Ext.form.TextArea.superclass.onDestroy.call(this);},fireKey:function(e){if(e.isSpecialKey()&&(this.enterIsSpecial||(e.getKey()!=e.ENTER||e.hasModifier()))){this.fireEvent("specialkey",this,e);}},doAutoSize:function(e){return!e.isNavKeyPress()||e.getKey()==e.ENTER;},filterValidation:function(e){if(!e.isNavKeyPress()||(!this.enterIsSpecial&&e.keyCode==e.ENTER)){this.validationTask.delay(this.validationDelay);}},autoSize:function(){if(!this.grow||!this.textSizeEl){return;} -var el=this.el,v=Ext.util.Format.htmlEncode(el.dom.value),ts=this.textSizeEl,h;Ext.fly(ts).setWidth(this.el.getWidth());if(v.length<1){v="  ";}else{v+=this.growAppend;if(Ext.isIE){v=v.replace(/\n/g,' <br />');}} -ts.innerHTML=v;h=Math.min(this.growMax,Math.max(ts.offsetHeight,this.growMin));if(h!=this.lastHeight){this.lastHeight=h;this.el.setHeight(h);this.fireEvent("autosize",this,h);}}});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",autoStripChars:false,initEvents:function(){var allowed=this.baseChars+'';if(this.allowDecimals){allowed+=this.decimalSeparator;} -if(this.allowNegative){allowed+='-';} -allowed=Ext.escapeRe(allowed);this.maskRe=new RegExp('['+allowed+']');if(this.autoStripChars){this.stripCharsRe=new RegExp('[^'+allowed+']','gi');} -Ext.form.NumberField.superclass.initEvents.call(this);},getErrors:function(value){var errors=Ext.form.NumberField.superclass.getErrors.apply(this,arguments);value=Ext.isDefined(value)?value:this.processValue(this.getRawValue());if(value.length<1){return errors;} -value=String(value).replace(this.decimalSeparator,".");if(isNaN(value)){errors.push(String.format(this.nanText,value));} -var num=this.parseValue(value);if(num<this.minValue){errors.push(String.format(this.minText,this.minValue));} -if(num>this.maxValue){errors.push(String.format(this.maxText,this.maxValue));} -return errors;},getValue:function(){return this.fixPrecision(this.parseValue(Ext.form.NumberField.superclass.getValue.call(this)));},setValue:function(v){v=this.fixPrecision(v);v=Ext.isNumber(v)?v:parseFloat(String(v).replace(this.decimalSeparator,"."));v=isNaN(v)?'':String(v).replace(".",this.decimalSeparator);return Ext.form.NumberField.superclass.setValue.call(this,v);},setMinValue:function(value){this.minValue=Ext.num(value,Number.NEGATIVE_INFINITY);},setMaxValue:function(value){this.maxValue=Ext.num(value,Number.MAX_VALUE);},parseValue:function(value){value=parseFloat(String(value).replace(this.decimalSeparator,"."));return isNaN(value)?'':value;},fixPrecision:function(value){var nan=isNaN(value);if(!this.allowDecimals||this.decimalPrecision==-1||nan||!value){return nan?'':value;} -return parseFloat(parseFloat(value).toFixed(this.decimalPrecision));},beforeBlur:function(){var v=this.parseValue(this.getRawValue());if(!Ext.isEmpty(v)){this.setValue(v);}}});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|n-j|n/j",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,startDay:0,defaultAutoCreate:{tag:"input",type:"text",size:"10",autocomplete:"off"},initTime:'12',initTimeFormat:'H',safeParse:function(value,format){if(/[gGhH]/.test(format.replace(/(\\.)/g,''))){return Date.parseDate(value,format);}else{var parsedDate=Date.parseDate(value+' '+this.initTime,format+' '+this.initTimeFormat);if(parsedDate){return parsedDate.clearTime();}}},initComponent:function(){Ext.form.DateField.superclass.initComponent.call(this);this.addEvents('select');if(Ext.isString(this.minValue)){this.minValue=this.parseDate(this.minValue);} -if(Ext.isString(this.maxValue)){this.maxValue=this.parseDate(this.maxValue);} -this.disabledDatesRE=null;this.initDisabledDays();},initEvents:function(){Ext.form.DateField.superclass.initEvents.call(this);this.keyNav=new Ext.KeyNav(this.el,{"down":function(e){this.onTriggerClick();},scope:this,forceKeyDown:true});},initDisabledDays:function(){if(this.disabledDates){var dd=this.disabledDates,len=dd.length-1,re="(?:";Ext.each(dd,function(d,i){re+=Ext.isDate(d)?'^'+Ext.escapeRe(d.dateFormat(this.format))+'$':dd[i];if(i!=len){re+='|';}},this);this.disabledDatesRE=new RegExp(re+')');}},setDisabledDates:function(dd){this.disabledDates=dd;this.initDisabledDays();if(this.menu){this.menu.picker.setDisabledDates(this.disabledDatesRE);}},setDisabledDays:function(dd){this.disabledDays=dd;if(this.menu){this.menu.picker.setDisabledDays(dd);}},setMinValue:function(dt){this.minValue=(Ext.isString(dt)?this.parseDate(dt):dt);if(this.menu){this.menu.picker.setMinDate(this.minValue);}},setMaxValue:function(dt){this.maxValue=(Ext.isString(dt)?this.parseDate(dt):dt);if(this.menu){this.menu.picker.setMaxDate(this.maxValue);}},getErrors:function(value){var errors=Ext.form.DateField.superclass.getErrors.apply(this,arguments);value=this.formatDate(value||this.processValue(this.getRawValue()));if(value.length<1){return errors;} -var svalue=value;value=this.parseDate(value);if(!value){errors.push(String.format(this.invalidText,svalue,this.format));return errors;} -var time=value.getTime();if(this.minValue&&time<this.minValue.clearTime().getTime()){errors.push(String.format(this.minText,this.formatDate(this.minValue)));} -if(this.maxValue&&time>this.maxValue.clearTime().getTime()){errors.push(String.format(this.maxText,this.formatDate(this.maxValue)));} -if(this.disabledDays){var day=value.getDay();for(var i=0;i<this.disabledDays.length;i++){if(day===this.disabledDays[i]){errors.push(this.disabledDaysText);break;}}} -var fvalue=this.formatDate(value);if(this.disabledDatesRE&&this.disabledDatesRE.test(fvalue)){errors.push(String.format(this.disabledDatesText,fvalue));} -return errors;},validateBlur:function(){return!this.menu||!this.menu.isVisible();},getValue:function(){return this.parseDate(Ext.form.DateField.superclass.getValue.call(this))||"";},setValue:function(date){return Ext.form.DateField.superclass.setValue.call(this,this.formatDate(this.parseDate(date)));},parseDate:function(value){if(!value||Ext.isDate(value)){return value;} -var v=this.safeParse(value,this.format),af=this.altFormats,afa=this.altFormatsArray;if(!v&&af){afa=afa||af.split("|");for(var i=0,len=afa.length;i<len&&!v;i++){v=this.safeParse(value,afa[i]);}} -return v;},onDestroy:function(){Ext.destroy(this.menu,this.keyNav);Ext.form.DateField.superclass.onDestroy.call(this);},formatDate:function(date){return Ext.isDate(date)?date.dateFormat(this.format):date;},onTriggerClick:function(){if(this.disabled){return;} -if(this.menu==null){this.menu=new Ext.menu.DateMenu({hideOnClick:false,focusOnSelect:false});} -this.onFocus();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,startDay:this.startDay,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(method){this.menu[method]('select',this.onSelect,this);this.menu[method]('hide',this.onMenuHide,this);this.menu[method]('show',this.onFocus,this);},onSelect:function(m,d){this.setValue(d);this.fireEvent('select',this,d);this.menu.hide();},onMenuHide:function(){this.focus(false,60);this.menuEvents('un');},beforeBlur:function(){var v=this.parseDate(this.getRawValue());if(v){this.setValue(v);}}});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 v=this.rendered?this.el.dom.innerHTML:Ext.value(this.value,'');if(v===this.emptyText){v='';} -if(this.htmlEncode){v=Ext.util.Format.htmlDecode(v);} -return v;},getValue:function(){return this.getRawValue();},getName:function(){return this.name;},setRawValue:function(v){if(this.htmlEncode){v=Ext.util.Format.htmlEncode(v);} -return this.rendered?(this.el.dom.innerHTML=(Ext.isEmpty(v)?'':v)):(this.value=v);},setValue:function(v){this.setRawValue(v);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,autoSelect:true,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,clearFilterOnReset:true,submitValue:undefined,initComponent:function(){Ext.form.ComboBox.superclass.initComponent.call(this);this.addEvents('expand','collapse','beforeselect','select','beforequery');if(this.transform){var s=Ext.getDom(this.transform);if(!this.hiddenName){this.hiddenName=s.name;} -if(!this.store){this.mode='local';var d=[],opts=s.options;for(var i=0,len=opts.length;i<len;i++){var o=opts[i],value=(o.hasAttribute?o.hasAttribute('value'):o.getAttributeNode('value').specified)?o.value:o.text;if(o.selected&&Ext.isEmpty(this.value,true)){this.value=value;} -d.push([value,o.text]);} -this.store=new Ext.data.ArrayStore({idIndex:0,fields:['value','text'],data:d,autoDestroy:true});this.valueField='value';this.displayField='text';} -s.name=Ext.id();if(!this.lazyRender){this.target=true;this.el=Ext.DomHelper.insertBefore(s,this.autoCreate||this.defaultAutoCreate);this.render(this.el.parentNode,s);} -Ext.removeNode(s);} -else if(this.store){this.store=Ext.StoreMgr.lookup(this.store);if(this.store.autoCreated){this.displayField=this.valueField='field1';if(!this.store.expandData){this.displayField='field2';} -this.mode='local';}} -this.selectedIndex=-1;if(this.mode=='local'){if(!Ext.isDefined(this.initialConfig.queryDelay)){this.queryDelay=10;} -if(!Ext.isDefined(this.initialConfig.minChars)){this.minChars=0;}}},onRender:function(ct,position){if(this.hiddenName&&!Ext.isDefined(this.submitValue)){this.submitValue=false;} -Ext.form.ComboBox.superclass.onRender.call(this,ct,position);if(this.hiddenName){this.hiddenField=this.el.insertSibling({tag:'input',type:'hidden',name:this.hiddenName,id:(this.hiddenId||Ext.id())},'before',true);} -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=Ext.value(Ext.isDefined(this.hiddenValue)?this.hiddenValue:this.value,'');}},getParentZIndex:function(){var zindex;if(this.ownerCt){this.findParentBy(function(ct){zindex=parseInt(ct.getPositionEl().getStyle('z-index'),10);return!!zindex;});} -return zindex;},getZIndex:function(listParent){listParent=listParent||Ext.getDom(this.getListParent()||Ext.getBody());var zindex=parseInt(Ext.fly(listParent).getStyle('z-index'),10);if(!zindex){zindex=this.getParentZIndex();} -return(zindex||12000)+5;},initList:function(){if(!this.list){var cls='x-combo-list',listParent=Ext.getDom(this.getListParent()||Ext.getBody());this.list=new Ext.Layer({parentEl:listParent,shadow:this.shadow,cls:[cls,this.listClass].join(' '),constrain:false,zindex:this.getZIndex(listParent)});var lw=this.listWidth||Math.max(this.wrap.getWidth(),this.minListWidth);this.list.setSize(lw,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:cls+'-hd',html:this.title});this.assetHeight+=this.header.getHeight();} -this.innerList=this.list.createChild({cls:cls+'-inner'});this.mon(this.innerList,'mouseover',this.onViewOver,this);this.mon(this.innerList,'mousemove',this.onViewMove,this);this.innerList.setWidth(lw-this.list.getFrameWidth('lr'));if(this.pageSize){this.footer=this.list.createChild({cls:cls+'-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="'+cls+'-item">{'+this.displayField+'}</div></tpl>';} -this.view=new Ext.DataView({applyTo:this.innerList,tpl:this.tpl,singleSelect:true,selectedClass:this.selectedClass,itemSelector:this.itemSelector||'.'+cls+'-item',emptyText:this.listEmptyText,deferEmptyText:false});this.mon(this.view,{containerclick:this.onViewClick,click:this.onViewClick,scope: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(r,w,h){this.maxHeight=h-this.handleHeight-this.list.getFrameWidth('tb')-this.assetHeight;this.listWidth=w;this.innerList.setWidth(w-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(store,initial){if(this.store&&!initial){if(this.store!==store&&this.store.autoDestroy){this.store.destroy();}else{this.store.un('beforeload',this.onBeforeLoad,this);this.store.un('load',this.onLoad,this);this.store.un('exception',this.collapse,this);} -if(!store){this.store=null;if(this.view){this.view.bindStore(null);} -if(this.pageTb){this.pageTb.bindStore(null);}}} -if(store){if(!initial){this.lastQuery=null;if(this.pageTb){this.pageTb.bindStore(store);}} -this.store=Ext.StoreMgr.lookup(store);this.store.on({scope:this,beforeload:this.onBeforeLoad,load:this.onLoad,exception:this.collapse});if(this.view){this.view.bindStore(store);}}},reset:function(){if(this.clearFilterOnReset&&this.mode=='local'){this.store.clearFilter();} -Ext.form.ComboBox.superclass.reset.call(this);},initEvents:function(){Ext.form.ComboBox.superclass.initEvents.call(this);this.keyNav=new Ext.KeyNav(this.el,{"up":function(e){this.inKeyMode=true;this.selectPrev();},"down":function(e){if(!this.isExpanded()){this.onTriggerClick();}else{this.inKeyMode=true;this.selectNext();}},"enter":function(e){this.onViewClick();},"esc":function(e){this.collapse();},"tab":function(e){if(this.forceSelection===true){this.collapse();}else{this.onViewClick(false);} -return true;},scope:this,doRelay:function(e,h,hname){if(hname=='down'||this.scope.isExpanded()){var relay=Ext.KeyNav.prototype.doRelay.apply(this,arguments);if(!Ext.isIE&&Ext.EventManager.useKeydown){this.scope.fireKey(e);} -return relay;} -return true;},forceKeyDown:true,defaultEventAction:'stopEvent'});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.enableKeyEvents){this.mon(this.el,'keyup',this.onKeyUp,this);}},onDestroy:function(){if(this.dqTask){this.dqTask.cancel();this.dqTask=null;} -this.bindStore(null);Ext.destroy(this.resizer,this.view,this.pageTb,this.list);Ext.destroyMembers(this,'hiddenField');Ext.form.ComboBox.superclass.onDestroy.call(this);},fireKey:function(e){if(!this.isExpanded()){Ext.form.ComboBox.superclass.fireKey.call(this,e);}},onResize:function(w,h){Ext.form.ComboBox.superclass.onResize.apply(this,arguments);if(!isNaN(w)&&this.isVisible()&&this.list){this.doResize(w);}else{this.bufferSize=w;}},doResize:function(w){if(!Ext.isDefined(this.listWidth)){var lw=Math.max(w,this.minListWidth);this.list.setWidth(lw);this.innerList.setWidth(lw-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.listEmptyText){this.expand();this.restrictHeight();if(this.lastQuery==this.allQuery){if(this.editable){this.el.dom.select();} -if(this.autoSelect!==false&&!this.selectByValue(this.value,true)){this.select(0,true);}}else{if(this.autoSelect!==false){this.selectNext();} -if(this.typeAhead&&this.lastKey!=Ext.EventObject.BACKSPACE&&this.lastKey!=Ext.EventObject.DELETE){this.taTask.delay(this.typeAheadDelay);}}}else{this.collapse();}},onTypeAhead:function(){if(this.store.getCount()>0){var r=this.store.getAt(0);var newValue=r.data[this.displayField];var len=newValue.length;var selStart=this.getRawValue().length;if(selStart!=len){this.setRawValue(newValue);this.selectText(selStart,newValue.length);}}},assertValue:function(){var val=this.getRawValue(),rec;if(this.valueField&&Ext.isDefined(this.value)){rec=this.findRecord(this.valueField,this.value);} -if(!rec||rec.get(this.displayField)!=val){rec=this.findRecord(this.displayField,val);} -if(!rec&&this.forceSelection){if(val.length>0&&val!=this.emptyText){this.el.dom.value=Ext.value(this.lastSelectionText,'');this.applyEmptyText();}else{this.clearValue();}}else{if(rec&&this.valueField){if(this.value==val){return;} -val=rec.get(this.valueField||this.displayField);} -this.setValue(val);}},onSelect:function(record,index){if(this.fireEvent('beforeselect',this,record,index)!==false){this.setValue(record.data[this.valueField||this.displayField]);this.collapse();this.fireEvent('select',this,record,index);}},getName:function(){var hf=this.hiddenField;return hf&&hf.name?hf.name:this.hiddenName||Ext.form.ComboBox.superclass.getName.call(this);},getValue:function(){if(this.valueField){return Ext.isDefined(this.value)?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(v){var text=v;if(this.valueField){var r=this.findRecord(this.valueField,v);if(r){text=r.data[this.displayField];}else if(Ext.isDefined(this.valueNotFoundText)){text=this.valueNotFoundText;}} -this.lastSelectionText=text;if(this.hiddenField){this.hiddenField.value=Ext.value(v,'');} -Ext.form.ComboBox.superclass.setValue.call(this,text);this.value=v;return this;},findRecord:function(prop,value){var record;if(this.store.getCount()>0){this.store.each(function(r){if(r.data[prop]==value){record=r;return false;}});} -return record;},onViewMove:function(e,t){this.inKeyMode=false;},onViewOver:function(e,t){if(this.inKeyMode){return;} -var item=this.view.findItemFromChild(t);if(item){var index=this.view.indexOf(item);this.select(index,false);}},onViewClick:function(doFocus){var index=this.view.getSelectedIndexes()[0],s=this.store,r=s.getAt(index);if(r){this.onSelect(r,index);}else{this.collapse();} -if(doFocus!==false){this.el.focus();}},restrictHeight:function(){this.innerList.dom.style.height='';var inner=this.innerList.dom,pad=this.list.getFrameWidth('tb')+(this.resizable?this.handleHeight:0)+this.assetHeight,h=Math.max(inner.clientHeight,inner.offsetHeight,inner.scrollHeight),ha=this.getPosition()[1]-Ext.getBody().getScroll().top,hb=Ext.lib.Dom.getViewHeight()-ha-this.getSize().height,space=Math.max(ha,hb,this.minHeight||0)-this.list.shadowOffset-pad-5;h=Math.min(h,space,this.maxHeight);this.innerList.setHeight(h);this.list.beginUpdate();this.list.setHeight(h+pad);this.list.alignTo.apply(this.list,[this.el].concat(this.listAlign));this.list.endUpdate();},isExpanded:function(){return this.list&&this.list.isVisible();},selectByValue:function(v,scrollIntoView){if(!Ext.isEmpty(v,true)){var r=this.findRecord(this.valueField||this.displayField,v);if(r){this.select(this.store.indexOf(r),scrollIntoView);return true;}} -return false;},select:function(index,scrollIntoView){this.selectedIndex=index;this.view.select(index);if(scrollIntoView!==false){var el=this.view.getNode(index);if(el){this.innerList.scrollChildIntoView(el,false);}}},selectNext:function(){var ct=this.store.getCount();if(ct>0){if(this.selectedIndex==-1){this.select(0);}else if(this.selectedIndex<ct-1){this.select(this.selectedIndex+1);}}},selectPrev:function(){var ct=this.store.getCount();if(ct>0){if(this.selectedIndex==-1){this.select(0);}else if(this.selectedIndex!==0){this.select(this.selectedIndex-1);}}},onKeyUp:function(e){var k=e.getKey();if(this.editable!==false&&this.readOnly!==true&&(k==e.BACKSPACE||!e.isSpecialKey())){this.lastKey=k;this.dqTask.delay(this.queryDelay);} -Ext.form.ComboBox.superclass.onKeyUp.call(this,e);},validateBlur:function(){return!this.list||!this.list.isVisible();},initQuery:function(){this.doQuery(this.getRawValue());},beforeBlur:function(){this.assertValue();},postBlur:function(){Ext.form.ComboBox.superclass.postBlur.call(this);this.collapse();this.inKeyMode=false;},doQuery:function(q,forceAll){q=Ext.isEmpty(q)?'':q;var qe={query:q,forceAll:forceAll,combo:this,cancel:false};if(this.fireEvent('beforequery',qe)===false||qe.cancel){return false;} -q=qe.query;forceAll=qe.forceAll;if(forceAll===true||(q.length>=this.minChars)){if(this.lastQuery!==q){this.lastQuery=q;if(this.mode=='local'){this.selectedIndex=-1;if(forceAll){this.store.clearFilter();}else{this.store.filter(this.displayField,q);} -this.onLoad();}else{this.store.baseParams[this.queryParam]=q;this.store.load({params:this.getParams(q)});this.expand();}}else{this.selectedIndex=-1;this.onLoad();}}},getParams:function(q){var params={},paramNames=this.store.paramNames;if(this.pageSize){params[paramNames.start]=0;params[paramNames.limit]=this.pageSize;} -return params;},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(e){if(!this.isDestroyed&&!e.within(this.wrap)&&!e.within(this.list)){this.collapse();}},expand:function(){if(this.isExpanded()||!this.hasFocus){return;} -if(this.title||this.pageSize){this.assetHeight=0;if(this.title){this.assetHeight+=this.header.getHeight();} -if(this.pageSize){this.assetHeight+=this.footer.getHeight();}} -if(this.bufferSize){this.doResize(this.bufferSize);delete this.bufferSize;} -this.list.alignTo.apply(this.list,[this.el].concat(this.listAlign));this.list.setZIndex(this.getZIndex());this.list.show();if(Ext.isGecko2){this.innerList.setOverflow('auto');} -this.mon(Ext.getDoc(),{scope:this,mousewheel:this.collapseIf,mousedown:this.collapseIf});this.fireEvent('expand',this);},onTriggerClick:function(){if(this.readOnly||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,boxLabel:' ',defaultAutoCreate:{tag:'input',type:'checkbox',autocomplete:'off'},actionMode:'wrap',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.fieldLabel){this.el.alignTo(this.wrap,'c-c');}},initEvents:function(){Ext.form.Checkbox.superclass.initEvents.call(this);this.mon(this.el,{scope:this,click:this.onClick,change:this.onClick});},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,onRender:function(ct,position){Ext.form.Checkbox.superclass.onRender.call(this,ct,position);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;} -if(Ext.isIE&&!Ext.isStrict){this.wrap.repaint();} -this.resizeEl=this.positionEl=this.wrap;},onDestroy:function(){Ext.destroy(this.wrap);Ext.form.Checkbox.superclass.onDestroy.call(this);},initValue:function(){this.originalValue=this.getValue();},getValue:function(){if(this.rendered){return this.el.dom.checked;} -return this.checked;},onClick:function(){if(this.el.dom.checked!=this.checked){this.setValue(this.el.dom.checked);}},setValue:function(v){var checked=this.checked,inputVal=this.inputValue;this.checked=(v===true||v==='true'||v=='1'||(inputVal?v==inputVal:String(v).toLowerCase()=='on'));if(this.rendered){this.el.dom.checked=this.checked;this.el.dom.defaultChecked=this.checked;} -if(checked!=this.checked){this.fireEvent('check',this,this.checked);if(this.handler){this.handler.call(this.scope||this,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',initComponent:function(){this.addEvents('change');this.on('change',this.validate,this);Ext.form.CheckboxGroup.superclass.initComponent.call(this);},onRender:function(ct,position){if(!this.el){var panelCfg={autoEl:{id:this.id},cls:this.groupCls,layout:'column',renderTo:ct,bufferResize:false};var colCfg={xtype:'container',defaultType:this.defaultType,layout:'form',defaults:{hideLabel:true,anchor:'100%'}};if(this.items[0].items){Ext.apply(panelCfg,{layoutConfig:{columns:this.items.length},defaults:this.defaults,items:this.items});for(var i=0,len=this.items.length;i<len;i++){Ext.applyIf(this.items[i],colCfg);}}else{var numCols,cols=[];if(typeof this.columns=='string'){this.columns=this.items.length;} -if(!Ext.isArray(this.columns)){var cs=[];for(var i=0;i<this.columns;i++){cs.push((100/this.columns)*.01);} -this.columns=cs;} -numCols=this.columns.length;for(var i=0;i<numCols;i++){var cc=Ext.apply({items:[]},colCfg);cc[this.columns[i]<=1?'columnWidth':'width']=this.columns[i];if(this.defaults){cc.defaults=Ext.apply(cc.defaults||{},this.defaults);} -cols.push(cc);};if(this.vertical){var rows=Math.ceil(this.items.length/numCols),ri=0;for(var i=0,len=this.items.length;i<len;i++){if(i>0&&i%rows==0){ri++;} -if(this.items[i].fieldLabel){this.items[i].hideLabel=false;} -cols[ri].items.push(this.items[i]);};}else{for(var i=0,len=this.items.length;i<len;i++){var ci=i%numCols;if(this.items[i].fieldLabel){this.items[i].hideLabel=false;} -cols[ci].items.push(this.items[i]);};} -Ext.apply(panelCfg,{layoutConfig:{columns:numCols},items:cols});} -this.panel=new Ext.Container(panelCfg);this.panel.ownerCt=this;this.el=this.panel.getEl();if(this.forId&&this.itemCls){var l=this.el.up(this.itemCls).child('label',true);if(l){l.setAttribute('htmlFor',this.forId);}} -var fields=this.panel.findBy(function(c){return c.isFormField;},this);this.items=new Ext.util.MixedCollection();this.items.addAll(fields);} -Ext.form.CheckboxGroup.superclass.onRender.call(this,ct,position);},initValue:function(){if(this.value){this.setValue.apply(this,this.buffered?this.value:[this.value]);delete this.buffered;delete this.value;}},afterRender:function(){Ext.form.CheckboxGroup.superclass.afterRender.call(this);this.eachItem(function(item){item.on('check',this.fireChecked,this);item.inGroup=true;});},doLayout:function(){if(this.rendered){this.panel.forceLayout=this.ownerCt.forceLayout;this.panel.doLayout();}},fireChecked:function(){var arr=[];this.eachItem(function(item){if(item.checked){arr.push(item);}});this.fireEvent('change',this,arr);},getErrors:function(){var errors=Ext.form.CheckboxGroup.superclass.getErrors.apply(this,arguments);if(!this.allowBlank){var blank=true;this.eachItem(function(f){if(f.checked){return(blank=false);}});if(blank)errors.push(this.blankText);} -return errors;},isDirty:function(){if(this.disabled||!this.rendered){return false;} -var dirty=false;this.eachItem(function(item){if(item.isDirty()){dirty=true;return false;}});return dirty;},setReadOnly:function(readOnly){if(this.rendered){this.eachItem(function(item){item.setReadOnly(readOnly);});} -this.readOnly=readOnly;},onDisable:function(){this.eachItem(function(item){item.disable();});},onEnable:function(){this.eachItem(function(item){item.enable();});},onResize:function(w,h){this.panel.setSize(w,h);this.panel.doLayout();},reset:function(){if(this.originalValue){this.eachItem(function(c){if(c.setValue){c.setValue(false);c.originalValue=c.getValue();}});this.resetOriginal=true;this.setValue(this.originalValue);delete this.resetOriginal;}else{this.eachItem(function(c){if(c.reset){c.reset();}});} -(function(){this.clearInvalid();}).defer(50,this);},setValue:function(){if(this.rendered){this.onSetValue.apply(this,arguments);}else{this.buffered=true;this.value=arguments;} -return this;},onSetValue:function(id,value){if(arguments.length==1){if(Ext.isArray(id)){Ext.each(id,function(val,idx){if(Ext.isObject(val)&&val.setValue){val.setValue(true);if(this.resetOriginal===true){val.originalValue=val.getValue();}}else{var item=this.items.itemAt(idx);if(item){item.setValue(val);}}},this);}else if(Ext.isObject(id)){for(var i in id){var f=this.getBox(i);if(f){f.setValue(id[i]);}}}else{this.setValueForItem(id);}}else{var f=this.getBox(id);if(f){f.setValue(value);}}},beforeDestroy:function(){Ext.destroy(this.panel);if(!this.rendered){Ext.destroy(this.items);} -Ext.form.CheckboxGroup.superclass.beforeDestroy.call(this);},setValueForItem:function(val){val=String(val).split(',');this.eachItem(function(item){if(val.indexOf(item.inputValue)>-1){item.setValue(true);}});},getBox:function(id){var box=null;this.eachItem(function(f){if(id==f||f.dataIndex==id||f.id==id||f.getName()==id){box=f;return false;}});return box;},getValue:function(){var out=[];this.eachItem(function(item){if(item.checked){out.push(item);}});return out;},eachItem:function(fn,scope){if(this.items&&this.items.each){this.items.each(fn,scope||this);}},getRawValue:Ext.emptyFn,setRawValue:Ext.emptyFn});Ext.reg('checkboxgroup',Ext.form.CheckboxGroup);Ext.form.CompositeField=Ext.extend(Ext.form.Field,{defaultMargins:'0 5 0 0',skipLastItemMargin:true,isComposite:true,combineErrors:true,labelConnector:', ',initComponent:function(){var labels=[],items=this.items,item;for(var i=0,j=items.length;i<j;i++){item=items[i];if(!Ext.isEmpty(item.ref)){item.ref='../'+item.ref;} -labels.push(item.fieldLabel);Ext.applyIf(item,this.defaults);if(!(i==j-1&&this.skipLastItemMargin)){Ext.applyIf(item,{margins:this.defaultMargins});}} -this.fieldLabel=this.fieldLabel||this.buildLabel(labels);this.fieldErrors=new Ext.util.MixedCollection(true,function(item){return item.field;});this.fieldErrors.on({scope:this,add:this.updateInvalidMark,remove:this.updateInvalidMark,replace:this.updateInvalidMark});Ext.form.CompositeField.superclass.initComponent.apply(this,arguments);this.innerCt=new Ext.Container({layout:'hbox',items:this.items,cls:'x-form-composite',defaultMargins:'0 3 0 0',ownerCt:this});this.innerCt.ownerCt=undefined;var fields=this.innerCt.findBy(function(c){return c.isFormField;},this);this.items=new Ext.util.MixedCollection();this.items.addAll(fields);},onRender:function(ct,position){if(!this.el){var innerCt=this.innerCt;innerCt.render(ct);this.el=innerCt.getEl();if(this.combineErrors){this.eachItem(function(field){Ext.apply(field,{markInvalid:this.onFieldMarkInvalid.createDelegate(this,[field],0),clearInvalid:this.onFieldClearInvalid.createDelegate(this,[field],0)});});} -var l=this.el.parent().parent().child('label',true);if(l){l.setAttribute('for',this.items.items[0].id);}} -Ext.form.CompositeField.superclass.onRender.apply(this,arguments);},onFieldMarkInvalid:function(field,message){var name=field.getName(),error={field:name,errorName:field.fieldLabel||name,error:message};this.fieldErrors.replace(name,error);field.el.addClass(field.invalidClass);},onFieldClearInvalid:function(field){this.fieldErrors.removeKey(field.getName());field.el.removeClass(field.invalidClass);},updateInvalidMark:function(){var ieStrict=Ext.isIE6&&Ext.isStrict;if(this.fieldErrors.length==0){this.clearInvalid();if(ieStrict){this.clearInvalid.defer(50,this);}}else{var message=this.buildCombinedErrorMessage(this.fieldErrors.items);this.sortErrors();this.markInvalid(message);if(ieStrict){this.markInvalid(message);}}},validateValue:function(){var valid=true;this.eachItem(function(field){if(!field.isValid())valid=false;});return valid;},buildCombinedErrorMessage:function(errors){var combined=[],error;for(var i=0,j=errors.length;i<j;i++){error=errors[i];combined.push(String.format("{0}: {1}",error.errorName,error.error));} -return combined.join("<br />");},sortErrors:function(){var fields=this.items;this.fieldErrors.sort("ASC",function(a,b){var findByName=function(key){return function(field){return field.getName()==key;};};var aIndex=fields.findIndexBy(findByName(a.field)),bIndex=fields.findIndexBy(findByName(b.field));return aIndex<bIndex?-1:1;});},reset:function(){this.eachItem(function(item){item.reset();});(function(){this.clearInvalid();}).defer(50,this);},clearInvalidChildren:function(){this.eachItem(function(item){item.clearInvalid();});},buildLabel:function(segments){return Ext.clean(segments).join(this.labelConnector);},isDirty:function(){if(this.disabled||!this.rendered){return false;} -var dirty=false;this.eachItem(function(item){if(item.isDirty()){dirty=true;return false;}});return dirty;},eachItem:function(fn,scope){if(this.items&&this.items.each){this.items.each(fn,scope||this);}},onResize:function(adjWidth,adjHeight,rawWidth,rawHeight){var innerCt=this.innerCt;if(this.rendered&&innerCt.rendered){innerCt.setSize(adjWidth,adjHeight);} -Ext.form.CompositeField.superclass.onResize.apply(this,arguments);},doLayout:function(shallow,force){if(this.rendered){var innerCt=this.innerCt;innerCt.forceLayout=this.ownerCt.forceLayout;innerCt.doLayout(shallow,force);}},beforeDestroy:function(){Ext.destroy(this.innerCt);Ext.form.CompositeField.superclass.beforeDestroy.call(this);},setReadOnly:function(readOnly){if(readOnly==undefined){readOnly=true;} -readOnly=!!readOnly;if(this.rendered){this.eachItem(function(item){item.setReadOnly(readOnly);});} -this.readOnly=readOnly;},onShow:function(){Ext.form.CompositeField.superclass.onShow.call(this);this.doLayout();},onDisable:function(){this.eachItem(function(item){item.disable();});},onEnable:function(){this.eachItem(function(item){item.enable();});}});Ext.reg('compositefield',Ext.form.CompositeField);Ext.form.Radio=Ext.extend(Ext.form.Checkbox,{inputType:'radio',markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,getGroupValue:function(){var p=this.el.up('form')||Ext.getBody();var c=p.child('input[name='+this.el.dom.name+']:checked',true);return c?c.value:null;},setValue:function(v){var checkEl,els,radio;if(typeof v=='boolean'){Ext.form.Radio.superclass.setValue.call(this,v);}else if(this.rendered){checkEl=this.getCheckEl();radio=checkEl.child('input[name='+this.el.dom.name+'][value='+v+']',true);if(radio){Ext.getCmp(radio.id).setValue(true);}} -if(this.rendered&&this.checked){checkEl=checkEl||this.getCheckEl();els=this.getCheckEl().select('input[name='+this.el.dom.name+']');els.each(function(el){if(el.dom.id!=this.id){Ext.getCmp(el.dom.id).setValue(false);}},this);} -return this;},getCheckEl:function(){if(this.inGroup){return this.el.up('.x-form-radio-group');} -return this.el.up('form')||Ext.getBody();}});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',getValue:function(){var out=null;this.eachItem(function(item){if(item.checked){out=item;return false;}});return out;},onSetValue:function(id,value){if(arguments.length>1){var f=this.getBox(id);if(f){f.setValue(value);if(f.checked){this.eachItem(function(item){if(item!==f){item.setValue(false);}});}}}else{this.setValueForItem(id);}},setValueForItem:function(val){val=String(val).split(',')[0];this.eachItem(function(item){item.setValue(val==item.inputValue);});},fireChecked:function(){if(!this.checkTask){this.checkTask=new Ext.util.DelayedTask(this.bufferChecked,this);} -this.checkTask.delay(10);},bufferChecked:function(){var out=null;this.eachItem(function(item){if(item.checked){out=item;return false;}});this.fireEvent('change',this,out);},onDestroy:function(){if(this.checkTask){this.checkTask.cancel();this.checkTask=null;} -Ext.form.RadioGroup.superclass.onDestroy.call(this);}});Ext.reg('radiogroup',Ext.form.RadioGroup);Ext.form.Hidden=Ext.extend(Ext.form.Field,{inputType:'hidden',shouldLayout:false,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=Ext.extend(Ext.util.Observable,{constructor:function(el,config){Ext.apply(this,config);if(Ext.isString(this.paramOrder)){this.paramOrder=this.paramOrder.split(/[\s,|]/);} -this.items=new Ext.util.MixedCollection(false,function(o){return o.getItemId();});this.addEvents('beforeaction','actionfailed','actioncomplete');if(el){this.initEl(el);} -Ext.form.BasicForm.superclass.constructor.call(this);},timeout:30,paramOrder:undefined,paramsAsHash:false,waitTitle:'Please Wait...',activeAction:null,trackResetOnLoad:false,initEl:function(el){this.el=Ext.get(el);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(e){e.stopEvent();},destroy:function(bound){if(bound!==true){this.items.each(function(f){Ext.destroy(f);});Ext.destroy(this.el);} -this.items.clear();this.purgeListeners();},isValid:function(){var valid=true;this.items.each(function(f){if(!f.validate()){valid=false;}});return valid;},isDirty:function(){var dirty=false;this.items.each(function(f){if(f.isDirty()){dirty=true;return false;}});return dirty;},doAction:function(action,options){if(Ext.isString(action)){action=new Ext.form.Action.ACTION_TYPES[action](this,options);} -if(this.fireEvent('beforeaction',this,action)!==false){this.beforeAction(action);action.run.defer(100,action);} -return this;},submit:function(options){options=options||{};if(this.standardSubmit){var v=options.clientValidation===false||this.isValid();if(v){var el=this.el.dom;if(this.url&&Ext.isEmpty(el.action)){el.action=this.url;} -el.submit();} -return v;} -var submitAction=String.format('{0}submit',this.api?'direct':'');this.doAction(submitAction,options);return this;},load:function(options){var loadAction=String.format('{0}load',this.api?'direct':'');this.doAction(loadAction,options);return this;},updateRecord:function(record){record.beginEdit();var fs=record.fields,field,value;fs.each(function(f){field=this.findField(f.name);if(field){value=field.getValue();if(typeof value!=undefined&&value.getGroupValue){value=value.getGroupValue();}else if(field.eachItem){value=[];field.eachItem(function(item){value.push(item.getValue());});} -record.set(f.name,value);}},this);record.endEdit();return this;},loadRecord:function(record){this.setValues(record.data);return this;},beforeAction:function(action){this.items.each(function(f){if(f.isFormField&&f.syncValue){f.syncValue();}});var o=action.options;if(o.waitMsg){if(this.waitMsgTarget===true){this.el.mask(o.waitMsg,'x-mask-loading');}else if(this.waitMsgTarget){this.waitMsgTarget=Ext.get(this.waitMsgTarget);this.waitMsgTarget.mask(o.waitMsg,'x-mask-loading');}else{Ext.MessageBox.wait(o.waitMsg,o.waitTitle||this.waitTitle);}}},afterAction:function(action,success){this.activeAction=null;var o=action.options;if(o.waitMsg){if(this.waitMsgTarget===true){this.el.unmask();}else if(this.waitMsgTarget){this.waitMsgTarget.unmask();}else{Ext.MessageBox.updateProgress(1);Ext.MessageBox.hide();}} -if(success){if(o.reset){this.reset();} -Ext.callback(o.success,o.scope,[this,action]);this.fireEvent('actioncomplete',this,action);}else{Ext.callback(o.failure,o.scope,[this,action]);this.fireEvent('actionfailed',this,action);}},findField:function(id){var field=this.items.get(id);if(!Ext.isObject(field)){var findMatchingField=function(f){if(f.isFormField){if(f.dataIndex==id||f.id==id||f.getName()==id){field=f;return false;}else if(f.isComposite){return f.items.each(findMatchingField);}else if(f instanceof Ext.form.CheckboxGroup&&f.rendered){return f.eachItem(findMatchingField);}}};this.items.each(findMatchingField);} -return field||null;},markInvalid:function(errors){if(Ext.isArray(errors)){for(var i=0,len=errors.length;i<len;i++){var fieldError=errors[i];var f=this.findField(fieldError.id);if(f){f.markInvalid(fieldError.msg);}}}else{var field,id;for(id in errors){if(!Ext.isFunction(errors[id])&&(field=this.findField(id))){field.markInvalid(errors[id]);}}} -return this;},setValues:function(values){if(Ext.isArray(values)){for(var i=0,len=values.length;i<len;i++){var v=values[i];var f=this.findField(v.id);if(f){f.setValue(v.value);if(this.trackResetOnLoad){f.originalValue=f.getValue();}}}}else{var field,id;for(id in values){if(!Ext.isFunction(values[id])&&(field=this.findField(id))){field.setValue(values[id]);if(this.trackResetOnLoad){field.originalValue=field.getValue();}}}} -return this;},getValues:function(asString){var fs=Ext.lib.Ajax.serializeForm(this.el.dom);if(asString===true){return fs;} -return Ext.urlDecode(fs);},getFieldValues:function(dirtyOnly){var o={},n,key,val;this.items.each(function(f){if(!f.disabled&&(dirtyOnly!==true||f.isDirty())){n=f.getName();key=o[n];val=f.getValue();if(Ext.isDefined(key)){if(Ext.isArray(key)){o[n].push(val);}else{o[n]=[key,val];}}else{o[n]=val;}}});return o;},clearInvalid:function(){this.items.each(function(f){f.clearInvalid();});return this;},reset:function(){this.items.each(function(f){f.reset();});return this;},add:function(){this.items.addAll(Array.prototype.slice.call(arguments,0));return this;},remove:function(field){this.items.remove(field);return this;},cleanDestroyed:function(){this.items.filterBy(function(o){return!!o.isDestroyed;}).each(this.remove,this);},render:function(){this.items.each(function(f){if(f.isFormField&&!f.rendered&&document.getElementById(f.id)){f.applyToMarkup(f.id);}});return this;},applyToFields:function(o){this.items.each(function(f){Ext.apply(f,o);});return this;},applyIfToFields:function(o){this.items.each(function(f){Ext.applyIf(f,o);});return this;},callFieldMethod:function(fnName,args){args=args||[];this.items.each(function(f){if(Ext.isFunction(f[fnName])){f[fnName].apply(f,args);}});return this;}});Ext.BasicForm=Ext.form.BasicForm;Ext.FormPanel=Ext.extend(Ext.Panel,{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(){var config=Ext.applyIf({listeners:{}},this.initialConfig);return new Ext.form.BasicForm(null,config);},initFields:function(){var f=this.form;var formPanel=this;var fn=function(c){if(formPanel.isField(c)){f.add(c);}else if(c.findBy&&c!=formPanel){formPanel.applySettings(c);if(c.items&&c.items.each){c.items.each(fn,this);}}};this.items.each(fn,this);},applySettings:function(c){var ct=c.ownerCt;Ext.applyIf(c,{labelAlign:ct.labelAlign,labelWidth:ct.labelWidth,itemCls:ct.itemCls});},getLayoutTarget:function(){return this.form.el;},getForm:function(){return this.form;},onRender:function(ct,position){this.initFields();Ext.FormPanel.superclass.onRender.call(this,ct,position);this.form.initEl(this.body);},beforeDestroy:function(){this.stopMonitoring();this.form.destroy(true);Ext.FormPanel.superclass.beforeDestroy.call(this);},isField:function(c){return!!c.setValue&&!!c.getValue&&!!c.markInvalid&&!!c.clearInvalid;},initEvents:function(){Ext.FormPanel.superclass.initEvents.call(this);this.on({scope:this,add:this.onAddEvent,remove:this.onRemoveEvent});if(this.monitorValid){this.startMonitoring();}},onAdd:function(c){Ext.FormPanel.superclass.onAdd.call(this,c);this.processAdd(c);},onAddEvent:function(ct,c){if(ct!==this){this.processAdd(c);}},processAdd:function(c){if(this.isField(c)){this.form.add(c);}else if(c.findBy){this.applySettings(c);this.form.add.apply(this.form,c.findBy(this.isField));}},onRemove:function(c){Ext.FormPanel.superclass.onRemove.call(this,c);this.processRemove(c);},onRemoveEvent:function(ct,c){if(ct!==this){this.processRemove(c);}},processRemove:function(c){if(!this.destroying){if(this.isField(c)){this.form.remove(c);}else if(c.findBy){Ext.each(c.findBy(this.isField),this.form.remove,this.form);this.form.cleanDestroyed();}}},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 valid=true;this.form.items.each(function(f){if(!f.isValid(true)){valid=false;return false;}});if(this.fbar){var fitems=this.fbar.items.items;for(var i=0,len=fitems.length;i<len;i++){var btn=fitems[i];if(btn.formBind===true&&btn.disabled===valid){btn.setDisabled(!valid);}}} -this.fireEvent('clientvalidation',this,valid);}});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(ct,position){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=this.baseCls+'-header';}} -Ext.form.FieldSet.superclass.onRender.call(this,ct,position);if(this.checkboxToggle){var o=typeof this.checkboxToggle=='object'?this.checkboxToggle:{tag:'input',type:'checkbox',name:this.checkboxName||this.id+'-checkbox'};this.checkbox=this.header.insertFirst(o);this.checkbox.dom.checked=!this.collapsed;this.mon(this.checkbox,'click',this.onCheckClick,this);}},onCollapse:function(doAnim,animArg){if(this.checkbox){this.checkbox.dom.checked=false;} -Ext.form.FieldSet.superclass.onCollapse.call(this,doAnim,animArg);},onExpand:function(doAnim,animArg){if(this.checkbox){this.checkbox.dom.checked=true;} -Ext.form.FieldSet.superclass.onExpand.call(this,doAnim,animArg);},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',defaultValue:(Ext.isOpera||Ext.isIE6)?' ':'​',actionMode:'wrap',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');Ext.form.HtmlEditor.superclass.initComponent.call(this);},createFontOptions:function(){var buf=[],fs=this.fontFamilies,ff,lc;for(var i=0,len=fs.length;i<len;i++){ff=fs[i];lc=ff.toLowerCase();buf.push('<option value="',lc,'" style="font-family:',ff,';"',(this.defaultFont==lc?' selected="true">':'>'),ff,'</option>');} -return buf.join('');},createToolbar:function(editor){var items=[];var tipsEnabled=Ext.QuickTips&&Ext.QuickTips.isEnabled();function btn(id,toggle,handler){return{itemId:id,cls:'x-btn-icon',iconCls:'x-edit-'+id,enableToggle:toggle!==false,scope:editor,handler:handler||editor.relayBtnCmd,clickEvent:'mousedown',tooltip:tipsEnabled?editor.buttonTips[id]||undefined:undefined,overflowText:editor.buttonTips[id].title||undefined,tabIndex:-1};} -if(this.enableFont&&!Ext.isSafari2){var fontSelectItem=new Ext.Toolbar.Item({autoEl:{tag:'select',cls:'x-font-select',html:this.createFontOptions()}});items.push(fontSelectItem,'-');} -if(this.enableFormat){items.push(btn('bold'),btn('italic'),btn('underline'));} -if(this.enableFontSize){items.push('-',btn('increasefontsize',false,this.adjustFont),btn('decreasefontsize',false,this.adjustFont));} -if(this.enableColors){items.push('-',{itemId:'forecolor',cls:'x-btn-icon',iconCls:'x-edit-forecolor',clickEvent:'mousedown',tooltip:tipsEnabled?editor.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(cp,color){this.execCmd('forecolor',Ext.isWebKit||Ext.isIE?'#'+color:color);this.deferFocus();}},clickEvent:'mousedown'})},{itemId:'backcolor',cls:'x-btn-icon',iconCls:'x-edit-backcolor',clickEvent:'mousedown',tooltip:tipsEnabled?editor.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(cp,color){if(Ext.isGecko){this.execCmd('useCSS',false);this.execCmd('hilitecolor',color);this.execCmd('useCSS',true);this.deferFocus();}else{this.execCmd(Ext.isOpera?'hilitecolor':'backcolor',Ext.isWebKit||Ext.isIE?'#'+color:color);this.deferFocus();}}},clickEvent:'mousedown'})});} -if(this.enableAlignments){items.push('-',btn('justifyleft'),btn('justifycenter'),btn('justifyright'));} -if(!Ext.isSafari2){if(this.enableLinks){items.push('-',btn('createlink',false,this.createLink));} -if(this.enableLists){items.push('-',btn('insertorderedlist'),btn('insertunorderedlist'));} -if(this.enableSourceEdit){items.push('-',btn('sourceedit',true,function(btn){this.toggleSourceEdit(!this.sourceEditMode);}));}} -var tb=new Ext.Toolbar({renderTo:this.wrap.dom.firstChild,items:items});if(fontSelectItem){this.fontSelect=fontSelectItem.el;this.mon(this.fontSelect,'change',function(){var font=this.fontSelect.dom.value;this.relayCmd('fontname',font);this.deferFocus();},this);} -this.mon(tb.el,'click',function(e){e.preventDefault();});this.tb=tb;this.tb.doLayout();},onDisable:function(){this.wrap.mask();Ext.form.HtmlEditor.superclass.onDisable.call(this);},onEnable:function(){this.wrap.unmask();Ext.form.HtmlEditor.superclass.onEnable.call(this);},setReadOnly:function(readOnly){Ext.form.HtmlEditor.superclass.setReadOnly.call(this,readOnly);if(this.initialized){if(Ext.isIE){this.getEditorBody().contentEditable=!readOnly;}else{this.setDesignMode(!readOnly);} -var bd=this.getEditorBody();if(bd){bd.style.cursor=this.readOnly?'default':'text';} -this.disableItems(readOnly);}},getDocMarkup:function(){var h=Ext.fly(this.iframe).getHeight()-this.iframePad*2;return String.format('<html><head><style type="text/css">body{border: 0; margin: 0; padding: {0}px; height: {1}px; cursor: text}</style></head><body></body></html>',this.iframePad,h);},getEditorBody:function(){var doc=this.getDoc();return doc.body||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(ct,position){Ext.form.HtmlEditor.superclass.onRender.call(this,ct,position);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.tb.doLayout();this.createIFrame();if(!this.width){var sz=this.el.getSize();this.setSize(sz.width,this.height||sz.height);} -this.resizeEl=this.positionEl=this.wrap;},createIFrame:function(){var iframe=document.createElement('iframe');iframe.name=Ext.id();iframe.frameBorder='0';iframe.style.overflow='auto';iframe.src=Ext.SSL_SECURE_URL;this.wrap.dom.appendChild(iframe);this.iframe=iframe;this.monitorTask=Ext.TaskMgr.start({run:this.checkDesignMode,scope:this,interval:100});},initFrame:function(){Ext.TaskMgr.stop(this.monitorTask);var doc=this.getDoc();this.win=this.getWin();doc.open();doc.write(this.getDocMarkup());doc.close();var task={run:function(){var doc=this.getDoc();if(doc.body||doc.readyState=='complete'){Ext.TaskMgr.stop(task);this.setDesignMode(true);this.initEditor.defer(10,this);}},interval:10,duration:10000,scope:this};Ext.TaskMgr.start(task);},checkDesignMode:function(){if(this.wrap&&this.wrap.dom.offsetWidth){var doc=this.getDoc();if(!doc){return;} -if(!doc.editorInitialized||this.getDesignMode()!='on'){this.initFrame();}}},setDesignMode:function(mode){var doc=this.getDoc();if(doc){if(this.readOnly){mode=false;} -doc.designMode=(/on|true/i).test(String(mode).toLowerCase())?'on':'off';}},getDesignMode:function(){var doc=this.getDoc();if(!doc){return'';} -return String(doc.designMode).toLowerCase();},disableItems:function(disabled){if(this.fontSelect){this.fontSelect.dom.disabled=disabled;} -this.tb.items.each(function(item){if(item.getItemId()!='sourceedit'){item.setDisabled(disabled);}});},onResize:function(w,h){Ext.form.HtmlEditor.superclass.onResize.apply(this,arguments);if(this.el&&this.iframe){if(Ext.isNumber(w)){var aw=w-this.wrap.getFrameWidth('lr');this.el.setWidth(aw);this.tb.setWidth(aw);this.iframe.style.width=Math.max(aw,0)+'px';} -if(Ext.isNumber(h)){var ah=h-this.wrap.getFrameWidth('tb')-this.tb.el.getHeight();this.el.setHeight(ah);this.iframe.style.height=Math.max(ah,0)+'px';var bd=this.getEditorBody();if(bd){bd.style.height=Math.max((ah-(this.iframePad*2)),0)+'px';}}}},toggleSourceEdit:function(sourceEditMode){var iframeHeight,elHeight;if(sourceEditMode===undefined){sourceEditMode=!this.sourceEditMode;} -this.sourceEditMode=sourceEditMode===true;var btn=this.tb.getComponent('sourceedit');if(btn.pressed!==this.sourceEditMode){btn.toggle(this.sourceEditMode);if(!btn.xtbHidden){return;}} -if(this.sourceEditMode){this.previousSize=this.getSize();iframeHeight=Ext.get(this.iframe).getHeight();this.disableItems(true);this.syncValue();this.iframe.className='x-hidden';this.el.removeClass('x-hidden');this.el.dom.removeAttribute('tabIndex');this.el.focus();this.el.dom.style.height=iframeHeight+'px';} -else{elHeight=parseInt(this.el.dom.style.height,10);if(this.initialized){this.disableItems(this.readOnly);} -this.pushValue();this.iframe.className='';this.el.addClass('x-hidden');this.el.dom.setAttribute('tabIndex',-1);this.deferFocus();this.setSize(this.previousSize);delete this.previousSize;this.iframe.style.height=elHeight+'px';} -this.fireEvent('editmodechange',this,this.sourceEditMode);},createLink:function(){var url=prompt(this.createLinkText,this.defaultLinkValue);if(url&&url!='http:/'+'/'){this.relayCmd('createlink',url);}},initEvents:function(){this.originalValue=this.getValue();},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,setValue:function(v){Ext.form.HtmlEditor.superclass.setValue.call(this,v);this.pushValue();return this;},cleanHtml:function(html){html=String(html);if(Ext.isWebKit){html=html.replace(/\sclass="(?:Apple-style-span|khtml-block-placeholder)"/gi,'');} -if(html.charCodeAt(0)==this.defaultValue.replace(/\D/g,'')){html=html.substring(1);} -return html;},syncValue:function(){if(this.initialized){var bd=this.getEditorBody();var html=bd.innerHTML;if(Ext.isWebKit){var bs=bd.getAttribute('style');var m=bs.match(/text-align:(.*?);/i);if(m&&m[1]){html='<div style="'+m[0]+'">'+html+'</div>';}} -html=this.cleanHtml(html);if(this.fireEvent('beforesync',this,html)!==false){this.el.dom.value=html;this.fireEvent('sync',this,html);}}},getValue:function(){this[this.sourceEditMode?'pushValue':'syncValue']();return Ext.form.HtmlEditor.superclass.getValue.call(this);},pushValue:function(){if(this.initialized){var v=this.el.dom.value;if(!this.activated&&v.length<1){v=this.defaultValue;} -if(this.fireEvent('beforepush',this,v)!==false){this.getEditorBody().innerHTML=v;if(Ext.isGecko){this.setDesignMode(false);this.setDesignMode(true);} -this.fireEvent('push',this,v);}}},deferFocus:function(){this.focus.defer(10,this);},focus:function(){if(this.win&&!this.sourceEditMode){this.win.focus();}else{this.el.focus();}},initEditor:function(){try{var dbody=this.getEditorBody(),ss=this.el.getStyles('font-size','font-family','background-image','background-repeat','background-color','color'),doc,fn;ss['background-attachment']='fixed';dbody.bgProperties='fixed';Ext.DomHelper.applyStyles(dbody,ss);doc=this.getDoc();if(doc){try{Ext.EventManager.removeAll(doc);}catch(e){}} -fn=this.onEditorEvent.createDelegate(this);Ext.EventManager.on(doc,{mousedown:fn,dblclick:fn,click:fn,keyup:fn,buffer:100});if(Ext.isGecko){Ext.EventManager.on(doc,'keypress',this.applyCommand,this);} -if(Ext.isIE||Ext.isWebKit||Ext.isOpera){Ext.EventManager.on(doc,'keydown',this.fixKeys,this);} -doc.editorInitialized=true;this.initialized=true;this.pushValue();this.setReadOnly(this.readOnly);this.fireEvent('initialize',this);}catch(e){}},beforeDestroy:function(){if(this.monitorTask){Ext.TaskMgr.stop(this.monitorTask);} -if(this.rendered){Ext.destroy(this.tb);var doc=this.getDoc();if(doc){try{Ext.EventManager.removeAll(doc);for(var prop in doc){delete doc[prop];}}catch(e){}} -if(this.wrap){this.wrap.dom.innerHTML='';this.wrap.remove();}} -Ext.form.HtmlEditor.superclass.beforeDestroy.call(this);},onFirstFocus:function(){this.activated=true;this.disableItems(this.readOnly);if(Ext.isGecko){this.win.focus();var s=this.win.getSelection();if(!s.focusNode||s.focusNode.nodeType!=3){var r=s.getRangeAt(0);r.selectNodeContents(this.getEditorBody());r.collapse(true);this.deferFocus();} -try{this.execCmd('useCSS',true);this.execCmd('styleWithCSS',false);}catch(e){}} -this.fireEvent('activate',this);},adjustFont:function(btn){var adjust=btn.getItemId()=='increasefontsize'?1:-1,doc=this.getDoc(),v=parseInt(doc.queryCommandValue('FontSize')||2,10);if((Ext.isSafari&&!Ext.isSafari2)||Ext.isChrome||Ext.isAir){if(v<=10){v=1+adjust;}else if(v<=13){v=2+adjust;}else if(v<=16){v=3+adjust;}else if(v<=18){v=4+adjust;}else if(v<=24){v=5+adjust;}else{v=6+adjust;} -v=v.constrain(1,6);}else{if(Ext.isSafari){adjust*=2;} -v=Math.max(1,v+adjust)+(Ext.isSafari?'px':0);} -this.execCmd('FontSize',v);},onEditorEvent:function(e){this.updateToolbar();},updateToolbar:function(){if(this.readOnly){return;} -if(!this.activated){this.onFirstFocus();return;} -var btns=this.tb.items.map,doc=this.getDoc();if(this.enableFont&&!Ext.isSafari2){var name=(doc.queryCommandValue('FontName')||this.defaultFont).toLowerCase();if(name!=this.fontSelect.dom.value){this.fontSelect.dom.value=name;}} -if(this.enableFormat){btns.bold.toggle(doc.queryCommandState('bold'));btns.italic.toggle(doc.queryCommandState('italic'));btns.underline.toggle(doc.queryCommandState('underline'));} -if(this.enableAlignments){btns.justifyleft.toggle(doc.queryCommandState('justifyleft'));btns.justifycenter.toggle(doc.queryCommandState('justifycenter'));btns.justifyright.toggle(doc.queryCommandState('justifyright'));} -if(!Ext.isSafari2&&this.enableLists){btns.insertorderedlist.toggle(doc.queryCommandState('insertorderedlist'));btns.insertunorderedlist.toggle(doc.queryCommandState('insertunorderedlist'));} -Ext.menu.MenuMgr.hideAll();this.syncValue();},relayBtnCmd:function(btn){this.relayCmd(btn.getItemId());},relayCmd:function(cmd,value){(function(){this.focus();this.execCmd(cmd,value);this.updateToolbar();}).defer(10,this);},execCmd:function(cmd,value){var doc=this.getDoc();doc.execCommand(cmd,false,value===undefined?null:value);this.syncValue();},applyCommand:function(e){if(e.ctrlKey){var c=e.getCharCode(),cmd;if(c>0){c=String.fromCharCode(c);switch(c){case'b':cmd='bold';break;case'i':cmd='italic';break;case'u':cmd='underline';break;} -if(cmd){this.win.focus();this.execCmd(cmd);this.deferFocus();e.preventDefault();}}}},insertAtCursor:function(text){if(!this.activated){return;} -if(Ext.isIE){this.win.focus();var doc=this.getDoc(),r=doc.selection.createRange();if(r){r.pasteHTML(text);this.syncValue();this.deferFocus();}}else{this.win.focus();this.execCmd('InsertHTML',text);this.deferFocus();}},fixKeys:function(){if(Ext.isIE){return function(e){var k=e.getKey(),doc=this.getDoc(),r;if(k==e.TAB){e.stopEvent();r=doc.selection.createRange();if(r){r.collapse(true);r.pasteHTML(' ');this.deferFocus();}}else if(k==e.ENTER){r=doc.selection.createRange();if(r){var target=r.parentElement();if(!target||target.tagName.toLowerCase()!='li'){e.stopEvent();r.pasteHTML('<br />');r.collapse(false);r.select();}}}};}else if(Ext.isOpera){return function(e){var k=e.getKey();if(k==e.TAB){e.stopEvent();this.win.focus();this.execCmd('InsertHTML',' ');this.deferFocus();}};}else if(Ext.isWebKit){return function(e){var k=e.getKey();if(k==e.TAB){e.stopEvent();this.execCmd('InsertText','\t');this.deferFocus();}else if(k==e.ENTER){e.stopEvent();this.execCmd('InsertHtml','<br /><br />');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:undefined,maxValue:undefined,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|gi a|hi a|giA|hiA|gi A|hi A",increment:15,mode:'local',triggerAction:'all',typeAhead:false,initDate:'1/1/2008',initDateFormat:'j/n/Y',initComponent:function(){if(Ext.isDefined(this.minValue)){this.setMinValue(this.minValue,true);} -if(Ext.isDefined(this.maxValue)){this.setMaxValue(this.maxValue,true);} -if(!this.store){this.generateStore(true);} -Ext.form.TimeField.superclass.initComponent.call(this);},setMinValue:function(value,initial){this.setLimit(value,true,initial);return this;},setMaxValue:function(value,initial){this.setLimit(value,false,initial);return this;},generateStore:function(initial){var min=this.minValue||new Date(this.initDate).clearTime(),max=this.maxValue||new Date(this.initDate).clearTime().add('mi',(24*60)-1),times=[];while(min<=max){times.push(min.dateFormat(this.format));min=min.add('mi',this.increment);} -this.bindStore(times,initial);},setLimit:function(value,isMin,initial){var d;if(Ext.isString(value)){d=this.parseDate(value);}else if(Ext.isDate(value)){d=value;} -if(d){var val=new Date(this.initDate).clearTime();val.setHours(d.getHours(),d.getMinutes(),d.getSeconds(),d.getMilliseconds());this[isMin?'minValue':'maxValue']=val;if(!initial){this.generateStore();}}},getValue:function(){var v=Ext.form.TimeField.superclass.getValue.call(this);return this.formatDate(this.parseDate(v))||'';},setValue:function(value){return Ext.form.TimeField.superclass.setValue.call(this,this.formatDate(this.parseDate(value)));},validateValue:Ext.form.DateField.prototype.validateValue,formatDate:Ext.form.DateField.prototype.formatDate,parseDate:function(value){if(!value||Ext.isDate(value)){return value;} -var id=this.initDate+' ',idf=this.initDateFormat+' ',v=Date.parseDate(id+value,idf+this.format),af=this.altFormats;if(!v&&af){if(!this.altFormatsArray){this.altFormatsArray=af.split("|");} -for(var i=0,afa=this.altFormatsArray,len=afa.length;i<len&&!v;i++){v=Date.parseDate(id+value,idf+afa[i]);}} -return v;}});Ext.reg('timefield',Ext.form.TimeField);Ext.form.SliderField=Ext.extend(Ext.form.Field,{useTips:true,tipText:null,actionMode:'wrap',initComponent:function(){var cfg=Ext.copyTo({id:this.id+'-slider'},this.initialConfig,['vertical','minValue','maxValue','decimalPrecision','keyIncrement','increment','clickToChange','animate']);if(this.useTips){var plug=this.tipText?{getText:this.tipText}:{};cfg.plugins=[new Ext.slider.Tip(plug)];} -this.slider=new Ext.Slider(cfg);Ext.form.SliderField.superclass.initComponent.call(this);},onRender:function(ct,position){this.autoCreate={id:this.id,name:this.name,type:'hidden',tag:'input'};Ext.form.SliderField.superclass.onRender.call(this,ct,position);this.wrap=this.el.wrap({cls:'x-form-field-wrap'});this.resizeEl=this.positionEl=this.wrap;this.slider.render(this.wrap);},onResize:function(w,h,aw,ah){Ext.form.SliderField.superclass.onResize.call(this,w,h,aw,ah);this.slider.setSize(w,h);},initEvents:function(){Ext.form.SliderField.superclass.initEvents.call(this);this.slider.on('change',this.onChange,this);},onChange:function(slider,v){this.setValue(v,undefined,true);},onEnable:function(){Ext.form.SliderField.superclass.onEnable.call(this);this.slider.enable();},onDisable:function(){Ext.form.SliderField.superclass.onDisable.call(this);this.slider.disable();},beforeDestroy:function(){Ext.destroy(this.slider);Ext.form.SliderField.superclass.beforeDestroy.call(this);},alignErrorIcon:function(){this.errorIcon.alignTo(this.slider.el,'tl-tr',[2,0]);},setMinValue:function(v){this.slider.setMinValue(v);return this;},setMaxValue:function(v){this.slider.setMaxValue(v);return this;},setValue:function(v,animate,silent){if(!silent){this.slider.setValue(v,animate);} -return Ext.form.SliderField.superclass.setValue.call(this,this.slider.getValue());},getValue:function(){return this.slider.getValue();}});Ext.reg('sliderfield',Ext.form.SliderField);Ext.form.Label=Ext.extend(Ext.BoxComponent,{onRender:function(ct,position){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,ct,position);},setText:function(t,encode){var e=encode===false;this[!e?'text':'html']=t;delete this[e?'text':'html'];if(this.rendered){this.el.dom.innerHTML=encode!==false?Ext.util.Format.htmlEncode(t):t;} -return this;}});Ext.reg('label',Ext.form.Label);Ext.form.Action=function(form,options){this.form=form;this.options=options||{};};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(options){},success:function(response){},handleResponse:function(response){},failure:function(response){this.response=response;this.failureType=Ext.form.Action.CONNECT_FAILURE;this.form.afterAction(this,false);},processResponse:function(response){this.response=response;if(!response.responseText&&!response.responseXML){return true;} -this.result=this.handleResponse(response);return this.result;},getUrl:function(appendParams){var url=this.options.url||this.form.url||this.form.el.dom.action;if(appendParams){var p=this.getParams();if(p){url=Ext.urlAppend(url,p);}} -return url;},getMethod:function(){return(this.options.method||this.form.method||this.form.el.dom.method||'POST').toUpperCase();},getParams:function(){var bp=this.form.baseParams;var p=this.options.params;if(p){if(typeof p=="object"){p=Ext.urlEncode(Ext.applyIf(p,bp));}else if(typeof p=='string'&&bp){p+='&'+Ext.urlEncode(bp);}}else if(bp){p=Ext.urlEncode(bp);} -return p;},createCallback:function(opts){var opts=opts||{};return{success:this.success,failure:this.failure,scope:this,timeout:(opts.timeout*1000)||(this.form.timeout*1000),upload:this.form.fileUpload?this.success:undefined};}};Ext.form.Action.Submit=function(form,options){Ext.form.Action.Submit.superclass.constructor.call(this,form,options);};Ext.extend(Ext.form.Action.Submit,Ext.form.Action,{type:'submit',run:function(){var o=this.options,method=this.getMethod(),isGet=method=='GET';if(o.clientValidation===false||this.form.isValid()){if(o.submitEmptyText===false){var fields=this.form.items,emptyFields=[],setupEmptyFields=function(f){if(f.el.getValue()==f.emptyText){emptyFields.push(f);f.el.dom.value="";} -if(f.isComposite&&f.rendered){f.items.each(setupEmptyFields);}};fields.each(setupEmptyFields);} -Ext.Ajax.request(Ext.apply(this.createCallback(o),{form:this.form.el.dom,url:this.getUrl(isGet),method:method,headers:o.headers,params:!isGet?this.getParams():null,isUpload:this.form.fileUpload}));if(o.submitEmptyText===false){Ext.each(emptyFields,function(f){if(f.applyEmptyText){f.applyEmptyText();}});}}else if(o.clientValidation!==false){this.failureType=Ext.form.Action.CLIENT_INVALID;this.form.afterAction(this,false);}},success:function(response){var result=this.processResponse(response);if(result===true||result.success){this.form.afterAction(this,true);return;} -if(result.errors){this.form.markInvalid(result.errors);} -this.failureType=Ext.form.Action.SERVER_INVALID;this.form.afterAction(this,false);},handleResponse:function(response){if(this.form.errorReader){var rs=this.form.errorReader.read(response);var errors=[];if(rs.records){for(var i=0,len=rs.records.length;i<len;i++){var r=rs.records[i];errors[i]=r.data;}} -if(errors.length<1){errors=null;} -return{success:rs.success,errors:errors};} -return Ext.decode(response.responseText);}});Ext.form.Action.Load=function(form,options){Ext.form.Action.Load.superclass.constructor.call(this,form,options);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(response){var result=this.processResponse(response);if(result===true||!result.success||!result.data){this.failureType=Ext.form.Action.LOAD_FAILURE;this.form.afterAction(this,false);return;} -this.form.clearInvalid();this.form.setValues(result.data);this.form.afterAction(this,true);},handleResponse:function(response){if(this.form.reader){var rs=this.form.reader.read(response);var data=rs.records&&rs.records[0]?rs.records[0].data:null;return{success:rs.success,data:data};} -return Ext.decode(response.responseText);}});Ext.form.Action.DirectLoad=Ext.extend(Ext.form.Action.Load,{constructor:function(form,opts){Ext.form.Action.DirectLoad.superclass.constructor.call(this,form,opts);},type:'directload',run:function(){var args=this.getParams();args.push(this.success,this);this.form.api.load.apply(window,args);},getParams:function(){var buf=[],o={};var bp=this.form.baseParams;var p=this.options.params;Ext.apply(o,p,bp);var paramOrder=this.form.paramOrder;if(paramOrder){for(var i=0,len=paramOrder.length;i<len;i++){buf.push(o[paramOrder[i]]);}}else if(this.form.paramsAsHash){buf.push(o);} -return buf;},processResponse:function(result){this.result=result;return result;},success:function(response,trans){if(trans.type==Ext.Direct.exceptions.SERVER){response={};} -Ext.form.Action.DirectLoad.superclass.success.call(this,response);}});Ext.form.Action.DirectSubmit=Ext.extend(Ext.form.Action.Submit,{constructor:function(form,opts){Ext.form.Action.DirectSubmit.superclass.constructor.call(this,form,opts);},type:'directsubmit',run:function(){var o=this.options;if(o.clientValidation===false||this.form.isValid()){this.success.params=this.getParams();this.form.api.submit(this.form.el.dom,this.success,this);}else if(o.clientValidation!==false){this.failureType=Ext.form.Action.CLIENT_INVALID;this.form.afterAction(this,false);}},getParams:function(){var o={};var bp=this.form.baseParams;var p=this.options.params;Ext.apply(o,p,bp);return o;},processResponse:function(result){this.result=result;return result;},success:function(response,trans){if(trans.type==Ext.Direct.exceptions.SERVER){response={};} -Ext.form.Action.DirectSubmit.superclass.success.call(this,response);}});Ext.form.Action.ACTION_TYPES={'load':Ext.form.Action.Load,'submit':Ext.form.Action.Submit,'directload':Ext.form.Action.DirectLoad,'directsubmit':Ext.form.Action.DirectSubmit};Ext.form.VTypes=function(){var alpha=/^[a-zA-Z_]+$/,alphanum=/^[a-zA-Z0-9_]+$/,email=/^(\w+)([\-+.][\w]+)*@(\w[\-\w]*\.){1,5}([A-Za-z]){2,6}$/,url=/(((^https?)|(^ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i;return{'email':function(v){return email.test(v);},'emailText':'This field should be an e-mail address in the format "user@example.com"','emailMask':/[a-z0-9_\.\-@\+]/i,'url':function(v){return url.test(v);},'urlText':'This field should be a URL in the format "http:/'+'/www.example.com"','alpha':function(v){return alpha.test(v);},'alphaText':'This field should only contain letters and _','alphaMask':/[a-z_]/i,'alphanum':function(v){return alphanum.test(v);},'alphanumText':'This field should only contain letters, numbers and _','alphanumMask':/[a-z0-9_]/i};}();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(){if(this.menu){this.menu=Ext.menu.MenuMgr.get(this.menu);this.menu.ownerCt=this;} -Ext.Button.superclass.initComponent.call(this);this.addEvents('click','toggle','mouseover','mouseout','menushow','menuhide','menutriggerover','menutriggerout');if(this.menu){this.menu.ownerCt=undefined;} -if(Ext.isString(this.toggleGroup)){this.enableToggle=true;}},getTemplateArgs:function(){return[this.type,'x-btn-'+this.scale+' x-btn-icon-'+this.scale+'-'+this.iconAlign,this.getMenuClass(),this.cls,this.id];},setButtonClass:function(){if(this.useSetClass){if(!Ext.isEmpty(this.oldCls)){this.el.removeClass([this.oldCls,'x-btn-pressed']);} -this.oldCls=(this.iconCls||this.icon)?(this.text?'x-btn-text-icon':'x-btn-icon'):'x-btn-noicon';this.el.addClass([this.oldCls,this.pressed?'x-btn-pressed':null]);}},getMenuClass:function(){return this.menu?(this.arrowAlign!='bottom'?'x-btn-arrow':'x-btn-arrow-bottom'):'';},onRender:function(ct,position){if(!this.template){if(!Ext.Button.buttonTemplate){Ext.Button.buttonTemplate=new Ext.Template('<table id="{4}" cellspacing="0" class="x-btn {3}"><tbody class="{1}">','<tr><td class="x-btn-tl"><i> </i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i> </i></td></tr>','<tr><td class="x-btn-ml"><i> </i></td><td class="x-btn-mc"><em class="{2}" unselectable="on"><button type="{0}"></button></em></td><td class="x-btn-mr"><i> </i></td></tr>','<tr><td class="x-btn-bl"><i> </i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i> </i></td></tr>','</tbody></table>');Ext.Button.buttonTemplate.compile();} -this.template=Ext.Button.buttonTemplate;} -var btn,targs=this.getTemplateArgs();if(position){btn=this.template.insertBefore(position,targs,true);}else{btn=this.template.append(ct,targs,true);} -this.btnEl=btn.child(this.buttonSelector);this.mon(this.btnEl,{scope:this,focus:this.onFocus,blur:this.onBlur});this.initButtonEl(btn,this.btnEl);Ext.ButtonToggleMgr.register(this);},initButtonEl:function(btn,btnEl){this.el=btn;this.setIcon(this.icon);this.setText(this.text);this.setIconClass(this.iconCls);if(Ext.isDefined(this.tabIndex)){btnEl.dom.tabIndex=this.tabIndex;} -if(this.tooltip){this.setTooltip(this.tooltip,true);} -if(this.handleMouseEvents){this.mon(btn,{scope:this,mouseover:this.onMouseOver,mousedown:this.onMouseDown});} -if(this.menu){this.mon(this.menu,{scope:this,show:this.onMenuShow,hide:this.onMenuHide});} -if(this.repeat){var repeater=new Ext.util.ClickRepeater(btn,Ext.isObject(this.repeat)?this.repeat:{});this.mon(repeater,'click',this.onRepeatClick,this);}else{this.mon(btn,this.clickEvent,this.onClick,this);}},afterRender:function(){Ext.Button.superclass.afterRender.call(this);this.useSetClass=true;this.setButtonClass();this.doc=Ext.getDoc();this.doAutoWidth();},setIconClass:function(cls){this.iconCls=cls;if(this.el){this.btnEl.dom.className='';this.btnEl.addClass(['x-btn-text',cls||'']);this.setButtonClass();} -return this;},setTooltip:function(tooltip,initial){if(this.rendered){if(!initial){this.clearTip();} -if(Ext.isObject(tooltip)){Ext.QuickTips.register(Ext.apply({target:this.btnEl.id},tooltip));this.tooltip=tooltip;}else{this.btnEl.dom[this.tooltipType]=tooltip;}}else{this.tooltip=tooltip;} -return this;},clearTip:function(){if(Ext.isObject(this.tooltip)){Ext.QuickTips.unregister(this.btnEl);}},beforeDestroy:function(){if(this.rendered){this.clearTip();} -if(this.menu&&this.destroyMenu!==false){Ext.destroy(this.btnEl,this.menu);} -Ext.destroy(this.repeater);},onDestroy:function(){if(this.rendered){this.doc.un('mouseover',this.monitorMouseOver,this);this.doc.un('mouseup',this.onMouseUp,this);delete this.doc;delete this.btnEl;Ext.ButtonToggleMgr.unregister(this);} -Ext.Button.superclass.onDestroy.call(this);},doAutoWidth:function(){if(this.autoWidth!==false&&this.el&&this.text&&this.width===undefined){this.el.setWidth('auto');if(Ext.isIE7&&Ext.isStrict){var ib=this.btnEl;if(ib&&ib.getWidth()>20){ib.clip();ib.setWidth(Ext.util.TextMetrics.measure(ib,this.text).width+ib.getFrameWidth('lr'));}} -if(this.minWidth){if(this.el.getWidth()<this.minWidth){this.el.setWidth(this.minWidth);}}}},setHandler:function(handler,scope){this.handler=handler;this.scope=scope;return this;},setText:function(text){this.text=text;if(this.el){this.btnEl.update(text||' ');this.setButtonClass();} -this.doAutoWidth();return this;},setIcon:function(icon){this.icon=icon;if(this.el){this.btnEl.setStyle('background-image',icon?'url('+icon+')':'');this.setButtonClass();} -return this;},getText:function(){return this.text;},toggle:function(state,suppressEvent){state=state===undefined?!this.pressed:!!state;if(state!=this.pressed){if(this.rendered){this.el[state?'addClass':'removeClass']('x-btn-pressed');} -this.pressed=state;if(!suppressEvent){this.fireEvent('toggle',this,state);if(this.toggleHandler){this.toggleHandler.call(this.scope||this,this,state);}}} -return this;},onDisable:function(){this.onDisableChange(true);},onEnable:function(){this.onDisableChange(false);},onDisableChange:function(disabled){if(this.el){if(!Ext.isIE6||!this.text){this.el[disabled?'addClass':'removeClass'](this.disabledClass);} -this.el.dom.disabled=disabled;} -this.disabled=disabled;},showMenu:function(){if(this.rendered&&this.menu){if(this.tooltip){Ext.QuickTips.getQuickTip().cancelShow(this.btnEl);} -if(this.menu.isVisible()){this.menu.hide();} -this.menu.ownerCt=this;this.menu.show(this.el,this.menuAlign);} -return this;},hideMenu:function(){if(this.hasVisibleMenu()){this.menu.hide();} -return this;},hasVisibleMenu:function(){return this.menu&&this.menu.ownerCt==this&&this.menu.isVisible();},onRepeatClick:function(repeat,e){this.onClick(e);},onClick:function(e){if(e){e.preventDefault();} -if(e.button!==0){return;} -if(!this.disabled){this.doToggle();if(this.menu&&!this.hasVisibleMenu()&&!this.ignoreNextClick){this.showMenu();} -this.fireEvent('click',this,e);if(this.handler){this.handler.call(this.scope||this,this,e);}}},doToggle:function(){if(this.enableToggle&&(this.allowDepress!==false||!this.pressed)){this.toggle();}},isMenuTriggerOver:function(e,internal){return this.menu&&!internal;},isMenuTriggerOut:function(e,internal){return this.menu&&!internal;},onMouseOver:function(e){if(!this.disabled){var internal=e.within(this.el,true);if(!internal){this.el.addClass('x-btn-over');if(!this.monitoringMouseOver){this.doc.on('mouseover',this.monitorMouseOver,this);this.monitoringMouseOver=true;} -this.fireEvent('mouseover',this,e);} -if(this.isMenuTriggerOver(e,internal)){this.fireEvent('menutriggerover',this,this.menu,e);}}},monitorMouseOver:function(e){if(e.target!=this.el.dom&&!e.within(this.el)){if(this.monitoringMouseOver){this.doc.un('mouseover',this.monitorMouseOver,this);this.monitoringMouseOver=false;} -this.onMouseOut(e);}},onMouseOut:function(e){var internal=e.within(this.el)&&e.target!=this.el.dom;this.el.removeClass('x-btn-over');this.fireEvent('mouseout',this,e);if(this.isMenuTriggerOut(e,internal)){this.fireEvent('menutriggerout',this,this.menu,e);}},focus:function(){this.btnEl.focus();},blur:function(){this.btnEl.blur();},onFocus:function(e){if(!this.disabled){this.el.addClass('x-btn-focus');}},onBlur:function(e){this.el.removeClass('x-btn-focus');},getClickEl:function(e,isUp){return this.el;},onMouseDown:function(e){if(!this.disabled&&e.button===0){this.getClickEl(e).addClass('x-btn-click');this.doc.on('mouseup',this.onMouseUp,this);}},onMouseUp:function(e){if(e.button===0){this.getClickEl(e,true).removeClass('x-btn-click');this.doc.un('mouseup',this.onMouseUp,this);}},onMenuShow:function(e){if(this.menu.ownerCt==this){this.menu.ownerCt=this;this.ignoreNextClick=0;this.el.addClass('x-btn-menu-active');this.fireEvent('menushow',this,this.menu);}},onMenuHide:function(e){if(this.menu.ownerCt==this){this.el.removeClass('x-btn-menu-active');this.ignoreNextClick=this.restoreClick.defer(250,this);this.fireEvent('menuhide',this,this.menu);delete this.menu.ownerCt;}},restoreClick:function(){this.ignoreNextClick=0;}});Ext.reg('button',Ext.Button);Ext.ButtonToggleMgr=function(){var groups={};function toggleGroup(btn,state){if(state){var g=groups[btn.toggleGroup];for(var i=0,l=g.length;i<l;i++){if(g[i]!=btn){g[i].toggle(false);}}}} -return{register:function(btn){if(!btn.toggleGroup){return;} -var g=groups[btn.toggleGroup];if(!g){g=groups[btn.toggleGroup]=[];} -g.push(btn);btn.on('toggle',toggleGroup);},unregister:function(btn){if(!btn.toggleGroup){return;} -var g=groups[btn.toggleGroup];if(g){g.remove(btn);btn.un('toggle',toggleGroup);}},getPressed:function(group){var g=groups[group];if(g){for(var i=0,len=g.length;i<len;i++){if(g[i].pressed===true){return g[i];}}} -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){this.el.child(this.arrowSelector).dom[this.tooltipType]=this.arrowTooltip;}},setArrowHandler:function(handler,scope){this.arrowHandler=handler;this.scope=scope;},getMenuClass:function(){return'x-btn-split'+(this.arrowAlign=='bottom'?'-bottom':'');},isClickOnArrow:function(e){if(this.arrowAlign!='bottom'){var visBtn=this.el.child('em.x-btn-split');var right=visBtn.getRegion().right-visBtn.getPadding('r');return e.getPageX()>right;}else{return e.getPageY()>this.btnEl.getRegion().bottom;}},onClick:function(e,t){e.preventDefault();if(!this.disabled){if(this.isClickOnArrow(e)){if(this.menu&&!this.menu.isVisible()&&!this.ignoreNextClick){this.showMenu();} -this.fireEvent("arrowclick",this,e);if(this.arrowHandler){this.arrowHandler.call(this.scope||this,this,e);}}else{this.doToggle();this.fireEvent("click",this,e);if(this.handler){this.handler.call(this.scope||this,this,e);}}}},isMenuTriggerOver:function(e){return this.menu&&e.target.tagName==this.arrowSelector;},isMenuTriggerOut:function(e,internal){return this.menu&&e.target.tagName!=this.arrowSelector;}});Ext.reg('splitbutton',Ext.SplitButton);Ext.CycleButton=Ext.extend(Ext.SplitButton,{getItemText:function(item){if(item&&this.showText===true){var text='';if(this.prependText){text+=this.prependText;} -text+=item.text;return text;} -return undefined;},setActiveItem:function(item,suppressEvent){if(!Ext.isObject(item)){item=this.menu.getComponent(item);} -if(item){if(!this.rendered){this.text=this.getItemText(item);this.iconCls=item.iconCls;}else{var t=this.getItemText(item);if(t){this.setText(t);} -this.setIconClass(item.iconCls);} -this.activeItem=item;if(!item.checked){item.setChecked(true,false);} -if(this.forceIcon){this.setIconClass(this.forceIcon);} -if(!suppressEvent){this.fireEvent('change',this,item);}}},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 checked=0;Ext.each(this.items,function(item,i){Ext.apply(item,{group:item.group||this.id,itemIndex:i,checkHandler:this.checkHandler,scope:this,checked:item.checked||false});this.menu.items.push(item);if(item.checked){checked=i;}},this);Ext.CycleButton.superclass.initComponent.call(this);this.on('click',this.toggleSelected,this);this.setActiveItem(checked,true);},checkHandler:function(item,pressed){if(pressed){this.setActiveItem(item);}},toggleSelected:function(){var m=this.menu;m.render();if(!m.hasLayout){m.doLayout();} -var nextIdx,checkItem;for(var i=1;i<this.itemCount;i++){nextIdx=(this.activeItem.itemIndex+i)%this.itemCount;checkItem=m.items.itemAt(nextIdx);if(!checkItem.disabled){checkItem.setChecked(true);break;}}}});Ext.reg('cycle',Ext.CycleButton);(function(){var Event=Ext.EventManager;var Dom=Ext.lib.Dom;Ext.dd.DragDrop=function(id,sGroup,config){if(id){this.init(id,sGroup,config);}};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(x,y){},startDrag:function(x,y){},b4Drag:function(e){},onDrag:function(e){},onDragEnter:function(e,id){},b4DragOver:function(e){},onDragOver:function(e,id){},b4DragOut:function(e){},onDragOut:function(e,id){},b4DragDrop:function(e){},onDragDrop:function(e,id){},onInvalidDrop:function(e){},b4EndDrag:function(e){},endDrag:function(e){},b4MouseDown:function(e){},onMouseDown:function(e){},onMouseUp:function(e){},onAvailable:function(){},defaultPadding:{left:0,right:0,top:0,bottom:0},constrainTo:function(constrainTo,pad,inContent){if(Ext.isNumber(pad)){pad={left:pad,right:pad,top:pad,bottom:pad};} -pad=pad||this.defaultPadding;var b=Ext.get(this.getEl()).getBox(),ce=Ext.get(constrainTo),s=ce.getScroll(),c,cd=ce.dom;if(cd==document.body){c={x:s.left,y:s.top,width:Ext.lib.Dom.getViewWidth(),height:Ext.lib.Dom.getViewHeight()};}else{var xy=ce.getXY();c={x:xy[0],y:xy[1],width:cd.clientWidth,height:cd.clientHeight};} -var topSpace=b.y-c.y,leftSpace=b.x-c.x;this.resetConstraints();this.setXConstraint(leftSpace-(pad.left||0),c.width-leftSpace-b.width-(pad.right||0),this.xTickSize);this.setYConstraint(topSpace-(pad.top||0),c.height-topSpace-b.height-(pad.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(id,sGroup,config){this.initTarget(id,sGroup,config);Event.on(this.id,"mousedown",this.handleMouseDown,this);},initTarget:function(id,sGroup,config){this.config=config||{};this.DDM=Ext.dd.DDM;this.groups={};if(typeof id!=="string"){id=Ext.id(id);} -this.id=id;this.addToGroup((sGroup)?sGroup:"default");this.handleElId=id;this.setDragElId(id);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(iTop,iRight,iBot,iLeft){if(!iRight&&0!==iRight){this.padding=[iTop,iTop,iTop,iTop];}else if(!iBot&&0!==iBot){this.padding=[iTop,iRight,iTop,iRight];}else{this.padding=[iTop,iRight,iBot,iLeft];}},setInitPosition:function(diffX,diffY){var el=this.getEl();if(!this.DDM.verifyEl(el)){return;} -var dx=diffX||0;var dy=diffY||0;var p=Dom.getXY(el);this.initPageX=p[0]-dx;this.initPageY=p[1]-dy;this.lastPageX=p[0];this.lastPageY=p[1];this.setStartPosition(p);},setStartPosition:function(pos){var p=pos||Dom.getXY(this.getEl());this.deltaSetXY=null;this.startPageX=p[0];this.startPageY=p[1];},addToGroup:function(sGroup){this.groups[sGroup]=true;this.DDM.regDragDrop(this,sGroup);},removeFromGroup:function(sGroup){if(this.groups[sGroup]){delete this.groups[sGroup];} -this.DDM.removeDDFromGroup(this,sGroup);},setDragElId:function(id){this.dragElId=id;},setHandleElId:function(id){if(typeof id!=="string"){id=Ext.id(id);} -this.handleElId=id;this.DDM.regHandle(this.id,id);},setOuterHandleElId:function(id){if(typeof id!=="string"){id=Ext.id(id);} -Event.on(id,"mousedown",this.handleMouseDown,this);this.setHandleElId(id);this.hasOuterHandles=true;},unreg:function(){Event.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(e,oDD){if(this.primaryButtonOnly&&e.button!=0){return;} -if(this.isLocked()){return;} -this.DDM.refreshCache(this.groups);var pt=new Ext.lib.Point(Ext.lib.Event.getPageX(e),Ext.lib.Event.getPageY(e));if(!this.hasOuterHandles&&!this.DDM.isOverTarget(pt,this)){}else{if(this.clickValidator(e)){this.setStartPosition();this.b4MouseDown(e);this.onMouseDown(e);this.DDM.handleMouseDown(e,this);this.DDM.stopEvent(e);}else{}}},clickValidator:function(e){var target=e.getTarget();return(this.isValidHandleChild(target)&&(this.id==this.handleElId||this.DDM.handleWasClicked(target,this.id)));},addInvalidHandleType:function(tagName){var type=tagName.toUpperCase();this.invalidHandleTypes[type]=type;},addInvalidHandleId:function(id){if(typeof id!=="string"){id=Ext.id(id);} -this.invalidHandleIds[id]=id;},addInvalidHandleClass:function(cssClass){this.invalidHandleClasses.push(cssClass);},removeInvalidHandleType:function(tagName){var type=tagName.toUpperCase();delete this.invalidHandleTypes[type];},removeInvalidHandleId:function(id){if(typeof id!=="string"){id=Ext.id(id);} -delete this.invalidHandleIds[id];},removeInvalidHandleClass:function(cssClass){for(var i=0,len=this.invalidHandleClasses.length;i<len;++i){if(this.invalidHandleClasses[i]==cssClass){delete this.invalidHandleClasses[i];}}},isValidHandleChild:function(node){var valid=true;var nodeName;try{nodeName=node.nodeName.toUpperCase();}catch(e){nodeName=node.nodeName;} -valid=valid&&!this.invalidHandleTypes[nodeName];valid=valid&&!this.invalidHandleIds[node.id];for(var i=0,len=this.invalidHandleClasses.length;valid&&i<len;++i){valid=!Ext.fly(node).hasClass(this.invalidHandleClasses[i]);} -return valid;},setXTicks:function(iStartX,iTickSize){this.xTicks=[];this.xTickSize=iTickSize;var tickMap={};for(var i=this.initPageX;i>=this.minX;i=i-iTickSize){if(!tickMap[i]){this.xTicks[this.xTicks.length]=i;tickMap[i]=true;}} -for(i=this.initPageX;i<=this.maxX;i=i+iTickSize){if(!tickMap[i]){this.xTicks[this.xTicks.length]=i;tickMap[i]=true;}} -this.xTicks.sort(this.DDM.numericSort);},setYTicks:function(iStartY,iTickSize){this.yTicks=[];this.yTickSize=iTickSize;var tickMap={};for(var i=this.initPageY;i>=this.minY;i=i-iTickSize){if(!tickMap[i]){this.yTicks[this.yTicks.length]=i;tickMap[i]=true;}} -for(i=this.initPageY;i<=this.maxY;i=i+iTickSize){if(!tickMap[i]){this.yTicks[this.yTicks.length]=i;tickMap[i]=true;}} -this.yTicks.sort(this.DDM.numericSort);},setXConstraint:function(iLeft,iRight,iTickSize){this.leftConstraint=iLeft;this.rightConstraint=iRight;this.minX=this.initPageX-iLeft;this.maxX=this.initPageX+iRight;if(iTickSize){this.setXTicks(this.initPageX,iTickSize);} -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(iUp,iDown,iTickSize){this.topConstraint=iUp;this.bottomConstraint=iDown;this.minY=this.initPageY-iUp;this.maxY=this.initPageY+iDown;if(iTickSize){this.setYTicks(this.initPageY,iTickSize);} -this.constrainY=true;},resetConstraints:function(){if(this.initPageX||this.initPageX===0){var dx=(this.maintainOffset)?this.lastPageX-this.initPageX:0;var dy=(this.maintainOffset)?this.lastPageY-this.initPageY:0;this.setInitPosition(dx,dy);}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(val,tickArray){if(!tickArray){return val;}else if(tickArray[0]>=val){return tickArray[0];}else{for(var i=0,len=tickArray.length;i<len;++i){var next=i+1;if(tickArray[next]&&tickArray[next]>=val){var diff1=val-tickArray[i];var diff2=tickArray[next]-val;return(diff2>diff1)?tickArray[i]:tickArray[next];}} -return tickArray[tickArray.length-1];}},toString:function(){return("DragDrop "+this.id);}};})();if(!Ext.dd.DragDropMgr){Ext.dd.DragDropMgr=function(){var Event=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(sMethod,args){for(var i in this.ids){for(var j in this.ids[i]){var oDD=this.ids[i][j];if(!this.isTypeOfDD(oDD)){continue;} -oDD[sMethod].apply(oDD,args);}}},_onLoad:function(){this.init();Event.on(document,"mouseup",this.handleMouseUp,this,true);Event.on(document,"mousemove",this.handleMouseMove,this,true);Event.on(window,"unload",this._onUnload,this,true);Event.on(window,"resize",this._onResize,this,true);},_onResize:function(e){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(oDD,sGroup){if(!this.initialized){this.init();} -if(!this.ids[sGroup]){this.ids[sGroup]={};} -this.ids[sGroup][oDD.id]=oDD;},removeDDFromGroup:function(oDD,sGroup){if(!this.ids[sGroup]){this.ids[sGroup]={};} -var obj=this.ids[sGroup];if(obj&&obj[oDD.id]){delete obj[oDD.id];}},_remove:function(oDD){for(var g in oDD.groups){if(g&&this.ids[g]&&this.ids[g][oDD.id]){delete this.ids[g][oDD.id];}} -delete this.handleIds[oDD.id];},regHandle:function(sDDId,sHandleId){if(!this.handleIds[sDDId]){this.handleIds[sDDId]={};} -this.handleIds[sDDId][sHandleId]=sHandleId;},isDragDrop:function(id){return(this.getDDById(id))?true:false;},getRelated:function(p_oDD,bTargetsOnly){var oDDs=[];for(var i in p_oDD.groups){for(var j in this.ids[i]){var dd=this.ids[i][j];if(!this.isTypeOfDD(dd)){continue;} -if(!bTargetsOnly||dd.isTarget){oDDs[oDDs.length]=dd;}}} -return oDDs;},isLegalTarget:function(oDD,oTargetDD){var targets=this.getRelated(oDD,true);for(var i=0,len=targets.length;i<len;++i){if(targets[i].id==oTargetDD.id){return true;}} -return false;},isTypeOfDD:function(oDD){return(oDD&&oDD.__ygDragDrop);},isHandle:function(sDDId,sHandleId){return(this.handleIds[sDDId]&&this.handleIds[sDDId][sHandleId]);},getDDById:function(id){for(var i in this.ids){if(this.ids[i][id]){return this.ids[i][id];}} -return null;},handleMouseDown:function(e,oDD){if(Ext.QuickTips){Ext.QuickTips.ddDisable();} -if(this.dragCurrent){this.handleMouseUp(e);} -this.currentTarget=e.getTarget();this.dragCurrent=oDD;var el=oDD.getEl();this.startX=e.getPageX();this.startY=e.getPageY();this.deltaX=this.startX-el.offsetLeft;this.deltaY=this.startY-el.offsetTop;this.dragThreshMet=false;this.clickTimeout=setTimeout(function(){var DDM=Ext.dd.DDM;DDM.startDrag(DDM.startX,DDM.startY);},this.clickTimeThresh);},startDrag:function(x,y){clearTimeout(this.clickTimeout);if(this.dragCurrent){this.dragCurrent.b4StartDrag(x,y);this.dragCurrent.startDrag(x,y);} -this.dragThreshMet=true;},handleMouseUp:function(e){if(Ext.QuickTips){Ext.QuickTips.ddEnable();} -if(!this.dragCurrent){return;} -clearTimeout(this.clickTimeout);if(this.dragThreshMet){this.fireEvents(e,true);}else{} -this.stopDrag(e);this.stopEvent(e);},stopEvent:function(e){if(this.stopPropagation){e.stopPropagation();} -if(this.preventDefault){e.preventDefault();}},stopDrag:function(e){if(this.dragCurrent){if(this.dragThreshMet){this.dragCurrent.b4EndDrag(e);this.dragCurrent.endDrag(e);} -this.dragCurrent.onMouseUp(e);} -this.dragCurrent=null;this.dragOvers={};},handleMouseMove:function(e){if(!this.dragCurrent){return true;} -if(Ext.isIE&&(e.button!==0&&e.button!==1&&e.button!==2)){this.stopEvent(e);return this.handleMouseUp(e);} -if(!this.dragThreshMet){var diffX=Math.abs(this.startX-e.getPageX());var diffY=Math.abs(this.startY-e.getPageY());if(diffX>this.clickPixelThresh||diffY>this.clickPixelThresh){this.startDrag(this.startX,this.startY);}} -if(this.dragThreshMet){this.dragCurrent.b4Drag(e);this.dragCurrent.onDrag(e);if(!this.dragCurrent.moveOnly){this.fireEvents(e,false);}} -this.stopEvent(e);return true;},fireEvents:function(e,isDrop){var dc=this.dragCurrent;if(!dc||dc.isLocked()){return;} -var pt=e.getPoint();var oldOvers=[];var outEvts=[];var overEvts=[];var dropEvts=[];var enterEvts=[];for(var i in this.dragOvers){var ddo=this.dragOvers[i];if(!this.isTypeOfDD(ddo)){continue;} -if(!this.isOverTarget(pt,ddo,this.mode)){outEvts.push(ddo);} -oldOvers[i]=true;delete this.dragOvers[i];} -for(var sGroup in dc.groups){if("string"!=typeof sGroup){continue;} -for(i in this.ids[sGroup]){var oDD=this.ids[sGroup][i];if(!this.isTypeOfDD(oDD)){continue;} -if(oDD.isTarget&&!oDD.isLocked()&&((oDD!=dc)||(dc.ignoreSelf===false))){if(this.isOverTarget(pt,oDD,this.mode)){if(isDrop){dropEvts.push(oDD);}else{if(!oldOvers[oDD.id]){enterEvts.push(oDD);}else{overEvts.push(oDD);} -this.dragOvers[oDD.id]=oDD;}}}}} -if(this.mode){if(outEvts.length){dc.b4DragOut(e,outEvts);dc.onDragOut(e,outEvts);} -if(enterEvts.length){dc.onDragEnter(e,enterEvts);} -if(overEvts.length){dc.b4DragOver(e,overEvts);dc.onDragOver(e,overEvts);} -if(dropEvts.length){dc.b4DragDrop(e,dropEvts);dc.onDragDrop(e,dropEvts);}}else{var len=0;for(i=0,len=outEvts.length;i<len;++i){dc.b4DragOut(e,outEvts[i].id);dc.onDragOut(e,outEvts[i].id);} -for(i=0,len=enterEvts.length;i<len;++i){dc.onDragEnter(e,enterEvts[i].id);} -for(i=0,len=overEvts.length;i<len;++i){dc.b4DragOver(e,overEvts[i].id);dc.onDragOver(e,overEvts[i].id);} -for(i=0,len=dropEvts.length;i<len;++i){dc.b4DragDrop(e,dropEvts[i].id);dc.onDragDrop(e,dropEvts[i].id);}} -if(isDrop&&!dropEvts.length){dc.onInvalidDrop(e);}},getBestMatch:function(dds){var winner=null;var len=dds.length;if(len==1){winner=dds[0];}else{for(var i=0;i<len;++i){var dd=dds[i];if(dd.cursorIsOver){winner=dd;break;}else{if(!winner||winner.overlap.getArea()<dd.overlap.getArea()){winner=dd;}}}} -return winner;},refreshCache:function(groups){for(var sGroup in groups){if("string"!=typeof sGroup){continue;} -for(var i in this.ids[sGroup]){var oDD=this.ids[sGroup][i];if(this.isTypeOfDD(oDD)){var loc=this.getLocation(oDD);if(loc){this.locationCache[oDD.id]=loc;}else{delete this.locationCache[oDD.id];}}}}},verifyEl:function(el){if(el){var parent;if(Ext.isIE){try{parent=el.offsetParent;}catch(e){}}else{parent=el.offsetParent;} -if(parent){return true;}} -return false;},getLocation:function(oDD){if(!this.isTypeOfDD(oDD)){return null;} -var el=oDD.getEl(),pos,x1,x2,y1,y2,t,r,b,l;try{pos=Ext.lib.Dom.getXY(el);}catch(e){} -if(!pos){return null;} -x1=pos[0];x2=x1+el.offsetWidth;y1=pos[1];y2=y1+el.offsetHeight;t=y1-oDD.padding[0];r=x2+oDD.padding[1];b=y2+oDD.padding[2];l=x1-oDD.padding[3];return new Ext.lib.Region(t,r,b,l);},isOverTarget:function(pt,oTarget,intersect){var loc=this.locationCache[oTarget.id];if(!loc||!this.useCache){loc=this.getLocation(oTarget);this.locationCache[oTarget.id]=loc;} -if(!loc){return false;} -oTarget.cursorIsOver=loc.contains(pt);var dc=this.dragCurrent;if(!dc||!dc.getTargetCoord||(!intersect&&!dc.constrainX&&!dc.constrainY)){return oTarget.cursorIsOver;} -oTarget.overlap=null;var pos=dc.getTargetCoord(pt.x,pt.y);var el=dc.getDragEl();var curRegion=new Ext.lib.Region(pos.y,pos.x+el.offsetWidth,pos.y+el.offsetHeight,pos.x);var overlap=curRegion.intersect(loc);if(overlap){oTarget.overlap=overlap;return(intersect)?true:oTarget.cursorIsOver;}else{return false;}},_onUnload:function(e,me){Ext.dd.DragDropMgr.unregAll();},unregAll:function(){if(this.dragCurrent){this.stopDrag();this.dragCurrent=null;} -this._execOnAll("unreg",[]);for(var i in this.elementCache){delete this.elementCache[i];} -this.elementCache={};this.ids={};},elementCache:{},getElWrapper:function(id){var oWrapper=this.elementCache[id];if(!oWrapper||!oWrapper.el){oWrapper=this.elementCache[id]=new this.ElementWrapper(Ext.getDom(id));} -return oWrapper;},getElement:function(id){return Ext.getDom(id);},getCss:function(id){var el=Ext.getDom(id);return(el)?el.style:null;},ElementWrapper:function(el){this.el=el||null;this.id=this.el&&el.id;this.css=this.el&&el.style;},getPosX:function(el){return Ext.lib.Dom.getX(el);},getPosY:function(el){return Ext.lib.Dom.getY(el);},swapNode:function(n1,n2){if(n1.swapNode){n1.swapNode(n2);}else{var p=n2.parentNode;var s=n2.nextSibling;if(s==n1){p.insertBefore(n1,n2);}else if(n2==n1.nextSibling){p.insertBefore(n2,n1);}else{n1.parentNode.replaceChild(n2,n1);p.insertBefore(n1,s);}}},getScroll:function(){var t,l,dde=document.documentElement,db=document.body;if(dde&&(dde.scrollTop||dde.scrollLeft)){t=dde.scrollTop;l=dde.scrollLeft;}else if(db){t=db.scrollTop;l=db.scrollLeft;}else{} -return{top:t,left:l};},getStyle:function(el,styleProp){return Ext.fly(el).getStyle(styleProp);},getScrollTop:function(){return this.getScroll().top;},getScrollLeft:function(){return this.getScroll().left;},moveToEl:function(moveEl,targetEl){var aCoord=Ext.lib.Dom.getXY(targetEl);Ext.lib.Dom.setXY(moveEl,aCoord);},numericSort:function(a,b){return(a-b);},_timeoutCount:0,_addListeners:function(){var DDM=Ext.dd.DDM;if(Ext.lib.Event&&document){DDM._onLoad();}else{if(DDM._timeoutCount>2000){}else{setTimeout(DDM._addListeners,10);if(document&&document.body){DDM._timeoutCount+=1;}}}},handleWasClicked:function(node,id){if(this.isHandle(id,node.id)){return true;}else{var p=node.parentNode;while(p){if(this.isHandle(id,p.id)){return true;}else{p=p.parentNode;}}} -return false;}};}();Ext.dd.DDM=Ext.dd.DragDropMgr;Ext.dd.DDM._addListeners();} -Ext.dd.DD=function(id,sGroup,config){if(id){this.init(id,sGroup,config);}};Ext.extend(Ext.dd.DD,Ext.dd.DragDrop,{scroll:true,autoOffset:function(iPageX,iPageY){var x=iPageX-this.startPageX;var y=iPageY-this.startPageY;this.setDelta(x,y);},setDelta:function(iDeltaX,iDeltaY){this.deltaX=iDeltaX;this.deltaY=iDeltaY;},setDragElPos:function(iPageX,iPageY){var el=this.getDragEl();this.alignElWithMouse(el,iPageX,iPageY);},alignElWithMouse:function(el,iPageX,iPageY){var oCoord=this.getTargetCoord(iPageX,iPageY);var fly=el.dom?el:Ext.fly(el,'_dd');if(!this.deltaSetXY){var aCoord=[oCoord.x,oCoord.y];fly.setXY(aCoord);var newLeft=fly.getLeft(true);var newTop=fly.getTop(true);this.deltaSetXY=[newLeft-oCoord.x,newTop-oCoord.y];}else{fly.setLeftTop(oCoord.x+this.deltaSetXY[0],oCoord.y+this.deltaSetXY[1]);} -this.cachePosition(oCoord.x,oCoord.y);this.autoScroll(oCoord.x,oCoord.y,el.offsetHeight,el.offsetWidth);return oCoord;},cachePosition:function(iPageX,iPageY){if(iPageX){this.lastPageX=iPageX;this.lastPageY=iPageY;}else{var aCoord=Ext.lib.Dom.getXY(this.getEl());this.lastPageX=aCoord[0];this.lastPageY=aCoord[1];}},autoScroll:function(x,y,h,w){if(this.scroll){var clientH=Ext.lib.Dom.getViewHeight();var clientW=Ext.lib.Dom.getViewWidth();var st=this.DDM.getScrollTop();var sl=this.DDM.getScrollLeft();var bot=h+y;var right=w+x;var toBot=(clientH+st-y-this.deltaY);var toRight=(clientW+sl-x-this.deltaX);var thresh=40;var scrAmt=(document.all)?80:30;if(bot>clientH&&toBot<thresh){window.scrollTo(sl,st+scrAmt);} -if(y<st&&st>0&&y-st<thresh){window.scrollTo(sl,st-scrAmt);} -if(right>clientW&&toRight<thresh){window.scrollTo(sl+scrAmt,st);} -if(x<sl&&sl>0&&x-sl<thresh){window.scrollTo(sl-scrAmt,st);}}},getTargetCoord:function(iPageX,iPageY){var x=iPageX-this.deltaX;var y=iPageY-this.deltaY;if(this.constrainX){if(x<this.minX){x=this.minX;} -if(x>this.maxX){x=this.maxX;}} -if(this.constrainY){if(y<this.minY){y=this.minY;} -if(y>this.maxY){y=this.maxY;}} -x=this.getTick(x,this.xTicks);y=this.getTick(y,this.yTicks);return{x:x,y:y};},applyConfig:function(){Ext.dd.DD.superclass.applyConfig.call(this);this.scroll=(this.config.scroll!==false);},b4MouseDown:function(e){this.autoOffset(e.getPageX(),e.getPageY());},b4Drag:function(e){this.setDragElPos(e.getPageX(),e.getPageY());},toString:function(){return("DD "+this.id);}});Ext.dd.DDProxy=function(id,sGroup,config){if(id){this.init(id,sGroup,config);this.initFrame();}};Ext.dd.DDProxy.dragElId="ygddfdiv";Ext.extend(Ext.dd.DDProxy,Ext.dd.DD,{resizeFrame:true,centerFrame:false,createFrame:function(){var self=this;var body=document.body;if(!body||!body.firstChild){setTimeout(function(){self.createFrame();},50);return;} -var div=this.getDragEl();if(!div){div=document.createElement("div");div.id=this.dragElId;var s=div.style;s.position="absolute";s.visibility="hidden";s.cursor="move";s.border="2px solid #aaa";s.zIndex=999;body.insertBefore(div,body.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(iPageX,iPageY){var el=this.getEl();var dragEl=this.getDragEl();var s=dragEl.style;this._resizeProxy();if(this.centerFrame){this.setDelta(Math.round(parseInt(s.width,10)/2),Math.round(parseInt(s.height,10)/2));} -this.setDragElPos(iPageX,iPageY);Ext.fly(dragEl).show();},_resizeProxy:function(){if(this.resizeFrame){var el=this.getEl();Ext.fly(this.getDragEl()).setSize(el.offsetWidth,el.offsetHeight);}},b4MouseDown:function(e){var x=e.getPageX();var y=e.getPageY();this.autoOffset(x,y);this.setDragElPos(x,y);},b4StartDrag:function(x,y){this.showFrame(x,y);},b4EndDrag:function(e){Ext.fly(this.getDragEl()).hide();},endDrag:function(e){var lel=this.getEl();var del=this.getDragEl();del.style.visibility="";this.beforeMove();lel.style.visibility="hidden";Ext.dd.DDM.moveToEl(lel,del);del.style.visibility="hidden";lel.style.visibility="";this.afterDrag();},beforeMove:function(){},afterDrag:function(){},toString:function(){return("DDProxy "+this.id);}});Ext.dd.DDTarget=function(id,sGroup,config){if(id){this.initTarget(id,sGroup,config);}};Ext.extend(Ext.dd.DDTarget,Ext.dd.DragDrop,{getDragEl:Ext.emptyFn,isValidHandleChild:Ext.emptyFn,startDrag:Ext.emptyFn,endDrag:Ext.emptyFn,onDrag:Ext.emptyFn,onDragDrop:Ext.emptyFn,onDragEnter:Ext.emptyFn,onDragOut:Ext.emptyFn,onDragOver:Ext.emptyFn,onInvalidDrop:Ext.emptyFn,onMouseDown:Ext.emptyFn,onMouseUp:Ext.emptyFn,setXConstraint:Ext.emptyFn,setYConstraint:Ext.emptyFn,resetConstraints:Ext.emptyFn,clearConstraints:Ext.emptyFn,clearTicks:Ext.emptyFn,setInitPosition:Ext.emptyFn,setDragElId:Ext.emptyFn,setHandleElId:Ext.emptyFn,setOuterHandleElId:Ext.emptyFn,addInvalidHandleClass:Ext.emptyFn,addInvalidHandleId:Ext.emptyFn,addInvalidHandleType:Ext.emptyFn,removeInvalidHandleClass:Ext.emptyFn,removeInvalidHandleId:Ext.emptyFn,removeInvalidHandleType:Ext.emptyFn,toString:function(){return("DDTarget "+this.id);}});Ext.dd.DragTracker=Ext.extend(Ext.util.Observable,{active:false,tolerance:5,autoStart:false,constructor:function(config){Ext.apply(this,config);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.dd.DragTracker.superclass.constructor.call(this,config);},initEl:function(el){this.el=Ext.get(el);el.on('mousedown',this.onMouseDown,this,this.delegate?{delegate:this.delegate}:undefined);},destroy:function(){this.el.un('mousedown',this.onMouseDown,this);delete this.el;},onMouseDown:function(e,target){if(this.fireEvent('mousedown',this,e)!==false&&this.onBeforeStart(e)!==false){this.startXY=this.lastXY=e.getXY();this.dragTarget=this.delegate?target:this.el.dom;if(this.preventDefault!==false){e.preventDefault();} -Ext.getDoc().on({scope:this,mouseup:this.onMouseUp,mousemove:this.onMouseMove,selectstart:this.stopSelect});if(this.autoStart){this.timer=this.triggerStart.defer(this.autoStart===true?1000:this.autoStart,this,[e]);}}},onMouseMove:function(e,target){if(this.active&&Ext.isIE&&!e.browserEvent.button){e.preventDefault();this.onMouseUp(e);return;} -e.preventDefault();var xy=e.getXY(),s=this.startXY;this.lastXY=xy;if(!this.active){if(Math.abs(s[0]-xy[0])>this.tolerance||Math.abs(s[1]-xy[1])>this.tolerance){this.triggerStart(e);}else{return;}} -this.fireEvent('mousemove',this,e);this.onDrag(e);this.fireEvent('drag',this,e);},onMouseUp:function(e){var doc=Ext.getDoc(),wasActive=this.active;doc.un('mousemove',this.onMouseMove,this);doc.un('mouseup',this.onMouseUp,this);doc.un('selectstart',this.stopSelect,this);e.preventDefault();this.clearStart();this.active=false;delete this.elRegion;this.fireEvent('mouseup',this,e);if(wasActive){this.onEnd(e);this.fireEvent('dragend',this,e);}},triggerStart:function(e){this.clearStart();this.active=true;this.onStart(e);this.fireEvent('dragstart',this,e);},clearStart:function(){if(this.timer){clearTimeout(this.timer);delete this.timer;}},stopSelect:function(e){e.stopEvent();return false;},onBeforeStart:function(e){},onStart:function(xy){},onDrag:function(e){},onEnd:function(e){},getDragTarget:function(){return this.dragTarget;},getDragCt:function(){return this.el;},getXY:function(constrain){return constrain?this.constrainModes[constrain].call(this,this.lastXY):this.lastXY;},getOffset:function(constrain){var xy=this.getXY(constrain),s=this.startXY;return[s[0]-xy[0],s[1]-xy[1]];},constrainModes:{'point':function(xy){if(!this.elRegion){this.elRegion=this.getDragCt().getRegion();} -var dr=this.dragRegion;dr.left=xy[0];dr.top=xy[1];dr.right=xy[0];dr.bottom=xy[1];dr.constrainTo(this.elRegion);return[dr.left,dr.top];}}});Ext.dd.ScrollManager=function(){var ddm=Ext.dd.DragDropMgr;var els={};var dragEl=null;var proc={};var onStop=function(e){dragEl=null;clearProc();};var triggerRefresh=function(){if(ddm.dragCurrent){ddm.refreshCache(ddm.dragCurrent.groups);}};var doScroll=function(){if(ddm.dragCurrent){var dds=Ext.dd.ScrollManager;var inc=proc.el.ddScrollConfig?proc.el.ddScrollConfig.increment:dds.increment;if(!dds.animate){if(proc.el.scroll(proc.dir,inc)){triggerRefresh();}}else{proc.el.scroll(proc.dir,inc,true,dds.animDuration,triggerRefresh);}}};var clearProc=function(){if(proc.id){clearInterval(proc.id);} -proc.id=0;proc.el=null;proc.dir="";};var startProc=function(el,dir){clearProc();proc.el=el;proc.dir=dir;var group=el.ddScrollConfig?el.ddScrollConfig.ddGroup:undefined,freq=(el.ddScrollConfig&&el.ddScrollConfig.frequency)?el.ddScrollConfig.frequency:Ext.dd.ScrollManager.frequency;if(group===undefined||ddm.dragCurrent.ddGroup==group){proc.id=setInterval(doScroll,freq);}};var onFire=function(e,isDrop){if(isDrop||!ddm.dragCurrent){return;} -var dds=Ext.dd.ScrollManager;if(!dragEl||dragEl!=ddm.dragCurrent){dragEl=ddm.dragCurrent;dds.refreshCache();} -var xy=Ext.lib.Event.getXY(e);var pt=new Ext.lib.Point(xy[0],xy[1]);for(var id in els){var el=els[id],r=el._region;var c=el.ddScrollConfig?el.ddScrollConfig:dds;if(r&&r.contains(pt)&&el.isScrollable()){if(r.bottom-pt.y<=c.vthresh){if(proc.el!=el){startProc(el,"down");} -return;}else if(r.right-pt.x<=c.hthresh){if(proc.el!=el){startProc(el,"left");} -return;}else if(pt.y-r.top<=c.vthresh){if(proc.el!=el){startProc(el,"up");} -return;}else if(pt.x-r.left<=c.hthresh){if(proc.el!=el){startProc(el,"right");} -return;}}} -clearProc();};ddm.fireEvents=ddm.fireEvents.createSequence(onFire,ddm);ddm.stopDrag=ddm.stopDrag.createSequence(onStop,ddm);return{register:function(el){if(Ext.isArray(el)){for(var i=0,len=el.length;i<len;i++){this.register(el[i]);}}else{el=Ext.get(el);els[el.id]=el;}},unregister:function(el){if(Ext.isArray(el)){for(var i=0,len=el.length;i<len;i++){this.unregister(el[i]);}}else{el=Ext.get(el);delete els[el.id];}},vthresh:25,hthresh:25,increment:100,frequency:500,animate:true,animDuration:.4,ddGroup:undefined,refreshCache:function(){for(var id in els){if(typeof els[id]=='object'){els[id]._region=els[id].getRegion();}}}};}();Ext.dd.Registry=function(){var elements={};var handles={};var autoIdSeed=0;var getId=function(el,autogen){if(typeof el=="string"){return el;} -var id=el.id;if(!id&&autogen!==false){id="extdd-"+(++autoIdSeed);el.id=id;} -return id;};return{register:function(el,data){data=data||{};if(typeof el=="string"){el=document.getElementById(el);} -data.ddel=el;elements[getId(el)]=data;if(data.isHandle!==false){handles[data.ddel.id]=data;} -if(data.handles){var hs=data.handles;for(var i=0,len=hs.length;i<len;i++){handles[getId(hs[i])]=data;}}},unregister:function(el){var id=getId(el,false);var data=elements[id];if(data){delete elements[id];if(data.handles){var hs=data.handles;for(var i=0,len=hs.length;i<len;i++){delete handles[getId(hs[i],false)];}}}},getHandle:function(id){if(typeof id!="string"){id=id.id;} -return handles[id];},getHandleFromEvent:function(e){var t=Ext.lib.Event.getTarget(e);return t?handles[t.id]:null;},getTarget:function(id){if(typeof id!="string"){id=id.id;} -return elements[id];},getTargetFromEvent:function(e){var t=Ext.lib.Event.getTarget(e);return t?elements[t.id]||handles[t.id]:null;}};}();Ext.dd.StatusProxy=function(config){Ext.apply(this,config);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:!config||config.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(cssClass){cssClass=cssClass||this.dropNotAllowed;if(this.dropStatus!=cssClass){this.el.replaceClass(this.dropStatus,cssClass);this.dropStatus=cssClass;}},reset:function(clearGhost){this.el.dom.className="x-dd-drag-proxy "+this.dropNotAllowed;this.dropStatus=this.dropNotAllowed;if(clearGhost){this.ghost.update("");}},update:function(html){if(typeof html=="string"){this.ghost.update(html);}else{this.ghost.update("");html.style.margin="0";this.ghost.dom.appendChild(html);} -var el=this.ghost.dom.firstChild;if(el){Ext.fly(el).setStyle('float','none');}},getEl:function(){return this.el;},getGhost:function(){return this.ghost;},hide:function(clear){this.el.hide();if(clear){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(xy,callback,scope){this.callback=callback;this.scope=scope;if(xy&&this.animRepair!==false){this.el.addClass("x-dd-drag-repair");this.el.hideUnders(true);this.anim=this.el.shift({duration:this.repairDuration||.5,easing:'easeOut',xy:xy,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;},destroy:function(){Ext.destroy(this.ghost,this.el);}};Ext.dd.DragSource=function(el,config){this.el=Ext.get(el);if(!this.dragData){this.dragData={};} -Ext.apply(this,config);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(e){return this.dragData;},onDragEnter:function(e,id){var target=Ext.dd.DragDropMgr.getDDById(id);this.cachedTarget=target;if(this.beforeDragEnter(target,e,id)!==false){if(target.isNotifyTarget){var status=target.notifyEnter(this,e,this.dragData);this.proxy.setStatus(status);}else{this.proxy.setStatus(this.dropAllowed);} -if(this.afterDragEnter){this.afterDragEnter(target,e,id);}}},beforeDragEnter:function(target,e,id){return true;},alignElWithMouse:function(){Ext.dd.DragSource.superclass.alignElWithMouse.apply(this,arguments);this.proxy.sync();},onDragOver:function(e,id){var target=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(id);if(this.beforeDragOver(target,e,id)!==false){if(target.isNotifyTarget){var status=target.notifyOver(this,e,this.dragData);this.proxy.setStatus(status);} -if(this.afterDragOver){this.afterDragOver(target,e,id);}}},beforeDragOver:function(target,e,id){return true;},onDragOut:function(e,id){var target=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(id);if(this.beforeDragOut(target,e,id)!==false){if(target.isNotifyTarget){target.notifyOut(this,e,this.dragData);} -this.proxy.reset();if(this.afterDragOut){this.afterDragOut(target,e,id);}} -this.cachedTarget=null;},beforeDragOut:function(target,e,id){return true;},onDragDrop:function(e,id){var target=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(id);if(this.beforeDragDrop(target,e,id)!==false){if(target.isNotifyTarget){if(target.notifyDrop(this,e,this.dragData)){this.onValidDrop(target,e,id);}else{this.onInvalidDrop(target,e,id);}}else{this.onValidDrop(target,e,id);} -if(this.afterDragDrop){this.afterDragDrop(target,e,id);}} -delete this.cachedTarget;},beforeDragDrop:function(target,e,id){return true;},onValidDrop:function(target,e,id){this.hideProxy();if(this.afterValidDrop){this.afterValidDrop(target,e,id);}},getRepairXY:function(e,data){return this.el.getXY();},onInvalidDrop:function(target,e,id){this.beforeInvalidDrop(target,e,id);if(this.cachedTarget){if(this.cachedTarget.isNotifyTarget){this.cachedTarget.notifyOut(this,e,this.dragData);} -this.cacheTarget=null;} -this.proxy.repair(this.getRepairXY(e,this.dragData),this.afterRepair,this);if(this.afterInvalidDrop){this.afterInvalidDrop(e,id);}},afterRepair:function(){if(Ext.enableFx){this.el.highlight(this.hlColor||"c3daf9");} -this.dragging=false;},beforeInvalidDrop:function(target,e,id){return true;},handleMouseDown:function(e){if(this.dragging){return;} -var data=this.getDragData(e);if(data&&this.onBeforeDrag(data,e)!==false){this.dragData=data;this.proxy.stop();Ext.dd.DragSource.superclass.handleMouseDown.apply(this,arguments);}},onBeforeDrag:function(data,e){return true;},onStartDrag:Ext.emptyFn,startDrag:function(x,y){this.proxy.reset();this.dragging=true;this.proxy.update("");this.onInitDrag(x,y);this.proxy.show();},onInitDrag:function(x,y){var clone=this.el.dom.cloneNode(true);clone.id=Ext.id();this.proxy.update(clone);this.onStartDrag(x,y);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(e){},endDrag:function(e){this.onEndDrag(this.dragData,e);},onEndDrag:function(data,e){},autoOffset:function(x,y){this.setDelta(-12,-20);},destroy:function(){Ext.dd.DragSource.superclass.destroy.call(this);Ext.destroy(this.proxy);}});Ext.dd.DropTarget=Ext.extend(Ext.dd.DDTarget,{constructor:function(el,config){this.el=Ext.get(el);Ext.apply(this,config);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});},dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",isTarget:true,isNotifyTarget:true,notifyEnter:function(dd,e,data){if(this.overClass){this.el.addClass(this.overClass);} -return this.dropAllowed;},notifyOver:function(dd,e,data){return this.dropAllowed;},notifyOut:function(dd,e,data){if(this.overClass){this.el.removeClass(this.overClass);}},notifyDrop:function(dd,e,data){return false;},destroy:function(){Ext.dd.DropTarget.superclass.destroy.call(this);if(this.containerScroll){Ext.dd.ScrollManager.unregister(this.el);}}});Ext.dd.DragZone=Ext.extend(Ext.dd.DragSource,{constructor:function(el,config){Ext.dd.DragZone.superclass.constructor.call(this,el,config);if(this.containerScroll){Ext.dd.ScrollManager.register(this.el);}},getDragData:function(e){return Ext.dd.Registry.getHandleFromEvent(e);},onInitDrag:function(x,y){this.proxy.update(this.dragData.ddel.cloneNode(true));this.onStartDrag(x,y);return true;},afterRepair:function(){if(Ext.enableFx){Ext.Element.fly(this.dragData.ddel).highlight(this.hlColor||"c3daf9");} -this.dragging=false;},getRepairXY:function(e){return Ext.Element.fly(this.dragData.ddel).getXY();},destroy:function(){Ext.dd.DragZone.superclass.destroy.call(this);if(this.containerScroll){Ext.dd.ScrollManager.unregister(this.el);}}});Ext.dd.DropZone=function(el,config){Ext.dd.DropZone.superclass.constructor.call(this,el,config);};Ext.extend(Ext.dd.DropZone,Ext.dd.DropTarget,{getTargetFromEvent:function(e){return Ext.dd.Registry.getTargetFromEvent(e);},onNodeEnter:function(n,dd,e,data){},onNodeOver:function(n,dd,e,data){return this.dropAllowed;},onNodeOut:function(n,dd,e,data){},onNodeDrop:function(n,dd,e,data){return false;},onContainerOver:function(dd,e,data){return this.dropNotAllowed;},onContainerDrop:function(dd,e,data){return false;},notifyEnter:function(dd,e,data){return this.dropNotAllowed;},notifyOver:function(dd,e,data){var n=this.getTargetFromEvent(e);if(!n){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,dd,e,data);this.lastOverNode=null;} -return this.onContainerOver(dd,e,data);} -if(this.lastOverNode!=n){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,dd,e,data);} -this.onNodeEnter(n,dd,e,data);this.lastOverNode=n;} -return this.onNodeOver(n,dd,e,data);},notifyOut:function(dd,e,data){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,dd,e,data);this.lastOverNode=null;}},notifyDrop:function(dd,e,data){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,dd,e,data);this.lastOverNode=null;} -var n=this.getTargetFromEvent(e);return n?this.onNodeDrop(n,dd,e,data):this.onContainerDrop(dd,e,data);},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups);}});Ext.Element.addMethods({initDD:function(group,config,overrides){var dd=new Ext.dd.DD(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides);},initDDProxy:function(group,config,overrides){var dd=new Ext.dd.DDProxy(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides);},initDDTarget:function(group,config,overrides){var dd=new Ext.dd.DDTarget(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides);}});Ext.tree.TreePanel=Ext.extend(Ext.Panel,{rootVisible:true,animate:Ext.enableFx,lines:true,enableDD:false,hlDrop:Ext.enableFx,pathSeparator:'/',bubbleEvents:[],initComponent:function(){Ext.tree.TreePanel.superclass.initComponent.call(this);if(!this.eventModel){this.eventModel=new Ext.tree.TreeEventModel(this);} -var l=this.loader;if(!l){l=new Ext.tree.TreeLoader({dataUrl:this.dataUrl,requestMethod:this.requestMethod});}else if(Ext.isObject(l)&&!l.load){l=new Ext.tree.TreeLoader(l);} -this.loader=l;this.nodeHash={};if(this.root){var r=this.root;delete this.root;this.setRootNode(r);} -this.addEvents('append','remove','movenode','insert','beforeappend','beforeremove','beforemovenode','beforeinsert','beforeload','load','textchange','beforeexpandnode','beforecollapsenode','expandnode','disabledchange','collapsenode','beforeclick','click','containerclick','checkchange','beforedblclick','dblclick','containerdblclick','contextmenu','containercontextmenu','beforechildrenrendered','startdrag','enddrag','dragdrop','beforenodedrop','nodedrop','nodedragover');if(this.singleExpand){this.on('beforeexpandnode',this.restrictExpand,this);}},proxyNodeEvent:function(ename,a1,a2,a3,a4,a5,a6){if(ename=='collapse'||ename=='expand'||ename=='beforecollapse'||ename=='beforeexpand'||ename=='move'||ename=='beforemove'){ename=ename+'node';} -return this.fireEvent(ename,a1,a2,a3,a4,a5,a6);},getRootNode:function(){return this.root;},setRootNode:function(node){this.destroyRoot();if(!node.render){node=this.loader.createNode(node);} -this.root=node;node.ownerTree=this;node.isRoot=true;this.registerNode(node);if(!this.rootVisible){var uiP=node.attributes.uiProvider;node.ui=uiP?new uiP(node):new Ext.tree.RootTreeNodeUI(node);} -if(this.innerCt){this.clearInnerCt();this.renderRoot();} -return node;},clearInnerCt:function(){this.innerCt.update('');},renderRoot:function(){this.root.render();if(!this.rootVisible){this.root.renderChildren();}},getNodeById:function(id){return this.nodeHash[id];},registerNode:function(node){this.nodeHash[node.id]=node;},unregisterNode:function(node){delete this.nodeHash[node.id];},toString:function(){return'[Tree'+(this.id?' '+this.id:'')+']';},restrictExpand:function(node){var p=node.parentNode;if(p){if(p.expandedChild&&p.expandedChild.parentNode==p){p.expandedChild.collapse();} -p.expandedChild=node;}},getChecked:function(a,startNode){startNode=startNode||this.root;var r=[];var f=function(){if(this.attributes.checked){r.push(!a?this:(a=='id'?this.id:this.attributes[a]));}};startNode.cascade(f);return r;},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(path,attr,callback){if(Ext.isEmpty(path)){if(callback){callback(false,undefined);} -return;} -attr=attr||'id';var keys=path.split(this.pathSeparator);var curNode=this.root;if(curNode.attributes[attr]!=keys[1]){if(callback){callback(false,null);} -return;} -var index=1;var f=function(){if(++index==keys.length){if(callback){callback(true,curNode);} -return;} -var c=curNode.findChild(attr,keys[index]);if(!c){if(callback){callback(false,curNode);} -return;} -curNode=c;c.expand(false,false,f);};curNode.expand(false,false,f);},selectPath:function(path,attr,callback){if(Ext.isEmpty(path)){if(callback){callback(false,undefined);} -return;} -attr=attr||'id';var keys=path.split(this.pathSeparator),v=keys.pop();if(keys.length>1){var f=function(success,node){if(success&&node){var n=node.findChild(attr,v);if(n){n.select();if(callback){callback(true,n);}}else if(callback){callback(false,n);}}else{if(callback){callback(false,n);}}};this.expandPath(keys.join(this.pathSeparator),attr,f);}else{this.root.select();if(callback){callback(true,this.root);}}},getTreeEl:function(){return this.body;},onRender:function(ct,position){Ext.tree.TreePanel.superclass.onRender.call(this,ct,position);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.renderRoot();},beforeDestroy:function(){if(this.rendered){Ext.dd.ScrollManager.unregister(this.body);Ext.destroy(this.dropZone,this.dragZone);} -this.destroyRoot();Ext.destroy(this.loader);this.nodeHash=this.root=this.loader=null;Ext.tree.TreePanel.superclass.beforeDestroy.call(this);},destroyRoot:function(){if(this.root&&this.root.destroy){this.root.destroy(true);}}});Ext.tree.TreePanel.nodeTypes={};Ext.reg('treepanel',Ext.tree.TreePanel);Ext.tree.TreeEventModel=function(tree){this.tree=tree;this.tree.on('render',this.initEvents,this);};Ext.tree.TreeEventModel.prototype={initEvents:function(){var t=this.tree;if(t.trackMouseOver!==false){t.mon(t.innerCt,{scope:this,mouseover:this.delegateOver,mouseout:this.delegateOut});} -t.mon(t.getTreeEl(),{scope:this,click:this.delegateClick,dblclick:this.delegateDblClick,contextmenu:this.delegateContextMenu});},getNode:function(e){var t;if(t=e.getTarget('.x-tree-node-el',10)){var id=Ext.fly(t,'_treeEvents').getAttribute('tree-node-id','ext');if(id){return this.tree.getNodeById(id);}} -return null;},getNodeTarget:function(e){var t=e.getTarget('.x-tree-node-icon',1);if(!t){t=e.getTarget('.x-tree-node-el',6);} -return t;},delegateOut:function(e,t){if(!this.beforeEvent(e)){return;} -if(e.getTarget('.x-tree-ec-icon',1)){var n=this.getNode(e);this.onIconOut(e,n);if(n==this.lastEcOver){delete this.lastEcOver;}} -if((t=this.getNodeTarget(e))&&!e.within(t,true)){this.onNodeOut(e,this.getNode(e));}},delegateOver:function(e,t){if(!this.beforeEvent(e)){return;} -if(Ext.isGecko&&!this.trackingDoc){Ext.getBody().on('mouseover',this.trackExit,this);this.trackingDoc=true;} -if(this.lastEcOver){this.onIconOut(e,this.lastEcOver);delete this.lastEcOver;} -if(e.getTarget('.x-tree-ec-icon',1)){this.lastEcOver=this.getNode(e);this.onIconOver(e,this.lastEcOver);} -if(t=this.getNodeTarget(e)){this.onNodeOver(e,this.getNode(e));}},trackExit:function(e){if(this.lastOverNode){if(this.lastOverNode.ui&&!e.within(this.lastOverNode.ui.getEl())){this.onNodeOut(e,this.lastOverNode);} -delete this.lastOverNode;Ext.getBody().un('mouseover',this.trackExit,this);this.trackingDoc=false;}},delegateClick:function(e,t){if(this.beforeEvent(e)){if(e.getTarget('input[type=checkbox]',1)){this.onCheckboxClick(e,this.getNode(e));}else if(e.getTarget('.x-tree-ec-icon',1)){this.onIconClick(e,this.getNode(e));}else if(this.getNodeTarget(e)){this.onNodeClick(e,this.getNode(e));}}else{this.checkContainerEvent(e,'click');}},delegateDblClick:function(e,t){if(this.beforeEvent(e)){if(this.getNodeTarget(e)){this.onNodeDblClick(e,this.getNode(e));}}else{this.checkContainerEvent(e,'dblclick');}},delegateContextMenu:function(e,t){if(this.beforeEvent(e)){if(this.getNodeTarget(e)){this.onNodeContextMenu(e,this.getNode(e));}}else{this.checkContainerEvent(e,'contextmenu');}},checkContainerEvent:function(e,type){if(this.disabled){e.stopEvent();return false;} -this.onContainerEvent(e,type);},onContainerEvent:function(e,type){this.tree.fireEvent('container'+type,this.tree,e);},onNodeClick:function(e,node){node.ui.onClick(e);},onNodeOver:function(e,node){this.lastOverNode=node;node.ui.onOver(e);},onNodeOut:function(e,node){node.ui.onOut(e);},onIconOver:function(e,node){node.ui.addClass('x-tree-ec-over');},onIconOut:function(e,node){node.ui.removeClass('x-tree-ec-over');},onIconClick:function(e,node){node.ui.ecClick(e);},onCheckboxClick:function(e,node){node.ui.onCheckChange(e);},onNodeDblClick:function(e,node){node.ui.onDblClick(e);},onNodeContextMenu:function(e,node){node.ui.onContextMenu(e);},beforeEvent:function(e){var node=this.getNode(e);if(this.disabled||!node||!node.ui){e.stopEvent();return false;} -return true;},disable:function(){this.disabled=true;},enable:function(){this.disabled=false;}};Ext.tree.DefaultSelectionModel=Ext.extend(Ext.util.Observable,{constructor:function(config){this.selNode=null;this.addEvents('selectionchange','beforeselect');Ext.apply(this,config);Ext.tree.DefaultSelectionModel.superclass.constructor.call(this);},init:function(tree){this.tree=tree;tree.mon(tree.getTreeEl(),'keydown',this.onKeyDown,this);tree.on('click',this.onNodeClick,this);},onNodeClick:function(node,e){this.select(node);},select:function(node,selectNextNode){if(!Ext.fly(node.ui.wrap).isVisible()&&selectNextNode){return selectNextNode.call(this,node);} -var last=this.selNode;if(node==last){node.ui.onSelectedChange(true);}else if(this.fireEvent('beforeselect',this,node,last)!==false){if(last&&last.ui){last.ui.onSelectedChange(false);} -this.selNode=node;node.ui.onSelectedChange(true);this.fireEvent('selectionchange',this,node,last);} -return node;},unselect:function(node,silent){if(this.selNode==node){this.clearSelections(silent);}},clearSelections:function(silent){var n=this.selNode;if(n){n.ui.onSelectedChange(false);this.selNode=null;if(silent!==true){this.fireEvent('selectionchange',this,null);}} -return n;},getSelectedNode:function(){return this.selNode;},isSelected:function(node){return this.selNode==node;},selectPrevious:function(s){if(!(s=s||this.selNode||this.lastSelNode)){return null;} -var ps=s.previousSibling;if(ps){if(!ps.isExpanded()||ps.childNodes.length<1){return this.select(ps,this.selectPrevious);}else{var lc=ps.lastChild;while(lc&&lc.isExpanded()&&Ext.fly(lc.ui.wrap).isVisible()&&lc.childNodes.length>0){lc=lc.lastChild;} -return this.select(lc,this.selectPrevious);}}else if(s.parentNode&&(this.tree.rootVisible||!s.parentNode.isRoot)){return this.select(s.parentNode,this.selectPrevious);} -return null;},selectNext:function(s){if(!(s=s||this.selNode||this.lastSelNode)){return null;} -if(s.firstChild&&s.isExpanded()&&Ext.fly(s.ui.wrap).isVisible()){return this.select(s.firstChild,this.selectNext);}else if(s.nextSibling){return this.select(s.nextSibling,this.selectNext);}else if(s.parentNode){var newS=null;s.parentNode.bubble(function(){if(this.nextSibling){newS=this.getOwnerTree().selModel.select(this.nextSibling,this.selectNext);return false;}});return newS;} -return null;},onKeyDown:function(e){var s=this.selNode||this.lastSelNode;var sm=this;if(!s){return;} -var k=e.getKey();switch(k){case e.DOWN:e.stopEvent();this.selectNext();break;case e.UP:e.stopEvent();this.selectPrevious();break;case e.RIGHT:e.preventDefault();if(s.hasChildNodes()){if(!s.isExpanded()){s.expand();}else if(s.firstChild){this.select(s.firstChild,e);}} -break;case e.LEFT:e.preventDefault();if(s.hasChildNodes()&&s.isExpanded()){s.collapse();}else if(s.parentNode&&(this.tree.rootVisible||s.parentNode!=this.tree.getRootNode())){this.select(s.parentNode,e);} -break;};}});Ext.tree.MultiSelectionModel=Ext.extend(Ext.util.Observable,{constructor:function(config){this.selNodes=[];this.selMap={};this.addEvents('selectionchange');Ext.apply(this,config);Ext.tree.MultiSelectionModel.superclass.constructor.call(this);},init:function(tree){this.tree=tree;tree.mon(tree.getTreeEl(),'keydown',this.onKeyDown,this);tree.on('click',this.onNodeClick,this);},onNodeClick:function(node,e){if(e.ctrlKey&&this.isSelected(node)){this.unselect(node);}else{this.select(node,e,e.ctrlKey);}},select:function(node,e,keepExisting){if(keepExisting!==true){this.clearSelections(true);} -if(this.isSelected(node)){this.lastSelNode=node;return node;} -this.selNodes.push(node);this.selMap[node.id]=node;this.lastSelNode=node;node.ui.onSelectedChange(true);this.fireEvent('selectionchange',this,this.selNodes);return node;},unselect:function(node){if(this.selMap[node.id]){node.ui.onSelectedChange(false);var sn=this.selNodes;var index=sn.indexOf(node);if(index!=-1){this.selNodes.splice(index,1);} -delete this.selMap[node.id];this.fireEvent('selectionchange',this,this.selNodes);}},clearSelections:function(suppressEvent){var sn=this.selNodes;if(sn.length>0){for(var i=0,len=sn.length;i<len;i++){sn[i].ui.onSelectedChange(false);} -this.selNodes=[];this.selMap={};if(suppressEvent!==true){this.fireEvent('selectionchange',this,this.selNodes);}}},isSelected:function(node){return this.selMap[node.id]?true:false;},getSelectedNodes:function(){return this.selNodes.concat([]);},onKeyDown:Ext.tree.DefaultSelectionModel.prototype.onKeyDown,selectNext:Ext.tree.DefaultSelectionModel.prototype.selectNext,selectPrevious:Ext.tree.DefaultSelectionModel.prototype.selectPrevious});Ext.data.Tree=Ext.extend(Ext.util.Observable,{constructor:function(root){this.nodeHash={};this.root=null;if(root){this.setRootNode(root);} -this.addEvents("append","remove","move","insert","beforeappend","beforeremove","beforemove","beforeinsert");Ext.data.Tree.superclass.constructor.call(this);},pathSeparator:"/",proxyNodeEvent:function(){return this.fireEvent.apply(this,arguments);},getRootNode:function(){return this.root;},setRootNode:function(node){this.root=node;node.ownerTree=this;node.isRoot=true;this.registerNode(node);return node;},getNodeById:function(id){return this.nodeHash[id];},registerNode:function(node){this.nodeHash[node.id]=node;},unregisterNode:function(node){delete this.nodeHash[node.id];},toString:function(){return"[Tree"+(this.id?" "+this.id:"")+"]";}});Ext.data.Node=Ext.extend(Ext.util.Observable,{constructor:function(attributes){this.attributes=attributes||{};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=[];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);},fireEvent:function(evtName){if(Ext.data.Node.superclass.fireEvent.apply(this,arguments)===false){return false;} -var ot=this.getOwnerTree();if(ot){if(ot.proxyNodeEvent.apply(ot,arguments)===false){return false;}} -return true;},isLeaf:function(){return this.leaf===true;},setFirstChild:function(node){this.firstChild=node;},setLastChild:function(node){this.lastChild=node;},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(node){var multi=false;if(Ext.isArray(node)){multi=node;}else if(arguments.length>1){multi=arguments;} -if(multi){for(var i=0,len=multi.length;i<len;i++){this.appendChild(multi[i]);}}else{if(this.fireEvent("beforeappend",this.ownerTree,this,node)===false){return false;} -var index=this.childNodes.length;var oldParent=node.parentNode;if(oldParent){if(node.fireEvent("beforemove",node.getOwnerTree(),node,oldParent,this,index)===false){return false;} -oldParent.removeChild(node);} -index=this.childNodes.length;if(index===0){this.setFirstChild(node);} -this.childNodes.push(node);node.parentNode=this;var ps=this.childNodes[index-1];if(ps){node.previousSibling=ps;ps.nextSibling=node;}else{node.previousSibling=null;} -node.nextSibling=null;this.setLastChild(node);node.setOwnerTree(this.getOwnerTree());this.fireEvent("append",this.ownerTree,this,node,index);if(oldParent){node.fireEvent("move",this.ownerTree,node,oldParent,this,index);} -return node;}},removeChild:function(node,destroy){var index=this.childNodes.indexOf(node);if(index==-1){return false;} -if(this.fireEvent("beforeremove",this.ownerTree,this,node)===false){return false;} -this.childNodes.splice(index,1);if(node.previousSibling){node.previousSibling.nextSibling=node.nextSibling;} -if(node.nextSibling){node.nextSibling.previousSibling=node.previousSibling;} -if(this.firstChild==node){this.setFirstChild(node.nextSibling);} -if(this.lastChild==node){this.setLastChild(node.previousSibling);} -this.fireEvent("remove",this.ownerTree,this,node);if(destroy){node.destroy(true);}else{node.clear();} -return node;},clear:function(destroy){this.setOwnerTree(null,destroy);this.parentNode=this.previousSibling=this.nextSibling=null;if(destroy){this.firstChild=this.lastChild=null;}},destroy:function(silent){if(silent===true){this.purgeListeners();this.clear(true);Ext.each(this.childNodes,function(n){n.destroy(true);});this.childNodes=null;}else{this.remove(true);}},insertBefore:function(node,refNode){if(!refNode){return this.appendChild(node);} -if(node==refNode){return false;} -if(this.fireEvent("beforeinsert",this.ownerTree,this,node,refNode)===false){return false;} -var index=this.childNodes.indexOf(refNode);var oldParent=node.parentNode;var refIndex=index;if(oldParent==this&&this.childNodes.indexOf(node)<index){refIndex--;} -if(oldParent){if(node.fireEvent("beforemove",node.getOwnerTree(),node,oldParent,this,index,refNode)===false){return false;} -oldParent.removeChild(node);} -if(refIndex===0){this.setFirstChild(node);} -this.childNodes.splice(refIndex,0,node);node.parentNode=this;var ps=this.childNodes[refIndex-1];if(ps){node.previousSibling=ps;ps.nextSibling=node;}else{node.previousSibling=null;} -node.nextSibling=refNode;refNode.previousSibling=node;node.setOwnerTree(this.getOwnerTree());this.fireEvent("insert",this.ownerTree,this,node,refNode);if(oldParent){node.fireEvent("move",this.ownerTree,node,oldParent,this,refIndex,refNode);} -return node;},remove:function(destroy){if(this.parentNode){this.parentNode.removeChild(this,destroy);} -return this;},removeAll:function(destroy){var cn=this.childNodes,n;while((n=cn[0])){this.removeChild(n,destroy);} -return this;},item:function(index){return this.childNodes[index];},replaceChild:function(newChild,oldChild){var s=oldChild?oldChild.nextSibling:null;this.removeChild(oldChild);this.insertBefore(newChild,s);return oldChild;},indexOf:function(child){return this.childNodes.indexOf(child);},getOwnerTree:function(){if(!this.ownerTree){var p=this;while(p){if(p.ownerTree){this.ownerTree=p.ownerTree;break;} -p=p.parentNode;}} -return this.ownerTree;},getDepth:function(){var depth=0;var p=this;while(p.parentNode){++depth;p=p.parentNode;} -return depth;},setOwnerTree:function(tree,destroy){if(tree!=this.ownerTree){if(this.ownerTree){this.ownerTree.unregisterNode(this);} -this.ownerTree=tree;if(destroy!==true){Ext.each(this.childNodes,function(n){n.setOwnerTree(tree);});} -if(tree){tree.registerNode(this);}}},setId:function(id){if(id!==this.id){var t=this.ownerTree;if(t){t.unregisterNode(this);} -this.id=this.attributes.id=id;if(t){t.registerNode(this);} -this.onIdChange(id);}},onIdChange:Ext.emptyFn,getPath:function(attr){attr=attr||"id";var p=this.parentNode;var b=[this.attributes[attr]];while(p){b.unshift(p.attributes[attr]);p=p.parentNode;} -var sep=this.getOwnerTree().pathSeparator;return sep+b.join(sep);},bubble:function(fn,scope,args){var p=this;while(p){if(fn.apply(scope||p,args||[p])===false){break;} -p=p.parentNode;}},cascade:function(fn,scope,args){if(fn.apply(scope||this,args||[this])!==false){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].cascade(fn,scope,args);}}},eachChild:function(fn,scope,args){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){if(fn.apply(scope||cs[i],args||[cs[i]])===false){break;}}},findChild:function(attribute,value,deep){return this.findChildBy(function(){return this.attributes[attribute]==value;},null,deep);},findChildBy:function(fn,scope,deep){var cs=this.childNodes,len=cs.length,i=0,n,res;for(;i<len;i++){n=cs[i];if(fn.call(scope||n,n)===true){return n;}else if(deep){res=n.findChildBy(fn,scope,deep);if(res!=null){return res;}}} -return null;},sort:function(fn,scope){var cs=this.childNodes;var len=cs.length;if(len>0){var sortFn=scope?function(){fn.apply(scope,arguments);}:fn;cs.sort(sortFn);for(var i=0;i<len;i++){var n=cs[i];n.previousSibling=cs[i-1];n.nextSibling=cs[i+1];if(i===0){this.setFirstChild(n);} -if(i==len-1){this.setLastChild(n);}}}},contains:function(node){return node.isAncestor(this);},isAncestor:function(node){var p=this.parentNode;while(p){if(p==node){return true;} -p=p.parentNode;} -return false;},toString:function(){return"[Node"+(this.id?" "+this.id:"")+"]";}});Ext.tree.TreeNode=Ext.extend(Ext.data.Node,{constructor:function(attributes){attributes=attributes||{};if(Ext.isString(attributes)){attributes={text:attributes};} -this.childrenRendered=false;this.rendered=false;Ext.tree.TreeNode.superclass.constructor.call(this,attributes);this.expanded=attributes.expanded===true;this.isTarget=attributes.isTarget!==false;this.draggable=attributes.draggable!==false&&attributes.allowDrag!==false;this.allowChildren=attributes.allowChildren!==false&&attributes.allowDrop!==false;this.text=attributes.text;this.disabled=attributes.disabled===true;this.hidden=attributes.hidden===true;this.addEvents('textchange','beforeexpand','beforecollapse','expand','disabledchange','collapse','beforeclick','click','checkchange','beforedblclick','dblclick','contextmenu','beforechildrenrendered');var uiClass=this.attributes.uiProvider||this.defaultUI||Ext.tree.TreeNodeUI;this.ui=new uiClass(this);},preventHScroll:true,isExpanded:function(){return this.expanded;},getUI:function(){return this.ui;},getLoader:function(){var owner;return this.loader||((owner=this.getOwnerTree())&&owner.loader?owner.loader:(this.loader=new Ext.tree.TreeLoader()));},setFirstChild:function(node){var of=this.firstChild;Ext.tree.TreeNode.superclass.setFirstChild.call(this,node);if(this.childrenRendered&&of&&node!=of){of.renderIndent(true,true);} -if(this.rendered){this.renderIndent(true,true);}},setLastChild:function(node){var ol=this.lastChild;Ext.tree.TreeNode.superclass.setLastChild.call(this,node);if(this.childrenRendered&&ol&&node!=ol){ol.renderIndent(true,true);} -if(this.rendered){this.renderIndent(true,true);}},appendChild:function(n){if(!n.render&&!Ext.isArray(n)){n=this.getLoader().createNode(n);} -var node=Ext.tree.TreeNode.superclass.appendChild.call(this,n);if(node&&this.childrenRendered){node.render();} -this.ui.updateExpandIcon();return node;},removeChild:function(node,destroy){this.ownerTree.getSelectionModel().unselect(node);Ext.tree.TreeNode.superclass.removeChild.apply(this,arguments);if(!destroy){var rendered=node.ui.rendered;if(rendered){node.ui.remove();} -if(rendered&&this.childNodes.length<1){this.collapse(false,false);}else{this.ui.updateExpandIcon();} -if(!this.firstChild&&!this.isHiddenRoot()){this.childrenRendered=false;}} -return node;},insertBefore:function(node,refNode){if(!node.render){node=this.getLoader().createNode(node);} -var newNode=Ext.tree.TreeNode.superclass.insertBefore.call(this,node,refNode);if(newNode&&refNode&&this.childrenRendered){node.render();} -this.ui.updateExpandIcon();return newNode;},setText:function(text){var oldText=this.text;this.text=this.attributes.text=text;if(this.rendered){this.ui.onTextChange(this,text,oldText);} -this.fireEvent('textchange',this,text,oldText);},setIconCls:function(cls){var old=this.attributes.iconCls;this.attributes.iconCls=cls;if(this.rendered){this.ui.onIconClsChange(this,cls,old);}},setTooltip:function(tip,title){this.attributes.qtip=tip;this.attributes.qtipTitle=title;if(this.rendered){this.ui.onTipChange(this,tip,title);}},setIcon:function(icon){this.attributes.icon=icon;if(this.rendered){this.ui.onIconChange(this,icon);}},setHref:function(href,target){this.attributes.href=href;this.attributes.hrefTarget=target;if(this.rendered){this.ui.onHrefChange(this,href,target);}},setCls:function(cls){var old=this.attributes.cls;this.attributes.cls=cls;if(this.rendered){this.ui.onClsChange(this,cls,old);}},select:function(){var t=this.getOwnerTree();if(t){t.getSelectionModel().select(this);}},unselect:function(silent){var t=this.getOwnerTree();if(t){t.getSelectionModel().unselect(this,silent);}},isSelected:function(){var t=this.getOwnerTree();return t?t.getSelectionModel().isSelected(this):false;},expand:function(deep,anim,callback,scope){if(!this.expanded){if(this.fireEvent('beforeexpand',this,deep,anim)===false){return;} -if(!this.childrenRendered){this.renderChildren();} -this.expanded=true;if(!this.isHiddenRoot()&&(this.getOwnerTree().animate&&anim!==false)||anim){this.ui.animExpand(function(){this.fireEvent('expand',this);this.runCallback(callback,scope||this,[this]);if(deep===true){this.expandChildNodes(true,true);}}.createDelegate(this));return;}else{this.ui.expand();this.fireEvent('expand',this);this.runCallback(callback,scope||this,[this]);}}else{this.runCallback(callback,scope||this,[this]);} -if(deep===true){this.expandChildNodes(true);}},runCallback:function(cb,scope,args){if(Ext.isFunction(cb)){cb.apply(scope,args);}},isHiddenRoot:function(){return this.isRoot&&!this.getOwnerTree().rootVisible;},collapse:function(deep,anim,callback,scope){if(this.expanded&&!this.isHiddenRoot()){if(this.fireEvent('beforecollapse',this,deep,anim)===false){return;} -this.expanded=false;if((this.getOwnerTree().animate&&anim!==false)||anim){this.ui.animCollapse(function(){this.fireEvent('collapse',this);this.runCallback(callback,scope||this,[this]);if(deep===true){this.collapseChildNodes(true);}}.createDelegate(this));return;}else{this.ui.collapse();this.fireEvent('collapse',this);this.runCallback(callback,scope||this,[this]);}}else if(!this.expanded){this.runCallback(callback,scope||this,[this]);} -if(deep===true){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].collapse(true,false);}}},delayedExpand:function(delay){if(!this.expandProcId){this.expandProcId=this.expand.defer(delay,this);}},cancelExpand:function(){if(this.expandProcId){clearTimeout(this.expandProcId);} -this.expandProcId=false;},toggle:function(){if(this.expanded){this.collapse();}else{this.expand();}},ensureVisible:function(callback,scope){var tree=this.getOwnerTree();tree.expandPath(this.parentNode?this.parentNode.getPath():this.getPath(),false,function(){var node=tree.getNodeById(this.id);tree.getTreeEl().scrollChildIntoView(node.ui.anchor);this.runCallback(callback,scope||this,[this]);}.createDelegate(this));},expandChildNodes:function(deep,anim){var cs=this.childNodes,i,len=cs.length;for(i=0;i<len;i++){cs[i].expand(deep,anim);}},collapseChildNodes:function(deep){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].collapse(deep);}},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(suppressEvent){if(suppressEvent!==false){this.fireEvent('beforechildrenrendered',this);} -var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].render(true);} -this.childrenRendered=true;},sort:function(fn,scope){Ext.tree.TreeNode.superclass.sort.apply(this,arguments);if(this.childrenRendered){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].render(true);}}},render:function(bulkRender){this.ui.render(bulkRender);if(!this.rendered){this.getOwnerTree().registerNode(this);this.rendered=true;if(this.expanded){this.expanded=false;this.expand(false,false);}}},renderIndent:function(deep,refresh){if(refresh){this.ui.childIndent=null;} -this.ui.renderIndent();if(deep===true&&this.childrenRendered){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].renderIndent(true,refresh);}}},beginUpdate:function(){this.childrenRendered=false;},endUpdate:function(){if(this.expanded&&this.rendered){this.renderChildren();}},destroy:function(silent){if(silent===true){this.unselect(true);} -Ext.tree.TreeNode.superclass.destroy.call(this,silent);Ext.destroy(this.ui,this.loader);this.ui=this.loader=null;},onIdChange:function(id){this.ui.onIdChange(id);}});Ext.tree.TreePanel.nodeTypes.node=Ext.tree.TreeNode;Ext.tree.AsyncTreeNode=function(config){this.loaded=config&&config.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(deep,anim,callback,scope){if(this.loading){var timer;var f=function(){if(!this.loading){clearInterval(timer);this.expand(deep,anim,callback,scope);}}.createDelegate(this);timer=setInterval(f,200);return;} -if(!this.loaded){if(this.fireEvent("beforeload",this)===false){return;} -this.loading=true;this.ui.beforeLoad(this);var loader=this.loader||this.attributes.loader||this.getOwnerTree().getLoader();if(loader){loader.load(this,this.loadComplete.createDelegate(this,[deep,anim,callback,scope]),this);return;}} -Ext.tree.AsyncTreeNode.superclass.expand.call(this,deep,anim,callback,scope);},isLoading:function(){return this.loading;},loadComplete:function(deep,anim,callback,scope){this.loading=false;this.loaded=true;this.ui.afterLoad(this);this.fireEvent("load",this);this.expand(deep,anim,callback,scope);},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(callback,scope){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,callback,scope);}});Ext.tree.TreePanel.nodeTypes.async=Ext.tree.AsyncTreeNode;Ext.tree.TreeNodeUI=Ext.extend(Object,{constructor:function(node){Ext.apply(this,{node:node,rendered:false,animating:false,wasLeaf:true,ecc:'x-tree-ec-icon x-tree-elbow',emptyIcon:Ext.BLANK_IMAGE_URL});},removeChild:function(node){if(this.rendered){this.ctNode.removeChild(node.ui.getEl());}},beforeLoad:function(){this.addClass("x-tree-node-loading");},afterLoad:function(){this.removeClass("x-tree-node-loading");},onTextChange:function(node,text,oldText){if(this.rendered){this.textNode.innerHTML=text;}},onIconClsChange:function(node,cls,oldCls){if(this.rendered){Ext.fly(this.iconNode).replaceClass(oldCls,cls);}},onIconChange:function(node,icon){if(this.rendered){var empty=Ext.isEmpty(icon);this.iconNode.src=empty?this.emptyIcon:icon;Ext.fly(this.iconNode)[empty?'removeClass':'addClass']('x-tree-node-inline-icon');}},onTipChange:function(node,tip,title){if(this.rendered){var hasTitle=Ext.isDefined(title);if(this.textNode.setAttributeNS){this.textNode.setAttributeNS("ext","qtip",tip);if(hasTitle){this.textNode.setAttributeNS("ext","qtitle",title);}}else{this.textNode.setAttribute("ext:qtip",tip);if(hasTitle){this.textNode.setAttribute("ext:qtitle",title);}}}},onHrefChange:function(node,href,target){if(this.rendered){this.anchor.href=this.getHref(href);if(Ext.isDefined(target)){this.anchor.target=target;}}},onClsChange:function(node,cls,oldCls){if(this.rendered){Ext.fly(this.elNode).replaceClass(oldCls,cls);}},onDisableChange:function(node,state){this.disabled=state;if(this.checkbox){this.checkbox.disabled=state;} -this[state?'addClass':'removeClass']('x-tree-node-disabled');},onSelectedChange:function(state){if(state){this.focus();this.addClass("x-tree-selected");}else{this.removeClass("x-tree-selected");}},onMove:function(tree,node,oldParent,newParent,index,refNode){this.childIndent=null;if(this.rendered){var targetNode=newParent.ui.getContainer();if(!targetNode){this.holder=document.createElement("div");this.holder.appendChild(this.wrap);return;} -var insertBefore=refNode?refNode.ui.getEl():null;if(insertBefore){targetNode.insertBefore(this.wrap,insertBefore);}else{targetNode.appendChild(this.wrap);} -this.node.renderIndent(true,oldParent!=newParent);}},addClass:function(cls){if(this.elNode){Ext.fly(this.elNode).addClass(cls);}},removeClass:function(cls){if(this.elNode){Ext.fly(this.elNode).removeClass(cls);}},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.onDisableChange(this.node,true);} -if(this.node.hidden){this.hide();} -var ot=this.node.getOwnerTree();var dd=ot.enableDD||ot.enableDrag||ot.enableDrop;if(dd&&(!this.node.isRoot||ot.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(e){if(this.node.hasListener("contextmenu")||this.node.getOwnerTree().hasListener("contextmenu")){e.preventDefault();this.focus();this.fireEvent("contextmenu",this.node,e);}},onClick:function(e){if(this.dropping){e.stopEvent();return;} -if(this.fireEvent("beforeclick",this.node,e)!==false){var a=e.getTarget('a');if(!this.disabled&&this.node.attributes.href&&a){this.fireEvent("click",this.node,e);return;}else if(a&&e.ctrlKey){e.stopEvent();} -e.preventDefault();if(this.disabled){return;} -if(this.node.attributes.singleClickExpand&&!this.animating&&this.node.isExpandable()){this.node.toggle();} -this.fireEvent("click",this.node,e);}else{e.stopEvent();}},onDblClick:function(e){e.preventDefault();if(this.disabled){return;} -if(this.fireEvent("beforedblclick",this.node,e)!==false){if(this.checkbox){this.toggleCheck();} -if(!this.animating&&this.node.isExpandable()){this.node.toggle();} -this.fireEvent("dblclick",this.node,e);}},onOver:function(e){this.addClass('x-tree-node-over');},onOut:function(e){this.removeClass('x-tree-node-over');},onCheckChange:function(){var checked=this.checkbox.checked;this.checkbox.defaultChecked=checked;this.node.attributes.checked=checked;this.fireEvent('checkchange',this.node,checked);},ecClick:function(e){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(e){}}else{try{var noscroll=this.node.getOwnerTree().getTreeEl().dom;var l=noscroll.scrollLeft;this.anchor.focus();noscroll.scrollLeft=l;}catch(e){}}},toggleCheck:function(value){var cb=this.checkbox;if(cb){cb.checked=(value===undefined?!cb.checked:value);this.onCheckChange();}},blur:function(){try{this.anchor.blur();}catch(e){}},animExpand:function(callback){var ct=Ext.get(this.ctNode);ct.stopFx();if(!this.node.isExpandable()){this.updateExpandIcon();this.ctNode.style.display="";Ext.callback(callback);return;} -this.animating=true;this.updateExpandIcon();ct.slideIn('t',{callback:function(){this.animating=false;Ext.callback(callback);},scope:this,duration:this.node.ownerTree.duration||.25});},highlight:function(){var tree=this.node.getOwnerTree();Ext.fly(this.wrap).highlight(tree.hlColor||"C3DAF9",{endColor:tree.hlBaseColor});},collapse:function(){this.updateExpandIcon();this.ctNode.style.display="none";},animCollapse:function(callback){var ct=Ext.get(this.ctNode);ct.enableDisplayMode('block');ct.stopFx();this.animating=true;this.updateExpandIcon();ct.slideOut('t',{callback:function(){this.animating=false;Ext.callback(callback);},scope:this,duration:this.node.ownerTree.duration||.25});},getContainer:function(){return this.ctNode;},getEl:function(){return this.wrap;},appendDDGhost:function(ghostNode){ghostNode.appendChild(this.elNode.cloneNode(true));},getDDRepairXY:function(){return Ext.lib.Dom.getXY(this.iconNode);},onRender:function(){this.render();},render:function(bulkRender){var n=this.node,a=n.attributes;var targetNode=n.parentNode?n.parentNode.ui.getContainer():n.ownerTree.innerCt.dom;if(!this.rendered){this.rendered=true;this.renderElements(n,a,targetNode,bulkRender);if(a.qtip){this.onTipChange(n,a.qtip,a.qtipTitle);}else if(a.qtipCfg){a.qtipCfg.target=Ext.id(this.textNode);Ext.QuickTips.register(a.qtipCfg);} -this.initEvents();if(!this.node.expanded){this.updateExpandIcon(true);}}else{if(bulkRender===true){targetNode.appendChild(this.wrap);}}},renderElements:function(n,a,targetNode,bulkRender){this.indentMarkup=n.parentNode?n.parentNode.ui.getChildIndent():'';var cb=Ext.isBoolean(a.checked),nel,href=this.getHref(a.href),buf=['<li class="x-tree-node"><div ext:tree-node-id="',n.id,'" class="x-tree-node-el x-tree-node-leaf x-unselectable ',a.cls,'" unselectable="on">','<span class="x-tree-node-indent">',this.indentMarkup,"</span>",'<img alt="" src="',this.emptyIcon,'" class="x-tree-ec-icon x-tree-elbow" />','<img alt="" src="',a.icon||this.emptyIcon,'" class="x-tree-node-icon',(a.icon?" x-tree-node-inline-icon":""),(a.iconCls?" "+a.iconCls:""),'" unselectable="on" />',cb?('<input class="x-tree-node-cb" type="checkbox" '+(a.checked?'checked="checked" />':'/>')):'','<a hidefocus="on" class="x-tree-node-anchor" href="',href,'" tabIndex="1" ',a.hrefTarget?' target="'+a.hrefTarget+'"':"",'><span unselectable="on">',n.text,"</span></a></div>",'<ul class="x-tree-node-ct" style="display:none;"></ul>',"</li>"].join('');if(bulkRender!==true&&n.nextSibling&&(nel=n.nextSibling.ui.getEl())){this.wrap=Ext.DomHelper.insertHtml("beforeBegin",nel,buf);}else{this.wrap=Ext.DomHelper.insertHtml("beforeEnd",targetNode,buf);} -this.elNode=this.wrap.childNodes[0];this.ctNode=this.wrap.childNodes[1];var cs=this.elNode.childNodes;this.indentNode=cs[0];this.ecNode=cs[1];this.iconNode=cs[2];var index=3;if(cb){this.checkbox=cs[3];this.checkbox.defaultChecked=this.checkbox.checked;index++;} -this.anchor=cs[index];this.textNode=cs[index].firstChild;},getHref:function(href){return Ext.isEmpty(href)?(Ext.isGecko?'':'#'):href;},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 n=this.node,c1,c2,cls=n.isLast()?"x-tree-elbow-end":"x-tree-elbow",hasChild=n.hasChildNodes();if(hasChild||n.attributes.expandable){if(n.expanded){cls+="-minus";c1="x-tree-node-collapsed";c2="x-tree-node-expanded";}else{cls+="-plus";c1="x-tree-node-expanded";c2="x-tree-node-collapsed";} -if(this.wasLeaf){this.removeClass("x-tree-node-leaf");this.wasLeaf=false;} -if(this.c1!=c1||this.c2!=c2){Ext.fly(this.elNode).replaceClass(c1,c2);this.c1=c1;this.c2=c2;}}else{if(!this.wasLeaf){Ext.fly(this.elNode).replaceClass("x-tree-node-expanded","x-tree-node-collapsed");delete this.c1;delete this.c2;this.wasLeaf=true;}} -var ecc="x-tree-ec-icon "+cls;if(this.ecc!=ecc){this.ecNode.className=ecc;this.ecc=ecc;}}},onIdChange:function(id){if(this.rendered){this.elNode.setAttribute('ext:tree-node-id',id);}},getChildIndent:function(){if(!this.childIndent){var buf=[],p=this.node;while(p){if(!p.isRoot||(p.isRoot&&p.ownerTree.rootVisible)){if(!p.isLast()){buf.unshift('<img alt="" src="'+this.emptyIcon+'" class="x-tree-elbow-line" />');}else{buf.unshift('<img alt="" src="'+this.emptyIcon+'" class="x-tree-icon" />');}} -p=p.parentNode;} -this.childIndent=buf.join("");} -return this.childIndent;},renderIndent:function(){if(this.rendered){var indent="",p=this.node.parentNode;if(p){indent=p.ui.getChildIndent();} -if(this.indentMarkup!=indent){this.indentNode.innerHTML=indent;this.indentMarkup=indent;} -this.updateExpandIcon();}},destroy:function(){if(this.elNode){Ext.dd.Registry.unregister(this.elNode.id);} -Ext.each(['textnode','anchor','checkbox','indentNode','ecNode','iconNode','elNode','ctNode','wrap','holder'],function(el){if(this[el]){Ext.fly(this[el]).remove();delete this[el];}},this);delete this.node;}});Ext.tree.RootTreeNodeUI=Ext.extend(Ext.tree.TreeNodeUI,{render:function(){if(!this.rendered){var targetNode=this.node.ownerTree.innerCt.dom;this.node.expanded=true;targetNode.innerHTML='<div class="x-tree-root-node"></div>';this.wrap=this.ctNode=targetNode.firstChild;}},collapse:Ext.emptyFn,expand:Ext.emptyFn});Ext.tree.TreeLoader=function(config){this.baseParams={};Ext.apply(this,config);this.addEvents("beforeload","load","loadexception");Ext.tree.TreeLoader.superclass.constructor.call(this);if(Ext.isString(this.paramOrder)){this.paramOrder=this.paramOrder.split(/[\s,|]/);}};Ext.extend(Ext.tree.TreeLoader,Ext.util.Observable,{uiProviders:{},clearOnLoad:true,paramOrder:undefined,paramsAsHash:false,nodeParameter:'node',directFn:undefined,load:function(node,callback,scope){if(this.clearOnLoad){while(node.firstChild){node.removeChild(node.firstChild);}} -if(this.doPreload(node)){this.runCallback(callback,scope||node,[node]);}else if(this.directFn||this.dataUrl||this.url){this.requestData(node,callback,scope||node);}},doPreload:function(node){if(node.attributes.children){if(node.childNodes.length<1){var cs=node.attributes.children;node.beginUpdate();for(var i=0,len=cs.length;i<len;i++){var cn=node.appendChild(this.createNode(cs[i]));if(this.preloadChildren){this.doPreload(cn);}} -node.endUpdate();} -return true;} -return false;},getParams:function(node){var bp=Ext.apply({},this.baseParams),np=this.nodeParameter,po=this.paramOrder;np&&(bp[np]=node.id);if(this.directFn){var buf=[node.id];if(po){if(np&&po.indexOf(np)>-1){buf=[];} -for(var i=0,len=po.length;i<len;i++){buf.push(bp[po[i]]);}}else if(this.paramsAsHash){buf=[bp];} -return buf;}else{return bp;}},requestData:function(node,callback,scope){if(this.fireEvent("beforeload",this,node,callback)!==false){if(this.directFn){var args=this.getParams(node);args.push(this.processDirectResponse.createDelegate(this,[{callback:callback,node:node,scope:scope}],true));this.directFn.apply(window,args);}else{this.transId=Ext.Ajax.request({method:this.requestMethod,url:this.dataUrl||this.url,success:this.handleResponse,failure:this.handleFailure,scope:this,argument:{callback:callback,node:node,scope:scope},params:this.getParams(node)});}}else{this.runCallback(callback,scope||node,[]);}},processDirectResponse:function(result,response,args){if(response.status){this.handleResponse({responseData:Ext.isArray(result)?result:null,responseText:result,argument:args});}else{this.handleFailure({argument:args});}},runCallback:function(cb,scope,args){if(Ext.isFunction(cb)){cb.apply(scope,args);}},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){attr.loader=this;} -if(Ext.isString(attr.uiProvider)){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(response,node,callback,scope){var json=response.responseText;try{var o=response.responseData||Ext.decode(json);node.beginUpdate();for(var i=0,len=o.length;i<len;i++){var n=this.createNode(o[i]);if(n){node.appendChild(n);}} -node.endUpdate();this.runCallback(callback,scope||node,[node]);}catch(e){this.handleFailure(response);}},handleResponse:function(response){this.transId=false;var a=response.argument;this.processResponse(response,a.node,a.callback,a.scope);this.fireEvent("load",this,a.node,response);},handleFailure:function(response){this.transId=false;var a=response.argument;this.fireEvent("loadexception",this,a.node,response);this.runCallback(a.callback,a.scope||a.node,[a.node]);},destroy:function(){this.abort();this.purgeListeners();}});Ext.tree.TreeFilter=function(tree,config){this.tree=tree;this.filtered={};Ext.apply(this,config);};Ext.tree.TreeFilter.prototype={clearBlank:false,reverse:false,autoClear:false,remove:false,filter:function(value,attr,startNode){attr=attr||"text";var f;if(typeof value=="string"){var vlen=value.length;if(vlen==0&&this.clearBlank){this.clear();return;} -value=value.toLowerCase();f=function(n){return n.attributes[attr].substr(0,vlen).toLowerCase()==value;};}else if(value.exec){f=function(n){return value.test(n.attributes[attr]);};}else{throw'Illegal filter type, must be string or regex';} -this.filterBy(f,null,startNode);},filterBy:function(fn,scope,startNode){startNode=startNode||this.tree.root;if(this.autoClear){this.clear();} -var af=this.filtered,rv=this.reverse;var f=function(n){if(n==startNode){return true;} -if(af[n.id]){return false;} -var m=fn.call(scope||n,n);if(!m||rv){af[n.id]=n;n.ui.hide();return false;} -return true;};startNode.cascade(f);if(this.remove){for(var id in af){if(typeof id!="function"){var n=af[id];if(n&&n.parentNode){n.parentNode.removeChild(n);}}}}},clear:function(){var t=this.tree;var af=this.filtered;for(var id in af){if(typeof id!="function"){var n=af[id];if(n){n.ui.show();}}} -this.filtered={};}};Ext.tree.TreeSorter=Ext.extend(Object,{constructor:function(tree,config){Ext.apply(this,config);tree.on({scope:this,beforechildrenrendered:this.doSort,append:this.updateSort,insert:this.updateSort,textchange:this.updateSortParent});var desc=this.dir&&this.dir.toLowerCase()=='desc',prop=this.property||'text';sortType=this.sortType;folderSort=this.folderSort;caseSensitive=this.caseSensitive===true;leafAttr=this.leafAttr||'leaf';if(Ext.isString(sortType)){sortType=Ext.data.SortTypes[sortType];} -this.sortFn=function(n1,n2){var attr1=n1.attributes,attr2=n2.attributes;if(folderSort){if(attr1[leafAttr]&&!attr2[leafAttr]){return 1;} -if(!attr1[leafAttr]&&attr2[leafAttr]){return-1;}} -var prop1=attr1[prop],prop2=attr2[prop],v1=sortType?sortType(prop1):(caseSensitive?prop1:prop1.toUpperCase());v2=sortType?sortType(prop2):(caseSensitive?prop2:prop2.toUpperCase());if(v1<v2){return desc?1:-1;}else if(v1>v2){return desc?-1:1;} -return 0;};},doSort:function(node){node.sort(this.sortFn);},updateSort:function(tree,node){if(node.childrenRendered){this.doSort.defer(1,this,[node]);}},updateSortParent:function(node){var p=node.parentNode;if(p&&p.childrenRendered){this.doSort.defer(1,this,[p]);}}});if(Ext.dd.DropZone){Ext.tree.TreeDropZone=function(tree,config){this.allowParentInsert=config.allowParentInsert||false;this.allowContainerDrop=config.allowContainerDrop||false;this.appendOnly=config.appendOnly||false;Ext.tree.TreeDropZone.superclass.constructor.call(this,tree.getTreeEl(),config);this.tree=tree;this.dragOverData={};this.lastInsertClass="x-tree-no-status";};Ext.extend(Ext.tree.TreeDropZone,Ext.dd.DropZone,{ddGroup:"TreeDD",expandDelay:1000,expandNode:function(node){if(node.hasChildNodes()&&!node.isExpanded()){node.expand(false,null,this.triggerCacheRefresh.createDelegate(this));}},queueExpand:function(node){this.expandProcId=this.expandNode.defer(this.expandDelay,this,[node]);},cancelExpand:function(){if(this.expandProcId){clearTimeout(this.expandProcId);this.expandProcId=false;}},isValidDropPoint:function(n,pt,dd,e,data){if(!n||!data){return false;} -var targetNode=n.node;var dropNode=data.node;if(!(targetNode&&targetNode.isTarget&&pt)){return false;} -if(pt=="append"&&targetNode.allowChildren===false){return false;} -if((pt=="above"||pt=="below")&&(targetNode.parentNode&&targetNode.parentNode.allowChildren===false)){return false;} -if(dropNode&&(targetNode==dropNode||dropNode.contains(targetNode))){return false;} -var overEvent=this.dragOverData;overEvent.tree=this.tree;overEvent.target=targetNode;overEvent.data=data;overEvent.point=pt;overEvent.source=dd;overEvent.rawEvent=e;overEvent.dropNode=dropNode;overEvent.cancel=false;var result=this.tree.fireEvent("nodedragover",overEvent);return overEvent.cancel===false&&result!==false;},getDropPoint:function(e,n,dd){var tn=n.node;if(tn.isRoot){return tn.allowChildren!==false?"append":false;} -var dragEl=n.ddel;var t=Ext.lib.Dom.getY(dragEl),b=t+dragEl.offsetHeight;var y=Ext.lib.Event.getPageY(e);var noAppend=tn.allowChildren===false||tn.isLeaf();if(this.appendOnly||tn.parentNode.allowChildren===false){return noAppend?false:"append";} -var noBelow=false;if(!this.allowParentInsert){noBelow=tn.hasChildNodes()&&tn.isExpanded();} -var q=(b-t)/(noAppend?2:3);if(y>=t&&y<(t+q)){return"above";}else if(!noBelow&&(noAppend||y>=b-q&&y<=b)){return"below";}else{return"append";}},onNodeEnter:function(n,dd,e,data){this.cancelExpand();},onContainerOver:function(dd,e,data){if(this.allowContainerDrop&&this.isValidDropPoint({ddel:this.tree.getRootNode().ui.elNode,node:this.tree.getRootNode()},"append",dd,e,data)){return this.dropAllowed;} -return this.dropNotAllowed;},onNodeOver:function(n,dd,e,data){var pt=this.getDropPoint(e,n,dd);var node=n.node;if(!this.expandProcId&&pt=="append"&&node.hasChildNodes()&&!n.node.isExpanded()){this.queueExpand(node);}else if(pt!="append"){this.cancelExpand();} -var returnCls=this.dropNotAllowed;if(this.isValidDropPoint(n,pt,dd,e,data)){if(pt){var el=n.ddel;var cls;if(pt=="above"){returnCls=n.node.isFirst()?"x-tree-drop-ok-above":"x-tree-drop-ok-between";cls="x-tree-drag-insert-above";}else if(pt=="below"){returnCls=n.node.isLast()?"x-tree-drop-ok-below":"x-tree-drop-ok-between";cls="x-tree-drag-insert-below";}else{returnCls="x-tree-drop-ok-append";cls="x-tree-drag-append";} -if(this.lastInsertClass!=cls){Ext.fly(el).replaceClass(this.lastInsertClass,cls);this.lastInsertClass=cls;}}} -return returnCls;},onNodeOut:function(n,dd,e,data){this.cancelExpand();this.removeDropIndicators(n);},onNodeDrop:function(n,dd,e,data){var point=this.getDropPoint(e,n,dd);var targetNode=n.node;targetNode.ui.startDrop();if(!this.isValidDropPoint(n,point,dd,e,data)){targetNode.ui.endDrop();return false;} -var dropNode=data.node||(dd.getTreeNode?dd.getTreeNode(data,targetNode,point,e):null);return this.processDrop(targetNode,data,point,dd,e,dropNode);},onContainerDrop:function(dd,e,data){if(this.allowContainerDrop&&this.isValidDropPoint({ddel:this.tree.getRootNode().ui.elNode,node:this.tree.getRootNode()},"append",dd,e,data)){var targetNode=this.tree.getRootNode();targetNode.ui.startDrop();var dropNode=data.node||(dd.getTreeNode?dd.getTreeNode(data,targetNode,'append',e):null);return this.processDrop(targetNode,data,'append',dd,e,dropNode);} -return false;},processDrop:function(target,data,point,dd,e,dropNode){var dropEvent={tree:this.tree,target:target,data:data,point:point,source:dd,rawEvent:e,dropNode:dropNode,cancel:!dropNode,dropStatus:false};var retval=this.tree.fireEvent("beforenodedrop",dropEvent);if(retval===false||dropEvent.cancel===true||!dropEvent.dropNode){target.ui.endDrop();return dropEvent.dropStatus;} -target=dropEvent.target;if(point=='append'&&!target.isExpanded()){target.expand(false,null,function(){this.completeDrop(dropEvent);}.createDelegate(this));}else{this.completeDrop(dropEvent);} -return true;},completeDrop:function(de){var ns=de.dropNode,p=de.point,t=de.target;if(!Ext.isArray(ns)){ns=[ns];} -var n;for(var i=0,len=ns.length;i<len;i++){n=ns[i];if(p=="above"){t.parentNode.insertBefore(n,t);}else if(p=="below"){t.parentNode.insertBefore(n,t.nextSibling);}else{t.appendChild(n);}} -n.ui.focus();if(Ext.enableFx&&this.tree.hlDrop){n.ui.highlight();} -t.ui.endDrop();this.tree.fireEvent("nodedrop",de);},afterNodeMoved:function(dd,data,e,targetNode,dropNode){if(Ext.enableFx&&this.tree.hlDrop){dropNode.ui.focus();dropNode.ui.highlight();} -this.tree.fireEvent("nodedrop",this.tree,targetNode,data,dd,e);},getTree:function(){return this.tree;},removeDropIndicators:function(n){if(n&&n.ddel){var el=n.ddel;Ext.fly(el).removeClass(["x-tree-drag-insert-above","x-tree-drag-insert-below","x-tree-drag-append"]);this.lastInsertClass="_noclass";}},beforeDragDrop:function(target,e,id){this.cancelExpand();return true;},afterRepair:function(data){if(data&&Ext.enableFx){data.node.ui.highlight();} -this.hideProxy();}});} -if(Ext.dd.DragZone){Ext.tree.TreeDragZone=function(tree,config){Ext.tree.TreeDragZone.superclass.constructor.call(this,tree.innerCt,config);this.tree=tree;};Ext.extend(Ext.tree.TreeDragZone,Ext.dd.DragZone,{ddGroup:"TreeDD",onBeforeDrag:function(data,e){var n=data.node;return n&&n.draggable&&!n.disabled;},onInitDrag:function(e){var data=this.dragData;this.tree.getSelectionModel().select(data.node);this.tree.eventModel.disable();this.proxy.update("");data.node.ui.appendDDGhost(this.proxy.ghost.dom);this.tree.fireEvent("startdrag",this.tree,data.node,e);},getRepairXY:function(e,data){return data.node.ui.getDDRepairXY();},onEndDrag:function(data,e){this.tree.eventModel.enable.defer(100,this.tree.eventModel);this.tree.fireEvent("enddrag",this.tree,data.node,e);},onValidDrop:function(dd,e,id){this.tree.fireEvent("dragdrop",this.tree,this.dragData.node,dd,e);this.hideProxy();},beforeInvalidDrop:function(e,id){var sm=this.tree.getSelectionModel();sm.clearSelections();sm.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(tree,fc,config){fc=fc||{};var field=fc.events?fc:new Ext.form.TextField(fc);Ext.tree.TreeEditor.superclass.constructor.call(this,field,config);this.tree=tree;if(!tree.rendered){tree.on('render',this.initEditor,this);}else{this.initEditor(tree);}};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(tree){tree.on({scope:this,beforeclick:this.beforeNodeClick,dblclick:this.onNodeDblClick});this.on({scope:this,complete:this.updateNode,beforestartedit:this.fitToTree,specialkey:this.onSpecialKey});this.on('startedit',this.bindScroll,this,{delay:10});},fitToTree:function(ed,el){var td=this.tree.getTreeEl().dom,nd=el.dom;if(td.scrollLeft>nd.offsetLeft){td.scrollLeft=nd.offsetLeft;} -var w=Math.min(this.maxWidth,(td.clientWidth>20?td.clientWidth:td.offsetWidth)-Math.max(0,nd.offsetLeft-td.scrollLeft)-5);this.setSize(w,'');},triggerEdit:function(node,defer){this.completeEdit();if(node.attributes.editable!==false){this.editNode=node;if(this.tree.autoScroll){Ext.fly(node.ui.getEl()).scrollIntoView(this.tree.body);} -var value=node.text||'';if(!Ext.isGecko&&Ext.isEmpty(node.text)){node.setText(' ');} -this.autoEditTimer=this.startEdit.defer(this.editDelay,this,[node.ui.textNode,value]);return false;}},bindScroll:function(){this.tree.getTreeEl().on('scroll',this.cancelEdit,this);},beforeNodeClick:function(node,e){clearTimeout(this.autoEditTimer);if(this.tree.getSelectionModel().isSelected(node)){e.stopEvent();return this.triggerEdit(node);}},onNodeDblClick:function(node,e){clearTimeout(this.autoEditTimer);},updateNode:function(ed,value){this.tree.getTreeEl().un('scroll',this.cancelEdit,this);this.editNode.setText(value);},onHide:function(){Ext.tree.TreeEditor.superclass.onHide.call(this);if(this.editNode){this.editNode.ui.focus.defer(50,this.editNode.ui);}},onSpecialKey:function(field,e){var k=e.getKey();if(k==e.ESC){e.stopEvent();this.cancelEdit();}else if(k==e.ENTER&&!e.hasModifier()){e.stopEvent();this.completeEdit();}},onDestroy:function(){clearTimeout(this.autoEditTimer);Ext.tree.TreeEditor.superclass.onDestroy.call(this);var tree=this.tree;tree.un('beforeclick',this.beforeNodeClick,this);tree.un('dblclick',this.onNodeDblClick,this);}});Ext.Window=Ext.extend(Ext.Panel,{baseCls:'x-window',resizable:true,draggable:true,closable:true,closeAction:'close',constrain:false,constrainHeader:false,plain:false,minimizable:false,maximizable:false,minHeight:100,minWidth:200,expandOnShow:true,showAnimDuration:0.25,hideAnimDuration:0.25,collapsible:false,initHidden:undefined,hidden:true,elements:'header,body',frame:true,floating:true,initComponent:function(){this.initTools();Ext.Window.superclass.initComponent.call(this);this.addEvents('resize','maximize','minimize','restore');if(Ext.isDefined(this.initHidden)){this.hidden=this.initHidden;} -if(this.hidden===false){this.hidden=true;this.show();}},getState:function(){return Ext.apply(Ext.Window.superclass.getState.call(this)||{},this.getBox(true));},onRender:function(ct,position){Ext.Window.superclass.onRender.call(this,ct,position);if(this.plain){this.el.addClass('x-window-plain');} -this.focusEl=this.el.createChild({tag:'a',href:'#',cls:'x-dlg-focus',tabIndex:'-1',html:' '});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);} -if(this.maximizable){this.mon(this.header,'dblclick',this.toggleMaximize,this);}},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,handleCls:'x-window-handle'});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 km=this.getKeyMap();km.on(27,this.onEsc,this);km.disable();}},initDraggable:function(){this.dd=new Ext.Window.DD(this);},onEsc:function(k,e){e.stopEvent();this[this.closeAction]();},beforeDestroy:function(){if(this.rendered){this.hide();this.clearAnchor();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});} -if(this.closable){this.addTool({id:'close',handler:this[this.closeAction].createDelegate(this,[])});}},resizerAction:function(){var box=this.proxy.getBox();this.proxy.hide();this.window.handleResize(box);return box;},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(box){var rz=this.resizeBox;if(rz.x!=box.x||rz.y!=box.y){this.updateBox(box);}else{this.setSize(box);if(Ext.isIE6&&Ext.isStrict){this.doLayout();}} -this.focus();this.updateHandles();this.saveState();},focus:function(){var f=this.focusEl,db=this.defaultButton,t=typeof db,el,ct;if(Ext.isDefined(db)){if(Ext.isNumber(db)&&this.fbar){f=this.fbar.items.get(db);}else if(Ext.isString(db)){f=Ext.getCmp(db);}else{f=db;} -el=f.getEl();ct=Ext.getDom(this.container);if(el&&ct){if(ct!=document.body&&!Ext.lib.Region.getRegion(ct).contains(Ext.lib.Region.getRegion(el.dom))){return;}}} -f=f||this.focusEl;f.focus.defer(10,f);},setAnimateTarget:function(el){el=Ext.get(el);this.animateTarget=el;},beforeShow:function(){delete this.el.lastXY;delete this.el.lastLT;if(this.x===undefined||this.y===undefined){var xy=this.el.getAlignToXY(this.container,'c-c');var pos=this.el.translatePoints(xy[0],xy[1]);this.x=this.x===undefined?pos.left:this.x;this.y=this.y===undefined?pos.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(animateTarget,cb,scope){if(!this.rendered){this.render(Ext.getBody());} -if(this.hidden===false){this.toFront();return this;} -if(this.fireEvent('beforeshow',this)===false){return this;} -if(cb){this.on('show',cb,scope,{single:true});} -this.hidden=false;if(Ext.isDefined(animateTarget)){this.setAnimateTarget(animateTarget);} -this.beforeShow();if(this.animateTarget){this.animShow();}else{this.afterShow();} -return this;},afterShow:function(isAnim){if(this.isDestroyed){return false;} -this.proxy.hide();this.el.setStyle('display','block');this.el.show();if(this.maximized){this.fitContainer();} -if(Ext.isMac&&Ext.isGecko2){this.cascade(this.setAutoScroll);} -if(this.monitorResize||this.modal||this.constrain||this.constrainHeader){Ext.EventManager.onWindowResize(this.onWindowResize,this);} -this.doConstrain();this.doLayout();if(this.keyMap){this.keyMap.enable();} -this.toFront();this.updateHandles();if(isAnim&&(Ext.isIE||Ext.isWebKit)){var sz=this.getSize();this.onResize(sz.width,sz.height);} -this.onShow();this.fireEvent('show',this);},animShow:function(){this.proxy.show();this.proxy.setBox(this.animateTarget.getBox());this.proxy.setOpacity(0);var b=this.getBox();this.el.setStyle('display','none');this.proxy.shift(Ext.apply(b,{callback:this.afterShow.createDelegate(this,[true],false),scope:this,easing:'easeNone',duration:this.showAnimDuration,opacity:0.5}));},hide:function(animateTarget,cb,scope){if(this.hidden||this.fireEvent('beforehide',this)===false){return this;} -if(cb){this.on('hide',cb,scope,{single:true});} -this.hidden=true;if(animateTarget!==undefined){this.setAnimateTarget(animateTarget);} -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.onHide();this.fireEvent('hide',this);},animHide:function(){this.proxy.setOpacity(0.5);this.proxy.show();var tb=this.getBox(false);this.proxy.setBox(tb);this.el.hide();this.proxy.shift(Ext.apply(this.animateTarget.getBox(),{callback:this.afterHide,scope:this,duration:this.hideAnimDuration,easing:'easeNone',opacity:0}));},onShow:Ext.emptyFn,onHide:Ext.emptyFn,onWindowResize:function(){if(this.maximized){this.fitContainer();} -if(this.modal){this.mask.setSize('100%','100%');var force=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 offsets;if(this.constrain){offsets={right:this.el.shadowOffset,left:this.el.shadowOffset,bottom:this.el.shadowOffset};}else{var s=this.getSize();offsets={right:-(s.width-100),bottom:-(s.height-25)};} -var xy=this.el.getConstrainToXY(this.container,true,offsets);if(xy){this.setPosition(xy[0],xy[1]);}}},ghost:function(cls){var ghost=this.createGhost(cls);var box=this.getBox(true);ghost.setLeftTop(box.x,box.y);ghost.setWidth(box.width);this.el.hide();this.activeGhost=ghost;return ghost;},unghost:function(show,matchPosition){if(!this.activeGhost){return;} -if(show!==false){this.el.show();this.focus.defer(10,this);if(Ext.isMac&&Ext.isGecko2){this.cascade(this.setAutoScroll);}} -if(matchPosition!==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){if(this.hidden){this.doClose();}else{this.hide(null,this.doClose,this);}}},doClose:function(){this.fireEvent('close',this);this.destroy();},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){var t=this.tools;this.el.removeClass('x-window-maximized');if(t.restore){t.restore.hide();} -if(t.maximize){t.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&&t.toggle){t.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 vs=this.container.getViewSize(false);this.setSize(vs.width,vs.height);},setZIndex:function(index){if(this.modal){this.mask.setStyle('z-index',index);} -this.el.setZIndex(++index);index+=5;if(this.resizer){this.resizer.proxy.setStyle('z-index',++index);} -this.lastZIndex=index;},alignTo:function(element,position,offsets){var xy=this.el.getAlignToXY(element,position,offsets);this.setPagePosition(xy[0],xy[1]);return this;},anchorTo:function(el,alignment,offsets,monitorScroll){this.clearAnchor();this.anchorTarget={el:el,alignment:alignment,offsets:offsets};Ext.EventManager.onWindowResize(this.doAnchor,this);var tm=typeof monitorScroll;if(tm!='undefined'){Ext.EventManager.on(window,'scroll',this.doAnchor,this,{buffer:tm=='number'?monitorScroll:50});} -return this.doAnchor();},doAnchor:function(){var o=this.anchorTarget;this.alignTo(o.el,o.alignment,o.offsets);return this;},clearAnchor:function(){if(this.anchorTarget){Ext.EventManager.removeResizeListener(this.doAnchor,this);Ext.EventManager.un(window,'scroll',this.doAnchor,this);delete this.anchorTarget;} -return this;},toFront:function(e){if(this.manager.bringToFront(this)){if(!e||!e.getTarget().focus){this.focus();}} -return this;},setActive:function(active){if(active){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 xy=this.el.getAlignToXY(this.container,'c-c');this.setPagePosition(xy[0],xy[1]);return this;}});Ext.reg('window',Ext.Window);Ext.Window.DD=Ext.extend(Ext.dd.DD,{constructor:function(win){this.win=win;Ext.Window.DD.superclass.constructor.call(this,win.el.id,'WindowDD-'+win.id);this.setHandleElId(win.header.id);this.scroll=false;},moveOnly:true,headerOffsets:[100,25],startDrag:function(){var w=this.win;this.proxy=w.ghost(w.initialConfig.cls);if(w.constrain!==false){var so=w.el.shadowOffset;this.constrainTo(w.container,{right:so,left:so,bottom:so});}else if(w.constrainHeader!==false){var s=this.proxy.getSize();this.constrainTo(w.container,{right:-(s.width-this.headerOffsets[0]),bottom:-(s.height-this.headerOffsets[1])});}},b4Drag:Ext.emptyFn,onDrag:function(e){this.alignElWithMouse(this.proxy,e.getPageX(),e.getPageY());},endDrag:function(e){this.win.unghost();this.win.saveState();}});Ext.WindowGroup=function(){var list={};var accessList=[];var front=null;var sortWindows=function(d1,d2){return(!d1._lastAccess||d1._lastAccess<d2._lastAccess)?-1:1;};var orderWindows=function(){var a=accessList,len=a.length;if(len>0){a.sort(sortWindows);var seed=a[0].manager.zseed;for(var i=0;i<len;i++){var win=a[i];if(win&&!win.hidden){win.setZIndex(seed+(i*10));}}} -activateLast();};var setActiveWin=function(win){if(win!=front){if(front){front.setActive(false);} -front=win;if(win){win.setActive(true);}}};var activateLast=function(){for(var i=accessList.length-1;i>=0;--i){if(!accessList[i].hidden){setActiveWin(accessList[i]);return;}} -setActiveWin(null);};return{zseed:9000,register:function(win){if(win.manager){win.manager.unregister(win);} -win.manager=this;list[win.id]=win;accessList.push(win);win.on('hide',activateLast);},unregister:function(win){delete win.manager;delete list[win.id];win.un('hide',activateLast);accessList.remove(win);},get:function(id){return typeof id=="object"?id:list[id];},bringToFront:function(win){win=this.get(win);if(win!=front){win._lastAccess=new Date().getTime();orderWindows();return true;} -return false;},sendToBack:function(win){win=this.get(win);win._lastAccess=-(new Date().getTime());orderWindows();return win;},hideAll:function(){for(var id in list){if(list[id]&&typeof list[id]!="function"&&list[id].isVisible()){list[id].hide();}}},getActive:function(){return front;},getBy:function(fn,scope){var r=[];for(var i=accessList.length-1;i>=0;--i){var win=accessList[i];if(fn.call(scope||win,win)!==false){r.push(win);}} -return r;},each:function(fn,scope){for(var id in list){if(list[id]&&typeof list[id]!="function"){if(fn.call(scope||list[id],list[id])===false){return;}}}}};};Ext.WindowMgr=new Ext.WindowGroup();Ext.MessageBox=function(){var dlg,opt,mask,waitTimer,bodyEl,msgEl,textboxEl,textareaEl,progressBar,pp,iconEl,spacerEl,buttons,activeTextEl,bwidth,bufferIcon='',iconCls='',buttonNames=['ok','yes','no','cancel'];var handleButton=function(button){buttons[button].blur();if(dlg.isVisible()){dlg.hide();handleHide();Ext.callback(opt.fn,opt.scope||window,[button,activeTextEl.dom.value,opt],1);}};var handleHide=function(){if(opt&&opt.cls){dlg.el.removeClass(opt.cls);} -progressBar.reset();};var handleEsc=function(d,k,e){if(opt&&opt.closable!==false){dlg.hide();handleHide();} -if(e){e.stopEvent();}};var updateButtons=function(b){var width=0,cfg;if(!b){Ext.each(buttonNames,function(name){buttons[name].hide();});return width;} -dlg.footer.dom.style.display='';Ext.iterate(buttons,function(name,btn){cfg=b[name];if(cfg){btn.show();btn.setText(Ext.isString(cfg)?cfg:Ext.MessageBox.buttonText[name]);width+=btn.getEl().getWidth()+15;}else{btn.hide();}});return width;};return{getDialog:function(titleText){if(!dlg){var btns=[];buttons={};Ext.each(buttonNames,function(name){btns.push(buttons[name]=new Ext.Button({text:this.buttonText[name],handler:handleButton.createCallback(name),hideMode:'offsets'}));},this);dlg=new Ext.Window({autoCreate:true,title:titleText,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(opt&&opt.buttons&&opt.buttons.no&&!opt.buttons.cancel){handleButton("no");}else{handleButton("cancel");}},fbar:new Ext.Toolbar({items:btns,enableOverflow:false})});dlg.render(document.body);dlg.getEl().addClass('x-window-dlg');mask=dlg.mask;bodyEl=dlg.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>'});iconEl=Ext.get(bodyEl.dom.firstChild);var contentEl=bodyEl.dom.childNodes[1];msgEl=Ext.get(contentEl.firstChild);textboxEl=Ext.get(contentEl.childNodes[2].firstChild);textboxEl.enableDisplayMode();textboxEl.addKeyListener([10,13],function(){if(dlg.isVisible()&&opt&&opt.buttons){if(opt.buttons.ok){handleButton("ok");}else if(opt.buttons.yes){handleButton("yes");}}});textareaEl=Ext.get(contentEl.childNodes[2].childNodes[1]);textareaEl.enableDisplayMode();progressBar=new Ext.ProgressBar({renderTo:bodyEl});bodyEl.createChild({cls:'x-clear'});} -return dlg;},updateText:function(text){if(!dlg.isVisible()&&!opt.width){dlg.setSize(this.maxWidth,100);} -msgEl.update(text?text+' ':' ');var iw=iconCls!=''?(iconEl.getWidth()+iconEl.getMargins('lr')):0,mw=msgEl.getWidth()+msgEl.getMargins('lr'),fw=dlg.getFrameWidth('lr'),bw=dlg.body.getFrameWidth('lr'),w;w=Math.max(Math.min(opt.width||iw+mw+fw+bw,opt.maxWidth||this.maxWidth),Math.max(opt.minWidth||this.minWidth,bwidth||0));if(opt.prompt===true){activeTextEl.setWidth(w-iw-fw-bw);} -if(opt.progress===true||opt.wait===true){progressBar.setSize(w-iw-fw-bw);} -if(Ext.isIE&&w==bwidth){w+=4;} -msgEl.update(text||' ');dlg.setSize(w,'auto').center();return this;},updateProgress:function(value,progressText,msg){progressBar.updateProgress(value,progressText);if(msg){this.updateText(msg);} -return this;},isVisible:function(){return dlg&&dlg.isVisible();},hide:function(){var proxy=dlg?dlg.activeGhost:null;if(this.isVisible()||proxy){dlg.hide();handleHide();if(proxy){dlg.unghost(false,false);}} -return this;},show:function(options){if(this.isVisible()){this.hide();} -opt=options;var d=this.getDialog(opt.title||" ");d.setTitle(opt.title||" ");var allowClose=(opt.closable!==false&&opt.progress!==true&&opt.wait!==true);d.tools.close.setDisplayed(allowClose);activeTextEl=textboxEl;opt.prompt=opt.prompt||(opt.multiline?true:false);if(opt.prompt){if(opt.multiline){textboxEl.hide();textareaEl.show();textareaEl.setHeight(Ext.isNumber(opt.multiline)?opt.multiline:this.defaultTextHeight);activeTextEl=textareaEl;}else{textboxEl.show();textareaEl.hide();}}else{textboxEl.hide();textareaEl.hide();} -activeTextEl.dom.value=opt.value||"";if(opt.prompt){d.focusEl=activeTextEl;}else{var bs=opt.buttons;var db=null;if(bs&&bs.ok){db=buttons["ok"];}else if(bs&&bs.yes){db=buttons["yes"];} -if(db){d.focusEl=db;}} -if(Ext.isDefined(opt.iconCls)){d.setIconClass(opt.iconCls);} -this.setIcon(Ext.isDefined(opt.icon)?opt.icon:bufferIcon);bwidth=updateButtons(opt.buttons);progressBar.setVisible(opt.progress===true||opt.wait===true);this.updateProgress(0,opt.progressText);this.updateText(opt.msg);if(opt.cls){d.el.addClass(opt.cls);} -d.proxyDrag=opt.proxyDrag===true;d.modal=opt.modal!==false;d.mask=opt.modal!==false?mask:false;if(!d.isVisible()){document.body.appendChild(dlg.el.dom);d.setAnimateTarget(opt.animEl);d.on('show',function(){if(allowClose===true){d.keyMap.enable();}else{d.keyMap.disable();}},this,{single:true});d.show(opt.animEl);} -if(opt.wait===true){progressBar.wait(opt.waitConfig);} -return this;},setIcon:function(icon){if(!dlg){bufferIcon=icon;return;} -bufferIcon=undefined;if(icon&&icon!=''){iconEl.removeClass('x-hidden');iconEl.replaceClass(iconCls,icon);bodyEl.addClass('x-dlg-icon');iconCls=icon;}else{iconEl.replaceClass(iconCls,'x-hidden');bodyEl.removeClass('x-dlg-icon');iconCls='';} -return this;},progress:function(title,msg,progressText){this.show({title:title,msg:msg,buttons:false,progress:true,closable:false,minWidth:this.minProgressWidth,progressText:progressText});return this;},wait:function(msg,title,config){this.show({title:title,msg:msg,buttons:false,closable:false,wait:true,modal:true,minWidth:this.minProgressWidth,waitConfig:config});return this;},alert:function(title,msg,fn,scope){this.show({title:title,msg:msg,buttons:this.OK,fn:fn,scope:scope,minWidth:this.minWidth});return this;},confirm:function(title,msg,fn,scope){this.show({title:title,msg:msg,buttons:this.YESNO,fn:fn,scope:scope,icon:this.QUESTION,minWidth:this.minWidth});return this;},prompt:function(title,msg,fn,scope,multiline,value){this.show({title:title,msg:msg,buttons:this.OKCANCEL,fn:fn,minWidth:this.minPromptWidth,scope:scope,prompt:true,multiline:multiline,value:value});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,minPromptWidth:250,buttonText:{ok:"OK",cancel:"Cancel",yes:"Yes",no:"No"}};}();Ext.Msg=Ext.MessageBox;Ext.dd.PanelProxy=Ext.extend(Object,{constructor:function(panel,config){this.panel=panel;this.id=this.panel.id+'-ddproxy';Ext.apply(this,config);},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(this.panel.initialConfig.cls,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(xy,callback,scope){this.hide();if(typeof callback=="function"){callback.call(scope||this);}},moveProxy:function(parentNode,before){if(this.proxy){parentNode.insertBefore(this.proxy.dom,before);}}});Ext.Panel.DD=Ext.extend(Ext.dd.DragSource,{constructor:function(panel,cfg){this.panel=panel;this.dragData={panel:panel};this.proxy=new Ext.dd.PanelProxy(panel,cfg);Ext.Panel.DD.superclass.constructor.call(this,panel.el,cfg);var h=panel.header,el=panel.body;if(h){this.setHandleElId(h.id);el=panel.header;} -el.setStyle('cursor','move');this.scroll=false;},showFrame:Ext.emptyFn,startDrag:Ext.emptyFn,b4StartDrag:function(x,y){this.proxy.show();},b4MouseDown:function(e){var x=e.getPageX(),y=e.getPageY();this.autoOffset(x,y);},onInitDrag:function(x,y){this.onStartDrag(x,y);return true;},createFrame:Ext.emptyFn,getDragEl:function(e){return this.proxy.ghost.dom;},endDrag:function(e){this.proxy.hide();this.panel.saveState();},autoOffset:function(x,y){x-=this.startPageX;y-=this.startPageY;this.setDelta(x,y);}});Ext.Toolbar=function(config){if(Ext.isArray(config)){config={items:config,layout:'toolbar'};}else{config=Ext.apply({layout:'toolbar'},config);if(config.buttons){config.items=config.buttons;}} -Ext.Toolbar.superclass.constructor.call(this,config);};(function(){var T=Ext.Toolbar;Ext.extend(T,Ext.Container,{defaultType:'button',enableOverflow:false,trackMenus:true,internalDefaults:{removeMode:'container',hideParent:true},toolbarCls:'x-toolbar',initComponent:function(){T.superclass.initComponent.call(this);this.addEvents('overflowchange');},onRender:function(ct,position){if(!this.el){if(!this.autoCreate){this.autoCreate={cls:this.toolbarCls+' x-small-editor'};} -this.el=ct.createChild(Ext.apply({id:this.id},this.autoCreate),position);Ext.Toolbar.superclass.onRender.apply(this,arguments);}},lookupComponent:function(c){if(Ext.isString(c)){if(c=='-'){c=new T.Separator();}else if(c==' '){c=new T.Spacer();}else if(c=='->'){c=new T.Fill();}else{c=new T.TextItem(c);} -this.applyDefaults(c);}else{if(c.isFormField||c.render){c=this.createComponent(c);}else if(c.tag){c=new T.Item({autoEl:c});}else if(c.tagName){c=new T.Item({el:c});}else if(Ext.isObject(c)){c=c.xtype?this.createComponent(c):this.constructButton(c);}} -return c;},applyDefaults:function(c){if(!Ext.isString(c)){c=Ext.Toolbar.superclass.applyDefaults.call(this,c);var d=this.internalDefaults;if(c.events){Ext.applyIf(c.initialConfig,d);Ext.apply(c,d);}else{Ext.applyIf(c,d);}} -return c;},addSeparator:function(){return this.add(new T.Separator());},addSpacer:function(){return this.add(new T.Spacer());},addFill:function(){this.add(new T.Fill());},addElement:function(el){return this.addItem(new T.Item({el:el}));},addItem:function(item){return this.add.apply(this,arguments);},addButton:function(config){if(Ext.isArray(config)){var buttons=[];for(var i=0,len=config.length;i<len;i++){buttons.push(this.addButton(config[i]));} -return buttons;} -return this.add(this.constructButton(config));},addText:function(text){return this.addItem(new T.TextItem(text));},addDom:function(config){return this.add(new T.Item({autoEl:config}));},addField:function(field){return this.add(field);},insertButton:function(index,item){if(Ext.isArray(item)){var buttons=[];for(var i=0,len=item.length;i<len;i++){buttons.push(this.insertButton(index+i,item[i]));} -return buttons;} -return Ext.Toolbar.superclass.insert.call(this,index,item);},trackMenu:function(item,remove){if(this.trackMenus&&item.menu){var method=remove?'mun':'mon';this[method](item,'menutriggerover',this.onButtonTriggerOver,this);this[method](item,'menushow',this.onButtonMenuShow,this);this[method](item,'menuhide',this.onButtonMenuHide,this);}},constructButton:function(item){var b=item.events?item:this.createComponent(item,item.split?'splitbutton':this.defaultType);return b;},onAdd:function(c){Ext.Toolbar.superclass.onAdd.call(this);this.trackMenu(c);if(this.disabled){c.disable();}},onRemove:function(c){Ext.Toolbar.superclass.onRemove.call(this);if(c==this.activeMenuBtn){delete this.activeMenuBtn;} -this.trackMenu(c,true);},onDisable:function(){this.items.each(function(item){if(item.disable){item.disable();}});},onEnable:function(){this.items.each(function(item){if(item.enable){item.enable();}});},onButtonTriggerOver:function(btn){if(this.activeMenuBtn&&this.activeMenuBtn!=btn){this.activeMenuBtn.hideMenu();btn.showMenu();this.activeMenuBtn=btn;}},onButtonMenuShow:function(btn){this.activeMenuBtn=btn;},onButtonMenuHide:function(btn){delete this.activeMenuBtn;}});Ext.reg('toolbar',Ext.Toolbar);T.Item=Ext.extend(Ext.BoxComponent,{hideParent:true,enable:Ext.emptyFn,disable:Ext.emptyFn,focus:Ext.emptyFn});Ext.reg('tbitem',T.Item);T.Separator=Ext.extend(T.Item,{onRender:function(ct,position){this.el=ct.createChild({tag:'span',cls:'xtb-sep'},position);}});Ext.reg('tbseparator',T.Separator);T.Spacer=Ext.extend(T.Item,{onRender:function(ct,position){this.el=ct.createChild({tag:'div',cls:'xtb-spacer',style:this.width?'width:'+this.width+'px':''},position);}});Ext.reg('tbspacer',T.Spacer);T.Fill=Ext.extend(T.Item,{render:Ext.emptyFn,isFill:true});Ext.reg('tbfill',T.Fill);T.TextItem=Ext.extend(T.Item,{constructor:function(config){T.TextItem.superclass.constructor.call(this,Ext.isString(config)?{text:config}:config);},onRender:function(ct,position){this.autoEl={cls:'xtb-text',html:this.text||''};T.TextItem.superclass.onRender.call(this,ct,position);},setText:function(t){if(this.rendered){this.el.update(t);}else{this.text=t;}}});Ext.reg('tbtext',T.TextItem);T.Button=Ext.extend(Ext.Button,{});T.SplitButton=Ext.extend(Ext.SplitButton,{});Ext.reg('tbbutton',T.Button);Ext.reg('tbsplit',T.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(c){c=Ext.ButtonGroup.superclass.applyDefaults.call(this,c);var d=this.internalDefaults;if(c.events){Ext.applyIf(c.initialConfig,d);Ext.apply(c,d);}else{Ext.applyIf(c,d);} -return c;},onAfterLayout:function(){var bodyWidth=this.body.getFrameWidth('lr')+this.body.dom.firstChild.offsetWidth;this.body.setWidth(bodyWidth);this.el.setWidth(bodyWidth+this.getFrameWidth());}});Ext.reg('buttongroup',Ext.ButtonGroup);(function(){var T=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',initComponent:function(){var pagingItems=[this.first=new T.Button({tooltip:this.firstText,overflowText:this.firstText,iconCls:'x-tbar-page-first',disabled:true,handler:this.moveFirst,scope:this}),this.prev=new T.Button({tooltip:this.prevText,overflowText:this.prevText,iconCls:'x-tbar-page-prev',disabled:true,handler:this.movePrevious,scope:this}),'-',this.beforePageText,this.inputItem=new Ext.form.NumberField({cls:'x-tbar-page-number',allowDecimals:false,allowNegative:false,enableKeyEvents:true,selectOnFocus:true,submitValue:false,listeners:{scope:this,keydown:this.onPagingKeyDown,blur:this.onPagingBlur}}),this.afterTextItem=new T.TextItem({text:String.format(this.afterPageText,1)}),'-',this.next=new T.Button({tooltip:this.nextText,overflowText:this.nextText,iconCls:'x-tbar-page-next',disabled:true,handler:this.moveNext,scope:this}),this.last=new T.Button({tooltip:this.lastText,overflowText:this.lastText,iconCls:'x-tbar-page-last',disabled:true,handler:this.moveLast,scope:this}),'-',this.refresh=new T.Button({tooltip:this.refreshText,overflowText:this.refreshText,iconCls:'x-tbar-loading',handler:this.doRefresh,scope:this})];var userItems=this.items||this.buttons||[];if(this.prependButtons){this.items=userItems.concat(pagingItems);}else{this.items=pagingItems.concat(userItems);} -delete this.buttons;if(this.displayInfo){this.items.push('->');this.items.push(this.displayItem=new T.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,true);},onFirstLayout:function(){if(this.dsLoaded){this.onLoad.apply(this,this.dsLoaded);}},updateInfo:function(){if(this.displayItem){var count=this.store.getCount();var msg=count==0?this.emptyMsg:String.format(this.displayMsg,this.cursor+1,this.cursor+count,this.store.getTotalCount());this.displayItem.setText(msg);}},onLoad:function(store,r,o){if(!this.rendered){this.dsLoaded=[store,r,o];return;} -var p=this.getParams();this.cursor=(o.params&&o.params[p.start])?o.params[p.start]:0;var d=this.getPageData(),ap=d.activePage,ps=d.pages;this.afterTextItem.setText(String.format(this.afterPageText,d.pages));this.inputItem.setValue(ap);this.first.setDisabled(ap==1);this.prev.setDisabled(ap==1);this.next.setDisabled(ap==ps);this.last.setDisabled(ap==ps);this.refresh.enable();this.updateInfo();this.fireEvent('change',this,d);},getPageData:function(){var total=this.store.getTotalCount();return{total:total,activePage:Math.ceil((this.cursor+this.pageSize)/this.pageSize),pages:total<this.pageSize?1:Math.ceil(total/this.pageSize)};},changePage:function(page){this.doLoad(((page-1)*this.pageSize).constrain(0,this.store.getTotalCount()));},onLoadError:function(){if(!this.rendered){return;} -this.refresh.enable();},readPage:function(d){var v=this.inputItem.getValue(),pageNum;if(!v||isNaN(pageNum=parseInt(v,10))){this.inputItem.setValue(d.activePage);return false;} -return pageNum;},onPagingFocus:function(){this.inputItem.select();},onPagingBlur:function(e){this.inputItem.setValue(this.getPageData().activePage);},onPagingKeyDown:function(field,e){var k=e.getKey(),d=this.getPageData(),pageNum;if(k==e.RETURN){e.stopEvent();pageNum=this.readPage(d);if(pageNum!==false){pageNum=Math.min(Math.max(1,pageNum),d.pages)-1;this.doLoad(pageNum*this.pageSize);}}else if(k==e.HOME||k==e.END){e.stopEvent();pageNum=k==e.HOME?1:d.pages;field.setValue(pageNum);}else if(k==e.UP||k==e.PAGEUP||k==e.DOWN||k==e.PAGEDOWN){e.stopEvent();if((pageNum=this.readPage(d))){var increment=e.shiftKey?10:1;if(k==e.DOWN||k==e.PAGEDOWN){increment*=-1;} -pageNum+=increment;if(pageNum>=1&pageNum<=d.pages){field.setValue(pageNum);}}}},getParams:function(){return this.paramNames||this.store.paramNames;},beforeLoad:function(){if(this.rendered&&this.refresh){this.refresh.disable();}},doLoad:function(start){var o={},pn=this.getParams();o[pn.start]=start;o[pn.limit]=this.pageSize;if(this.fireEvent('beforechange',this,o)!==false){this.store.load({params:o});}},moveFirst:function(){this.doLoad(0);},movePrevious:function(){this.doLoad(Math.max(0,this.cursor-this.pageSize));},moveNext:function(){this.doLoad(this.cursor+this.pageSize);},moveLast:function(){var total=this.store.getTotalCount(),extra=total%this.pageSize;this.doLoad(extra?(total-extra):total-this.pageSize);},doRefresh:function(){this.doLoad(this.cursor);},bindStore:function(store,initial){var doLoad;if(!initial&&this.store){if(store!==this.store&&this.store.autoDestroy){this.store.destroy();}else{this.store.un('beforeload',this.beforeLoad,this);this.store.un('load',this.onLoad,this);this.store.un('exception',this.onLoadError,this);} -if(!store){this.store=null;}} -if(store){store=Ext.StoreMgr.lookup(store);store.on({scope:this,beforeload:this.beforeLoad,load:this.onLoad,exception:this.onLoadError});doLoad=true;} -this.store=store;if(doLoad){this.onLoad(store,null,{});}},unbind:function(store){this.bindStore(null);},bind:function(store){this.bindStore(store);},onDestroy:function(){this.bindStore(null);Ext.PagingToolbar.superclass.onDestroy.call(this);}});})();Ext.reg('paging',Ext.PagingToolbar);
\ No newline at end of file +window.undefined=window.undefined;Ext={version:"3.3.1",versionDetail:{major:3,minor:3,patch:1},apply:function(a,b,c){c&&Ext.apply(a,c);if(a&&b&&"object"==typeof b)for(var d in b)a[d]=b[d];return a}}; +(function(){var a=0,b=Object.prototype.toString,c=navigator.userAgent.toLowerCase(),d=function(a){return a.test(c)},e=document,g=e.documentMode,h="CSS1Compat"==e.compatMode,j=d(/opera/),k=d(/\bchrome\b/),l=d(/webkit/),m=!k&&d(/safari/),q=m&&d(/applewebkit\/4/),r=m&&d(/version\/3/),n=m&&d(/version\/4/),s=!j&&d(/msie/),x=s&&(d(/msie 7/)||7==g),g=s&&d(/msie 8/)&&7!=g,u=s&&!x&&!g,p=!l&&d(/gecko/),y=p&&d(/rv:1\.8/),t=p&&d(/rv:1\.9/),v=s&&!h,z=d(/windows|win32/),w=d(/macintosh|mac os x/),A=d(/adobeair/), +d=d(/linux/),J=/^https/i.test(window.location.protocol);if(u)try{e.execCommand("BackgroundImageCache",!1,!0)}catch(G){}Ext.apply(Ext,{SSL_SECURE_URL:J&&s?'javascript:""':"about:blank",isStrict:h,isSecure:J,isReady:!1,enableForcedBoxModel:!1,enableGarbageCollector:!0,enableListenerCollection:!1,enableNestedListenerRemoval:!1,USE_NATIVE_JSON:!1,applyIf:function(a,b){if(a)for(var c in b)Ext.isDefined(a[c])||(a[c]=b[c]);return a},id:function(b,c){b=Ext.getDom(b,!0)||{};b.id||(b.id=(c||"ext-gen")+ ++a); +return b.id},extend:function(){var a=function(a){for(var b in a)this[b]=a[b]},b=Object.prototype.constructor;return function(c,d,e){"object"==typeof d&&(e=d,d=c,c=e.constructor!=b?e.constructor:function(){d.apply(this,arguments)});var g=function(){},h=d.prototype;g.prototype=h;g=c.prototype=new g;g.constructor=c;c.superclass=h;h.constructor==b&&(h.constructor=d);c.override=function(a){Ext.override(c,a)};g.superclass=g.supr=function(){return h};g.override=a;Ext.override(c,e);c.extend=function(a){return Ext.extend(c, +a)};return c}}(),override:function(a,b){if(b){var c=a.prototype;Ext.apply(c,b);Ext.isIE&&b.hasOwnProperty("toString")&&(c.toString=b.toString)}},namespace:function(){var a,b;Ext.each(arguments,function(c){b=c.split(".");a=window[b[0]]=window[b[0]]||{};Ext.each(b.slice(1),function(b){a=a[b]=a[b]||{}})});return a},urlEncode:function(a,b){var c,d=[],e=encodeURIComponent;Ext.iterate(a,function(a,b){c=Ext.isEmpty(b);Ext.each(c?a:b,function(b){d.push("&",e(a),"=",!Ext.isEmpty(b)&&(b!=a||!c)?Ext.isDate(b)? +Ext.encode(b).replace(/"/g,""):e(b):"")})});b||(d.shift(),b="");return b+d.join("")},urlDecode:function(a,b){if(Ext.isEmpty(a))return{};var c={},d=a.split("&"),e=decodeURIComponent,g,h;Ext.each(d,function(a){a=a.split("=");g=e(a[0]);h=e(a[1]);c[g]=b||!c[g]?h:[].concat(c[g]).concat(h)});return c},urlAppend:function(a,b){return!Ext.isEmpty(b)?a+(-1===a.indexOf("?")?"?":"&")+b:a},toArray:s?function(a,b,c,d){d=[];for(var e=0,g=a.length;e<g;e++)d.push(a[e]);return d.slice(b||0,c||d.length)}:function(a, +b,c){return Array.prototype.slice.call(a,b||0,c||a.length)},isIterable:function(a){return Ext.isArray(a)||a.callee||/NodeList|HTMLCollection/.test(b.call(a))?!0:("undefined"!=typeof a.nextNode||a.item)&&Ext.isNumber(a.length)},each:function(a,b,c){if(!Ext.isEmpty(a,!0)){if(!Ext.isIterable(a)||Ext.isPrimitive(a))a=[a];for(var d=0,e=a.length;d<e;d++)if(!1===b.call(c||a[d],a[d],d,a))return d}},iterate:function(a,b,c){if(!Ext.isEmpty(a))if(Ext.isIterable(a))Ext.each(a,b,c);else if("object"==typeof a)for(var d in a)if(a.hasOwnProperty(d)&& +!1===b.call(c||a,d,a[d],a))break},getDom:function(a,b){if(!a||!e)return null;if(a.dom)return a.dom;if("string"==typeof a){var c=e.getElementById(a);return c&&(s&&b)&&a!=c.getAttribute("id")?null:c}return a},getBody:function(){return Ext.get(e.body||e.documentElement)},getHead:function(){var a;return function(){void 0==a&&(a=Ext.get(e.getElementsByTagName("head")[0]));return a}}(),removeNode:s&&!g?function(){var a;return function(b){b&&"BODY"!=b.tagName&&(Ext.enableNestedListenerRemoval?Ext.EventManager.purgeElement(b, +!0):Ext.EventManager.removeAll(b),a=a||e.createElement("div"),a.appendChild(b),a.innerHTML="",delete Ext.elCache[b.id])}}():function(a){a&&(a.parentNode&&"BODY"!=a.tagName)&&(Ext.enableNestedListenerRemoval?Ext.EventManager.purgeElement(a,!0):Ext.EventManager.removeAll(a),a.parentNode.removeChild(a),delete Ext.elCache[a.id])},isEmpty:function(a,b){return null===a||void 0===a||Ext.isArray(a)&&!a.length||(!b?""===a:!1)},isArray:function(a){return"[object Array]"===b.apply(a)},isDate:function(a){return"[object Date]"=== +b.apply(a)},isObject:function(a){return!!a&&"[object Object]"===Object.prototype.toString.call(a)},isPrimitive:function(a){return Ext.isString(a)||Ext.isNumber(a)||Ext.isBoolean(a)},isFunction:function(a){return"[object Function]"===b.apply(a)},isNumber:function(a){return"number"===typeof a&&isFinite(a)},isString:function(a){return"string"===typeof a},isBoolean:function(a){return"boolean"===typeof a},isElement:function(a){return a?!!a.tagName:!1},isDefined:function(a){return"undefined"!==typeof a}, +isOpera:j,isWebKit:l,isChrome:k,isSafari:m,isSafari3:r,isSafari4:n,isSafari2:q,isIE:s,isIE6:u,isIE7:x,isIE8:g,isGecko:p,isGecko2:y,isGecko3:t,isBorderBox:v,isLinux:d,isWindows:z,isMac:w,isAir:A});Ext.ns=Ext.namespace})();Ext.ns("Ext.util","Ext.lib","Ext.data","Ext.supports");Ext.elCache={}; +Ext.apply(Function.prototype,{createInterceptor:function(a,b){var c=this;return!Ext.isFunction(a)?this:function(){var d=arguments;a.target=this;a.method=c;return!1!==a.apply(b||this||window,d)?c.apply(this||window,d):null}},createCallback:function(){var a=arguments,b=this;return function(){return b.apply(window,a)}},createDelegate:function(a,b,c){var d=this;return function(){var e=b||arguments;if(!0===c)e=Array.prototype.slice.call(arguments,0),e=e.concat(b);else if(Ext.isNumber(c)){var e=Array.prototype.slice.call(arguments, +0),g=[c,0].concat(b);Array.prototype.splice.apply(e,g)}return d.apply(a||window,e)}},defer:function(a,b,c,d){b=this.createDelegate(b,c,d);if(0<a)return setTimeout(b,a);b();return 0}});Ext.applyIf(String,{format:function(a){var b=Ext.toArray(arguments,1);return a.replace(/\{(\d+)\}/g,function(a,d){return b[d]})}}); +Ext.applyIf(Array.prototype,{indexOf:function(a,b){var c=this.length;b=b||0;for(b+=0>b?c:0;b<c;++b)if(this[b]===a)return b;return-1},remove:function(a){a=this.indexOf(a);-1!=a&&this.splice(a,1);return this}}); +Ext.util.TaskRunner=function(a){a=a||10;var b=[],c=[],d=0,e=!1,g=function(a){c.push(a);a.onStop&&a.onStop.apply(a.scope||a)},h=function(){var a=c.length,h=(new Date).getTime();if(0<a){for(var l=0;l<a;l++)b.remove(c[l]);c=[];if(1>b.length){e=!1;clearInterval(d);d=0;return}}for(var l=0,m,q=b.length;l<q;++l){a=b[l];m=h-a.taskRunTime;if(a.interval<=m&&(m=a.run.apply(a.scope||a,a.args||[++a.taskRunCount]),a.taskRunTime=h,!1===m||a.taskRunCount===a.repeat)){g(a);break}a.duration&&a.duration<=h-a.taskStartTime&& +g(a)}};this.start=function(c){b.push(c);c.taskStartTime=(new Date).getTime();c.taskRunTime=0;c.taskRunCount=0;e||(e=!0,d=setInterval(h,a));return c};this.stop=function(a){g(a);return a};this.stopAll=function(){e=!1;clearInterval(d);for(var a=d=0,g=b.length;a<g;a++)if(b[a].onStop)b[a].onStop();b=[];c=[]}};Ext.TaskMgr=new Ext.util.TaskRunner; +(function(){function a(a){b||(b=new Ext.Element.Flyweight);b.dom=a;return b}var b,c=document,d="CSS1Compat"==c.compatMode,e=Math.max,g=Math.round,h=parseInt;Ext.lib.Dom={isAncestor:function(a,b){var c=!1;a=Ext.getDom(a);b=Ext.getDom(b);if(a&&b){if(a.contains)return a.contains(b);if(a.compareDocumentPosition)return!!(a.compareDocumentPosition(b)&16);for(;b=b.parentNode;)c=b==a||c}return c},getViewWidth:function(a){return a?this.getDocumentWidth():this.getViewportWidth()},getViewHeight:function(a){return a? +this.getDocumentHeight():this.getViewportHeight()},getDocumentHeight:function(){return e(!d?c.body.scrollHeight:c.documentElement.scrollHeight,this.getViewportHeight())},getDocumentWidth:function(){return e(!d?c.body.scrollWidth:c.documentElement.scrollWidth,this.getViewportWidth())},getViewportHeight:function(){return Ext.isIE?Ext.isStrict?c.documentElement.clientHeight:c.body.clientHeight:self.innerHeight},getViewportWidth:function(){return!Ext.isStrict&&!Ext.isOpera?c.body.clientWidth:Ext.isIE? +c.documentElement.clientWidth:self.innerWidth},getY:function(a){return this.getXY(a)[1]},getX:function(a){return this.getXY(a)[0]},getXY:function(b){var d,e,j,l,s=0,k=0,m,p=c.body||c.documentElement;d=[0,0];b=Ext.getDom(b);if(b!=p)if(b.getBoundingClientRect)b=b.getBoundingClientRect(),s=a(document).getScroll(),d=[g(b.left+s.left),g(b.top+s.top)];else{d=b;for(m=a(b).isStyle("position","absolute");d;)e=a(d),s+=d.offsetLeft,k+=d.offsetTop,m=m||e.isStyle("position","absolute"),Ext.isGecko&&(k+=j=h(e.getStyle("borderTopWidth"), +10)||0,s+=l=h(e.getStyle("borderLeftWidth"),10)||0,d!=b&&!e.isStyle("overflow","visible")&&(s+=l,k+=j)),d=d.offsetParent;Ext.isSafari&&m&&(s-=p.offsetLeft,k-=p.offsetTop);Ext.isGecko&&!m&&(d=a(p),s+=h(d.getStyle("borderLeftWidth"),10)||0,k+=h(d.getStyle("borderTopWidth"),10)||0);for(d=b.parentNode;d&&d!=p;){if(!Ext.isOpera||"TR"!=d.tagName&&!a(d).isStyle("display","inline"))s-=d.scrollLeft,k-=d.scrollTop;d=d.parentNode}d=[s,k]}return d},setXY:function(a,b){(a=Ext.fly(a,"_setXY")).position();var c= +a.translatePoints(b),d=a.dom.style,e;for(e in c)isNaN(c[e])||(d[e]=c[e]+"px")},setX:function(a,b){this.setXY(a,[b,!1])},setY:function(a,b){this.setXY(a,[!1,b])}};var j=Ext.lib,k=function(a){var b;a:{b=a.currentTarget;a=G.getRelatedTarget(a);if(b&&b.firstChild)for(;a;){if(a===b){b=!0;break a}(a=a.parentNode)&&1!=a.nodeType&&(a=null)}b=!1}return!b},l=function(){var a=!1,b=[],c,d,e,g=!r||0<s;if(!p){p=!0;for(a=0;a<x.length;++a)if((d=x[a])&&(c=t.getElementById(d.id)))!d.checkReady||r||c.nextSibling||t&& +t.body?(c=(e=d.override)?!0===e?d.obj:e:c,d.fn.call(c,d.obj),x.remove(d),--a):b.push(d);s=0===b.length?0:s-1;g?m():(clearInterval(u),u=null);a=!(p=!1)}return a},m=function(){u||(u=setInterval(function(){l()},v))},q=function(a,b){a=a.browserEvent||a;var c=a["page"+b];if(!c&&0!==c&&(c=a["client"+b]||0,Ext.isIE))var d=t.documentElement,e=t.body,c=c+(d&&(d[w]||d[z])?[d[z],d[w]]:e?[e[z],e[w]]:[0,0])["X"==b?0:1];return c},r=!1,n={},s=0,x=[],u,p=!1,y=window,t=document,v=20,z="scrollLeft",w="scrollTop",A; +A=y.addEventListener?function(a,b,c,d){"mouseenter"==b?(c=c.createInterceptor(k),a.addEventListener("mouseover",c,d)):"mouseleave"==b?(c=c.createInterceptor(k),a.addEventListener("mouseout",c,d)):a.addEventListener(b,c,d);return c}:y.attachEvent?function(a,b,c){a.attachEvent("on"+b,c);return c}:function(){};var J;J=y.removeEventListener?function(a,b,c,d){"mouseenter"==b?b="mouseover":"mouseleave"==b&&(b="mouseout");a.removeEventListener(b,c,d)}:y.detachEvent?function(a,b,c){a.detachEvent("on"+b,c)}: +function(){};var G={extAdapter:!0,onAvailable:function(a,b,c,d){x.push({id:a,fn:b,obj:c,override:d,checkReady:!1});s=200;m()},addListener:function(a,b,c){return(a=Ext.getDom(a))&&c?"unload"==b?(void 0===n[a.id]&&(n[a.id]=[]),n[a.id].push([b,c]),c):A(a,b,c,!1):!1},removeListener:function(a,b,c){a=Ext.getDom(a);var d,e,g,h;if(a&&c)if("unload"==b){if(void 0!==(h=n[a.id])){d=0;for(e=h.length;d<e;d++)(g=h[d])&&(g[0]==b&&g[1]==c)&&n[a.id].splice(d,1)}}else J(a,b,c,!1)},getTarget:function(a){a=a.browserEvent|| +a;return this.resolveTextNode(a.target||a.srcElement)},resolveTextNode:Ext.isGecko?function(a){if(a){var b=HTMLElement.prototype.toString.call(a);if(!("[xpconnect wrapped native prototype]"==b||"[object XULElement]"==b))return 3==a.nodeType?a.parentNode:a}}:function(a){return a&&3==a.nodeType?a.parentNode:a},getRelatedTarget:function(a){a=a.browserEvent||a;return this.resolveTextNode(a.relatedTarget||(/(mouseout|mouseleave)/.test(a.type)?a.toElement:/(mouseover|mouseenter)/.test(a.type)?a.fromElement: +null))},getPageX:function(a){return q(a,"X")},getPageY:function(a){return q(a,"Y")},getXY:function(a){return[this.getPageX(a),this.getPageY(a)]},stopEvent:function(a){this.stopPropagation(a);this.preventDefault(a)},stopPropagation:function(a){a=a.browserEvent||a;a.stopPropagation?a.stopPropagation():a.cancelBubble=!0},preventDefault:function(a){a=a.browserEvent||a;a.preventDefault?a.preventDefault():a.returnValue=!1},getEvent:function(a){a=a||y.event;if(!a)for(var b=this.getEvent.caller;b&&!((a=b.arguments[0])&& +Event==a.constructor);)b=b.caller;return a},getCharCode:function(a){a=a.browserEvent||a;return a.charCode||a.keyCode||0},getListeners:function(a,b){Ext.EventManager.getListeners(a,b)},purgeElement:function(a,b,c){Ext.EventManager.purgeElement(a,b,c)},_load:function(a){r=!0;Ext.isIE&&!0!==a&&J(y,"load",arguments.callee)},_unload:function(a){var b=Ext.lib.Event,c,d,e,g,h,j;for(g in n){e=n[g];c=0;for(h=e.length;c<h;c++)if(d=e[c])try{j=d[3]?!0===d[3]?d[2]:d[3]:y,d[1].call(j,b.getEvent(a),d[2])}catch(l){}}Ext.EventManager._unload(); +J(y,"unload",b._unload)}};G.on=G.addListener;G.un=G.removeListener;t&&t.body?G._load(!0):A(y,"load",G._load);A(y,"unload",G._unload);l();j.Event=G;var S=function(a,b){(B.headers=B.headers||{})[a]=b},Y=function(a,b){var c={},d,e=a.conn,g,h,j=1223==e.status;try{d=a.conn.getAllResponseHeaders(),Ext.each(d.replace(/\r\n/g,"\n").split("\n"),function(a){g=a.indexOf(":");0<=g&&(h=a.substr(0,g).toLowerCase()," "==a.charAt(g+1)&&++g,c[h]=a.substr(g+1))})}catch(l){}return{tId:a.tId,status:j?204:e.status,statusText:j? +"No Content":e.statusText,getResponseHeader:function(a){return c[a.toLowerCase()]},getAllResponseHeaders:function(){return d},responseText:e.responseText,responseXML:e.responseXML,argument:b}},Z=function(a,b,c,d){if(b){var e;try{e=void 0!==a.conn.status&&0!=a.conn.status?a.conn.status:13030}catch(g){e=13030}if(200<=e&&300>e||Ext.isIE&&1223==e)c=Y(a,b.argument),b.success&&(b.scope?b.success.apply(b.scope,[c]):b.success(c));else switch(e){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:c= +{tId:a.tId,status:c&&c?-1:0,statusText:c&&c?"transaction aborted":"communication failure",isAbort:c?c:!1,isTimeout:d,argument:b.argument};b.failure&&(b.scope?b.failure.apply(b.scope,[c]):b.failure(c));break;default:c=Y(a,b.argument),b.failure&&(b.scope?b.failure.apply(b.scope,[c]):b.failure(c))}}a.tId&&(B.conn[a.tId]=null);a.conn=null},ba=function(a,b,c,d,e,g){c&&4==c.readyState&&(clearInterval(e[d]),e[d]=null,g&&(clearTimeout(B.timeout[d]),B.timeout[d]=null),Z(a,b))},ca=function(a,b){B.abort(a,b, +!0)},$=["Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP"],B={request:function(a,b,c,d,e){if(e){var g=e.xmlData,h=e.jsonData;Ext.applyIf(this,e);if(g||h){d=this.headers;if(!d||!d["Content-Type"])S("Content-Type",g?"text/xml":"application/json");d=g||(!Ext.isPrimitive(h)?Ext.encode(h):h)}}e=a||e.method||"POST";a=d;var j;try{var l;var s=B.transactionId,k;try{k=new XMLHttpRequest}catch(m){for(d=0;d<$.length;++d)try{k=new ActiveXObject($[d]);break}catch(p){}}finally{l={conn:k,tId:s}}(j=l)&&B.transactionId++}catch(x){}finally{}if(j= +j||null){j.conn.open(e,b,!0);B.useDefaultXhrHeader&&S("X-Requested-With",B.defaultXhrHeader);a&&(B.useDefaultHeader&&(!B.headers||!B.headers["Content-Type"]))&&S("Content-Type",B.defaultPostHeader);if(B.defaultHeaders||B.headers){b=j.conn;var q;l={};Ext.apply(l,B.headers,B.defaultHeaders);for(q in l)l.hasOwnProperty(q)&&b.setRequestHeader(q,l[q]);delete B.headers}c=c||{};q=j.conn;b=j.tId;l=B.poll;if(s=c.timeout||null)B.conn[b]=q,B.timeout[b]=setTimeout(ca.createCallback(j,c),s);l[b]=setInterval(ba.createCallback(j, +c,q,b,l,s),B.pollInterval);j.conn.send(a||null)}return j},serializeForm:function(a){a=a.elements||(document.forms[a]||Ext.getDom(a)).elements;var b=!1,c=encodeURIComponent,d,e="",g,h;Ext.each(a,function(a){d=a.name;g=a.type;if(!a.disabled&&d)if(/select-(one|multiple)/i.test(g))Ext.each(a.options,function(a){a.selected&&(h=a.hasAttribute?a.hasAttribute("value"):a.getAttributeNode("value").specified,e+=String.format("{0}={1}&",c(d),c(h?a.value:a.text)))});else if(!/file|undefined|reset|button/i.test(g)&& +(!/radio|checkbox/i.test(g)||a.checked)&&!("submit"==g&&b))e+=c(d)+"="+c(a.value)+"&",b=/submit/i.test(g)});return e.substr(0,e.length-1)},useDefaultHeader:!0,defaultPostHeader:"application/x-www-form-urlencoded; charset=UTF-8",useDefaultXhrHeader:!0,defaultXhrHeader:"XMLHttpRequest",poll:{},timeout:{},conn:{},pollInterval:50,transactionId:0,abort:function(a,b,c){var d=a.tId,e=!1;this.isCallInProgress(a)&&(a.conn.abort(),clearInterval(this.poll[d]),this.poll[d]=null,clearTimeout(B.timeout[d]),this.timeout[d]= +null,Z(a,b,e=!0,c));return e},isCallInProgress:function(a){return a.conn&&!{"0":!0,4:!0}[a.conn.readyState]}};Ext.lib.Ajax=B;var C=Ext.lib,da=/width|height|opacity|padding/i,ea=/^((width|height)|(top|left))$/,T=/width|height|top$|bottom$|left$|right$/i,U=/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i,F=function(a){return"undefined"!==typeof a};C.Anim={motion:function(a,b,c,d,e,g){return this.run(a,b,c,d,e,g,Ext.lib.Motion)},run:function(a,b,c,d,e,g,h){h=h||Ext.lib.AnimBase;"string"==typeof d&&(d=Ext.lib.Easing[d]); +a=new h(a,b,c,d);a.animateX(function(){Ext.isFunction(e)&&e.call(g)});return a}};C.AnimBase=function(a,b,c,d){a&&this.init(a,b,c,d)};C.AnimBase.prototype={doMethod:function(a,b,c){return this.method(this.curFrame,b,c-b,this.totalFrames)},setAttr:function(a,b,c){da.test(a)&&0>b&&(b=0);Ext.fly(this.el,"_anim").setStyle(a,b+c)},getAttr:function(a){var b=Ext.fly(this.el),c=b.getStyle(a);a=ea.exec(a)||[];return"auto"!==c&&!U.test(c)?parseFloat(c):a[2]||"absolute"==b.getStyle("position")&&a[3]?b.dom["offset"+ +a[0].charAt(0).toUpperCase()+a[0].substr(1)]:0},getDefaultUnit:function(a){return T.test(a)?"px":""},animateX:function(a,b){var c=this,d=function(){c.onComplete.removeListener(d);Ext.isFunction(a)&&a.call(b||c,c)};c.onComplete.addListener(d,c);c.animate()},setRunAttr:function(a){var b=this.attributes[a],c=b.to,d=b.by,e=b.from,b=b.unit,g=this.runAttrs[a]={},h;if(!F(c)&&!F(d))return!1;e=F(e)?e:this.getAttr(a);if(F(c))h=c;else if(F(d))if(Ext.isArray(e)){h=[];for(var c=0,j=e.length;c<j;c++)h[c]=e[c]+ +d[c]}else h=e+d;Ext.apply(g,{start:e,end:h,unit:F(b)?b:this.getDefaultUnit(a)})},init:function(a,b,c,d){var e=0,g=C.AnimMgr;Ext.apply(this,{isAnimated:!1,startTime:null,el:Ext.getDom(a),attributes:b||{},duration:c||1,method:d||C.Easing.easeNone,useSec:!0,curFrame:0,totalFrames:g.fps,runAttrs:{},animate:function(){var a=this.duration;if(this.isAnimated)return!1;this.curFrame=0;this.totalFrames=this.useSec?Math.ceil(g.fps*a):a;g.registerElement(this)},stop:function(a){a&&(this.curFrame=this.totalFrames, +this._onTween.fire());g.stop(this)}});this.onStart=new Ext.util.Event(this);this.onTween=new Ext.util.Event(this);this.onComplete=new Ext.util.Event(this);(this._onStart=new Ext.util.Event(this)).addListener(function(){var a;this.onStart.fire();this.runAttrs={};for(a in this.attributes)this.setRunAttr(a);this.isAnimated=!0;this.startTime=new Date;e=0});(this._onTween=new Ext.util.Event(this)).addListener(function(){this.onTween.fire({duration:new Date-this.startTime,curFrame:this.curFrame});var a= +this.runAttrs,b;for(b in a)this.setAttr(b,this.doMethod(b,a[b].start,a[b].end),a[b].unit);++e});(this._onComplete=new Ext.util.Event(this)).addListener(function(){var a=(new Date-this.startTime)/1E3,a={duration:a,frames:e,fps:e/a};this.isAnimated=!1;e=0;this.onComplete.fire(a)})}};Ext.lib.AnimMgr=new function(){var a=this,b=null,c=[],d=0;Ext.apply(a,{fps:1E3,delay:1,registerElement:function(b){c.push(b);++d;b._onStart.fire();a.start()},unRegister:function(b,e){b._onComplete.fire();var g;if(!(g=e))a:{var h; +g=0;for(h=c.length;g<h;g++)if(c[g]===b)break a;g=-1}e=g;-1!=e&&c.splice(e,1);0>=--d&&a.stop()},start:function(){null===b&&(b=setInterval(a.run,a.delay))},stop:function(e){if(e)a.unRegister(e);else{clearInterval(b);e=0;for(var g=c.length;e<g;++e)c[0].isAnimated&&a.unRegister(c[0],0);c=[];b=null;d=0}},run:function(){var b,d,e,g;d=0;for(e=c.length;d<e;d++)if((g=c[d])&&g.isAnimated)if(b=g.totalFrames,g.curFrame<b||null===b){++g.curFrame;if(g.useSec){b=g;var h=b.totalFrames,j=b.curFrame,l=b.duration,s= +1E3*j*l/h,k=new Date-b.startTime,m=0,m=k<1E3*l?Math.round((k/s-1)*j):h-(j+1);0<m&&isFinite(m)&&(b.curFrame+m>=h&&(m=h-(j+1)),b.curFrame+=m)}g._onTween.fire()}else a.stop(g)}})};C.Bezier=new function(){this.getPosition=function(a,b){var c=a.length,d=[],e=1-b,g,h;for(g=0;g<c;++g)d[g]=[a[g][0],a[g][1]];for(h=1;h<c;++h)for(g=0;g<c-h;++g)d[g][0]=e*d[g][0]+b*d[parseInt(g+1,10)][0],d[g][1]=e*d[g][1]+b*d[parseInt(g+1,10)][1];return[d[0][0],d[0][1]]}};C.Easing={easeNone:function(a,b,c,d){return c*a/d+b},easeIn:function(a, +b,c,d){return c*(a/=d)*a+b},easeOut:function(a,b,c,d){return-c*(a/=d)*(a-2)+b}};C.Motion=function(a,b,c,d){a&&C.Motion.superclass.constructor.call(this,a,b,c,d)};Ext.extend(C.Motion,Ext.lib.AnimBase);var L=C.Motion.superclass,M=/^points$/i;Ext.apply(C.Motion.prototype,{setAttr:function(a,b,c){var d=L.setAttr;M.test(a)?(c=c||"px",d.call(this,"left",b[0],c),d.call(this,"top",b[1],c)):d.call(this,a,b,c)},getAttr:function(a){var b=L.getAttr;return M.test(a)?[b.call(this,"left"),b.call(this,"top")]:b.call(this, +a)},doMethod:function(a,b,c){return M.test(a)?C.Bezier.getPosition(this.runAttrs[a],this.method(this.curFrame,0,100,this.totalFrames)/100):L.doMethod.call(this,a,b,c)},setRunAttr:function(a){if(M.test(a)){var b=this.el,c=this.attributes.points,d=c.control||[],e=c.from,g=c.to,c=c.by,h=C.Dom,j;0<d.length&&!Ext.isArray(d[0])&&(d=[d]);Ext.fly(b,"_anim").position();h.setXY(b,F(e)?e:h.getXY(b));b=this.getAttr("points");if(F(g)){j=D.call(this,g,b);g=0;for(e=d.length;g<e;++g)d[g]=D.call(this,d[g],b)}else if(F(c)){j= +[b[0]+c[0],b[1]+c[1]];g=0;for(e=d.length;g<e;++g)d[g]=[b[0]+d[g][0],b[1]+d[g][1]]}a=this.runAttrs[a]=[b];0<d.length&&(a=a.concat(d));a[a.length]=j}else L.setRunAttr.call(this,a)}});var D=function(a,b){var c=C.Dom.getXY(this.el);return[a[0]-c[0]+b[0],a[1]-c[1]+b[1]]},O=Math.abs,E=Math.PI,N=Math.asin,K=Math.pow,P=Math.sin,Q=Ext.lib;Ext.apply(Q.Easing,{easeBoth:function(a,b,c,d){return 1>(a/=d/2)?c/2*a*a+b:-c/2*(--a*(a-2)-1)+b},easeInStrong:function(a,b,c,d){return c*(a/=d)*a*a*a+b},easeOutStrong:function(a, +b,c,d){return-c*((a=a/d-1)*a*a*a-1)+b},easeBothStrong:function(a,b,c,d){return 1>(a/=d/2)?c/2*a*a*a*a+b:-c/2*((a-=2)*a*a*a-2)+b},elasticIn:function(a,b,c,d,e,g){if(0==a||1==(a/=d))return 0==a?b:b+c;g=g||0.3*d;e>=O(c)?c=g/(2*E)*N(c/e):(e=c,c=g/4);return-(e*K(2,10*(a-=1))*P((a*d-c)*2*E/g))+b},elasticOut:function(a,b,c,d,e,g){if(0==a||1==(a/=d))return 0==a?b:b+c;g=g||0.3*d;var h;e>=O(c)?h=g/(2*E)*N(c/e):(e=c,h=g/4);return e*K(2,-10*a)*P((a*d-h)*2*E/g)+c+b},elasticBoth:function(a,b,c,d,e,g){if(0==a|| +2==(a/=d/2))return 0==a?b:b+c;g=g||d*0.3*1.5;var h;e>=O(c)?h=g/(2*E)*N(c/e):(e=c,h=g/4);return 1>a?-0.5*e*K(2,10*(a-=1))*P((a*d-h)*2*E/g)+b:0.5*e*K(2,-10*(a-=1))*P((a*d-h)*2*E/g)+c+b},backIn:function(a,b,c,d,e){e=e||1.70158;return c*(a/=d)*a*((e+1)*a-e)+b},backOut:function(a,b,c,d,e){e||(e=1.70158);return c*((a=a/d-1)*a*((e+1)*a+e)+1)+b},backBoth:function(a,b,c,d,e){e=e||1.70158;return 1>(a/=d/2)?c/2*a*a*(((e*=1.525)+1)*a-e)+b:c/2*((a-=2)*a*(((e*=1.525)+1)*a+e)+2)+b},bounceIn:function(a,b,c,d){return c- +Q.Easing.bounceOut(d-a,0,c,d)+b},bounceOut:function(a,b,c,d){return(a/=d)<1/2.75?c*7.5625*a*a+b:a<2/2.75?c*(7.5625*(a-=1.5/2.75)*a+0.75)+b:a<2.5/2.75?c*(7.5625*(a-=2.25/2.75)*a+0.9375)+b:c*(7.5625*(a-=2.625/2.75)*a+0.984375)+b},bounceBoth:function(a,b,c,d){return a<d/2?0.5*Q.Easing.bounceIn(2*a,0,c,d)+b:0.5*Q.Easing.bounceOut(2*a-d,0,c,d)+0.5*c+b}});var V=function(a){var b=parseInt,c,d=null,e;if(3==a.length)return a;Ext.each([fa,ga,ha],function(g,h){c=0==h%2?16:10;if((e=g.exec(a))&&4==e.length)return d= +[b(e[1],c),b(e[2],c),b(e[3],c)],!1});return d},H=Ext.lib;H.Anim.color=function(a,b,c,d,e,g){return H.Anim.run(a,b,c,d,e,g,H.ColorAnim)};H.ColorAnim=function(a,b,c,d){H.ColorAnim.superclass.constructor.call(this,a,b,c,d)};Ext.extend(H.ColorAnim,H.AnimBase);var R=H.ColorAnim.superclass,W=/color$/i,ia=/^transparent|rgba\(0, 0, 0, 0\)$/,ga=/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i,fa=/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i,ha=/^#?([0-9A-F]{1})([0-9A-F]{1})([0-9A-F]{1})$/i;Ext.apply(H.ColorAnim.prototype, +{getAttr:function(a){var b=this.el,c;if(W.test(a))for(;b&&ia.test(c=Ext.fly(b).getStyle(a));)b=b.parentNode,c="fff";else c=R.getAttr.call(this,a);return c},doMethod:function(a,b,c){var d,e=Math.floor,g,h,j;if(W.test(a)){d=[];c=c||[];g=0;for(h=b.length;g<h;g++)j=b[g],d[g]=R.doMethod.call(this,a,j,c[g]);d="rgb("+e(d[0])+","+e(d[1])+","+e(d[2])+")"}else d=R.doMethod.call(this,a,b,c);return d},setRunAttr:function(a){var b=this.attributes[a],c=b.to,d=b.by;R.setRunAttr.call(this,a);b=this.runAttrs[a];if(W.test(a)){a= +V(b.start);var e=V(b.end);if("undefined"===typeof c&&"undefined"!==typeof d){e=V(d);c=0;for(d=a.length;c<d;c++)e[c]=a[c]+e[c]}b.start=a;b.end=e}}});var I=Ext.lib;I.Anim.scroll=function(a,b,c,d,e,g){return I.Anim.run(a,b,c,d,e,g,I.Scroll)};I.Scroll=function(a,b,c,d){a&&I.Scroll.superclass.constructor.call(this,a,b,c,d)};Ext.extend(I.Scroll,I.ColorAnim);var X=I.Scroll.superclass;Ext.apply(I.Scroll.prototype,{doMethod:function(a,b,c){var d=this.curFrame,e=this.totalFrames;return"scroll"==a?[this.method(d, +b[0],c[0]-b[0],e),this.method(d,b[1],c[1]-b[1],e)]:X.doMethod.call(this,a,b,c)},getAttr:function(a){return"scroll"==a?[this.el.scrollLeft,this.el.scrollTop]:X.getAttr.call(this,a)},setAttr:function(a,b,c){"scroll"==a?(this.el.scrollLeft=b[0],this.el.scrollTop=b[1]):X.setAttr.call(this,a,b,c)}});if(Ext.isIE){var aa=function(){var a=Function.prototype;delete a.createSequence;delete a.defer;delete a.createDelegate;delete a.createCallback;delete a.createInterceptor;window.detachEvent("onunload",aa)}; +window.attachEvent("onunload",aa)}})(); +(function(){var a=Ext.util,b=Ext.each;a.Observable=function(){var a=this.events;this.listeners&&(this.on(this.listeners),delete this.listeners);this.events=a||{}};a.Observable.prototype={filterOptRe:/^(?:scope|delay|buffer|single)$/,fireEvent:function(){var a=Array.prototype.slice.call(arguments,0),b=a[0].toLowerCase(),c=!0,h=this.events[b],j;if(!0===this.eventsSuspended)(j=this.eventQueue)&&j.push(a);else if("object"==typeof h)if(h.bubble){if(!1===h.fire.apply(h,a.slice(1)))return!1;if((h=this.getBubbleTarget&& +this.getBubbleTarget())&&h.enableBubble)return c=h.events[b],(!c||"object"!=typeof c||!c.bubble)&&h.enableBubble(b),h.fireEvent.apply(h,a)}else a.shift(),c=h.fire.apply(h,a);return c},addListener:function(b,c,g,h){var j;if("object"==typeof b)for(j in h=b,h)b=h[j],this.filterOptRe.test(j)||this.addListener(j,b.fn||b,b.scope||h.scope,b.fn?b:h);else b=b.toLowerCase(),j=this.events[b]||!0,"boolean"==typeof j&&(this.events[b]=j=new a.Event(this,b)),j.addListener(c,g,"object"==typeof h?h:{})},removeListener:function(a, +b,c){a=this.events[a.toLowerCase()];"object"==typeof a&&a.removeListener(b,c)},purgeListeners:function(){var a=this.events,b,c;for(c in a)b=a[c],"object"==typeof b&&b.clearListeners()},addEvents:function(a){this.events=this.events||{};if("string"==typeof a)for(var b=arguments,c=b.length;c--;)this.events[b[c]]=this.events[b[c]]||!0;else Ext.applyIf(this.events,a)},hasListener:function(a){a=this.events[a.toLowerCase()];return"object"==typeof a&&0<a.listeners.length},suspendEvents:function(a){this.eventsSuspended= +!0;a&&!this.eventQueue&&(this.eventQueue=[])},resumeEvents:function(){var a=this,c=a.eventQueue||[];a.eventsSuspended=!1;delete a.eventQueue;b(c,function(b){a.fireEvent.apply(a,b)})}};var c=a.Observable.prototype;c.on=c.addListener;c.un=c.removeListener;a.Observable.releaseCapture=function(a){a.fireEvent=c.fireEvent};a.Event=function(a,b){this.name=b;this.obj=a;this.listeners=[]};a.Event.prototype={addListener:function(a,b,c){b=b||this.obj;this.isListening(a,b)||(a=this.createListener(a,b,c),this.firing&& +(this.listeners=this.listeners.slice(0)),this.listeners.push(a))},createListener:function(b,c,g){g=g||{};c=c||this.obj;var h={fn:b,scope:c,options:g},j=b;if(g.target)var k=j,l=g,m=c,j=function(){l.target==arguments[0]&&k.apply(m,Array.prototype.slice.call(arguments,0))};if(g.delay)var q=j,r=g,n=c,j=function(){var b=new a.DelayedTask,c=Array.prototype.slice.call(arguments,0);h.tasks||(h.tasks=[]);h.tasks.push(b);b.delay(r.delay||10,function(){h.tasks.remove(b);q.apply(n,c)},n)};if(g.single)var s=j, +x=this,u=c,j=function(){x.removeListener(b,u);return s.apply(u,arguments)};if(g.buffer){var p=j,y=g,t=c;h.task=new a.DelayedTask;j=function(){h.task.delay(y.buffer,p,t,Array.prototype.slice.call(arguments,0))}}h.fireFn=j;return h},findListener:function(a,b){var c=this.listeners,h=c.length,j;for(b=b||this.obj;h--;)if((j=c[h])&&j.fn==a&&j.scope==b)return h;return-1},isListening:function(a,b){return-1!=this.findListener(a,b)},removeListener:function(a,b){var c,h,j;h=!1;if(-1!=(c=this.findListener(a, +b))){this.firing&&(this.listeners=this.listeners.slice(0));h=this.listeners[c];h.task&&(h.task.cancel(),delete h.task);if(j=h.tasks&&h.tasks.length){for(;j--;)h.tasks[j].cancel();delete h.tasks}this.listeners.splice(c,1);h=!0}return h},clearListeners:function(){for(var a=this.listeners,b=a.length;b--;)this.removeListener(a[b].fn,a[b].scope)},fire:function(){var a=this.listeners,b=a.length,c=0,h;if(0<b){this.firing=!0;for(var j=Array.prototype.slice.call(arguments,0);c<b;c++)if((h=a[c])&&!1===h.fireFn.apply(h.scope|| +this.obj||window,j))return this.firing=!1}this.firing=!1;return!0}}})(); +Ext.DomHelper=function(){function a(a,c,d,e){a=m.insertHtml(e,Ext.getDom(a),b(c));return d?Ext.get(a,!0):a}function b(a){var c="",d,g,j,l;if("string"==typeof a)c=a;else if(Ext.isArray(a))for(d=0;d<a.length;d++)a[d]&&(c+=b(a[d]));else{c+="<"+(a.tag=a.tag||"div");for(d in a)if(g=a[d],!h.test(d))if("object"==typeof g){c+=" "+d+'="';for(j in g)c+=j+":"+g[j]+";";c+='"'}else c+=" "+({cls:"class",htmlFor:"for"}[d]||d)+'="'+g+'"';e.test(a.tag)?c+="/>":(c+=">",(l=a.children||a.cn)?c+=b(l):a.html&&(c+=a.html), +c+="</"+a.tag+">")}return c}function c(a,b,c,e){d.innerHTML=[b,c,e].join("");c=-1;for(b=d;++c<a;)b=b.firstChild;if(b.nextSibling){for(c=document.createDocumentFragment();b;)a=b.nextSibling,c.appendChild(b),b=a;b=c}return b}var d=null,e=/^(?:br|frame|hr|img|input|link|meta|range|spacer|wbr|area|param|col)$/i,g=/^table|tbody|tr|td$/i,h=/tag|children|cn|html$/i,j=/td|tr|tbody/i,k=/([a-z0-9-]+)\s*:\s*([^;\s]+(?:\s*[^;\s]+)*);?/gi,l=/end/i,m;return m={markup:function(a){return b(a)},applyStyles:function(a, +b){if(b){var c;a=Ext.fly(a);"function"==typeof b&&(b=b.call());if("string"==typeof b)for(k.lastIndex=0;c=k.exec(b);)a.setStyle(c[1],c[2]);else"object"==typeof b&&a.setStyle(b)}},insertHtml:function(a,b,e){var h={},k,m;a=a.toLowerCase();h.beforebegin=["BeforeBegin","previousSibling"];h.afterend=["AfterEnd","nextSibling"];if(b.insertAdjacentHTML){if(m=g.test(b.tagName)){var p=b.tagName.toLowerCase(),y=a;k=b;d=d||document.createElement("div");if("td"==p&&("afterbegin"==y||"beforeend"==y)||!j.test(p)&& +("beforebegin"==y||"afterend"==y))k=void 0;else{m="beforebegin"==y?k:"afterend"==y?k.nextSibling:"afterbegin"==y?k.firstChild:null;if("beforebegin"==y||"afterend"==y)k=k.parentNode;p="td"==p||"tr"==p&&("beforeend"==y||"afterbegin"==y)?c(4,"<table><tbody><tr>",e,"</tr></tbody></table>"):"tbody"==p&&("beforeend"==y||"afterbegin"==y)||"tr"==p&&("beforebegin"==y||"afterend"==y)?c(3,"<table><tbody>",e,"</tbody></table>"):c(2,"<table>",e,"</table>");k.insertBefore(p,m);k=p}m=k}if(m)return k;h.afterbegin= +["AfterBegin","firstChild"];h.beforeend=["BeforeEnd","lastChild"];if(h=h[a])return b.insertAdjacentHTML(h[0],e),b[h[1]]}else{m=b.ownerDocument.createRange();k="setStart"+(l.test(a)?"After":"Before");if(h[a])return m[k](b),e=m.createContextualFragment(e),b.parentNode.insertBefore(e,"beforebegin"==a?b:b.nextSibling),b[("beforebegin"==a?"previous":"next")+"Sibling"];h=("afterbegin"==a?"first":"last")+"Child";b.firstChild?(m[k](b[h]),e=m.createContextualFragment(e),"afterbegin"==a?b.insertBefore(e,b.firstChild): +b.appendChild(e)):b.innerHTML=e;return b[h]}throw'Illegal insertion point -> "'+a+'"';},insertBefore:function(b,c,d){return a(b,c,d,"beforebegin")},insertAfter:function(b,c,d){return a(b,c,d,"afterend","nextSibling")},insertFirst:function(b,c,d){return a(b,c,d,"afterbegin","firstChild")},append:function(b,c,d){return a(b,c,d,"beforeend","",!0)},overwrite:function(a,c,d){a=Ext.getDom(a);a.innerHTML=b(c);return d?Ext.get(a.firstChild):a.firstChild},createHtml:b}}(); +Ext.Template=function(a){var b=arguments,c=[],d;if(Ext.isArray(a))a=a.join("");else if(1<b.length){for(var e=0,g=b.length;e<g;e++)d=b[e],"object"==typeof d?Ext.apply(this,d):c.push(d);a=c.join("")}this.html=a;this.compiled&&this.compile()}; +Ext.Template.prototype={re:/\{([\w-]+)\}/g,applyTemplate:function(a){return this.compiled?this.compiled(a):this.html.replace(this.re,function(b,c){return void 0!==a[c]?a[c]:""})},set:function(a,b){this.html=a;this.compiled=null;return b?this.compile():this},compile:function(){var a=Ext.isGecko?"+":",";eval("this.compiled = function(values){ return "+(Ext.isGecko?"'":"['")+this.html.replace(/\\/g,"\\\\").replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,function(b,c){c="values['"+c+"']"; +return"'"+a+"("+c+" == undefined ? '' : "+c+")"+a+"'"})+(Ext.isGecko?"';};":"'].join('');};"));return this},insertFirst:function(a,b,c){return this.doInsert("afterBegin",a,b,c)},insertBefore:function(a,b,c){return this.doInsert("beforeBegin",a,b,c)},insertAfter:function(a,b,c){return this.doInsert("afterEnd",a,b,c)},append:function(a,b,c){return this.doInsert("beforeEnd",a,b,c)},doInsert:function(a,b,c,d){b=Ext.getDom(b);a=Ext.DomHelper.insertHtml(a,b,this.applyTemplate(c));return d?Ext.get(a,!0): +a},overwrite:function(a,b,c){a=Ext.getDom(a);a.innerHTML=this.applyTemplate(b);return c?Ext.get(a.firstChild,!0):a.firstChild}};Ext.Template.prototype.apply=Ext.Template.prototype.applyTemplate;Ext.Template.from=function(a,b){a=Ext.getDom(a);return new Ext.Template(a.value||a.innerHTML,b||"")}; +Ext.DomQuery=function(){function a(a){for(;(a=a.nextSibling)&&1!=a.nodeType;);return a}function b(a){for(;(a=a.previousSibling)&&1!=a.nodeType;);return a}function c(a){if(!a)return[];var b=a.length,c,d,e=a,g=-1;if(!b||"undefined"!=typeof a.nodeType||1==b)return a;if(r&&"undefined"!=typeof a[0].selectSingleNode){e=++n;a[0].setAttribute("_nodup",e);g=[a[0]];b=1;for(d=a.length;b<d;b++)c=a[b],!c.getAttribute("_nodup")!=e&&(c.setAttribute("_nodup",e),g[g.length]=c);b=0;for(d=a.length;b<d;b++)a[b].removeAttribute("_nodup"); +return g}b=++n;a[0]._nodup=b;for(d=1;c=a[d];d++)if(c._nodup!=b)c._nodup=b;else{e=[];for(c=0;c<d;c++)e[++g]=a[c];for(c=d+1;d=a[c];c++)d._nodup!=b&&(d._nodup=b,e[++g]=d);break}return e}var d={},e={},g={},h=/^\s+|\s+$/g,j=/\{(\d+)\}/g,k=/^(\s?[\/>+~]\s?|\s|$)/,l=/^(#)?([\w-\*]+)/,m=/(\d*)n\+?(\d*)/,q=/\D/,r=window.ActiveXObject?!0:!1,n=30803;eval("var batch = 30803;");return{getStyle:function(a,b){return Ext.fly(a).getStyle(b)},compile:function(a,b){b=b||"select";var c=["var f = function(root){\n var mode; ++batch; var n = root || document;\n"], +d,e=Ext.DomQuery.matchers,g=e.length,m;if((m=a.match(k))&&m[1])c[c.length]='mode="'+m[1].replace(h,"")+'";',a=a.replace(m[1],"");for(;"/"==a.substr(0,1);)a=a.substr(1);for(;a&&d!=a;){d=a;m=a.match(l);"select"==b?m?(c[c.length]="#"==m[1]?'n = quickId(n, mode, root, "'+m[2]+'");':'n = getNodes(n, mode, "'+m[2]+'");',a=a.replace(m[0],"")):"@"!=a.substr(0,1)&&(c[c.length]='n = getNodes(n, mode, "*");'):m&&(c[c.length]="#"==m[1]?'n = byId(n, "'+m[2]+'");':'n = byTag(n, "'+m[2]+'");',a=a.replace(m[0],"")); +for(;!(m=a.match(k));){m=!1;for(var q=0;q<g;q++){var n=e[q],r=a.match(n.re);if(r){c[c.length]=n.select.replace(j,function(a,b){return r[b]});a=a.replace(r[0],"");m=!0;break}}if(!m)throw'Error parsing selector, parsing failed at "'+a+'"';}m[1]&&(c[c.length]='mode="'+m[1].replace(h,"")+'";',a=a.replace(m[1],""))}c[c.length]="return nodup(n);\n}";eval(c.join(""));return f},jsSelect:function(a,b){b=b||document;"string"==typeof b&&(b=document.getElementById(b));for(var e=a.split(","),g=[],j=0,l=e.length;j< +l;j++){var k=e[j].replace(h,"");if(!d[k]&&(d[k]=Ext.DomQuery.compile(k),!d[k]))throw k+" is not a valid selector";(k=d[k](b))&&k!=document&&(g=g.concat(k))}return 1<e.length?c(g):g},isXml:function(a){return(a=(a?a.ownerDocument||a:0).documentElement)?"HTML"!==a.nodeName:!1},select:document.querySelectorAll?function(a,b,c){b=b||document;if(!Ext.DomQuery.isXml(b))try{var d=b.querySelectorAll(a);return Ext.toArray(d)}catch(e){}return Ext.DomQuery.jsSelect.call(this,a,b,c)}:function(a,b,c){return Ext.DomQuery.jsSelect.call(this, +a,b,c)},selectNode:function(a,b){return Ext.DomQuery.select(a,b)[0]},selectValue:function(a,b,c){a=a.replace(h,"");g[a]||(g[a]=Ext.DomQuery.compile(a,"select"));a=g[a](b);a=a[0]?a[0]:a;"function"==typeof a.normalize&&a.normalize();a=a&&a.firstChild?a.firstChild.nodeValue:null;return null===a||void 0===a||""===a?c:a},selectNumber:function(a,b,c){a=Ext.DomQuery.selectValue(a,b,c||0);return parseFloat(a)},is:function(a,b){"string"==typeof a&&(a=document.getElementById(a));var c=Ext.isArray(a),d=Ext.DomQuery.filter(c? +a:[a],b);return c?d.length==a.length:0<d.length},filter:function(a,b,c){b=b.replace(h,"");e[b]||(e[b]=Ext.DomQuery.compile(b,"simple"));b=e[b](a);if(c){var d=b.length;c=++n;var g=[];if(d){if(r&&"undefined"!=typeof b[0].selectSingleNode){c=++n;for(var g=[],j=0,d=b.length;j<d;j++)b[j].setAttribute("_qdiff",c);j=0;for(d=a.length;j<d;j++)a[j].getAttribute("_qdiff")!=c&&(g[g.length]=a[j]);j=0;for(d=b.length;j<d;j++)b[j].removeAttribute("_qdiff")}else{for(j=0;j<d;j++)b[j]._qdiff=c;j=0;for(b=a.length;j< +b;j++)a[j]._qdiff!=c&&(g[g.length]=a[j])}a=g}}else a=b;return a},matchers:[{re:/^\.([\w-]+)/,select:'n = byClassName(n, " {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, "{1}");'},{re:/^@([\w-]+)/,select:'return {firstChild:{nodeValue:attrValue(n, "{1}")}};'}],operators:{"=":function(a, +b){return a==b},"!=":function(a,b){return a!=b},"^=":function(a,b){return a&&a.substr(0,b.length)==b},"$=":function(a,b){return a&&a.substr(a.length-b.length)==b},"*=":function(a,b){return a&&-1!==a.indexOf(b)},"%=":function(a,b){return 0==a%b},"|=":function(a,b){return a&&(a==b||a.substr(0,b.length+1)==b+"-")},"~=":function(a,b){return a&&-1!=(" "+a+" ").indexOf(" "+b+" ")}},pseudos:{"first-child":function(a){for(var b=[],c=-1,d,e=0,g;g=d=a[e];e++){for(;(d=d.previousSibling)&&1!=d.nodeType;);d|| +(b[++c]=g)}return b},"last-child":function(a){for(var b=[],c=-1,d,e=0,g;g=d=a[e];e++){for(;(d=d.nextSibling)&&1!=d.nodeType;);d||(b[++c]=g)}return b},"nth-child":function(a,b){for(var c=[],d=-1,e=m.exec("even"==b&&"2n"||"odd"==b&&"2n+1"||!q.test(b)&&"n+"+b||b),g=(e[1]||1)-0,e=e[2]-0,h=0,j;j=a[h];h++){var l=j.parentNode;if(batch!=l._batch){for(var k=0,n=l.firstChild;n;n=n.nextSibling)1==n.nodeType&&(n.nodeIndex=++k);l._batch=batch}if(1==g){if(0==e||j.nodeIndex==e)c[++d]=j}else 0==(j.nodeIndex+e)%g&& +(c[++d]=j)}return c},"only-child":function(c){for(var d=[],e=-1,g=0,h;h=c[g];g++)!b(h)&&!a(h)&&(d[++e]=h);return d},empty:function(a){for(var b=[],c=-1,d=0,e;e=a[d];d++){for(var g=e.childNodes,h=0,j,l=!0;j=g[h];)if(++h,1==j.nodeType||3==j.nodeType){l=!1;break}l&&(b[++c]=e)}return b},contains:function(a,b){for(var c=[],d=-1,e=0,g;g=a[e];e++)if(-1!=(g.textContent||g.innerText||"").indexOf(b))c[++d]=g;return c},nodeValue:function(a,b){for(var c=[],d=-1,e=0,g;g=a[e];e++)g.firstChild&&g.firstChild.nodeValue== +b&&(c[++d]=g);return c},checked:function(a){for(var b=[],c=-1,d=0,e;e=a[d];d++)!0==e.checked&&(b[++c]=e);return b},not:function(a,b){return Ext.DomQuery.filter(a,b,!0)},any:function(a,b){for(var c=b.split("|"),d=[],e=-1,g,h=0,j;j=a[h];h++)for(var l=0;g=c[l];l++)if(Ext.DomQuery.is(j,g)){d[++e]=j;break}return d},odd:function(a){return this["nth-child"](a,"odd")},even:function(a){return this["nth-child"](a,"even")},nth:function(a,b){return a[b-1]||[]},first:function(a){return a[0]||[]},last:function(a){return a[a.length- +1]||[]},has:function(a,b){for(var c=Ext.DomQuery.select,d=[],e=-1,g=0,h;h=a[g];g++)0<c(b,h).length&&(d[++e]=h);return d},next:function(b,c){for(var d=Ext.DomQuery.is,e=[],g=-1,h=0,j;j=b[h];h++){var l=a(j);l&&d(l,c)&&(e[++g]=j)}return e},prev:function(a,c){for(var d=Ext.DomQuery.is,e=[],g=-1,h=0,j;j=a[h];h++){var l=b(j);l&&d(l,c)&&(e[++g]=j)}return e}}}}();Ext.query=Ext.DomQuery.select; +Ext.util.DelayedTask=function(a,b,c){var d=this,e,g=function(){clearInterval(e);e=null;a.apply(b,c||[])};d.delay=function(h,j,k,l){d.cancel();a=j||a;b=k||b;c=l||c;e=setInterval(g,h)};d.cancel=function(){e&&(clearInterval(e),e=null)}}; +(function(){var a=document;Ext.Element=function(b,c){var d="string"==typeof b?a.getElementById(b):b,e;if(!d)return null;e=d.id;if(!c&&e&&Ext.elCache[e])return Ext.elCache[e].el;this.dom=d;this.id=e||Ext.id(d)};var b=Ext.DomHelper,c=Ext.Element,d=Ext.elCache;c.prototype={set:function(a,c){var d=this.dom,e,g;c=!1!==c&&!!d.setAttribute;for(e in a)a.hasOwnProperty(e)&&(g=a[e],"style"==e?b.applyStyles(d,g):"cls"==e?d.className=g:c?d.setAttribute(e,g):d[e]=g);return this},defaultUnit:"px",is:function(a){return Ext.DomQuery.is(this.dom, +a)},focus:function(a,b){b=b||this.dom;try{Number(a)?this.focus.defer(a,null,[null,b]):b.focus()}catch(c){}return this},blur:function(){try{this.dom.blur()}catch(a){}return this},getValue:function(a){var b=this.dom.value;return a?parseInt(b,10):b},addListener:function(a,b,c,d){Ext.EventManager.on(this.dom,a,b,c||this,d);return this},removeListener:function(a,b,c){Ext.EventManager.removeListener(this.dom,a,b,c||this);return this},removeAllListeners:function(){Ext.EventManager.removeAll(this.dom);return this}, +purgeAllListeners:function(){Ext.EventManager.purgeElement(this,!0);return this},addUnits:function(a){if(""===a||"auto"==a||void 0===a)a=a||"";else if(!isNaN(a)||!g.test(a))a+=this.defaultUnit||"px";return a},load:function(a,b,c){Ext.Ajax.request(Ext.apply({params:b,url:a.url||a,callback:c,el:this.dom,indicatorText:a.indicatorText||""},Ext.isObject(a)?a:{}));return this},isBorderBox:function(){return Ext.isBorderBox||Ext.isForcedBorderBox||k[(this.dom.tagName||"").toLowerCase()]},remove:function(){var a= +this.dom;a&&(delete this.dom,Ext.removeNode(a))},hover:function(a,b,c,d){this.on("mouseenter",a,c||this.dom,d);this.on("mouseleave",b,c||this.dom,d);return this},contains:function(a){return!a?!1:Ext.lib.Dom.isAncestor(this.dom,a.dom?a.dom:a)},getAttributeNS:function(a,b){return this.getAttribute(b,a)},getAttribute:Ext.isIE?function(a,b){var c=this.dom;return-1==["undefined","unknown"].indexOf(typeof c[b+":"+a])?c[b+":"+a]:c[a]}:function(a,b){var c=this.dom;return c.getAttributeNS(b,a)||c.getAttribute(b+ +":"+a)||c.getAttribute(a)||c[a]},update:function(a){this.dom&&(this.dom.innerHTML=a);return this}};var e=c.prototype;c.addMethods=function(a){Ext.apply(e,a)};e.on=e.addListener;e.un=e.removeListener;e.autoBoxAdjust=!0;var g=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i,h;c.get=function(b){var e,g;if(!b)return null;if("string"==typeof b){if(!(g=a.getElementById(b)))return null;d[b]&&d[b].el?(e=d[b].el,e.dom=g):e=c.addToCache(new c(g));return e}if(b.tagName){if(!(e=b.id))e=Ext.id(b);d[e]&&d[e].el?(e=d[e].el, +e.dom=b):e=c.addToCache(new c(b));return e}return b instanceof c?(b!=h&&(b.dom=Ext.isIE&&(void 0==b.id||""==b.id)?b.dom:a.getElementById(b.id)||b.dom),b):b.isComposite?b:Ext.isArray(b)?c.select(b):b==a?(h||(b=function(){},b.prototype=c.prototype,h=new b,h.dom=a),h):null};c.addToCache=function(a,b){b=b||a.id;d[b]={el:a,data:{},events:{}};return a};c.data=function(a,b,e){a=c.get(a);if(!a)return null;var g=d[a.id].data;return 2==arguments.length?g[b]:g[b]=e};c.collectorThreadId=setInterval(function(){if(Ext.enableGarbageCollector){var b, +e;for(b in d)if(e=d[b],!e.skipGC&&(e=e.el,e=e.dom,!e||!e.parentNode||!e.offsetParent&&!a.getElementById(b)))Ext.enableListenerCollection&&Ext.EventManager.removeAll(e),delete d[b];if(Ext.isIE){e={};for(b in d)e[b]=d[b];d=Ext.elCache=e}}else clearInterval(c.collectorThreadId)},3E4);var j=function(){};j.prototype=c.prototype;c.Flyweight=function(a){this.dom=a};c.Flyweight.prototype=new j;c.Flyweight.prototype.isFlyweight=!0;c._flyweights={};c.fly=function(a,b){var d=null;b=b||"_global";if(a=Ext.getDom(a))(c._flyweights[b]= +c._flyweights[b]||new c.Flyweight).dom=a,d=c._flyweights[b];return d};Ext.get=c.get;Ext.fly=c.fly;var k=Ext.isStrict?{select:1}:{input:1,select:1,textarea:1};if(Ext.isIE||Ext.isGecko)k.button=1})(); +Ext.Element.addMethods(function(){var a=Ext.DomQuery,b=Ext.get;return{findParent:function(c,d,e){var g=this.dom,h=document.body,j=0,k;if(Ext.isGecko&&"[object XULElement]"==Object.prototype.toString.call(g))return null;d=d||50;isNaN(d)&&(k=Ext.getDom(d),d=Number.MAX_VALUE);for(;g&&1==g.nodeType&&j<d&&g!=h&&g!=k;){if(a.is(g,c))return e?b(g):g;j++;g=g.parentNode}return null},findParentNode:function(a,b,e){var g=Ext.fly(this.dom.parentNode,"_internal");return g?g.findParent(a,b,e):null},up:function(a, +b){return this.findParentNode(a,b,!0)},select:function(a){return Ext.Element.select(a,this.dom)},query:function(b){return a.select(b,this.dom)},child:function(c,d){var e=a.selectNode(c,this.dom);return d?e:b(e)},down:function(c,d){var e=a.selectNode(" > "+c,this.dom);return d?e:b(e)},parent:function(a,b){return this.matchNode("parentNode","parentNode",a,b)},next:function(a,b){return this.matchNode("nextSibling","nextSibling",a,b)},prev:function(a,b){return this.matchNode("previousSibling","previousSibling", +a,b)},first:function(a,b){return this.matchNode("nextSibling","firstChild",a,b)},last:function(a,b){return this.matchNode("previousSibling","lastChild",a,b)},matchNode:function(c,d,e,g){for(d=this.dom[d];d;){if(1==d.nodeType&&(!e||a.is(d,e)))return!g?b(d):d;d=d[c]}return null}}}()); +Ext.Element.addMethods(function(){var a=Ext.getDom,b=Ext.get,c=Ext.DomHelper;return{appendChild:function(a){return b(a).appendTo(this)},appendTo:function(b){a(b).appendChild(this.dom);return this},insertBefore:function(b){(b=a(b)).parentNode.insertBefore(this.dom,b);return this},insertAfter:function(b){(b=a(b)).parentNode.insertBefore(this.dom,b.nextSibling);return this},insertFirst:function(c,e){c=c||{};return c.nodeType||c.dom||"string"==typeof c?(c=a(c),this.dom.insertBefore(c,this.dom.firstChild), +!e?b(c):c):this.createChild(c,this.dom.firstChild,e)},replace:function(a){a=b(a);this.insertBefore(a);a.remove();return this},replaceWith:function(b){b.nodeType||b.dom||"string"==typeof b?(b=a(b),this.dom.parentNode.insertBefore(b,this.dom)):b=c.insertBefore(this.dom,b);delete Ext.elCache[this.id];Ext.removeNode(this.dom);this.id=Ext.id(this.dom=b);Ext.Element.addToCache(this.isFlyweight?new Ext.Element(this.dom):this);return this},createChild:function(a,b,g){a=a||{tag:"div"};return b?c.insertBefore(b, +a,!0!==g):c[!this.dom.firstChild?"overwrite":"append"](this.dom,a,!0!==g)},wrap:function(a,b){var g=c.insertBefore(this.dom,a||{tag:"div"},!b);g.dom?g.dom.appendChild(this.dom):g.appendChild(this.dom);return g},insertHtml:function(a,b,g){a=c.insertHtml(a,this.dom,b);return g?Ext.get(a):a}}}()); +Ext.Element.addMethods(function(){function a(a,b){return b.charAt(1).toUpperCase()}function b(b){return d[b]||(d[b]="float"==b?c.cssFloat?"cssFloat":"styleFloat":b.replace(e,a))}var c=Ext.supports,d={},e=/(-[a-z])/gi,g=document.defaultView,h=/alpha\(opacity=(.*)\)/i,j=/^\s+|\s+$/g,k=/\s+/,l=/\w/g,m=Math,q={l:"border-left-width",r:"border-right-width",t:"border-top-width",b:"border-bottom-width"},r={l:"padding-left",r:"padding-right",t:"padding-top",b:"padding-bottom"},n=Ext.Element.data;return{adjustWidth:function(a){var b= +"number"==typeof a;b&&(this.autoBoxAdjust&&!this.isBorderBox())&&(a-=this.getBorderWidth("lr")+this.getPadding("lr"));return b&&0>a?0:a},adjustHeight:function(a){var b="number"==typeof a;b&&(this.autoBoxAdjust&&!this.isBorderBox())&&(a-=this.getBorderWidth("tb")+this.getPadding("tb"));return b&&0>a?0:a},addClass:function(a){var b,c,d,e=[];if(Ext.isArray(a)){b=0;for(c=a.length;b<c;b++)d=a[b],"string"==typeof d&&-1==(" "+this.dom.className+" ").indexOf(" "+d+" ")&&e.push(d);e.length&&(this.dom.className+= +" "+e.join(" "))}else"string"==typeof a&&!this.hasClass(a)&&(this.dom.className+=" "+a);return this},removeClass:function(a){var b,c,d,e;Ext.isArray(a)||(a=[a]);if(this.dom&&this.dom.className){e=this.dom.className.replace(j,"").split(k);b=0;for(d=a.length;b<d;b++)c=a[b],"string"==typeof c&&(c=c.replace(j,""),c=e.indexOf(c),-1!=c&&e.splice(c,1));this.dom.className=e.join(" ")}return this},radioClass:function(a){var b=this.dom.parentNode.childNodes,c,d,e;a=Ext.isArray(a)?a:[a];d=0;for(e=b.length;d< +e;d++)(c=b[d])&&1==c.nodeType&&Ext.fly(c,"_internal").removeClass(a);return this.addClass(a)},toggleClass:function(a){return this.hasClass(a)?this.removeClass(a):this.addClass(a)},hasClass:function(a){return a&&-1!=(" "+this.dom.className+" ").indexOf(" "+a+" ")},replaceClass:function(a,b){return this.removeClass(a).addClass(b)},isStyle:function(a,b){return this.getStyle(a)==b},getStyle:g&&g.getComputedStyle?function(a){var d=this.dom,e,h,j;if(d==document)return null;a=b(a);j=(e=d.style[a])?e:(h= +g.getComputedStyle(d,""))?h[a]:null;"marginRight"==a&&("0px"!=j&&!c.correctRightMargin)&&(e=d.style.display,d.style.display="inline-block",j=g.getComputedStyle(d,"").marginRight,d.style.display=e);"backgroundColor"==a&&("rgba(0, 0, 0, 0)"==j&&!c.correctTransparentColor)&&(j="transparent");return j}:function(a){var c=this.dom,d,e;if(c==document)return null;if("opacity"==a){if(c.style.filter.match&&(d=c.style.filter.match(h)))if(a=parseFloat(d[1]),!isNaN(a))return a?a/100:0;return 1}a=b(a);return c.style[a]|| +((e=c.currentStyle)?e[a]:null)},getColor:function(a,b,c){a=this.getStyle(a);var d="undefined"!=typeof c?c:"#",e;if(!a||/transparent|inherit/.test(a))return b;/^r/.test(a)?Ext.each(a.slice(4,a.length-1).split(","),function(a){e=parseInt(a,10);d+=(16>e?"0":"")+e.toString(16)}):(a=a.replace("#",""),d+=3==a.length?a.replace(/^(\w)(\w)(\w)$/,"$1$1$2$2$3$3"):a);return 5<d.length?d.toLowerCase():b},setStyle:function(a,c){var d,e;"object"!=typeof a&&(d={},d[a]=c,a=d);for(e in a)c=a[e],"opacity"==e?this.setOpacity(c): +this.dom.style[b(e)]=c;return this},setOpacity:function(a,b){var c=this.dom.style;if(!b||!this.anim)if(Ext.isIE){var d=1>a?"alpha(opacity="+100*a+")":"",e=c.filter.replace(h,"").replace(j,"");c.zoom=1;c.filter=e+(0<e.length?" ":"")+d}else c.opacity=a;else this.anim({opacity:{to:a}},this.preanim(arguments,1),null,0.35,"easeIn");return this},clearOpacity:function(){var a=this.dom.style;Ext.isIE?Ext.isEmpty(a.filter)||(a.filter=a.filter.replace(h,"").replace(j,"")):a.opacity=a["-moz-opacity"]=a["-khtml-opacity"]= +"";return this},getHeight:function(a){var b=this.dom,c=Ext.isIE&&this.isStyle("display","none"),b=m.max(b.offsetHeight,c?0:b.clientHeight)||0,b=!a?b:b-this.getBorderWidth("tb")-this.getPadding("tb");return 0>b?0:b},getWidth:function(a){var b=this.dom,c=Ext.isIE&&this.isStyle("display","none"),b=m.max(b.offsetWidth,c?0:b.clientWidth)||0,b=!a?b:b-this.getBorderWidth("lr")-this.getPadding("lr");return 0>b?0:b},setWidth:function(a,b){a=this.adjustWidth(a);!b||!this.anim?this.dom.style.width=this.addUnits(a): +this.anim({width:{to:a}},this.preanim(arguments,1));return this},setHeight:function(a,b){a=this.adjustHeight(a);!b||!this.anim?this.dom.style.height=this.addUnits(a):this.anim({height:{to:a}},this.preanim(arguments,1));return this},getBorderWidth:function(a){return this.addStyles(a,q)},getPadding:function(a){return this.addStyles(a,r)},clip:function(){var a=this.dom;n(a,"isClipped")||(n(a,"isClipped",!0),n(a,"originalClip",{o:this.getStyle("overflow"),x:this.getStyle("overflow-x"),y:this.getStyle("overflow-y")}), +this.setStyle("overflow","hidden"),this.setStyle("overflow-x","hidden"),this.setStyle("overflow-y","hidden"));return this},unclip:function(){var a=this.dom;n(a,"isClipped")&&(n(a,"isClipped",!1),a=n(a,"originalClip"),a.o&&this.setStyle("overflow",a.o),a.x&&this.setStyle("overflow-x",a.x),a.y&&this.setStyle("overflow-y",a.y));return this},addStyles:function(a,b){var c=0,d=a.match(l),e,g,h=d.length;for(g=0;g<h;g++)(e=(e=d[g])&&parseInt(this.getStyle(b[e]),10))&&(c+=m.abs(e));return c},margins:{l:"margin-left", +r:"margin-right",t:"margin-top",b:"margin-bottom"}}}()); +(function(){var a=Ext.lib.Dom;Ext.Element.addMethods({getX:function(){return a.getX(this.dom)},getY:function(){return a.getY(this.dom)},getXY:function(){return a.getXY(this.dom)},getOffsetsTo:function(a){var c=this.getXY();a=Ext.fly(a,"_internal").getXY();return[c[0]-a[0],c[1]-a[1]]},setX:function(a,c){return this.setXY([a,this.getY()],this.animTest(arguments,c,1))},setY:function(a,c){return this.setXY([this.getX(),a],this.animTest(arguments,c,1))},setLeft:function(a){this.setStyle("left",this.addUnits(a)); +return this},setTop:function(a){this.setStyle("top",this.addUnits(a));return this},setRight:function(a){this.setStyle("right",this.addUnits(a));return this},setBottom:function(a){this.setStyle("bottom",this.addUnits(a));return this},setXY:function(b,c){!c||!this.anim?a.setXY(this.dom,b):this.anim({points:{to:b}},this.preanim(arguments,1),"motion");return this},setLocation:function(a,c,d){return this.setXY([a,c],this.animTest(arguments,d,2))},moveTo:function(a,c,d){return this.setXY([a,c],this.animTest(arguments, +d,2))},getLeft:function(a){return!a?this.getX():parseInt(this.getStyle("left"),10)||0},getRight:function(a){return!a?this.getX()+this.getWidth():this.getLeft(!0)+this.getWidth()||0},getTop:function(a){return!a?this.getY():parseInt(this.getStyle("top"),10)||0},getBottom:function(a){return!a?this.getY()+this.getHeight():this.getTop(!0)+this.getHeight()||0},position:function(a,c,d,e){!a&&this.isStyle("position","static")?this.setStyle("position","relative"):a&&this.setStyle("position",a);c&&this.setStyle("z-index", +c);if(d||e)this.setXY([d||!1,e||!1])},clearPositioning:function(a){a=a||"";this.setStyle({left:a,right:a,top:a,bottom:a,"z-index":"",position:"static"});return this},getPositioning:function(){var a=this.getStyle("left"),c=this.getStyle("top");return{position:this.getStyle("position"),left:a,right:a?"":this.getStyle("right"),top:c,bottom:c?"":this.getStyle("bottom"),"z-index":this.getStyle("z-index")}},setPositioning:function(a){var c=this.dom.style;this.setStyle(a);"auto"==a.right&&(c.right="");"auto"== +a.bottom&&(c.bottom="");return this},translatePoints:function(a,c){c=isNaN(a[1])?c:a[1];a=isNaN(a[0])?a:a[0];var d=this.isStyle("position","relative"),e=this.getXY(),g=parseInt(this.getStyle("left"),10),h=parseInt(this.getStyle("top"),10),g=!isNaN(g)?g:d?0:this.dom.offsetLeft,h=!isNaN(h)?h:d?0:this.dom.offsetTop;return{left:a-e[0]+g,top:c-e[1]+h}},animTest:function(a,c,d){return c&&this.preanim?this.preanim(a,d):!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 a=this.dom,b=document,c=b.body,d=b.documentElement;a==b||a==c?(Ext.isIE&&Ext.isStrict?(a=d.scrollLeft,d=d.scrollTop):(a=window.pageXOffset,d=window.pageYOffset),c={left:a||(c?c.scrollLeft:0),top:d||(c?c.scrollTop:0)}):c={left:a.scrollLeft,top:a.scrollTop};return c}}); +Ext.Element.VISIBILITY=1;Ext.Element.DISPLAY=2;Ext.Element.OFFSETS=3;Ext.Element.ASCLASS=4;Ext.Element.visibilityCls="x-hide-nosize"; +Ext.Element.addMethods(function(){var a=Ext.Element,b=a.data,c=function(a){var c=b(a,"originalDisplay");void 0===c&&b(a,"originalDisplay",c="");return c},d=function(a){var c=b(a,"visibilityMode");void 0===c&&b(a,"visibilityMode",c=1);return c};return{originalDisplay:"",visibilityMode:1,setVisibilityMode:function(a){b(this.dom,"visibilityMode",a);return this},animate:function(a,b,c,d,k){this.anim(a,{duration:b,callback:c,easing:d},k);return this},anim:function(a,b,c,d,k,l){b=b||{};var m=this;a=Ext.lib.Anim[c|| +"run"](m.dom,a,b.duration||d||0.35,b.easing||k||"easeOut",function(){l&&l.call(m);b.callback&&b.callback.call(b.scope||m,m,b)},m);return b.anim=a},preanim:function(a,b){return!a[b]?!1:"object"==typeof a[b]?a[b]:{duration:a[b+1],callback:a[b+2],easing:a[b+3]}},isVisible:function(){var c=this.dom,g=b(c,"isVisible");if("boolean"==typeof g)return g;g=!this.isStyle("visibility","hidden")&&!this.isStyle("display","none")&&!(d(c)==a.ASCLASS&&this.hasClass(this.visibilityCls||a.visibilityCls));b(c,"isVisible", +g);return g},setVisible:function(c,g){var h=this,j=h.dom,k=d(j);if("string"==typeof g){switch(g){case "display":k=a.DISPLAY;break;case "visibility":k=a.VISIBILITY;break;case "offsets":k=a.OFFSETS;break;case "nosize":case "asclass":k=a.ASCLASS}h.setVisibilityMode(k);g=!1}if(!g||!h.anim)if(k==a.ASCLASS)h[c?"removeClass":"addClass"](h.visibilityCls||a.visibilityCls);else{if(k==a.DISPLAY)return h.setDisplayed(c);k==a.OFFSETS?c?(h.applyStyles(h.hideModeStyles||{position:"",top:"",left:""}),delete h.hideModeStyles): +(h.hideModeStyles={position:h.getStyle("position"),top:h.getStyle("top"),left:h.getStyle("left")},h.applyStyles({position:"absolute",top:"-10000px",left:"-10000px"})):(h.fixDisplay(),j.style.visibility=c?"visible":"hidden")}else c&&(h.setOpacity(0.01),h.setVisible(!0)),h.anim({opacity:{to:c?1:0}},h.preanim(arguments,1),null,0.35,"easeIn",function(){c||h.setVisible(!1).setOpacity(1)});b(j,"isVisible",c);return h},hasMetrics:function(){var b=this.dom;return this.isVisible()||d(b)==a.VISIBILITY},toggle:function(a){this.setVisible(!this.isVisible(), +this.preanim(arguments,0));return this},setDisplayed:function(a){"boolean"==typeof a&&(a=a?c(this.dom):"none");this.setStyle("display",a);return this},fixDisplay:function(){this.isStyle("display","none")&&(this.setStyle("visibility","hidden"),this.setStyle("display",c(this.dom)),this.isStyle("display","none")&&this.setStyle("display","block"))},hide:function(a){if("string"==typeof a)return this.setVisible(!1,a),this;this.setVisible(!1,this.preanim(arguments,0));return this},show:function(a){if("string"== +typeof a)return this.setVisible(!0,a),this;this.setVisible(!0,this.preanim(arguments,0));return this}}}()); +(function(){var a=!1,b=new Ext.Element.Flyweight,c={},d=function(a){b.dom=a;b.id=Ext.id(a);return b},e=function(a){c[a]||(c[a]=[]);return c[a]};Ext.enableFx=!0;Ext.Fx={switchStatements:function(a,b,c){return b.apply(this,c[a])},slideIn:function(a,b){var c,e,l,m,q,r;b=b||{};var n=this.dom,s=n.style,x,u,p,y,t,v,z;a=a||"t";this.queueFx(b,function(){x=d(n).getXY();d(n).fixDisplay();u=d(n).getFxRestore();c=x[0];e=x[1];l=n.offsetWidth;m=n.offsetHeight;r=q=void 0;q=c+l;r=e+m;d(n).setWidth(l).setHeight(m); +p=d(n).fxWrap(u.pos,b,"hidden");s.visibility="visible";s.position="absolute";t={to:[c,e]};v={to:l};z={to:m};y=d(n).switchStatements(a.toLowerCase(),function(a,b,c,e,g,h,j,k,l,m,p){var q={};d(a).setWidth(c).setHeight(e);if(d(a)[g])d(a)[g](h);b[j]=b[k]="0";l&&(q.width=l);m&&(q.height=m);p&&(q.points=p);return q},{t:[p,s,l,0,null,null,"left","bottom",null,z,null],l:[p,s,0,m,null,null,"right","top",v,null,null],r:[p,s,l,m,"setX",q,"left","top",null,null,t],b:[p,s,l,m,"setY",r,"left","top",null,z,t],tl:[p, +s,0,0,null,null,"right","bottom",v,z,t],bl:[p,s,0,0,"setY",e+m,"right","top",v,z,t],br:[p,s,0,0,"setXY",[q,r],"left","top",v,z,t],tr:[p,s,0,0,"setX",c+l,"left","bottom",v,z,t]});s.visibility="visible";d(p).show();arguments.callee.anim=d(p).fxanim(y,b,"motion",0.5,"easeOut",function(){d(n).fxUnwrap(p,u.pos,b);s.width=u.width;s.height=u.height;d(n).afterFx(b)})});return this},slideOut:function(b,c){var e,k,l,m,q,r;c=c||{};var n=this.dom,s=n.style,x=this.getXY(),u,p,y,t={to:0};b=b||"t";this.queueFx(c, +function(){p=d(n).getFxRestore();e=x[0];k=x[1];l=n.offsetWidth;m=n.offsetHeight;r=q=void 0;q=e+l;r=k+m;d(n).setWidth(l).setHeight(m);u=d(n).fxWrap(p.pos,c,"visible");s.visibility="visible";s.position="absolute";d(u).setWidth(l).setHeight(m);y=d(n).switchStatements(b.toLowerCase(),function(a,b,c,d,e,g,h,j,k){var l={};a[b]=a[c]="0";l[d]=e;g&&(l[g]=h);j&&(l[j]=k);return l},{t:[s,"left","bottom","height",t],l:[s,"right","top","width",t],r:[s,"left","top","width",t,"points",{to:[q,k]}],b:[s,"left","top", +"height",t,"points",{to:[e,r]}],tl:[s,"right","bottom","width",t,"height",t],bl:[s,"right","top","width",t,"height",t,"points",{to:[e,r]}],br:[s,"left","top","width",t,"height",t,"points",{to:[e+l,r]}],tr:[s,"left","bottom","width",t,"height",t,"points",{to:[q,k]}]});arguments.callee.anim=d(u).fxanim(y,c,"motion",0.5,"easeOut",function(){c.useDisplay?d(n).setDisplayed(a):d(n).hide();d(n).fxUnwrap(u,p.pos,c);s.width=p.width;s.height=p.height;d(n).afterFx(c)})});return this},puff:function(b){b=b||{}; +var c=this.dom,e=c.style,k,l,m;this.queueFx(b,function(){k=d(c).getWidth();l=d(c).getHeight();d(c).clearOpacity();d(c).show();m=d(c).getFxRestore();arguments.callee.anim=d(c).fxanim({width:{to:d(c).adjustWidth(2*k)},height:{to:d(c).adjustHeight(2*l)},points:{by:[0.5*-k,0.5*-l]},opacity:{to:0},fontSize:{to:200,unit:"%"}},b,"motion",0.5,"easeOut",function(){b.useDisplay?d(c).setDisplayed(a):d(c).hide();d(c).clearOpacity();d(c).setPositioning(m.pos);e.width=m.width;e.height=m.height;e.fontSize="";d(c).afterFx(b)})}); +return this},switchOff:function(b){b=b||{};var c=this.dom,e=c.style,k;this.queueFx(b,function(){function l(){b.useDisplay?d(c).setDisplayed(a):d(c).hide();d(c).clearOpacity();d(c).setPositioning(k.pos);e.width=k.width;e.height=k.height;d(c).afterFx(b)}d(c).clearOpacity();d(c).clip();k=d(c).getFxRestore();d(c).fxanim({opacity:{to:0.3}},null,null,0.1,null,function(){d(c).clearOpacity();(function(){d(c).fxanim({height:{to:1},points:{by:[0,0.5*d(c).getHeight()]}},b,"motion",0.3,"easeIn",l)}).defer(100)})}); +return this},highlight:function(a,b){b=b||{};var c=this.dom,e=b.attr||"backgroundColor",l={},m;this.queueFx(b,function(){d(c).clearOpacity();d(c).show();m=c.style[e];l[e]={from:a||"ffff9c",to:b.endColor||d(c).getColor(e)||"ffffff"};arguments.callee.anim=d(c).fxanim(l,b,"color",1,"easeIn",function(){c.style[e]=m;d(c).afterFx(b)})});return this},frame:function(a,b,c){c=c||{};var e=this.dom,l,m;this.queueFx(c,function(){function q(){var a=Ext.isBorderBox?2:1;m=l.anim({top:{from:n.y,to:n.y-20},left:{from:n.x, +to:n.x-20},borderWidth:{from:0,to:10},opacity:{from:1,to:0},height:{from:n.height,to:n.height+20*a},width:{from:n.width,to:n.width+20*a}},{duration:c.duration||1,callback:function(){l.remove();0<--b?s():d(e).afterFx(c)}});arguments.callee.anim={isAnimated:!0,stop:function(){m.stop()}}}a=a||"#C3DAF9";6==a.length&&(a="#"+a);b=b||1;d(e).show();var r=d(e).getXY(),n={x:r[0],y:r[1],"0":r[0],1:r[1],width:e.offsetWidth,height:e.offsetHeight},s=function(){l=d(document.body||document.documentElement).createChild({style:{position:"absolute", +"z-index":35E3,border:"0px solid "+a}});return l.queueFx({},q)};arguments.callee.anim={isAnimated:!0,stop:function(){b=0;l.stopFx()}};s()});return this},pause:function(a){var b=this.dom,c;this.queueFx({},function(){c=setTimeout(function(){d(b).afterFx({})},1E3*a);arguments.callee.anim={isAnimated:!0,stop:function(){clearTimeout(c);d(b).afterFx({})}}});return this},fadeIn:function(a){a=a||{};var b=this.dom,c=a.endOpacity||1;this.queueFx(a,function(){d(b).setOpacity(0);d(b).fixDisplay();b.style.visibility= +"visible";arguments.callee.anim=d(b).fxanim({opacity:{to:c}},a,null,0.5,"easeOut",function(){1==c&&d(b).clearOpacity();d(b).afterFx(a)})});return this},fadeOut:function(a){a=a||{};var b=this.dom,c=b.style,e=a.endOpacity||0;this.queueFx(a,function(){arguments.callee.anim=d(b).fxanim({opacity:{to:e}},a,null,0.5,"easeOut",function(){0==e&&(Ext.Element.data(b,"visibilityMode")==Ext.Element.DISPLAY||a.useDisplay?c.display="none":c.visibility="hidden",d(b).clearOpacity());d(b).afterFx(a)})});return this}, +scale:function(a,b,c){this.shift(Ext.apply({},c,{width:a,height:b}));return this},shift:function(a){a=a||{};var b=this.dom,c={};this.queueFx(a,function(){for(var e in a)void 0!=a[e]&&(c[e]={to:a[e]});c.width?c.width.to=d(b).adjustWidth(a.width):c;c.height?c.height.to=d(b).adjustWidth(a.height):c;if(c.x||c.y||c.xy)c.points=c.xy||{to:[c.x?c.x.to:d(b).getX(),c.y?c.y.to:d(b).getY()]};arguments.callee.anim=d(b).fxanim(c,a,"motion",0.35,"easeOut",function(){d(b).afterFx(a)})});return this},ghost:function(b, +c){c=c||{};var e=this.dom,k=e.style,l={opacity:{to:0},points:{}},m=l.points,q,r,n;b=b||"b";this.queueFx(c,function(){q=d(e).getFxRestore();r=d(e).getWidth();n=d(e).getHeight();m.by=d(e).switchStatements(b.toLowerCase(),function(a,b){return[a,b]},{t:[0,-n],l:[-r,0],r:[r,0],b:[0,n],tl:[-r,-n],bl:[-r,n],br:[r,n],tr:[r,-n]});arguments.callee.anim=d(e).fxanim(l,c,"motion",0.5,"easeOut",function(){c.useDisplay?d(e).setDisplayed(a):d(e).hide();d(e).clearOpacity();d(e).setPositioning(q.pos);k.width=q.width; +k.height=q.height;d(e).afterFx(c)})});return this},syncFx:function(){this.fxDefaults=Ext.apply(this.fxDefaults||{},{block:a,concurrent:!0,stopFx:a});return this},sequenceFx:function(){this.fxDefaults=Ext.apply(this.fxDefaults||{},{block:a,concurrent:a,stopFx:a});return this},nextFx:function(){var a=e(this.dom.id)[0];a&&a.call(this)},hasActiveFx:function(){return e(this.dom.id)[0]},stopFx:function(a){var b=this.dom.id;if(this.hasActiveFx()){var d=e(b)[0];d&&d.anim&&(d.anim.isAnimated?(c[b]=[d],d.anim.stop(void 0!== +a?a:!0)):c[b]=[])}return this},beforeFx:function(b){return this.hasActiveFx()&&!b.concurrent?b.stopFx?(this.stopFx(),!0):a:!0},hasFxBlock:function(){var a=e(this.dom.id);return a&&a[0]&&a[0].block},queueFx:function(a,b){var c=d(this.dom);if(!c.hasFxBlock())if(Ext.applyIf(a,c.fxDefaults),a.concurrent)b.call(c);else{var k=c.beforeFx(a);b.block=a.block;e(c.dom.id).push(b);k&&c.nextFx()}return c},fxWrap:function(a,b,c){var e=this.dom,l,m;if(!b.wrap||!(l=Ext.getDom(b.wrap)))b.fixPosition&&(m=d(e).getXY()), +b=document.createElement("div"),b.style.visibility=c,l=e.parentNode.insertBefore(b,e),d(l).setPositioning(a),d(l).isStyle("position","static")&&d(l).position("relative"),d(e).clearPositioning("auto"),d(l).clip(),l.appendChild(e),m&&d(l).setXY(m);return l},fxUnwrap:function(a,b,c){var e=this.dom;d(e).clearPositioning();d(e).setPositioning(b);c.wrap||(d(a).dom.parentNode.insertBefore(e,a),d(a).remove())},getFxRestore:function(){var a=this.dom.style;return{pos:this.getPositioning(),width:a.width,height:a.height}}, +afterFx:function(a){var b=this.dom,c=b.id;a.afterStyle&&d(b).setStyle(a.afterStyle);a.afterCls&&d(b).addClass(a.afterCls);!0==a.remove&&d(b).remove();a.callback&&a.callback.call(a.scope,d(b));a.concurrent||(e(c).shift(),d(b).nextFx())},fxanim:function(a,b,c,d,e,m){b=b||{};a=Ext.lib.Anim[c||"run"](this.dom,a,b.duration||d||0.35,b.easing||e||"easeOut",m,this);return b.anim=a}};Ext.Fx.resize=Ext.Fx.scale;Ext.Element.addMethods(Ext.Fx)})(); +Ext.CompositeElementLite=function(a,b){this.elements=[];this.add(a,b);this.el=new Ext.Element.Flyweight}; +Ext.CompositeElementLite.prototype={isComposite:!0,getElement:function(a){var b=this.el;b.dom=a;b.id=a.id;return b},transformElement:function(a){return Ext.getDom(a)},getCount:function(){return this.elements.length},add:function(a,b){var c=this.elements;if(!a)return this;"string"==typeof a?a=Ext.Element.selectorFunction(a,b):a.isComposite?a=a.elements:Ext.isIterable(a)||(a=[a]);for(var d=0,e=a.length;d<e;++d)c.push(this.transformElement(a[d]));return this},invoke:function(a,b){var c=this.elements, +d=c.length,e,g;for(g=0;g<d;g++)(e=c[g])&&Ext.Element.prototype[a].apply(this.getElement(e),b);return this},item:function(a){a=this.elements[a];var b=null;a&&(b=this.getElement(a));return b},addListener:function(a,b,c,d){var e=this.elements,g=e.length,h,j;for(h=0;h<g;h++)if(j=e[h])Ext.EventManager.on(j,a,b,c||j,d);return this},each:function(a,b){var c=this.elements,d=c.length,e,g;for(e=0;e<d;e++)if(g=c[e])if(g=this.getElement(g),!1===a.call(b||g,g,this,e))break;return this},fill:function(a){this.elements= +[];this.add(a);return this},filter:function(a){var b=[],c=this,d=Ext.isFunction(a)?a:function(b){return b.is(a)};c.each(function(a,g,h){!1!==d(a,h)&&(b[b.length]=c.transformElement(a))});c.elements=b;return c},indexOf:function(a){return this.elements.indexOf(this.transformElement(a))},replaceElement:function(a,b,c){a=!isNaN(a)?a:this.indexOf(a);-1<a&&(b=Ext.getDom(b),c&&(c=this.elements[a],c.parentNode.insertBefore(b,c),Ext.removeNode(c)),this.elements.splice(a,1,b));return this},clear:function(){this.elements= +[]}};Ext.CompositeElementLite.prototype.on=Ext.CompositeElementLite.prototype.addListener;Ext.CompositeElementLite.importElementMethods=function(){var a,b=Ext.Element.prototype,c=Ext.CompositeElementLite.prototype;for(a in b)"function"==typeof b[a]&&function(a){c[a]=c[a]||function(){return this.invoke(a,arguments)}}.call(c,a)};Ext.CompositeElementLite.importElementMethods();Ext.DomQuery&&(Ext.Element.selectorFunction=Ext.DomQuery.select); +Ext.Element.select=function(a,b){var c;if("string"==typeof a)c=Ext.Element.selectorFunction(a,b);else if(void 0!==a.length)c=a;else throw"Invalid selector";return new Ext.CompositeElementLite(c)};Ext.select=Ext.Element.select; +(function(){var a="requestcomplete",b="load",c=window;Ext.data.Connection=function(b){Ext.apply(this,b);this.addEvents("beforerequest",a,"requestexception");Ext.data.Connection.superclass.constructor.call(this)};Ext.extend(Ext.data.Connection,Ext.util.Observable,{timeout:3E4,autoAbort:!1,disableCaching:!0,disableCachingParam:"_dc",request:function(a){if(this.fireEvent("beforerequest",this,a)){a.el&&(Ext.isEmpty(a.indicatorText)||(this.indicatorText='<div class="loading-indicator">'+a.indicatorText+ +"</div>"),this.indicatorText&&(Ext.getDom(a.el).innerHTML=this.indicatorText),a.success=(Ext.isFunction(a.success)?a.success:function(){}).createInterceptor(function(b){Ext.getDom(a.el).innerHTML=b.responseText}));var b=a.params,g=a.url||this.url,h,j={success:this.handleResponse,failure:this.handleFailure,scope:this,argument:{options:a},timeout:Ext.num(a.timeout,this.timeout)};Ext.isFunction(b)&&(b=b.call(a.scope||c,a));b=Ext.urlEncode(this.extraParams,Ext.isObject(b)?Ext.urlEncode(b):b);Ext.isFunction(g)&& +(g=g.call(a.scope||c,a));if(h=Ext.getDom(a.form)){g=g||h.action;if(a.isUpload||/multipart\/form-data/i.test(h.getAttribute("enctype")))return this.doFormUpload.call(this,a,b,g);h=Ext.lib.Ajax.serializeForm(h);b=b?b+"&"+h:h}h=a.method||this.method||(b||a.xmlData||a.jsonData?"POST":"GET");if("GET"===h&&this.disableCaching&&!1!==a.disableCaching||!0===a.disableCaching)g=Ext.urlAppend(g,(a.disableCachingParam||this.disableCachingParam)+"="+(new Date).getTime());a.headers=Ext.apply(a.headers||{},this.defaultHeaders|| +{});(!0===a.autoAbort||this.autoAbort)&&this.abort();if(("GET"==h||a.xmlData||a.jsonData)&&b)g=Ext.urlAppend(g,b),b="";return this.transId=Ext.lib.Ajax.request(h,g,j,b,a)}return a.callback?a.callback.apply(a.scope,[a,void 0,void 0]):null},isLoading:function(a){return a?Ext.lib.Ajax.isCallInProgress(a):!!this.transId},abort:function(a){if(a||this.isLoading())Ext.lib.Ajax.abort(a||this.transId)},handleResponse:function(b){this.transId=!1;var c=b.argument.options;b.argument=c?c.argument:null;this.fireEvent(a, +this,b,c);c.success&&c.success.call(c.scope,b,c);c.callback&&c.callback.call(c.scope,c,!0,b)},handleFailure:function(a,b){this.transId=!1;var c=a.argument.options;a.argument=c?c.argument:null;this.fireEvent("requestexception",this,a,c,b);c.failure&&c.failure.call(c.scope,a,c);c.callback&&c.callback.call(c.scope,c,!1,a)},doFormUpload:function(d,e,g){function h(){var e={responseText:"",responseXML:null,argument:d.argument},g,k;try{if(g=l.contentWindow.document||l.contentDocument||c.frames[j].document)g.body&& +(e.responseText=/textarea/i.test((k=g.body.firstChild||{}).tagName)?k.value:g.body.innerHTML),e.responseXML=g.XMLDocument||g}catch(m){}Ext.EventManager.removeListener(l,b,h,this);this.fireEvent(a,this,e,d);g=d.success;k=d.scope;var q=[e,d];Ext.isFunction(g)&&g.apply(k,q);g=d.callback;k=d.scope;e=[d,!0,e];Ext.isFunction(g)&&g.apply(k,e);this.debugUploads||setTimeout(function(){Ext.removeNode(l)},100)}var j=Ext.id(),k=document,l=k.createElement("iframe"),m=Ext.getDom(d.form),q=[],r,n={target:m.target, +method:m.method,encoding:m.encoding,enctype:m.enctype,action:m.action};Ext.fly(l).set({id:j,name:j,cls:"x-hidden",src:Ext.SSL_SECURE_URL});k.body.appendChild(l);Ext.isIE&&(document.frames[j].name=j);Ext.fly(m).set({target:j,method:"POST",enctype:"multipart/form-data",encoding:"multipart/form-data",action:g||n.action});Ext.iterate(Ext.urlDecode(e,!1),function(a,b){r=k.createElement("input");Ext.fly(r).set({type:"hidden",value:b,name:a});m.appendChild(r);q.push(r)});Ext.EventManager.on(l,b,h,this); +m.submit();Ext.fly(m).set(n);Ext.each(q,function(a){Ext.removeNode(a)})}})})();Ext.Ajax=new Ext.data.Connection({autoAbort:!1,serializeForm:function(a){return Ext.lib.Ajax.serializeForm(a)}}); +Ext.util.JSON=new function(){var a=!!{}.hasOwnProperty,b,c=null;b=function(){null===c&&(c=Ext.USE_NATIVE_JSON&&window.JSON&&"[object JSON]"==JSON.toString());return c};var d=function(a){return 10>a?"0"+a:a},e=function(a){return eval("("+a+")")},g=function(b){if(!Ext.isDefined(b)||null===b)return"null";if(Ext.isArray(b)){var c=["["],d,e,j=b.length,k;for(e=0;e<j;e+=1)switch(k=b[e],typeof k){case "undefined":case "function":case "unknown":break;default:d&&c.push(","),c.push(null===k?"null":Ext.util.JSON.encode(k)), +d=!0}c.push("]");return c.join("")}if(Ext.isDate(b))return Ext.util.JSON.encodeDate(b);if(Ext.isString(b))return b=/["\\\x00-\x1f]/.test(b)?'"'+b.replace(/([\x00-\x1f\\"])/g,function(a,b){var c=h[b];if(c)return c;c=b.charCodeAt();return"\\u00"+Math.floor(c/16).toString(16)+(c%16).toString(16)})+'"':'"'+b+'"',b;if("number"==typeof b)return isFinite(b)?String(b):"null";if(Ext.isBoolean(b))return String(b);d=["{"];for(e in b)if(!b.getElementsByTagName&&(!a||b.hasOwnProperty(e)))switch(j=b[e],typeof j){case "undefined":case "function":case "unknown":break; +default:c&&d.push(","),d.push(g(e),":",null===j?"null":g(j)),c=!0}d.push("}");return d.join("")},h={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};this.encodeDate=function(a){return'"'+a.getFullYear()+"-"+d(a.getMonth()+1)+"-"+d(a.getDate())+"T"+d(a.getHours())+":"+d(a.getMinutes())+":"+d(a.getSeconds())+'"'};var j;this.encode=function(a){j||(j=b()?JSON.stringify:g);return j(a)};var k;this.decode=function(a){k||(k=b()?JSON.parse:e);return k(a)}};Ext.encode=Ext.util.JSON.encode; +Ext.decode=Ext.util.JSON.decode; +Ext.EventManager=function(){function a(a){var b=!1,c=0,d=p.length,e=!1,g;if(a){if(a.getElementById||a.navigator){for(;c<d;++c)if(g=p[c],g.el===a){b=g.id;break}b||(b=Ext.id(a),p.push({id:b,el:a}),e=!0)}else b=Ext.id(a);Ext.elCache[b]||(Ext.Element.addToCache(new Ext.Element(a),b),e&&(Ext.elCache[b].skipGC=!0))}return b}function b(){if(window!=top)return!1;try{r.documentElement.doScroll("left")}catch(a){return!1}g();return!0}function c(a){if(Ext.isIE&&b())return!0;if(r.readyState==x)return g(),!0;l|| +(k=setTimeout(arguments.callee,2));return!1}function d(a){y||(y=Ext.query("style, link[rel=stylesheet]"));if(y.length==r.styleSheets.length)return g(),!0;l||(k=setTimeout(arguments.callee,2));return!1}function e(a){r.removeEventListener(s,arguments.callee,!1);d()}function g(a){l||(l=!0,k&&clearTimeout(k),m&&r.removeEventListener(s,g,!1),Ext.isIE&&c.bindIE&&r.detachEvent("onreadystatechange",c),q.un(n,"load",arguments.callee));j&&!Ext.isReady&&(Ext.isReady=!0,j.fire(),j.listeners=[])}function h(b, +c,d,e,g){function h(a){if(Ext){a=Ext.EventObject.setEvent(a);var b;if(j.delegate){if(!(b=a.getTarget(j.delegate,k)))return}else b=a.target;j.stopEvent&&a.stopEvent();j.preventDefault&&a.preventDefault();j.stopPropagation&&a.stopPropagation();!1===j.normalized&&(a=a.browserEvent);e.call(g||k,a,b,j)}}var j=!d||"boolean"==typeof d?{}:d,k=Ext.getDom(b),l;e=e||j.fn;g=g||j.scope;if(!k)throw'Error listening for "'+c+'". Element "'+b+"\" doesn't exist.";if(j.target)var m=h,p=j,h=function(){var a=Ext.toArray(arguments); +p.target==Ext.EventObject.setEvent(a[0]).target&&m.apply(this,a)};if(j.delay)var s=h,t=j,y=e,h=function(a){var b=new Ext.util.DelayedTask(s);y.tasks||(y.tasks=[]);y.tasks.push(b);b.delay(t.delay||10,s,null,[new Ext.EventObjectImpl(a)])};if(j.single)var u=h,x=k,T=e,U=g,h=function(a){Ext.EventManager.removeListener(x,c,T,U);u(a)};if(j.buffer){l=new Ext.util.DelayedTask(h);var F=h,L=j,M=l,h=function(a){M.delay(L.buffer,F,null,[new Ext.EventObjectImpl(a)])}}var D=k;b=e;d=h;var O=g,D=Ext.getDom(D),E=a(D), +E=Ext.elCache[E].events,N;N=q.on(D,c,d);E[c]=E[c]||[];E[c].push([b,d,O,N,l]);if(D.addEventListener&&"mousewheel"==c){var K=["DOMMouseScroll",d,!1];D.addEventListener.apply(D,K);Ext.EventManager.addListener(n,"unload",function(){D.removeEventListener.apply(D,K)})}D==r&&"mousedown"==c&&Ext.EventManager.stoppedMouseDownEvent.addListener(d);return h}var j,k,l=!1,m=Ext.isGecko||Ext.isWebKit||Ext.isSafari,q=Ext.lib.Event,r=document,n=window,s="DOMContentLoaded",x="complete",u=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/, +p=[],y,t={addListener:function(a,b,c,d,e){if("object"==typeof b)for(var g in b)c=b[g],u.test(g)||(Ext.isFunction(c)?h(a,g,b,c,b.scope):h(a,g,c));else h(a,b,e,c,d)},removeListener:function(b,c,d,e){b=Ext.getDom(b);var g=a(b),h=b&&Ext.elCache[g].events[c]||[],j,k,l;j=0;for(k=h.length;j<k;j++)if(Ext.isArray(l=h[j])&&l[0]==d&&(!e||l[2]==e)){l[4]&&l[4].cancel();if(e=d.tasks&&d.tasks.length){for(;e--;)d.tasks[e].cancel();delete d.tasks}d=l[1];q.un(b,c,q.extAdapter?l[3]:d);d&&(b.addEventListener&&"mousewheel"== +c)&&b.removeEventListener("DOMMouseScroll",d,!1);d&&(b==r&&"mousedown"==c)&&Ext.EventManager.stoppedMouseDownEvent.removeListener(d);h.splice(j,1);0===h.length&&delete Ext.elCache[g].events[c];for(e in Ext.elCache[g].events)return!1;Ext.elCache[g].events={};return!1}},removeAll:function(b){b=Ext.getDom(b);var c=a(b),d=(Ext.elCache[c]||{}).events||{},e,g,h,j,k,l,m;for(j in d)if(d.hasOwnProperty(j)){e=d[j];g=0;for(h=e.length;g<h;g++){k=e[g];k[4]&&k[4].cancel();if(k[0].tasks&&(l=k[0].tasks.length)){for(;l--;)k[0].tasks[l].cancel(); +delete k.tasks}m=k[1];q.un(b,j,q.extAdapter?k[3]:m);b.addEventListener&&(m&&"mousewheel"==j)&&b.removeEventListener("DOMMouseScroll",m,!1);m&&(b==r&&"mousedown"==j)&&Ext.EventManager.stoppedMouseDownEvent.removeListener(m)}}Ext.elCache[c]&&(Ext.elCache[c].events={})},getListeners:function(b,c){b=Ext.getDom(b);var d=a(b);return(d=(Ext.elCache[d]||{}).events||{})&&d[c]?d[c]:null},purgeElement:function(b,c,d){b=Ext.getDom(b);var e=a(b),e=(Ext.elCache[e]||{}).events||{},g,h;if(d){if(e&&e.hasOwnProperty(d)){g= +e[d];e=0;for(h=g.length;e<h;e++)Ext.EventManager.removeListener(b,d,g[e][0])}}else Ext.EventManager.removeAll(b);if(c&&b&&b.childNodes){e=0;for(h=b.childNodes.length;e<h;e++)Ext.EventManager.purgeElement(b.childNodes[e],c,d)}},_unload:function(){for(var a in Ext.elCache)Ext.EventManager.removeAll(a);delete Ext.elCache;delete Ext.Element._flyweights;var b,c,d=Ext.lib.Ajax;"object"==typeof d.conn?b=d.conn:b={};for(c in b)(a=b[c])&&d.abort({conn:a,tId:c})},onDocumentReady:function(a,b,h){Ext.isReady? +(j||(j=new Ext.util.Event),j.addListener(a,b,h),j.fire(),j.listeners=[]):(j||(j||(j=new Ext.util.Event),m&&r.addEventListener(s,g,!1),Ext.isIE?c()||(c.bindIE=!0,r.attachEvent("onreadystatechange",c)):Ext.isOpera?r.readyState==x&&d()||r.addEventListener(s,e,!1):Ext.isWebKit&&c(),q.on(n,"load",g)),h=h||{},h.delay=h.delay||1,j.addListener(a,b,h))},fireDocReady:g};t.on=t.addListener;t.un=t.removeListener;t.stoppedMouseDownEvent=new Ext.util.Event;return t}();Ext.onReady=Ext.EventManager.onDocumentReady; +(function(){var a=function(){var a=document.body||document.getElementsByTagName("body")[0];if(!a)return!1;var c=[" ",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?c.push("ext-safari "+(Ext.isSafari2?"ext-safari2":Ext.isSafari3?"ext-safari3":"ext-safari4")):Ext.isChrome&&c.push("ext-chrome");Ext.isMac&&c.push("ext-mac");Ext.isLinux&&c.push("ext-linux"); +if(Ext.isStrict||Ext.isBorderBox){var d=a.parentNode;d&&Ext.fly(d,"_internal").addClass(Ext.isStrict&&Ext.isIE||!Ext.enableForcedBoxModel&&!Ext.isIE?" ext-strict":" ext-border-box")}Ext.enableForcedBoxModel&&!Ext.isIE&&(Ext.isForcedBorderBox=!0,c.push("ext-forced-border-box"));Ext.fly(a,"_internal").addClass(c);return!0};if(!a())Ext.onReady(a)})(); +(function(){var a=Ext.apply(Ext.supports,{correctRightMargin:!0,correctTransparentColor:!0,cssFloat:!0}),b=function(){var b=document.createElement("div"),d=document,e,g;b.innerHTML='<div style="height:30px;width:50px;"><div style="height:20px;width:20px;"></div></div><div style="float:left;background-color:transparent;">';d.body.appendChild(b);g=b.lastChild;if(e=d.defaultView)"0px"!=e.getComputedStyle(b.firstChild.firstChild,null).marginRight&&(a.correctRightMargin=!1),"transparent"!=e.getComputedStyle(g, +null).backgroundColor&&(a.correctTransparentColor=!1);a.cssFloat=!!g.style.cssFloat;d.body.removeChild(b)};if(Ext.isReady)b();else Ext.onReady(b)})(); +Ext.EventObject=function(){var a=Ext.lib.Event,b=/(dbl)?click/,c={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}:{"0":0,1:1,2:2};Ext.EventObjectImpl=function(a){a&&this.setEvent(a.browserEvent||a)};Ext.EventObjectImpl.prototype={setEvent:function(c){if(c==this||c&&c.browserEvent)return c;(this.browserEvent=c)?(this.button=c.button?d[c.button]:c.which?c.which-1:-1,b.test(c.type)&&-1==this.button&&(this.button=0),this.type=c.type,this.shiftKey= +c.shiftKey,this.ctrlKey=c.ctrlKey||c.metaKey||!1,this.altKey=c.altKey,this.keyCode=c.keyCode,this.charCode=c.charCode,this.target=a.getTarget(c),this.xy=a.getXY(c)):(this.button=-1,this.altKey=this.ctrlKey=this.shiftKey=!1,this.charCode=this.keyCode=0,this.target=null,this.xy=[0,0]);return this},stopEvent:function(){this.browserEvent&&("mousedown"==this.browserEvent.type&&Ext.EventManager.stoppedMouseDownEvent.fire(this),a.stopEvent(this.browserEvent))},preventDefault:function(){this.browserEvent&& +a.preventDefault(this.browserEvent)},stopPropagation:function(){this.browserEvent&&("mousedown"==this.browserEvent.type&&Ext.EventManager.stoppedMouseDownEvent.fire(this),a.stopPropagation(this.browserEvent))},getCharCode:function(){return this.charCode||this.keyCode},getKey:function(){return this.normalizeKey(this.keyCode||this.charCode)},normalizeKey:function(a){return Ext.isSafari?c[a]||a:a},getPageX:function(){return this.xy[0]},getPageY:function(){return this.xy[1]},getXY:function(){return this.xy}, +getTarget:function(a,b,c){return a?Ext.fly(this.target).findParent(a,b,c):c?Ext.get(this.target):this.target},getRelatedTarget:function(){return this.browserEvent?a.getRelatedTarget(this.browserEvent):null},getWheelDelta:function(){var a=this.browserEvent,b=0;a.wheelDelta?b=a.wheelDelta/120:a.detail&&(b=-a.detail/3);return b},within:function(a,b,c){return a?(b=this[b?"getRelatedTarget":"getTarget"]())&&((c?b==Ext.getDom(a):!1)||Ext.fly(a).contains(b)):!1}};return new Ext.EventObjectImpl}(); +Ext.Loader=Ext.apply({},{load:function(a,b,c,d){c=c||this;var e=document.getElementsByTagName("head")[0],g=document.createDocumentFragment(),h=a.length,j=0,k=this,l=function(){j++;h==j&&"function"==typeof b?b.call(c):!0===d&&e.appendChild(k.buildScriptTag(a[j],l))};!0===d?e.appendChild(k.buildScriptTag(a[0],l)):(Ext.each(a,function(a){g.appendChild(this.buildScriptTag(a,l))},this),e.appendChild(g))},buildScriptTag:function(a,b){var c=document.createElement("script");c.type="text/javascript";c.src= +a;c.readyState?c.onreadystatechange=function(){if("loaded"==c.readyState||"complete"==c.readyState)c.onreadystatechange=null,b()}:c.onload=b;return c}});Ext.ns("Ext.grid","Ext.list","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 a=Ext,b=null;return{emptyFn:function(){},BLANK_IMAGE_URL:Ext.isIE6||Ext.isIE7||Ext.isAir?"http://www.extjs.com/s.gif":"data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==",extendX:function(a,b){return Ext.extend(a,b(a.prototype))},getDoc:function(){return Ext.get(document)},num:function(a,b){a=Number(Ext.isEmpty(a)||Ext.isArray(a)||"boolean"==typeof a||"string"==typeof a&&0==a.trim().length?NaN:a);return isNaN(a)?b:a},value:function(a,b, +e){return Ext.isEmpty(a,e)?b:a},escapeRe:function(a){return a.replace(/([-.*+?^${}()|[\]\/\\])/g,"\\$1")},sequence:function(a,b,e,g){a[b]=a[b].createSequence(e,g)},addBehaviors:function(a){if(Ext.isReady){var b={},e,g,h;for(g in a)if((e=g.split("@"))[1])h=e[0],b[h]||(b[h]=Ext.select(h)),b[h].on(e[1],a[g]);b=null}else Ext.onReady(function(){Ext.addBehaviors(a)})},getScrollBarWidth:function(a){if(!Ext.isReady)return 0;if(!0===a||null===b){a=Ext.getBody().createChild('<div class="x-hide-offsets" style="width:100px;height:50px;overflow:hidden;"><div style="height:200px;"></div></div>'); +var d=a.child("div",!0),e=d.offsetWidth;a.setStyle("overflow",Ext.isWebKit||Ext.isGecko?"auto":"scroll");d=d.offsetWidth;a.remove();b=e-d+2}return b},combine:function(){for(var a=arguments,b=a.length,e=[],g=0;g<b;g++){var h=a[g];Ext.isArray(h)?e=e.concat(h):void 0!==h.length&&!h.substr?e=e.concat(Array.prototype.slice.call(h,0)):e.push(h)}return e},copyTo:function(a,b,e){"string"==typeof e&&(e=e.split(/[,;\s]/));Ext.each(e,function(e){b.hasOwnProperty(e)&&(a[e]=b[e])},this);return a},destroy:function(){Ext.each(arguments, +function(a){a&&(Ext.isArray(a)?this.destroy.apply(this,a):"function"==typeof a.destroy?a.destroy():a.dom&&a.remove())},this)},destroyMembers:function(a,b,e,g){for(var h=1,j=arguments,k=j.length;h<k;h++)Ext.destroy(a[j[h]]),delete a[j[h]]},clean:function(a){var b=[];Ext.each(a,function(a){a&&b.push(a)});return b},unique:function(a){var b=[],e={};Ext.each(a,function(a){e[a]||b.push(a);e[a]=!0});return b},flatten:function(a){function b(a){Ext.each(a,function(a){Ext.isArray(a)?b(a):e.push(a)});return e} +var e=[];return b(a)},min:function(a,b){var e=a[0];b=b||function(a,b){return a<b?-1:1};Ext.each(a,function(a){e=-1==b(e,a)?e:a});return e},max:function(a,b){var e=a[0];b=b||function(a,b){return a>b?1:-1};Ext.each(a,function(a){e=1==b(e,a)?e:a});return e},mean:function(a){return 0<a.length?Ext.sum(a)/a.length:void 0},sum:function(a){var b=0;Ext.each(a,function(a){b+=a});return b},partition:function(a,b){var e=[[],[]];Ext.each(a,function(a,c,j){e[b&&b(a,c,j)||!b&&a?0:1].push(a)});return e},invoke:function(a, +b){var e=[],g=Array.prototype.slice.call(arguments,2);Ext.each(a,function(a){a&&"function"==typeof a[b]?e.push(a[b].apply(a,g)):e.push(void 0)});return e},pluck:function(a,b){var e=[];Ext.each(a,function(a){e.push(a[b])});return e},zip:function(){for(var a=Ext.partition(arguments,function(a){return"function"!=typeof a}),b=a[0],a=a[1][0],e=Ext.max(Ext.pluck(b,"length")),g=[],h=0;h<e;h++)if(g[h]=[],a)g[h]=a.apply(a,Ext.pluck(b,h));else for(var j=0,k=b.length;j<k;j++)g[h].push(b[j][h]);return g},getCmp:function(a){return Ext.ComponentMgr.get(a)}, +useShims:a.isIE6||a.isMac&&a.isGecko2,type:function(a){if(void 0===a||null===a)return!1;if(a.htmlElement)return"element";var b=typeof a;if("object"==b&&a.nodeName)switch(a.nodeType){case 1:return"element";case 3:return/\S/.test(a.nodeValue)?"textnode":"whitespace"}if("object"==b||"function"==b){switch(a.constructor){case Array:return"array";case RegExp:return"regexp";case Date:return"date"}if("number"==typeof a.length&&"function"==typeof a.item)return"nodelist"}return b},intercept:function(a,b,e, +g){a[b]=a[b].createInterceptor(e,g)},callback:function(a,b,e,g){"function"==typeof a&&(g?a.defer(g,b,e||[]):a.apply(b,e||[]))}}}());Ext.apply(Function.prototype,{createSequence:function(a,b){var c=this;return"function"!=typeof a?this:function(){var d=c.apply(this||window,arguments);a.apply(b||this||window,arguments);return d}}});Ext.applyIf(String,{escape:function(a){return a.replace(/('|\\)/g,"\\$1")},leftPad:function(a,b,c){a=String(a);for(c||(c=" ");a.length<b;)a=c+a;return a}}); +String.prototype.toggle=function(a,b){return this==a?b:a};String.prototype.trim=function(){var a=/^\s+|\s+$/g;return function(){return this.replace(a,"")}}();Date.prototype.getElapsed=function(a){return Math.abs((a||new Date).getTime()-this.getTime())};Ext.applyIf(Number.prototype,{constrain:function(a,b){return Math.min(Math.max(this,a),b)}});Ext.lib.Dom.getRegion=function(a){return Ext.lib.Region.getRegion(a)}; +Ext.lib.Region=function(a,b,c,d){this.top=a;this[1]=a;this.right=b;this.bottom=c;this.left=d;this[0]=d}; +Ext.lib.Region.prototype={contains:function(a){return a.left>=this.left&&a.right<=this.right&&a.top>=this.top&&a.bottom<=this.bottom},getArea:function(){return(this.bottom-this.top)*(this.right-this.left)},intersect:function(a){var b=Math.max(this.top,a.top),c=Math.min(this.right,a.right),d=Math.min(this.bottom,a.bottom);a=Math.max(this.left,a.left);if(d>=b&&c>=a)return new Ext.lib.Region(b,c,d,a)},union:function(a){var b=Math.min(this.top,a.top),c=Math.max(this.right,a.right),d=Math.max(this.bottom, +a.bottom);a=Math.min(this.left,a.left);return new Ext.lib.Region(b,c,d,a)},constrainTo:function(a){this.top=this.top.constrain(a.top,a.bottom);this.bottom=this.bottom.constrain(a.top,a.bottom);this.left=this.left.constrain(a.left,a.right);this.right=this.right.constrain(a.left,a.right);return this},adjust:function(a,b,c,d){this.top+=a;this.left+=b;this.right+=d;this.bottom+=c;return this}}; +Ext.lib.Region.getRegion=function(a){var b=Ext.lib.Dom.getXY(a);return new Ext.lib.Region(b[1],b[0]+a.offsetWidth,b[1]+a.offsetHeight,b[0])};Ext.lib.Point=function(a,b){Ext.isArray(a)&&(b=a[1],a=a[0]);this.x=this.right=this.left=this[0]=a;this.y=this.top=this.bottom=this[1]=b};Ext.lib.Point.prototype=new Ext.lib.Region; +Ext.apply(Ext.DomHelper,function(){function a(a,d,h,j,k,l){a=Ext.getDom(a);c.useDom?(d=b(d,null),l?a.appendChild(d):("firstChild"==k?a:a.parentNode).insertBefore(d,a[k]||a)):d=Ext.DomHelper.insertHtml(j,a,Ext.DomHelper.createHtml(d));return h?Ext.get(d,!0):d}function b(a,c){var h;h=document;var j,k,l;if(Ext.isArray(a)){h=h.createDocumentFragment();k=0;for(j=a.length;k<j;k++)b(a[k],h)}else if("string"==typeof a)h=h.createTextNode(a);else{h=h.createElement(a.tag||"div");j=!!h.setAttribute;for(k in a)d.test(k)|| +(l=a[k],"cls"==k?h.className=l:j?h.setAttribute(k,l):h[k]=l);Ext.DomHelper.applyStyles(h,a.style);(k=a.children||a.cn)?b(k,h):a.html&&(h.innerHTML=a.html)}c&&c.appendChild(h);return h}var c,d=/tag|children|cn|html$/i;return c={createTemplate:function(a){a=Ext.DomHelper.createHtml(a);return new Ext.Template(a)},useDom:!1,insertBefore:function(b,c,d){return a(b,c,d,"beforebegin")},insertAfter:function(b,c,d){return a(b,c,d,"afterend","nextSibling")},insertFirst:function(b,c,d){return a(b,c,d,"afterbegin", +"firstChild")},append:function(b,c,d){return a(b,c,d,"beforeend","",!0)},createDom:b}}()); +Ext.apply(Ext.Template.prototype,{disableFormats:!1,re:/\{([\w-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g,argsRe:/^\s*['"](.*)["']\s*$/,compileARe:/\\/g,compileBRe:/(\r\n|\n)/g,compileCRe:/'/g,applyTemplate:function(a){var b=this,c=!0!==b.disableFormats,d=Ext.util.Format;return b.compiled?b.compiled(a):b.html.replace(b.re,function(e,g,h,j){if(h&&c){if("this."==h.substr(0,5))return b.call(h.substr(5),a[g],a);if(j){e=b.argsRe;j=j.split(",");for(var k=0,l=j.length;k<l;k++)j[k]=j[k].replace(e,"$1");j=[a[g]].concat(j)}else j= +[a[g]];return d[h].apply(d,j)}return void 0!==a[g]?a[g]:""})},compile:function(){function a(a,d,h,j){h&&b?(j=j?","+j:"","this."!=h.substr(0,5)?h="fm."+h+"(":(h='this.call("'+h.substr(5)+'", ',j=", values")):(j="",h="(values['"+d+"'] == undefined ? '' : ");return"'"+c+h+"values['"+d+"']"+j+")"+c+"'"}var b=!0!==this.disableFormats,c=Ext.isGecko?"+":",",d;Ext.isGecko?d="this.compiled = function(values){ return '"+this.html.replace(this.compileARe,"\\\\").replace(this.compileBRe,"\\n").replace(this.compileCRe, +"\\'").replace(this.re,a)+"';};":(d=["this.compiled = function(values){ return ['"],d.push(this.html.replace(this.compileARe,"\\\\").replace(this.compileBRe,"\\n").replace(this.compileCRe,"\\'").replace(this.re,a)),d.push("'].join('');};"),d=d.join(""));eval(d);return this},call:function(a,b,c){return this[a](b,c)}});Ext.Template.prototype.apply=Ext.Template.prototype.applyTemplate; +Ext.util.Functions={createInterceptor:function(a,b,c){return Ext.isFunction(b)?function(){var d=arguments;b.target=this;b.method=a;return!1!==b.apply(c||this||window,d)?a.apply(this||window,d):null}:a},createDelegate:function(a,b,c,d){return!Ext.isFunction(a)?a:function(){var e=c||arguments;if(!0===d)e=Array.prototype.slice.call(arguments,0),e=e.concat(c);else if(Ext.isNumber(d)){var e=Array.prototype.slice.call(arguments,0),g=[d,0].concat(c);Array.prototype.splice.apply(e,g)}return a.apply(b||window, +e)}},defer:function(a,b,c,d,e){a=Ext.util.Functions.createDelegate(a,c,d,e);if(0<b)return setTimeout(a,b);a();return 0},createSequence:function(a,b,c){return Ext.isFunction(b)?function(){var d=a.apply(this||window,arguments);b.apply(c||this||window,arguments);return d}:a}};Ext.defer=Ext.util.Functions.defer;Ext.createInterceptor=Ext.util.Functions.createInterceptor;Ext.createSequence=Ext.util.Functions.createSequence;Ext.createDelegate=Ext.util.Functions.createDelegate; +Ext.apply(Ext.util.Observable.prototype,function(){function a(a){var c=(this.methodEvents=this.methodEvents||{})[a],d,e,g,h=this;if(!c){this.methodEvents[a]=c={};c.originalFn=this[a];c.methodName=a;c.before=[];c.after=[];var j=function(a,b,c){if(void 0!==(e=a.apply(b||h,c)))"object"==typeof e?(d=void 0!==e.returnValue?e.returnValue:e,g=!!e.cancel):!1===e?g=!0:d=e};this[a]=function(){var a=Array.prototype.slice.call(arguments,0),b;d=e=void 0;g=!1;for(var m=0,q=c.before.length;m<q;m++)if(b=c.before[m], +j(b.fn,b.scope,a),g)return d;if(void 0!==(e=c.originalFn.apply(h,a)))d=e;m=0;for(q=c.after.length;m<q&&!(b=c.after[m],j(b.fn,b.scope,a),g);m++);return d}}return c}return{beforeMethod:function(b,c,d){a.call(this,b).before.push({fn:c,scope:d})},afterMethod:function(b,c,d){a.call(this,b).after.push({fn:c,scope:d})},removeMethodListener:function(a,c,d){a=this.getMethodEvent(a);for(var e=0,g=a.before.length;e<g;e++)if(a.before[e].fn==c&&a.before[e].scope==d){a.before.splice(e,1);return}e=0;for(g=a.after.length;e< +g;e++)if(a.after[e].fn==c&&a.after[e].scope==d){a.after.splice(e,1);break}},relayEvents:function(a,c){function d(a){return function(){return e.fireEvent.apply(e,[a].concat(Array.prototype.slice.call(arguments,0)))}}for(var e=this,g=0,h=c.length;g<h;g++){var j=c[g];e.events[j]=e.events[j]||!0;a.on(j,d(j),e)}},enableBubble:function(a){if(!Ext.isEmpty(a)){a=Ext.isArray(a)?a:Array.prototype.slice.call(arguments,0);for(var c=0,d=a.length;c<d;c++){var e=a[c],e=e.toLowerCase(),g=this.events[e]||!0;"boolean"== +typeof g&&(g=new Ext.util.Event(this,e),this.events[e]=g);g.bubble=!0}}}}}());Ext.util.Observable.capture=function(a,b,c){a.fireEvent=a.fireEvent.createInterceptor(b,c)};Ext.util.Observable.observeClass=function(a,b){if(a){a.fireEvent||(Ext.apply(a,new Ext.util.Observable),Ext.util.Observable.capture(a.prototype,a.fireEvent,a));if("object"==typeof b)a.on(b);return a}}; +Ext.apply(Ext.EventManager,function(){var a,b,c,d,e=Ext.lib.Dom,g=0,h=0,j=Ext.isWebKit?525<=Ext.num(navigator.userAgent.match(/AppleWebKit\/(\d+)/)[1]):!(Ext.isGecko&&!Ext.isWindows||Ext.isOpera);return{doResizeEvent:function(){var b=e.getViewHeight(),c=e.getViewWidth();if(h!=b||g!=c)a.fire(g=c,h=b)},onWindowResize:function(c,d,e){a||(a=new Ext.util.Event,b=new Ext.util.DelayedTask(this.doResizeEvent),Ext.EventManager.on(window,"resize",this.fireWindowResize,this));a.addListener(c,d,e)},fireWindowResize:function(){a&& +b.delay(100)},onTextResize:function(a,b,e){if(!c){c=new Ext.util.Event;var g=new Ext.Element(document.createElement("div"));g.dom.className="x-text-resize";g.dom.innerHTML="X";g.appendTo(document.body);d=g.dom.offsetHeight;setInterval(function(){g.dom.offsetHeight!=d&&c.fire(d,d=g.dom.offsetHeight)},this.textResizeInterval)}c.addListener(a,b,e)},removeResizeListener:function(b,c){a&&a.removeListener(b,c)},fireResize:function(){a&&a.fire(e.getViewWidth(),e.getViewHeight())},textResizeInterval:50,ieDeferSrc:!1, +getKeyEvent:function(){return j?"keydown":"keypress"},useKeydown:j}}());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 a=this.normalizeKey(this.keyCode);return 33<=a&&40>=a||a==this.RETURN||a==this.TAB||a==this.ESC},isSpecialKey:function(){var a=this.normalizeKey(this.keyCode);return"keypress"== +this.type&&this.ctrlKey||this.isNavKeyPress()||a==this.BACKSPACE||16<=a&&20>=a||44<=a&&46>=a},getPoint:function(){return new Ext.lib.Point(this.xy[0],this.xy[1])},hasModifier:function(){return this.ctrlKey||this.altKey||this.shiftKey}}); +Ext.Element.addMethods({swallowEvent:function(a,b){function c(a){a.stopPropagation();b&&a.preventDefault()}var d=this;if(Ext.isArray(a))return Ext.each(a,function(a){d.on(a,c)}),d;d.on(a,c);return d},relayEvent:function(a,b){this.on(a,function(c){b.fireEvent(a,c)})},clean:function(a){var b=this.dom,c=b.firstChild,d=-1;if(Ext.Element.data(b,"isCleaned")&&!0!==a)return this;for(;c;)a=c.nextSibling,3==c.nodeType&&!/\S/.test(c.nodeValue)?b.removeChild(c):c.nodeIndex=++d,c=a;Ext.Element.data(b,"isCleaned", +!0);return this},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(a,b,c){if(!this.dom)return this;a=a||"";if(!0!==b)return this.dom.innerHTML=a,"function"==typeof c&&c(),this;var d=Ext.id();b=this.dom;a+='<span id="'+d+'"></span>';Ext.lib.Event.onAvailable(d,function(){for(var b=document,g=b.getElementsByTagName("head")[0],h=/(?:<script([^>]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig, +j=/\ssrc=([\'\"])(.*?)\1/i,k=/\stype=([\'\"])(.*?)\1/i,l,m,q;l=h.exec(a);)if((q=(m=l[1])?m.match(j):!1)&&q[2]){l=b.createElement("script");l.src=q[2];if((m=m.match(k))&&m[2])l.type=m[2];g.appendChild(l)}else l[2]&&0<l[2].length&&(window.execScript?window.execScript(l[2]):window.eval(l[2]));(b=b.getElementById(d))&&Ext.removeNode(b);"function"==typeof c&&c()});b.innerHTML=a.replace(/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,"");return this},removeAllListeners:function(){this.removeAnchor();Ext.EventManager.removeAll(this.dom); +return this},createProxy:function(a,b,c){a="object"==typeof a?a:{tag:"div",cls:a};a=b?Ext.DomHelper.append(b,a,!0):Ext.DomHelper.insertBefore(this.dom,a,!0);c&&(this.setBox&&this.getBox)&&a.setBox(this.getBox());return a}});Ext.Element.prototype.getUpdateManager=Ext.Element.prototype.getUpdater; +Ext.Element.addMethods({getAnchorXY:function(a,b,c){a=(a||"tl").toLowerCase();c=c||{};var d=this.dom==document.body||this.dom==document,e=c.width||d?Ext.lib.Dom.getViewWidth():this.getWidth(),g=c.height||d?Ext.lib.Dom.getViewHeight():this.getHeight(),h=Math.round,j=this.getXY(),k=this.getScroll();c=d?k.left:!b?j[0]:0;b=d?k.top:!b?j[1]:0;a={c:[h(0.5*e),h(0.5*g)],t:[h(0.5*e),0],l:[0,h(0.5*g)],r:[e,h(0.5*g)],b:[h(0.5*e),g],tl:[0,0],bl:[0,g],br:[e,g],tr:[e,0]}[a];return[a[0]+c,a[1]+b]},anchorTo:function(a, +b,c,d,e,g){var h=this.dom,j=!Ext.isEmpty(e),k=function(){Ext.fly(h).alignTo(a,b,c,d);Ext.callback(g,Ext.fly(h))},l=this.getAnchor();this.removeAnchor();Ext.apply(l,{fn:k,scroll:j});Ext.EventManager.onWindowResize(k,null);if(j)Ext.EventManager.on(window,"scroll",k,null,{buffer:!isNaN(e)?e:50});k.call(this);return this},removeAnchor:function(){var a=this.getAnchor();a&&a.fn&&(Ext.EventManager.removeResizeListener(a.fn),a.scroll&&Ext.EventManager.un(window,"scroll",a.fn),delete a.fn);return this},getAnchor:function(){var a= +Ext.Element.data,b=this.dom;if(b){var c=a(b,"_anchor");c||(c=a(b,"_anchor",{}));return c}},getAlignToXY:function(a,b,c){a=Ext.get(a);if(!a||!a.dom)throw"Element.alignToXY with an element that doesn't exist";c=c||[0,0];b=(!b||"?"==b?"tl-bl?":!/-/.test(b)&&""!==b?"tl-"+b:b||"tl-bl").toLowerCase();var d,e,g,h=Ext.lib.Dom.getViewWidth()-10,j=Ext.lib.Dom.getViewHeight()-10,k,l,m,q=document,r=q.documentElement;m=q.body;q=(r.scrollLeft||m.scrollLeft||0)+5;r=(r.scrollTop||m.scrollTop||0)+5;g=!1;m=k="";g= +b.match(/^([a-z]+)-([a-z]+)(\?)?$/);if(!g)throw"Element.alignTo with an invalid alignment "+b;k=g[1];m=g[2];g=!!g[3];d=this.getAnchorXY(k,!0);e=a.getAnchorXY(m,!1);b=e[0]-d[0]+c[0];c=e[1]-d[1]+c[1];g&&(g=this.getWidth(),d=this.getHeight(),a=a.getRegion(),e=k.charAt(0),k=k.charAt(k.length-1),l=m.charAt(0),m=m.charAt(m.length-1),e="t"==e&&"b"==l||"b"==e&&"t"==l,m="r"==k&&"l"==m||"l"==k&&"r"==m,b+g>h+q&&(b=m?a.left-g:h+q-g),b<q&&(b=m?a.right:q),c+d>j+r&&(c=e?a.top-d:j+r-d),c<r&&(c=e?a.bottom:r));return[b, +c]},alignTo:function(a,b,c,d){return this.setXY(this.getAlignToXY(a,b,c),this.preanim&&d?this.preanim(arguments,3):!1)},adjustForConstraints:function(a,b,c){return this.getConstrainToXY(b||document,!1,c,a)||a},getConstrainToXY:function(){var a={top:0,left:0,bottom:0,right:0};return function(b,c,d,e){b=Ext.get(b);d=d?Ext.applyIf(d,a):a;var g,h,j=0,k=0;b.dom==document.body||b.dom==document?(g=Ext.lib.Dom.getViewWidth(),h=Ext.lib.Dom.getViewHeight()):(g=b.dom.clientWidth,h=b.dom.clientHeight,c||(k=b.getXY(), +j=k[0],k=k[1]));b=b.getScroll();j+=d.left+b.left;k+=d.top+b.top;g-=d.right;h-=d.bottom;d=j+g;h=k+h;e=e||(!c?this.getXY():[this.getLeft(!0),this.getTop(!0)]);c=e[0];e=e[1];b=this.getConstrainOffset();g=this.dom.offsetWidth+b;b=this.dom.offsetHeight+b;var l=!1;c+g>d&&(c=d-g,l=!0);e+b>h&&(e=h-b,l=!0);c<j&&(c=j,l=!0);e<k&&(e=k,l=!0);return l?[c,e]:!1}}(),getConstrainOffset:function(){return 0},getCenterXY:function(){return this.getAlignToXY(document,"c-c")},center:function(a){return this.alignTo(a||document, +"c-c")}});Ext.Element.addMethods({select:function(a,b){return Ext.Element.select(a,b,this.dom)}}); +Ext.apply(Ext.Element.prototype,function(){var a=Ext.getDom,b=Ext.get,c=Ext.DomHelper;return{insertSibling:function(d,e,g){var h,j="after"==(e||"before").toLowerCase(),k;if(Ext.isArray(d))return k=this,Ext.each(d,function(a){h=Ext.fly(k,"_internal").insertSibling(a,e,g);j&&(k=h)}),h;d=d||{};d.nodeType||d.dom?(h=this.dom.parentNode.insertBefore(a(d),j?this.dom.nextSibling:this.dom),g||(h=b(h))):h=j&&!this.dom.nextSibling?c.append(this.dom.parentNode,d,!g):c[j?"insertAfter":"insertBefore"](this.dom, +d,!g);return h}}}());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(){return{applyStyles:function(a){Ext.DomHelper.applyStyles(this.dom,a);return this},getStyles:function(){var a={};Ext.each(arguments,function(b){a[b]=this.getStyle(b)},this);return a},setOverflow:function(a){var b=this.dom;"auto"==a&&Ext.isMac&&Ext.isGecko2?(b.style.overflow="hidden",function(){b.style.overflow="auto"}.defer(1)):b.style.overflow=a},boxWrap:function(a){a=a||"x-box";var b=Ext.get(this.insertHtml("beforeBegin","<div class='"+a+"'>"+String.format(Ext.Element.boxMarkup, +a)+"</div>"));Ext.DomQuery.selectNode("."+a+"-mc",b.dom).appendChild(this.dom);return b},setSize:function(a,b,c){"object"==typeof a&&(b=a.height,a=a.width);a=this.adjustWidth(a);b=this.adjustHeight(b);!c||!this.anim?(this.dom.style.width=this.addUnits(a),this.dom.style.height=this.addUnits(b)):this.anim({width:{to:a},height:{to:b}},this.preanim(arguments,2));return this},getComputedHeight:function(){var a=Math.max(this.dom.offsetHeight,this.dom.clientHeight);a||(a=parseFloat(this.getStyle("height"))|| +0,this.isBorderBox()||(a+=this.getFrameWidth("tb")));return a},getComputedWidth:function(){var a=Math.max(this.dom.offsetWidth,this.dom.clientWidth);a||(a=parseFloat(this.getStyle("width"))||0,this.isBorderBox()||(a+=this.getFrameWidth("lr")));return a},getFrameWidth:function(a,b){return b&&this.isBorderBox()?0:this.getPadding(a)+this.getBorderWidth(a)},addClassOnOver:function(a){this.hover(function(){Ext.fly(this,"_internal").addClass(a)},function(){Ext.fly(this,"_internal").removeClass(a)});return this}, +addClassOnFocus:function(a){this.on("focus",function(){Ext.fly(this,"_internal").addClass(a)},this.dom);this.on("blur",function(){Ext.fly(this,"_internal").removeClass(a)},this.dom);return this},addClassOnClick:function(a){var b=this.dom;this.on("mousedown",function(){Ext.fly(b,"_internal").addClass(a);var c=Ext.getDoc(),d=function(){Ext.fly(b,"_internal").removeClass(a);c.removeListener("mouseup",d)};c.on("mouseup",d)});return this},getViewSize:function(){var a=document,b=this.dom;return b==a||b== +a.body?(a=Ext.lib.Dom,{width:a.getViewWidth(),height:a.getViewHeight()}):{width:b.clientWidth,height:b.clientHeight}},getStyleSize:function(){var a,b,c=document,d=this.dom,e=d.style;if(d==c||d==c.body)return a=Ext.lib.Dom,{width:a.getViewWidth(),height:a.getViewHeight()};e.width&&"auto"!=e.width&&(a=parseFloat(e.width),this.isBorderBox()&&(a-=this.getFrameWidth("lr")));e.height&&"auto"!=e.height&&(b=parseFloat(e.height),this.isBorderBox()&&(b-=this.getFrameWidth("tb")));return{width:a||this.getWidth(!0), +height:b||this.getHeight(!0)}},getSize:function(a){return{width:this.getWidth(a),height:this.getHeight(a)}},repaint:function(){var a=this.dom;this.addClass("x-repaint");setTimeout(function(){Ext.fly(a).removeClass("x-repaint")},1);return this},unselectable:function(){this.dom.unselectable="on";return this.swallowEvent("selectstart",!0).applyStyles("-moz-user-select:none;-khtml-user-select:none;").addClass("x-unselectable")},getMargins:function(a){var b,c={t:"top",l:"left",r:"right",b:"bottom"},d= +{};if(a)return this.addStyles.call(this,a,this.margins);for(b in this.margins)d[c[b]]=parseFloat(this.getStyle(this.margins[b]))||0;return d}}}()); +Ext.Element.addMethods({setBox:function(a,b,c){var d=a.width,e=a.height;b&&!this.autoBoxAdjust&&!this.isBorderBox()&&(d-=this.getBorderWidth("lr")+this.getPadding("lr"),e-=this.getBorderWidth("tb")+this.getPadding("tb"));this.setBounds(a.x,a.y,d,e,this.animTest.call(this,arguments,c,2));return this},getBox:function(a,b){var c,d,e=this.getBorderWidth,g=this.getPadding,h,j,k;b?(c=parseInt(this.getStyle("left"),10)||0,d=parseInt(this.getStyle("top"),10)||0,c=[c,d]):c=this.getXY();h=this.dom;d=h.offsetWidth; +var l=h.offsetHeight;a?(h=e.call(this,"l")+g.call(this,"l"),j=e.call(this,"r")+g.call(this,"r"),k=e.call(this,"t")+g.call(this,"t"),e=e.call(this,"b")+g.call(this,"b"),e={x:c[0]+h,y:c[1]+k,"0":c[0]+h,1:c[1]+k,width:d-(h+j),height:l-(k+e)}):e={x:c[0],y:c[1],"0":c[0],1:c[1],width:d,height:l};e.right=e.x+e.width;e.bottom=e.y+e.height;return e},move:function(a,b,c){var d=this.getXY(),e=d[0],g=d[1],d=[e-b,g],h=[e+b,g],j=[e,g-b],e=[e,g+b],e={l:d,left:d,r:h,right:h,t:j,top:j,up:j,b:e,bottom:e,down:e};a= +a.toLowerCase();this.moveTo(e[a][0],e[a][1],this.animTest.call(this,arguments,c,2))},setLeftTop:function(a,b){var c=this.dom.style;c.left=this.addUnits(a);c.top=this.addUnits(b);return this},getRegion:function(){return Ext.lib.Dom.getRegion(this.dom)},setBounds:function(a,b,c,d,e){!e||!this.anim?(this.setSize(c,d),this.setLocation(a,b)):this.anim({points:{to:[a,b]},width:{to:this.adjustWidth(c)},height:{to:this.adjustHeight(d)}},this.preanim(arguments,4),"motion");return this},setRegion:function(a, +b){return this.setBounds(a.left,a.top,a.right-a.left,a.bottom-a.top,this.animTest.call(this,arguments,b,1))}}); +Ext.Element.addMethods({scrollTo:function(a,b,c){var d=/top/i.test(a),e=this.dom,g;!c||!this.anim?e["scroll"+(d?"Top":"Left")]=b:(g="scroll"+(d?"Left":"Top"),this.anim({scroll:{to:d?[e[g],b]:[b,e[g]]}},this.preanim(arguments,2),"scroll"));return this},scrollIntoView:function(a,b){var c=Ext.getDom(a)||Ext.getBody().dom,d=this.dom,e=this.getOffsetsTo(c),g=e[0]+c.scrollLeft,e=e[1]+c.scrollTop,h=e+d.offsetHeight,j=g+d.offsetWidth,k=c.clientHeight,l=parseInt(c.scrollTop,10),m=parseInt(c.scrollLeft,10), +q=m+c.clientWidth;d.offsetHeight>k||e<l?c.scrollTop=e:h>l+k&&(c.scrollTop=h-k);c.scrollTop=c.scrollTop;!1!==b&&(d.offsetWidth>c.clientWidth||g<m?c.scrollLeft=g:j>q&&(c.scrollLeft=j-c.clientWidth),c.scrollLeft=c.scrollLeft);return this},scrollChildIntoView:function(a,b){Ext.fly(a,"_scrollChildIntoView").scrollIntoView(this,b)},scroll:function(a,b,c){if(!this.isScrollable())return!1;var d=this.dom,e=d.scrollLeft,g=d.scrollTop,h=d.scrollHeight,j=d.clientHeight,k=!1,d={l:Math.min(e+b,d.scrollWidth-d.clientWidth), +r:Math.max(e-b,0),t:Math.max(g-b,0),b:Math.min(g+b,h-j)};d.d=d.b;d.u=d.t;a=a.substr(0,1);if(-1<(d=d[a]))k=!0,this.scrollTo("l"==a||"r"==a?"left":"top",d,this.preanim(arguments,2));return k}}); +Ext.Element.addMethods(function(){var a=Ext.Element.data;return{isVisible:function(a){var c=!this.isStyle("visibility","hidden")&&!this.isStyle("display","none"),d=this.dom.parentNode;if(!0!==a||!c)return c;for(;d&&!/^body/i.test(d.tagName);){if(!Ext.fly(d,"_isVisible").isVisible())return!1;d=d.parentNode}return!0},isDisplayed:function(){return!this.isStyle("display","none")},enableDisplayMode:function(b){this.setVisibilityMode(Ext.Element.DISPLAY);Ext.isEmpty(b)||a(this.dom,"originalDisplay",b); +return this},mask:function(b,c){var d=this.dom,e=Ext.DomHelper,g;/^body/i.test(d.tagName)&&"static"==this.getStyle("position")||this.addClass("x-masked-relative");(g=a(d,"maskMsg"))&&g.remove();(g=a(d,"mask"))&&g.remove();g=e.append(d,{cls:"ext-el-mask"},!0);a(d,"mask",g);this.addClass("x-masked");g.setDisplayed(!0);"string"==typeof b&&(e=e.append(d,{cls:"ext-el-mask-msg",cn:{tag:"div"}},!0),a(d,"maskMsg",e),e.dom.className=c?"ext-el-mask-msg "+c:"ext-el-mask-msg",e.dom.firstChild.innerHTML=b,e.setDisplayed(!0), +e.center(this));Ext.isIE&&((!Ext.isIE7||!Ext.isStrict)&&"auto"==this.getStyle("height"))&&g.setSize(void 0,this.getHeight());return g},unmask:function(){var b=this.dom,c=a(b,"mask"),d=a(b,"maskMsg");c&&(d&&(d.remove(),a(b,"maskMsg",void 0)),c.remove(),a(b,"mask",void 0),this.removeClass(["x-masked","x-masked-relative"]))},isMasked:function(){var b=a(this.dom,"mask");return b&&b.isVisible()},createShim:function(){var a=document.createElement("iframe");a.frameBorder="0";a.className="ext-shim";a.src= +Ext.SSL_SECURE_URL;a=Ext.get(this.dom.parentNode.insertBefore(a,this.dom));a.autoBoxAdjust=!1;return a}}}());Ext.Element.addMethods({addKeyListener:function(a,b,c){a="object"!=typeof a||Ext.isArray(a)?{key:a,fn:b,scope:c}:{key:a.key,shift:a.shift,ctrl:a.ctrl,alt:a.alt,fn:b,scope:c};return new Ext.KeyMap(this,a)},addKeyMap:function(a){return new Ext.KeyMap(this,a)}});Ext.CompositeElementLite.importElementMethods(); +Ext.apply(Ext.CompositeElementLite.prototype,{addElements:function(a,b){if(!a)return this;"string"==typeof a&&(a=Ext.Element.selectorFunction(a,b));var c=this.elements;Ext.each(a,function(a){c.push(Ext.get(a))});return this},first:function(){return this.item(0)},last:function(){return this.item(this.getCount()-1)},contains:function(a){return-1!=this.indexOf(a)},removeElement:function(a,b){var c=this,d=this.elements,e;Ext.each(a,function(a){if(e=d[a]||d[a=c.indexOf(a)])b&&(e.dom?e.remove():Ext.removeNode(e)), +d.splice(a,1)});return this}});Ext.CompositeElement=Ext.extend(Ext.CompositeElementLite,{constructor:function(a,b){this.elements=[];this.add(a,b)},getElement:function(a){return a},transformElement:function(a){return Ext.get(a)}});Ext.Element.select=function(a,b,c){if("string"==typeof a)a=Ext.Element.selectorFunction(a,c);else if(void 0===a.length)throw"Invalid selector";return!0===b?new Ext.CompositeElement(a):new Ext.CompositeElementLite(a)};Ext.select=Ext.Element.select; +Ext.UpdateManager=Ext.Updater=Ext.extend(Ext.util.Observable,function(){function a(a){this.transaction=null;if(a.argument.form&&a.argument.reset)try{a.argument.form.reset()}catch(c){}this.loadScripts?this.renderer.render(this.el,a,this,b.createDelegate(this,[a])):(this.renderer.render(this.el,a,this),b.call(this,a))}function b(a,b,c){this.fireEvent(b||d,this.el,a);Ext.isFunction(a.argument.callback)&&a.argument.callback.call(a.argument.scope,this.el,Ext.isEmpty(c)?!0:!1,a,a.argument.options)}function c(a){b.call(this, +a,e,!!(this.transaction=null))}var d="update",e="failure";return{constructor:function(a,b){a=Ext.get(a);if(!b&&a.updateManager)return a.updateManager;this.el=a;this.defaultUrl=null;this.addEvents("beforeupdate",d,e);Ext.apply(this,Ext.Updater.defaults);this.transaction=null;this.refreshDelegate=this.refresh.createDelegate(this);this.updateDelegate=this.update.createDelegate(this);this.formUpdateDelegate=(this.formUpdate||function(){}).createDelegate(this);this.renderer=this.renderer||this.getDefaultRenderer(); +Ext.Updater.superclass.constructor.call(this)},setRenderer:function(a){this.renderer=a},getRenderer:function(){return this.renderer},getDefaultRenderer:function(){return new Ext.Updater.BasicRenderer},setDefaultUrl:function(a){this.defaultUrl=a},getEl:function(){return this.el},update:function(b,d,e,k){var l,m;!1!==this.fireEvent("beforeupdate",this.el,b,d)&&(Ext.isObject(b)&&(l=b,b=l.url,d=d||l.params,e=e||l.callback,k=k||l.discardUrl,m=l.scope,Ext.isEmpty(l.nocache)||(this.disableCaching=l.nocache), +Ext.isEmpty(l.text)||(this.indicatorText='<div class="loading-indicator">'+l.text+"</div>"),Ext.isEmpty(l.scripts)||(this.loadScripts=l.scripts),Ext.isEmpty(l.timeout)||(this.timeout=l.timeout)),this.showLoading(),k||(this.defaultUrl=b),Ext.isFunction(b)&&(b=b.call(this)),b=Ext.apply({},{url:b,params:Ext.isFunction(d)&&m?d.createDelegate(m):d,success:a,failure:c,scope:this,callback:void 0,timeout:1E3*this.timeout,disableCaching:this.disableCaching,argument:{options:l,url:b,form:null,callback:e,scope:m|| +window,params:d}},l),this.transaction=Ext.Ajax.request(b))},formUpdate:function(b,d,e,k){!1!==this.fireEvent("beforeupdate",this.el,b,d)&&(Ext.isFunction(d)&&(d=d.call(this)),b=Ext.getDom(b),this.transaction=Ext.Ajax.request({form:b,url:d,success:a,failure:c,scope:this,timeout:1E3*this.timeout,argument:{url:d,form:b,callback:k,reset:e}}),this.showLoading.defer(1,this))},startAutoRefresh:function(a,b,c,d,e){e&&this.update(b||this.defaultUrl,c,d,!0);this.autoRefreshProcId&&clearInterval(this.autoRefreshProcId); +this.autoRefreshProcId=setInterval(this.update.createDelegate(this,[b||this.defaultUrl,c,d,!0]),1E3*a)},stopAutoRefresh:function(){this.autoRefreshProcId&&(clearInterval(this.autoRefreshProcId),delete this.autoRefreshProcId)},isAutoRefreshing:function(){return!!this.autoRefreshProcId},showLoading:function(){this.showLoadIndicator&&(this.el.dom.innerHTML=this.indicatorText)},abort:function(){this.transaction&&Ext.Ajax.abort(this.transaction)},isUpdating:function(){return this.transaction?Ext.Ajax.isLoading(this.transaction): +!1},refresh:function(a){this.defaultUrl&&this.update(this.defaultUrl,null,a,!0)}}}());Ext.Updater.defaults={timeout:30,disableCaching:!1,showLoadIndicator:!0,indicatorText:'<div class="loading-indicator">Loading...</div>',loadScripts:!1,sslBlankUrl:Ext.SSL_SECURE_URL};Ext.Updater.updateElement=function(a,b,c,d){a=Ext.get(a).getUpdater();Ext.apply(a,d);a.update(b,c,d?d.callback:null)};Ext.Updater.BasicRenderer=function(){}; +Ext.Updater.BasicRenderer.prototype={render:function(a,b,c,d){a.update(b.responseText,c.loadScripts,d)}}; +(function(){function a(a){var b=Array.prototype.slice.call(arguments,1);return a.replace(/\{(\d+)\}/g,function(a,c){return b[c]})}Date.useStrict=!1;Date.formatCodeToRegex=function(b,d){var e=Date.parseCodes[b];e&&(e="function"==typeof e?e():e,Date.parseCodes[b]=e);return e?Ext.applyIf({c:e.c?a(e.c,d||"{0}"):e.c},e):{g:0,c:null,s:Ext.escapeRe(b)}};var b=Date.formatCodeToRegex;Ext.apply(Date,{parseFunctions:{M$:function(a){return(a=(a||"").match(/\/Date\(([-+])?(\d+)(?:[+-]\d{4})?\)\//))?new Date(1* +((a[1]||"")+a[2])):null}},parseRegexes:[],formatFunctions:{M$:function(){return"\\/Date("+this.getTime()+")\\/"}},y2kYear:50,MILLI:"ms",SECOND:"s",MINUTE:"mi",HOUR:"h",DAY:"d",MONTH:"mo",YEAR:"y",defaults:{},dayNames:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),monthNames:"January February March April May June July August September October November December".split(" "),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(a){return Date.monthNames[a].substring(0, +3)},getShortDayName:function(a){return Date.dayNames[a].substring(0,3)},getMonthNumber:function(a){return Date.monthNumbers[a.substring(0,1).toUpperCase()+a.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:"String.leftPad(this.getFullYear(), 4, '0')",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 a=[],b=0;12>b;++b){var e="Y-m-dTH:i:sP".charAt(b);a.push("T"==e?"'T'":Date.getFormatCode(e))}return a.join(" + ")}, +U:"Math.round(this.getTime() / 1000)"},isValid:function(a,b,e,g,h,j,k){g=g||0;h=h||0;j=j||0;k=k||0;var l=(new Date(100>a?100:a,b-1,e,g,h,j,k)).add(Date.YEAR,100>a?a-100:0);return a==l.getFullYear()&&b==l.getMonth()+1&&e==l.getDate()&&g==l.getHours()&&h==l.getMinutes()&&j==l.getSeconds()&&k==l.getMilliseconds()},parseDate:function(a,b,e){var g=Date.parseFunctions;null==g[b]&&Date.createParser(b);return g[b](a,Ext.isDefined(e)?e:Date.useStrict)},getFormatCode:function(a){var b=Date.formatCodes[a];b&& +(b="function"==typeof b?b():b,Date.formatCodes[a]=b);return b||"'"+String.escape(a)+"'"},createFormat:function(a){for(var b=[],e=!1,g="",h=0;h<a.length;++h)g=a.charAt(h),!e&&"\\"==g?e=!0:e?(e=!1,b.push("'"+String.escape(g)+"'")):b.push(Date.getFormatCode(g));Date.formatFunctions[a]=new Function("return "+b.join("+"))},createParser:function(c){for(var d=Date.parseRegexes.length,e=1,g=[],h=[],j=!1,k="",l=0,m;l<c.length;++l)k=c.charAt(l),!j&&"\\"==k?j=!0:j?(j=!1,h.push(String.escape(k))):(k=b(k,e),e+= +k.g,h.push(k.s),k.g&&k.c&&(k.calcLast?m=k.c:g.push(k.c)));m&&g.push(m);Date.parseRegexes[d]=RegExp("^"+h.join("")+"$","i");Date.parseFunctions[c]=new Function("input","strict",a("var dt, y, m, d, h, i, s, ms, o, z, zz, u, v,\ndef = Date.defaults,\nresults = String(input).match(Date.parseRegexes[{0}]);\nif(results){\n{1}\nif(u != null){\nv = new Date(u * 1000);\n}else{\ndt = (new Date()).clearTime();\ny = Ext.num(y, Ext.num(def.y, dt.getFullYear()));\nm = Ext.num(m, Ext.num(def.m - 1, dt.getMonth()));\nd = Ext.num(d, Ext.num(def.d, dt.getDate()));\nh = Ext.num(h, Ext.num(def.h, dt.getHours()));\ni = Ext.num(i, Ext.num(def.i, dt.getMinutes()));\ns = Ext.num(s, Ext.num(def.s, dt.getSeconds()));\nms = Ext.num(ms, Ext.num(def.ms, dt.getMilliseconds()));\nif(z >= 0 && y >= 0){\nv = new Date(y < 100 ? 100 : y, 0, 1, h, i, s, ms).add(Date.YEAR, y < 100 ? y - 100 : 0);\nv = !strict? v : (strict === true && (z <= 364 || (v.isLeapYear() && z <= 365))? v.add(Date.DAY, z) : null);\n}else if(strict === true && !Date.isValid(y, m + 1, d, h, i, s, ms)){\nv = null;\n}else{\nv = new Date(y < 100 ? 100 : y, m, d, h, i, s, ms).add(Date.YEAR, y < 100 ? y - 100 : 0);\n}\n}\n}\nif(v){\nif(zz != null){\nv = v.add(Date.SECOND, -v.getTimezoneOffset() * 60 - zz);\n}else if(o){\nv = v.add(Date.MINUTE, -v.getTimezoneOffset() + (sn == '+'? -1 : 1) * (hr * 60 + mn));\n}\n}\nreturn v;", +d,g.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 a=[],b=0;7>b;a.push(Date.getShortDayName(b)),++b);return{g:0,c:null,s:"(?:"+a.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 a=[],d=0;12>d;a.push(Date.getShortMonthName(d)),++d);return Ext.applyIf({s:"("+a.join("|")+")"},b("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 b("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:function(){return b("A")},A:{calcLast:!0,g:1,c:"if (/(am)/i.test(results[{0}])) {\nif (!h || h == 12) { h = 0; }\n} else { if (!h || h < 12) { h = (h || 0) + 12; }}",s:"(AM|PM|am|pm)"},g:function(){return b("G")},G:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(\\d{1,2})"},h:function(){return b("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}];\nvar sn = o.substring(0,1),\nhr = o.substring(1,3)*1 + Math.floor(o.substring(3,5) / 60),\nmn = o.substring(3,5) % 60;\no = ((-12 <= (hr*60 + mn)/60) && ((hr*60 + mn)/60 <= 14))? (sn + String.leftPad(hr, 2, '0') + String.leftPad(mn, 2, '0')) : null;\n",s:"([+-]\\d{4})"},P:{g:1,c:"o = results[{0}];\nvar sn = o.substring(0,1),\nhr = o.substring(1,3)*1 + Math.floor(o.substring(4,6) / 60),\nmn = o.substring(4,6) % 60;\no = ((-12 <= (hr*60 + mn)/60) && ((hr*60 + mn)/60 <= 14))? (sn + String.leftPad(hr, 2, '0') + String.leftPad(mn, 2, '0')) : null;\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(){for(var a=[],d=[b("Y",1),b("m",2),b("d",3),b("h",4),b("i",5),b("s",6),{c:"ms = results[7] || '0'; ms = parseInt(ms, 10)/Math.pow(10, ms.length - 3);\n"},{c:["if(results[8]) {\nif(results[8] == 'Z'){\nzz = 0;\n}else if (results[8].indexOf(':') > -1){",b("P",8).c,"}else{",b("O",8).c,"}\n}"].join("\n")}],e=0,g=d.length;e<g;++e)a.push(d[e].c); +return{g:1,c:a.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){null==Date.formatFunctions[a]&&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(0<this.getTimezoneOffset()?"-":"+")+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,b=this.clone(),c=this.getMonth(),d;d=0;b.setDate(1);for(b.setMonth(0);d<c;b.setMonth(++d))a+=b.getDaysInMonth();return a+this.getDate()-1},getWeekOfYear:function(){return function(){var a=Date.UTC(this.getFullYear(),this.getMonth(),this.getDate()+3)/864E5,a=Math.floor(a/7),b=(new Date(6048E5*a)).getUTCFullYear();return a-Math.floor(Date.UTC(b,0,7)/6048E5)+1}}(),isLeapYear:function(){var a=this.getFullYear();return!!(0==(a&3)&&(a%100||0==a%400&&a))},getFirstDayOfMonth:function(){var a= +(this.getDay()-(this.getDate()-1))%7;return 0>a?a+7:a},getLastDayOfMonth:function(){return this.getLastDateOfMonth().getDay()},getFirstDateOfMonth:function(){return new Date(this.getFullYear(),this.getMonth(),1)},getLastDateOfMonth:function(){return new Date(this.getFullYear(),this.getMonth(),this.getDaysInMonth())},getDaysInMonth:function(){var a=[31,28,31,30,31,30,31,31,30,31,30,31];return function(){var b=this.getMonth();return 1==b&&this.isLeapYear()?29:a[b]}}(),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(a){if(a)return this.clone().clearTime();a=this.getDate();this.setHours(0);this.setMinutes(0);this.setSeconds(0);this.setMilliseconds(0);if(this.getDate()!=a){for(var b=1,c=this.add(Date.HOUR,b);c.getDate()!=a;b++,c=this.add(Date.HOUR,b));this.setDate(a); +this.setHours(c.getHours())}return this},add:function(a,b){var c=this.clone();if(!a||0===b)return c;switch(a.toLowerCase()){case Date.MILLI:c.setMilliseconds(this.getMilliseconds()+b);break;case Date.SECOND:c.setSeconds(this.getSeconds()+b);break;case Date.MINUTE:c.setMinutes(this.getMinutes()+b);break;case Date.HOUR:c.setHours(this.getHours()+b);break;case Date.DAY:c.setDate(this.getDate()+b);break;case Date.MONTH:var d=this.getDate();28<d&&(d=Math.min(d,this.getFirstDateOfMonth().add("mo",b).getLastDateOfMonth().getDate())); +c.setDate(d);c.setMonth(this.getMonth()+b);break;case Date.YEAR:c.setFullYear(this.getFullYear()+b)}return c},between:function(a,b){var c=this.getTime();return a.getTime()<=c&&c<=b.getTime()}});Date.prototype.format=Date.prototype.dateFormat; +Ext.isSafari&&420>(navigator.userAgent.match(/WebKit\/(\d+)/)[1]||NaN)&&Ext.apply(Date.prototype,{_xMonth:Date.prototype.setMonth,_xDate:Date.prototype.setDate,setMonth:function(a){if(-1>=a){var b=Math.ceil(-a);a=Math.ceil(b/12);b=b%12?12-b%12:0;this.setFullYear(this.getFullYear()-a);return this._xMonth(b)}return this._xMonth(a)},setDate:function(a){return this.setTime(this.getTime()-864E5*(this.getDate()-a))}}); +Ext.util.MixedCollection=function(a,b){this.items=[];this.map={};this.keys=[];this.length=0;this.addEvents("clear","add","replace","remove","sort");this.allowFunctions=!0===a;b&&(this.getKey=b);Ext.util.MixedCollection.superclass.constructor.call(this)}; +Ext.extend(Ext.util.MixedCollection,Ext.util.Observable,{allowFunctions:!1,add:function(a,b){1==arguments.length&&(b=arguments[0],a=this.getKey(b));if("undefined"!=typeof a&&null!==a){if("undefined"!=typeof this.map[a])return this.replace(a,b);this.map[a]=b}this.length++;this.items.push(b);this.keys.push(a);this.fireEvent("add",this.length-1,b,a);return b},getKey:function(a){return a.id},replace:function(a,b){1==arguments.length&&(b=arguments[0],a=this.getKey(b));var c=this.map[a];if("undefined"== +typeof a||null===a||"undefined"==typeof c)return this.add(a,b);var d=this.indexOfKey(a);this.items[d]=b;this.map[a]=b;this.fireEvent("replace",a,c,b);return b},addAll:function(a){if(1<arguments.length||Ext.isArray(a))for(var b=1<arguments.length?arguments:a,c=0,d=b.length;c<d;c++)this.add(b[c]);else for(b in a)(this.allowFunctions||"function"!=typeof a[b])&&this.add(b,a[b])},each:function(a,b){for(var c=[].concat(this.items),d=0,e=c.length;d<e&&!1!==a.call(b||c[d],c[d],d,e);d++);},eachKey:function(a, +b){for(var c=0,d=this.keys.length;c<d;c++)a.call(b||window,this.keys[c],this.items[c],c,d)},find:function(a,b){for(var c=0,d=this.items.length;c<d;c++)if(a.call(b||window,this.items[c],this.keys[c]))return this.items[c];return null},insert:function(a,b,c){2==arguments.length&&(c=arguments[1],b=this.getKey(c));this.containsKey(b)&&(this.suspendEvents(),this.removeKey(b),this.resumeEvents());if(a>=this.length)return this.add(b,c);this.length++;this.items.splice(a,0,c);"undefined"!=typeof b&&null!== +b&&(this.map[b]=c);this.keys.splice(a,0,b);this.fireEvent("add",a,c,b);return c},remove:function(a){return this.removeAt(this.indexOf(a))},removeAt:function(a){if(a<this.length&&0<=a){this.length--;var b=this.items[a];this.items.splice(a,1);var c=this.keys[a];"undefined"!=typeof c&&delete this.map[c];this.keys.splice(a,1);this.fireEvent("remove",b,c);return b}return!1},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=this.map[a];a=void 0!==b?b:"number"==typeof a?this.items[a]:void 0;return"function"!=typeof a||this.allowFunctions?a:null},itemAt:function(a){return this.items[a]},key:function(a){return this.map[a]},contains:function(a){return-1!=this.indexOf(a)},containsKey:function(a){return"undefined"!=typeof this.map[a]},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(a,b,c){var d,e="DESC"==String(b).toUpperCase()?-1:1,g=[],h=this.keys,j=this.items;c=c||function(a,b){return a-b};b=0;for(d=j.length;b<d;b++)g[g.length]={key:h[b],value:j[b],index:b};g.sort(function(b,d){var g=c(b[a],d[a])*e;0===g&&(g=b.index<d.index?-1:1);return g});b=0;for(d=g.length;b<d;b++)j[b]=g[b].value,h[b]=g[b].key;this.fireEvent("sort",this)},sort:function(a,b){this._sort("value",a,b)},reorder:function(a){this.suspendEvents(); +var b=this.items,c=0,d=b.length,e=[],g=[],h;for(h in a)e[a[h]]=b[h];for(c=0;c<d;c++)void 0==a[c]&&g.push(b[c]);for(c=0;c<d;c++)void 0==e[c]&&(e[c]=g.shift());this.clear();this.addAll(e);this.resumeEvents();this.fireEvent("sort",this)},keySort:function(a,b){this._sort("key",a,b||function(a,b){var e=String(a).toUpperCase(),g=String(b).toUpperCase();return e>g?1:e<g?-1:0})},getRange:function(a,b){var c=this.items;if(1>c.length)return[];a=a||0;b=Math.min("undefined"==typeof b?this.length-1:b,this.length- +1);var d,e=[];if(a<=b)for(d=a;d<=b;d++)e[e.length]=c[d];else for(d=a;d>=b;d--)e[e.length]=c[d];return e},filter:function(a,b,c,d){if(Ext.isEmpty(b,!1))return this.clone();b=this.createValueMatcher(b,c,d);return this.filterBy(function(c){return c&&b.test(c[a])})},filterBy:function(a,b){var c=new Ext.util.MixedCollection;c.getKey=this.getKey;for(var d=this.keys,e=this.items,g=0,h=e.length;g<h;g++)a.call(b||this,e[g],d[g])&&c.add(d[g],e[g]);return c},findIndex:function(a,b,c,d,e){if(Ext.isEmpty(b,!1))return-1; +b=this.createValueMatcher(b,d,e);return this.findIndexBy(function(c){return c&&b.test(c[a])},null,c)},findIndexBy:function(a,b,c){var d=this.keys,e=this.items;c=c||0;for(var g=e.length;c<g;c++)if(a.call(b||this,e[c],d[c]))return c;return-1},createValueMatcher:function(a,b,c,d){if(!a.exec){var e=Ext.escapeRe;a=String(a);!0===b?a=e(a):(a="^"+e(a),!0===d&&(a+="$"));a=RegExp(a,c?"":"i")}return a},clone:function(){for(var a=new Ext.util.MixedCollection,b=this.keys,c=this.items,d=0,e=c.length;d<e;d++)a.add(b[d], +c[d]);a.getKey=this.getKey;return a}});Ext.util.MixedCollection.prototype.get=Ext.util.MixedCollection.prototype.item; +Ext.AbstractManager=Ext.extend(Object,{typeName:"type",constructor:function(a){Ext.apply(this,a||{});this.all=new Ext.util.MixedCollection;this.types={}},get:function(a){return this.all.get(a)},register:function(a){this.all.add(a)},unregister:function(a){this.all.remove(a)},registerType:function(a,b){this.types[a]=b;b[this.typeName]=a},isRegistered:function(a){return void 0!==this.types[a]},create:function(a,b){var c=a[this.typeName]||a.type||b,d=this.types[c];if(void 0==d)throw Error(String.format("The '{0}' type has not been registered with this manager", +c));return new d(a)},onAvailable:function(a,b,c){var d=this.all;d.on("add",function(e,g){g.id==a&&(b.call(c||g,g),d.un("add",b,c))})}}); +Ext.util.Format=function(){var a=/^\s+|\s+$/g,b=/<\/?[^>]+>/gi,c=/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,d=/\r?\n/g,e={};return{ellipsis:function(a,b,c){if(a&&a.length>b){if(c){c=a.substr(0,b-2);var d=Math.max(c.lastIndexOf(" "),c.lastIndexOf("."),c.lastIndexOf("!"),c.lastIndexOf("?"));return-1==d||d<b-15?a.substr(0,b-3)+"...":c.substr(0,d)+"..."}return a.substr(0,b-3)+"..."}return a},undef:function(a){return void 0!==a?a:""},defaultValue:function(a,b){return void 0!==a&&""!==a?a:b},htmlEncode:function(a){return!a? +a:String(a).replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""")},htmlDecode:function(a){return!a?a:String(a).replace(/>/g,">").replace(/</g,"<").replace(/"/g,'"').replace(/&/g,"&")},trim:function(b){return String(b).replace(a,"")},substr:function(a,b,c){return String(a).substr(b,c)},lowercase:function(a){return String(a).toLowerCase()},uppercase:function(a){return String(a).toUpperCase()},capitalize:function(a){return!a?a:a.charAt(0).toUpperCase()+ +a.substr(1).toLowerCase()},call:function(a,b){if(2<arguments.length){var c=Array.prototype.slice.call(arguments,2);c.unshift(a);return eval(b).apply(window,c)}return eval(b).call(window,a)},usMoney:function(a){a=Math.round(100*(a-0))/100;a=a==Math.floor(a)?a+".00":10*a==Math.floor(10*a)?a+"0":a;a=String(a);var b=a.split(".");a=b[0];for(var b=b[1]?"."+b[1]:".00",c=/(\d+)(\d{3})/;c.test(a);)a=a.replace(c,"$1,$2");a+=b;return"-"==a.charAt(0)?"-$"+a.substr(1):"$"+a},date:function(a,b){if(!a)return""; +Ext.isDate(a)||(a=new Date(Date.parse(a)));return a.dateFormat(b||"m/d/Y")},dateRenderer:function(a){return function(b){return Ext.util.Format.date(b,a)}},stripTags:function(a){return!a?a:String(a).replace(b,"")},stripScripts:function(a){return!a?a:String(a).replace(c,"")},fileSize:function(a){return 1024>a?a+" bytes":1048576>a?Math.round(10*a/1024)/10+" KB":Math.round(10*a/1048576)/10+" MB"},math:function(a,b){e[b]||(e[b]=new Function("v","return v "+b+";"));return e[b](a)},round:function(a,b){var c= +Number(a);"number"==typeof b&&(b=Math.pow(10,b),c=Math.round(a*b)/b);return c},number:function(a,b){if(!b)return a;a=Ext.num(a,NaN);if(isNaN(a))return"";var c=",",d=".",e=!1,m=0>a;a=Math.abs(a);"/i"==b.substr(b.length-2)&&(b=b.substr(0,b.length-2),e=!0,c=".",d=",");var q=-1!=b.indexOf(c),e=(e?b.replace(/[^\d\,]/g,""):b.replace(/[^\d\.]/g,"")).split(d);if(1<e.length)a=a.toFixed(e[1].length);else{if(2<e.length)throw"NumberFormatException: invalid format, formats should have no more than 1 period: "+ +b;a=a.toFixed(0)}var r=a.toString(),e=r.split(".");if(q){var q=e[0],r=[],n=q.length,s=q.length%3||3,x;for(x=0;x<n;x+=s)0!=x&&(s=3),r[r.length]=q.substr(x,s);r=r.join(c);e[1]&&(r+=d+e[1])}else e[1]&&(r=e[0]+d+e[1]);return(m?"-":"")+b.replace(/[\d,?\.?]+/,r)},numberRenderer:function(a){return function(b){return Ext.util.Format.number(b,a)}},plural:function(a,b,c){return a+" "+(1==a?b:c?c:b+"s")},nl2br:function(a){return Ext.isEmpty(a)?"":a.replace(d,"<br/>")}}}(); +Ext.XTemplate=function(){Ext.XTemplate.superclass.constructor.apply(this,arguments);for(var a=this.html,b=/<tpl\b[^>]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>/,c=/^<tpl\b[^>]*?for="(.*?)"/,d=/^<tpl\b[^>]*?if="(.*?)"/,e=/^<tpl\b[^>]*?exec="(.*?)"/,g,h=0,j=[],a=["<tpl>",a,"</tpl>"].join("");g=a.match(b);){var k=g[0].match(c),l=g[0].match(d),m=g[0].match(e),q=null,r=null,n=null,k=k&&k[1]?k[1]:"";l&&(q=l&&l[1]?l[1]:null)&&(r=new Function("values","parent","xindex","xcount","with(values){ return "+ +Ext.util.Format.htmlDecode(q)+"; }"));m&&(q=m&&m[1]?m[1]:null)&&(n=new Function("values","parent","xindex","xcount","with(values){ "+Ext.util.Format.htmlDecode(q)+"; }"));if(k)switch(k){case ".":k=new Function("values","parent","with(values){ return values; }");break;case "..":k=new Function("values","parent","with(values){ return parent; }");break;default:k=new Function("values","parent","with(values){ return "+k+"; }")}j.push({id:h,target:k,exec:n,test:r,body:g[1]||""});a=a.replace(g[0],"{xtpl"+ +h+"}");++h}for(a=j.length-1;0<=a;--a)this.compileTpl(j[a]);this.master=j[j.length-1];this.tpls=j}; +Ext.extend(Ext.XTemplate,Ext.Template,{re:/\{([\w-\.\#]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?(\s?[\+\-\*\\]\s?[\d\.\+\-\*\\\(\)]+)?\}/g,codeRe:/\{\[((?:\\\]|.|\n)*?)\]\}/g,applySubTemplate:function(a,b,c,d,e){a=this.tpls[a];var g,h=[];if(a.test&&!a.test.call(this,b,c,d,e)||a.exec&&a.exec.call(this,b,c,d,e))return"";g=a.target?a.target.call(this,b,c):b;c=a.target?b:c;if(a.target&&Ext.isArray(g)){d=0;for(b=g.length;d<b;d++)h[h.length]=a.compiled.call(this,g[d],c,d+1,b);return h.join("")}return a.compiled.call(this, +g,c,d,e)},compileTpl:function(a){function b(a,b,c,g,m){if("xtpl"==b.substr(0,4))return"'"+e+"this.applySubTemplate("+b.substr(4)+", values, parent, xindex, xcount)"+e+"'";a="."===b?"values":"#"===b?"xindex":-1!=b.indexOf(".")?b:"values['"+b+"']";m&&(a="("+a+m+")");c&&d?(g=g?","+g:"","this."!=c.substr(0,5)?c="fm."+c+"(":(c='this.call("'+c.substr(5)+'", ',g=", values")):(g="",c="("+a+" === undefined ? '' : ");return"'"+e+c+a+g+")"+e+"'"}function c(a,b){return"'"+e+"("+b.replace(/\\'/g,"'")+")"+e+"'"} +var d=!0!==this.disableFormats,e=Ext.isGecko?"+":",",g;Ext.isGecko?g="tpl.compiled = function(values, parent, xindex, xcount){ return '"+a.body.replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,b).replace(this.codeRe,c)+"';};":(g=["tpl.compiled = function(values, parent, xindex, xcount){ return ['"],g.push(a.body.replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,b).replace(this.codeRe,c)),g.push("'].join('');};"),g=g.join(""));eval(g);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 a=null,b=document,c=/(-[a-z])/gi,d=function(a,b){return b.charAt(1).toUpperCase()};return{createStyleSheet:function(a,c){var d;d=b.getElementsByTagName("head")[0];var j=b.createElement("style");j.setAttribute("type","text/css");c&&j.setAttribute("id",c);if(Ext.isIE)d.appendChild(j),d=j.styleSheet,d.cssText=a;else{try{j.appendChild(b.createTextNode(a))}catch(k){j.cssText=a}d.appendChild(j);d=j.styleSheet?j.styleSheet:j.sheet||b.styleSheets[b.styleSheets.length-1]}this.cacheStyleSheet(d); +return d},removeStyleSheet:function(a){(a=b.getElementById(a))&&a.parentNode.removeChild(a)},swapStyleSheet:function(a,c){this.removeStyleSheet(a);var d=b.createElement("link");d.setAttribute("rel","stylesheet");d.setAttribute("type","text/css");d.setAttribute("id",a);d.setAttribute("href",c);b.getElementsByTagName("head")[0].appendChild(d)},refreshCache:function(){return this.getRules(!0)},cacheStyleSheet:function(b){a||(a={});try{for(var c=b.cssRules||b.rules,d=c.length-1;0<=d;--d)a[c[d].selectorText.toLowerCase()]= +c[d]}catch(j){}},getRules:function(c){if(null===a||c){a={};c=b.styleSheets;for(var d=0,h=c.length;d<h;d++)try{this.cacheStyleSheet(c[d])}catch(j){}}return a},getRule:function(a,b){var c=this.getRules(b);if(!Ext.isArray(a))return c[a.toLowerCase()];for(var d=0;d<a.length;d++)if(c[a[d]])return c[a[d].toLowerCase()];return null},updateRule:function(a,b,h){if(Ext.isArray(a))for(var j=0;j<a.length;j++){if(this.updateRule(a[j],b,h))return!0}else if(a=this.getRule(a))return a.style[b.replace(c,d)]=h,!0; +return!1}}}(); +Ext.util.ClickRepeater=Ext.extend(Ext.util.Observable,{constructor:function(a,b){this.el=Ext.get(a);this.el.unselectable();Ext.apply(this,b);this.addEvents("mousedown","click","mouseup");this.disabled||(this.disabled=!0,this.enable());if(this.handler)this.on("click",this.handler,this.scope||this);Ext.util.ClickRepeater.superclass.constructor.call(this)},interval:20,delay:250,preventDefault:!0,stopDefault:!1,timer:0,enable:function(){if(this.disabled){this.el.on("mousedown",this.handleMouseDown,this); +if(Ext.isIE)this.el.on("dblclick",this.handleDblClick,this);if(this.preventDefault||this.stopDefault)this.el.on("click",this.eventOptions,this)}this.disabled=!1},disable:function(a){if(a||!this.disabled)clearTimeout(this.timer),this.pressClass&&this.el.removeClass(this.pressClass),Ext.getDoc().un("mouseup",this.handleMouseUp,this),this.el.removeAllListeners();this.disabled=!0},setDisabled:function(a){this[a?"disable":"enable"]()},eventOptions:function(a){this.preventDefault&&a.preventDefault();this.stopDefault&& +a.stopEvent()},destroy:function(){this.disable(!0);Ext.destroy(this.el);this.purgeListeners()},handleDblClick:function(a){clearTimeout(this.timer);this.el.blur();this.fireEvent("mousedown",this,a);this.fireEvent("click",this,a)},handleMouseDown:function(a){clearTimeout(this.timer);this.el.blur();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,a);this.fireEvent("click",this,a);this.accelerate&&(this.delay=400);this.timer=this.click.defer(this.delay||this.interval,this,[a])},click:function(a){this.fireEvent("click",this,a);this.timer=this.click.defer(this.accelerate?this.easeOutExpo(this.mousedownTime.getElapsed(),400,-390,12E3):this.interval,this,[a])},easeOutExpo:function(a,b,c,d){return a==d?b+c:c*(-Math.pow(2,-10*a/d)+1)+b},handleMouseOut:function(){clearTimeout(this.timer);this.pressClass&&this.el.removeClass(this.pressClass); +this.el.on("mouseover",this.handleMouseReturn,this)},handleMouseReturn:function(){this.el.un("mouseover",this.handleMouseReturn,this);this.pressClass&&this.el.addClass(this.pressClass);this.click()},handleMouseUp:function(a){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,a)}}); +Ext.KeyNav=function(a,b){this.el=Ext.get(a);Ext.apply(this,b);this.disabled||(this.disabled=!0,this.enable())}; +Ext.KeyNav.prototype={disabled:!1,defaultEventAction:"stopEvent",forceKeyDown:!1,relay:function(a){var b=a.getKey();if((b=this.keyToHandler[b])&&this[b]&&!0!==this.doRelay(a,this[b],b))a[this.defaultEventAction]()},doRelay:function(a,b,c){return b.call(this.scope||this,a,c)},enter:!1,left:!1,right:!1,up:!1,down:!1,tab:!1,esc:!1,pageUp:!1,pageDown:!1,del:!1,home:!1,end:!1,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"},stopKeyUp:function(a){var b=a.getKey();37<=b&&40>=b&&a.stopEvent()},destroy:function(){this.disable()},enable:function(){if(this.disabled){if(Ext.isSafari2)this.el.on("keyup",this.stopKeyUp,this);this.el.on(this.isKeydown()?"keydown":"keypress",this.relay,this);this.disabled=!1}},disable:function(){this.disabled||(Ext.isSafari2&&this.el.un("keyup",this.stopKeyUp,this),this.el.un(this.isKeydown()?"keydown":"keypress",this.relay,this),this.disabled=!0)},setDisabled:function(a){this[a?"disable": +"enable"]()},isKeydown:function(){return this.forceKeyDown||Ext.EventManager.useKeydown}};Ext.KeyMap=function(a,b,c){this.el=Ext.get(a);this.eventName=c||"keydown";this.bindings=[];b&&this.addBinding(b);this.enable()}; +Ext.KeyMap.prototype={stopEvent:!1,addBinding:function(a){if(Ext.isArray(a))Ext.each(a,function(a){this.addBinding(a)},this);else{var b=a.key,c=a.fn||a.handler,d=a.scope;a.stopEvent&&(this.stopEvent=a.stopEvent);if("string"==typeof b){for(var e=[],g=b.toUpperCase(),h=0,j=g.length;h<j;h++)e.push(g.charCodeAt(h));b=e}var k=Ext.isArray(b);this.bindings.push(function(e){if(this.checkModifiers(a,e)){var g=e.getKey();if(k)for(var h=0,j=b.length;h<j;h++){if(b[h]==g){this.stopEvent&&e.stopEvent();c.call(d|| +window,g,e);break}}else g==b&&(this.stopEvent&&e.stopEvent(),c.call(d||window,g,e))}})}},checkModifiers:function(a,b){for(var c,d,e=["shift","ctrl","alt"],g=0,h=e.length;g<h;++g)if(d=e[g],c=a[d],!(void 0===c||c===b[d+"Key"]))return!1;return!0},on:function(a,b,c){var d,e,g,h;"object"==typeof a&&!Ext.isArray(a)?(d=a.key,e=a.shift,g=a.ctrl,h=a.alt):d=a;this.addBinding({key:d,shift:e,ctrl:g,alt:h,fn:b,scope:c})},handleKeyDown:function(a){if(this.enabled)for(var b=this.bindings,c=0,d=b.length;c<d;c++)b[c].call(this, +a)},isEnabled:function(){return this.enabled},enable:function(){this.enabled||(this.el.on(this.eventName,this.handleKeyDown,this),this.enabled=!0)},disable:function(){this.enabled&&(this.el.removeListener(this.eventName,this.handleKeyDown,this),this.enabled=!1)},setDisabled:function(a){this[a?"disable":"enable"]()}}; +Ext.util.TextMetrics=function(){var a;return{measure:function(b,c,d){a||(a=Ext.util.TextMetrics.Instance(b,d));a.bind(b);a.setFixedWidth(d||"auto");return a.getSize(c)},createInstance:function(a,c){return Ext.util.TextMetrics.Instance(a,c)}}}(); +Ext.util.TextMetrics.Instance=function(a,b){var c=new Ext.Element(document.createElement("div"));document.body.appendChild(c.dom);c.position("absolute");c.setLeftTop(-1E3,-1E3);c.hide();b&&c.setWidth(b);var d={getSize:function(a){c.update(a);a=c.getSize();c.update("");return a},bind:function(a){c.setStyle(Ext.fly(a).getStyles("font-size","font-style","font-weight","font-family","line-height","text-transform","letter-spacing"))},setFixedWidth:function(a){c.setWidth(a)},getWidth:function(a){c.dom.style.width= +"auto";return this.getSize(a).width},getHeight:function(a){return this.getSize(a).height}};d.bind(a);return d};Ext.Element.addMethods({getTextWidth:function(a,b,c){return Ext.util.TextMetrics.measure(this.dom,Ext.value(a,this.dom.innerHTML,!0)).width.constrain(b||0,c||1E6)}}); +Ext.util.Cookies={set:function(a,b){var c=arguments,d=arguments.length,e=2<d?c[2]:null,g=3<d?c[3]:"/",h=4<d?c[4]:null,c=5<d?c[5]:!1;document.cookie=a+"="+escape(b)+(null===e?"":"; expires="+e.toGMTString())+(null===g?"":"; path="+g)+(null===h?"":"; domain="+h)+(!0===c?"; secure":"")},get:function(a){a+="=";for(var b=a.length,c=document.cookie.length,d=0,e=0;d<c;){e=d+b;if(document.cookie.substring(d,e)==a)return Ext.util.Cookies.getCookieVal(e);d=document.cookie.indexOf(" ",d)+1;if(0===d)break}return null}, +clear:function(a){Ext.util.Cookies.get(a)&&(document.cookie=a+"=; expires=Thu, 01-Jan-70 00:00:01 GMT")},getCookieVal:function(a){var b=document.cookie.indexOf(";",a);-1==b&&(b=document.cookie.length);return unescape(document.cookie.substring(a,b))}};Ext.handleError=function(a){throw a;};Ext.Error=function(a){this.message=this.lang[a]?this.lang[a]:a};Ext.Error.prototype=Error(); +Ext.apply(Ext.Error.prototype,{lang:{},name:"Ext.Error",getName:function(){return this.name},getMessage:function(){return this.message},toJson:function(){return Ext.encode(this)}}); +Ext.ComponentMgr=function(){var a=new Ext.util.MixedCollection,b={},c={};return{register:function(b){a.add(b)},unregister:function(b){a.remove(b)},get:function(b){return a.get(b)},onAvailable:function(b,c,g){a.on("add",function(h,j){j.id==b&&(c.call(g||j,j),a.un("add",c,g))})},all:a,types:b,ptypes:c,isRegistered:function(a){return void 0!==b[a]},isPluginRegistered:function(a){return void 0!==c[a]},registerType:function(a,c){b[a]=c;c.xtype=a},create:function(a,c){return a.render?a:new b[a.xtype||c](a)}, +registerPlugin:function(a,b){c[a]=b;b.ptype=a},createPlugin:function(a,b){var g=c[a.ptype||b];return g.init?g:new g(a)}}}();Ext.reg=Ext.ComponentMgr.registerType;Ext.preg=Ext.ComponentMgr.registerPlugin;Ext.create=Ext.ComponentMgr.create; +Ext.Component=function(a){a=a||{};if(a.initialConfig)a.isAction&&(this.baseAction=a),a=a.initialConfig;else if(a.tagName||a.dom||Ext.isString(a))a={applyTo:a,id:a.id||a};this.initialConfig=a;Ext.apply(this,a);this.addEvents("added","disable","enable","beforeshow","show","beforehide","hide","removed","beforerender","render","afterrender","beforedestroy","destroy","beforestaterestore","staterestore","beforestatesave","statesave");this.getId();Ext.ComponentMgr.register(this);Ext.Component.superclass.constructor.call(this); +this.baseAction&&this.baseAction.addComponent(this);this.initComponent();if(this.plugins)if(Ext.isArray(this.plugins)){a=0;for(var b=this.plugins.length;a<b;a++)this.plugins[a]=this.initPlugin(this.plugins[a])}else this.plugins=this.initPlugin(this.plugins);!1!==this.stateful&&this.initState();this.applyTo?(this.applyToMarkup(this.applyTo),delete this.applyTo):this.renderTo&&(this.render(this.renderTo),delete this.renderTo)};Ext.Component.AUTO_ID=1E3; +Ext.extend(Ext.Component,Ext.util.Observable,{disabled:!1,hidden:!1,autoEl:"div",disabledClass:"x-item-disabled",allowDomMove:!0,autoShow:!1,hideMode:"display",hideParent:!1,rendered:!1,tplWriteMode:"overwrite",bubbleEvents:[],ctype:"Ext.Component",actionMode:"el",getActionEl:function(){return this[this.actionMode]},initPlugin:function(a){a.ptype&&!Ext.isFunction(a.init)?a=Ext.ComponentMgr.createPlugin(a):Ext.isString(a)&&(a=Ext.ComponentMgr.createPlugin({ptype:a}));a.init(this);return a},initComponent:function(){this.listeners&& +(this.on(this.listeners),delete this.listeners);this.enableBubble(this.bubbleEvents)},render:function(a,b){if(!this.rendered&&!1!==this.fireEvent("beforerender",this)){!a&&this.el&&(this.el=Ext.get(this.el),a=this.el.dom.parentNode,this.allowDomMove=!1);this.container=Ext.get(a);this.ctCls&&this.container.addClass(this.ctCls);this.rendered=!0;void 0!==b&&(b=Ext.isNumber(b)?this.container.dom.childNodes[b]:Ext.getDom(b));this.onRender(this.container,b||null);this.autoShow&&this.el.removeClass(["x-hidden", +"x-hide-"+this.hideMode]);this.cls&&(this.el.addClass(this.cls),delete this.cls);this.style&&(this.el.applyStyles(this.style),delete this.style);this.overCls&&this.el.addClassOnOver(this.overCls);this.fireEvent("render",this);var c=this.getContentTarget();this.html&&(c.update(Ext.DomHelper.markup(this.html)),delete this.html);if(this.contentEl){var d=Ext.getDom(this.contentEl);Ext.fly(d).removeClass(["x-hidden","x-hide-display"]);c.appendChild(d)}this.tpl&&(this.tpl.compile||(this.tpl=new Ext.XTemplate(this.tpl)), +this.data&&(this.tpl[this.tplWriteMode](c,this.data),delete this.data));this.afterRender(this.container);this.hidden&&this.doHide();this.disabled&&this.disable(!0);!1!==this.stateful&&this.initStateEvents();this.fireEvent("afterrender",this)}return this},update:function(a,b,c){var d=this.getContentTarget();if(this.tpl&&"string"!==typeof a)this.tpl[this.tplWriteMode](d,a||{});else a=Ext.isObject(a)?Ext.DomHelper.markup(a):a,d.update(a,b,c)},onAdded:function(a,b){this.ownerCt=a;this.initRef();this.fireEvent("added", +this,a,b)},onRemoved:function(){this.removeRef();this.fireEvent("removed",this,this.ownerCt);delete this.ownerCt},initRef:function(){if(this.ref&&!this.refOwner){for(var a=this.ref.split("/"),b=a.length,c=0,d=this;d&&c<b;)d=d.ownerCt,++c;d&&(d[this.refName=a[--c]]=this,this.refOwner=d)}},removeRef:function(){this.refOwner&&this.refName&&(delete this.refOwner[this.refName],delete this.refOwner)},initState:function(){if(Ext.state.Manager){var a=this.getStateId();if(a&&(a=Ext.state.Manager.get(a))&& +!1!==this.fireEvent("beforestaterestore",this,a))this.applyState(Ext.apply({},a)),this.fireEvent("staterestore",this,a)}},getStateId:function(){return this.stateId||(/^(ext-comp-|ext-gen)/.test(String(this.id))?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(a){a&&Ext.apply(this,a)},getState:function(){return null},saveState:function(){if(Ext.state.Manager&&!1!==this.stateful){var a= +this.getStateId();if(a){var b=this.getState();!1!==this.fireEvent("beforestatesave",this,b)&&(Ext.state.Manager.set(a,b),this.fireEvent("statesave",this,b))}}},applyToMarkup:function(a){this.allowDomMove=!1;this.el=Ext.get(a);this.render(this.el.dom.parentNode)},addClass:function(a){this.el?this.el.addClass(a):this.cls=this.cls?this.cls+" "+a:a;return this},removeClass:function(a){this.el?this.el.removeClass(a):this.cls&&(this.cls=this.cls.split(" ").remove(a).join(" "));return this},onRender:function(a, +b){if(!this.el&&this.autoEl){if(Ext.isString(this.autoEl))this.el=document.createElement(this.autoEl);else{var c=document.createElement("div");Ext.DomHelper.overwrite(c,this.autoEl);this.el=c.firstChild}this.el.id||(this.el.id=this.getId())}this.el&&(this.el=Ext.get(this.el),!1!==this.allowDomMove&&(a.dom.insertBefore(this.el.dom,b),c&&Ext.removeNode(c)))},getAutoCreate:function(){var a=Ext.isObject(this.autoCreate)?this.autoCreate:Ext.apply({},this.defaultAutoCreate);this.id&&!a.id&&(a.id=this.id); +return a},afterRender:Ext.emptyFn,destroy:function(){!this.isDestroyed&&!1!==this.fireEvent("beforedestroy",this)&&(this.destroying=!0,this.beforeDestroy(),this.ownerCt&&this.ownerCt.remove&&this.ownerCt.remove(this,!1),this.rendered&&(this.el.remove(),("container"==this.actionMode||"container"==this.removeMode)&&this.container.remove()),this.focusTask&&this.focusTask.cancel&&this.focusTask.cancel(),this.onDestroy(),Ext.ComponentMgr.unregister(this),this.fireEvent("destroy",this),this.purgeListeners(), +this.destroying=!1,this.isDestroyed=!0)},deleteMembers:function(){for(var a=arguments,b=0,c=a.length;b<c;++b)delete this[a[b]]},beforeDestroy:Ext.emptyFn,onDestroy:Ext.emptyFn,getEl:function(){return this.el},getContentTarget: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(a,b){if(b)return this.focusTask=new Ext.util.DelayedTask(this.focus,this,[a,!1]),this.focusTask.delay(Ext.isNumber(b)? +b:10),this;this.rendered&&!this.isDestroyed&&(this.el.focus(),!0===a&&this.el.dom.select());return this},blur:function(){this.rendered&&this.el.blur();return this},disable:function(a){if(this.rendered)this.onDisable();this.disabled=!0;!0!==a&&this.fireEvent("disable",this);return this},onDisable:function(){this.getActionEl().addClass(this.disabledClass);this.el.dom.disabled=!0},enable:function(){if(this.rendered)this.onEnable();this.disabled=!1;this.fireEvent("enable",this);return this},onEnable:function(){this.getActionEl().removeClass(this.disabledClass); +this.el.dom.disabled=!1},setDisabled:function(a){return this[a?"disable":"enable"]()},show:function(){if(!1!==this.fireEvent("beforeshow",this)){this.hidden=!1;this.autoRender&&this.render(Ext.isBoolean(this.autoRender)?Ext.getBody():this.autoRender);if(this.rendered)this.onShow();this.fireEvent("show",this)}return this},onShow:function(){this.getVisibilityEl().removeClass("x-hide-"+this.hideMode)},hide:function(){!1!==this.fireEvent("beforehide",this)&&(this.doHide(),this.fireEvent("hide",this)); +return this},doHide:function(){this.hidden=!0;if(this.rendered)this.onHide()},onHide:function(){this.getVisibilityEl().addClass("x-hide-"+this.hideMode)},getVisibilityEl:function(){return this.hideParent?this.container:this.getActionEl()},setVisible:function(a){return this[a?"show":"hide"]()},isVisible:function(){return this.rendered&&this.getVisibilityEl().isVisible()},cloneConfig:function(a){a=a||{};var b=a.id||Ext.id();a=Ext.applyIf(a,this.initialConfig);a.id=b;return new this.constructor(a)}, +getXType:function(){return this.constructor.xtype},isXType:function(a,b){Ext.isFunction(a)?a=a.xtype:Ext.isObject(a)&&(a=a.constructor.xtype);return!b?-1!=("/"+this.getXTypes()+"/").indexOf("/"+a+"/"):this.constructor.xtype==a},getXTypes:function(){var a=this.constructor;if(!a.xtypes){for(var b=[],c=this;c&&c.constructor.xtype;)b.unshift(c.constructor.xtype),c=c.constructor.superclass;a.xtypeChain=b;a.xtypes=b.join("/")}return a.xtypes},findParentBy:function(a){for(var b=this.ownerCt;null!=b&&!a(b, +this);b=b.ownerCt);return b||null},findParentByType:function(a,b){return this.findParentBy(function(c){return c.isXType(a,b)})},bubble:function(a,b,c){for(var d=this;d&&!1!==a.apply(b||d,c||[d]);)d=d.ownerCt;return this},getPositionEl:function(){return this.positionEl||this.el},purgeListeners:function(){Ext.Component.superclass.purgeListeners.call(this);if(this.mons)this.on("beforedestroy",this.clearMons,this,{single:!0})},clearMons:function(){Ext.each(this.mons,function(a){a.item.un(a.ename,a.fn, +a.scope)},this);this.mons=[]},createMons:function(){this.mons||(this.mons=[],this.on("beforedestroy",this.clearMons,this,{single:!0}))},mon:function(a,b,c,d,e){this.createMons();if(Ext.isObject(b)){c=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;for(var g in b)c.test(g)||(Ext.isFunction(b[g])?(this.mons.push({item:a,ename:g,fn:b[g],scope:b.scope}),a.on(g,b[g],b.scope,b)):(this.mons.push({item:a,ename:g,fn:b[g],scope:b.scope}),a.on(g,b[g])))}else this.mons.push({item:a, +ename:b,fn:c,scope:d}),a.on(b,c,d,e)},mun:function(a,b,c,d){var e,g;this.createMons();for(var h=0,j=this.mons.length;h<j;++h)if(g=this.mons[h],a===g.item&&b==g.ename&&c===g.fn&&d===g.scope){this.mons.splice(h,1);a.un(b,c,d);e=!0;break}return e},nextSibling:function(){if(this.ownerCt){var a=this.ownerCt.items.indexOf(this);if(-1!=a&&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(0<a)return this.ownerCt.items.itemAt(a-1)}return null},getBubbleTarget:function(){return this.ownerCt}});Ext.reg("component",Ext.Component); +Ext.Action=Ext.extend(Object,{constructor:function(a){this.initialConfig=a;this.itemId=a.itemId=a.itemId||a.id||Ext.id();this.items=[]},isAction:!0,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(!1)},disable:function(){this.setDisabled(!0)},isDisabled:function(){return this.initialConfig.disabled},setHidden:function(a){this.initialConfig.hidden=a;this.callEach("setVisible",[!a])},show:function(){this.setHidden(!1)},hide:function(){this.setHidden(!0)},isHidden:function(){return this.initialConfig.hidden},setHandler:function(a,b){this.initialConfig.handler=a;this.initialConfig.scope=b;this.callEach("setHandler",[a,b])},each:function(a,b){Ext.each(this.items, +a,b)},callEach:function(a,b){for(var c=this.items,d=0,e=c.length;d<e;d++)c[d][a].apply(c[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(a,b){a=a||{};var e=Ext.DomHelper,g=a.parentEl,g=g?Ext.getDom(g):document.body;b&&(this.dom=Ext.getDom(b));this.dom||(this.dom=e.append(g,a.dh||{tag:"div",cls:"x-layer"}));a.cls&&this.addClass(a.cls);this.constrain=!1!==a.constrain;this.setVisibilityMode(Ext.Element.VISIBILITY);this.id=a.id?this.dom.id=a.id:Ext.id(this.dom);this.zindex=a.zindex||this.getZIndex();this.position("absolute",this.zindex);a.shadow?(this.shadowOffset=a.shadowOffset||4,this.shadow=new Ext.Shadow({offset:this.shadowOffset, +mode:a.shadow})):this.shadowOffset=0;this.useShim=!1!==a.shim&&Ext.useShims;this.useDisplay=a.useDisplay;this.hide()};var a=Ext.Element.prototype,b=[];Ext.extend(Ext.Layer,Ext.Element,{getZIndex:function(){return this.zindex||parseInt((this.getShim()||this).getStyle("z-index"),10)||11E3},getShim:function(){if(!this.useShim)return null;if(this.shim)return this.shim;var a=b.shift();a||(a=this.createShim(),a.enableDisplayMode("block"),a.dom.style.display="none",a.dom.style.visibility="visible");var d= +this.dom.parentNode;a.dom.parentNode!=d&&d.insertBefore(a.dom,this.dom);a.setStyle("z-index",this.getZIndex()-2);return this.shim=a},hideShim:function(){this.shim&&(this.shim.setDisplayed(!1),b.push(this.shim),delete this.shim)},disableShadow:function(){this.shadow&&(this.shadowDisabled=!0,this.shadow.hide(),this.lastShadowOffset=this.shadowOffset,this.shadowOffset=0)},enableShadow:function(a){this.shadow&&(this.shadowDisabled=!1,this.shadowOffset=this.lastShadowOffset,delete this.lastShadowOffset, +a&&this.sync(!0))},sync:function(a){var b=this.shadow;if(!this.updating&&this.isVisible()&&(b||this.useShim)){var e=this.getShim(),g=this.getWidth(),h=this.getHeight(),j=this.getLeft(!0),k=this.getTop(!0);b&&!this.shadowDisabled?(a&&!b.isVisible()?b.show(this):b.realign(j,k,g,h),e&&(a&&e.show(),a=b.el.getXY(),e=e.dom.style,b=b.el.getSize(),e.left=a[0]+"px",e.top=a[1]+"px",e.width=b.width+"px",e.height=b.height+"px")):e&&(a&&e.show(),e.setSize(g,h),e.setLeftTop(j,k))}},destroy:function(){this.hideShim(); +this.shadow&&this.shadow.hide();this.removeAllListeners();Ext.removeNode(this.dom);delete this.dom},remove:function(){this.destroy()},beginUpdate:function(){this.updating=!0},endUpdate:function(){this.updating=!1;this.sync(!0)},hideUnders:function(){this.shadow&&this.shadow.hide();this.hideShim()},constrainXY:function(){if(this.constrain){var b=Ext.lib.Dom.getViewWidth(),d=Ext.lib.Dom.getViewHeight(),e=Ext.getDoc().getScroll(),g=this.getXY(),h=g[0],g=g[1],j=this.shadowOffset,k=this.dom.offsetWidth+ +j,l=this.dom.offsetHeight+j,m=!1;h+k>b+e.left&&(h=b-k-j,m=!0);g+l>d+e.top&&(g=d-l-j,m=!0);h<e.left&&(h=e.left,m=!0);g<e.top&&(g=e.top,m=!0);m&&(this.avoidY&&(b=this.avoidY,g<=b&&g+l>=b&&(g=b-l-5)),g=[h,g],this.storeXY(g),a.setXY.call(this,g),this.sync())}return this},getConstrainOffset:function(){return this.shadowOffset},isVisible:function(){return this.visible},showAction:function(){this.visible=!0;!0===this.useDisplay?this.setDisplayed(""):this.lastXY?a.setXY.call(this,this.lastXY):this.lastLT&& +a.setLeftTop.call(this,this.lastLT[0],this.lastLT[1])},hideAction:function(){this.visible=!1;!0===this.useDisplay?this.setDisplayed(!1):this.setLeftTop(-1E4,-1E4)},setVisible:function(b,d,e,g,h){b&&this.showAction();if(d&&b){var j=function(){this.sync(!0);g&&g()}.createDelegate(this);a.setVisible.call(this,!0,!0,e,j,h)}else b||this.hideUnders(!0),j=g,d&&(j=function(){this.hideAction();g&&g()}.createDelegate(this)),a.setVisible.call(this,b,d,e,j,h),b?this.sync(!0):d||this.hideAction();return this}, +storeXY:function(a){delete this.lastLT;this.lastXY=a},storeLeftTop:function(a,b){delete this.lastXY;this.lastLT=[a,b]},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(){!this.updating&&this.shadow&&this.shadow.hide()},setLeft:function(b){this.storeLeftTop(b,this.getTop(!0));a.setLeft.apply(this,arguments);this.sync();return this}, +setTop:function(b){this.storeLeftTop(this.getLeft(!0),b);a.setTop.apply(this,arguments);this.sync();return this},setLeftTop:function(b,d){this.storeLeftTop(b,d);a.setLeftTop.apply(this,arguments);this.sync();return this},setXY:function(b,d,e,g,h){this.fixDisplay();this.beforeAction();this.storeXY(b);g=this.createCB(g);a.setXY.call(this,b,d,e,g,h);d||g();return this},createCB:function(a){var b=this;return function(){b.constrainXY();b.sync(!0);a&&a()}},setX:function(a,b,e,g,h){this.setXY([a,this.getY()], +b,e,g,h);return this},setY:function(a,b,e,g,h){this.setXY([this.getX(),a],b,e,g,h);return this},setSize:function(b,d,e,g,h,j){this.beforeAction();h=this.createCB(h);a.setSize.call(this,b,d,e,g,h,j);e||h();return this},setWidth:function(b,d,e,g,h){this.beforeAction();g=this.createCB(g);a.setWidth.call(this,b,d,e,g,h);d||g();return this},setHeight:function(b,d,e,g,h){this.beforeAction();g=this.createCB(g);a.setHeight.call(this,b,d,e,g,h);d||g();return this},setBounds:function(b,d,e,g,h,j,k,l){this.beforeAction(); +k=this.createCB(k);h?a.setBounds.call(this,b,d,e,g,h,j,k,l):(this.storeXY([b,d]),a.setXY.call(this,[b,d]),a.setSize.call(this,e,g,h,j,k,l),k());return this},setZIndex:function(a){this.zindex=a;this.setStyle("z-index",a+2);this.shadow&&this.shadow.setZIndex(a+1);this.shim&&this.shim.setStyle("z-index",a);return this}})})(); +Ext.Shadow=function(a){Ext.apply(this,a);"string"!=typeof this.mode&&(this.mode=this.defaultMode);a=this.offset;var b={h:0},c=Math.floor(this.offset/2);switch(this.mode.toLowerCase()){case "drop":b.w=0;b.l=b.t=a;b.t-=1;Ext.isIE&&(b.l-=this.offset+c,b.t-=this.offset+c,b.w-=c,b.h-=c,b.t+=1);break;case "sides":b.w=2*a;b.l=-a;b.t=a-1;Ext.isIE&&(b.l-=this.offset-c,b.t-=this.offset+c,b.l+=1,b.w-=2*(this.offset-c),b.w-=c+1,b.h-=1);break;case "frame":b.w=b.h=2*a,b.l=b.t=-a,b.t+=1,b.h-=2,Ext.isIE&&(b.l-=this.offset- +c,b.t-=this.offset-c,b.l+=1,b.w-=this.offset+c+1,b.h-=this.offset+c,b.h+=1)}this.adjusts=b}; +Ext.Shadow.prototype={offset:4,defaultMode:"drop",show:function(a){a=Ext.get(a);this.el||(this.el=Ext.Shadow.Pool.pull(),this.el.dom.nextSibling!=a.dom&&this.el.insertBefore(a));this.el.setStyle("z-index",this.zIndex||parseInt(a.getStyle("z-index"),10)-1);Ext.isIE&&(this.el.dom.style.filter="progid:DXImageTransform.Microsoft.alpha(opacity=50) progid:DXImageTransform.Microsoft.Blur(pixelradius="+this.offset+")");this.realign(a.getLeft(!0),a.getTop(!0),a.getWidth(),a.getHeight());this.el.dom.style.display= +"block"},isVisible:function(){return this.el?!0:!1},realign:function(a,b,c,d){if(this.el){var e=this.adjusts,g=this.el.dom,h=g.style;c+=e.w;d+=e.h;var j=c+"px",k=d+"px";h.left=a+e.l+"px";h.top=b+e.t+"px";if(h.width!=j||h.height!=k)h.width=j,h.height=k,Ext.isIE||(a=g.childNodes,b=Math.max(0,c-12)+"px",a[0].childNodes[1].style.width=b,a[1].childNodes[1].style.width=b,a[2].childNodes[1].style.width=b,a[1].style.height=Math.max(0,d-12)+"px")}},hide:function(){this.el&&(this.el.dom.style.display="none", +Ext.Shadow.Pool.push(this.el),delete this.el)},setZIndex:function(a){this.zIndex=a;this.el&&this.el.setStyle("z-index",a)}}; +Ext.Shadow.Pool=function(){var a=[],b=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 c=a.shift();c||(c=Ext.get(Ext.DomHelper.insertHtml("beforeBegin",document.body.firstChild, +b)),c.autoBoxAdjust=!1);return c},push:function(b){a.push(b)}}}(); +Ext.BoxComponent=Ext.extend(Ext.Component,{initComponent:function(){Ext.BoxComponent.superclass.initComponent.call(this);this.addEvents("resize","move")},boxReady:!1,deferHeight:!1,setSize:function(a,b){"object"==typeof a&&(b=a.height,a=a.width);Ext.isDefined(a)&&(Ext.isDefined(this.boxMinWidth)&&a<this.boxMinWidth)&&(a=this.boxMinWidth);Ext.isDefined(b)&&(Ext.isDefined(this.boxMinHeight)&&b<this.boxMinHeight)&&(b=this.boxMinHeight);Ext.isDefined(a)&&(Ext.isDefined(this.boxMaxWidth)&&a>this.boxMaxWidth)&& +(a=this.boxMaxWidth);Ext.isDefined(b)&&(Ext.isDefined(this.boxMaxHeight)&&b>this.boxMaxHeight)&&(b=this.boxMaxHeight);if(!this.boxReady)return this.width=a,this.height=b,this;if(!1!==this.cacheSizes&&this.lastSize&&this.lastSize.width==a&&this.lastSize.height==b)return this;this.lastSize={width:a,height:b};var c=this.adjustSize(a,b),d=c.width,c=c.height,e;if(void 0!==d||void 0!==c)e=this.getResizeEl(),!this.deferHeight&&void 0!==d&&void 0!==c?e.setSize(d,c):!this.deferHeight&&void 0!==c?e.setHeight(c): +void 0!==d&&e.setWidth(d),this.onResize(d,c,a,b),this.fireEvent("resize",this,d,c,a,b);return this},setWidth:function(a){return this.setSize(a)},setHeight:function(a){return this.setSize(void 0,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();return!0===a?[b.getLeft(!0),b.getTop(!0)]:this.xy||b.getXY()},getBox:function(a){a=this.getPosition(a);var b=this.getSize();b.x=a[0];b.y=a[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},setAutoScroll:function(a){this.rendered&&this.getContentTarget().setOverflow(a?"auto":"");this.autoScroll=a;return this},setPosition:function(a,b){a&& +"number"==typeof a[1]&&(b=a[1],a=a[0]);this.x=a;this.y=b;if(!this.boxReady)return this;var c=this.adjustPosition(a,b),d=c.x,c=c.y,e=this.getPositionEl();if(void 0!==d||void 0!==c)void 0!==d&&void 0!==c?e.setLeftTop(d,c):void 0!==d?e.setLeft(d):void 0!==c&&e.setTop(c),this.onPosition(d,c),this.fireEvent("move",this,d,c);return this},setPagePosition:function(a,b){a&&"number"==typeof a[1]&&(b=a[1],a=a[0]);this.pageX=a;this.pageY=b;if(this.boxReady&&!(void 0===a||void 0===b)){var c=this.getPositionEl().translatePoints(a, +b);this.setPosition(c.left,c.top);return this}},afterRender:function(){Ext.BoxComponent.superclass.afterRender.call(this);this.resizeEl&&(this.resizeEl=Ext.get(this.resizeEl));this.positionEl&&(this.positionEl=Ext.get(this.positionEl));this.boxReady=!0;Ext.isDefined(this.autoScroll)&&this.setAutoScroll(this.autoScroll);this.setSize(this.width,this.height);this.x||this.y?this.setPosition(this.x,this.y):(this.pageX||this.pageY)&&this.setPagePosition(this.pageX,this.pageY)},syncSize:function(){delete this.lastSize; +this.setSize(this.autoWidth?void 0:this.getResizeEl().getWidth(),this.autoHeight?void 0:this.getResizeEl().getHeight());return this},onResize:function(){},onPosition:function(){},adjustSize:function(a,b){this.autoWidth&&(a="auto");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(a,b,c,d,e){this.el=Ext.get(a,!0);this.el.dom.unselectable="on";this.resizingEl=Ext.get(b,!0);this.orientation=c||Ext.SplitBar.HORIZONTAL;this.minSize=0;this.maxSize=2E3;this.useShim=this.animate=!1;this.shim=null;this.proxy=e?Ext.get(e).dom:Ext.SplitBar.createProxy(this.orientation);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);this.orientation==Ext.SplitBar.HORIZONTAL?(this.placement=d||(this.el.getX()>this.resizingEl.getX()?Ext.SplitBar.LEFT:Ext.SplitBar.RIGHT),this.el.addClass("x-splitbar-h")):(this.placement=d||(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,b){this.fireEvent("beforeresize",this);this.overlay=Ext.DomHelper.append(document.body,{cls:"x-drag-overlay",html:" "},!0);this.overlay.unselectable();this.overlay.setSize(Ext.lib.Dom.getViewWidth(!0),Ext.lib.Dom.getViewHeight(!0));this.overlay.show();Ext.get(this.proxy).setDisplayed("block");var c=this.adapter.getElementSize(this);this.activeMinSize=this.getMinimumSize();this.activeMaxSize=this.getMaximumSize();var d=c- +this.activeMinSize,e=Math.max(this.activeMaxSize-c,0);this.orientation==Ext.SplitBar.HORIZONTAL?(this.dd.resetConstraints(),this.dd.setXConstraint(this.placement==Ext.SplitBar.LEFT?d:e,this.placement==Ext.SplitBar.LEFT?e:d,this.tickSize),this.dd.setYConstraint(0,0)):(this.dd.resetConstraints(),this.dd.setXConstraint(0,0),this.dd.setYConstraint(this.placement==Ext.SplitBar.TOP?d:e,this.placement==Ext.SplitBar.TOP?e:d,this.tickSize));this.dragSpecs.startSize=c;this.dragSpecs.startPoint=[a,b];Ext.dd.DDProxy.prototype.b4StartDrag.call(this.dd, +a,b)},onEndProxyDrag:function(a){Ext.get(this.proxy).setDisplayed(!1);a=Ext.lib.Event.getXY(a);this.overlay&&(Ext.destroy(this.overlay),delete this.overlay);a=this.orientation==Ext.SplitBar.HORIZONTAL?this.dragSpecs.startSize+(this.placement==Ext.SplitBar.LEFT?a[0]-this.dragSpecs.startPoint[0]:this.dragSpecs.startPoint[0]-a[0]):this.dragSpecs.startSize+(this.placement==Ext.SplitBar.TOP?a[1]-this.dragSpecs.startPoint[1]:this.dragSpecs.startPoint[1]-a[1]);a=Math.min(Math.max(a,this.activeMinSize),this.activeMaxSize); +a!=this.dragSpecs.startSize&&!1!==this.fireEvent("beforeapply",this,a)&&(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(a){var b=this.animate; +this.animate=!1;this.adapter.setElementSize(this,a);this.animate=b},destroy:function(a){Ext.destroy(this.shim,Ext.get(this.proxy));this.dd.unreg();a&&this.el.remove();this.purgeListeners()}});Ext.SplitBar.createProxy=function(a){var b=new Ext.Element(document.createElement("div"));document.body.appendChild(b.dom);b.unselectable();b.addClass("x-splitbar-proxy "+(a==Ext.SplitBar.HORIZONTAL?"x-splitbar-proxy-h":"x-splitbar-proxy-v"));return b.dom};Ext.SplitBar.BasicLayoutAdapter=function(){}; +Ext.SplitBar.BasicLayoutAdapter.prototype={init:function(){},getElementSize:function(a){return a.orientation==Ext.SplitBar.HORIZONTAL?a.resizingEl.getWidth():a.resizingEl.getHeight()},setElementSize:function(a,b,c){a.orientation==Ext.SplitBar.HORIZONTAL?a.animate?a.resizingEl.setWidth(b,!0,0.1,c,"easeOut"):(a.resizingEl.setWidth(b),c&&c(a,b)):a.animate?a.resizingEl.setHeight(b,!0,0.1,c,"easeOut"):(a.resizingEl.setHeight(b),c&&c(a,b))}}; +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(a,b){this.basic.setElementSize(a,b,this.moveSplitter.createDelegate(this,[a]))},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())}}};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,{bufferResize:50,autoDestroy:!0,forceLayout:!1,defaultType:"panel",resizeEvent:"resize",bubbleEvents:["add","remove"],initComponent:function(){Ext.Container.superclass.initComponent.call(this);this.addEvents("afterlayout","beforeadd","beforeremove","add","remove");var a=this.items;a&&(delete this.items,this.add(a))},initItems:function(){this.items||(this.items=new Ext.util.MixedCollection(!1,this.getComponentId),this.getLayout())},setLayout:function(a){this.layout&& +this.layout!=a&&this.layout.setContainer(null);this.layout=a;this.initItems();a.setContainer(this)},afterRender:function(){Ext.Container.superclass.afterRender.call(this);this.layout||(this.layout="auto");Ext.isObject(this.layout)&&!this.layout.layout&&(this.layoutConfig=this.layout,this.layout=this.layoutConfig.type);Ext.isString(this.layout)&&(this.layout=new (Ext.Container.LAYOUTS[this.layout.toLowerCase()])(this.layoutConfig));this.setLayout(this.layout);if(void 0!==this.activeItem&&this.layout.setActiveItem){var a= +this.activeItem;delete this.activeItem;this.layout.setActiveItem(a)}this.ownerCt||this.doLayout(!1,!0);if(!0===this.monitorResize)Ext.EventManager.onWindowResize(this.doLayout,this,[!1])},getLayoutTarget:function(){return this.el},getComponentId:function(a){return a.getItemId()},add:function(a){this.initItems();var b=1<arguments.length;if(b||Ext.isArray(a)){var c=[];Ext.each(b?arguments:a,function(a){c.push(this.add(a))},this);return c}var b=this.lookupComponent(this.applyDefaults(a)),d=this.items.length; +!1!==this.fireEvent("beforeadd",this,b,d)&&!1!==this.onBeforeAdd(b)&&(this.items.add(b),b.onAdded(this,d),this.onAdd(b),this.fireEvent("add",this,b,d));return b},onAdd:function(){},onAdded:function(a,b){this.ownerCt=a;this.initRef();this.cascade(function(a){a.initRef()});this.fireEvent("added",this,a,b)},insert:function(a,b){var c=arguments,d=c.length,e=[];this.initItems();if(2<d){for(d-=1;1<=d;--d)e.push(this.insert(a,c[d]));return e}c=this.lookupComponent(this.applyDefaults(b));a=Math.min(a,this.items.length); +!1!==this.fireEvent("beforeadd",this,c,a)&&!1!==this.onBeforeAdd(c)&&(c.ownerCt==this&&this.items.remove(c),this.items.insert(a,c),c.onAdded(this,a),this.onAdd(c),this.fireEvent("add",this,c,a));return c},applyDefaults:function(a){var b=this.defaults;b&&(Ext.isFunction(b)&&(b=b.call(this,a)),Ext.isString(a)?(a=Ext.ComponentMgr.get(a),Ext.apply(a,b)):a.events?Ext.apply(a,b):Ext.applyIf(a.isAction?a.initialConfig:a,b));return a},onBeforeAdd:function(a){a.ownerCt&&a.ownerCt.remove(a,!1);!0===this.hideBorders&& +(a.border=!0===a.border)},remove:function(a,b){this.initItems();var c=this.getComponent(a);c&&!1!==this.fireEvent("beforeremove",this,c)&&(this.doRemove(c,b),this.fireEvent("remove",this,c));return c},onRemove:function(){},doRemove:function(a,b){var c=this.layout,d=c&&this.rendered;if(d)c.onRemove(a);this.items.remove(a);a.onRemoved();this.onRemove(a);(!0===b||!1!==b&&this.autoDestroy)&&a.destroy();d&&c.afterRemove(a)},removeAll:function(a){this.initItems();var b,c=[],d=[];this.items.each(function(a){c.push(a)}); +for(var e=0,g=c.length;e<g;++e)b=c[e],this.remove(b,a),b.ownerCt!==this&&d.push(b);return d},getComponent:function(a){Ext.isObject(a)&&(a=a.getItemId());return this.items.get(a)},lookupComponent:function(a){return Ext.isString(a)?Ext.ComponentMgr.get(a):!a.events?this.createComponent(a):a},createComponent:function(a,b){if(a.render)return a;var c=Ext.create(Ext.apply({ownerCt:this},a),b||this.defaultType);delete c.initialConfig.ownerCt;delete c.ownerCt;return c},canLayout:function(){var a=this.getVisibilityEl(); +return a&&a.dom&&!a.isStyle("display","none")},doLayout:function(a,b){var c=this.rendered,d=b||this.forceLayout;if(this.collapsed||!this.canLayout()){this.deferLayout=this.deferLayout||!a;if(!d)return;a=a&&!this.deferLayout}else delete this.deferLayout;c&&this.layout&&this.layout.layout();if(!0!==a&&this.items)for(var e=this.items.items,g=0,h=e.length;g<h;g++){var j=e[g];j.doLayout&&j.doLayout(!1,d)}if(c)this.onLayout(a,d);this.hasLayout=!0;delete this.forceLayout},onLayout:Ext.emptyFn,shouldBufferLayout:function(){var a= +this.hasLayout;return this.ownerCt?a?!this.hasLayoutPending():!1:a},hasLayoutPending:function(){var a=!1;this.ownerCt.bubble(function(b){if(b.layoutPending)return a=!0,!1});return a},onShow:function(){Ext.Container.superclass.onShow.call(this);Ext.isDefined(this.deferLayout)&&(delete this.deferLayout,this.doLayout(!0))},getLayout:function(){if(!this.layout){var a=new Ext.layout.AutoLayout(this.layoutConfig);this.setLayout(a)}return this.layout},beforeDestroy:function(){var a;if(this.items)for(;a= +this.items.first();)this.doRemove(a,!0);this.monitorResize&&Ext.EventManager.removeResizeListener(this.doLayout,this);Ext.destroy(this.layout);Ext.Container.superclass.beforeDestroy.call(this)},cascade:function(a,b,c){if(!1!==a.apply(b||this,c||[this])&&this.items)for(var d=this.items.items,e=0,g=d.length;e<g;e++)d[e].cascade?d[e].cascade(a,b,c):a.apply(b||d[e],c||[d[e]]);return this},findById:function(a){var b=null,c=this;this.cascade(function(d){if(c!=d&&d.id===a)return b=d,!1});return b},findByType:function(a, +b){return this.findBy(function(c){return c.isXType(a,b)})},find:function(a,b){return this.findBy(function(c){return c[a]===b})},findBy:function(a,b){var c=[],d=this;this.cascade(function(e){d!=e&&!0===a.call(b||e,e,d)&&c.push(e)});return c},get:function(a){return this.getComponent(a)}});Ext.Container.LAYOUTS={};Ext.reg("container",Ext.Container); +Ext.layout.ContainerLayout=Ext.extend(Object,{monitorResize:!1,activeItem:null,constructor:function(a){this.id=Ext.id(null,"ext-layout-");Ext.apply(this,a)},type:"container",IEMeasureHack:function(a,b){var c=a.dom.childNodes,d=c.length,e,g=[],h,j;for(h=0;h<d;h++)if(e=c[h],e=Ext.get(e))g[h]=e.getStyle("display"),e.setStyle({display:"none"});j=a?a.getViewSize(b):{};for(h=0;h<d;h++)e=c[h],(e=Ext.get(e))&&e.setStyle({display:g[h]});return j},getLayoutTargetSize:Ext.EmptyFn,layout:function(){var a=this.container, +b=a.getLayoutTarget();!this.hasLayout&&!Ext.isEmpty(this.targetCls)&&b.addClass(this.targetCls);this.onLayout(a,b);a.fireEvent("afterlayout",a,this)},onLayout:function(a,b){this.renderAll(a,b)},isValidParent:function(a,b){return b&&a.getPositionEl().dom.parentNode==(b.dom||b)},renderAll:function(a,b){var c=a.items.items,d,e,g=c.length;for(d=0;d<g;d++)(e=c[d])&&(!e.rendered||!this.isValidParent(e,b))&&this.renderItem(e,d,b)},renderItem:function(a,b,c){a&&(a.rendered?this.isValidParent(a,c)||(Ext.isNumber(b)&& +(b=c.dom.childNodes[b]),c.dom.insertBefore(a.getPositionEl().dom,b||null),a.container=c,this.configureItem(a)):(a.render(c,b),this.configureItem(a)))},getRenderedItems:function(a){var b=a.getLayoutTarget();a=a.items.items;var c=a.length,d,e,g=[];for(d=0;d<c;d++)(e=a[d]).rendered&&(this.isValidParent(e,b)&&!1!==e.shouldLayout)&&g.push(e);return g},configureItem:function(a){this.extraCls&&(a.getPositionEl?a.getPositionEl():a).addClass(this.extraCls);a.doLayout&&this.forceLayout&&a.doLayout();this.renderHidden&& +a!=this.activeItem&&a.hide()},onRemove:function(a){this.activeItem==a&&delete this.activeItem;a.rendered&&this.extraCls&&(a.getPositionEl?a.getPositionEl():a).removeClass(this.extraCls)},afterRemove:function(a){a.removeRestore&&(a.removeMode="container",delete a.removeRestore)},onResize:function(){var a=this.container,b;a.collapsed||((b=a.bufferResize&&a.shouldBufferLayout())?(this.resizeTask||(this.resizeTask=new Ext.util.DelayedTask(this.runLayout,this),this.resizeBuffer=Ext.isNumber(b)?b:50),a.layoutPending= +!0,this.resizeTask.delay(this.resizeBuffer)):this.runLayout())},runLayout:function(){var a=this.container;this.layout();a.onLayout();delete a.layoutPending},setContainer:function(a){if(this.monitorResize&&a!=this.container){var b=this.container;b&&b.un(b.resizeEvent,this.onResize,this);if(a)a.on(a.resizeEvent,this.onResize,this)}this.container=a},parseMargins:function(a){Ext.isNumber(a)&&(a=a.toString());a=a.split(" ");var b=a.length;1==b?a[1]=a[2]=a[3]=a[0]:2==b?(a[2]=a[0],a[3]=a[1]):3==b&&(a[3]= +a[1]);return{top:parseInt(a[0],10)||0,right:parseInt(a[1],10)||0,bottom:parseInt(a[2],10)||0,left:parseInt(a[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=!0;return a.compile()}(),destroy:function(){this.resizeTask&& +this.resizeTask.cancel&&this.resizeTask.cancel();this.container&&this.container.un(this.container.resizeEvent,this.onResize,this);if(!Ext.isEmpty(this.targetCls)){var a=this.container.getLayoutTarget();a&&a.removeClass(this.targetCls)}}});Ext.layout.AutoLayout=Ext.extend(Ext.layout.ContainerLayout,{type:"auto",monitorResize:!0,onLayout:function(a,b){Ext.layout.AutoLayout.superclass.onLayout.call(this,a,b);var c=this.getRenderedItems(a),d=c.length,e,g;for(e=0;e<d;e++)g=c[e],g.doLayout&&g.doLayout(!0)}}); +Ext.Container.LAYOUTS.auto=Ext.layout.AutoLayout;Ext.layout.FitLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:!0,type:"fit",getLayoutTargetSize:function(){var a=this.container.getLayoutTarget();return!a?{}:a.getStyleSize()},onLayout:function(a,b){Ext.layout.FitLayout.superclass.onLayout.call(this,a,b);a.collapsed||this.setItemSize(this.activeItem||a.items.itemAt(0),this.getLayoutTargetSize())},setItemSize:function(a,b){a&&0<b.height&&a.setSize(b)}});Ext.Container.LAYOUTS.fit=Ext.layout.FitLayout; +Ext.layout.CardLayout=Ext.extend(Ext.layout.FitLayout,{deferredRender:!1,layoutOnCardChange:!1,renderHidden:!0,type:"card",setActiveItem:function(a){var b=this.activeItem;if((a=this.container.getComponent(a))&&b!=a){if(b){b.hide();if(!0!==b.hidden)return!1;b.fireEvent("deactivate",b)}b=a.doLayout&&(this.layoutOnCardChange||!a.rendered);this.activeItem=a;delete a.deferLayout;a.show();this.layout();b&&a.doLayout();a.fireEvent("activate",a)}},renderAll:function(a,b){this.deferredRender?this.renderItem(this.activeItem, +void 0,b):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:!0,type:"anchor",defaultAnchor:"100%",parseAnchorRE:/^(r|right|b|bottom)$/i,getLayoutTargetSize:function(){var a=this.container.getLayoutTarget(),b={};a&&(b=a.getViewSize(),Ext.isIE&&(Ext.isStrict&&0==b.width)&&(b=a.getStyleSize()),b.width-=a.getPadding("lr"),b.height-=a.getPadding("tb"));return b},onLayout:function(a,b){Ext.layout.AnchorLayout.superclass.onLayout.call(this,a,b);var c=this.getLayoutTargetSize(),d=c.width, +e=c.height,g=b.getStyle("overflow"),h=this.getRenderedItems(a),j=h.length,k=[],l,m,q,r,n,s,x;if(!(20>d&&20>e)){a.anchorSize?"number"==typeof a.anchorSize?l=a.anchorSize:(l=a.anchorSize.width,m=a.anchorSize.height):(l=a.initialConfig.width,m=a.initialConfig.height);for(x=0;x<j;x++){q=h[x];s=q.getPositionEl();if(!q.anchor&&q.items&&!Ext.isNumber(q.width)&&(!Ext.isIE6||!Ext.isStrict))q.anchor=this.defaultAnchor;if(q.anchor&&(r=q.anchorSpec,r||(n=q.anchor.split(" "),q.anchorSpec=r={right:this.parseAnchor(n[0], +q.initialConfig.width,l),bottom:this.parseAnchor(n[1],q.initialConfig.height,m)}),n=r.right?this.adjustWidthAnchor(r.right(d)-s.getMargins("lr"),q):void 0,s=r.bottom?this.adjustHeightAnchor(r.bottom(e)-s.getMargins("tb"),q):void 0,n||s))k.push({component:q,width:n||void 0,height:s||void 0})}x=0;for(j=k.length;x<j;x++)d=k[x],d.component.setSize(d.width,d.height);if(g&&("hidden"!=g&&!this.adjustmentPass)&&(g=this.getLayoutTargetSize(),g.width!=c.width||g.height!=c.height))this.adjustmentPass=!0,this.onLayout(a, +b);delete this.adjustmentPass}},parseAnchor:function(a,b,c){if(a&&"none"!=a){var d;if(this.parseAnchorRE.test(a)){var e=c-b;return function(a){if(a!==d)return d=a,a-e}}if(-1!=a.indexOf("%")){var g=0.01*parseFloat(a.replace("%",""));return function(a){if(a!==d)return d=a,Math.floor(a*g)}}a=parseInt(a,10);if(!isNaN(a))return function(b){if(b!==d)return d=b,b+a}}return!1},adjustWidthAnchor:function(a){return a},adjustHeightAnchor:function(a){return a}});Ext.Container.LAYOUTS.anchor=Ext.layout.AnchorLayout; +Ext.layout.ColumnLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:!0,type:"column",extraCls:"x-column",scrollOffset:0,targetCls:"x-column-layout-ct",isValidParent:function(a){return this.innerCt&&a.getPositionEl().dom.parentNode==this.innerCt.dom},getLayoutTargetSize:function(){var a=this.container.getLayoutTarget(),b;a&&(b=a.getViewSize(),Ext.isIE&&(Ext.isStrict&&0==b.width)&&(b=a.getStyleSize()),b.width-=a.getPadding("lr"),b.height-=a.getPadding("tb"));return b},renderAll:function(a, +b){this.innerCt||(this.innerCt=b.createChild({cls:"x-column-inner"}),this.innerCt.createChild({cls:"x-clear"}));Ext.layout.ColumnLayout.superclass.renderAll.call(this,a,this.innerCt)},onLayout:function(a,b){var c=a.items.items,d=c.length,e,g,h,j=[];this.renderAll(a,b);var k=this.getLayoutTargetSize();if(!(1>k.width&&1>k.height)){var l=e=k.width-this.scrollOffset;this.innerCt.setWidth(e);for(g=0;g<d;g++)e=c[g],h=e.getPositionEl().getMargins("lr"),j[g]=h,e.columnWidth||(l-=e.getWidth()+h);l=0>l?0:l; +for(g=0;g<d;g++)e=c[g],h=j[g],e.columnWidth&&e.setSize(Math.floor(e.columnWidth*l)-h);Ext.isIE&&(b.getStyle("overflow")&&("hidden"!=g&&!this.adjustmentPass)&&this.getLayoutTargetSize().width!=k.width)&&(this.adjustmentPass=!0,this.onLayout(a,b));delete this.adjustmentPass}}});Ext.Container.LAYOUTS.column=Ext.layout.ColumnLayout; +Ext.layout.BorderLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:!0,rendered:!1,type:"border",targetCls:"x-border-layout-ct",getLayoutTargetSize:function(){var a=this.container.getLayoutTarget();return a?a.getViewSize():{}},onLayout:function(a,b){var c,d,e,g,h=a.items.items,j=h.length;if(!this.rendered){c=[];for(d=0;d<j;d++)e=h[d],g=e.region,e.collapsed&&c.push(e),e.collapsed=!1,e.rendered||(e.render(b,d),e.getPositionEl().addClass("x-border-panel")),this[g]="center"!=g&&e.split?new Ext.layout.BorderLayout.SplitRegion(this, +e.initialConfig,g):new Ext.layout.BorderLayout.Region(this,e.initialConfig,g),this[g].render(b,e);this.rendered=!0}g=this.getLayoutTargetSize();if(20>g.width||20>g.height)c&&(this.restoreCollapsed=c);else{this.restoreCollapsed&&(c=this.restoreCollapsed,delete this.restoreCollapsed);var j=g.width,k=g.height,h=j,l=k,m=0,q=0,r=this.north,n=this.south,s=this.west,x=this.east;e=this.center;var u,p;if(!e&&!1!==Ext.layout.BorderLayout.WARN)throw"No center region defined in BorderLayout "+a.id;r&&r.isVisible()&& +(u=r.getSize(),p=r.getMargins(),u.width=j-(p.left+p.right),u.x=p.left,u.y=p.top,m=u.height+u.y+p.bottom,l-=m,r.applyLayout(u));n&&n.isVisible()&&(u=n.getSize(),p=n.getMargins(),u.width=j-(p.left+p.right),u.x=p.left,r=u.height+p.top+p.bottom,u.y=k-r+p.top,l-=r,n.applyLayout(u));s&&s.isVisible()&&(u=s.getSize(),p=s.getMargins(),u.height=l-(p.top+p.bottom),u.x=p.left,u.y=m+p.top,k=u.width+p.left+p.right,q+=k,h-=k,s.applyLayout(u));x&&x.isVisible()&&(u=x.getSize(),p=x.getMargins(),u.height=l-(p.top+p.bottom), +k=u.width+p.left+p.right,u.x=j-k+p.left,u.y=m+p.top,h-=k,x.applyLayout(u));e&&(p=e.getMargins(),e.applyLayout({x:q+p.left,y:m+p.top,width:h-(p.left+p.right),height:l-(p.top+p.bottom)}));if(c){d=0;for(j=c.length;d<j;d++)c[d].collapse(!1)}Ext.isIE&&Ext.isStrict&&b.repaint();if(b.getStyle("overflow")&&("hidden"!=d&&!this.adjustmentPass)&&(c=this.getLayoutTargetSize(),c.width!=g.width||c.height!=g.height))this.adjustmentPass=!0,this.onLayout(a,b);delete this.adjustmentPass}},destroy:function(){var a= +["north","south","east","west"],b,c;for(b=0;b<a.length;b++)(c=this[a[b]])&&(c.destroy?c.destroy():c.split&&c.split.destroy(!0));Ext.layout.BorderLayout.superclass.destroy.call(this)}}); +Ext.layout.BorderLayout.Region=function(a,b,c){Ext.apply(this,b);this.layout=a;this.position=c;this.state={};"string"==typeof this.margins&&(this.margins=this.layout.parseMargins(this.margins));this.margins=Ext.applyIf(this.margins||{},this.defaultMargins);this.collapsible&&("string"==typeof this.cmargins&&(this.cmargins=this.layout.parseMargins(this.cmargins)),this.cmargins="mini"==this.collapseMode&&!this.cmargins?{left:0,top:0,right:0,bottom:0}:Ext.applyIf(this.cmargins||{},"north"==c||"south"== +c?this.defaultNSCMargins:this.defaultEWCMargins))}; +Ext.layout.BorderLayout.Region.prototype={collapsible:!1,split:!1,floatable:!0,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:!1,render:function(a,b){this.panel=b;b.el.enableDisplayMode();this.targetEl=a;this.el=b.el;var c=b.getState,d=this.position;b.getState=function(){return Ext.apply(c.call(b)||{},this.state)}.createDelegate(this);if("center"!= +d){b.allowQueuedExpand=!1;b.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)b.collapseEl="el",b.slideAnchor=this.getSlideAnchor();b.tools&&b.tools.toggle&&(b.tools.toggle.addClass("x-tool-collapse-"+d),b.tools.toggle.addClassOnOver("x-tool-collapse-"+d+"-over"))}},getCollapsedEl:function(){if(!this.collapsedEl){if(!this.toolTemplate){var a=new Ext.Template('<div class="x-tool x-tool-{id}"> </div>'); +a.disableFormats=!0;a.compile();Ext.layout.BorderLayout.Region.prototype.toolTemplate=a}this.collapsedEl=this.targetEl.createChild({cls:"x-layout-collapsed x-layout-collapsed-"+this.position,id:this.panel.id+"-xcollapsed"});this.collapsedEl.enableDisplayMode("block");if("mini"==this.collapseMode)this.collapsedEl.addClass("x-layout-cmini-"+this.position),this.miniCollapsedEl=this.collapsedEl.createChild({cls:"x-layout-mini x-layout-mini-"+this.position,html:" "}),this.miniCollapsedEl.addClassOnOver("x-layout-mini-over"), +this.collapsedEl.addClassOnOver("x-layout-collapsed-over"),this.collapsedEl.on("click",this.onExpandClick,this,{stopEvent:!0});else if(!1!==this.collapsible&&!this.hideCollapseTool&&(a=this.expandToolEl=this.toolTemplate.append(this.collapsedEl.dom,{id:"expand-"+this.position},!0),a.addClassOnOver("x-tool-expand-"+this.position+"-over"),a.on("click",this.onExpandClick,this,{stopEvent:!0})),!1!==this.floatable||this.titleCollapse)this.collapsedEl.addClassOnOver("x-layout-collapsed-over"),this.collapsedEl.on("click", +this[this.floatable?"collapseClick":"onExpandClick"],this)}return this.collapsedEl},onExpandClick:function(){this.isSlid?this.panel.expand(!1):this.panel.expand()},onCollapseClick:function(){this.panel.collapse()},beforeCollapse:function(a,b){this.lastAnim=b;this.splitEl&&this.splitEl.hide();this.getCollapsedEl().show();var c=this.panel.getEl();this.originalZIndex=c.getStyle("z-index");c.setStyle("z-index",100);this.isCollapsed=!0;this.layout.layout()},onCollapse:function(){this.panel.el.setStyle("z-index", +1);!1===this.lastAnim||!1===this.panel.animCollapse?this.getCollapsedEl().dom.style.visibility="visible":this.getCollapsedEl().slideIn(this.panel.slideAnchor,{duration:0.2});this.state.collapsed=!0;this.panel.saveState()},beforeExpand:function(){this.isSlid&&this.afterSlideIn();var a=this.getCollapsedEl();this.el.show();"east"==this.position||"west"==this.position?this.panel.setSize(void 0,a.getHeight()):this.panel.setSize(a.getWidth(),void 0);a.hide();a.dom.style.visibility="hidden";this.panel.el.setStyle("z-index", +this.floatingZIndex)},onExpand:function(){this.isCollapsed=!1;this.splitEl&&this.splitEl.show();this.layout.layout();this.panel.el.setStyle("z-index",this.originalZIndex);this.state.collapsed=!1;this.panel.saveState()},collapseClick:function(a){this.isSlid?(a.stopPropagation(),this.slideIn()):(a.stopPropagation(),this.slideOut())},onHide:function(){this.isCollapsed?this.getCollapsedEl().hide():this.splitEl&&this.splitEl.hide()},onShow:function(){this.isCollapsed?this.getCollapsedEl().show():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){this.isCollapsed? +this.applyLayoutCollapsed(a):(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(){!1!==this.autoHide&&(this.autoHideHd||(this.autoHideSlideTask=new Ext.util.DelayedTask(this.slideIn,this),this.autoHideHd={mouseout:function(a){a.within(this.el,!0)||this.autoHideSlideTask.delay(500)},mouseover:function(){this.autoHideSlideTask.cancel()},scope:this}),this.el.on(this.autoHideHd), +this.collapsedEl.on(this.autoHideHd))},clearAutoHide:function(){!1!==this.autoHide&&(this.el.un("mouseout",this.autoHideHd.mouseout),this.el.un("mouseover",this.autoHideHd.mouseover),this.collapsedEl.un("mouseout",this.autoHideHd.mouseout),this.collapsedEl.un("mouseover",this.autoHideHd.mouseover))},clearMonitor:function(){Ext.getDoc().un("click",this.slideInIf,this)},slideOut:function(){if(!this.isSlid&&!this.el.hasActiveFx()){this.isSlid=!0;var a=this.panel.tools,b;a&&a.toggle&&a.toggle.hide(); +this.el.show();b=this.panel.collapsed;this.panel.collapsed=!1;"east"==this.position||"west"==this.position?(a=this.panel.deferHeight,this.panel.deferHeight=!1,this.panel.setSize(void 0,this.collapsedEl.getHeight()),this.panel.deferHeight=a):this.panel.setSize(this.collapsedEl.getWidth(),void 0);this.panel.collapsed=b;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");!1!==this.animFloat?(this.beforeSlide(),this.el.slideIn(this.getSlideAnchor(),{callback:function(){this.afterSlide();this.initAutoHide();Ext.getDoc().on("click",this.slideInIf,this)},scope:this,block:!0})):(this.initAutoHide(),Ext.getDoc().on("click",this.slideInIf,this))}},afterSlideIn:function(){this.clearAutoHide();this.isSlid=!1;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;a&&a.toggle&&a.toggle.show()},slideIn:function(a){!this.isSlid||this.el.hasActiveFx()?Ext.callback(a):(this.isSlid=!1,!1!==this.animFloat?(this.beforeSlide(),this.el.slideOut(this.getSlideAnchor(),{callback:function(){this.el.hide();this.afterSlide();this.afterSlideIn();Ext.callback(a)},scope:this,block:!0})):(this.el.hide(),this.afterSlideIn()))},slideInIf:function(a){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(){switch(this.position){case "west":return[0,0];case "east":return[0,0];case "north":return[0,0];case "south":return[0,0]}},getExpandAdj:function(){var a= +this.collapsedEl,b=this.cmargins;switch(this.position){case "west":return[-(b.right+a.getWidth()+b.left),0];case "east":return[b.right+a.getWidth()+b.left,0];case "north":return[0,-(b.top+b.bottom+a.getHeight())];case "south":return[0,b.top+b.bottom+a.getHeight()]}},destroy:function(){this.autoHideSlideTask&&this.autoHideSlideTask.cancel&&this.autoHideSlideTask.cancel();Ext.destroyMembers(this,"miniCollapsedEl","collapsedEl","expandToolEl")}}; +Ext.layout.BorderLayout.SplitRegion=function(a,b,c){Ext.layout.BorderLayout.SplitRegion.superclass.constructor.call(this,a,b,c);this.applyLayout=this.applyFns[c]}; +Ext.extend(Ext.layout.BorderLayout.SplitRegion,Ext.layout.BorderLayout.Region,{splitTip:"Drag to resize.",collapsibleSplitTip:"Drag to resize. Double click to hide.",useSplitTips:!1,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(a){if(this.isCollapsed)return this.applyLayoutCollapsed(a);var b=this.splitEl.dom,c=b.style;this.panel.setPosition(a.x,a.y);b=b.offsetWidth;c.left=a.x+a.width-b+"px";c.top=a.y+"px";c.height=Math.max(0,a.height)+"px";this.panel.setSize(a.width-b,a.height)},east:function(a){if(this.isCollapsed)return this.applyLayoutCollapsed(a); +var b=this.splitEl.dom,c=b.style,b=b.offsetWidth;this.panel.setPosition(a.x+b,a.y);c.left=a.x+"px";c.top=a.y+"px";c.height=Math.max(0,a.height)+"px";this.panel.setSize(a.width-b,a.height)},north:function(a){if(this.isCollapsed)return this.applyLayoutCollapsed(a);var b=this.splitEl.dom,c=b.style,b=b.offsetHeight;this.panel.setPosition(a.x,a.y);c.left=a.x+"px";c.top=a.y+a.height-b+"px";c.width=Math.max(0,a.width)+"px";this.panel.setSize(a.width,a.height-b)},south:function(a){if(this.isCollapsed)return this.applyLayoutCollapsed(a); +var b=this.splitEl.dom,c=b.style,b=b.offsetHeight;this.panel.setPosition(a.x,a.y+b);c.left=a.x+"px";c.top=a.y+"px";c.width=Math.max(0,a.width)+"px";this.panel.setSize(a.width,a.height-b)}},render:function(a,b){Ext.layout.BorderLayout.SplitRegion.superclass.render.call(this,a,b);var c=this.position;this.splitEl=a.createChild({cls:"x-layout-split x-layout-split-"+c,html:" ",id:this.panel.id+"-xsplit"});"mini"==this.collapseMode&&(this.miniSplitEl=this.splitEl.createChild({cls:"x-layout-mini x-layout-mini-"+ +c,html:" "}),this.miniSplitEl.addClassOnOver("x-layout-mini-over"),this.miniSplitEl.on("click",this.onCollapseClick,this,{stopEvent:!0}));c=this.splitSettings[c];this.split=new Ext.SplitBar(this.splitEl.dom,b.el,c.orientation);this.split.tickSize=this.tickSize;this.split.placement=c.placement;this.split.getMaximumSize=this[c.maxFn].createDelegate(this);this.split.minSize=this.minSize||this[c.minProp];this.split.on("beforeapply",this.onSplitMove,this);this.split.useShim=!0===this.useShim;this.maxSize= +this.maxSize||this[c.maxProp];b.hidden&&this.splitEl.hide();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();"north"==this.position||"south"==this.position?a.height+=this.splitEl.dom.offsetHeight:a.width+=this.splitEl.dom.offsetWidth;return a},getHMaxSize:function(){var a=this.layout.center; +return Math.min(this.maxSize||1E4,this.el.getWidth()+a.el.getWidth()-a.getMinWidth())},getVMaxSize:function(){var a=this.layout.center;return Math.min(this.maxSize||1E4,this.el.getHeight()+a.el.getHeight()-a.getMinHeight())},onSplitMove:function(a,b){var c=this.panel.getSize();this.lastSplitSize=b;"north"==this.position||"south"==this.position?(this.panel.setSize(c.width,b),this.state.height=b):(this.panel.setSize(b,c.height),this.state.width=b);this.layout.layout();this.panel.saveState();return!1}, +getSplitBar:function(){return this.split},destroy:function(){Ext.destroy(this.miniSplitEl,this.split,this.splitEl);Ext.layout.BorderLayout.SplitRegion.superclass.destroy.call(this)}});Ext.Container.LAYOUTS.border=Ext.layout.BorderLayout; +Ext.layout.FormLayout=Ext.extend(Ext.layout.AnchorLayout,{labelSeparator:":",trackLabels:!0,type:"form",onRemove:function(a){Ext.layout.FormLayout.superclass.onRemove.call(this,a);this.trackLabels&&(a.un("show",this.onFieldShow,this),a.un("hide",this.onFieldHide,this));var b=a.getPositionEl(),c=a.getItemCt&&a.getItemCt();a.rendered&&c&&(b&&b.dom&&b.insertAfter(c),Ext.destroy(c),Ext.destroyMembers(a,"label","itemCt"),a.customItemCt&&Ext.destroyMembers(a,"getItemCt","customItemCt"))},setContainer:function(a){Ext.layout.FormLayout.superclass.setContainer.call(this, +a);a.labelAlign&&a.addClass("x-form-label-"+a.labelAlign);if(a.hideLabels)Ext.apply(this,{labelStyle:"display:none",elementStyle:"padding-left:0;",labelAdjust:0});else{this.labelSeparator=Ext.isDefined(a.labelSeparator)?a.labelSeparator:this.labelSeparator;a.labelWidth=a.labelWidth||100;if(Ext.isNumber(a.labelWidth)){var b=Ext.isNumber(a.labelPad)?a.labelPad:5;Ext.apply(this,{labelAdjust:a.labelWidth+b,labelStyle:"width:"+a.labelWidth+"px;",elementStyle:"padding-left:"+(a.labelWidth+b)+"px"})}"top"== +a.labelAlign&&Ext.apply(this,{labelStyle:"width:auto;",labelAdjust:0,elementStyle:"padding-left:0;"})}},isHide:function(a){return a.hideLabel||this.container.hideLabels},onFieldShow:function(a){a.getItemCt().removeClass("x-hide-"+a.hideMode);a.isComposite&&a.doLayout()},onFieldHide:function(a){a.getItemCt().addClass("x-hide-"+a.hideMode)},getLabelStyle:function(a){var b="";a=[this.labelStyle,a];for(var c=0,d=a.length;c<d;++c)a[c]&&(b+=a[c],";"!=b.substr(-1,1)&&(b+=";"));return b},renderItem:function(a, +b,c){if(a&&(a.isFormField||a.fieldLabel)&&"hidden"!=a.inputType){var d=this.getTemplateArgs(a);Ext.isNumber(b)&&(b=c.dom.childNodes[b]||null);a.itemCt=b?this.fieldTpl.insertBefore(b,d,!0):this.fieldTpl.append(c,d,!0);a.getItemCt||Ext.apply(a,{getItemCt:function(){return a.itemCt},customItemCt:!0});a.label=a.getItemCt().child("label.x-form-item-label");a.rendered?this.isValidParent(a,c)||Ext.fly("x-form-el-"+a.id).appendChild(a.getPositionEl()):a.render("x-form-el-"+a.id);if(this.trackLabels){if(a.hidden)this.onFieldHide(a); +a.on({scope:this,show:this.onFieldShow,hide:this.onFieldHide})}this.configureItem(a)}else Ext.layout.FormLayout.superclass.renderItem.apply(this,arguments)},getTemplateArgs:function(a){var b=!a.fieldLabel||a.hideLabel;return{id:a.id,label:a.fieldLabel,itemCls:(a.itemCls||this.container.itemCls||"")+(a.hideLabel?" x-hide-label":""),clearCls:a.clearCls||"x-form-clear-left",labelStyle:this.getLabelStyle(a.labelStyle),elementStyle:this.elementStyle||"",labelSeparator:b?"":Ext.isDefined(a.labelSeparator)? +a.labelSeparator:this.labelSeparator}},adjustWidthAnchor:function(a,b){return b.label&&!this.isHide(b)&&"top"!=this.container.labelAlign?a-this.labelAdjust+(Ext.isIE6||Ext.isIE&&!Ext.isStrict?-3:0):a},adjustHeightAnchor:function(a,b){return b.label&&!this.isHide(b)&&"top"==this.container.labelAlign?a-b.label.getHeight():a},isValidParent:function(a,b){return b&&this.container.getEl().contains(a.getPositionEl())}});Ext.Container.LAYOUTS.form=Ext.layout.FormLayout; +Ext.layout.AccordionLayout=Ext.extend(Ext.layout.FitLayout,{fill:!0,autoWidth:!0,titleCollapse:!0,hideCollapseTool:!1,collapseFirst:!1,animate:!1,sequence:!1,activeOnTop:!1,type:"accordion",renderItem:function(a){!1===this.animate&&(a.animCollapse=!1);a.collapsible=!0;this.autoWidth&&(a.autoWidth=!0);this.titleCollapse&&(a.titleCollapse=!0);this.hideCollapseTool&&(a.hideCollapseTool=!0);void 0!==this.collapseFirst&&(a.collapseFirst=this.collapseFirst);!this.activeItem&&!a.collapsed?this.setActiveItem(a, +!0):this.activeItem&&this.activeItem!=a&&(a.collapsed=!0);Ext.layout.AccordionLayout.superclass.renderItem.apply(this,arguments);a.header.addClass("x-accordion-hd");a.on("beforeexpand",this.beforeExpand,this)},onRemove:function(a){Ext.layout.AccordionLayout.superclass.onRemove.call(this,a);a.rendered&&a.header.removeClass("x-accordion-hd");a.un("beforeexpand",this.beforeExpand,this)},beforeExpand:function(a,b){var c=this.activeItem;if(c)if(this.sequence){if(delete this.activeItem,!c.collapsed)return c.collapse({callback:function(){a.expand(b|| +!0)},scope:this}),!1}else c.collapse(this.animate);this.setActive(a);this.activeOnTop&&a.el.dom.parentNode.insertBefore(a.el.dom,a.el.dom.parentNode.firstChild);this.layout()},setItemSize:function(a,b){if(this.fill&&a){var c=0,d,e=this.getRenderedItems(this.container),g=e.length,h;for(d=0;d<g;d++)if((h=e[d])!=a&&!h.hidden)c+=h.header.getHeight();b.height-=c;a.setSize(b)}},setActiveItem:function(a){this.setActive(a,!0)},setActive:function(a,b){var c=this.activeItem;a=this.container.getComponent(a); +c!=a&&(a.rendered&&a.collapsed&&b?a.expand():(c&&c.fireEvent("deactivate",c),this.activeItem=a,a.fireEvent("activate",a)))}});Ext.Container.LAYOUTS.accordion=Ext.layout.AccordionLayout;Ext.layout.Accordion=Ext.layout.AccordionLayout; +Ext.layout.TableLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:!1,type:"table",targetCls:"x-table-layout-ct",tableAttrs:null,setContainer:function(a){Ext.layout.TableLayout.superclass.setContainer.call(this,a);this.currentColumn=this.currentRow=0;this.cells=[]},onLayout:function(a,b){this.table||(b.addClass("x-table-layout-ct"),this.table=b.createChild(Ext.apply({tag:"table",cls:"x-table-layout",cellspacing:0,cn:{tag:"tbody"}},this.tableAttrs),null,!0));this.renderAll(a,b)},getRow:function(a){a= +this.table.tBodies[0].childNodes[a];a||(a=document.createElement("tr"),this.table.tBodies[0].appendChild(a));return a},getNextCell:function(a){for(var b=this.getNextNonSpan(this.currentColumn,this.currentRow),c=this.currentColumn=b[0],d=b=this.currentRow=b[1];d<b+(a.rowspan||1);d++){this.cells[d]||(this.cells[d]=[]);for(var e=c;e<c+(a.colspan||1);e++)this.cells[d][e]=!0}c=document.createElement("td");a.cellId&&(c.id=a.cellId);d="x-table-layout-cell";a.cellCls&&(d+=" "+a.cellCls);c.className=d;a.colspan&& +(c.colSpan=a.colspan);a.rowspan&&(c.rowSpan=a.rowspan);this.getRow(b).appendChild(c);return c},getNextNonSpan:function(a,b){for(var c=this.columns;c&&a>=c||this.cells[b]&&this.cells[b][a];)c&&a>=c?(b++,a=0):a++;return[a,b]},renderItem:function(a,b,c){this.table||(this.table=c.createChild(Ext.apply({tag:"table",cls:"x-table-layout",cellspacing:0,cn:{tag:"tbody"}},this.tableAttrs),null,!0));a&&!a.rendered?(a.render(this.getNextCell(a)),this.configureItem(a)):a&&!this.isValidParent(a,c)&&(b=this.getNextCell(a), +b.insertBefore(a.getPositionEl().dom,null),a.container=Ext.get(b),this.configureItem(a))},isValidParent:function(a,b){return a.getPositionEl().up("table",5).dom.parentNode===(b.dom||b)},destroy:function(){delete this.table;Ext.layout.TableLayout.superclass.destroy.call(this)}});Ext.Container.LAYOUTS.table=Ext.layout.TableLayout; +Ext.layout.AbsoluteLayout=Ext.extend(Ext.layout.AnchorLayout,{extraCls:"x-abs-layout-item",type:"absolute",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(a,b){return a?a-b.getPosition(!0)[0]+this.paddingLeft:a},adjustHeightAnchor:function(a,b){return a?a-b.getPosition(!0)[1]+this.paddingTop:a}});Ext.Container.LAYOUTS.absolute=Ext.layout.AbsoluteLayout; +Ext.layout.BoxLayout=Ext.extend(Ext.layout.ContainerLayout,{defaultMargins:{left:0,top:0,right:0,bottom:0},padding:"0",pack:"start",monitorResize:!0,type:"box",scrollOffset:0,extraCls:"x-box-item",targetCls:"x-box-layout-ct",innerCls:"x-box-inner",constructor:function(a){Ext.layout.BoxLayout.superclass.constructor.call(this,a);Ext.isString(this.defaultMargins)&&(this.defaultMargins=this.parseMargins(this.defaultMargins));a=this.overflowHandler;"string"==typeof a&&(a={type:a});var b="none";a&&void 0!= +a.type&&(b=a.type);b=Ext.layout.boxOverflow[b];b[this.type]&&(b=b[this.type]);this.overflowHandler=new b(this,a)},onLayout:function(a,b){Ext.layout.BoxLayout.superclass.onLayout.call(this,a,b);var c=this.getLayoutTargetSize(),d=this.getVisibleItems(a),d=this.calculateChildBoxes(d,c),e=d.boxes,g=d.meta;if(0<c.width&&(g=this.overflowHandler[g.tooNarrow?"handleOverflow":"clearOverflow"](d,c)))g.targetSize&&(c=g.targetSize),g.recalculate&&(d=this.getVisibleItems(a),d=this.calculateChildBoxes(d,c),e=d.boxes); +this.layoutTargetLastSize=c;this.childBoxCache=d;this.updateInnerCtSize(c,d);this.updateChildBoxes(e);this.handleTargetOverflow(c,a,b)},updateChildBoxes:function(a){for(var b=0,c=a.length;b<c;b++){var d=a[b],e=d.component;d.dirtySize&&e.setSize(d.width,d.height);!isNaN(d.left)&&!isNaN(d.top)&&e.setPosition(d.left,d.top)}},updateInnerCtSize:function(a,b){var c=this.align,d=this.padding,e=a.width,g=a.height;if("hbox"==this.type){var h=e,j=b.meta.maxHeight+d.top+d.bottom;"stretch"==c?j=g:"middle"==c&& +(j=Math.max(g,j))}else j=g,h=b.meta.maxWidth+d.left+d.right,"stretch"==c?h=e:"center"==c&&(h=Math.max(e,h));this.innerCt.setSize(h||void 0,j||void 0)},handleTargetOverflow:function(a,b,c){var d=c.getStyle("overflow");if(d&&("hidden"!=d&&!this.adjustmentPass)&&(d=this.getLayoutTargetSize(),d.width!=a.width||d.height!=a.height))this.adjustmentPass=!0,this.onLayout(b,c);delete this.adjustmentPass},isValidParent:function(a){return this.innerCt&&a.getPositionEl().dom.parentNode==this.innerCt.dom},getVisibleItems:function(a){a= +a||this.container;var b=a.getLayoutTarget();a=a.items.items;var c=a.length,d,e,g=[];for(d=0;d<c;d++)(e=a[d]).rendered&&(this.isValidParent(e,b)&&!0!==e.hidden&&!0!==e.collapsed&&!1!==e.shouldLayout)&&g.push(e);return g},renderAll:function(a,b){this.innerCt||(this.innerCt=b.createChild({cls:this.innerCls}),this.padding=this.parseMargins(this.padding));Ext.layout.BoxLayout.superclass.renderAll.call(this,a,this.innerCt)},getLayoutTargetSize:function(){var a=this.container.getLayoutTarget(),b;a&&(b=a.getViewSize(), +Ext.isIE&&(Ext.isStrict&&0==b.width)&&(b=a.getStyleSize()),b.width-=a.getPadding("lr"),b.height-=a.getPadding("tb"));return b},renderItem:function(a){Ext.isString(a.margins)?a.margins=this.parseMargins(a.margins):a.margins||(a.margins=this.defaultMargins);Ext.layout.BoxLayout.superclass.renderItem.apply(this,arguments)},destroy:function(){Ext.destroy(this.overflowHandler);Ext.layout.BoxLayout.superclass.destroy.apply(this,arguments)}});Ext.ns("Ext.layout.boxOverflow"); +Ext.layout.boxOverflow.None=Ext.extend(Object,{constructor:function(a,b){this.layout=a;Ext.apply(this,b||{})},handleOverflow:Ext.emptyFn,clearOverflow:Ext.emptyFn});Ext.layout.boxOverflow.none=Ext.layout.boxOverflow.None; +Ext.layout.boxOverflow.Menu=Ext.extend(Ext.layout.boxOverflow.None,{afterCls:"x-strip-right",noItemsMenuText:'<div class="x-toolbar-no-items">(None)</div>',constructor:function(a){Ext.layout.boxOverflow.Menu.superclass.constructor.apply(this,arguments);this.menuItems=[]},createInnerElements:function(){this.afterCt||(this.afterCt=this.layout.innerCt.insertSibling({cls:this.afterCls},"before"))},clearOverflow:function(a,b){var c=b.width+(this.afterCt?this.afterCt.getWidth():0),d=this.menuItems;this.hideTrigger(); +for(var e=0,g=d.length;e<g;e++)d.pop().component.show();return{targetSize:{height:b.height,width:c}}},showTrigger:function(){this.createMenu();this.menuTrigger.show()},hideTrigger:function(){void 0!=this.menuTrigger&&this.menuTrigger.hide()},beforeMenuShow:function(a){var b=this.menuItems,c=b.length,d,e,g=function(a,b){return a.isXType("buttongroup")&&!(b instanceof Ext.Toolbar.Separator)};this.clearMenu();a.removeAll();for(var h=0;h<c;h++)d=b[h].component,e&&(g(d,e)||g(e,d))&&a.add("-"),this.addComponentToMenu(a, +d),e=d;1>a.items.length&&a.add(this.noItemsMenuText)},createMenuConfig:function(a,b){var c=Ext.apply({},a.initialConfig),d=a.toggleGroup;Ext.copyTo(c,a,"iconCls icon itemId disabled handler scope menu".split(" "));Ext.apply(c,{text:a.overflowText||a.text,hideOnClick:b});(d||a.enableToggle)&&Ext.apply(c,{group:d,checked:a.pressed,listeners:{checkchange:function(b,c){a.toggle(c)}}});delete c.ownerCt;delete c.xtype;delete c.id;return c},addComponentToMenu:function(a,b){b instanceof Ext.Toolbar.Separator? +a.add("-"):Ext.isFunction(b.isXType)&&(b.isXType("splitbutton")?a.add(this.createMenuConfig(b,!0)):b.isXType("button")?a.add(this.createMenuConfig(b,!b.menu)):b.isXType("buttongroup")&&b.items.each(function(b){this.addComponentToMenu(a,b)},this))},clearMenu:function(){var a=this.moreMenu;a&&a.items&&a.items.each(function(a){delete a.menu})},createMenu:function(){this.menuTrigger||(this.createInnerElements(),this.menu=new Ext.menu.Menu({ownerCt:this.layout.container,listeners:{scope:this,beforeshow:this.beforeMenuShow}}), +this.menuTrigger=new Ext.Button({iconCls:"x-toolbar-more-icon",cls:"x-toolbar-more",menu:this.menu,renderTo:this.afterCt}))},destroy:function(){Ext.destroy(this.menu,this.menuTrigger)}});Ext.layout.boxOverflow.menu=Ext.layout.boxOverflow.Menu; +Ext.layout.boxOverflow.HorizontalMenu=Ext.extend(Ext.layout.boxOverflow.Menu,{constructor:function(){Ext.layout.boxOverflow.HorizontalMenu.superclass.constructor.apply(this,arguments);var a=this,b=a.layout,c=b.calculateChildBoxes;b.calculateChildBoxes=function(d,e){for(var g=c.apply(b,arguments),h=g.meta,j=a.menuItems,k=0,l=0,m=j.length;l<m;l++)k+=j[l].width;h.minimumWidth+=k;h.tooNarrow=h.minimumWidth>e.width;return g}},handleOverflow:function(a,b){this.showTrigger();for(var c=b.width-this.afterCt.getWidth(), +d=a.boxes,e=0,g=!1,h=0,j=d.length;h<j;h++)e+=d[h].width;for(var e=c-e,k=0,h=0,j=this.menuItems.length;h<j;h++){var l=this.menuItems[h],m=l.component,l=l.width;if(l<e)m.show(),e-=l,k++,g=!0;else break}if(g)this.menuItems=this.menuItems.slice(k);else for(h=d.length-1;0<=h;h--)if(j=d[h].component,d[h].left+d[h].width>=c)this.menuItems.unshift({component:j,width:d[h].width}),j.hide();else break;0==this.menuItems.length&&this.hideTrigger();return{targetSize:{height:b.height,width:c},recalculate:g}}}); +Ext.layout.boxOverflow.menu.hbox=Ext.layout.boxOverflow.HorizontalMenu; +Ext.layout.boxOverflow.Scroller=Ext.extend(Ext.layout.boxOverflow.None,{animateScroll:!0,scrollIncrement:100,wheelIncrement:3,scrollRepeatInterval:400,scrollDuration:0.4,beforeCls:"x-strip-left",afterCls:"x-strip-right",scrollerCls:"x-strip-scroller",beforeScrollerCls:"x-strip-scroller-left",afterScrollerCls:"x-strip-scroller-right",createWheelListener:function(){this.layout.innerCt.on({scope:this,mousewheel:function(a){a.stopEvent();this.scrollBy(-1*a.getWheelDelta()*this.wheelIncrement,!1)}})}, +handleOverflow:function(){this.createInnerElements();this.showScrollers()},clearOverflow:function(){this.hideScrollers()},showScrollers:function(){this.createScrollers();this.beforeScroller.show();this.afterScroller.show();this.updateScrollButtons()},hideScrollers:function(){void 0!=this.beforeScroller&&(this.beforeScroller.hide(),this.afterScroller.hide())},createScrollers:function(){if(!this.beforeScroller&&!this.afterScroller){var a=this.beforeCt.createChild({cls:String.format("{0} {1} ",this.scrollerCls, +this.beforeScrollerCls)}),b=this.afterCt.createChild({cls:String.format("{0} {1}",this.scrollerCls,this.afterScrollerCls)});a.addClassOnOver(this.beforeScrollerCls+"-hover");b.addClassOnOver(this.afterScrollerCls+"-hover");a.setVisibilityMode(Ext.Element.DISPLAY);b.setVisibilityMode(Ext.Element.DISPLAY);this.beforeRepeater=new Ext.util.ClickRepeater(a,{interval:this.scrollRepeatInterval,handler:this.scrollLeft,scope:this});this.afterRepeater=new Ext.util.ClickRepeater(b,{interval:this.scrollRepeatInterval, +handler:this.scrollRight,scope:this});this.beforeScroller=a;this.afterScroller=b}},destroy:function(){Ext.destroy(this.beforeScroller,this.afterScroller,this.beforeRepeater,this.afterRepeater,this.beforeCt,this.afterCt)},scrollBy:function(a,b){this.scrollTo(this.getScrollPosition()+a,b)},getItem:function(a){Ext.isString(a)?a=Ext.getCmp(a):Ext.isNumber(a)&&(a=this.items[a]);return a},getScrollAnim:function(){return{duration:this.scrollDuration,callback:this.updateScrollButtons,scope:this}},updateScrollButtons:function(){if(!(void 0== +this.beforeScroller||void 0==this.afterScroller)){var a=this.atExtremeBefore()?"addClass":"removeClass",b=this.atExtremeAfter()?"addClass":"removeClass",c=this.afterScrollerCls+"-disabled";this.beforeScroller[a](this.beforeScrollerCls+"-disabled");this.afterScroller[b](c);this.scrolling=!1}},atExtremeBefore:function(){return 0===this.getScrollPosition()},scrollLeft:function(a){this.scrollBy(-this.scrollIncrement,a)},scrollRight:function(a){this.scrollBy(this.scrollIncrement,a)},scrollToItem:function(a, +b){a=this.getItem(a);if(void 0!=a){var c=this.getItemVisibility(a);if(!c.fullyVisible){var d=a.getBox(!0,!0),e=d.x;c.hiddenRight&&(e-=this.layout.innerCt.getWidth()-d.width);this.scrollTo(e,b)}}},getItemVisibility:function(a){var b=this.getItem(a).getBox(!0,!0);a=b.x;var b=b.x+b.width,c=this.getScrollPosition(),d=this.layout.innerCt.getWidth()+c;return{hiddenLeft:a<c,hiddenRight:b>d,fullyVisible:a>c&&b<d}}});Ext.layout.boxOverflow.scroller=Ext.layout.boxOverflow.Scroller; +Ext.layout.boxOverflow.VerticalScroller=Ext.extend(Ext.layout.boxOverflow.Scroller,{scrollIncrement:75,wheelIncrement:2,handleOverflow:function(a,b){Ext.layout.boxOverflow.VerticalScroller.superclass.handleOverflow.apply(this,arguments);return{targetSize:{height:b.height-(this.beforeCt.getHeight()+this.afterCt.getHeight()),width:b.width}}},createInnerElements:function(){var a=this.layout.innerCt;this.beforeCt||(this.beforeCt=a.insertSibling({cls:this.beforeCls},"before"),this.afterCt=a.insertSibling({cls:this.afterCls}, +"after"),this.createWheelListener())},scrollTo:function(a,b){var c=this.getScrollPosition(),d=a.constrain(0,this.getMaxScrollBottom());d!=c&&!this.scrolling&&(void 0==b&&(b=this.animateScroll),this.layout.innerCt.scrollTo("top",d,b?this.getScrollAnim():!1),b?this.scrolling=!0:(this.scrolling=!1,this.updateScrollButtons()))},getScrollPosition:function(){return parseInt(this.layout.innerCt.dom.scrollTop,10)||0},getMaxScrollBottom:function(){return this.layout.innerCt.dom.scrollHeight-this.layout.innerCt.getHeight()}, +atExtremeAfter:function(){return this.getScrollPosition()>=this.getMaxScrollBottom()}});Ext.layout.boxOverflow.scroller.vbox=Ext.layout.boxOverflow.VerticalScroller; +Ext.layout.boxOverflow.HorizontalScroller=Ext.extend(Ext.layout.boxOverflow.Scroller,{handleOverflow:function(a,b){Ext.layout.boxOverflow.HorizontalScroller.superclass.handleOverflow.apply(this,arguments);return{targetSize:{height:b.height,width:b.width-(this.beforeCt.getWidth()+this.afterCt.getWidth())}}},createInnerElements:function(){var a=this.layout.innerCt;this.beforeCt||(this.afterCt=a.insertSibling({cls:this.afterCls},"before"),this.beforeCt=a.insertSibling({cls:this.beforeCls},"before"), +this.createWheelListener())},scrollTo:function(a,b){var c=this.getScrollPosition(),d=a.constrain(0,this.getMaxScrollRight());d!=c&&!this.scrolling&&(void 0==b&&(b=this.animateScroll),this.layout.innerCt.scrollTo("left",d,b?this.getScrollAnim():!1),b?this.scrolling=!0:(this.scrolling=!1,this.updateScrollButtons()))},getScrollPosition:function(){return parseInt(this.layout.innerCt.dom.scrollLeft,10)||0},getMaxScrollRight:function(){return this.layout.innerCt.dom.scrollWidth-this.layout.innerCt.getWidth()}, +atExtremeAfter:function(){return this.getScrollPosition()>=this.getMaxScrollRight()}});Ext.layout.boxOverflow.scroller.hbox=Ext.layout.boxOverflow.HorizontalScroller; +Ext.layout.HBoxLayout=Ext.extend(Ext.layout.BoxLayout,{align:"top",type:"hbox",calculateChildBoxes:function(a,b){var c=a.length,d=this.padding,e=d.top,g=d.left,h=g+d.right,j=b.width-this.scrollOffset,d=Math.max(0,b.height-(e+d.bottom)),k="start"==this.pack,l="center"==this.pack,m="end"==this.pack,q=0,r=0,n=0,s=0,x=0,u=[],p,y,t,v,z,w,A;for(w=0;w<c;w++)p=a[w],t=p.height,y=p.width,z=!p.hasLayout&&"function"==typeof p.doLayout,"number"!=typeof y&&(p.flex&&!y?n+=p.flex:(!y&&z&&p.doLayout(),v=p.getSize(), +y=v.width,t=v.height)),v=p.margins,A=v.left+v.right,q+=A+(y||0),s+=A+(p.flex?p.minWidth||0:y),x+=A+(p.minWidth||y||0),"number"!=typeof t&&(z&&p.doLayout(),t=p.getHeight()),r=Math.max(r,t+v.top+v.bottom),u.push({component:p,height:t||void 0,width:y||void 0});p=s-j;y=x>j;h=Math.max(0,j-q-h);if(y)for(w=0;w<c;w++)u[w].width=a[w].minWidth||a[w].width||u[w].width;else if(0<p){k=[];w=0;for(v=c;w<v;w++)z=a[w],t=z.minWidth||0,z.flex?u[w].width=t:k.push({minWidth:t,available:u[w].width-t,index:w});k.sort(function(a, +b){return a.available>b.available?1:-1});w=0;for(v=k.length;w<v;w++)n=k[w].index,void 0!=n&&(z=a[n],A=u[n].width,t=z.minWidth,z=Math.max(t,A-Math.ceil(p/(v-w))),t=A-z,u[n].width=z,p-=t)}else{z=h;A=n;for(w=0;w<c;w++)p=a[w],n=u[w],v=p.margins,t=v.top+v.bottom,k&&(p.flex&&!p.width)&&(v=Math.ceil(p.flex/A*z),z-=v,A-=p.flex,n.width=v,n.dirtySize=!0)}l?g+=h/2:m&&(g+=h);for(w=0;w<c;w++){p=a[w];n=u[w];v=p.margins;g+=v.left;t=v.top+v.bottom;n.left=g;n.top=e+v.top;switch(this.align){case "stretch":l=d-t;n.height= +l.constrain(p.minHeight||0,p.maxHeight||1E6);n.dirtySize=!0;break;case "stretchmax":l=r-t;n.height=l.constrain(p.minHeight||0,p.maxHeight||1E6);n.dirtySize=!0;break;case "middle":l=d-n.height-t,0<l&&(n.top=e+t+l/2)}g+=n.width+v.right}return{boxes:u,meta:{maxHeight:r,nonFlexWidth:q,desiredWidth:s,minimumWidth:x,shortfall:s-j,tooNarrow:y}}}});Ext.Container.LAYOUTS.hbox=Ext.layout.HBoxLayout; +Ext.layout.VBoxLayout=Ext.extend(Ext.layout.BoxLayout,{align:"left",type:"vbox",calculateChildBoxes:function(a,b){var c=a.length,d=this.padding,e=d.top,g=d.left,h=e+d.bottom,j=b.height,d=Math.max(0,b.width-this.scrollOffset-(g+d.right)),k="start"==this.pack,l="center"==this.pack,m="end"==this.pack,q=0,r=0,n=0,s=0,x=0,u=[],p,y,t,v,z,w,A;for(w=0;w<c;w++)p=a[w],t=p.height,y=p.width,z=!p.hasLayout&&"function"==typeof p.doLayout,"number"!=typeof t&&(p.flex&&!t?n+=p.flex:(!t&&z&&p.doLayout(),v=p.getSize(), +y=v.width,t=v.height)),v=p.margins,A=v.top+v.bottom,q+=A+(t||0),s+=A+(p.flex?p.minHeight||0:t),x+=A+(p.minHeight||t||0),"number"!=typeof y&&(z&&p.doLayout(),y=p.getWidth()),r=Math.max(r,y+v.left+v.right),u.push({component:p,height:t||void 0,width:y||void 0});p=s-j;y=x>j;h=Math.max(0,j-q-h);if(y){w=0;for(v=c;w<v;w++)u[w].height=a[w].minHeight||a[w].height||u[w].height}else if(0<p){k=[];w=0;for(v=c;w<v;w++)z=a[w],t=z.minHeight||0,z.flex?u[w].height=t:k.push({minHeight:t,available:u[w].height-t,index:w}); +k.sort(function(a,b){return a.available>b.available?1:-1});w=0;for(v=k.length;w<v;w++)n=k[w].index,void 0!=n&&(z=a[n],A=u[n].height,t=z.minHeight,z=Math.max(t,A-Math.ceil(p/(v-w))),t=A-z,u[n].height=z,p-=t)}else{t=h;A=n;for(w=0;w<c;w++)p=a[w],n=u[w],v=p.margins,z=v.left+v.right,k&&(p.flex&&!p.height)&&(flexedHeight=Math.ceil(p.flex/A*t),t-=flexedHeight,A-=p.flex,n.height=flexedHeight,n.dirtySize=!0)}l?e+=h/2:m&&(e+=h);for(w=0;w<c;w++){p=a[w];n=u[w];v=p.margins;e+=v.top;z=v.left+v.right;n.left=g+v.left; +n.top=e;switch(this.align){case "stretch":l=d-z;n.width=l.constrain(p.minWidth||0,p.maxWidth||1E6);n.dirtySize=!0;break;case "stretchmax":l=r-z;n.width=l.constrain(p.minWidth||0,p.maxWidth||1E6);n.dirtySize=!0;break;case "center":l=d-n.width-z,0<l&&(n.left=g+z+l/2)}e+=n.height+v.bottom}return{boxes:u,meta:{maxWidth:r,nonFlexHeight:q,desiredHeight:s,minimumHeight:x,shortfall:s-j,tooNarrow:y}}}});Ext.Container.LAYOUTS.vbox=Ext.layout.VBoxLayout; +Ext.layout.ToolbarLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:!0,type:"toolbar",triggerWidth:18,noItemsMenuText:'<div class="x-toolbar-no-items">(None)</div>',lastOverflow:!1,tableHTML:'<table cellspacing="0" class="x-toolbar-ct"><tbody><tr><td class="x-toolbar-left" align="{0}"><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></table></td></tr></tbody></table>', +onLayout:function(a,b){if(!this.leftTr){var c="center"==a.buttonAlign?"center":"left";b.addClass("x-toolbar-layout-ct");b.insertHtml("beforeEnd",String.format(this.tableHTML,c));this.leftTr=b.child("tr.x-toolbar-left-row",!0);this.rightTr=b.child("tr.x-toolbar-right-row",!0);this.extrasTr=b.child("tr.x-toolbar-extras-row",!0);void 0==this.hiddenItem&&(this.hiddenItems=[])}for(var c="right"==a.buttonAlign?this.rightTr:this.leftTr,d=a.items.items,e=0,g=0,h=d.length,j;g<h;g++,e++)if(j=d[g],j.isFill)c= +this.rightTr,e=-1;else if(j.rendered){if(!j.xtbHidden&&!this.isValidParent(j,c.childNodes[e])){var k=this.insertCell(j,c,e);k.appendChild(j.getPositionEl().dom);j.container=Ext.get(k)}}else j.render(this.insertCell(j,c,e)),this.configureItem(j);this.cleanup(this.leftTr);this.cleanup(this.rightTr);this.cleanup(this.extrasTr);this.fitToSize(b)},cleanup:function(a){var b=a.childNodes,c,d;for(c=b.length-1;0<=c&&(d=b[c]);c--)d.firstChild||a.removeChild(d)},insertCell:function(a,b,c){a=document.createElement("td"); +a.className="x-toolbar-cell";b.insertBefore(a,b.childNodes[c]||null);return a},hideItem:function(a){this.hiddenItems.push(a);a.xtbHidden=!0;a.xtbWidth=a.getPositionEl().dom.parentNode.offsetWidth;a.hide()},unhideItem:function(a){a.show();a.xtbHidden=!1;this.hiddenItems.remove(a)},getItemWidth:function(a){return a.hidden?a.xtbWidth||0:a.getPositionEl().dom.parentNode.offsetWidth},fitToSize:function(a){if(!1!==this.container.enableOverflow){var b=a.dom.clientWidth,c=a.dom.firstChild.offsetWidth;a=b- +this.triggerWidth;var d=this.hiddenItems,e=0!=d.length,g=b>=(this.lastWidth||0);this.lastWidth=b;if(c>b||e&&g)for(var b=this.container.items.items,c=b.length,h=e=0;h<c;h++)g=b[h],g.isFill||(e+=this.getItemWidth(g),e>a?!g.hidden&&!g.xtbHidden&&this.hideItem(g):g.xtbHidden&&this.unhideItem(g));(e=0!=d.length)?(this.initMore(),this.lastOverflow||(this.container.fireEvent("overflowchange",this.container,!0),this.lastOverflow=!0)):this.more&&(this.clearMenu(),this.more.destroy(),delete this.more,this.lastOverflow&& +(this.container.fireEvent("overflowchange",this.container,!1),this.lastOverflow=!1))}},createMenuConfig:function(a,b){var c=Ext.apply({},a.initialConfig),d=a.toggleGroup;Ext.copyTo(c,a,"iconCls icon itemId disabled handler scope menu".split(" "));Ext.apply(c,{text:a.overflowText||a.text,hideOnClick:b});(d||a.enableToggle)&&Ext.apply(c,{group:d,checked:a.pressed,listeners:{checkchange:function(b,c){a.toggle(c)}}});delete c.ownerCt;delete c.xtype;delete c.id;return c},addComponentToMenu:function(a, +b){b instanceof Ext.Toolbar.Separator?a.add("-"):Ext.isFunction(b.isXType)&&(b.isXType("splitbutton")?a.add(this.createMenuConfig(b,!0)):b.isXType("button")?a.add(this.createMenuConfig(b,!b.menu)):b.isXType("buttongroup")&&b.items.each(function(b){this.addComponentToMenu(a,b)},this))},clearMenu:function(){var a=this.moreMenu;a&&a.items&&a.items.each(function(a){delete a.menu})},beforeMoreShow:function(a){var b=this.container.items.items,c=b.length,d,e,g=function(a,b){return a.isXType("buttongroup")&& +!(b instanceof Ext.Toolbar.Separator)};this.clearMenu();a.removeAll();for(var h=0;h<c;h++)d=b[h],d.xtbHidden&&(e&&(g(d,e)||g(e,d))&&a.add("-"),this.addComponentToMenu(a,d),e=d);1>a.items.length&&a.add(this.noItemsMenuText)},initMore:function(){if(!this.more){this.moreMenu=new Ext.menu.Menu({ownerCt:this.container,listeners:{beforeshow:this.beforeMoreShow,scope:this}});this.more=new Ext.Button({iconCls:"x-toolbar-more-icon",cls:"x-toolbar-more",menu:this.moreMenu,ownerCt:this.container});var a=this.insertCell(this.more, +this.extrasTr,100);this.more.render(a)}},destroy:function(){Ext.destroy(this.more,this.moreMenu);delete this.leftTr;delete this.rightTr;delete this.extrasTr;Ext.layout.ToolbarLayout.superclass.destroy.call(this)}});Ext.Container.LAYOUTS.toolbar=Ext.layout.ToolbarLayout; +Ext.layout.MenuLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:!0,type:"menu",setContainer:function(a){this.monitorResize=!a.floating;a.on("autosize",this.doAutoSize,this);Ext.layout.MenuLayout.superclass.setContainer.call(this,a)},renderItem:function(a,b,c){this.itemTpl||(this.itemTpl=Ext.layout.MenuLayout.prototype.itemTpl=new Ext.XTemplate('<li id="{itemId}" class="{itemCls}">','<tpl if="needsIcon">','<img alt="{altText}" src="{icon}" class="{iconCls}"/>',"</tpl>","</li>"));if(a&&!a.rendered){Ext.isNumber(b)&& +(b=c.dom.childNodes[b]);var d=this.getItemArgs(a);a.render(a.positionEl=b?this.itemTpl.insertBefore(b,d,!0):this.itemTpl.append(c,d,!0));a.positionEl.menuItemId=a.getItemId();!d.isMenuItem&&d.needsIcon&&a.positionEl.addClass("x-menu-list-item-indent");this.configureItem(a)}else a&&!this.isValidParent(a,c)&&(Ext.isNumber(b)&&(b=c.dom.childNodes[b]),c.dom.insertBefore(a.getActionEl().dom,b||null))},getItemArgs:function(a){var b=a instanceof Ext.menu.Item;return{isMenuItem:b,needsIcon:!(b||a instanceof +Ext.menu.Separator)&&(a.icon||a.iconCls),icon:a.icon||Ext.BLANK_IMAGE_URL,iconCls:"x-menu-item-icon "+(a.iconCls||""),itemId:"x-menu-el-"+a.id,itemCls:"x-menu-list-item ",altText:a.altText||""}},isValidParent:function(a,b){return a.el.up("li.x-menu-list-item",5).dom.parentNode===(b.dom||b)},onLayout:function(a,b){Ext.layout.MenuLayout.superclass.onLayout.call(this,a,b);this.doAutoSize()},doAutoSize:function(){var a=this.container,b=a.width;a.floating&&(b?a.setWidth(b):Ext.isIE&&(a.setWidth(Ext.isStrict&& +(Ext.isIE7||Ext.isIE8)?"auto":a.minWidth),b=a.getEl(),a.setWidth(a.getLayoutTarget().getWidth()+b.getFrameWidth("lr"))))}});Ext.Container.LAYOUTS.menu=Ext.layout.MenuLayout; +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=!1;this.autoHeight=this.autoWidth=!0;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.Panel=Ext.extend(Ext.Container,{baseCls:"x-panel",collapsedCls:"x-panel-collapsed",maskDisabled:!0,animCollapse:Ext.enableFx,headerAsText:!0,buttonAlign:"right",collapsed:!1,collapseFirst:!0,minButtonWidth:75,elements:"body",preventBodyReset:!1,padding:void 0,resizeEvent:"bodyresize",toolTarget:"header",collapseEl:"bwrap",slideAnchor:"t",disabledClass:"",deferHeight:!0,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");this.unstyled&&(this.baseCls="x-plain");this.toolbars=[];this.tbar&&(this.elements+=",tbar",this.topToolbar=this.createToolbar(this.tbar),this.tbar=null);this.bbar&&(this.elements+=",bbar",this.bottomToolbar=this.createToolbar(this.bbar),this.bbar=null);if(!0===this.header)this.elements+=",header",this.header=null;else if(this.headerCfg||this.title&&!1!==this.header)this.elements+= +",header";if(this.footerCfg||!0===this.footer)this.elements+=",footer",this.footer=null;this.buttons&&(this.fbar=this.buttons,this.buttons=null);this.fbar&&this.createFbar(this.fbar);if(this.autoLoad)this.on("render",this.doAutoLoad,this,{delay:10})},createFbar:function(a){var b=this.minButtonWidth;this.elements+=",footer";this.fbar=this.createToolbar(a,{buttonAlign:this.buttonAlign,toolbarCls:"x-panel-fbar",enableOverflow:!1,defaults:function(a){return{minWidth:a.minWidth||b}}});this.fbar.items.each(function(a){a.minWidth= +a.minWidth||this.minButtonWidth},this);this.buttons=this.fbar.items.items},createToolbar:function(a,b){var c;Ext.isArray(a)&&(a={items:a});c=a.events?Ext.apply(a,b):this.createComponent(Ext.apply({},a,b),"toolbar");this.toolbars.push(c);return c},createElement:function(a,b){if(this[a])b.appendChild(this[a].dom);else if("bwrap"===a||-1!=this.elements.indexOf(a)){if(this[a+"Cfg"])this[a]=Ext.fly(b).createChild(this[a+"Cfg"]);else{var c=document.createElement("div");c.className=this[a+"Cls"];this[a]= +Ext.get(b.appendChild(c))}this[a+"CssClass"]&&this[a].addClass(this[a+"CssClass"]);this[a+"Style"]&&this[a].applyStyles(this[a+"Style"])}},onRender:function(a,b){Ext.Panel.superclass.onRender.call(this,a,b);this.createClasses();var c=this.el,d=c.dom,e;this.collapsible&&!this.hideCollapseTool&&(this.tools=this.tools?this.tools.slice(0):[],this.tools[this.collapseFirst?"unshift":"push"]({id:"toggle",handler:this.toggleCollapse,scope:this}));this.tools&&(e=this.tools,this.elements+=!1!==this.header? +",header":"");this.tools={};c.addClass(this.baseCls);if(d.firstChild){this.header=c.down("."+this.headerCls);var g=(this.bwrap=c.down("."+this.bwrapCls))?this.bwrap:c;this.tbar=g.down("."+this.tbarCls);this.body=g.down("."+this.bodyCls);this.bbar=g.down("."+this.bbarCls);this.footer=g.down("."+this.footerCls);this.fromMarkup=!0}!0===this.preventBodyReset&&c.addClass("x-panel-reset");this.cls&&c.addClass(this.cls);this.buttons&&(this.elements+=",footer");this.frame?(c.insertHtml("afterBegin",String.format(Ext.Element.boxMarkup, +this.baseCls)),this.createElement("header",d.firstChild.firstChild.firstChild),this.createElement("bwrap",d),c=this.bwrap.dom,g=d.childNodes[2],c.appendChild(d.childNodes[1]),c.appendChild(g),d=c.firstChild.firstChild.firstChild,this.createElement("tbar",d),this.createElement("body",d),this.createElement("bbar",d),this.createElement("footer",c.lastChild.firstChild.firstChild),this.footer||(this.bwrap.dom.lastChild.className+=" x-panel-nofooter"),this.ft=Ext.get(this.bwrap.dom.lastChild),this.mc=Ext.get(d)): +(this.createElement("header",d),this.createElement("bwrap",d),c=this.bwrap.dom,this.createElement("tbar",c),this.createElement("body",c),this.createElement("bbar",c),this.createElement("footer",c),this.header||(this.body.addClass(this.bodyCls+"-noheader"),this.tbar&&this.tbar.addClass(this.tbarCls+"-noheader")));Ext.isDefined(this.padding)&&this.body.setStyle("padding",this.body.addUnits(this.padding));!1===this.border&&(this.el.addClass(this.baseCls+"-noborder"),this.body.addClass(this.bodyCls+"-noborder"), +this.header&&this.header.addClass(this.headerCls+"-noborder"),this.footer&&this.footer.addClass(this.footerCls+"-noborder"),this.tbar&&this.tbar.addClass(this.tbarCls+"-noborder"),this.bbar&&this.bbar.addClass(this.bbarCls+"-noborder"));!1===this.bodyBorder&&this.body.addClass(this.bodyCls+"-noborder");this.bwrap.enableDisplayMode("block");this.header&&(this.header.unselectable(),this.headerAsText&&(this.header.dom.innerHTML='<span class="'+this.headerTextCls+'">'+this.header.dom.innerHTML+"</span>", +this.iconCls&&this.setIconClass(this.iconCls)));this.floating&&this.makeFloating(this.floating);this.collapsible&&(this.titleCollapse&&this.header)&&(this.mon(this.header,"click",this.toggleCollapse,this),this.header.setStyle("cursor","pointer"));e&&this.addTool.apply(this,e);this.fbar&&(this.footer.addClass("x-panel-btns"),this.fbar.ownerCt=this,this.fbar.render(this.footer),this.footer.createChild({cls:"x-clear"}));this.tbar&&this.topToolbar&&(this.topToolbar.ownerCt=this,this.topToolbar.render(this.tbar)); +this.bbar&&this.bottomToolbar&&(this.bottomToolbar.ownerCt=this,this.bottomToolbar.render(this.bbar))},setIconClass:function(a){var b=this.iconCls;this.iconCls=a;if(this.rendered&&this.header)if(this.frame)this.header.addClass("x-panel-icon"),this.header.replaceClass(b,this.iconCls);else{var c=this.header,d=c.child("img.x-panel-inline-icon");d?Ext.fly(d).replaceClass(b,this.iconCls):(c=c.child("span."+this.headerTextCls))&&Ext.DomHelper.insertBefore(c.dom,{tag:"img",alt:"",src:Ext.BLANK_IMAGE_URL, +cls:"x-panel-inline-icon "+this.iconCls})}this.fireEvent("iconchange",this,a,b)},makeFloating:function(a){this.floating=!0;this.el=new Ext.Layer(Ext.apply({},a,{shadow:Ext.isDefined(this.shadow)?this.shadow:"sides",shadowOffset:this.shadowOffset,constrain:!1,shim:!1===this.shim?!1:void 0}),this.el)},getTopToolbar:function(){return this.topToolbar},getBottomToolbar:function(){return this.bottomToolbar},getFooterToolbar:function(){return this.fbar},addButton:function(a,b,c){this.fbar||this.createFbar([]); +b&&(Ext.isString(a)&&(a={text:a}),a=Ext.apply({handler:b,scope:c},a));return this.fbar.add(a)},addTool:function(){if(this.rendered){if(this[this.toolTarget]){if(!this.toolTemplate){var a=new Ext.Template('<div class="x-tool x-tool-{id}"> </div>');a.disableFormats=!0;a.compile();Ext.Panel.prototype.toolTemplate=a}for(var a=0,b=arguments,c=b.length;a<c;a++){var d=b[a];if(!this.tools[d.id]){var e="x-tool-"+d.id+"-over",g=this.toolTemplate.insertFirst(this[this.toolTarget],d,!0);this.tools[d.id]= +g;g.enableDisplayMode("block");this.mon(g,"click",this.createToolHandler(g,d,e,this));d.on&&this.mon(g,d.on);d.hidden&&g.hide();d.qtip&&(Ext.isObject(d.qtip)?Ext.QuickTips.register(Ext.apply({target:g.id},d.qtip)):g.dom.qtip=d.qtip);g.addClassOnOver(e)}}}}else this.tools||(this.tools=[]),Ext.each(arguments,function(a){this.tools.push(a)},this)},onLayout:function(a,b){Ext.Panel.superclass.onLayout.apply(this,arguments);this.hasLayout&&0<this.toolbars.length&&(Ext.each(this.toolbars,function(a){a.doLayout(void 0, +b)}),this.syncHeight())},syncHeight:function(){var a=this.toolbarHeight,b=this.body,c=this.lastSize.height;!this.autoHeight&&(Ext.isDefined(c)&&"auto"!=c)&&a!=this.getToolbarHeight()&&(a=Math.max(0,c-this.getFrameHeight()),b.setHeight(a),a=b.getSize(),this.toolbarHeight=this.getToolbarHeight(),this.onBodyResize(a.width,a.height))},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(a,b,c,d){return function(e){a.removeClass(c);!1!==b.stopEvent&&e.stopEvent();b.handler&&b.handler.call(b.scope||a,e,a,d,b)}},afterRender:function(){this.floating&&!this.hidden&&this.el.show();this.title&&this.setTitle(this.title);Ext.Panel.superclass.afterRender.call(this);this.collapsed&&(this.collapsed=!1,this.collapse(!1));this.initEvents()},getKeyMap:function(){this.keyMap||(this.keyMap=new Ext.KeyMap(this.el,this.keys));return this.keyMap},initEvents:function(){this.keys&& +this.getKeyMap();this.draggable&&this.initDraggable();0<this.toolbars.length&&(Ext.each(this.toolbars,function(a){a.doLayout();a.on({scope:this,afterlayout:this.syncHeight,remove:this.syncHeight})},this),this.syncHeight())},initDraggable:function(){this.dd=new Ext.Panel.DD(this,Ext.isBoolean(this.draggable)?null:this.draggable)},beforeEffect:function(a){this.floating&&this.el.beforeAction();!1!==a&&this.el.addClass("x-panel-animated")},afterEffect:function(){this.syncShadow();this.el.removeClass("x-panel-animated")}, +createEffect:function(a,b,c){var d={scope:c,block:!0};if(!0===a)return d.callback=b,d;d.callback=a.callback?function(){b.call(c);Ext.callback(a.callback,a.scope)}:b;return Ext.applyIf(d,a)},collapse:function(a){if(!this.collapsed&&!(this.el.hasFxBlock()||!1===this.fireEvent("beforecollapse",this,a))){var b=!0===a||!1!==a&&this.animCollapse;this.beforeEffect(b);this.onCollapse(b,a);return this}},onCollapse:function(a,b){a?this[this.collapseEl].slideOut(this.slideAnchor,Ext.apply(this.createEffect(b|| +!0,this.afterCollapse,this),this.collapseDefaults)):(this[this.collapseEl].hide(this.hideMode),this.afterCollapse(!1))},afterCollapse:function(a){this.collapsed=!0;this.el.addClass(this.collapsedCls);!1!==a&&this[this.collapseEl].hide(this.hideMode);this.afterEffect(a);this.cascade(function(a){a.lastSize&&(a.lastSize={width:void 0,height:void 0})});this.fireEvent("collapse",this)},expand:function(a){if(this.collapsed&&!(this.el.hasFxBlock()||!1===this.fireEvent("beforeexpand",this,a))){var b=!0=== +a||!1!==a&&this.animCollapse;this.el.removeClass(this.collapsedCls);this.beforeEffect(b);this.onExpand(b,a);return this}},onExpand:function(a,b){a?this[this.collapseEl].slideIn(this.slideAnchor,Ext.apply(this.createEffect(b||!0,this.afterExpand,this),this.expandDefaults)):(this[this.collapseEl].show(this.hideMode),this.afterExpand(!1))},afterExpand:function(a){this.collapsed=!1;!1!==a&&this[this.collapseEl].show(this.hideMode);this.afterEffect(a);this.deferLayout&&(delete this.deferLayout,this.doLayout(!0)); +this.fireEvent("expand",this)},toggleCollapse:function(a){this[this.collapsed?"expand":"collapse"](a);return this},onDisable:function(){this.rendered&&this.maskDisabled&&this.el.mask();Ext.Panel.superclass.onDisable.call(this)},onEnable:function(){this.rendered&&this.maskDisabled&&this.el.unmask();Ext.Panel.superclass.onEnable.call(this)},onResize:function(a,b,c,d){var e=a,g=b;if(Ext.isDefined(e)||Ext.isDefined(g))this.collapsed?(this.queuedBodySize={width:e,height:g},!this.queuedExpand&&!1!==this.allowQueuedExpand&& +(this.queuedExpand=!0,this.on("expand",function(){delete this.queuedExpand;this.onResize(this.queuedBodySize.width,this.queuedBodySize.height)},this,{single:!0}))):(Ext.isNumber(e)?this.body.setWidth(e=this.adjustBodyWidth(e-this.getFrameWidth())):e="auto"==e?this.body.setWidth("auto").dom.offsetWidth:this.body.dom.offsetWidth,this.tbar&&(this.tbar.setWidth(e),this.topToolbar&&this.topToolbar.setSize(e)),this.bbar&&(this.bbar.setWidth(e),this.bottomToolbar&&(this.bottomToolbar.setSize(e),Ext.isIE&& +(this.bbar.setStyle("position","static"),this.bbar.setStyle("position","")))),this.footer&&(this.footer.setWidth(e),this.fbar&&this.fbar.setSize(Ext.isIE?e-this.footer.getFrameWidth("lr"):"auto")),Ext.isNumber(g)?(g=Math.max(0,g-this.getFrameHeight()),this.body.setHeight(g)):"auto"==g&&this.body.setHeight(g),this.disabled&&this.el._mask&&this.el._mask.setSize(this.el.dom.clientWidth,this.el.getHeight())),this.onBodyResize(e,g);this.syncShadow();Ext.Panel.superclass.onResize.call(this,a,b,c,d)},onBodyResize:function(a, +b){this.fireEvent("bodyresize",this,a,b)},getToolbarHeight:function(){var a=0;this.rendered&&Ext.each(this.toolbars,function(b){a+=b.getHeight()},this);return a},adjustBodyHeight:function(a){return a},adjustBodyWidth:function(a){return a},onPosition:function(){this.syncShadow()},getFrameWidth:function(){var a=this.el.getFrameWidth("lr")+this.bwrap.getFrameWidth("lr");if(this.frame)var b=this.bwrap.dom.firstChild,a=a+(Ext.fly(b).getFrameWidth("l")+Ext.fly(b.firstChild).getFrameWidth("r")),a=a+this.mc.getFrameWidth("lr"); +return a},getFrameHeight:function(){var a=this.el.getFrameWidth("tb")+this.bwrap.getFrameWidth("tb"),a=a+((this.tbar?this.tbar.getHeight():0)+(this.bbar?this.bbar.getHeight():0));return a=this.frame?a+(this.el.dom.firstChild.offsetHeight+this.ft.dom.offsetHeight+this.mc.getFrameWidth("tb")):a+((this.header?this.header.getHeight():0)+(this.footer?this.footer.getHeight():0))},getInnerWidth:function(){return this.getSize().width-this.getFrameWidth()},getInnerHeight:function(){return this.body.getHeight()}, +syncShadow:function(){this.floating&&this.el.sync(!0)},getLayoutTarget:function(){return this.body},getContentTarget:function(){return this.body},setTitle:function(a,b){this.title=a;this.header&&this.headerAsText&&this.header.child("span").update(a);b&&this.setIconClass(b);this.fireEvent("titlechange",this,a);return this},getUpdater:function(){return this.body.getUpdater()},load:function(){var a=this.body.getUpdater();a.update.apply(a,arguments);return this},beforeDestroy:function(){Ext.Panel.superclass.beforeDestroy.call(this); +this.header&&this.header.removeAllListeners();if(this.tools)for(var a in this.tools)Ext.destroy(this.tools[a]);0<this.toolbars.length&&Ext.each(this.toolbars,function(a){a.un("afterlayout",this.syncHeight,this);a.un("remove",this.syncHeight,this)},this);if(Ext.isArray(this.buttons))for(;this.buttons.length;)Ext.destroy(this.buttons[0]);this.rendered&&(Ext.destroy(this.ft,this.header,this.footer,this.tbar,this.bbar,this.body,this.mc,this.bwrap,this.dd),this.fbar&&Ext.destroy(this.fbar,this.fbar.el)); +Ext.destroy(this.toolbars)},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,b,c){var d=document.createElement("div");d.className="x-panel-ghost "+(a?a:"");this.header&&d.appendChild(this.el.dom.firstChild.cloneNode(!0));Ext.fly(d.appendChild(document.createElement("ul"))).setHeight(this.bwrap.getHeight()); +d.style.width=this.el.dom.offsetWidth+"px";c?Ext.getDom(c).appendChild(d):this.container.dom.appendChild(d);return!1!==b&&!1!==this.el.useShim?(a=new Ext.Layer({shadow:!1,useDisplay:!0,constrain:!1},d),a.show(),a):new Ext.Element(d)},doAutoLoad:function(){var a=this.body.getUpdater();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.Editor=function(a,b){a.field?(this.field=Ext.create(a.field,"textfield"),b=Ext.apply({},a),delete b.field):this.field=a;Ext.Editor.superclass.constructor.call(this,b)}; +Ext.extend(Ext.Editor,Ext.Component,{allowBlur:!0,value:"",alignment:"c-c?",offsets:[0,0],shadow:"frame",constrain:!1,swallowKeys:!0,completeOnEnter:!0,cancelOnEsc:!0,updateEl:!1,initComponent:function(){Ext.Editor.superclass.initComponent.call(this);this.addEvents("beforestartedit","startedit","beforecomplete","complete","canceledit","specialkey")},onRender:function(a){this.el=new Ext.Layer({shadow:this.shadow,cls:"x-editor",parentEl:a,shim:this.shim,shadowOffset:this.shadowOffset||4,id:this.id, +constrain:this.constrain});this.zIndex&&this.el.setZIndex(this.zIndex);this.el.setStyle("overflow",Ext.isGecko?"auto":"hidden");"title"!=this.field.msgTarget&&(this.field.msgTarget="qtip");this.field.inEditor=!0;this.mon(this.field,{scope:this,blur:this.onBlur,specialkey:this.onSpecialKey});this.field.grow&&this.mon(this.field,"autosize",this.el.sync,this.el,{delay:1});this.field.render(this.el).show();this.field.getEl().dom.name="";this.swallowKeys&&this.field.el.swallowEvent(["keypress","keydown"])}, +onSpecialKey:function(a,b){var c=b.getKey(),d=this.completeOnEnter&&c==b.ENTER,c=this.cancelOnEsc&&c==b.ESC;if(d||c)b.stopEvent(),d?this.completeEdit():this.cancelEdit(),a.triggerBlur&&a.triggerBlur();this.fireEvent("specialkey",a,b)},startEdit:function(a,b){this.editing&&this.completeEdit();this.boundEl=Ext.get(a);var c=void 0!==b?b:this.boundEl.dom.innerHTML;this.rendered||this.render(this.parentEl||document.body);!1!==this.fireEvent("beforestartedit",this,this.boundEl,c)&&(this.startValue=c,this.field.reset(), +this.field.setValue(c),this.realign(!0),this.editing=!0,this.show())},doAutoSize:function(){if(this.autoSize){var a=this.boundEl.getSize(),b=this.field.getSize();switch(this.autoSize){case "width":this.setSize(a.width,b.height);break;case "height":this.setSize(b.width,a.height);break;case "none":this.setSize(b.width,b.height);break;default:this.setSize(a.width,a.height)}}},setSize:function(a,b){delete this.field.lastSize;this.field.setSize(a,b);this.el&&((Ext.isGecko2||Ext.isOpera||Ext.isIE7&&Ext.isStrict)&& +this.el.setSize(a,b),this.el.sync())},realign:function(a){!0===a&&this.doAutoSize();this.el.alignTo(this.boundEl,this.alignment,this.offsets)},completeEdit:function(a){if(this.editing){this.field.assertValue&&this.field.assertValue();var b=this.getValue();this.field.isValid()?String(b)===String(this.startValue)&&this.ignoreNoChange?this.hideEdit(a):!1!==this.fireEvent("beforecomplete",this,b,this.startValue)&&(b=this.getValue(),this.updateEl&&this.boundEl&&this.boundEl.update(b),this.hideEdit(a), +this.fireEvent("complete",this,b,this.startValue)):!1!==this.revertInvalid&&this.cancelEdit(a)}},onShow:function(){this.el.show();!1!==this.hideEl&&this.boundEl.hide();this.field.show().focus(!1,!0);this.fireEvent("startedit",this.boundEl,this.startValue)},cancelEdit:function(a){if(this.editing){var b=this.getValue();this.setValue(this.startValue);this.hideEdit(a);this.fireEvent("canceledit",this,b,this.startValue)}},hideEdit:function(a){!0!==a&&(this.editing=!1,this.hide())},onBlur:function(){!0=== +this.allowBlur&&(this.editing&&!0!==this.selectSameEditor)&&this.completeEdit()},onHide:function(){this.editing?this.completeEdit():(this.field.blur(),this.field.collapse&&this.field.collapse(),this.el.hide(),!1!==this.hideEl&&this.boundEl.show())},setValue:function(a){this.field.setValue(a)},getValue:function(){return this.field.getValue()},beforeDestroy:function(){Ext.destroyMembers(this,"field");delete this.parentEl;delete this.boundEl}});Ext.reg("editor",Ext.Editor); +Ext.ColorPalette=Ext.extend(Ext.Component,{itemCls:"x-color-palette",value:null,clickEvent:"click",ctype:"Ext.ColorPalette",allowReselect:!1,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".split(" "),initComponent:function(){Ext.ColorPalette.superclass.initComponent.call(this); +this.addEvents("select");if(this.handler)this.on("select",this.handler,this.scope,!0)},onRender:function(a,b){this.autoEl={tag:"div",cls:this.itemCls};Ext.ColorPalette.superclass.onRender.call(this,a,b);(this.tpl||new Ext.XTemplate('<tpl for="."><a href="#" class="color-{.}" hidefocus="on"><em><span style="background:#{.}" unselectable="on"> </span></em></a></tpl>')).overwrite(this.el,this.colors);this.mon(this.el,this.clickEvent,this.handleClick,this,{delegate:"a"});"click"!=this.clickEvent&& +this.mon(this.el,"click",Ext.emptyFn,this,{delegate:"a",preventDefault:!0})},afterRender:function(){Ext.ColorPalette.superclass.afterRender.call(this);if(this.value){var a=this.value;this.value=null;this.select(a,!0)}},handleClick:function(a,b){a.preventDefault();if(!this.disabled){var c=b.className.match(/(?:^|\s)color-(.{6})(?:\s|$)/)[1];this.select(c.toUpperCase())}},select:function(a,b){a=a.replace("#","");if(a!=this.value||this.allowReselect){var c=this.el;this.value&&c.child("a.color-"+this.value).removeClass("x-color-palette-sel"); +c.child("a.color-"+a).addClass("x-color-palette-sel");this.value=a;!0!==b&&this.fireEvent("select",this,a)}}});Ext.reg("colorpalette",Ext.ColorPalette); +Ext.DatePicker=Ext.extend(Ext.BoxComponent,{todayText:"Today",okText:" OK ",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:!0, +focusOnSelect:!0,initHour:12,initComponent:function(){Ext.DatePicker.superclass.initComponent.call(this);this.value=this.value?this.value.clearTime(!0):(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,b=a.length-1,c="(?:";Ext.each(a,function(d,e){c+=Ext.isDate(d)?"^"+Ext.escapeRe(d.dateFormat(this.format))+"$":a[e]; +e!=b&&(c+="|")},this);this.disabledDatesRE=RegExp(c+")")}},setDisabledDates:function(a){Ext.isArray(a)?(this.disabledDates=a,this.disabledDatesRE=null):this.disabledDatesRE=a;this.initDisabledDays();this.update(this.value,!0)},setDisabledDays:function(a){this.disabledDays=a;this.update(this.value,!0)},setMinDate:function(a){this.minDate=a;this.update(this.value,!0)},setMaxDate:function(a){this.maxDate=a;this.update(this.value,!0)},setValue:function(a){this.value=a.clearTime(!0);this.update(this.value)}, +getValue:function(){return this.value},focus:function(){this.update(this.activeDate)},onEnable:function(a){Ext.DatePicker.superclass.onEnable.call(this);this.doDisabled(!1);this.update(a?this.value:this.activeDate);Ext.isIE&&this.el.repaint()},onDisable:function(){Ext.DatePicker.superclass.onDisable.call(this);this.doDisabled(!0);Ext.isIE&&!Ext.isIE8&&Ext.each([].concat(this.textNodes,this.el.query("th span")),function(a){Ext.fly(a).repaint()})},doDisabled:function(a){this.keyNav.setDisabled(a);this.prevRepeater.setDisabled(a); +this.nextRepeater.setDisabled(a);this.showToday&&(this.todayKeyListener.setDisabled(a),this.todayBtn.setDisabled(a))},onRender:function(a,b){var c=['<table cellspacing="0">','<tr><td class="x-date-left"><a href="#" title="',this.prevText,'"> </a></td><td class="x-date-middle" align="center"></td><td class="x-date-right"><a href="#" title="',this.nextText,'"> </a></td></tr>','<tr><td colspan="3"><table class="x-date-inner" cellspacing="0"><thead><tr>'],d=this.dayNames,e;for(e=0;7>e;e++){var g= +this.startDay+e;6<g&&(g-=7);c.push("<th><span>",d[g].substr(0,1),"</span></th>")}c[c.length]="</tr></thead><tbody><tr>";for(e=0;42>e;e++)0===e%7&&0!==e&&(c[c.length]="</tr><tr>"),c[c.length]='<td><a href="#" hidefocus="on" class="x-date-date" tabIndex="1"><em><span></span></em></a></td>';c.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>');d=document.createElement("div");d.className= +"x-date-picker";d.innerHTML=c.join("");a.dom.insertBefore(d,b);this.el=Ext.get(d);this.eventEl=Ext.get(d.firstChild);this.prevRepeater=new Ext.util.ClickRepeater(this.el.child("td.x-date-left a"),{handler:this.showPrevMonth,scope:this,preventDefault:!0,stopDefault:!0});this.nextRepeater=new Ext.util.ClickRepeater(this.el.child("td.x-date-right a"),{handler:this.showNextMonth,scope:this,preventDefault:!0,stopDefault:!0});this.monthPicker=this.el.down("div.x-date-mp");this.monthPicker.enableDisplayMode("block"); +this.keyNav=new Ext.KeyNav(this.eventEl,{left:function(a){a.ctrlKey?this.showPrevMonth():this.update(this.activeDate.add("d",-1))},right:function(a){a.ctrlKey?this.showNextMonth():this.update(this.activeDate.add("d",1))},up:function(a){a.ctrlKey?this.showNextYear():this.update(this.activeDate.add("d",-7))},down:function(a){a.ctrlKey?this.showPrevYear():this.update(this.activeDate.add("d",7))},pageUp:function(){this.showNextMonth()},pageDown:function(){this.showPrevMonth()},enter:function(a){a.stopPropagation(); +return!0},scope:this});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:" ",tooltip:this.monthYearText,renderTo:this.el.child("td.x-date-middle",!0)});this.mbtn.el.child("em").addClass("x-btn-arrow");this.showToday&&(this.todayKeyListener=this.eventEl.addKeyListener(Ext.EventObject.SPACE,this.selectToday,this),c=(new Date).dateFormat(this.format),this.todayBtn=new Ext.Button({renderTo:this.el.child("td.x-date-bottom", +!0),text:String.format(this.todayText,c),tooltip:String.format(this.todayTip,c),handler:this.selectToday,scope:this}));this.mon(this.eventEl,"mousewheel",this.handleMouseWheel,this);this.mon(this.eventEl,"click",this.handleDateClick,this,{delegate:"a.x-date-date"});this.mon(this.mbtn,"click",this.showMonthPicker,this);this.onEnable(!0)},createMonthPicker:function(){if(!this.monthPicker.dom.firstChild){for(var a=['<table border="0" cellspacing="0">'],b=0;6>b;b++)a.push('<tr><td class="x-date-mp-month"><a href="#">', +Date.getShortMonthName(b),"</a></td>",'<td class="x-date-mp-month x-date-mp-sep"><a href="#">',Date.getShortMonthName(b+6),"</a></td>",0===b?'<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(a,b,e){e+=1;a.dom.xmonth=0===e%2?5+Math.round(0.5*e):Math.round(0.5*(e-1))})}}, +showMonthPicker:function(){if(!this.disabled){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(a){this.mpyear=a;for(var b=this.mpYears.elements,c=1;10>=c;c++){var d=b[c-1],e;e= +0===c%2?a+Math.round(0.5*c):a-(5-Math.round(0.5*c));d.firstChild.innerHTML=e;d.xyear=e;this.mpYears.item(c-1)[e==this.mpSelYear?"addClass":"removeClass"]("x-date-mp-sel")}},updateMPMonth:function(a){this.mpMonths.each(function(b){b[b.dom.xmonth==a?"addClass":"removeClass"]("x-date-mp-sel")})},selectMPMonth:function(){},onMonthClick:function(a,b){a.stopEvent();var c=new Ext.Element(b),d;c.is("button.x-date-mp-cancel")?this.hideMonthPicker():c.is("button.x-date-mp-ok")?(c=new Date(this.mpSelYear,this.mpSelMonth, +(this.activeDate||this.value).getDate()),c.getMonth()!=this.mpSelMonth&&(c=(new Date(this.mpSelYear,this.mpSelMonth,1)).getLastDateOfMonth()),this.update(c),this.hideMonthPicker()):(d=c.up("td.x-date-mp-month",2))?(this.mpMonths.removeClass("x-date-mp-sel"),d.addClass("x-date-mp-sel"),this.mpSelMonth=d.dom.xmonth):(d=c.up("td.x-date-mp-year",2))?(this.mpYears.removeClass("x-date-mp-sel"),d.addClass("x-date-mp-sel"),this.mpSelYear=d.dom.xyear):c.is("a.x-date-mp-prev")?this.updateMPYear(this.mpyear- +10):c.is("a.x-date-mp-next")&&this.updateMPYear(this.mpyear+10)},onMonthDblClick:function(a,b){a.stopEvent();var c=new Ext.Element(b),d;if(d=c.up("td.x-date-mp-month",2))this.update(new Date(this.mpSelYear,d.dom.xmonth,(this.activeDate||this.value).getDate())),this.hideMonthPicker();else if(d=c.up("td.x-date-mp-year",2))this.update(new Date(d.dom.xyear,this.mpSelMonth,(this.activeDate||this.value).getDate())),this.hideMonthPicker()},hideMonthPicker:function(a){this.monthPicker&&(!0===a?this.monthPicker.hide(): +this.monthPicker.slideOut("t",{duration:0.2}))},showPrevMonth:function(){this.update(this.activeDate.add("mo",-1))},showNextMonth:function(){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){a.stopEvent();this.disabled||(a=a.getWheelDelta(),0<a?this.showPrevMonth():0>a&&this.showNextMonth())},handleDateClick:function(a,b){a.stopEvent();!this.disabled&& +(b.dateValue&&!Ext.fly(b.parentNode).hasClass("x-date-disabled"))&&(this.cancelFocus=!1===this.focusOnSelect,this.setValue(new Date(b.dateValue)),delete this.cancelFocus,this.fireEvent("select",this,this.value))},selectToday:function(){this.todayBtn&&!this.todayBtn.disabled&&(this.setValue((new Date).clearTime()),this.fireEvent("select",this,this.value))},update:function(a,b){if(this.rendered){var c=this.activeDate,d=this.isVisible();this.activeDate=a;if(!b&&c&&this.el){var e=a.getTime();if(c.getMonth()== +a.getMonth()&&c.getFullYear()==a.getFullYear()){this.cells.removeClass("x-date-selected");this.cells.each(function(a){if(a.dom.firstChild.dateValue==e)return a.addClass("x-date-selected"),d&&!this.cancelFocus&&Ext.fly(a.dom.firstChild).focus(50),!1},this);return}}var g=a.getDaysInMonth(),h=a.getFirstDateOfMonth().getDay()-this.startDay;0>h&&(h+=7);var g=g+h,j=a.add("mo",-1),k=j.getDaysInMonth()-h,c=this.cells.elements,l=this.textNodes,m=new Date(j.getFullYear(),j.getMonth(),k,this.initHour),q=(new Date).clearTime().getTime(), +r=a.clearTime(!0).getTime(),n=this.minDate?this.minDate.clearTime(!0):Number.NEGATIVE_INFINITY,s=this.maxDate?this.maxDate.clearTime(!0):Number.POSITIVE_INFINITY,x=this.disabledDatesRE,u=this.disabledDatesText,p=this.disabledDays?this.disabledDays.join(""):!1,y=this.disabledDaysText,t=this.format;this.showToday&&(j=(new Date).clearTime(),j=j<n||j>s||x&&t&&x.test(j.dateFormat(t))||p&&-1!=p.indexOf(j.getDay()),this.disabled||(this.todayBtn.setDisabled(j),this.todayKeyListener[j?"disable":"enable"]())); +for(var j=function(a,b){b.title="";var c=m.clearTime(!0).getTime();b.firstChild.dateValue=c;c==q&&(b.className+=" x-date-today",b.title=a.todayText);c==r&&(b.className+=" x-date-selected",d&&Ext.fly(b.firstChild).focus(50));c<n?(b.className=" x-date-disabled",b.title=a.minText):c>s?(b.className=" x-date-disabled",b.title=a.maxText):(p&&-1!=p.indexOf(m.getDay())&&(b.title=y,b.className=" x-date-disabled"),x&&t&&(c=m.dateFormat(t),x.test(c)&&(b.title=u.replace("%0",c),b.className=" x-date-disabled")))}, +v=0;v<h;v++)l[v].innerHTML=++k,m.setDate(m.getDate()+1),c[v].className="x-date-prevday",j(this,c[v]);for(;v<g;v++)l[v].innerHTML=v-h+1,m.setDate(m.getDate()+1),c[v].className="x-date-active",j(this,c[v]);for(g=0;42>v;v++)l[v].innerHTML=++g,m.setDate(m.getDate()+1),c[v].className="x-date-nextday",j(this,c[v]);this.mbtn.setText(this.monthNames[a.getMonth()]+" "+a.getFullYear());this.internalRender||(c=this.el.dom.firstChild,l=c.offsetWidth,this.el.setWidth(l+this.el.getBorderWidth("lr")),Ext.fly(c).setWidth(l), +this.internalRender=!0,Ext.isOpera&&!this.secondPass&&(c.rows[0].cells[1].style.width=l-(c.rows[0].cells[0].offsetWidth+c.rows[0].cells[2].offsetWidth)+"px",this.secondPass=!0,this.update.defer(10,this,[a])))}},beforeDestroy:function(){this.rendered&&(Ext.destroy(this.keyNav,this.monthPicker,this.eventEl,this.mbtn,this.nextRepeater,this.prevRepeater,this.cells.el,this.todayBtn),delete this.textNodes,delete this.cells.elements)}});Ext.reg("datepicker",Ext.DatePicker); +Ext.LoadMask=function(a,b){this.el=Ext.get(a);Ext.apply(this,b);if(this.store)this.store.on({scope:this,beforeload:this.onBeforeLoad,load:this.onLoad,exception:this.onLoad}),this.removeMask=Ext.value(this.removeMask,!1);else{var c=this.el.getUpdater();c.showLoadIndicator=!1;c.on({scope:this,beforeupdate:this.onBeforeLoad,update:this.onLoad,failure:this.onLoad});this.removeMask=Ext.value(this.removeMask,!0)}}; +Ext.LoadMask.prototype={msg:"Loading...",msgCls:"x-mask-loading",disabled:!1,disable:function(){this.disabled=!0},enable:function(){this.disabled=!1},onLoad:function(){this.el.unmask(this.removeMask)},onBeforeLoad:function(){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("exception",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.ns("Ext.slider"); +Ext.slider.Thumb=Ext.extend(Object,{dragging:!1,constructor:function(a){Ext.apply(this,a||{},{cls:"x-slider-thumb",constrain:!1});Ext.slider.Thumb.superclass.constructor.call(this,a);this.slider.vertical&&Ext.apply(this,Ext.slider.Thumb.Vertical)},render:function(){this.el=this.slider.innerEl.insertFirst({cls:this.cls});this.initEvents()},enable:function(){this.disabled=!1;this.el.removeClass(this.slider.disabledClass)},disable:function(){this.disabled=!0;this.el.addClass(this.slider.disabledClass)}, +initEvents:function(){var a=this.el;a.addClassOnOver("x-slider-thumb-over");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(a)},onBeforeDragStart:function(){if(this.disabled)return!1;this.slider.promoteThumb(this);return!0},onDragStart:function(a){this.el.addClass("x-slider-thumb-drag"); +this.dragging=!0;this.dragStartValue=this.value;this.slider.fireEvent("dragstart",this.slider,a,this)},onDrag:function(a){var b=this.slider,c=this.index,d=this.getNewValue();if(this.constrain){var e=b.thumbs[c+1],g=b.thumbs[c-1];void 0!=g&&d<=g.value&&(d=g.value);void 0!=e&&d>=e.value&&(d=e.value)}b.setValue(c,d,!1);b.fireEvent("drag",b,a,this)},getNewValue:function(){var a=this.slider,b=a.innerEl.translatePoints(this.tracker.getXY());return Ext.util.Format.round(a.reverseValue(b.left),a.decimalPrecision)}, +onDragEnd:function(a){var b=this.slider,c=this.value;this.el.removeClass("x-slider-thumb-drag");this.dragging=!1;b.fireEvent("dragend",b,a);this.dragStartValue!=c&&b.fireEvent("changecomplete",b,c,this)},destroy:function(){Ext.destroyMembers(this,"tracker","el")}}); +Ext.slider.MultiSlider=Ext.extend(Ext.BoxComponent,{vertical:!1,minValue:0,maxValue:100,decimalPrecision:0,keyIncrement:1,increment:0,clickRange:[5,15],clickToChange:!0,animate:!0,constrainThumbs:!0,topThumbZIndex:1E4,initComponent:function(){Ext.isDefined(this.value)||(this.value=this.minValue);this.thumbs=[];Ext.slider.MultiSlider.superclass.initComponent.call(this);this.keyIncrement=Math.max(this.increment,this.keyIncrement);this.addEvents("beforechange","change","changecomplete","dragstart","drag", +"dragend");if(void 0==this.values||Ext.isEmpty(this.values))this.values=[0];for(var a=this.values,b=0;b<a.length;b++)this.addThumb(a[b]);this.vertical&&Ext.apply(this,Ext.slider.Vertical)},addThumb:function(a){a=new Ext.slider.Thumb({value:a,slider:this,index:this.thumbs.length,constrain:this.constrainThumbs});this.thumbs.push(a);this.rendered&&a.render()},promoteThumb:function(a){for(var b=this.thumbs,c,d,e=0,g=b.length;e<g;e++)d=b[e],c=d==a?this.topThumbZIndex:"",d.el.setStyle("zIndex",c)},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:[{tag:"a",cls:"x-slider-focus",href:"#",tabIndex:"-1",hidefocus:"on"}]}}};Ext.slider.MultiSlider.superclass.onRender.apply(this,arguments);this.endEl=this.el.first();this.innerEl=this.endEl.first();this.focusEl=this.innerEl.child(".x-slider-focus");for(var a=0;a<this.thumbs.length;a++)this.thumbs[a].render();a=this.innerEl.child(".x-slider-thumb");this.halfThumb=(this.vertical?a.getHeight(): +a.getWidth())/2;this.initEvents()},initEvents:function(){this.mon(this.el,{scope:this,mousedown:this.onMouseDown,keydown:this.onKeyDown});this.focusEl.swallowEvent("click",!0)},onMouseDown:function(a){if(!this.disabled){for(var b=!1,c=0;c<this.thumbs.length;c++)b=b||a.target==this.thumbs[c].el.dom;this.clickToChange&&!b&&(a=this.innerEl.translatePoints(a.getXY()),this.onClickChange(a));this.focus()}},onClickChange:function(a){if(a.top>this.clickRange[0]&&a.top<this.clickRange[1]){var b=this.getNearest(a, +"left").index;this.setValue(b,Ext.util.Format.round(this.reverseValue(a.left),this.decimalPrecision),void 0,!0)}},getNearest:function(a,b){for(var c="top"==b?this.innerEl.getHeight()-a[b]:a[b],c=this.reverseValue(c),d=this.maxValue-this.minValue+5,e=null,g=0;g<this.thumbs.length;g++){var h=this.thumbs[g],j=Math.abs(h.value-c);Math.abs(j<=d)&&(e=h,d=j)}return e},onKeyDown:function(a){if(this.disabled||1!==this.thumbs.length)a.preventDefault();else switch(a.getKey()){case a.UP:case a.RIGHT:a.stopEvent(); +a=a.ctrlKey?this.maxValue:this.getValue(0)+this.keyIncrement;this.setValue(0,a,void 0,!0);break;case a.DOWN:case a.LEFT:a.stopEvent();a=a.ctrlKey?this.minValue:this.getValue(0)-this.keyIncrement;this.setValue(0,a,void 0,!0);break;default:a.preventDefault()}},doSnap:function(a){if(!this.increment||!a)return a;var b=a,c=this.increment;a%=c;0!=a&&(b-=a,2*a>=c?b+=c:2*a<-c&&(b-=c));return b.constrain(this.minValue,this.maxValue)},afterRender:function(){Ext.slider.MultiSlider.superclass.afterRender.apply(this, +arguments);for(var a=0;a<this.thumbs.length;a++){var b=this.thumbs[a];if(void 0!==b.value){var c=this.normalizeValue(b.value);c!==b.value?this.setValue(a,c,!1):this.moveThumb(a,this.translateValue(c),!1)}}},getRatio:function(){var a=this.innerEl.getWidth(),b=this.maxValue-this.minValue;return 0==b?a:a/b},normalizeValue:function(a){a=this.doSnap(a);a=Ext.util.Format.round(a,this.decimalPrecision);return a=a.constrain(this.minValue,this.maxValue)},setMinValue:function(a){this.minValue=a;for(var b=0, +c=this.thumbs,d=c.length,e;b<d;++b)e=c[b],e.value=e.value<a?a:e.value;this.syncThumb()},setMaxValue:function(a){this.maxValue=a;for(var b=0,c=this.thumbs,d=c.length,e;b<d;++b)e=c[b],e.value=e.value>a?a:e.value;this.syncThumb()},setValue:function(a,b,c,d){var e=this.thumbs[a];b=this.normalizeValue(b);b!==e.value&&!1!==this.fireEvent("beforechange",this,b,e.value,e)&&(e.value=b,this.rendered&&(this.moveThumb(a,this.translateValue(b),!1!==c),this.fireEvent("change",this,b,e),d&&this.fireEvent("changecomplete", +this,b,e)))},translateValue:function(a){var b=this.getRatio();return a*b-this.minValue*b-this.halfThumb},reverseValue:function(a){var b=this.getRatio();return(a+this.minValue*b)/b},moveThumb:function(a,b,c){a=this.thumbs[a].el;!c||!1===this.animate?a.setLeft(b):a.shift({left:b,stopFx:!0,duration:0.35})},focus:function(){this.focusEl.focus(10)},onResize:function(a,b){for(var c=this.thumbs,d=c.length,e=0;e<d;++e)c[e].el.stopFx();Ext.isNumber(a)&&this.innerEl.setWidth(a-(this.el.getPadding("l")+this.endEl.getPadding("r"))); +this.syncThumb();Ext.slider.MultiSlider.superclass.onResize.apply(this,arguments)},onDisable:function(){Ext.slider.MultiSlider.superclass.onDisable.call(this);for(var a=0;a<this.thumbs.length;a++){var b=this.thumbs[a],c=b.el;b.disable();Ext.isIE&&(b=c.getXY(),c.hide(),this.innerEl.addClass(this.disabledClass).dom.disabled=!0,this.thumbHolder||(this.thumbHolder=this.endEl.createChild({cls:"x-slider-thumb "+this.disabledClass})),this.thumbHolder.show().setXY(b))}},onEnable:function(){Ext.slider.MultiSlider.superclass.onEnable.call(this); +for(var a=0;a<this.thumbs.length;a++){var b=this.thumbs[a],c=b.el;b.enable();Ext.isIE&&(this.innerEl.removeClass(this.disabledClass).dom.disabled=!1,this.thumbHolder&&this.thumbHolder.hide(),c.show(),this.syncThumb())}},syncThumb:function(){if(this.rendered)for(var a=0;a<this.thumbs.length;a++)this.moveThumb(a,this.translateValue(this.thumbs[a].value))},getValue:function(a){return this.thumbs[a].value},getValues:function(){for(var a=[],b=0;b<this.thumbs.length;b++)a.push(this.thumbs[b].value);return a}, +beforeDestroy:function(){for(var a=this.thumbs,b=0,c=a.length;b<c;++b)a[b].destroy(),a[b]=null;Ext.destroyMembers(this,"endEl","innerEl","focusEl","thumbHolder");Ext.slider.MultiSlider.superclass.beforeDestroy.call(this)}});Ext.reg("multislider",Ext.slider.MultiSlider); +Ext.slider.SingleSlider=Ext.extend(Ext.slider.MultiSlider,{constructor:function(a){a=a||{};Ext.applyIf(a,{values:[a.value||0]});Ext.slider.SingleSlider.superclass.constructor.call(this,a)},getValue:function(){return Ext.slider.SingleSlider.superclass.getValue.call(this,0)},setValue:function(a,b){var c=Ext.toArray(arguments),d=c.length;(1==d||3>=d&&"number"!=typeof arguments[1])&&c.unshift(0);return Ext.slider.SingleSlider.superclass.setValue.apply(this,c)},syncThumb:function(){return Ext.slider.SingleSlider.superclass.syncThumb.apply(this, +[0].concat(arguments))},getNearest:function(){return this.thumbs[0]}});Ext.Slider=Ext.slider.SingleSlider;Ext.reg("slider",Ext.slider.SingleSlider); +Ext.slider.Vertical={onResize:function(a,b){this.innerEl.setHeight(b-(this.el.getPadding("t")+this.endEl.getPadding("b")));this.syncThumb()},getRatio:function(){return this.innerEl.getHeight()/(this.maxValue-this.minValue)},moveThumb:function(a,b,c){a=this.thumbs[a].el;!c||!1===this.animate?a.setBottom(b):a.shift({bottom:b,stopFx:!0,duration:0.35})},onClickChange:function(a){if(a.left>this.clickRange[0]&&a.left<this.clickRange[1]){var b=this.getNearest(a,"top").index;a=this.minValue+this.reverseValue(this.innerEl.getHeight()- +a.top);this.setValue(b,Ext.util.Format.round(a,this.decimalPrecision),void 0,!0)}}};Ext.slider.Thumb.Vertical={getNewValue:function(){var a=this.slider,b=a.innerEl,c=b.translatePoints(this.tracker.getXY()),b=b.getHeight()-c.top;return a.minValue+Ext.util.Format.round(b/a.getRatio(),a.decimalPrecision)}}; +Ext.ProgressBar=Ext.extend(Ext.BoxComponent,{baseCls:"x-progress",animate:!1,waitTimer:null,initComponent:function(){Ext.ProgressBar.superclass.initComponent.call(this);this.addEvents("update")},onRender:function(a,b){var c=new Ext.Template('<div class="{cls}-wrap">','<div class="{cls}-inner">','<div class="{cls}-bar">','<div class="{cls}-text">',"<div> </div>","</div>","</div>",'<div class="{cls}-text {cls}-text-back">',"<div> </div>","</div>","</div>","</div>");this.el=b?c.insertBefore(b, +{cls:this.baseCls},!0):c.append(a,{cls:this.baseCls},!0);this.id&&(this.el.dom.id=this.id);c=this.el.dom.firstChild;this.progressBar=Ext.get(c.firstChild);if(this.textEl)this.textEl=Ext.get(this.textEl),delete this.textTopEl;else{this.textTopEl=Ext.get(this.progressBar.dom.firstChild);var d=Ext.get(c.childNodes[1]);this.textTopEl.setStyle("z-index",99).addClass("x-hidden");this.textEl=new Ext.CompositeElement([this.textTopEl.dom.firstChild,d.dom.firstChild]);this.textEl.setWidth(c.offsetWidth)}this.progressBar.setHeight(c.offsetHeight)}, +afterRender:function(){Ext.ProgressBar.superclass.afterRender.call(this);this.value?this.updateProgress(this.value,this.text):this.updateText(this.text)},updateProgress:function(a,b,c){this.value=a||0;b&&this.updateText(b);if(this.rendered&&!this.isDestroyed){var d=Math.floor(a*this.el.dom.firstChild.offsetWidth);this.progressBar.setWidth(d,!0===c||!1!==c&&this.animate);this.textTopEl&&this.textTopEl.removeClass("x-hidden").setWidth(d)}this.fireEvent("update",this,a,b);return this},wait:function(a){this.waitTimer|| +(a=a||{},this.updateText(a.text),this.waitTimer=Ext.TaskMgr.start({run:function(b){var c=a.increment||10;this.updateProgress(0.01*((b-1+c)%c+1)*(100/c),null,a.animate)},interval:a.interval||1E3,duration:a.duration,onStop:function(){a.fn&&a.fn.apply(a.scope||this);this.reset()},scope:this}));return this},isWaiting:function(){return null!==this.waitTimer},updateText:function(a){this.text=a||" ";this.rendered&&this.textEl.update(this.text);return this},syncProgressBar:function(){this.value&&this.updateProgress(this.value, +this.text);return this},setSize:function(a,b){Ext.ProgressBar.superclass.setSize.call(this,a,b);if(this.textTopEl){var c=this.el.dom.firstChild;this.textEl.setSize(c.offsetWidth,c.offsetHeight)}this.syncProgressBar();return this},reset:function(a){this.updateProgress(0);this.textTopEl&&this.textTopEl.addClass("x-hidden");this.clearTimer();!0===a&&this.hide();return this},clearTimer:function(){this.waitTimer&&(this.waitTimer.onStop=null,Ext.TaskMgr.stop(this.waitTimer),this.waitTimer=null)},onDestroy:function(){this.clearTimer(); +this.rendered&&(this.textEl.isComposite&&this.textEl.clear(),Ext.destroyMembers(this,"textEl","progressBar","textTopEl"));Ext.ProgressBar.superclass.onDestroy.call(this)}});Ext.reg("progress",Ext.ProgressBar); +Ext.DataView=Ext.extend(Ext.BoxComponent,{selectedClass:"x-view-selected",emptyText:"",deferEmptyText:!0,trackOver:!1,blockRefresh:!1,last:!1,initComponent:function(){Ext.DataView.superclass.initComponent.call(this);if(Ext.isString(this.tpl)||Ext.isArray(this.tpl))this.tpl=new Ext.XTemplate(this.tpl);this.addEvents("beforeclick","click","mouseenter","mouseleave","containerclick","dblclick","contextmenu","containercontextmenu","selectionchange","beforeselect");this.store=Ext.StoreMgr.lookup(this.store); +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});(this.overClass||this.trackOver)&&this.mon(this.getTemplateTarget(),{mouseover:this.onMouseOver,mouseout:this.onMouseOut,scope:this});this.store&&this.bindStore(this.store,!0)},refresh:function(){this.clearSelections(!1,!0);var a= +this.getTemplateTarget(),b=this.store.getRange();a.update("");1>b.length?((!this.deferEmptyText||this.hasSkippedEmptyText)&&a.update(this.emptyText),this.all.clear()):(this.tpl.overwrite(a,this.collectData(b,0)),this.all.fill(Ext.query(this.itemSelector,a.dom)),this.updateIndexes(0));this.hasSkippedEmptyText=!0},getTemplateTarget:function(){return this.el},prepareData:function(a){return a},collectData:function(a,b){for(var c=[],d=0,e=a.length;d<e;d++)c[c.length]=this.prepareData(a[d].data,b+d,a[d]); +return c},bufferRender:function(a,b){var c=document.createElement("div");this.tpl.overwrite(c,this.collectData(a,b));return Ext.query(this.itemSelector,c)},onUpdate:function(a,b){var c=this.store.indexOf(b);if(-1<c){var d=this.isSelected(c),e=this.all.elements[c],g=this.bufferRender([b],c)[0];this.all.replaceElement(c,g,!0);d&&(this.selected.replaceElement(e,g),this.all.item(c).addClass(this.selectedClass));this.updateIndexes(c,c)}},onAdd:function(a,b,c){0===this.all.getCount()?this.refresh():(a= +this.bufferRender(b,c),b=this.all.elements,c<this.all.getCount()?(this.all.item(c).insertSibling(a,"before",!0),b.splice.apply(b,[c,0].concat(a))):(this.all.last().insertSibling(a,"after",!0),b.push.apply(b,a)),this.updateIndexes(c))},onRemove:function(a,b,c){this.deselect(c);this.all.removeElement(c,!0);this.updateIndexes(c);0===this.store.getCount()&&this.refresh()},refreshNode:function(a){this.onUpdate(this.store,this.store.getAt(a))},updateIndexes:function(a,b){var c=this.all.elements;b=b||(0=== +b?0:c.length-1);for(var d=a||0;d<=b;d++)c[d].viewIndex=d},getStore:function(){return this.store},bindStore:function(a,b){!b&&this.store&&(a!==this.store&&this.store.autoDestroy?this.store.destroy():(this.store.un("beforeload",this.onBeforeLoad,this),this.store.un("datachanged",this.onDataChanged,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)),a||(this.store=null));a&&(a=Ext.StoreMgr.lookup(a), +a.on({scope:this,beforeload:this.onBeforeLoad,datachanged:this.onDataChanged,add:this.onAdd,remove:this.onRemove,update:this.onUpdate,clear:this.refresh}));(this.store=a)&&this.refresh()},onDataChanged:function(){!0!==this.blockRefresh&&this.refresh.apply(this,arguments)},findItemFromChild:function(a){return Ext.fly(a).findParent(this.itemSelector,this.getTemplateTarget())},onClick:function(a){var b=a.getTarget(this.itemSelector,this.getTemplateTarget()),c;if(b)c=this.indexOf(b),!1!==this.onItemClick(b, +c,a)&&this.fireEvent("click",this,c,b,a);else if(!1!==this.fireEvent("containerclick",this,a))this.onContainerClick(a)},onContainerClick:function(){this.clearSelections()},onContextMenu:function(a){var b=a.getTarget(this.itemSelector,this.getTemplateTarget());b?this.fireEvent("contextmenu",this,this.indexOf(b),b,a):this.fireEvent("containercontextmenu",this,a)},onDblClick:function(a){var b=a.getTarget(this.itemSelector,this.getTemplateTarget());b&&this.fireEvent("dblclick",this,this.indexOf(b),b, +a)},onMouseOver:function(a){var b=a.getTarget(this.itemSelector,this.getTemplateTarget());b&&b!==this.lastItem&&(this.lastItem=b,Ext.fly(b).addClass(this.overClass),this.fireEvent("mouseenter",this,this.indexOf(b),b,a))},onMouseOut:function(a){this.lastItem&&!a.within(this.lastItem,!0,!0)&&(Ext.fly(this.lastItem).removeClass(this.overClass),this.fireEvent("mouseleave",this,this.indexOf(this.lastItem),this.lastItem,a),delete this.lastItem)},onItemClick:function(a,b,c){if(!1===this.fireEvent("beforeclick", +this,b,a,c))return!1;this.multiSelect?(this.doMultiSelection(a,b,c),c.preventDefault()):this.singleSelect&&(this.doSingleSelection(a,b,c),c.preventDefault());return!0},doSingleSelection:function(a,b,c){c.ctrlKey&&this.isSelected(b)?this.deselect(b):this.select(b,!1)},doMultiSelection:function(a,b,c){c.shiftKey&&!1!==this.last?(a=this.last,this.selectRange(a,b,c.ctrlKey),this.last=a):(c.ctrlKey||this.simpleSelect)&&this.isSelected(b)?this.deselect(b):this.select(b,c.ctrlKey||c.shiftKey||this.simpleSelect)}, +getSelectionCount:function(){return this.selected.getCount()},getSelectedNodes:function(){return this.selected.elements},getSelectedIndexes:function(){for(var a=[],b=this.selected.elements,c=0,d=b.length;c<d;c++)a.push(b[c].viewIndex);return a},getSelectedRecords:function(){return this.getRecords(this.selected.elements)},getRecords:function(a){for(var b=[],c=0,d=a.length;c<d;c++)b[b.length]=this.store.getAt(a[c].viewIndex);return b},getRecord:function(a){return this.store.getAt(a.viewIndex)},clearSelections:function(a, +b){if((this.multiSelect||this.singleSelect)&&0<this.selected.getCount())b||this.selected.removeClass(this.selectedClass),this.selected.clear(),this.last=!1,a||this.fireEvent("selectionchange",this,this.selected.elements)},isSelected:function(a){return this.selected.contains(this.getNode(a))},deselect:function(a){this.isSelected(a)&&(a=this.getNode(a),this.selected.removeElement(a),this.last==a.viewIndex&&(this.last=!1),Ext.fly(a).removeClass(this.selectedClass),this.fireEvent("selectionchange",this, +this.selected.elements))},select:function(a,b,c){if(Ext.isArray(a)){b||this.clearSelections(!0);b=0;for(var d=a.length;b<d;b++)this.select(a[b],!0,!0);c||this.fireEvent("selectionchange",this,this.selected.elements)}else a=this.getNode(a),b||this.clearSelections(!0),a&&!this.isSelected(a)&&!1!==this.fireEvent("beforeselect",this,a,this.selected.elements)&&(Ext.fly(a).addClass(this.selectedClass),this.selected.add(a),this.last=a.viewIndex,c||this.fireEvent("selectionchange",this,this.selected.elements))}, +selectRange:function(a,b,c){c||this.clearSelections(!0);this.select(this.getNodes(a,b),!0)},getNode:function(a){return Ext.isString(a)?document.getElementById(a):Ext.isNumber(a)?this.all.elements[a]:a instanceof Ext.data.Record?(a=this.store.indexOf(a),this.all.elements[a]):a},getNodes:function(a,b){var c=this.all.elements,d=[],e;a=a||0;b=!Ext.isDefined(b)?Math.max(c.length-1,0):b;if(a<=b)for(e=a;e<=b&&c[e];e++)d.push(c[e]);else for(e=a;e>=b&&c[e];e--)d.push(c[e]);return d},indexOf:function(a){a= +this.getNode(a);return Ext.isNumber(a.viewIndex)?a.viewIndex:this.all.indexOf(a)},onBeforeLoad:function(){this.loadingText&&(this.clearSelections(!1,!0),this.getTemplateTarget().update('<div class="loading-indicator">'+this.loadingText+"</div>"),this.all.clear())},onDestroy:function(){this.all.clear();this.selected.clear();Ext.DataView.superclass.onDestroy.call(this);this.bindStore(null)}});Ext.DataView.prototype.setStore=Ext.DataView.prototype.bindStore;Ext.reg("dataview",Ext.DataView); +Ext.list.ListView=Ext.extend(Ext.DataView,{itemSelector:"dl",selectedClass:"x-list-selected",overClass:"x-list-over",scrollOffset:void 0,columnResize:!0,columnSort:!0,maxColumnWidth:Ext.isIE?99:100,initComponent:function(){this.columnResize&&(this.colResizer=new Ext.list.ColumnResizer(this.colResizer),this.colResizer.init(this));this.columnSort&&(this.colSorter=new Ext.list.Sorter(this.columnSort),this.colSorter.init(this));this.internalTpl||(this.internalTpl=new Ext.XTemplate('<div class="x-list-header"><div class="x-list-header-inner">', +'<tpl for="columns">','<div style="width:{[values.width*100]}%;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>"));this.tpl||(this.tpl=new Ext.XTemplate('<tpl for="rows">',"<dl>",'<tpl for="parent.columns">','<dt style="width:{[values.width*100]}%;text-align:{align};">','<em unselectable="on"<tpl if="cls"> class="{cls}</tpl>">', +"{[values.tpl.apply(parent)]}","</em></dt>","</tpl>",'<div class="x-clear"></div>',"</dl>","</tpl>"));for(var a=this.columns,b=0,c=0,d=a.length,e=[],g=0;g<d;g++){var h=a[g];h.isColumn||(h.xtype=h.xtype?/^lv/.test(h.xtype)?h.xtype:"lv"+h.xtype:"lvcolumn",h=Ext.create(h));h.width&&(b+=100*h.width,b>this.maxColumnWidth&&(h.width-=(b-this.maxColumnWidth)/100),c++);e.push(h)}a=this.columns=e;if(c<d&&(h=d-c,b<this.maxColumnWidth)){b=(this.maxColumnWidth-b)/h/100;for(c=0;c<d;c++)h=a[c],h.width||(h.width= +b)}Ext.list.ListView.superclass.initComponent.call(this)},onRender:function(){this.autoEl={cls:"x-list-wrap"};Ext.list.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);this.hideHeaders&&(this.el.dom.firstChild.style.display="none")},getTemplateTarget:function(){return this.innerBody},collectData:function(){var a=Ext.list.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(a,b){var c=this.innerBody.dom,d=this.innerHd.dom,e=a-Ext.num(this.scrollOffset,Ext.getScrollBarWidth())+"px",g;c&&(g=c.parentNode,Ext.isNumber(a)&&(this.reserveScrollOffset||10<g.offsetWidth-g.clientWidth?(c.style.width=e,d.style.width=e):(c.style.width=a+"px",d.style.width=a+"px",setTimeout(function(){10<g.offsetWidth-g.clientWidth&& +(c.style.width=e,d.style.width=e)},10))),Ext.isNumber(b)&&(g.style.height=Math.max(0,b-d.parentNode.offsetHeight)+"px"))},updateIndexes:function(){Ext.list.ListView.superclass.updateIndexes.apply(this,arguments);this.verifyInternalSize()},findHeaderIndex:function(a){a=a.dom||a;a=a.parentNode;for(var b=a.parentNode.childNodes,c=0,d;d=b[c];c++)if(d==a)return c;return-1},setHdWidths:function(){for(var a=this.innerHd.dom.getElementsByTagName("div"),b=0,c=this.columns,d=c.length;b<d;b++)a[b].style.width= +100*c[b].width+"%"}});Ext.reg("listview",Ext.list.ListView);Ext.ListView=Ext.list.ListView;Ext.list.Column=Ext.extend(Object,{isColumn:!0,align:"left",header:"",width:null,cls:"",constructor:function(a){a.tpl?Ext.isString(a.tpl)&&(a.tpl=new Ext.XTemplate(a.tpl)):a.tpl=new Ext.XTemplate("{"+a.dataIndex+"}");Ext.apply(this,a)}});Ext.reg("lvcolumn",Ext.list.Column); +Ext.list.NumberColumn=Ext.extend(Ext.list.Column,{format:"0,000.00",constructor:function(a){a.tpl=a.tpl||new Ext.XTemplate("{"+a.dataIndex+':number("'+(a.format||this.format)+'")}');Ext.list.NumberColumn.superclass.constructor.call(this,a)}});Ext.reg("lvnumbercolumn",Ext.list.NumberColumn); +Ext.list.DateColumn=Ext.extend(Ext.list.Column,{format:"m/d/Y",constructor:function(a){a.tpl=a.tpl||new Ext.XTemplate("{"+a.dataIndex+':date("'+(a.format||this.format)+'")}');Ext.list.DateColumn.superclass.constructor.call(this,a)}});Ext.reg("lvdatecolumn",Ext.list.DateColumn); +Ext.list.BooleanColumn=Ext.extend(Ext.list.Column,{trueText:"true",falseText:"false",undefinedText:" ",constructor:function(a){a.tpl=a.tpl||new Ext.XTemplate("{"+a.dataIndex+":this.format}");var b=this.trueText,c=this.falseText,d=this.undefinedText;a.tpl.format=function(a){return void 0===a?d:!a||"false"===a?c:b};Ext.list.DateColumn.superclass.constructor.call(this,a)}});Ext.reg("lvbooleancolumn",Ext.list.BooleanColumn); +Ext.list.ColumnResizer=Ext.extend(Ext.util.Observable,{minPct:0.05,constructor:function(a){Ext.apply(this,a);Ext.list.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(a){var b=a.getPageX();if(a=a.getTarget("em",3,!0)){var c=a.getRegion(),d=a.dom.style,e=a.dom.parentNode;5>=b-c.left&&e!=e.parentNode.firstChild?(this.activeHd=Ext.get(e.previousSibling.firstChild),d.cursor=Ext.isWebKit?"e-resize":"col-resize"):5>=c.right-b&&e!=e.parentNode.lastChild.previousSibling?(this.activeHd=a,d.cursor=Ext.isWebKit?"w-resize":"col-resize"): +(delete this.activeHd,d.cursor="")}},onBeforeStart:function(){this.dragHd=this.activeHd;return!!this.dragHd},onStart:function(){var a=this.view,b=this.dragHd,c=this.tracker.getXY()[0];this.proxy=a.el.createChild({cls:"x-list-resizer"});this.dragX=b.getX();this.headerIndex=a.findHeaderIndex(b);this.headersDisabled=a.disableHeaders;a.disableHeaders=!0;this.proxy.setHeight(a.el.getHeight());this.proxy.setX(this.dragX);this.proxy.setWidth(c-this.dragX);this.setBoundaries()},setBoundaries:function(a){var b= +this.view,c=this.headerIndex,d=b.innerHd.getWidth();a=b.innerHd.getX();var e=Math.ceil(d*this.minPct),g=d-e,d=b.columns.length,b=b.innerHd.select("em",!0),h=e+a;a=g+a;2==d?(this.minX=h,this.maxX=a):(g=b.item(c+2),this.minX=b.item(c).getX()+e,this.maxX=g?g.getX()-e:a,0==c?this.minX=h:c==d-2&&(this.maxX=a))},onDrag:function(){var a=this.tracker.getXY()[0].constrain(this.minX,this.maxX);this.proxy.setWidth(a-this.dragX)},onEnd:function(){var a=this.proxy.getWidth(),b=this.headerIndex,c=this.view,d=c.columns, +e=c.innerHd.getWidth(),a=Math.ceil(a*c.maxColumnWidth/e)/100,g=this.headersDisabled,e=d[b],b=d[b+1],d=e.width+b.width;this.proxy.remove();e.width=a;b.width=d-a;delete this.dragHd;c.setHdWidths();c.refresh();setTimeout(function(){c.disableHeaders=g},100)}});Ext.ListView.ColumnResizer=Ext.list.ColumnResizer; +Ext.list.Sorter=Ext.extend(Ext.util.Observable,{sortClasses:["sort-asc","sort-desc"],constructor:function(a){Ext.apply(this,a);Ext.list.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(a){if(a=a.getSortState()){this.sortState= +a;for(var b=this.view.columns,c=-1,d=0,e=b.length;d<e;d++)if(b[d].dataIndex==a.field){c=d;break}-1!=c&&this.updateSortIcon(c,a.direction)}},updateSortIcon:function(a,b){var c=this.sortClasses;this.view.innerHd.select("em").removeClass(c).item(a).addClass(c["DESC"==b?1:0])},onHdClick:function(a){if((a=a.getTarget("em",3))&&!this.view.disableHeaders)a=this.view.findHeaderIndex(a),this.view.store.sort(this.view.columns[a].dataIndex)}});Ext.ListView.Sorter=Ext.list.Sorter; +Ext.DataView.LabelEditor=Ext.extend(Ext.Editor,{alignment:"tl-tl",hideEl:!1,cls:"x-small-editor",shim:!1,completeOnEnter:!0,cancelOnEsc:!0,labelSelector:"span.x-editable",constructor:function(a,b){Ext.DataView.LabelEditor.superclass.constructor.call(this,b||new Ext.form.TextField({allowBlank:!1,growMin:90,growMax:240,grow:!0,selectOnFocus:!0}),a)},init:function(a){this.view=a;a.on("render",this.initEditor,this);this.on("complete",this.onSave,this)},initEditor:function(){this.view.on({scope:this,containerclick:this.doBlur, +click:this.doBlur});this.view.getEl().on("mousedown",this.onMouseDown,this,{delegate:this.labelSelector})},doBlur:function(){this.editing&&this.field.blur()},onMouseDown:function(a,b){if(!a.ctrlKey&&!a.shiftKey){var c=this.view.findItemFromChild(b);a.stopEvent();c=this.view.store.getAt(this.view.indexOf(c));this.startEdit(b,c.data[this.dataIndex]);this.activeRecord=c}else a.preventDefault()},onSave:function(a,b){this.activeRecord.set(this.dataIndex,b)}}); +Ext.DataView.DragSelector=function(a){function b(){return!1}function c(a){return!n||a.target==j.el.dom}function d(){j.on("containerclick",b,j,{single:!0});k?(k.dom.parentNode!==j.el.dom&&j.el.dom.appendChild(k.dom),k.setDisplayed("block")):k=j.el.createChild({cls:"x-view-selector"});m=[];j.all.each(function(a){m[m.length]=a.getRegion()});q=j.el.getRegion();j.clearSelections()}function e(){var a=l.startXY,b=l.getXY(),c=Math.min(a[0],b[0]),d=Math.min(a[1],b[1]),e=Math.abs(a[0]-b[0]),a=Math.abs(a[1]- +b[1]);r.left=c;r.top=d;r.right=c+e;r.bottom=d+a;r.constrainTo(q);k.setRegion(r);c=0;for(d=m.length;c<d;c++)e=m[c],(a=r.intersect(e))&&!e.selected?(e.selected=!0,j.select(c,!0)):!a&&e.selected&&(e.selected=!1,j.deselect(c))}function g(){Ext.isIE||j.un("containerclick",b,j);k&&k.setDisplayed(!1)}function h(a){l=new Ext.dd.DragTracker({onBeforeStart:c,onStart:d,onDrag:e,onEnd:g});l.initEl(a.el)}a=a||{};var j,k,l,m,q,r=new Ext.lib.Region(0,0,0,0),n=!0===a.dragSafe;this.init=function(a){j=a;j.on("render", +h)}}; +Ext.data.Api=function(){var a={};return{actions:{create:"create",read:"read",update:"update",destroy:"destroy"},restActions:{create:"POST",read:"GET",update:"PUT",destroy:"DELETE"},isAction:function(a){return Ext.data.Api.actions[a]?!0:!1},getVerb:function(b){if(a[b])return a[b];for(var c in this.actions)if(this.actions[c]===b){a[b]=c;break}return void 0!==a[b]?a[b]:null},isValid:function(a){var c=[],d=this.actions,e;for(e in a)e in d||c.push(e);return!c.length?!0:c},hasUniqueUrl:function(a,c){var d= +a.api[c]?a.api[c].url:null,e=!0,g;for(g in a.api)if(!1===(e=g===c?!0:a.api[g].url!=d?!0:!1))break;return e},prepare:function(a){a.api||(a.api={});for(var c in this.actions){var d=this.actions[c];a.api[d]=a.api[d]||a.url||a.directFn;"string"==typeof a.api[d]&&(a.api[d]={url:a.api[d],method:!0===a.restful?Ext.data.Api.restActions[d]:void 0})}},restify:function(a){a.restful=!0;for(var c in this.restActions)a.api[this.actions[c]].method||(a.api[this.actions[c]].method=this.restActions[c]);a.onWrite=a.onWrite.createInterceptor(function(a, +b,c,h){var j=new Ext.data.Response({action:a,raw:c});switch(c.status){case 200:return!0;case 201:if(Ext.isEmpty(j.raw.responseText))j.success=!0;else return!0;break;case 204:j.success=!0;j.data=null;break;default:return!0}!0===j.success?this.fireEvent("write",this,a,j.data,j,h,b.request.arg):this.fireEvent("exception",this,"remote",a,b,j,h);b.request.callback.call(b.request.scope,j.data,j,j.success);return!1},a)}}}();Ext.data.Response=function(a,b){Ext.apply(this,a,{raw:b})}; +Ext.data.Response.prototype={message:null,success:!1,status:null,root:null,raw:null,getMessage:function(){return this.message},getSuccess:function(){return this.success},getStatus:function(){return this.status},getRoot:function(){return this.root},getRawResponse:function(){return this.raw}};Ext.data.Api.Error=Ext.extend(Ext.Error,{constructor:function(a,b){this.arg=b;Ext.Error.call(this,a)},name:"Ext.data.Api"}); +Ext.apply(Ext.data.Api.Error.prototype,{lang:{"action-url-undefined":"No fallback url defined for this action. When defining a DataProxy api, please be sure to define an url for each CRUD action in Ext.data.Api.actions or define a default url in addition to your api-configuration.",invalid:"received an invalid API-configuration. Please ensure your proxy API-configuration contains only the actions defined in Ext.data.Api.actions","invalid-url":"Invalid url. Please review your proxy configuration.", +execute:'Attempted to execute an unknown action. Valid API actions are defined in Ext.data.Api.actions"'}}); +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){return!a?0:Ext.isDate(a)?a.getTime():Date.parse(String(a))},asFloat:function(a){a=parseFloat(String(a).replace(/,/g,""));return isNaN(a)?0:a},asInt:function(a){a=parseInt(String(a).replace(/,/g,""),10);return isNaN(a)? +0:a}};Ext.data.Record=function(a,b){this.id=b||0===b?b:Ext.data.Record.id(this);this.data=a||{}};Ext.data.Record.create=function(a){var b=Ext.extend(Ext.data.Record,{}),c=b.prototype;c.fields=new Ext.util.MixedCollection(!1,function(a){return a.name});for(var d=0,e=a.length;d<e;d++)c.fields.add(new Ext.data.Field(a[d]));b.getField=function(a){return c.fields.get(a)};return b};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=!0;return[Ext.data.Record.PREFIX,"-",Ext.data.Record.AUTO_ID++].join("")}; +Ext.data.Record.prototype={dirty:!1,editing:!1,error:null,modified:null,phantom:!1,join:function(a){this.store=a},set:function(a,b){var c=Ext.isPrimitive(b)?String:Ext.encode;c(this.data[a])!=c(b)&&(this.dirty=!0,this.modified||(this.modified={}),void 0===this.modified[a]&&(this.modified[a]=this.data[a]),this.data[a]=b,this.editing||this.afterEdit())},afterEdit:function(){void 0!=this.store&&"function"==typeof this.store.afterEdit&&this.store.afterEdit(this)},afterReject:function(){this.store&&this.store.afterReject(this)}, +afterCommit:function(){this.store&&this.store.afterCommit(this)},get:function(a){return this.data[a]},beginEdit:function(){this.editing=!0;this.modified=this.modified||{}},cancelEdit:function(){this.editing=!1;delete this.modified},endEdit:function(){this.editing=!1;this.dirty&&this.afterEdit()},reject:function(a){var b=this.modified,c;for(c in b)"function"!=typeof b[c]&&(this.data[c]=b[c]);this.dirty=!1;delete this.modified;this.editing=!1;!0!==a&&this.afterReject()},commit:function(a){this.dirty= +!1;delete this.modified;this.editing=!1;!0!==a&&this.afterCommit()},getChanges:function(){var a=this.modified,b={},c;for(c in a)a.hasOwnProperty(c)&&(b[c]=this.data[c]);return b},hasError:function(){return null!==this.error},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!1===a.allowBlank&& +Ext.isEmpty(this.data[a.name])?!0:!1},this)?!1:!0},markDirty:function(){this.dirty=!0;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){if(Ext.isArray(a)){var b=["field1"],c=!Ext.isArray(a[0]);if(!c)for(var d=2,e=a[0].length;d<=e;++d)b.push("field"+d);return new Ext.data.ArrayStore({fields:b,data:a,expandData:c,autoDestroy:!0,autoCreated:!0})}return Ext.isObject(a)?a.events?a:Ext.create(a,"store"):this.get(a)},getKey:function(a){return a.storeId}}); +Ext.data.Store=Ext.extend(Ext.util.Observable,{writer:void 0,remoteSort:!1,autoDestroy:!1,pruneModifiedRecords:!1,lastOptions:null,autoSave:!0,batch:!0,restful:!1,paramNames:void 0,defaultParamNames:{start:"start",limit:"limit",sort:"sort",dir:"dir"},isDestroyed:!1,hasMultiSort:!1,batchKey:"_ext_batch_",constructor:function(a){this.data=new Ext.util.MixedCollection(!1);this.data.getKey=function(a){return a.id};this.removed=[];a&&a.data&&(this.inlineData=a.data,delete a.data);Ext.apply(this,a);this.baseParams= +Ext.isObject(this.baseParams)?this.baseParams:{};this.paramNames=Ext.applyIf(this.paramNames||{},this.defaultParamNames);if((this.url||this.api)&&!this.proxy)this.proxy=new Ext.data.HttpProxy({url:this.url,api:this.api});!0===this.restful&&this.proxy&&(this.batch=!1,Ext.data.Api.restify(this.proxy));this.reader&&(this.recordType||(this.recordType=this.reader.recordType),this.reader.onMetaChange&&(this.reader.onMetaChange=this.reader.onMetaChange.createSequence(this.onMetaChange,this)),this.writer&& +(!1===this.writer instanceof Ext.data.DataWriter&&(this.writer=this.buildWriter(this.writer)),this.writer.meta=this.reader.meta,this.pruneModifiedRecords=!0));this.recordType&&(this.fields=this.recordType.prototype.fields);this.modified=[];this.addEvents("datachanged","metachange","add","remove","update","clear","exception","beforeload","load","loadexception","beforewrite","write","beforesave","save");this.proxy&&this.relayEvents(this.proxy,["loadexception","exception"]);if(this.writer)this.on({scope:this, +add:this.createRecords,remove:this.destroyRecord,update:this.updateRecord,clear:this.onClear});this.sortToggle={};this.sortField?this.setDefaultSort(this.sortField,this.sortDir):this.sortInfo&&this.setDefaultSort(this.sortInfo.field,this.sortInfo.direction);Ext.data.Store.superclass.constructor.call(this);this.id&&(this.storeId=this.id,delete this.id);this.storeId&&Ext.StoreMgr.register(this);this.inlineData?(this.loadData(this.inlineData),delete this.inlineData):this.autoLoad&&this.load.defer(10, +this,["object"==typeof this.autoLoad?this.autoLoad:void 0]);this.batchCounter=0;this.batches={}},buildWriter:function(a){var b=void 0;switch((a.format||"json").toLowerCase()){case "json":b=Ext.data.JsonWriter;break;case "xml":b=Ext.data.XmlWriter;break;default:b=Ext.data.JsonWriter}return new b(a)},destroy:function(){this.isDestroyed||(this.storeId&&Ext.StoreMgr.unregister(this),this.clearData(),this.data=null,Ext.destroy(this.proxy),this.reader=this.writer=null,this.purgeListeners(),this.isDestroyed= +!0)},add:function(a){var b,c,d;a=[].concat(a);if(!(1>a.length)){b=0;for(c=a.length;b<c;b++)d=a[b],d.join(this),(d.dirty||d.phantom)&&this.modified.push(d);b=this.data.length;this.data.addAll(a);this.snapshot&&this.snapshot.addAll(a);this.fireEvent("add",this,a,b)}},addSorted:function(a){var b=this.findInsertIndex(a);this.insert(b,a)},doUpdate:function(a){this.data.replace(a.id,a);this.snapshot&&this.snapshot.replace(a.id,a);this.fireEvent("update",this,a,Ext.data.Record.COMMIT)},remove:function(a){if(Ext.isArray(a))Ext.each(a, +function(a){this.remove(a)},this);else{var b=this.data.indexOf(a);-1<b&&(a.join(null),this.data.removeAt(b));this.pruneModifiedRecords&&this.modified.remove(a);this.snapshot&&this.snapshot.remove(a);-1<b&&this.fireEvent("remove",this,a,b)}},removeAt:function(a){this.remove(this.getAt(a))},removeAll:function(a){var b=[];this.each(function(a){b.push(a)});this.clearData();this.snapshot&&this.snapshot.clear();this.pruneModifiedRecords&&(this.modified=[]);!0!==a&&this.fireEvent("clear",this,b)},onClear:function(a, +b){Ext.each(b,function(a,b){this.destroyRecord(this,a,b)},this)},insert:function(a,b){var c,d,e;b=[].concat(b);c=0;for(d=b.length;c<d;c++)e=b[c],this.data.insert(a+c,e),e.join(this),(e.dirty||e.phantom)&&this.modified.push(e);this.snapshot&&this.snapshot.addAll(b);this.fireEvent("add",this,b,a)},indexOf:function(a){return this.data.indexOf(a)},indexOfId:function(a){return this.data.indexOfKey(a)},getById:function(a){return(this.snapshot||this.data).key(a)},getAt:function(a){return this.data.itemAt(a)}, +getRange:function(a,b){return this.data.getRange(a,b)},storeOptions:function(a){a=Ext.apply({},a);delete a.callback;delete a.scope;this.lastOptions=a},clearData:function(){this.data.each(function(a){a.join(null)});this.data.clear()},load:function(a){a=Ext.apply({},a);this.storeOptions(a);if(this.sortInfo&&this.remoteSort){var b=this.paramNames;a.params=Ext.apply({},a.params);a.params[b.sort]=this.sortInfo.field;a.params[b.dir]=this.sortInfo.direction}try{return this.execute("read",null,a)}catch(c){return this.handleException(c), +!1}},updateRecord:function(a,b,c){c==Ext.data.Record.EDIT&&(!0===this.autoSave&&(!b.phantom||b.phantom&&b.isValid()))&&this.save()},createRecords:function(a,b){var c=this.modified,d=b.length,e,g;for(g=0;g<d;g++)e=b[g],e.phantom&&e.isValid()&&(e.markDirty(),-1==c.indexOf(e)&&c.push(e));!0===this.autoSave&&this.save()},destroyRecord:function(a,b,c){-1!=this.modified.indexOf(b)&&this.modified.remove(b);b.phantom||(this.removed.push(b),b.lastIndex=c,!0===this.autoSave&&this.save())},execute:function(a, +b,c,d){if(!Ext.data.Api.isAction(a))throw new Ext.data.Api.Error("execute",a);c=Ext.applyIf(c||{},{params:{}});void 0!==d&&this.addToBatch(d);var e=!0;"read"===a?(e=this.fireEvent("beforeload",this,c),Ext.applyIf(c.params,this.baseParams)):(!0===this.writer.listful&&!0!==this.restful?b=Ext.isArray(b)?b:[b]:Ext.isArray(b)&&1==b.length&&(b=b.shift()),!1!==(e=this.fireEvent("beforewrite",this,a,b,c))&&this.writer.apply(c.params,this.baseParams,a,b));!1!==e&&(this.writer&&(this.proxy.url&&!this.proxy.restful&& +!Ext.data.Api.hasUniqueUrl(this.proxy,a))&&(c.params.xaction=a),this.proxy.request(Ext.data.Api.actions[a],b,c.params,this.reader,this.createCallback(a,b,d),this,c));return e},save:function(){if(!this.writer)throw new Ext.data.Store.Error("writer-undefined");var a=[],b,c,d,e={},g;this.removed.length&&a.push(["destroy",this.removed]);b=[].concat(this.getModifiedRecords());if(b.length){c=[];for(g=b.length-1;0<=g;g--)!0===b[g].phantom?(d=b.splice(g,1).shift(),d.isValid()&&c.push(d)):b[g].isValid()|| +b.splice(g,1);c.length&&a.push(["create",c]);b.length&&a.push(["update",b])}if(b=a.length){d=++this.batchCounter;for(g=0;g<b;++g)c=a[g],e[c[0]]=c[1];if(!1!==this.fireEvent("beforesave",this,e)){for(g=0;g<b;++g)c=a[g],this.doTransaction(c[0],c[1],d);return d}}return-1},doTransaction:function(a,b,c){if(!1===this.batch)for(var d=0,e=b.length;d<e;d++)try{this.execute(a,b[d],void 0,c)}catch(g){this.handleException(g)}else try{this.execute(a,b,void 0,c)}catch(h){this.handleException(h)}},addToBatch:function(a){var b= +this.batches,c=this.batchKey+a,d=b[c];d||(b[c]=d={id:a,count:0,data:{}});++d.count},removeFromBatch:function(a,b,c){var d=this.batches,e=this.batchKey+a,g=d[e],h;g&&(h=g.data[b]||[],g.data[b]=h.concat(c),1===g.count?(c=g.data,delete d[e],this.fireEvent("save",this,a,c)):--g.count)},createCallback:function(a,b,c){return"read"==a?this.loadRecords:function(d,e,g){this["on"+Ext.util.Format.capitalize(a)+"Records"](g,b,[].concat(d));!0===g&&this.fireEvent("write",this,a,d,e,b);this.removeFromBatch(c,a, +d)}},clearModified:function(a){if(Ext.isArray(a))for(var b=a.length-1;0<=b;b--)this.modified.splice(this.modified.indexOf(a[b]),1);else this.modified.splice(this.modified.indexOf(a),1)},reMap:function(a){if(Ext.isArray(a))for(var b=0,c=a.length;b<c;b++)this.reMap(a[b]);else delete this.data.map[a._phid],this.data.map[a.id]=a,b=this.data.keys.indexOf(a._phid),this.data.keys.splice(b,1,a.id),delete a._phid},onCreateRecords:function(a,b,c){if(!0===a)try{this.reader.realize(b,c),this.reMap(b)}catch(d){if(this.handleException(d), +Ext.isArray(b))this.onCreateRecords(a,b,c)}},onUpdateRecords:function(a,b,c){if(!0===a)try{this.reader.update(b,c)}catch(d){if(this.handleException(d),Ext.isArray(b))this.onUpdateRecords(a,b,c)}},onDestroyRecords:function(a,b){b=b instanceof Ext.data.Record?[b]:[].concat(b);for(var c=0,d=b.length;c<d;c++)this.removed.splice(this.removed.indexOf(b[c]),1);if(!1===a)for(c=b.length-1;0<=c;c--)this.insert(b[c].lastIndex,b[c])},handleException:function(a){Ext.handleError(a)},reload:function(a){this.load(Ext.applyIf(a|| +{},this.lastOptions))},loadRecords:function(a,b,c){var d;if(!0!==this.isDestroyed)if(!a||!1===c)!1!==c&&this.fireEvent("load",this,[],b),b.callback&&b.callback.call(b.scope||this,[],b,!1,a);else{c=a.records;var e=a.totalRecords||c.length;if(!b||!0!==b.add){this.pruneModifiedRecords&&(this.modified=[]);a=0;for(d=c.length;a<d;a++)c[a].join(this);this.snapshot&&(this.data=this.snapshot,delete this.snapshot);this.clearData();this.data.addAll(c);this.totalLength=e;this.applySort();this.fireEvent("datachanged", +this)}else{var g=[],h,j=0;a=0;for(d=c.length;a<d;++a)h=c[a],-1<this.indexOfId(h.id)?this.doUpdate(h):(g.push(h),++j);this.totalLength=Math.max(e,this.data.length+j);this.add(g)}this.fireEvent("load",this,c,b);b.callback&&b.callback.call(b.scope||this,c,b,!0)}},loadData:function(a,b){var c=this.reader.readRecords(a);this.loadRecords(c,{add:b},!0)},getCount:function(){return this.data.length||0},getTotalCount:function(){return this.totalLength||0},getSortState:function(){return this.sortInfo},applySort:function(){(this.sortInfo|| +this.multiSortInfo)&&!this.remoteSort&&this.sortData()},sortData:function(){var a=this.hasMultiSort?this.multiSortInfo:this.sortInfo,b=a.direction||"ASC",c=a.sorters,d=[];this.hasMultiSort||(c=[{direction:b,field:a.field}]);for(var a=0,e=c.length;a<e;a++)d.push(this.createSortFunction(c[a].field,c[a].direction));if(0!=d.length){var g="DESC"==b.toUpperCase()?-1:1,c=function(a,b){var c=d[0].call(this,a,b);if(1<d.length)for(var e=1,m=d.length;e<m;e++)c=c||d[e].call(this,a,b);return g*c};this.data.sort(b, +c);this.snapshot&&this.snapshot!=this.data&&this.snapshot.sort(b,c)}},createSortFunction:function(a,b){var c="DESC"==(b||"ASC").toUpperCase()?-1:1,d=this.fields.get(a).sortType;return function(b,g){var h=d(b.data[a]),j=d(g.data[a]);return c*(h>j?1:h<j?-1:0)}},setDefaultSort:function(a,b){b=b?b.toUpperCase():"ASC";this.sortInfo={field:a,direction:b};this.sortToggle[a]=b},sort:function(a,b){return Ext.isArray(a)?this.multiSort.call(this,a,b):this.singleSort(a,b)},singleSort:function(a,b){var c=this.fields.get(a); +if(!c)return!1;var d=c.name,e=this.sortInfo||null,g=this.sortToggle?this.sortToggle[d]:null;b||(b=e&&e.field==d?(this.sortToggle[d]||"ASC").toggle("ASC","DESC"):c.sortDir);this.sortToggle[d]=b;this.sortInfo={field:d,direction:b};this.hasMultiSort=!1;this.remoteSort?this.load(this.lastOptions)||(g&&(this.sortToggle[d]=g),e&&(this.sortInfo=e)):(this.applySort(),this.fireEvent("datachanged",this));return!0},multiSort:function(a,b){this.hasMultiSort=!0;b=b||"ASC";this.multiSortInfo&&b==this.multiSortInfo.direction&& +(b=b.toggle("ASC","DESC"));this.multiSortInfo={sorters:a,direction:b};this.remoteSort?this.singleSort(a[0].field,a[0].direction):(this.applySort(),this.fireEvent("datachanged",this))},each:function(a,b){this.data.each(a,b)},getModifiedRecords:function(){return this.modified},sum:function(a,b,c){var d=this.data.items,e=0;c=c||0===c?c:d.length-1;for(b=b||0;b<=c;b++)e+=d[b].data[a]||0;return e},createFilterFn:function(a,b,c,d,e){if(Ext.isEmpty(b,!1))return!1;b=this.data.createValueMatcher(b,c,d,e);return function(c){return b.test(c.data[a])}}, +createMultipleFilterFn:function(a){return function(b){for(var c=!0,d=0,e=a.length;d<e;d++)var g=a[d],h=g.fn,g=g.scope,c=c&&h.call(g,b);return c}},filter:function(a,b,c,d,e){Ext.isObject(a)&&(a=[a]);if(Ext.isArray(a)){b=[];c=0;for(d=a.length;c<d;c++){e=a[c];var g=e.fn,h=e.scope||this;Ext.isFunction(g)||(g=this.createFilterFn(e.property,e.value,e.anyMatch,e.caseSensitive,e.exactMatch));b.push({fn:g,scope:h})}a=this.createMultipleFilterFn(b)}else a=this.createFilterFn(a,b,c,d,e);return a?this.filterBy(a): +this.clearFilter()},filterBy:function(a,b){this.snapshot=this.snapshot||this.data;this.data=this.queryBy(a,b||this);this.fireEvent("datachanged",this)},clearFilter:function(a){this.isFiltered()&&(this.data=this.snapshot,delete this.snapshot,!0!==a&&this.fireEvent("datachanged",this))},isFiltered:function(){return!!this.snapshot&&this.snapshot!=this.data},query:function(a,b,c,d){return(a=this.createFilterFn(a,b,c,d))?this.queryBy(a):this.data.clone()},queryBy:function(a,b){return(this.snapshot||this.data).filterBy(a, +b||this)},find:function(a,b,c,d,e){return(a=this.createFilterFn(a,b,d,e))?this.data.findIndexBy(a,null,c):-1},findExact:function(a,b,c){return this.data.findIndexBy(function(c){return c.get(a)===b},this,c)},findBy:function(a,b,c){return this.data.findIndexBy(a,b,c)},collect:function(a,b,c){c=!0===c&&this.snapshot?this.snapshot.items:this.data.items;for(var d,e,g=[],h={},j=0,k=c.length;j<k;j++)if(d=c[j].data[a],e=String(d),(b||!Ext.isEmpty(d))&&!h[e])h[e]=!0,g[g.length]=d;return g},afterEdit:function(a){-1== +this.modified.indexOf(a)&&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 a=this.modified.slice(0),b=a.length,c;for(c=0;c<b;c++)a[c].commit();this.modified=[];this.removed=[]},rejectChanges:function(){var a=this.modified.slice(0),b=this.removed.slice(0).reverse(), +c=a.length,d=b.length,e;for(e=0;e<c;e++)a[e].reject();for(e=0;e<d;e++)this.insert(b[e].lastIndex||0,b[e]),b[e].reject();this.modified=[];this.removed=[]},onMetaChange:function(){this.recordType=this.reader.recordType;this.fields=this.recordType.prototype.fields;delete this.snapshot;this.reader.meta.sortInfo?this.sortInfo=this.reader.meta.sortInfo:this.sortInfo&&!this.fields.get(this.sortInfo.field)&&delete this.sortInfo;this.writer&&(this.writer.meta=this.reader.meta);this.modified=[];this.fireEvent("metachange", +this,this.reader.meta)},findInsertIndex:function(a){this.suspendEvents();var b=this.data.clone();this.data.add(a);this.applySort();a=this.data.indexOf(a);this.data=b;this.resumeEvents();return a},setBaseParam:function(a,b){this.baseParams=this.baseParams||{};this.baseParams[a]=b}});Ext.reg("store",Ext.data.Store);Ext.data.Store.Error=Ext.extend(Ext.Error,{name:"Ext.data.Store"});Ext.apply(Ext.data.Store.Error.prototype,{lang:{"writer-undefined":"Attempted to execute a write-action without a DataWriter installed."}}); +Ext.data.Field=Ext.extend(Object,{constructor:function(a){Ext.isString(a)&&(a={name:a});Ext.apply(this,a);a=Ext.data.Types;var b=this.sortType;this.type?Ext.isString(this.type)&&(this.type=Ext.data.Types[this.type.toUpperCase()]||a.AUTO):this.type=a.AUTO;Ext.isString(b)?this.sortType=Ext.data.SortTypes[b]:Ext.isEmpty(b)&&(this.sortType=this.type.sortType);this.convert||(this.convert=this.type.convert)},dateFormat:null,useNull:!1,defaultValue:"",mapping:null,sortType:null,sortDir:"ASC",allowBlank:!0}); +Ext.data.DataReader=function(a,b){this.meta=a;(this.recordType=Ext.isArray(b)?Ext.data.Record.create(b):b)&&this.buildExtractors()}; +Ext.data.DataReader.prototype={getTotal:Ext.emptyFn,getRoot:Ext.emptyFn,getMessage:Ext.emptyFn,getSuccess:Ext.emptyFn,getId:Ext.emptyFn,buildExtractors:Ext.emptyFn,extractValues:Ext.emptyFn,realize:function(a,b){if(Ext.isArray(a))for(var c=a.length-1;0<=c;c--)Ext.isArray(b)?this.realize(a.splice(c,1).shift(),b.splice(c,1).shift()):this.realize(a.splice(c,1).shift(),b);else{Ext.isArray(b)&&1==b.length&&(b=b.shift());if(!this.isData(b))throw new Ext.data.DataReader.Error("realize",a);a.phantom=!1;a._phid= +a.id;a.id=this.getId(b);a.data=b;a.commit()}},update:function(a,b){if(Ext.isArray(a))for(var c=a.length-1;0<=c;c--)Ext.isArray(b)?this.update(a.splice(c,1).shift(),b.splice(c,1).shift()):this.update(a.splice(c,1).shift(),b);else Ext.isArray(b)&&1==b.length&&(b=b.shift()),this.isData(b)&&(a.data=Ext.apply(a.data,b)),a.commit()},extractData:function(a,b){var c=this instanceof Ext.data.JsonReader?"json":"node",d=[];this.isData(a)&&!(this instanceof Ext.data.XmlReader)&&(a=[a]);var d=this.recordType.prototype.fields, +e=d.items,g=d.length,d=[];if(!0===b)for(var h=this.recordType,j=0;j<a.length;j++){var k=a[j],l=new h(this.extractValues(k,e,g),this.getId(k));l[c]=k;d.push(l)}else for(j=0;j<a.length;j++)c=this.extractValues(a[j],e,g),c[this.meta.idProperty]=this.getId(a[j]),d.push(c);return d},isData:function(a){return a&&Ext.isObject(a)&&!Ext.isEmpty(this.getId(a))?!0:!1},onMetaChange:function(a){delete this.ef;this.meta=a;this.recordType=Ext.data.Record.create(a.fields);this.buildExtractors()}}; +Ext.data.DataReader.Error=Ext.extend(Ext.Error,{constructor:function(a,b){this.arg=b;Ext.Error.call(this,a)},name:"Ext.data.DataReader"});Ext.apply(Ext.data.DataReader.Error.prototype,{lang:{update:"#update received invalid data from server. Please see docs for DataReader#update and review your DataReader configuration.",realize:"#realize was called with invalid remote-data. Please see the docs for DataReader#realize and review your DataReader configuration.","invalid-response":"#readResponse received an invalid response from the server."}}); +Ext.data.DataWriter=function(a){Ext.apply(this,a)}; +Ext.data.DataWriter.prototype={writeAllFields:!1,listful:!1,apply:function(a,b,c,d){var e=[],g=c+"Record";Ext.isArray(d)?Ext.each(d,function(a){e.push(this[g](a))},this):d instanceof Ext.data.Record&&(e=this[g](d));this.render(a,b,e)},render:Ext.emptyFn,updateRecord:Ext.emptyFn,createRecord:Ext.emptyFn,destroyRecord:Ext.emptyFn,toHash:function(a){var b=a.fields.map,c={},d=!1===this.writeAllFields&&!1===a.phantom?a.getChanges():a.data,e;Ext.iterate(d,function(a,d){if(e=b[a])c[e.mapping?e.mapping:e.name]= +d});a.phantom?a.fields.containsKey(this.meta.idProperty)&&Ext.isEmpty(a.data[this.meta.idProperty])&&delete c[this.meta.idProperty]:c[this.meta.idProperty]=a.id;return c},toArray:function(a){var b=[];Ext.iterate(a,function(a,d){b.push({name:a,value:d})},this);return b}}; +Ext.data.DataProxy=function(a){a=a||{};this.api=a.api;this.url=a.url;this.restful=a.restful;this.listeners=a.listeners;this.prettyUrls=a.prettyUrls;this.addEvents("exception","beforeload","load","loadexception","beforewrite","write");Ext.data.DataProxy.superclass.constructor.call(this);try{Ext.data.Api.prepare(this)}catch(b){b instanceof Ext.data.Api.Error&&b.toConsole()}Ext.data.DataProxy.relayEvents(this,["beforewrite","write","exception"])}; +Ext.extend(Ext.data.DataProxy,Ext.util.Observable,{restful:!1,setApi:function(){if(1==arguments.length){var a=Ext.data.Api.isValid(arguments[0]);if(!0===a)this.api=arguments[0];else throw new Ext.data.Api.Error("invalid",a);}else if(2==arguments.length){if(!Ext.data.Api.isAction(arguments[0]))throw new Ext.data.Api.Error("invalid",arguments[0]);this.api[arguments[0]]=arguments[1]}Ext.data.Api.prepare(this)},isApiAction:function(a){return this.api[a]?!0:!1},request:function(a,b,c,d,e,g,h){if(!this.api[a]&& +!this.load)throw new Ext.data.DataProxy.Error("action-undefined",a);c=c||{};(a===Ext.data.Api.actions.read?this.fireEvent("beforeload",this,c):!1!==this.fireEvent("beforewrite",this,a,b,c))?this.doRequest.apply(this,arguments):e.call(g||this,null,h,!1)},load:null,doRequest:function(a,b,c,d,e,g,h){this.load(c,d,e,g,h)},onRead:Ext.emptyFn,onWrite:Ext.emptyFn,buildUrl:function(a,b){b=b||null;var c=this.conn&&this.conn.url?this.conn.url:this.api[a]?this.api[a].url:this.url;if(!c)throw new Ext.data.Api.Error("invalid-url", +a);var d=null,e=c.match(/(.*)(\.json|\.xml|\.html)$/);e&&(d=e[2],c=e[1]);if((!0===this.restful||!0===this.prettyUrls)&&b instanceof Ext.data.Record&&!b.phantom)c+="/"+b.id;return null===d?c:c+d},destroy:function(){this.purgeListeners()}});Ext.apply(Ext.data.DataProxy,Ext.util.Observable.prototype);Ext.util.Observable.call(Ext.data.DataProxy);Ext.data.DataProxy.Error=Ext.extend(Ext.Error,{constructor:function(a,b){this.arg=b;Ext.Error.call(this,a)},name:"Ext.data.DataProxy"}); +Ext.apply(Ext.data.DataProxy.Error.prototype,{lang:{"action-undefined":"DataProxy attempted to execute an API-action but found an undefined url / function. Please review your Proxy url/api-configuration.","api-invalid":"Recieved an invalid API-configuration. Please ensure your proxy API-configuration contains only the actions from Ext.data.Api.actions."}});Ext.data.Request=function(a){Ext.apply(this,a)}; +Ext.data.Request.prototype={action:void 0,rs:void 0,params:void 0,callback:Ext.emptyFn,scope:void 0,reader:void 0};Ext.data.Response=function(a){Ext.apply(this,a)};Ext.data.Response.prototype={action:void 0,success:void 0,message:void 0,data:void 0,raw:void 0,records:void 0};Ext.data.ScriptTagProxy=function(a){Ext.apply(this,a);Ext.data.ScriptTagProxy.superclass.constructor.call(this,a);this.head=document.getElementsByTagName("head")[0]};Ext.data.ScriptTagProxy.TRANS_ID=1E3; +Ext.extend(Ext.data.ScriptTagProxy,Ext.data.DataProxy,{timeout:3E4,callbackParam:"callback",nocache:!0,doRequest:function(a,b,c,d,e,g,h){var j=Ext.urlEncode(Ext.apply(c,this.extraParams)),k=this.buildUrl(a,b);if(!k)throw new Ext.data.Api.Error("invalid-url",k);k=Ext.urlAppend(k,j);this.nocache&&(k=Ext.urlAppend(k,"_dc="+(new Date).getTime()));j=++Ext.data.ScriptTagProxy.TRANS_ID;c={id:j,action:a,cb:"stcCallback"+j,scriptId:"stcScript"+j,params:c,arg:h,url:k,callback:e,scope:g,reader:d};window[c.cb]= +this.createCallback(a,b,c);k+=String.format("&{0}={1}",this.callbackParam,c.cb);!1!==this.autoAbort&&this.abort();c.timeoutId=this.handleFailure.defer(this.timeout,this,[c]);a=document.createElement("script");a.setAttribute("src",k);a.setAttribute("type","text/javascript");a.setAttribute("id",c.scriptId);this.head.appendChild(a);this.trans=c},createCallback:function(a,b,c){var d=this;return function(e){d.trans=!1;d.destroyTrans(c,!0);a===Ext.data.Api.actions.read?d.onRead.call(d,a,c,e):d.onWrite.call(d, +a,c,e,b)}},onRead:function(a,b,c){var d;try{d=b.reader.readRecords(c)}catch(e){this.fireEvent("loadexception",this,b,c,e);this.fireEvent("exception",this,"response",a,b,c,e);b.callback.call(b.scope||window,null,b.arg,!1);return}!1===d.success?(this.fireEvent("loadexception",this,b,c),this.fireEvent("exception",this,"remote",a,b,c,null)):this.fireEvent("load",this,c,b.arg);b.callback.call(b.scope||window,d,b.arg,d.success)},onWrite:function(a,b,c,d){var e=b.reader;try{var g=e.readResponse(a,c)}catch(h){this.fireEvent("exception", +this,"response",a,b,g,h);b.callback.call(b.scope||window,null,g,!1);return}!0===!g.success?(this.fireEvent("exception",this,"remote",a,b,g,d),b.callback.call(b.scope||window,null,g,!1)):(this.fireEvent("write",this,a,g.data,g,d,b.arg),b.callback.call(b.scope||window,g.data,g,!0))},isLoading:function(){return this.trans?!0:!1},abort:function(){this.isLoading()&&this.destroyTrans(this.trans)},destroyTrans:function(a,b){this.head.removeChild(document.getElementById(a.scriptId));clearTimeout(a.timeoutId); +if(b){window[a.cb]=void 0;try{delete window[a.cb]}catch(c){}}else window[a.cb]=function(){window[a.cb]=void 0;try{delete window[a.cb]}catch(b){}}},handleFailure:function(a){this.trans=!1;this.destroyTrans(a,!1);a.action===Ext.data.Api.actions.read&&this.fireEvent("loadexception",this,null,a.arg);this.fireEvent("exception",this,"response",a.action,{response:null,options:a.arg});a.callback.call(a.scope||window,null,a.arg,!1)},destroy:function(){this.abort();Ext.data.ScriptTagProxy.superclass.destroy.call(this)}}); +Ext.data.HttpProxy=function(a){Ext.data.HttpProxy.superclass.constructor.call(this,a);this.conn=a;this.conn.url=null;this.useAjax=!a||!a.events;a=Ext.data.Api.actions;this.activeRequest={};for(var b in a)this.activeRequest[a[b]]=void 0}; +Ext.extend(Ext.data.HttpProxy,Ext.data.DataProxy,{getConnection:function(){return this.useAjax?Ext.Ajax:this.conn},setUrl:function(a,b){this.conn.url=a;!0===b&&(this.url=a,this.api=null,Ext.data.Api.prepare(this))},doRequest:function(a,b,c,d,e,g,h){d={method:this.api[a]?this.api[a].method:void 0,request:{callback:e,scope:g,arg:h},reader:d,callback:this.createCallback(a,b),scope:this};c.jsonData?d.jsonData=c.jsonData:c.xmlData?d.xmlData=c.xmlData:d.params=c||{};this.conn.url=this.buildUrl(a,b);this.useAjax? +(Ext.applyIf(d,this.conn),this.activeRequest[a]=Ext.Ajax.request(d)):this.conn.request(d);this.conn.url=null},createCallback:function(a,b){return function(c,d,e){this.activeRequest[a]=void 0;if(d)if(a===Ext.data.Api.actions.read)this.onRead(a,c,e);else this.onWrite(a,c,e,b);else a===Ext.data.Api.actions.read&&this.fireEvent("loadexception",this,c,e),this.fireEvent("exception",this,"response",a,c,e),c.request.callback.call(c.request.scope,null,c.request.arg,!1)}},onRead:function(a,b,c){var d;try{d= +b.reader.read(c)}catch(e){this.fireEvent("loadexception",this,b,c,e);this.fireEvent("exception",this,"response",a,b,c,e);b.request.callback.call(b.request.scope,null,b.request.arg,!1);return}!1===d.success?(this.fireEvent("loadexception",this,b,c),c=b.reader.readResponse(a,c),this.fireEvent("exception",this,"remote",a,b,c,null)):this.fireEvent("load",this,b,b.request.arg);b.request.callback.call(b.request.scope,d,b.request.arg,d.success)},onWrite:function(a,b,c,d){var e=b.reader,g;try{g=e.readResponse(a, +c)}catch(h){this.fireEvent("exception",this,"response",a,b,c,h);b.request.callback.call(b.request.scope,null,b.request.arg,!1);return}!0===g.success?this.fireEvent("write",this,a,g.data,g,d,b.request.arg):this.fireEvent("exception",this,"remote",a,b,g,d);b.request.callback.call(b.request.scope,g.data,g,g.success)},destroy:function(){if(this.useAjax){if(this.activeRequest){var a=Ext.data.Api.actions,b;for(b in a)this.activeRequest[a[b]]&&Ext.Ajax.abort(this.activeRequest[a[b]])}}else this.conn.abort(); +Ext.data.HttpProxy.superclass.destroy.call(this)}});Ext.data.MemoryProxy=function(a){var b={};b[Ext.data.Api.actions.read]=!0;Ext.data.MemoryProxy.superclass.constructor.call(this,{api:b});this.data=a};Ext.extend(Ext.data.MemoryProxy,Ext.data.DataProxy,{doRequest:function(a,b,c,d,e,g,h){var j;try{j=d.readRecords(this.data)}catch(k){this.fireEvent("loadexception",this,null,h,k);this.fireEvent("exception",this,"response",a,h,null,k);e.call(g,null,h,!1);return}e.call(g,j,h,!0)}}); +Ext.data.Types=new function(){var a=Ext.data.SortTypes;Ext.apply(this,{stripRe:/[\$,%]/g,AUTO:{convert:function(a){return a},sortType:a.none,type:"auto"},STRING:{convert:function(a){return void 0===a||null===a?"":String(a)},sortType:a.asUCString,type:"string"},INT:{convert:function(a){return void 0!==a&&null!==a&&""!==a?parseInt(String(a).replace(Ext.data.Types.stripRe,""),10):this.useNull?null:0},sortType:a.none,type:"int"},FLOAT:{convert:function(a){return void 0!==a&&null!==a&&""!==a?parseFloat(String(a).replace(Ext.data.Types.stripRe, +""),10):this.useNull?null:0},sortType:a.none,type:"float"},BOOL:{convert:function(a){return!0===a||"true"===a||1==a},sortType:a.none,type:"bool"},DATE:{convert:function(a){var c=this.dateFormat;return!a?null:Ext.isDate(a)?a:c?"timestamp"==c?new Date(1E3*a):"time"==c?new Date(parseInt(a,10)):Date.parseDate(a,c):(a=Date.parse(a))?new Date(a):null},sortType:a.asDate,type:"date"}});Ext.apply(this,{BOOLEAN:this.BOOL,INTEGER:this.INT,NUMBER:this.FLOAT})}; +Ext.data.JsonWriter=Ext.extend(Ext.data.DataWriter,{encode:!0,encodeDelete:!1,constructor:function(a){Ext.data.JsonWriter.superclass.constructor.call(this,a)},render:function(a,b,c){!0===this.encode?(Ext.apply(a,b),a[this.meta.root]=Ext.encode(c)):(b=Ext.apply({},b),b[this.meta.root]=c,a.jsonData=b)},createRecord:function(a){return this.toHash(a)},updateRecord:function(a){return this.toHash(a)},destroyRecord:function(a){if(this.encodeDelete){var b={};b[this.meta.idProperty]=a.id;return b}return a.id}}); +Ext.data.JsonReader=function(a,b){a=a||{};Ext.applyIf(a,{idProperty:"id",successProperty:"success",totalProperty:"total"});Ext.data.JsonReader.superclass.constructor.call(this,a,b||a.fields)}; +Ext.extend(Ext.data.JsonReader,Ext.data.DataReader,{read:function(a){a=Ext.decode(a.responseText);if(!a)throw{message:"JsonReader.read: Json object not found"};return this.readRecords(a)},readResponse:function(a,b){var c=void 0!==b.responseText?Ext.decode(b.responseText):b;if(!c)throw new Ext.data.JsonReader.Error("response");var d=this.getRoot(c);if(a===Ext.data.Api.actions.create){var e=Ext.isDefined(d);if(e&&Ext.isEmpty(d))throw new Ext.data.JsonReader.Error("root-empty",this.meta.root);if(!e)throw new Ext.data.JsonReader.Error("root-undefined-response", +this.meta.root);}c=new Ext.data.Response({action:a,success:this.getSuccess(c),data:d?this.extractData(d,!1):[],message:this.getMessage(c),raw:c});if(Ext.isEmpty(c.success))throw new Ext.data.JsonReader.Error("successProperty-response",this.meta.successProperty);return c},readRecords:function(a){this.jsonData=a;if(a.metaData)this.onMetaChange(a.metaData);var b=this.meta,c,d=this.getRoot(a),e=d.length,g=!0;b.totalProperty&&(c=parseInt(this.getTotal(a),10),isNaN(c)||(e=c));if(b.successProperty&&(c=this.getSuccess(a), +!1===c||"false"===c))g=!1;return{success:g,records:this.extractData(d,!0),totalRecords:e}},buildExtractors:function(){if(!this.ef){var a=this.meta,b=this.recordType.prototype.fields,c=b.items,d=b.length;a.totalProperty&&(this.getTotal=this.createAccessor(a.totalProperty));a.successProperty&&(this.getSuccess=this.createAccessor(a.successProperty));a.messageProperty&&(this.getMessage=this.createAccessor(a.messageProperty));this.getRoot=a.root?this.createAccessor(a.root):function(a){return a};if(a.id|| +a.idProperty){var e=this.createAccessor(a.id||a.idProperty);this.getId=function(a){a=e(a);return void 0===a||""===a?null:a}}else this.getId=function(){return null};for(var a=[],g=0;g<d;g++)b=c[g],a.push(this.createAccessor(void 0!==b.mapping&&null!==b.mapping?b.mapping:b.name));this.ef=a}},simpleAccess:function(a,b){return a[b]},createAccessor:function(){var a=/[\[\.]/;return function(b){if(Ext.isEmpty(b))return Ext.emptyFn;if(Ext.isFunction(b))return b;var c=String(b).search(a);return 0<=c?new Function("obj", +"return obj"+(0<c?".":"")+b):function(a){return a[b]}}}(),extractValues:function(a,b,c){for(var d,e={},g=0;g<c;g++){d=b[g];var h=this.ef[g](a);e[d.name]=d.convert(void 0!==h?h:d.defaultValue,a)}return e}});Ext.data.JsonReader.Error=Ext.extend(Ext.Error,{constructor:function(a,b){this.arg=b;Ext.Error.call(this,a)},name:"Ext.data.JsonReader"}); +Ext.apply(Ext.data.JsonReader.Error.prototype,{lang:{response:"An error occurred while json-decoding your server response","successProperty-response":'Could not locate your "successProperty" in your server response. Please review your JsonReader config to ensure the config-property "successProperty" matches the property in your server-response. See the JsonReader docs.',"root-undefined-config":'Your JsonReader was configured without a "root" property. Please review your JsonReader config and make sure to define the root property. See the JsonReader docs.', +"idProperty-undefined":'Your JsonReader was configured without an "idProperty" Please review your JsonReader configuration and ensure the "idProperty" is set (e.g.: "id"). See the JsonReader docs.',"root-empty":'Data was expected to be returned by the server in the "root" property of the response. Please review your JsonReader configuration to ensure the "root" property matches that returned in the server-response. See JsonReader docs.'}}); +Ext.data.ArrayReader=Ext.extend(Ext.data.JsonReader,{readRecords:function(a){this.arrayData=a;for(var b=this.meta,c=b?Ext.num(b.idIndex,b.id):null,d=this.recordType,e=d.prototype.fields,g=[],h=!0,j,k=this.getRoot(a),l=0,m=k.length;l<m;l++){for(var q=k[l],r={},n=(c||0===c)&&void 0!==q[c]&&""!==q[c]?q[c]:null,s=0,x=e.length;s<x;s++){var u=e.items[s];j=void 0!==u.mapping&&null!==u.mapping?u.mapping:s;j=void 0!==q[j]?q[j]:u.defaultValue;j=u.convert(j,q);r[u.name]=j}j=new d(r,n);j.json=q;g[g.length]=j}c= +g.length;b.totalProperty&&(j=parseInt(this.getTotal(a),10),isNaN(j)||(c=j));if(b.successProperty&&(j=this.getSuccess(a),!1===j||"false"===j))h=!1;return{success:h,records:g,totalRecords:c}}}); +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(a,b){if(!0===this.expandData){for(var c=[],d=0,e=a.length;d<e;d++)c[c.length]=[a[d]];a=c}Ext.data.ArrayStore.superclass.loadData.call(this,a,b)}});Ext.reg("arraystore",Ext.data.ArrayStore);Ext.data.SimpleStore=Ext.data.ArrayStore;Ext.reg("simplestore",Ext.data.SimpleStore); +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.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:!0,validationDelay:250,defaultAutoCreate:{tag:"input",type:"text",size:"20",autocomplete:"off"},fieldClass:"x-form-field",msgTarget:"qtip",msgFx:"normal",readOnly:!1,disabled:!1,submitValue:!0,isFormField:!0,msgDisplay:"",hasFocus:!1,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.name||this.id||""},onRender:function(a,b){if(!this.el){var c=this.getAutoCreate();c.name||(c.name=this.name||this.id);this.inputType&&(c.type=this.inputType);this.autoEl=c}Ext.form.Field.superclass.onRender.call(this,a,b);!1===this.submitValue&&this.el.dom.removeAttribute("name");if(c=this.el.dom.type)"password"==c&&(c="text"),this.el.addClass("x-form-"+c);this.readOnly&& +this.setReadOnly(!0);void 0!==this.tabIndex&&this.el.dom.setAttribute("tabIndex",this.tabIndex);this.el.addClass([this.fieldClass,this.cls])},getItemCt:function(){return this.itemCt},initValue:function(){void 0!==this.value?this.setValue(this.value):!Ext.isEmpty(this.el.dom.value)&&this.el.dom.value!=this.emptyText&&this.setValue(this.el.dom.value);this.originalValue=this.getValue()},isDirty:function(){return this.disabled||!this.rendered?!1:String(this.getValue())!==String(this.originalValue)},setReadOnly:function(a){this.rendered&& +(this.el.dom.readOnly=a);this.readOnly=a},afterRender:function(){Ext.form.Field.superclass.afterRender.call(this);this.initEvents();this.initValue()},fireKey:function(a){a.isSpecialKey()&&this.fireEvent("specialkey",this,a)},reset:function(){this.setValue(this.originalValue);this.clearInvalid()},initEvents:function(){this.mon(this.el,Ext.EventManager.getKeyEvent(),this.fireKey,this);this.mon(this.el,"focus",this.onFocus,this);this.mon(this.el,"blur",this.onBlur,this,this.inEditor?{buffer:10}:null)}, +preFocus:Ext.emptyFn,onFocus:function(){this.preFocus();this.focusClass&&this.el.addClass(this.focusClass);this.hasFocus||(this.hasFocus=!0,this.startValue=this.getValue(),this.fireEvent("focus",this))},beforeBlur:Ext.emptyFn,onBlur:function(){this.beforeBlur();this.focusClass&&this.el.removeClass(this.focusClass);this.hasFocus=!1;!1!==this.validationEvent&&(this.validateOnBlur||"blur"==this.validationEvent)&&this.validate();var a=this.getValue();String(a)!==String(this.startValue)&&this.fireEvent("change", +this,a,this.startValue);this.fireEvent("blur",this);this.postBlur()},postBlur:Ext.emptyFn,isValid:function(a){if(this.disabled)return!0;var b=this.preventMark;this.preventMark=!0===a;a=this.validateValue(this.processValue(this.getRawValue()));this.preventMark=b;return a},validate:function(){return this.disabled||this.validateValue(this.processValue(this.getRawValue()))?(this.clearInvalid(),!0):!1},processValue:function(a){return a},validateValue:function(a){a=this.getErrors(a)[0];if(void 0==a)return!0; +this.markInvalid(a);return!1},getErrors:function(){return[]},getActiveError:function(){return this.activeError||""},markInvalid:function(a){if(this.rendered&&!this.preventMark){a=a||this.invalidText;var b=this.getMessageHandler();if(b)b.mark(this,a);else if(this.msgTarget&&(this.el.addClass(this.invalidClass),b=Ext.getDom(this.msgTarget)))b.innerHTML=a,b.style.display=this.msgDisplay}this.setActiveError(a)},clearInvalid:function(){if(this.rendered&&!this.preventMark){this.el.removeClass(this.invalidClass); +var a=this.getMessageHandler();if(a)a.clear(this);else if(this.msgTarget&&(this.el.removeClass(this.invalidClass),a=Ext.getDom(this.msgTarget)))a.innerHTML="",a.style.display="none"}this.unsetActiveError()},setActiveError:function(a,b){this.activeError=a;!0!==b&&this.fireEvent("invalid",this,a)},unsetActiveError:function(a){delete this.activeError;!0!==a&&this.fireEvent("valid",this)},getMessageHandler:function(){return Ext.form.MessageTargets[this.msgTarget]},getErrorCt:function(){return this.el.findParent(".x-form-element", +5,!0)||this.el.findParent(".x-form-field-wrap",5,!0)},alignErrorEl:function(){this.errorEl.setWidth(this.getErrorCt().getWidth(!0)-20)},alignErrorIcon:function(){this.errorIcon.alignTo(this.el,"tl-tr",[2,0])},getRawValue:function(){var a=this.rendered?this.el.getValue():Ext.value(this.value,"");a===this.emptyText&&(a="");return a},getValue:function(){if(!this.rendered)return this.value;var a=this.el.getValue();if(a===this.emptyText||void 0===a)a="";return a},setRawValue:function(a){return this.rendered? +this.el.dom.value=Ext.isEmpty(a)?"":a:""},setValue:function(a){this.value=a;this.rendered&&(this.el.dom.value=Ext.isEmpty(a)?"":a,this.validate());return this},append:function(a){this.setValue([this.getValue(),a].join(""))}}); +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";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(a,b){a.el.addClass(a.invalidClass);if(!a.errorEl){var c=a.getErrorCt();if(!c){a.el.dom.title=b;return}a.errorEl=c.createChild({cls:"x-form-invalid-msg"}); +a.on("resize",a.alignErrorEl,a);a.on("destroy",function(){Ext.destroy(this.errorEl)},a)}a.alignErrorEl();a.errorEl.update(b);Ext.form.Field.msgFx[a.msgFx].show(a.errorEl,a)},clear:function(a){a.el.removeClass(a.invalidClass);a.errorEl?Ext.form.Field.msgFx[a.msgFx].hide(a.errorEl,a):a.el.dom.title=""}},side:{mark:function(a,b){a.el.addClass(a.invalidClass);if(!a.errorIcon){var c=a.getErrorCt();if(!c){a.el.dom.title=b;return}a.errorIcon=c.createChild({cls:"x-form-invalid-icon"});a.ownerCt&&(a.ownerCt.on("afterlayout", +a.alignErrorIcon,a),a.ownerCt.on("expand",a.alignErrorIcon,a));a.on("resize",a.alignErrorIcon,a);a.on("destroy",function(){Ext.destroy(this.errorIcon)},a)}a.alignErrorIcon();a.errorIcon.dom.qtip=b;a.errorIcon.dom.qclass="x-form-invalid-tip";a.errorIcon.show()},clear:function(a){a.el.removeClass(a.invalidClass);a.errorIcon?(a.errorIcon.dom.qtip="",a.errorIcon.hide()):a.el.dom.title=""}}}; +Ext.form.Field.msgFx={normal:{show:function(a){a.setDisplayed("block")},hide:function(a){a.setDisplayed(!1).update("")}},slide:{show:function(a){a.slideIn("t",{stopFx:!0})},hide:function(a){a.slideOut("t",{stopFx:!0,useDisplay:!0})}},slideRight:{show:function(a,b){a.fixDisplay();a.alignTo(b.el,"tl-tr");a.slideIn("l",{stopFx:!0})},hide:function(a){a.slideOut("l",{stopFx:!0,useDisplay:!0})}}};Ext.reg("field",Ext.form.Field); +Ext.form.TextField=Ext.extend(Ext.form.Field,{grow:!1,growMin:30,growMax:800,vtype:null,maskRe:null,disableKeyFilter:!1,allowBlank:!0,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:!1,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);"keyup"==this.validationEvent?(this.validationTask=new Ext.util.DelayedTask(this.validate,this),this.mon(this.el,"keyup",this.filterValidation,this)):!1!==this.validationEvent&&"blur"!=this.validationEvent&&this.mon(this.el,this.validationEvent,this.validate,this,{buffer:this.validationDelay});if(this.selectOnFocus||this.emptyText)this.mon(this.el,"mousedown",this.onMouseDown, +this),this.emptyText&&this.applyEmptyText();(this.maskRe||this.vtype&&!0!==this.disableKeyFilter&&(this.maskRe=Ext.form.VTypes[this.vtype+"Mask"]))&&this.mon(this.el,"keypress",this.filterKeys,this);this.grow&&(this.mon(this.el,"keyup",this.onKeyUpBuffered,this,{buffer:50}),this.mon(this.el,"click",this.autoSize,this));this.enableKeyEvents&&this.mon(this.el,{scope:this,keyup:this.onKeyUp,keydown:this.onKeyDown,keypress:this.onKeyPress})},onMouseDown:function(){this.hasFocus||this.mon(this.el,"mouseup", +Ext.emptyFn,this,{single:!0,preventDefault:!0})},processValue:function(a){if(this.stripCharsRe){var b=a.replace(this.stripCharsRe,"");if(b!==a)return this.setRawValue(b),b}return a},filterValidation:function(a){a.isNavKeyPress()||this.validationTask.delay(this.validationDelay)},onDisable:function(){Ext.form.TextField.superclass.onDisable.call(this);Ext.isIE&&(this.el.dom.unselectable="on")},onEnable:function(){Ext.form.TextField.superclass.onEnable.call(this);Ext.isIE&&(this.el.dom.unselectable="")}, +onKeyUpBuffered:function(a){this.doAutoSize(a)&&this.autoSize()},doAutoSize:function(a){return!a.isNavKeyPress()},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(){this.rendered&&(this.emptyText&&1>this.getRawValue().length&&!this.hasFocus)&&(this.setRawValue(this.emptyText), +this.el.addClass(this.emptyClass))},preFocus:function(){var a=this.el,b;this.emptyText&&(a.dom.value==this.emptyText&&(this.setRawValue(""),b=!0),a.removeClass(this.emptyClass));(this.selectOnFocus||b)&&a.dom.select()},postBlur:function(){this.applyEmptyText()},filterKeys:function(a){if(!a.ctrlKey){var b=a.getKey();if(!Ext.isGecko||!a.isNavKeyPress()&&!(b==a.BACKSPACE||b==a.DELETE&&-1==a.button))if(b=String.fromCharCode(a.getCharCode()),Ext.isGecko||!a.isSpecialKey()||b)this.maskRe.test(b)||a.stopEvent()}}, +setValue:function(a){this.emptyText&&(this.el&&!Ext.isEmpty(a))&&this.el.removeClass(this.emptyClass);Ext.form.TextField.superclass.setValue.apply(this,arguments);this.applyEmptyText();this.autoSize();return this},getErrors:function(a){var b=Ext.form.TextField.superclass.getErrors.apply(this,arguments);a=Ext.isDefined(a)?a:this.processValue(this.getRawValue());if(Ext.isFunction(this.validator)){var c=this.validator(a);!0!==c&&b.push(c)}if(1>a.length||a===this.emptyText){if(this.allowBlank)return b; +b.push(this.blankText)}!this.allowBlank&&(1>a.length||a===this.emptyText)&&b.push(this.blankText);a.length<this.minLength&&b.push(String.format(this.minLengthText,this.minLength));a.length>this.maxLength&&b.push(String.format(this.maxLengthText,this.maxLength));this.vtype&&(c=Ext.form.VTypes,c[this.vtype](a,this)||b.push(this.vtypeText||c[this.vtype+"Text"]));this.regex&&!this.regex.test(a)&&b.push(this.regexText);return b},selectText:function(a,b){var c=this.getRawValue(),d=!1;0<c.length?(a=void 0=== +a?0:a,b=void 0===b?c.length:b,d=this.el.dom,d.setSelectionRange?d.setSelectionRange(a,b):d.createTextRange&&(d=d.createTextRange(),d.moveStart("character",a),d.moveEnd("character",b-c.length),d.select()),d=Ext.isGecko||Ext.isOpera):d=!0;d&&this.focus()},autoSize:function(){if(this.grow&&this.rendered){this.metrics||(this.metrics=Ext.util.TextMetrics.createInstance(this.el));var a=this.el.dom.value,b=document.createElement("div");b.appendChild(document.createTextNode(a));a=b.innerHTML;Ext.removeNode(b); +a=Math.min(this.growMax,Math.max(this.metrics.getWidth(a+" ")+10,this.growMin));this.el.setWidth(a);this.fireEvent("autosize",this,a)}},onDestroy:function(){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:!1,editable:!0,readOnly:!1,wrapFocusClass:"x-trigger-wrap-focus",autoSize:Ext.emptyFn,monitorTab:!0,deferHeight:!0,mimicing:!1,actionMode:"wrap",defaultTriggerWidth:17,onResize:function(a,b){Ext.form.TriggerField.superclass.onResize.call(this,a,b);var c=this.getTriggerWidth();Ext.isNumber(a)&&this.el.setWidth(a-c);this.wrap.setWidth(this.el.getWidth()+c)},getTriggerWidth:function(){var a= +this.trigger.getWidth();!this.hideTrigger&&(!this.readOnly&&0===a)&&(a=this.defaultTriggerWidth);return a},alignErrorIcon:function(){this.wrap&&this.errorIcon.alignTo(this.wrap,"tl-tr",[2,0])},onRender:function(a,b){this.doc=Ext.isIE?Ext.getBody():Ext.getDoc();Ext.form.TriggerField.superclass.onRender.call(this,a,b);this.wrap=this.el.wrap({cls:"x-form-field-wrap x-form-field-trigger-wrap"});this.trigger=this.wrap.createChild(this.triggerConfig||{tag:"img",src:Ext.BLANK_IMAGE_URL,alt:"",cls:"x-form-trigger "+ +this.triggerClass});this.initTrigger();this.width||this.wrap.setWidth(this.el.getWidth()+this.trigger.getWidth());this.resizeEl=this.positionEl=this.wrap},getWidth:function(){return this.el.getWidth()+this.trigger.getWidth()},updateEditState:function(){this.rendered&&(this.readOnly?(this.el.dom.readOnly=!0,this.el.addClass("x-trigger-noedit"),this.mun(this.el,"click",this.onTriggerClick,this),this.trigger.setDisplayed(!1)):(this.editable?(this.el.dom.readOnly=!1,this.el.removeClass("x-trigger-noedit"), +this.mun(this.el,"click",this.onTriggerClick,this)):(this.el.dom.readOnly=!0,this.el.addClass("x-trigger-noedit"),this.mon(this.el,"click",this.onTriggerClick,this)),this.trigger.setDisplayed(!this.hideTrigger)),this.onResize(this.width||this.wrap.getWidth()))},setHideTrigger:function(a){a!=this.hideTrigger&&(this.hideTrigger=a,this.updateEditState())},setEditable:function(a){a!=this.editable&&(this.editable=a,this.updateEditState())},setReadOnly:function(a){a!=this.readOnly&&(this.readOnly=a,this.updateEditState())}, +afterRender:function(){Ext.form.TriggerField.superclass.afterRender.call(this);this.updateEditState()},initTrigger:function(){this.mon(this.trigger,"click",this.onTriggerClick,this,{preventDefault:!0});this.trigger.addClassOnOver("x-form-trigger-over");this.trigger.addClassOnClick("x-form-trigger-click")},onDestroy:function(){Ext.destroy(this.trigger,this.wrap);this.mimicing&&this.doc.un("mousedown",this.mimicBlur,this);delete this.doc;Ext.form.TriggerField.superclass.onDestroy.call(this)},onFocus:function(){Ext.form.TriggerField.superclass.onFocus.call(this); +if(!this.mimicing&&(this.wrap.addClass(this.wrapFocusClass),this.mimicing=!0,this.doc.on("mousedown",this.mimicBlur,this,{delay:10}),this.monitorTab))this.on("specialkey",this.checkTab,this)},checkTab:function(a,b){b.getKey()==b.TAB&&this.triggerBlur()},onBlur:Ext.emptyFn,mimicBlur:function(a){!this.isDestroyed&&(!this.wrap.contains(a.target)&&this.validateBlur(a))&&this.triggerBlur()},triggerBlur:function(){this.mimicing=!1;this.doc.un("mousedown",this.mimicBlur,this);this.monitorTab&&this.el&&this.un("specialkey", +this.checkTab,this);Ext.form.TriggerField.superclass.onBlur.call(this);this.wrap&&this.wrap.removeClass(this.wrapFocusClass)},beforeBlur:Ext.emptyFn,validateBlur:function(){return!0},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,alt:"",cls:"x-form-trigger "+this.trigger1Class},{tag:"img",src:Ext.BLANK_IMAGE_URL,alt:"",cls:"x-form-trigger "+this.trigger2Class}]}},getTrigger:function(a){return this.triggers[a]},afterRender:function(){Ext.form.TwinTriggerField.superclass.afterRender.call(this); +for(var a=this.triggers,b=0,c=a.length;b<c;++b)this["hideTrigger"+(b+1)]&&a[b].hide()},initTrigger:function(){var a=this.trigger.select(".x-form-trigger",!0),b=this;a.each(function(a,d,e){var g="Trigger"+(e+1);a.hide=function(){var a=b.wrap.getWidth();this.dom.style.display="none";b.el.setWidth(a-b.trigger.getWidth());b["hidden"+g]=!0};a.show=function(){var a=b.wrap.getWidth();this.dom.style.display="";b.el.setWidth(a-b.trigger.getWidth());b["hidden"+g]=!1};this.mon(a,"click",this["on"+g+"Click"], +this,{preventDefault:!0});a.addClassOnOver("x-form-trigger-over");a.addClassOnClick("x-form-trigger-click")},this);this.triggers=a.elements},getTriggerWidth:function(){var a=0;Ext.each(this.triggers,function(b,c){var d="Trigger"+(c+1),e=b.getWidth();a=0===e&&!this["hidden"+d]?a+this.defaultTriggerWidth:a+e},this);return a},onDestroy:function(){Ext.destroy(this.triggers);Ext.form.TwinTriggerField.superclass.onDestroy.call(this)},onTrigger1Click:Ext.emptyFn,onTrigger2Click:Ext.emptyFn}); +Ext.reg("trigger",Ext.form.TriggerField); +Ext.form.TextArea=Ext.extend(Ext.form.TextField,{growMin:60,growMax:1E3,growAppend:" \n ",enterIsSpecial:!1,preventScrollbars:!1,onRender:function(a,b){this.el||(this.defaultAutoCreate={tag:"textarea",style:"width:100px;height:60px;",autocomplete:"off"});Ext.form.TextArea.superclass.onRender.call(this,a,b);this.grow&&(this.textSizeEl=Ext.DomHelper.append(document.body,{tag:"pre",cls:"x-form-grow-sizer"}),this.preventScrollbars&&this.el.setStyle("overflow","hidden"),this.el.setHeight(this.growMin))}, +onDestroy:function(){Ext.removeNode(this.textSizeEl);Ext.form.TextArea.superclass.onDestroy.call(this)},fireKey:function(a){a.isSpecialKey()&&(this.enterIsSpecial||a.getKey()!=a.ENTER||a.hasModifier())&&this.fireEvent("specialkey",this,a)},doAutoSize:function(a){return!a.isNavKeyPress()||a.getKey()==a.ENTER},filterValidation:function(a){(!a.isNavKeyPress()||!this.enterIsSpecial&&a.keyCode==a.ENTER)&&this.validationTask.delay(this.validationDelay)},autoSize:function(){if(this.grow&&this.textSizeEl){var a= +Ext.util.Format.htmlEncode(this.el.dom.value),b=this.textSizeEl;Ext.fly(b).setWidth(this.el.getWidth());1>a.length?a="  ":(a+=this.growAppend,Ext.isIE&&(a=a.replace(/\n/g," <br />")));b.innerHTML=a;a=Math.min(this.growMax,Math.max(b.offsetHeight,this.growMin));a!=this.lastHeight&&(this.lastHeight=a,this.el.setHeight(a),this.fireEvent("autosize",this,a))}}});Ext.reg("textarea",Ext.form.TextArea); +Ext.form.NumberField=Ext.extend(Ext.form.TextField,{fieldClass:"x-form-field x-form-num-field",allowDecimals:!0,decimalSeparator:".",decimalPrecision:2,allowNegative:!0,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",autoStripChars:!1,initEvents:function(){var a=this.baseChars+"";this.allowDecimals&&(a+=this.decimalSeparator);this.allowNegative&& +(a+="-");a=Ext.escapeRe(a);this.maskRe=RegExp("["+a+"]");this.autoStripChars&&(this.stripCharsRe=RegExp("[^"+a+"]","gi"));Ext.form.NumberField.superclass.initEvents.call(this)},getErrors:function(a){var b=Ext.form.NumberField.superclass.getErrors.apply(this,arguments);a=Ext.isDefined(a)?a:this.processValue(this.getRawValue());if(1>a.length)return b;a=String(a).replace(this.decimalSeparator,".");isNaN(a)&&b.push(String.format(this.nanText,a));var c=this.parseValue(a);c<this.minValue&&b.push(String.format(this.minText, +this.minValue));c>this.maxValue&&b.push(String.format(this.maxText,this.maxValue));return b},getValue:function(){return this.fixPrecision(this.parseValue(Ext.form.NumberField.superclass.getValue.call(this)))},setValue:function(a){a=this.fixPrecision(a);a=Ext.isNumber(a)?a:parseFloat(String(a).replace(this.decimalSeparator,"."));a=isNaN(a)?"":String(a).replace(".",this.decimalSeparator);return Ext.form.NumberField.superclass.setValue.call(this,a)},setMinValue:function(a){this.minValue=Ext.num(a,Number.NEGATIVE_INFINITY)}, +setMaxValue:function(a){this.maxValue=Ext.num(a,Number.MAX_VALUE)},parseValue:function(a){a=parseFloat(String(a).replace(this.decimalSeparator,"."));return isNaN(a)?"":a},fixPrecision:function(a){var b=isNaN(a);return!this.allowDecimals||-1==this.decimalPrecision||b||!a?b?"":a:parseFloat(parseFloat(a).toFixed(this.decimalPrecision))},beforeBlur:function(){var a=this.parseValue(this.getRawValue());Ext.isEmpty(a)||this.setValue(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|n-j|n/j",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:!0,startDay:0,defaultAutoCreate:{tag:"input", +type:"text",size:"10",autocomplete:"off"},initTime:"12",initTimeFormat:"H",safeParse:function(a,b){if(/[gGhH]/.test(b.replace(/(\\.)/g,"")))return Date.parseDate(a,b);var c=Date.parseDate(a+" "+this.initTime,b+" "+this.initTimeFormat);if(c)return c.clearTime()},initComponent:function(){Ext.form.DateField.superclass.initComponent.call(this);this.addEvents("select");Ext.isString(this.minValue)&&(this.minValue=this.parseDate(this.minValue));Ext.isString(this.maxValue)&&(this.maxValue=this.parseDate(this.maxValue)); +this.disabledDatesRE=null;this.initDisabledDays()},initEvents:function(){Ext.form.DateField.superclass.initEvents.call(this);this.keyNav=new Ext.KeyNav(this.el,{down:function(){this.onTriggerClick()},scope:this,forceKeyDown:!0})},initDisabledDays:function(){if(this.disabledDates){var a=this.disabledDates,b=a.length-1,c="(?:";Ext.each(a,function(d,e){c+=Ext.isDate(d)?"^"+Ext.escapeRe(d.dateFormat(this.format))+"$":a[e];e!=b&&(c+="|")},this);this.disabledDatesRE=RegExp(c+")")}},setDisabledDates:function(a){this.disabledDates= +a;this.initDisabledDays();this.menu&&this.menu.picker.setDisabledDates(this.disabledDatesRE)},setDisabledDays:function(a){this.disabledDays=a;this.menu&&this.menu.picker.setDisabledDays(a)},setMinValue:function(a){this.minValue=Ext.isString(a)?this.parseDate(a):a;this.menu&&this.menu.picker.setMinDate(this.minValue)},setMaxValue:function(a){this.maxValue=Ext.isString(a)?this.parseDate(a):a;this.menu&&this.menu.picker.setMaxDate(this.maxValue)},getErrors:function(a){var b=Ext.form.DateField.superclass.getErrors.apply(this, +arguments);a=this.formatDate(a||this.processValue(this.getRawValue()));if(1>a.length)return b;var c=a;a=this.parseDate(a);if(!a)return b.push(String.format(this.invalidText,c,this.format)),b;c=a.getTime();this.minValue&&c<this.minValue.clearTime().getTime()&&b.push(String.format(this.minText,this.formatDate(this.minValue)));this.maxValue&&c>this.maxValue.clearTime().getTime()&&b.push(String.format(this.maxText,this.formatDate(this.maxValue)));if(this.disabledDays)for(var c=a.getDay(),d=0;d<this.disabledDays.length;d++)if(c=== +this.disabledDays[d]){b.push(this.disabledDaysText);break}c=this.formatDate(a);this.disabledDatesRE&&this.disabledDatesRE.test(c)&&b.push(String.format(this.disabledDatesText,c));return b},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(a){if(!a||Ext.isDate(a))return a; +var b=this.safeParse(a,this.format),c=this.altFormats,d=this.altFormatsArray;if(!b&&c)for(var d=d||c.split("|"),c=0,e=d.length;c<e&&!b;c++)b=this.safeParse(a,d[c]);return b},onDestroy:function(){Ext.destroy(this.menu,this.keyNav);Ext.form.DateField.superclass.onDestroy.call(this)},formatDate:function(a){return Ext.isDate(a)?a.dateFormat(this.format):a},onTriggerClick:function(){this.disabled||(null==this.menu&&(this.menu=new Ext.menu.DateMenu({hideOnClick:!1,focusOnSelect:!1})),this.onFocus(),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,startDay:this.startDay,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(!1,60);this.menuEvents("un")},beforeBlur:function(){var a=this.parseDate(this.getRawValue());a&&this.setValue(a)}});Ext.reg("datefield",Ext.form.DateField); +Ext.form.DisplayField=Ext.extend(Ext.form.Field,{validationEvent:!1,validateOnBlur:!1,defaultAutoCreate:{tag:"div"},fieldClass:"x-form-display-field",htmlEncode:!1,initEvents:Ext.emptyFn,isValid:function(){return!0},validate:function(){return!0},getRawValue:function(){var a=this.rendered?this.el.dom.innerHTML:Ext.value(this.value,"");a===this.emptyText&&(a="");this.htmlEncode&&(a=Ext.util.Format.htmlDecode(a));return a},getValue:function(){return this.getRawValue()},getName:function(){return this.name}, +setRawValue:function(a){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,autoSelect:!0,typeAhead:!1,queryDelay:500,pageSize:0,selectOnFocus:!1,queryParam:"query",loadingText:"Loading...",resizable:!1,handleHeight:8,allQuery:"",mode:"remote",minListWidth:70, +forceSelection:!1,typeAheadDelay:250,lazyInit:!0,clearFilterOnReset:!0,submitValue:void 0,initComponent:function(){Ext.form.ComboBox.superclass.initComponent.call(this);this.addEvents("expand","collapse","beforeselect","select","beforequery");if(this.transform){var a=Ext.getDom(this.transform);this.hiddenName||(this.hiddenName=a.name);if(!this.store){this.mode="local";for(var b=[],c=a.options,d=0,e=c.length;d<e;d++){var g=c[d],h=(g.hasAttribute?g.hasAttribute("value"):g.getAttributeNode("value").specified)? +g.value:g.text;g.selected&&Ext.isEmpty(this.value,!0)&&(this.value=h);b.push([h,g.text])}this.store=new Ext.data.ArrayStore({idIndex:0,fields:["value","text"],data:b,autoDestroy:!0});this.valueField="value";this.displayField="text"}a.name=Ext.id();this.lazyRender||(this.target=!0,this.el=Ext.DomHelper.insertBefore(a,this.autoCreate||this.defaultAutoCreate),this.render(this.el.parentNode,a));Ext.removeNode(a)}else this.store&&(this.store=Ext.StoreMgr.lookup(this.store),this.store.autoCreated&&(this.displayField= +this.valueField="field1",this.store.expandData||(this.displayField="field2"),this.mode="local"));this.selectedIndex=-1;"local"==this.mode&&(Ext.isDefined(this.initialConfig.queryDelay)||(this.queryDelay=10),Ext.isDefined(this.initialConfig.minChars)||(this.minChars=0))},onRender:function(a,b){this.hiddenName&&!Ext.isDefined(this.submitValue)&&(this.submitValue=!1);Ext.form.ComboBox.superclass.onRender.call(this,a,b);this.hiddenName&&(this.hiddenField=this.el.insertSibling({tag:"input",type:"hidden", +name:this.hiddenName,id:this.hiddenId||Ext.id()},"before",!0));Ext.isGecko&&this.el.dom.setAttribute("autocomplete","off");if(this.lazyInit)this.on("focus",this.initList,this,{single:!0});else this.initList()},initValue:function(){Ext.form.ComboBox.superclass.initValue.call(this);this.hiddenField&&(this.hiddenField.value=Ext.value(Ext.isDefined(this.hiddenValue)?this.hiddenValue:this.value,""))},getParentZIndex:function(){var a;this.ownerCt&&this.findParentBy(function(b){a=parseInt(b.getPositionEl().getStyle("z-index"), +10);return!!a});return a},getZIndex:function(a){a=a||Ext.getDom(this.getListParent()||Ext.getBody());(a=parseInt(Ext.fly(a).getStyle("z-index"),10))||(a=this.getParentZIndex());return(a||12E3)+5},initList:function(){if(!this.list){var a=Ext.getDom(this.getListParent()||Ext.getBody());this.list=new Ext.Layer({parentEl:a,shadow:this.shadow,cls:["x-combo-list",this.listClass].join(" "),constrain:!1,zindex:this.getZIndex(a)});a=this.listWidth||Math.max(this.wrap.getWidth(),this.minListWidth);this.list.setSize(a, +0);this.list.swallowEvent("mousewheel");this.assetHeight=0;!1!==this.syncFont&&this.list.setStyle("font-size",this.el.getStyle("font-size"));this.title&&(this.header=this.list.createChild({cls:"x-combo-list-hd",html:this.title}),this.assetHeight+=this.header.getHeight());this.innerList=this.list.createChild({cls:"x-combo-list-inner"});this.mon(this.innerList,"mouseover",this.onViewOver,this);this.mon(this.innerList,"mousemove",this.onViewMove,this);this.innerList.setWidth(a-this.list.getFrameWidth("lr")); +this.pageSize&&(this.footer=this.list.createChild({cls:"x-combo-list-ft"}),this.pageTb=new Ext.PagingToolbar({store:this.store,pageSize:this.pageSize,renderTo:this.footer}),this.assetHeight+=this.footer.getHeight());this.tpl||(this.tpl='<tpl for="."><div class="x-combo-list-item">{'+this.displayField+"}</div></tpl>");this.view=new Ext.DataView({applyTo:this.innerList,tpl:this.tpl,singleSelect:!0,selectedClass:this.selectedClass,itemSelector:this.itemSelector||".x-combo-list-item",emptyText:this.listEmptyText, +deferEmptyText:!1});this.mon(this.view,{containerclick:this.onViewClick,click:this.onViewClick,scope:this});this.bindStore(this.store,!0);this.resizable&&(this.resizer=new Ext.Resizable(this.list,{pinned:!0,handles:"se"}),this.mon(this.resizer,"resize",function(a,c,d){this.maxHeight=d-this.handleHeight-this.list.getFrameWidth("tb")-this.assetHeight;this.listWidth=c;this.innerList.setWidth(c-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){this.store&&!b&&(this.store!==a&&this.store.autoDestroy?this.store.destroy():(this.store.un("beforeload",this.onBeforeLoad,this),this.store.un("load",this.onLoad,this),this.store.un("exception",this.collapse,this)),a||(this.store=null,this.view&&this.view.bindStore(null),this.pageTb&&this.pageTb.bindStore(null)));a&&(b||(this.lastQuery=null,this.pageTb&&this.pageTb.bindStore(a)), +this.store=Ext.StoreMgr.lookup(a),this.store.on({scope:this,beforeload:this.onBeforeLoad,load:this.onLoad,exception:this.collapse}),this.view&&this.view.bindStore(a))},reset:function(){this.clearFilterOnReset&&"local"==this.mode&&this.store.clearFilter();Ext.form.ComboBox.superclass.reset.call(this)},initEvents:function(){Ext.form.ComboBox.superclass.initEvents.call(this);this.keyNav=new Ext.KeyNav(this.el,{up:function(){this.inKeyMode=!0;this.selectPrev()},down:function(){if(this.isExpanded())this.inKeyMode= +!0,this.selectNext();else this.onTriggerClick()},enter:function(){this.onViewClick()},esc:function(){this.collapse()},tab:function(){if(!0===this.forceSelection)this.collapse();else this.onViewClick(!1);return!0},scope:this,doRelay:function(a,b,c){if("down"==c||this.scope.isExpanded()){var d=Ext.KeyNav.prototype.doRelay.apply(this,arguments);!Ext.isIE&&Ext.EventManager.useKeydown&&this.scope.fireKey(a);return d}return!0},forceKeyDown:!0,defaultEventAction:"stopEvent"});this.queryDelay=Math.max(this.queryDelay|| +10,"local"==this.mode?10:250);this.dqTask=new Ext.util.DelayedTask(this.initQuery,this);this.typeAhead&&(this.taTask=new Ext.util.DelayedTask(this.onTypeAhead,this));this.enableKeyEvents||this.mon(this.el,"keyup",this.onKeyUp,this)},onDestroy:function(){this.dqTask&&(this.dqTask.cancel(),this.dqTask=null);this.bindStore(null);Ext.destroy(this.resizer,this.view,this.pageTb,this.list);Ext.destroyMembers(this,"hiddenField");Ext.form.ComboBox.superclass.onDestroy.call(this)},fireKey:function(a){this.isExpanded()|| +Ext.form.ComboBox.superclass.fireKey.call(this,a)},onResize:function(a,b){Ext.form.ComboBox.superclass.onResize.apply(this,arguments);!isNaN(a)&&this.isVisible()&&this.list?this.doResize(a):this.bufferSize=a},doResize:function(a){Ext.isDefined(this.listWidth)||(a=Math.max(a,this.minListWidth),this.list.setWidth(a),this.innerList.setWidth(a-this.list.getFrameWidth("lr")))},onEnable:function(){Ext.form.ComboBox.superclass.onEnable.apply(this,arguments);this.hiddenField&&(this.hiddenField.disabled=!1)}, +onDisable:function(){Ext.form.ComboBox.superclass.onDisable.apply(this,arguments);this.hiddenField&&(this.hiddenField.disabled=!0)},onBeforeLoad:function(){this.hasFocus&&(this.innerList.update(this.loadingText?'<div class="loading-indicator">'+this.loadingText+"</div>":""),this.restrictHeight(),this.selectedIndex=-1)},onLoad:function(){this.hasFocus&&(0<this.store.getCount()||this.listEmptyText?(this.expand(),this.restrictHeight(),this.lastQuery==this.allQuery?(this.editable&&this.el.dom.select(), +!1!==this.autoSelect&&!this.selectByValue(this.value,!0)&&this.select(0,!0)):(!1!==this.autoSelect&&this.selectNext(),this.typeAhead&&(this.lastKey!=Ext.EventObject.BACKSPACE&&this.lastKey!=Ext.EventObject.DELETE)&&this.taTask.delay(this.typeAheadDelay))):this.collapse())},onTypeAhead:function(){if(0<this.store.getCount()){var a=this.store.getAt(0).data[this.displayField],b=a.length,c=this.getRawValue().length;c!=b&&(this.setRawValue(a),this.selectText(c,a.length))}},assertValue:function(){var a= +this.getRawValue(),b;this.valueField&&Ext.isDefined(this.value)&&(b=this.findRecord(this.valueField,this.value));if(!b||b.get(this.displayField)!=a)b=this.findRecord(this.displayField,a);if(!b&&this.forceSelection)0<a.length&&a!=this.emptyText?(this.el.dom.value=Ext.value(this.lastSelectionText,""),this.applyEmptyText()):this.clearValue();else{if(b&&this.valueField){if(this.value==a)return;a=b.get(this.valueField||this.displayField)}this.setValue(a)}},onSelect:function(a,b){!1!==this.fireEvent("beforeselect", +this,a,b)&&(this.setValue(a.data[this.valueField||this.displayField]),this.collapse(),this.fireEvent("select",this,a,b))},getName:function(){var a=this.hiddenField;return a&&a.name?a.name:this.hiddenName||Ext.form.ComboBox.superclass.getName.call(this)},getValue:function(){return this.valueField?Ext.isDefined(this.value)?this.value:"":Ext.form.ComboBox.superclass.getValue.call(this)},clearValue:function(){this.hiddenField&&(this.hiddenField.value="");this.setRawValue("");this.lastSelectionText=""; +this.applyEmptyText();this.value=""},setValue:function(a){var b=a;if(this.valueField){var c=this.findRecord(this.valueField,a);c?b=c.data[this.displayField]:Ext.isDefined(this.valueNotFoundText)&&(b=this.valueNotFoundText)}this.lastSelectionText=b;this.hiddenField&&(this.hiddenField.value=Ext.value(a,""));Ext.form.ComboBox.superclass.setValue.call(this,b);this.value=a;return this},findRecord:function(a,b){var c;0<this.store.getCount()&&this.store.each(function(d){if(d.data[a]==b)return c=d,!1});return c}, +onViewMove:function(){this.inKeyMode=!1},onViewOver:function(a,b){if(!this.inKeyMode){var c=this.view.findItemFromChild(b);c&&(c=this.view.indexOf(c),this.select(c,!1))}},onViewClick:function(a){var b=this.view.getSelectedIndexes()[0],c=this.store.getAt(b);if(c)this.onSelect(c,b);else this.collapse();!1!==a&&this.el.focus()},restrictHeight:function(){this.innerList.dom.style.height="";var a=this.innerList.dom,b=this.list.getFrameWidth("tb")+(this.resizable?this.handleHeight:0)+this.assetHeight,a= +Math.max(a.clientHeight,a.offsetHeight,a.scrollHeight),c=this.getPosition()[1]-Ext.getBody().getScroll().top,d=Ext.lib.Dom.getViewHeight()-c-this.getSize().height,c=Math.max(c,d,this.minHeight||0)-this.list.shadowOffset-b-5,a=Math.min(a,c,this.maxHeight);this.innerList.setHeight(a);this.list.beginUpdate();this.list.setHeight(a+b);this.list.alignTo.apply(this.list,[this.el].concat(this.listAlign));this.list.endUpdate()},isExpanded:function(){return this.list&&this.list.isVisible()},selectByValue:function(a, +b){if(!Ext.isEmpty(a,!0)){var c=this.findRecord(this.valueField||this.displayField,a);if(c)return this.select(this.store.indexOf(c),b),!0}return!1},select:function(a,b){this.selectedIndex=a;this.view.select(a);if(!1!==b){var c=this.view.getNode(a);c&&this.innerList.scrollChildIntoView(c,!1)}},selectNext:function(){var a=this.store.getCount();0<a&&(-1==this.selectedIndex?this.select(0):this.selectedIndex<a-1&&this.select(this.selectedIndex+1))},selectPrev:function(){0<this.store.getCount()&&(-1==this.selectedIndex? +this.select(0):0!==this.selectedIndex&&this.select(this.selectedIndex-1))},onKeyUp:function(a){var b=a.getKey();if(!1!==this.editable&&!0!==this.readOnly&&(b==a.BACKSPACE||!a.isSpecialKey()))this.lastKey=b,this.dqTask.delay(this.queryDelay);Ext.form.ComboBox.superclass.onKeyUp.call(this,a)},validateBlur:function(){return!this.list||!this.list.isVisible()},initQuery:function(){this.doQuery(this.getRawValue())},beforeBlur:function(){this.assertValue()},postBlur:function(){Ext.form.ComboBox.superclass.postBlur.call(this); +this.collapse();this.inKeyMode=!1},doQuery:function(a,b){a=Ext.isEmpty(a)?"":a;var c={query:a,forceAll:b,combo:this,cancel:!1};if(!1===this.fireEvent("beforequery",c)||c.cancel)return!1;a=c.query;b=c.forceAll;if(!0===b||a.length>=this.minChars)this.lastQuery!==a?(this.lastQuery=a,"local"==this.mode?(this.selectedIndex=-1,b?this.store.clearFilter():this.store.filter(this.displayField,a),this.onLoad()):(this.store.baseParams[this.queryParam]=a,this.store.load({params:this.getParams(a)}),this.expand())): +(this.selectedIndex=-1,this.onLoad())},getParams:function(){var a={},b=this.store.paramNames;this.pageSize&&(a[b.start]=0,a[b.limit]=this.pageSize);return a},collapse:function(){this.isExpanded()&&(this.list.hide(),Ext.getDoc().un("mousewheel",this.collapseIf,this),Ext.getDoc().un("mousedown",this.collapseIf,this),this.fireEvent("collapse",this))},collapseIf:function(a){!this.isDestroyed&&(!a.within(this.wrap)&&!a.within(this.list))&&this.collapse()},expand:function(){if(!this.isExpanded()&&this.hasFocus){if(this.title|| +this.pageSize)this.assetHeight=0,this.title&&(this.assetHeight+=this.header.getHeight()),this.pageSize&&(this.assetHeight+=this.footer.getHeight());this.bufferSize&&(this.doResize(this.bufferSize),delete this.bufferSize);this.list.alignTo.apply(this.list,[this.el].concat(this.listAlign));this.list.setZIndex(this.getZIndex());this.list.show();Ext.isGecko2&&this.innerList.setOverflow("auto");this.mon(Ext.getDoc(),{scope:this,mousewheel:this.collapseIf,mousedown:this.collapseIf});this.fireEvent("expand", +this)}},onTriggerClick:function(){!this.readOnly&&!this.disabled&&(this.isExpanded()?this.collapse():(this.onFocus({}),"all"==this.triggerAction?this.doQuery(this.allQuery,!0):this.doQuery(this.getRawValue())),this.el.focus())}});Ext.reg("combo",Ext.form.ComboBox); +Ext.form.Checkbox=Ext.extend(Ext.form.Field,{focusClass:void 0,fieldClass:"x-form-field",checked:!1,boxLabel:" ",defaultAutoCreate:{tag:"input",type:"checkbox",autocomplete:"off"},actionMode:"wrap",initComponent:function(){Ext.form.Checkbox.superclass.initComponent.call(this);this.addEvents("check")},onResize:function(){Ext.form.Checkbox.superclass.onResize.apply(this,arguments);!this.boxLabel&&!this.fieldLabel&&this.el.alignTo(this.wrap,"c-c")},initEvents:function(){Ext.form.Checkbox.superclass.initEvents.call(this); +this.mon(this.el,{scope:this,click:this.onClick,change:this.onClick})},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,onRender:function(a,b){Ext.form.Checkbox.superclass.onRender.call(this,a,b);void 0!==this.inputValue&&(this.el.dom.value=this.inputValue);this.wrap=this.el.wrap({cls:"x-form-check-wrap"});this.boxLabel&&this.wrap.createChild({tag:"label",htmlFor:this.el.id,cls:"x-form-cb-label",html:this.boxLabel});this.checked?this.setValue(!0):this.checked=this.el.dom.checked;Ext.isIE&&!Ext.isStrict&& +this.wrap.repaint();this.resizeEl=this.positionEl=this.wrap},onDestroy:function(){Ext.destroy(this.wrap);Ext.form.Checkbox.superclass.onDestroy.call(this)},initValue:function(){this.originalValue=this.getValue()},getValue:function(){return this.rendered?this.el.dom.checked:this.checked},onClick:function(){this.el.dom.checked!=this.checked&&this.setValue(this.el.dom.checked)},setValue:function(a){var b=this.checked,c=this.inputValue;this.checked=!0===a||"true"===a||"1"==a||(c?a==c:"on"==String(a).toLowerCase()); +this.rendered&&(this.el.dom.checked=this.checked,this.el.dom.defaultChecked=this.checked);b!=this.checked&&(this.fireEvent("check",this,this.checked),this.handler&&this.handler.call(this.scope||this,this,this.checked));return this}});Ext.reg("checkbox",Ext.form.Checkbox); +Ext.form.CheckboxGroup=Ext.extend(Ext.form.Field,{columns:"auto",vertical:!1,allowBlank:!0,blankText:"You must select at least one item in this group",defaultType:"checkbox",groupCls:"x-form-check-group",initComponent:function(){this.addEvents("change");this.on("change",this.validate,this);Ext.form.CheckboxGroup.superclass.initComponent.call(this)},onRender:function(a,b){if(!this.el){var c={autoEl:{id:this.id},cls:this.groupCls,layout:"column",renderTo:a,bufferResize:!1},d={xtype:"container",defaultType:this.defaultType, +layout:"form",defaults:{hideLabel:!0,anchor:"100%"}};if(this.items[0].items){Ext.apply(c,{layoutConfig:{columns:this.items.length},defaults:this.defaults,items:this.items});for(var e=0,g=this.items.length;e<g;e++)Ext.applyIf(this.items[e],d)}else{var h,j=[];"string"==typeof this.columns&&(this.columns=this.items.length);if(!Ext.isArray(this.columns)){h=[];for(e=0;e<this.columns;e++)h.push(0.01*(100/this.columns));this.columns=h}h=this.columns.length;for(e=0;e<h;e++)g=Ext.apply({items:[]},d),g[1>= +this.columns[e]?"columnWidth":"width"]=this.columns[e],this.defaults&&(g.defaults=Ext.apply(g.defaults||{},this.defaults)),j.push(g);if(this.vertical)for(var d=Math.ceil(this.items.length/h),k=0,e=0,g=this.items.length;e<g;e++)0<e&&0==e%d&&k++,this.items[e].fieldLabel&&(this.items[e].hideLabel=!1),j[k].items.push(this.items[e]);else{e=0;for(g=this.items.length;e<g;e++)d=e%h,this.items[e].fieldLabel&&(this.items[e].hideLabel=!1),j[d].items.push(this.items[e])}Ext.apply(c,{layoutConfig:{columns:h}, +items:j})}this.panel=new Ext.Container(c);this.panel.ownerCt=this;this.el=this.panel.getEl();this.forId&&this.itemCls&&(c=this.el.up(this.itemCls).child("label",!0))&&c.setAttribute("htmlFor",this.forId);c=this.panel.findBy(function(a){return a.isFormField},this);this.items=new Ext.util.MixedCollection;this.items.addAll(c)}Ext.form.CheckboxGroup.superclass.onRender.call(this,a,b)},initValue:function(){this.value&&(this.setValue.apply(this,this.buffered?this.value:[this.value]),delete this.buffered, +delete this.value)},afterRender:function(){Ext.form.CheckboxGroup.superclass.afterRender.call(this);this.eachItem(function(a){a.on("check",this.fireChecked,this);a.inGroup=!0})},doLayout:function(){this.rendered&&(this.panel.forceLayout=this.ownerCt.forceLayout,this.panel.doLayout())},fireChecked:function(){var a=[];this.eachItem(function(b){b.checked&&a.push(b)});this.fireEvent("change",this,a)},getErrors:function(){var a=Ext.form.CheckboxGroup.superclass.getErrors.apply(this,arguments);if(!this.allowBlank){var b= +!0;this.eachItem(function(a){if(a.checked)return b=!1});b&&a.push(this.blankText)}return a},isDirty:function(){if(this.disabled||!this.rendered)return!1;var a=!1;this.eachItem(function(b){if(b.isDirty())return a=!0,!1});return a},setReadOnly:function(a){this.rendered&&this.eachItem(function(b){b.setReadOnly(a)});this.readOnly=a},onDisable:function(){this.eachItem(function(a){a.disable()})},onEnable:function(){this.eachItem(function(a){a.enable()})},onResize:function(a,b){this.panel.setSize(a,b);this.panel.doLayout()}, +reset:function(){this.originalValue?(this.eachItem(function(a){a.setValue&&(a.setValue(!1),a.originalValue=a.getValue())}),this.resetOriginal=!0,this.setValue(this.originalValue),delete this.resetOriginal):this.eachItem(function(a){a.reset&&a.reset()});(function(){this.clearInvalid()}).defer(50,this)},setValue:function(){this.rendered?this.onSetValue.apply(this,arguments):(this.buffered=!0,this.value=arguments);return this},onSetValue:function(a,b){if(1==arguments.length)if(Ext.isArray(a))Ext.each(a, +function(a,b){if(Ext.isObject(a)&&a.setValue)a.setValue(!0),!0===this.resetOriginal&&(a.originalValue=a.getValue());else{var c=this.items.itemAt(b);c&&c.setValue(a)}},this);else if(Ext.isObject(a))for(var c in a){var d=this.getBox(c);d&&d.setValue(a[c])}else this.setValueForItem(a);else(d=this.getBox(a))&&d.setValue(b)},beforeDestroy:function(){Ext.destroy(this.panel);this.rendered||Ext.destroy(this.items);Ext.form.CheckboxGroup.superclass.beforeDestroy.call(this)},setValueForItem:function(a){a=String(a).split(","); +this.eachItem(function(b){-1<a.indexOf(b.inputValue)&&b.setValue(!0)})},getBox:function(a){var b=null;this.eachItem(function(c){if(a==c||c.dataIndex==a||c.id==a||c.getName()==a)return b=c,!1});return b},getValue:function(){var a=[];this.eachItem(function(b){b.checked&&a.push(b)});return a},eachItem:function(a,b){this.items&&this.items.each&&this.items.each(a,b||this)},getRawValue:Ext.emptyFn,setRawValue:Ext.emptyFn});Ext.reg("checkboxgroup",Ext.form.CheckboxGroup); +Ext.form.CompositeField=Ext.extend(Ext.form.Field,{defaultMargins:"0 5 0 0",skipLastItemMargin:!0,isComposite:!0,combineErrors:!0,labelConnector:", ",initComponent:function(){for(var a=[],b=this.items,c,d=0,e=b.length;d<e;d++)c=b[d],Ext.isEmpty(c.ref)||(c.ref="../"+c.ref),a.push(c.fieldLabel),Ext.applyIf(c,this.defaults),d==e-1&&this.skipLastItemMargin||Ext.applyIf(c,{margins:this.defaultMargins});this.fieldLabel=this.fieldLabel||this.buildLabel(a);this.fieldErrors=new Ext.util.MixedCollection(!0, +function(a){return a.field});this.fieldErrors.on({scope:this,add:this.updateInvalidMark,remove:this.updateInvalidMark,replace:this.updateInvalidMark});Ext.form.CompositeField.superclass.initComponent.apply(this,arguments);this.innerCt=new Ext.Container({layout:"hbox",items:this.items,cls:"x-form-composite",defaultMargins:"0 3 0 0",ownerCt:this});this.innerCt.ownerCt=void 0;a=this.innerCt.findBy(function(a){return a.isFormField},this);this.items=new Ext.util.MixedCollection;this.items.addAll(a)},onRender:function(a, +b){if(!this.el){var c=this.innerCt;c.render(a);this.el=c.getEl();this.combineErrors&&this.eachItem(function(a){Ext.apply(a,{markInvalid:this.onFieldMarkInvalid.createDelegate(this,[a],0),clearInvalid:this.onFieldClearInvalid.createDelegate(this,[a],0)})});(c=this.el.parent().parent().child("label",!0))&&c.setAttribute("for",this.items.items[0].id)}Ext.form.CompositeField.superclass.onRender.apply(this,arguments)},onFieldMarkInvalid:function(a,b){var c=a.getName();this.fieldErrors.replace(c,{field:c, +errorName:a.fieldLabel||c,error:b});a.el.addClass(a.invalidClass)},onFieldClearInvalid:function(a){this.fieldErrors.removeKey(a.getName());a.el.removeClass(a.invalidClass)},updateInvalidMark:function(){var a=Ext.isIE6&&Ext.isStrict;if(0==this.fieldErrors.length)this.clearInvalid(),a&&this.clearInvalid.defer(50,this);else{var b=this.buildCombinedErrorMessage(this.fieldErrors.items);this.sortErrors();this.markInvalid(b);a&&this.markInvalid(b)}},validateValue:function(){var a=!0;this.eachItem(function(b){b.isValid()|| +(a=!1)});return a},buildCombinedErrorMessage:function(a){for(var b=[],c,d=0,e=a.length;d<e;d++)c=a[d],b.push(String.format("{0}: {1}",c.errorName,c.error));return b.join("<br />")},sortErrors:function(){var a=this.items;this.fieldErrors.sort("ASC",function(b,c){var d=function(a){return function(b){return b.getName()==a}},e=a.findIndexBy(d(b.field)),d=a.findIndexBy(d(c.field));return e<d?-1:1})},reset:function(){this.eachItem(function(a){a.reset()});(function(){this.clearInvalid()}).defer(50,this)}, +clearInvalidChildren:function(){this.eachItem(function(a){a.clearInvalid()})},buildLabel:function(a){return Ext.clean(a).join(this.labelConnector)},isDirty:function(){if(this.disabled||!this.rendered)return!1;var a=!1;this.eachItem(function(b){if(b.isDirty())return a=!0,!1});return a},eachItem:function(a,b){this.items&&this.items.each&&this.items.each(a,b||this)},onResize:function(a,b,c,d){var e=this.innerCt;this.rendered&&e.rendered&&e.setSize(a,b);Ext.form.CompositeField.superclass.onResize.apply(this, +arguments)},doLayout:function(a,b){if(this.rendered){var c=this.innerCt;c.forceLayout=this.ownerCt.forceLayout;c.doLayout(a,b)}},beforeDestroy:function(){Ext.destroy(this.innerCt);Ext.form.CompositeField.superclass.beforeDestroy.call(this)},setReadOnly:function(a){void 0==a&&(a=!0);a=!!a;this.rendered&&this.eachItem(function(b){b.setReadOnly(a)});this.readOnly=a},onShow:function(){Ext.form.CompositeField.superclass.onShow.call(this);this.doLayout()},onDisable:function(){this.eachItem(function(a){a.disable()})}, +onEnable:function(){this.eachItem(function(a){a.enable()})}});Ext.reg("compositefield",Ext.form.CompositeField); +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()).child("input[name="+this.el.dom.name+"]:checked",!0);return a?a.value:null},setValue:function(a){var b;"boolean"==typeof a?Ext.form.Radio.superclass.setValue.call(this,a):this.rendered&&(b=this.getCheckEl(),(a=b.child("input[name="+this.el.dom.name+"][value="+a+"]",!0))&&Ext.getCmp(a.id).setValue(!0));this.rendered&&this.checked&& +(b=b||this.getCheckEl(),b=this.getCheckEl().select("input[name="+this.el.dom.name+"]"),b.each(function(a){a.dom.id!=this.id&&Ext.getCmp(a.dom.id).setValue(!1)},this));return this},getCheckEl:function(){return this.inGroup?this.el.up(".x-form-radio-group"):this.el.up("form")||Ext.getBody()}});Ext.reg("radio",Ext.form.Radio); +Ext.form.RadioGroup=Ext.extend(Ext.form.CheckboxGroup,{allowBlank:!0,blankText:"You must select one item in this group",defaultType:"radio",groupCls:"x-form-radio-group",getValue:function(){var a=null;this.eachItem(function(b){if(b.checked)return a=b,!1});return a},onSetValue:function(a,b){if(1<arguments.length){var c=this.getBox(a);c&&(c.setValue(b),c.checked&&this.eachItem(function(a){a!==c&&a.setValue(!1)}))}else this.setValueForItem(a)},setValueForItem:function(a){a=String(a).split(",")[0];this.eachItem(function(b){b.setValue(a== +b.inputValue)})},fireChecked:function(){this.checkTask||(this.checkTask=new Ext.util.DelayedTask(this.bufferChecked,this));this.checkTask.delay(10)},bufferChecked:function(){var a=null;this.eachItem(function(b){if(b.checked)return a=b,!1});this.fireEvent("change",this,a)},onDestroy:function(){this.checkTask&&(this.checkTask.cancel(),this.checkTask=null);Ext.form.RadioGroup.superclass.onDestroy.call(this)}});Ext.reg("radiogroup",Ext.form.RadioGroup); +Ext.form.Hidden=Ext.extend(Ext.form.Field,{inputType:"hidden",shouldLayout:!1,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=Ext.extend(Ext.util.Observable,{constructor:function(a,b){Ext.apply(this,b);Ext.isString(this.paramOrder)&&(this.paramOrder=this.paramOrder.split(/[\s,|]/));this.items=new Ext.util.MixedCollection(!1,function(a){return a.getItemId()});this.addEvents("beforeaction","actionfailed","actioncomplete");a&&this.initEl(a);Ext.form.BasicForm.superclass.constructor.call(this)},timeout:30,paramOrder:void 0,paramsAsHash:!1,waitTitle:"Please Wait...",activeAction:null,trackResetOnLoad:!1,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(a){!0!==a&&(this.items.each(function(a){Ext.destroy(a)}),Ext.destroy(this.el));this.items.clear();this.purgeListeners()},isValid:function(){var a=!0;this.items.each(function(b){b.validate()||(a=!1)});return a},isDirty:function(){var a=!1;this.items.each(function(b){if(b.isDirty())return a= +!0,!1});return a},doAction:function(a,b){Ext.isString(a)&&(a=new Ext.form.Action.ACTION_TYPES[a](this,b));!1!==this.fireEvent("beforeaction",this,a)&&(this.beforeAction(a),a.run.defer(100,a));return this},submit:function(a){a=a||{};if(this.standardSubmit){if(a=!1===a.clientValidation||this.isValid()){var b=this.el.dom;this.url&&Ext.isEmpty(b.action)&&(b.action=this.url);b.submit()}return a}b=String.format("{0}submit",this.api?"direct":"");this.doAction(b,a);return this},load:function(a){var b=String.format("{0}load", +this.api?"direct":"");this.doAction(b,a);return this},updateRecord:function(a){a.beginEdit();var b,c;a.fields.each(function(d){if(b=this.findField(d.name))c=b.getValue(),void 0!=typeof c&&c.getGroupValue?c=c.getGroupValue():b.eachItem&&(c=[],b.eachItem(function(a){c.push(a.getValue())})),a.set(d.name,c)},this);a.endEdit();return this},loadRecord:function(a){this.setValues(a.data);return this},beforeAction:function(a){this.items.each(function(a){a.isFormField&&a.syncValue&&a.syncValue()});a=a.options; +a.waitMsg&&(!0===this.waitMsgTarget?this.el.mask(a.waitMsg,"x-mask-loading"):this.waitMsgTarget?(this.waitMsgTarget=Ext.get(this.waitMsgTarget),this.waitMsgTarget.mask(a.waitMsg,"x-mask-loading")):Ext.MessageBox.wait(a.waitMsg,a.waitTitle||this.waitTitle))},afterAction:function(a,b){this.activeAction=null;var c=a.options;c.waitMsg&&(!0===this.waitMsgTarget?this.el.unmask():this.waitMsgTarget?this.waitMsgTarget.unmask():(Ext.MessageBox.updateProgress(1),Ext.MessageBox.hide()));b?(c.reset&&this.reset(), +Ext.callback(c.success,c.scope,[this,a]),this.fireEvent("actioncomplete",this,a)):(Ext.callback(c.failure,c.scope,[this,a]),this.fireEvent("actionfailed",this,a))},findField:function(a){var b=this.items.get(a);if(!Ext.isObject(b)){var c=function(d){if(d.isFormField){if(d.dataIndex==a||d.id==a||d.getName()==a)return b=d,!1;if(d.isComposite)return d.items.each(c);if(d instanceof Ext.form.CheckboxGroup&&d.rendered)return d.eachItem(c)}};this.items.each(c)}return b||null},markInvalid:function(a){if(Ext.isArray(a))for(var b= +0,c=a.length;b<c;b++){var d=a[b],e=this.findField(d.id);e&&e.markInvalid(d.msg)}else for(c in a)!Ext.isFunction(a[c])&&(b=this.findField(c))&&b.markInvalid(a[c]);return this},setValues:function(a){if(Ext.isArray(a))for(var b=0,c=a.length;b<c;b++){var d=a[b],e=this.findField(d.id);e&&(e.setValue(d.value),this.trackResetOnLoad&&(e.originalValue=e.getValue()))}else for(c in a)if(!Ext.isFunction(a[c])&&(b=this.findField(c)))b.setValue(a[c]),this.trackResetOnLoad&&(b.originalValue=b.getValue());return this}, +getValues:function(a){var b=Ext.lib.Ajax.serializeForm(this.el.dom);return!0===a?b:Ext.urlDecode(b)},getFieldValues:function(a){var b={},c,d,e;this.items.each(function(g){if(!g.disabled&&(!0!==a||g.isDirty()))c=g.getName(),d=b[c],e=g.getValue(),Ext.isDefined(d)?Ext.isArray(d)?b[c].push(e):b[c]=[d,e]:b[c]=e});return b},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},cleanDestroyed:function(){this.items.filterBy(function(a){return!!a.isDestroyed}).each(this.remove,this)},render:function(){this.items.each(function(a){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(a, +b){b=b||[];this.items.each(function(c){Ext.isFunction(c[a])&&c[a].apply(c,b)});return this}});Ext.BasicForm=Ext.form.BasicForm; +Ext.FormPanel=Ext.extend(Ext.Panel,{minButtonWidth:75,labelAlign:"left",monitorValid:!1,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()};this.fileUpload&&(this.bodyCfg.enctype="multipart/form-data");this.initItems();this.addEvents("clientvalidation");this.relayEvents(this.form,["beforeaction","actionfailed","actioncomplete"])}, +createForm:function(){var a=Ext.applyIf({listeners:{}},this.initialConfig);return new Ext.form.BasicForm(null,a)},initFields:function(){var a=this.form,b=this,c=function(d){b.isField(d)?a.add(d):d.findBy&&d!=b&&(b.applySettings(d),d.items&&d.items.each&&d.items.each(c,this))};this.items.each(c,this)},applySettings:function(a){var b=a.ownerCt;Ext.applyIf(a,{labelAlign:b.labelAlign,labelWidth:b.labelWidth,itemCls:b.itemCls})},getLayoutTarget:function(){return this.form.el},getForm:function(){return this.form}, +onRender:function(a,b){this.initFields();Ext.FormPanel.superclass.onRender.call(this,a,b);this.form.initEl(this.body)},beforeDestroy:function(){this.stopMonitoring();this.form.destroy(!0);Ext.FormPanel.superclass.beforeDestroy.call(this)},isField:function(a){return!!a.setValue&&!!a.getValue&&!!a.markInvalid&&!!a.clearInvalid},initEvents:function(){Ext.FormPanel.superclass.initEvents.call(this);this.on({scope:this,add:this.onAddEvent,remove:this.onRemoveEvent});this.monitorValid&&this.startMonitoring()}, +onAdd:function(a){Ext.FormPanel.superclass.onAdd.call(this,a);this.processAdd(a)},onAddEvent:function(a,b){a!==this&&this.processAdd(b)},processAdd:function(a){this.isField(a)?this.form.add(a):a.findBy&&(this.applySettings(a),this.form.add.apply(this.form,a.findBy(this.isField)))},onRemove:function(a){Ext.FormPanel.superclass.onRemove.call(this,a);this.processRemove(a)},onRemoveEvent:function(a,b){a!==this&&this.processRemove(b)},processRemove:function(a){this.destroying||(this.isField(a)?this.form.remove(a): +a.findBy&&(Ext.each(a.findBy(this.isField),this.form.remove,this.form),this.form.cleanDestroyed()))},startMonitoring:function(){this.validTask||(this.validTask=new Ext.util.TaskRunner,this.validTask.start({run:this.bindHandler,interval:this.monitorPoll||200,scope:this}))},stopMonitoring:function(){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);this.form&&this.form.items.each(function(){this.disable()})}, +onEnable:function(){Ext.FormPanel.superclass.onEnable.call(this);this.form&&this.form.items.each(function(){this.enable()})},bindHandler:function(){var a=!0;this.form.items.each(function(b){if(!b.isValid(!0))return a=!1});if(this.fbar)for(var b=this.fbar.items.items,c=0,d=b.length;c<d;c++){var e=b[c];!0===e.formBind&&e.disabled===a&&e.setDisabled(!a)}this.fireEvent("clientvalidation",this,a)}});Ext.reg("form",Ext.FormPanel);Ext.form.FormPanel=Ext.FormPanel; +Ext.form.FieldSet=Ext.extend(Ext.Panel,{baseCls:"x-fieldset",layout:"form",animCollapse:!1,onRender:function(a,b){if(!this.el&&(this.el=document.createElement("fieldset"),this.el.id=this.id,this.title||this.header||this.checkboxToggle))this.el.appendChild(document.createElement("legend")).className=this.baseCls+"-header";Ext.form.FieldSet.superclass.onRender.call(this,a,b);this.checkboxToggle&&(this.checkbox=this.header.insertFirst("object"==typeof this.checkboxToggle?this.checkboxToggle:{tag:"input", +type:"checkbox",name:this.checkboxName||this.id+"-checkbox"}),this.checkbox.dom.checked=!this.collapsed,this.mon(this.checkbox,"click",this.onCheckClick,this))},onCollapse:function(a,b){this.checkbox&&(this.checkbox.dom.checked=!1);Ext.form.FieldSet.superclass.onCollapse.call(this,a,b)},onExpand:function(a,b){this.checkbox&&(this.checkbox.dom.checked=!0);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:!0,enableFontSize:!0,enableColors:!0,enableAlignments:!0,enableLists:!0,enableSourceEdit:!0,enableLinks:!0,enableFont:!0,createLinkText:"Please enter the URL for the link:",defaultLinkValue:"http://",fontFamilies:["Arial","Courier New","Tahoma","Times New Roman","Verdana"],defaultFont:"tahoma",defaultValue:Ext.isOpera||Ext.isIE6?" ":"​",actionMode:"wrap",validationEvent:!1,deferHeight:!0,initialized:!1,activated:!1,sourceEditMode:!1, +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");Ext.form.HtmlEditor.superclass.initComponent.call(this)},createFontOptions:function(){for(var a=[],b=this.fontFamilies,c,d,e=0,g=b.length;e<g;e++)c=b[e],d=c.toLowerCase(),a.push('<option value="',d,'" style="font-family:',c,';"',this.defaultFont== +d?' selected="true">':">",c,"</option>");return a.join("")},createToolbar:function(a){function b(b,c,e){return{itemId:b,cls:"x-btn-icon",iconCls:"x-edit-"+b,enableToggle:!1!==c,scope:a,handler:e||a.relayBtnCmd,clickEvent:"mousedown",tooltip:d?a.buttonTips[b]||void 0:void 0,overflowText:a.buttonTips[b].title||void 0,tabIndex:-1}}var c=[],d=Ext.QuickTips&&Ext.QuickTips.isEnabled();if(this.enableFont&&!Ext.isSafari2){var e=new Ext.Toolbar.Item({autoEl:{tag:"select",cls:"x-font-select",html:this.createFontOptions()}}); +c.push(e,"-")}this.enableFormat&&c.push(b("bold"),b("italic"),b("underline"));this.enableFontSize&&c.push("-",b("increasefontsize",!1,this.adjustFont),b("decreasefontsize",!1,this.adjustFont));this.enableColors&&c.push("-",{itemId:"forecolor",cls:"x-btn-icon",iconCls:"x-edit-forecolor",clickEvent:"mousedown",tooltip:d?a.buttonTips.forecolor||void 0:void 0,tabIndex:-1,menu:new Ext.menu.ColorMenu({allowReselect:!0,focus:Ext.emptyFn,value:"000000",plain:!0,listeners:{scope:this,select:function(a,b){this.execCmd("forecolor", +Ext.isWebKit||Ext.isIE?"#"+b:b);this.deferFocus()}},clickEvent:"mousedown"})},{itemId:"backcolor",cls:"x-btn-icon",iconCls:"x-edit-backcolor",clickEvent:"mousedown",tooltip:d?a.buttonTips.backcolor||void 0:void 0,tabIndex:-1,menu:new Ext.menu.ColorMenu({focus:Ext.emptyFn,value:"FFFFFF",plain:!0,allowReselect:!0,listeners:{scope:this,select:function(a,b){Ext.isGecko?(this.execCmd("useCSS",!1),this.execCmd("hilitecolor",b),this.execCmd("useCSS",!0)):this.execCmd(Ext.isOpera?"hilitecolor":"backcolor", +Ext.isWebKit||Ext.isIE?"#"+b:b);this.deferFocus()}},clickEvent:"mousedown"})});this.enableAlignments&&c.push("-",b("justifyleft"),b("justifycenter"),b("justifyright"));Ext.isSafari2||(this.enableLinks&&c.push("-",b("createlink",!1,this.createLink)),this.enableLists&&c.push("-",b("insertorderedlist"),b("insertunorderedlist")),this.enableSourceEdit&&c.push("-",b("sourceedit",!0,function(){this.toggleSourceEdit(!this.sourceEditMode)})));c=new Ext.Toolbar({renderTo:this.wrap.dom.firstChild,items:c}); +e&&(this.fontSelect=e.el,this.mon(this.fontSelect,"change",function(){this.relayCmd("fontname",this.fontSelect.dom.value);this.deferFocus()},this));this.mon(c.el,"click",function(a){a.preventDefault()});this.tb=c;this.tb.doLayout()},onDisable:function(){this.wrap.mask();Ext.form.HtmlEditor.superclass.onDisable.call(this)},onEnable:function(){this.wrap.unmask();Ext.form.HtmlEditor.superclass.onEnable.call(this)},setReadOnly:function(a){Ext.form.HtmlEditor.superclass.setReadOnly.call(this,a);if(this.initialized){Ext.isIE? +this.getEditorBody().contentEditable=!a:this.setDesignMode(!a);var b=this.getEditorBody();b&&(b.style.cursor=this.readOnly?"default":"text");this.disableItems(a)}},getDocMarkup:function(){var a=Ext.fly(this.iframe).getHeight()-2*this.iframePad;return String.format('<html><head><style type="text/css">body{border: 0; margin: 0; padding: {0}px; height: {1}px; cursor: text}</style></head><body></body></html>',this.iframePad,a)},getEditorBody:function(){var a=this.getDoc();return a.body||a.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(a,b){Ext.form.HtmlEditor.superclass.onRender.call(this,a,b);this.el.dom.style.border="0 none";this.el.dom.setAttribute("tabIndex",-1);this.el.addClass("x-hidden");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(!0);this.tb.doLayout();this.createIFrame();if(!this.width){var c=this.el.getSize();this.setSize(c.width,this.height||c.height)}this.resizeEl=this.positionEl=this.wrap},createIFrame:function(){var a=document.createElement("iframe");a.name=Ext.id();a.frameBorder="0";a.style.overflow="auto";a.src=Ext.SSL_SECURE_URL;this.wrap.dom.appendChild(a);this.iframe=a;this.monitorTask=Ext.TaskMgr.start({run:this.checkDesignMode,scope:this, +interval:100})},initFrame:function(){Ext.TaskMgr.stop(this.monitorTask);var a=this.getDoc();this.win=this.getWin();a.open();a.write(this.getDocMarkup());a.close();var b={run:function(){var a=this.getDoc();if(a.body||"complete"==a.readyState)Ext.TaskMgr.stop(b),this.setDesignMode(!0),this.initEditor.defer(10,this)},interval:10,duration:1E4,scope:this};Ext.TaskMgr.start(b)},checkDesignMode:function(){if(this.wrap&&this.wrap.dom.offsetWidth){var a=this.getDoc();a&&(!a.editorInitialized||"on"!=this.getDesignMode())&& +this.initFrame()}},setDesignMode:function(a){var b=this.getDoc();b&&(this.readOnly&&(a=!1),b.designMode=/on|true/i.test(String(a).toLowerCase())?"on":"off")},getDesignMode:function(){var a=this.getDoc();return!a?"":String(a.designMode).toLowerCase()},disableItems:function(a){this.fontSelect&&(this.fontSelect.dom.disabled=a);this.tb.items.each(function(b){"sourceedit"!=b.getItemId()&&b.setDisabled(a)})},onResize:function(a,b){Ext.form.HtmlEditor.superclass.onResize.apply(this,arguments);if(this.el&& +this.iframe){if(Ext.isNumber(a)){var c=a-this.wrap.getFrameWidth("lr");this.el.setWidth(c);this.tb.setWidth(c);this.iframe.style.width=Math.max(c,0)+"px"}if(Ext.isNumber(b)){c=b-this.wrap.getFrameWidth("tb")-this.tb.el.getHeight();this.el.setHeight(c);this.iframe.style.height=Math.max(c,0)+"px";var d=this.getEditorBody();d&&(d.style.height=Math.max(c-2*this.iframePad,0)+"px")}}},toggleSourceEdit:function(a){void 0===a&&(a=!this.sourceEditMode);this.sourceEditMode=!0===a;a=this.tb.getComponent("sourceedit"); +if(a.pressed!==this.sourceEditMode&&(a.toggle(this.sourceEditMode),!a.xtbHidden))return;this.sourceEditMode?(this.previousSize=this.getSize(),a=Ext.get(this.iframe).getHeight(),this.disableItems(!0),this.syncValue(),this.iframe.className="x-hidden",this.el.removeClass("x-hidden"),this.el.dom.removeAttribute("tabIndex"),this.el.focus(),this.el.dom.style.height=a+"px"):(a=parseInt(this.el.dom.style.height,10),this.initialized&&this.disableItems(this.readOnly),this.pushValue(),this.iframe.className= +"",this.el.addClass("x-hidden"),this.el.dom.setAttribute("tabIndex",-1),this.deferFocus(),this.setSize(this.previousSize),delete this.previousSize,this.iframe.style.height=a+"px");this.fireEvent("editmodechange",this,this.sourceEditMode)},createLink:function(){var a=prompt(this.createLinkText,this.defaultLinkValue);a&&"http://"!=a&&this.relayCmd("createlink",a)},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);Ext.isWebKit&&(a=a.replace(/\sclass="(?:Apple-style-span|khtml-block-placeholder)"/gi,""));a.charCodeAt(0)==this.defaultValue.replace(/\D/g,"")&&(a=a.substring(1));return a},syncValue:function(){if(this.initialized){var a=this.getEditorBody(),b=a.innerHTML;Ext.isWebKit&&(a=a.getAttribute("style").match(/text-align:(.*?);/i))&&a[1]&&(b='<div style="'+a[0]+'">'+b+"</div>");b=this.cleanHtml(b);!1!==this.fireEvent("beforesync",this,b)&& +(this.el.dom.value=b,this.fireEvent("sync",this,b))}},getValue:function(){this[this.sourceEditMode?"pushValue":"syncValue"]();return Ext.form.HtmlEditor.superclass.getValue.call(this)},pushValue:function(){if(this.initialized){var a=this.el.dom.value;!this.activated&&1>a.length&&(a=this.defaultValue);!1!==this.fireEvent("beforepush",this,a)&&(this.getEditorBody().innerHTML=a,Ext.isGecko&&(this.setDesignMode(!1),this.setDesignMode(!0)),this.fireEvent("push",this,a))}},deferFocus:function(){this.focus.defer(10, +this)},focus:function(){this.win&&!this.sourceEditMode?this.win.focus():this.el.focus()},initEditor:function(){try{var a=this.getEditorBody(),b=this.el.getStyles("font-size","font-family","background-image","background-repeat","background-color","color"),c,d;b["background-attachment"]="fixed";a.bgProperties="fixed";Ext.DomHelper.applyStyles(a,b);if(c=this.getDoc())try{Ext.EventManager.removeAll(c)}catch(e){}d=this.onEditorEvent.createDelegate(this);Ext.EventManager.on(c,{mousedown:d,dblclick:d,click:d, +keyup:d,buffer:100});if(Ext.isGecko)Ext.EventManager.on(c,"keypress",this.applyCommand,this);if(Ext.isIE||Ext.isWebKit||Ext.isOpera)Ext.EventManager.on(c,"keydown",this.fixKeys,this);this.initialized=c.editorInitialized=!0;this.pushValue();this.setReadOnly(this.readOnly);this.fireEvent("initialize",this)}catch(g){}},beforeDestroy:function(){this.monitorTask&&Ext.TaskMgr.stop(this.monitorTask);if(this.rendered){Ext.destroy(this.tb);var a=this.getDoc();if(a)try{Ext.EventManager.removeAll(a);for(var b in a)delete a[b]}catch(c){}this.wrap&& +(this.wrap.dom.innerHTML="",this.wrap.remove())}Ext.form.HtmlEditor.superclass.beforeDestroy.call(this)},onFirstFocus:function(){this.activated=!0;this.disableItems(this.readOnly);if(Ext.isGecko){this.win.focus();var a=this.win.getSelection();if(!a.focusNode||3!=a.focusNode.nodeType)a=a.getRangeAt(0),a.selectNodeContents(this.getEditorBody()),a.collapse(!0),this.deferFocus();try{this.execCmd("useCSS",!0),this.execCmd("styleWithCSS",!1)}catch(b){}}this.fireEvent("activate",this)},adjustFont:function(a){a= +"increasefontsize"==a.getItemId()?1:-1;var b=this.getDoc(),b=parseInt(b.queryCommandValue("FontSize")||2,10);Ext.isSafari&&!Ext.isSafari2||Ext.isChrome||Ext.isAir?b=(10>=b?1+a:13>=b?2+a:16>=b?3+a:18>=b?4+a:24>=b?5+a:6+a).constrain(1,6):(Ext.isSafari&&(a*=2),b=Math.max(1,b+a)+(Ext.isSafari?"px":0));this.execCmd("FontSize",b)},onEditorEvent:function(){this.updateToolbar()},updateToolbar:function(){if(!this.readOnly)if(this.activated){var a=this.tb.items.map,b=this.getDoc();if(this.enableFont&&!Ext.isSafari2){var c= +(b.queryCommandValue("FontName")||this.defaultFont).toLowerCase();c!=this.fontSelect.dom.value&&(this.fontSelect.dom.value=c)}this.enableFormat&&(a.bold.toggle(b.queryCommandState("bold")),a.italic.toggle(b.queryCommandState("italic")),a.underline.toggle(b.queryCommandState("underline")));this.enableAlignments&&(a.justifyleft.toggle(b.queryCommandState("justifyleft")),a.justifycenter.toggle(b.queryCommandState("justifycenter")),a.justifyright.toggle(b.queryCommandState("justifyright")));!Ext.isSafari2&& +this.enableLists&&(a.insertorderedlist.toggle(b.queryCommandState("insertorderedlist")),a.insertunorderedlist.toggle(b.queryCommandState("insertunorderedlist")));Ext.menu.MenuMgr.hideAll();this.syncValue()}else this.onFirstFocus()},relayBtnCmd:function(a){this.relayCmd(a.getItemId())},relayCmd:function(a,b){(function(){this.focus();this.execCmd(a,b);this.updateToolbar()}).defer(10,this)},execCmd:function(a,b){this.getDoc().execCommand(a,!1,void 0===b?null:b);this.syncValue()},applyCommand:function(a){if(a.ctrlKey){var b= +a.getCharCode(),c;if(0<b){b=String.fromCharCode(b);switch(b){case "b":c="bold";break;case "i":c="italic";break;case "u":c="underline"}c&&(this.win.focus(),this.execCmd(c),this.deferFocus(),a.preventDefault())}}},insertAtCursor:function(a){if(this.activated)if(Ext.isIE){this.win.focus();var b=this.getDoc().selection.createRange();b&&(b.pasteHTML(a),this.syncValue(),this.deferFocus())}else this.win.focus(),this.execCmd("InsertHTML",a),this.deferFocus()},fixKeys:function(){if(Ext.isIE)return function(a){var b= +a.getKey(),c=this.getDoc();if(b==a.TAB){if(a.stopEvent(),b=c.selection.createRange())b.collapse(!0),b.pasteHTML(" "),this.deferFocus()}else if(b==a.ENTER&&(b=c.selection.createRange()))if(c=b.parentElement(),!c||"li"!=c.tagName.toLowerCase())a.stopEvent(),b.pasteHTML("<br />"),b.collapse(!1),b.select()};if(Ext.isOpera)return function(a){a.getKey()==a.TAB&&(a.stopEvent(),this.win.focus(),this.execCmd("InsertHTML"," "),this.deferFocus())};if(Ext.isWebKit)return function(a){var b= +a.getKey();b==a.TAB?(a.stopEvent(),this.execCmd("InsertText","\t"),this.deferFocus()):b==a.ENTER&&(a.stopEvent(),this.execCmd("InsertHtml","<br /><br />"),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:void 0,maxValue:void 0,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|gi a|hi a|giA|hiA|gi A|hi A",increment:15,mode:"local",triggerAction:"all",typeAhead:!1,initDate:"1/1/2008",initDateFormat:"j/n/Y",initComponent:function(){Ext.isDefined(this.minValue)&& +this.setMinValue(this.minValue,!0);Ext.isDefined(this.maxValue)&&this.setMaxValue(this.maxValue,!0);this.store||this.generateStore(!0);Ext.form.TimeField.superclass.initComponent.call(this)},setMinValue:function(a,b){this.setLimit(a,!0,b);return this},setMaxValue:function(a,b){this.setLimit(a,!1,b);return this},generateStore:function(a){for(var b=this.minValue||(new Date(this.initDate)).clearTime(),c=this.maxValue||(new Date(this.initDate)).clearTime().add("mi",1439),d=[];b<=c;)d.push(b.dateFormat(this.format)), +b=b.add("mi",this.increment);this.bindStore(d,a)},setLimit:function(a,b,c){var d;Ext.isString(a)?d=this.parseDate(a):Ext.isDate(a)&&(d=a);d&&(a=(new Date(this.initDate)).clearTime(),a.setHours(d.getHours(),d.getMinutes(),d.getSeconds(),d.getMilliseconds()),this[b?"minValue":"maxValue"]=a,c||this.generateStore())},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,formatDate:Ext.form.DateField.prototype.formatDate,parseDate:function(a){if(!a||Ext.isDate(a))return a;var b=this.initDate+" ",c=this.initDateFormat+" ",d=Date.parseDate(b+a,c+this.format),e=this.altFormats;if(!d&&e){this.altFormatsArray||(this.altFormatsArray=e.split("|"));for(var e=0,g=this.altFormatsArray,h=g.length;e<h&&!d;e++)d=Date.parseDate(b+a,c+g[e])}return d}});Ext.reg("timefield",Ext.form.TimeField); +Ext.form.SliderField=Ext.extend(Ext.form.Field,{useTips:!0,tipText:null,actionMode:"wrap",initComponent:function(){var a=Ext.copyTo({id:this.id+"-slider"},this.initialConfig,"vertical minValue maxValue decimalPrecision keyIncrement increment clickToChange animate".split(" "));this.useTips&&(a.plugins=[new Ext.slider.Tip(this.tipText?{getText:this.tipText}:{})]);this.slider=new Ext.Slider(a);Ext.form.SliderField.superclass.initComponent.call(this)},onRender:function(a,b){this.autoCreate={id:this.id, +name:this.name,type:"hidden",tag:"input"};Ext.form.SliderField.superclass.onRender.call(this,a,b);this.resizeEl=this.positionEl=this.wrap=this.el.wrap({cls:"x-form-field-wrap"});this.slider.render(this.wrap)},onResize:function(a,b,c,d){Ext.form.SliderField.superclass.onResize.call(this,a,b,c,d);this.slider.setSize(a,b)},initEvents:function(){Ext.form.SliderField.superclass.initEvents.call(this);this.slider.on("change",this.onChange,this)},onChange:function(a,b){this.setValue(b,void 0,!0)},onEnable:function(){Ext.form.SliderField.superclass.onEnable.call(this); +this.slider.enable()},onDisable:function(){Ext.form.SliderField.superclass.onDisable.call(this);this.slider.disable()},beforeDestroy:function(){Ext.destroy(this.slider);Ext.form.SliderField.superclass.beforeDestroy.call(this)},alignErrorIcon:function(){this.errorIcon.alignTo(this.slider.el,"tl-tr",[2,0])},setMinValue:function(a){this.slider.setMinValue(a);return this},setMaxValue:function(a){this.slider.setMaxValue(a);return this},setValue:function(a,b,c){c||this.slider.setValue(a,b);return Ext.form.SliderField.superclass.setValue.call(this, +this.slider.getValue())},getValue:function(){return this.slider.getValue()}});Ext.reg("sliderfield",Ext.form.SliderField); +Ext.form.Label=Ext.extend(Ext.BoxComponent,{onRender:function(a,b){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||"",this.forId&&this.el.setAttribute("for",this.forId));Ext.form.Label.superclass.onRender.call(this,a,b)},setText:function(a,b){var c=!1===b;this[!c?"text":"html"]=a;delete this[c?"text":"html"];this.rendered&&(this.el.dom.innerHTML=!1!==b?Ext.util.Format.htmlEncode(a):a);return this}}); +Ext.reg("label",Ext.form.Label);Ext.form.Action=function(a,b){this.form=a;this.options=b||{}};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(){},success:function(){},handleResponse:function(){},failure:function(a){this.response=a;this.failureType=Ext.form.Action.CONNECT_FAILURE;this.form.afterAction(this,!1)},processResponse:function(a){this.response=a;return!a.responseText&&!a.responseXML?!0:this.result=this.handleResponse(a)},getUrl:function(a){var b=this.options.url||this.form.url||this.form.el.dom.action;a&&(a=this.getParams())&&(b=Ext.urlAppend(b,a));return b},getMethod:function(){return(this.options.method|| +this.form.method||this.form.el.dom.method||"POST").toUpperCase()},getParams:function(){var a=this.form.baseParams,b=this.options.params;b?"object"==typeof b?b=Ext.urlEncode(Ext.applyIf(b,a)):"string"==typeof b&&a&&(b+="&"+Ext.urlEncode(a)):a&&(b=Ext.urlEncode(a));return b},createCallback:function(a){a=a||{};return{success:this.success,failure:this.failure,scope:this,timeout:1E3*a.timeout||1E3*this.form.timeout,upload:this.form.fileUpload?this.success:void 0}}}; +Ext.form.Action.Submit=function(a,b){Ext.form.Action.Submit.superclass.constructor.call(this,a,b)}; +Ext.extend(Ext.form.Action.Submit,Ext.form.Action,{type:"submit",run:function(){var a=this.options,b=this.getMethod(),c="GET"==b;if(!1===a.clientValidation||this.form.isValid()){if(!1===a.submitEmptyText){var d=[],e=function(a){a.el.getValue()==a.emptyText&&(d.push(a),a.el.dom.value="");a.isComposite&&a.rendered&&a.items.each(e)};this.form.items.each(e)}Ext.Ajax.request(Ext.apply(this.createCallback(a),{form:this.form.el.dom,url:this.getUrl(c),method:b,headers:a.headers,params:!c?this.getParams(): +null,isUpload:this.form.fileUpload}));!1===a.submitEmptyText&&Ext.each(d,function(a){a.applyEmptyText&&a.applyEmptyText()})}else!1!==a.clientValidation&&(this.failureType=Ext.form.Action.CLIENT_INVALID,this.form.afterAction(this,!1))},success:function(a){a=this.processResponse(a);!0===a||a.success?this.form.afterAction(this,!0):(a.errors&&this.form.markInvalid(a.errors),this.failureType=Ext.form.Action.SERVER_INVALID,this.form.afterAction(this,!1))},handleResponse:function(a){if(this.form.errorReader){a= +this.form.errorReader.read(a);var b=[];if(a.records)for(var c=0,d=a.records.length;c<d;c++)b[c]=a.records[c].data;1>b.length&&(b=null);return{success:a.success,errors:b}}return Ext.decode(a.responseText)}});Ext.form.Action.Load=function(a,b){Ext.form.Action.Load.superclass.constructor.call(this,a,b);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(!1),headers:this.options.headers,params:this.getParams()}))},success:function(a){a=this.processResponse(a);!0===a||!a.success||!a.data?(this.failureType=Ext.form.Action.LOAD_FAILURE,this.form.afterAction(this,!1)):(this.form.clearInvalid(),this.form.setValues(a.data),this.form.afterAction(this,!0))},handleResponse:function(a){return this.form.reader? +(a=this.form.reader.read(a),{success:a.success,data:a.records&&a.records[0]?a.records[0].data:null}):Ext.decode(a.responseText)}}); +Ext.form.Action.DirectLoad=Ext.extend(Ext.form.Action.Load,{constructor:function(a,b){Ext.form.Action.DirectLoad.superclass.constructor.call(this,a,b)},type:"directload",run:function(){var a=this.getParams();a.push(this.success,this);this.form.api.load.apply(window,a)},getParams:function(){var a=[],b={};Ext.apply(b,this.options.params,this.form.baseParams);var c=this.form.paramOrder;if(c)for(var d=0,e=c.length;d<e;d++)a.push(b[c[d]]);else this.form.paramsAsHash&&a.push(b);return a},processResponse:function(a){return this.result= +a},success:function(a,b){b.type==Ext.Direct.exceptions.SERVER&&(a={});Ext.form.Action.DirectLoad.superclass.success.call(this,a)}}); +Ext.form.Action.DirectSubmit=Ext.extend(Ext.form.Action.Submit,{constructor:function(a,b){Ext.form.Action.DirectSubmit.superclass.constructor.call(this,a,b)},type:"directsubmit",run:function(){var a=this.options;!1===a.clientValidation||this.form.isValid()?(this.success.params=this.getParams(),this.form.api.submit(this.form.el.dom,this.success,this)):!1!==a.clientValidation&&(this.failureType=Ext.form.Action.CLIENT_INVALID,this.form.afterAction(this,!1))},getParams:function(){var a={};Ext.apply(a, +this.options.params,this.form.baseParams);return a},processResponse:function(a){return this.result=a},success:function(a,b){b.type==Ext.Direct.exceptions.SERVER&&(a={});Ext.form.Action.DirectSubmit.superclass.success.call(this,a)}});Ext.form.Action.ACTION_TYPES={load:Ext.form.Action.Load,submit:Ext.form.Action.Submit,directload:Ext.form.Action.DirectLoad,directsubmit:Ext.form.Action.DirectSubmit}; +Ext.form.VTypes=function(){var a=/^[a-zA-Z_]+$/,b=/^[a-zA-Z0-9_]+$/,c=/^(\w+)([\-+.][\w]+)*@(\w[\-\w]*\.){1,5}([A-Za-z]){2,6}$/,d=/(((^https?)|(^ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i;return{email:function(a){return c.test(a)},emailText:'This field should be an e-mail address in the format "user@example.com"',emailMask:/[a-z0-9_\.\-@\+]/i,url:function(a){return d.test(a)},urlText:'This field should be a URL in the format "http://www.example.com"', +alpha:function(b){return a.test(b)},alphaText:"This field should only contain letters and _",alphaMask:/[a-z_]/i,alphanum:function(a){return b.test(a)},alphanumText:"This field should only contain letters, numbers and _",alphanumMask:/[a-z0-9_]/i}}(); +Ext.Button=Ext.extend(Ext.BoxComponent,{hidden:!1,disabled:!1,pressed:!1,enableToggle:!1,menuAlign:"tl-bl?",type:"button",menuClassTarget:"tr:nth(2)",clickEvent:"click",handleMouseEvents:!0,tooltipType:"qtip",buttonSelector:"button:first-child",scale:"small",iconAlign:"left",arrowAlign:"right",initComponent:function(){this.menu&&(this.menu=Ext.menu.MenuMgr.get(this.menu),this.menu.ownerCt=this);Ext.Button.superclass.initComponent.call(this);this.addEvents("click","toggle","mouseover","mouseout","menushow", +"menuhide","menutriggerover","menutriggerout");this.menu&&(this.menu.ownerCt=void 0);Ext.isString(this.toggleGroup)&&(this.enableToggle=!0)},getTemplateArgs:function(){return[this.type,"x-btn-"+this.scale+" x-btn-icon-"+this.scale+"-"+this.iconAlign,this.getMenuClass(),this.cls,this.id]},setButtonClass:function(){this.useSetClass&&(Ext.isEmpty(this.oldCls)||this.el.removeClass([this.oldCls,"x-btn-pressed"]),this.oldCls=this.iconCls||this.icon?this.text?"x-btn-text-icon":"x-btn-icon":"x-btn-noicon", +this.el.addClass([this.oldCls,this.pressed?"x-btn-pressed":null]))},getMenuClass:function(){return this.menu?"bottom"!=this.arrowAlign?"x-btn-arrow":"x-btn-arrow-bottom":""},onRender:function(a,b){this.template||(Ext.Button.buttonTemplate||(Ext.Button.buttonTemplate=new Ext.Template('<table id="{4}" cellspacing="0" class="x-btn {3}"><tbody class="{1}">','<tr><td class="x-btn-tl"><i> </i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i> </i></td></tr>','<tr><td class="x-btn-ml"><i> </i></td><td class="x-btn-mc"><em class="{2}" unselectable="on"><button type="{0}"></button></em></td><td class="x-btn-mr"><i> </i></td></tr>', +'<tr><td class="x-btn-bl"><i> </i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i> </i></td></tr>',"</tbody></table>"),Ext.Button.buttonTemplate.compile()),this.template=Ext.Button.buttonTemplate);var c;c=this.getTemplateArgs();c=b?this.template.insertBefore(b,c,!0):this.template.append(a,c,!0);this.btnEl=c.child(this.buttonSelector);this.mon(this.btnEl,{scope:this,focus:this.onFocus,blur:this.onBlur});this.initButtonEl(c,this.btnEl);Ext.ButtonToggleMgr.register(this)},initButtonEl:function(a, +b){this.el=a;this.setIcon(this.icon);this.setText(this.text);this.setIconClass(this.iconCls);Ext.isDefined(this.tabIndex)&&(b.dom.tabIndex=this.tabIndex);this.tooltip&&this.setTooltip(this.tooltip,!0);this.handleMouseEvents&&this.mon(a,{scope:this,mouseover:this.onMouseOver,mousedown:this.onMouseDown});this.menu&&this.mon(this.menu,{scope:this,show:this.onMenuShow,hide:this.onMenuHide});if(this.repeat){var c=new Ext.util.ClickRepeater(a,Ext.isObject(this.repeat)?this.repeat:{});this.mon(c,"click", +this.onRepeatClick,this)}else this.mon(a,this.clickEvent,this.onClick,this)},afterRender:function(){Ext.Button.superclass.afterRender.call(this);this.useSetClass=!0;this.setButtonClass();this.doc=Ext.getDoc();this.doAutoWidth()},setIconClass:function(a){this.iconCls=a;this.el&&(this.btnEl.dom.className="",this.btnEl.addClass(["x-btn-text",a||""]),this.setButtonClass());return this},setTooltip:function(a,b){this.rendered?(b||this.clearTip(),Ext.isObject(a)?(Ext.QuickTips.register(Ext.apply({target:this.btnEl.id}, +a)),this.tooltip=a):this.btnEl.dom[this.tooltipType]=a):this.tooltip=a;return this},clearTip:function(){Ext.isObject(this.tooltip)&&Ext.QuickTips.unregister(this.btnEl)},beforeDestroy:function(){this.rendered&&this.clearTip();this.menu&&!1!==this.destroyMenu&&Ext.destroy(this.btnEl,this.menu);Ext.destroy(this.repeater)},onDestroy:function(){this.rendered&&(this.doc.un("mouseover",this.monitorMouseOver,this),this.doc.un("mouseup",this.onMouseUp,this),delete this.doc,delete this.btnEl,Ext.ButtonToggleMgr.unregister(this)); +Ext.Button.superclass.onDestroy.call(this)},doAutoWidth:function(){if(!1!==this.autoWidth&&this.el&&this.text&&void 0===this.width){this.el.setWidth("auto");if(Ext.isIE7&&Ext.isStrict){var a=this.btnEl;a&&20<a.getWidth()&&(a.clip(),a.setWidth(Ext.util.TextMetrics.measure(a,this.text).width+a.getFrameWidth("lr")))}this.minWidth&&this.el.getWidth()<this.minWidth&&this.el.setWidth(this.minWidth)}},setHandler:function(a,b){this.handler=a;this.scope=b;return this},setText:function(a){this.text=a;this.el&& +(this.btnEl.update(a||" "),this.setButtonClass());this.doAutoWidth();return this},setIcon:function(a){this.icon=a;this.el&&(this.btnEl.setStyle("background-image",a?"url("+a+")":""),this.setButtonClass());return this},getText:function(){return this.text},toggle:function(a,b){a=void 0===a?!this.pressed:!!a;if(a!=this.pressed){if(this.rendered)this.el[a?"addClass":"removeClass"]("x-btn-pressed");this.pressed=a;b||(this.fireEvent("toggle",this,a),this.toggleHandler&&this.toggleHandler.call(this.scope|| +this,this,a))}return this},onDisable:function(){this.onDisableChange(!0)},onEnable:function(){this.onDisableChange(!1)},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(){this.rendered&&this.menu&&(this.tooltip&&Ext.QuickTips.getQuickTip().cancelShow(this.btnEl),this.menu.isVisible()&&this.menu.hide(),this.menu.ownerCt=this,this.menu.show(this.el,this.menuAlign));return this}, +hideMenu:function(){this.hasVisibleMenu()&&this.menu.hide();return this},hasVisibleMenu:function(){return this.menu&&this.menu.ownerCt==this&&this.menu.isVisible()},onRepeatClick:function(a,b){this.onClick(b)},onClick:function(a){a&&a.preventDefault();0===a.button&&!this.disabled&&(this.doToggle(),this.menu&&(!this.hasVisibleMenu()&&!this.ignoreNextClick)&&this.showMenu(),this.fireEvent("click",this,a),this.handler&&this.handler.call(this.scope||this,this,a))},doToggle:function(){this.enableToggle&& +(!1!==this.allowDepress||!this.pressed)&&this.toggle()},isMenuTriggerOver:function(a,b){return this.menu&&!b},isMenuTriggerOut:function(a,b){return this.menu&&!b},onMouseOver:function(a){if(!this.disabled){var b=a.within(this.el,!0);b||(this.el.addClass("x-btn-over"),this.monitoringMouseOver||(this.doc.on("mouseover",this.monitorMouseOver,this),this.monitoringMouseOver=!0),this.fireEvent("mouseover",this,a));this.isMenuTriggerOver(a,b)&&this.fireEvent("menutriggerover",this,this.menu,a)}},monitorMouseOver:function(a){a.target!= +this.el.dom&&!a.within(this.el)&&(this.monitoringMouseOver&&(this.doc.un("mouseover",this.monitorMouseOver,this),this.monitoringMouseOver=!1),this.onMouseOut(a))},onMouseOut:function(a){var b=a.within(this.el)&&a.target!=this.el.dom;this.el.removeClass("x-btn-over");this.fireEvent("mouseout",this,a);this.isMenuTriggerOut(a,b)&&this.fireEvent("menutriggerout",this,this.menu,a)},focus:function(){this.btnEl.focus()},blur:function(){this.btnEl.blur()},onFocus:function(){this.disabled||this.el.addClass("x-btn-focus")}, +onBlur:function(){this.el.removeClass("x-btn-focus")},getClickEl:function(){return this.el},onMouseDown:function(a){!this.disabled&&0===a.button&&(this.getClickEl(a).addClass("x-btn-click"),this.doc.on("mouseup",this.onMouseUp,this))},onMouseUp:function(a){0===a.button&&(this.getClickEl(a,!0).removeClass("x-btn-click"),this.doc.un("mouseup",this.onMouseUp,this))},onMenuShow:function(){this.menu.ownerCt==this&&(this.menu.ownerCt=this,this.ignoreNextClick=0,this.el.addClass("x-btn-menu-active"),this.fireEvent("menushow", +this,this.menu))},onMenuHide:function(){this.menu.ownerCt==this&&(this.el.removeClass("x-btn-menu-active"),this.ignoreNextClick=this.restoreClick.defer(250,this),this.fireEvent("menuhide",this,this.menu),delete this.menu.ownerCt)},restoreClick:function(){this.ignoreNextClick=0}});Ext.reg("button",Ext.Button); +Ext.ButtonToggleMgr=function(){function a(a,d){if(d)for(var e=b[a.toggleGroup],g=0,h=e.length;g<h;g++)e[g]!=a&&e[g].toggle(!1)}var b={};return{register:function(c){if(c.toggleGroup){var d=b[c.toggleGroup];d||(d=b[c.toggleGroup]=[]);d.push(c);c.on("toggle",a)}},unregister:function(c){if(c.toggleGroup){var d=b[c.toggleGroup];d&&(d.remove(c),c.un("toggle",a))}},getPressed:function(a){if(a=b[a])for(var d=0,e=a.length;d<e;d++)if(!0===a[d].pressed)return a[d];return null}}}(); +Ext.SplitButton=Ext.extend(Ext.Button,{arrowSelector:"em",split:!0,initComponent:function(){Ext.SplitButton.superclass.initComponent.call(this);this.addEvents("arrowclick")},onRender:function(){Ext.SplitButton.superclass.onRender.apply(this,arguments);this.arrowTooltip&&(this.el.child(this.arrowSelector).dom[this.tooltipType]=this.arrowTooltip)},setArrowHandler:function(a,b){this.arrowHandler=a;this.scope=b},getMenuClass:function(){return"x-btn-split"+("bottom"==this.arrowAlign?"-bottom":"")},isClickOnArrow:function(a){if("bottom"!= +this.arrowAlign){var b=this.el.child("em.x-btn-split"),b=b.getRegion().right-b.getPadding("r");return a.getPageX()>b}return a.getPageY()>this.btnEl.getRegion().bottom},onClick:function(a){a.preventDefault();this.disabled||(this.isClickOnArrow(a)?(this.menu&&(!this.menu.isVisible()&&!this.ignoreNextClick)&&this.showMenu(),this.fireEvent("arrowclick",this,a),this.arrowHandler&&this.arrowHandler.call(this.scope||this,this,a)):(this.doToggle(),this.fireEvent("click",this,a),this.handler&&this.handler.call(this.scope|| +this,this,a)))},isMenuTriggerOver:function(a){return this.menu&&a.target.tagName==this.arrowSelector},isMenuTriggerOut:function(a){return this.menu&&a.target.tagName!=this.arrowSelector}});Ext.reg("splitbutton",Ext.SplitButton); +Ext.CycleButton=Ext.extend(Ext.SplitButton,{getItemText:function(a){if(a&&!0===this.showText){var b="";this.prependText&&(b+=this.prependText);return b+=a.text}},setActiveItem:function(a,b){Ext.isObject(a)||(a=this.menu.getComponent(a));if(a){if(this.rendered){var c=this.getItemText(a);c&&this.setText(c);this.setIconClass(a.iconCls)}else this.text=this.getItemText(a),this.iconCls=a.iconCls;this.activeItem=a;a.checked||a.setChecked(!0,!1);this.forceIcon&&this.setIconClass(this.forceIcon);b||this.fireEvent("change", +this,a)}},getActiveItem:function(){return this.activeItem},initComponent:function(){this.addEvents("change");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 a=0;Ext.each(this.items,function(b,c){Ext.apply(b,{group:b.group||this.id,itemIndex:c,checkHandler:this.checkHandler,scope:this,checked:b.checked||!1});this.menu.items.push(b);b.checked&&(a=c)},this);Ext.CycleButton.superclass.initComponent.call(this); +this.on("click",this.toggleSelected,this);this.setActiveItem(a,!0)},checkHandler:function(a,b){b&&this.setActiveItem(a)},toggleSelected:function(){var a=this.menu;a.render();a.hasLayout||a.doLayout();for(var b,c=1;c<this.itemCount;c++)if(b=(this.activeItem.itemIndex+c)%this.itemCount,b=a.items.itemAt(b),!b.disabled){b.setChecked(!0);break}}});Ext.reg("cycle",Ext.CycleButton); +(function(){var a=Ext.EventManager,b=Ext.lib.Dom;Ext.dd.DragDrop=function(a,b,e){a&&this.init(a,b,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:!1,lock:function(){this.locked=!0},moveOnly:!1,unlock:function(){this.locked=!1},isTarget:!0,padding:null,_domRef:null,__ygDragDrop:!0,constrainX:!1,constrainY:!1,minX:0,maxX:0,minY:0,maxY:0,maintainOffset:!1, +xTicks:null,yTicks:null,primaryButtonOnly:!0,available:!1,hasOuterHandles:!1,b4StartDrag:function(){},startDrag:function(){},b4Drag:function(){},onDrag:function(){},onDragEnter:function(){},b4DragOver:function(){},onDragOver:function(){},b4DragOut:function(){},onDragOut:function(){},b4DragDrop:function(){},onDragDrop:function(){},onInvalidDrop:function(){},b4EndDrag:function(){},endDrag:function(){},b4MouseDown:function(){},onMouseDown:function(){},onMouseUp:function(){},onAvailable:function(){}, +defaultPadding:{left:0,right:0,top:0,bottom:0},constrainTo:function(a,b){var e,g,h,j;Ext.isNumber(b)&&(b={left:b,right:b,top:b,bottom:b});b=b||this.defaultPadding;var k=Ext.get(this.getEl()).getBox();e=Ext.get(a);h=e.getScroll();j=e.dom;j==document.body?(e=h.left,g=h.top,h=Ext.lib.Dom.getViewWidth(),j=Ext.lib.Dom.getViewHeight()):(h=e.getXY(),e=h[0],g=h[1],h=j.clientWidth,j=j.clientHeight);g=k.y-g;e=k.x-e;this.resetConstraints();this.setXConstraint(e-(b.left||0),h-e-k.width-(b.right||0),this.xTickSize); +this.setYConstraint(g-(b.top||0),j-g-k.height-(b.bottom||0),this.yTickSize)},getEl:function(){this._domRef||(this._domRef=Ext.getDom(this.id));return this._domRef},getDragEl:function(){return Ext.getDom(this.dragElId)},init:function(b,d,e){this.initTarget(b,d,e);a.on(this.id,"mousedown",this.handleMouseDown,this)},initTarget:function(a,b,e){this.config=e||{};this.DDM=Ext.dd.DDM;this.groups={};"string"!==typeof a&&(a=Ext.id(a));this.id=a;this.addToGroup(b?b:"default");this.handleElId=a;this.setDragElId(a); +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=!1!==this.config.isTarget;this.maintainOffset=this.config.maintainOffset;this.primaryButtonOnly=!1!==this.config.primaryButtonOnly},handleOnAvailable:function(){this.available=!0;this.resetConstraints();this.onAvailable()},setPadding:function(a,b,e,g){this.padding=!b&&0!==b?[a,a,a,a]:!e&& +0!==e?[a,b,a,b]:[a,b,e,g]},setInitPosition:function(a,d){var e=this.getEl();if(this.DDM.verifyEl(e)){var g=a||0,h=d||0,e=b.getXY(e);this.initPageX=e[0]-g;this.initPageY=e[1]-h;this.lastPageX=e[0];this.lastPageY=e[1];this.setStartPosition(e)}},setStartPosition:function(a){a=a||b.getXY(this.getEl());this.deltaSetXY=null;this.startPageX=a[0];this.startPageY=a[1]},addToGroup:function(a){this.groups[a]=!0;this.DDM.regDragDrop(this,a)},removeFromGroup:function(a){this.groups[a]&&delete this.groups[a];this.DDM.removeDDFromGroup(this, +a)},setDragElId:function(a){this.dragElId=a},setHandleElId:function(a){"string"!==typeof a&&(a=Ext.id(a));this.handleElId=a;this.DDM.regHandle(this.id,a)},setOuterHandleElId:function(b){"string"!==typeof b&&(b=Ext.id(b));a.on(b,"mousedown",this.handleMouseDown,this);this.setHandleElId(b);this.hasOuterHandles=!0},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(a){if(!(this.primaryButtonOnly&&0!=a.button)&&!this.isLocked()){this.DDM.refreshCache(this.groups);var b=new Ext.lib.Point(Ext.lib.Event.getPageX(a),Ext.lib.Event.getPageY(a));if((this.hasOuterHandles||this.DDM.isOverTarget(b,this))&&this.clickValidator(a))this.setStartPosition(),this.b4MouseDown(a),this.onMouseDown(a),this.DDM.handleMouseDown(a,this),this.DDM.stopEvent(a)}},clickValidator:function(a){a=a.getTarget();return this.isValidHandleChild(a)&&(this.id== +this.handleElId||this.DDM.handleWasClicked(a,this.id))},addInvalidHandleType:function(a){a=a.toUpperCase();this.invalidHandleTypes[a]=a},addInvalidHandleId:function(a){"string"!==typeof a&&(a=Ext.id(a));this.invalidHandleIds[a]=a},addInvalidHandleClass:function(a){this.invalidHandleClasses.push(a)},removeInvalidHandleType:function(a){a=a.toUpperCase();delete this.invalidHandleTypes[a]},removeInvalidHandleId:function(a){"string"!==typeof a&&(a=Ext.id(a));delete this.invalidHandleIds[a]},removeInvalidHandleClass:function(a){for(var b= +0,e=this.invalidHandleClasses.length;b<e;++b)this.invalidHandleClasses[b]==a&&delete this.invalidHandleClasses[b]},isValidHandleChild:function(a){var b=!0,e;try{e=a.nodeName.toUpperCase()}catch(g){e=a.nodeName}b=(b=b&&!this.invalidHandleTypes[e])&&!this.invalidHandleIds[a.id];e=0;for(var h=this.invalidHandleClasses.length;b&&e<h;++e)b=!Ext.fly(a).hasClass(this.invalidHandleClasses[e]);return b},setXTicks:function(a,b){this.xTicks=[];this.xTickSize=b;for(var e={},g=this.initPageX;g>=this.minX;g-=b)e[g]|| +(this.xTicks[this.xTicks.length]=g,e[g]=!0);for(g=this.initPageX;g<=this.maxX;g+=b)e[g]||(this.xTicks[this.xTicks.length]=g,e[g]=!0);this.xTicks.sort(this.DDM.numericSort)},setYTicks:function(a,b){this.yTicks=[];this.yTickSize=b;for(var e={},g=this.initPageY;g>=this.minY;g-=b)e[g]||(this.yTicks[this.yTicks.length]=g,e[g]=!0);for(g=this.initPageY;g<=this.maxY;g+=b)e[g]||(this.yTicks[this.yTicks.length]=g,e[g]=!0);this.yTicks.sort(this.DDM.numericSort)},setXConstraint:function(a,b,e){this.leftConstraint= +a;this.rightConstraint=b;this.minX=this.initPageX-a;this.maxX=this.initPageX+b;e&&this.setXTicks(this.initPageX,e);this.constrainX=!0},clearConstraints:function(){this.constrainY=this.constrainX=!1;this.clearTicks()},clearTicks:function(){this.yTicks=this.xTicks=null;this.yTickSize=this.xTickSize=0},setYConstraint:function(a,b,e){this.topConstraint=a;this.bottomConstraint=b;this.minY=this.initPageY-a;this.maxY=this.initPageY+b;e&&this.setYTicks(this.initPageY,e);this.constrainY=!0},resetConstraints:function(){this.initPageX|| +0===this.initPageX?this.setInitPosition(this.maintainOffset?this.lastPageX-this.initPageX:0,this.maintainOffset?this.lastPageY-this.initPageY:0):this.setInitPosition();this.constrainX&&this.setXConstraint(this.leftConstraint,this.rightConstraint,this.xTickSize);this.constrainY&&this.setYConstraint(this.topConstraint,this.bottomConstraint,this.yTickSize)},getTick:function(a,b){if(b){if(b[0]>=a)return b[0];for(var e=0,g=b.length;e<g;++e){var h=e+1;if(b[h]&&b[h]>=a)return b[h]-a>a-b[e]?b[e]:b[h]}return b[b.length- +1]}return a},toString:function(){return"DragDrop "+this.id}}})(); +Ext.dd.DragDropMgr||(Ext.dd.DragDropMgr=function(){var a=Ext.EventManager;return{ids:{},handleIds:{},dragCurrent:null,dragOvers:{},deltaX:0,deltaY:0,preventDefault:!0,stopPropagation:!0,initialized:!1,locked:!1,init:function(){this.initialized=!0},POINT:0,INTERSECT:1,mode:0,_execOnAll:function(a,c){for(var d in this.ids)for(var e in this.ids[d]){var g=this.ids[d][e];this.isTypeOfDD(g)&&g[a].apply(g,c)}},_onLoad:function(){this.init();a.on(document,"mouseup",this.handleMouseUp,this,!0);a.on(document, +"mousemove",this.handleMouseMove,this,!0);a.on(window,"unload",this._onUnload,this,!0);a.on(window,"resize",this._onResize,this,!0)},_onResize:function(){this._execOnAll("resetConstraints",[])},lock:function(){this.locked=!0},unlock:function(){this.locked=!1},isLocked:function(){return this.locked},locationCache:{},useCache:!0,clickPixelThresh:3,clickTimeThresh:350,dragThreshMet:!1,clickTimeout:null,startX:0,startY:0,regDragDrop:function(a,c){this.initialized||this.init();this.ids[c]||(this.ids[c]= +{});this.ids[c][a.id]=a},removeDDFromGroup:function(a,c){this.ids[c]||(this.ids[c]={});var d=this.ids[c];d&&d[a.id]&&delete d[a.id]},_remove:function(a){for(var c in a.groups)c&&(this.ids[c]&&this.ids[c][a.id])&&delete this.ids[c][a.id];delete this.handleIds[a.id]},regHandle:function(a,c){this.handleIds[a]||(this.handleIds[a]={});this.handleIds[a][c]=c},isDragDrop:function(a){return this.getDDById(a)?!0:!1},getRelated:function(a,c){var d=[],e;for(e in a.groups)for(var g in this.ids[e]){var h=this.ids[e][g]; +if(this.isTypeOfDD(h)&&(!c||h.isTarget))d[d.length]=h}return d},isLegalTarget:function(a,c){for(var d=this.getRelated(a,!0),e=0,g=d.length;e<g;++e)if(d[e].id==c.id)return!0;return!1},isTypeOfDD:function(a){return a&&a.__ygDragDrop},isHandle:function(a,c){return this.handleIds[a]&&this.handleIds[a][c]},getDDById:function(a){for(var c in this.ids)if(this.ids[c][a])return this.ids[c][a];return null},handleMouseDown:function(a,c){Ext.QuickTips&&Ext.QuickTips.ddDisable();this.dragCurrent&&this.handleMouseUp(a); +this.currentTarget=a.getTarget();this.dragCurrent=c;var d=c.getEl();this.startX=a.getPageX();this.startY=a.getPageY();this.deltaX=this.startX-d.offsetLeft;this.deltaY=this.startY-d.offsetTop;this.dragThreshMet=!1;this.clickTimeout=setTimeout(function(){var a=Ext.dd.DDM;a.startDrag(a.startX,a.startY)},this.clickTimeThresh)},startDrag:function(a,c){clearTimeout(this.clickTimeout);this.dragCurrent&&(this.dragCurrent.b4StartDrag(a,c),this.dragCurrent.startDrag(a,c));this.dragThreshMet=!0},handleMouseUp:function(a){Ext.QuickTips&& +Ext.QuickTips.ddEnable();this.dragCurrent&&(clearTimeout(this.clickTimeout),this.dragThreshMet&&this.fireEvents(a,!0),this.stopDrag(a),this.stopEvent(a))},stopEvent:function(a){this.stopPropagation&&a.stopPropagation();this.preventDefault&&a.preventDefault()},stopDrag:function(a){this.dragCurrent&&(this.dragThreshMet&&(this.dragCurrent.b4EndDrag(a),this.dragCurrent.endDrag(a)),this.dragCurrent.onMouseUp(a));this.dragCurrent=null;this.dragOvers={}},handleMouseMove:function(a){if(!this.dragCurrent)return!0; +if(Ext.isIE&&0!==a.button&&1!==a.button&&2!==a.button)return this.stopEvent(a),this.handleMouseUp(a);if(!this.dragThreshMet){var c=Math.abs(this.startX-a.getPageX()),d=Math.abs(this.startY-a.getPageY());(c>this.clickPixelThresh||d>this.clickPixelThresh)&&this.startDrag(this.startX,this.startY)}this.dragThreshMet&&(this.dragCurrent.b4Drag(a),this.dragCurrent.onDrag(a),this.dragCurrent.moveOnly||this.fireEvents(a,!1));this.stopEvent(a);return!0},fireEvents:function(a,c){var d=this.dragCurrent;if(d&& +!d.isLocked()){var e=a.getPoint(),g=[],h=[],j=[],k=[],l=[],m;for(m in this.dragOvers){var q=this.dragOvers[m];this.isTypeOfDD(q)&&(this.isOverTarget(e,q,this.mode)||h.push(q),g[m]=!0,delete this.dragOvers[m])}for(var r in d.groups)if("string"==typeof r)for(m in this.ids[r])if(q=this.ids[r][m],this.isTypeOfDD(q)&&q.isTarget&&(!q.isLocked()&&(q!=d||!1===d.ignoreSelf))&&this.isOverTarget(e,q,this.mode))c?k.push(q):(g[q.id]?j.push(q):l.push(q),this.dragOvers[q.id]=q);if(this.mode){h.length&&(d.b4DragOut(a, +h),d.onDragOut(a,h));if(l.length)d.onDragEnter(a,l);j.length&&(d.b4DragOver(a,j),d.onDragOver(a,j));k.length&&(d.b4DragDrop(a,k),d.onDragDrop(a,k))}else{m=e=0;for(e=h.length;m<e;++m)d.b4DragOut(a,h[m].id),d.onDragOut(a,h[m].id);m=0;for(e=l.length;m<e;++m)d.onDragEnter(a,l[m].id);m=0;for(e=j.length;m<e;++m)d.b4DragOver(a,j[m].id),d.onDragOver(a,j[m].id);m=0;for(e=k.length;m<e;++m)d.b4DragDrop(a,k[m].id),d.onDragDrop(a,k[m].id)}if(c&&!k.length)d.onInvalidDrop(a)}},getBestMatch:function(a){var c=null, +d=a.length;if(1==d)c=a[0];else for(var e=0;e<d;++e){var g=a[e];if(g.cursorIsOver){c=g;break}else if(!c||c.overlap.getArea()<g.overlap.getArea())c=g}return c},refreshCache:function(a){for(var c in a)if("string"==typeof c)for(var d in this.ids[c])if(a=this.ids[c][d],this.isTypeOfDD(a)){var e=this.getLocation(a);e?this.locationCache[a.id]=e:delete this.locationCache[a.id]}},verifyEl:function(a){if(a){var c;if(Ext.isIE)try{c=a.offsetParent}catch(d){}else c=a.offsetParent;if(c)return!0}return!1},getLocation:function(a){if(!this.isTypeOfDD(a))return null; +var c=a.getEl(),d,e,g;try{d=Ext.lib.Dom.getXY(c)}catch(h){}if(!d)return null;e=d[0];g=e+c.offsetWidth;d=d[1];return new Ext.lib.Region(d-a.padding[0],g+a.padding[1],d+c.offsetHeight+a.padding[2],e-a.padding[3])},isOverTarget:function(a,c,d){var e=this.locationCache[c.id];if(!e||!this.useCache)e=this.getLocation(c),this.locationCache[c.id]=e;if(!e)return!1;c.cursorIsOver=e.contains(a);var g=this.dragCurrent;if(!g||!g.getTargetCoord||!d&&!g.constrainX&&!g.constrainY)return c.cursorIsOver;c.overlap= +null;a=g.getTargetCoord(a.x,a.y);g=g.getDragEl();return(e=(new Ext.lib.Region(a.y,a.x+g.offsetWidth,a.y+g.offsetHeight,a.x)).intersect(e))?(c.overlap=e,d?!0:c.cursorIsOver):!1},_onUnload:function(){Ext.dd.DragDropMgr.unregAll()},unregAll:function(){this.dragCurrent&&(this.stopDrag(),this.dragCurrent=null);this._execOnAll("unreg",[]);for(var a in this.elementCache)delete this.elementCache[a];this.elementCache={};this.ids={}},elementCache:{},getElWrapper:function(a){var c=this.elementCache[a];if(!c|| +!c.el)c=this.elementCache[a]=new this.ElementWrapper(Ext.getDom(a));return c},getElement:function(a){return Ext.getDom(a)},getCss:function(a){return(a=Ext.getDom(a))?a.style:null},ElementWrapper:function(a){this.id=(this.el=a||null)&&a.id;this.css=this.el&&a.style},getPosX:function(a){return Ext.lib.Dom.getX(a)},getPosY:function(a){return Ext.lib.Dom.getY(a)},swapNode:function(a,c){if(a.swapNode)a.swapNode(c);else{var d=c.parentNode,e=c.nextSibling;e==a?d.insertBefore(a,c):c==a.nextSibling?d.insertBefore(c, +a):(a.parentNode.replaceChild(c,a),d.insertBefore(a,e))}},getScroll:function(){var a,c,d=document.documentElement,e=document.body;d&&(d.scrollTop||d.scrollLeft)?(a=d.scrollTop,c=d.scrollLeft):e&&(a=e.scrollTop,c=e.scrollLeft);return{top:a,left:c}},getStyle:function(a,c){return Ext.fly(a).getStyle(c)},getScrollTop:function(){return this.getScroll().top},getScrollLeft:function(){return this.getScroll().left},moveToEl:function(a,c){var d=Ext.lib.Dom.getXY(c);Ext.lib.Dom.setXY(a,d)},numericSort:function(a, +c){return a-c},_timeoutCount:0,_addListeners:function(){var a=Ext.dd.DDM;Ext.lib.Event&&document?a._onLoad():2E3<a._timeoutCount||(setTimeout(a._addListeners,10),document&&document.body&&(a._timeoutCount+=1))},handleWasClicked:function(a,c){if(this.isHandle(c,a.id))return!0;for(var d=a.parentNode;d;){if(this.isHandle(c,d.id))return!0;d=d.parentNode}return!1}}}(),Ext.dd.DDM=Ext.dd.DragDropMgr,Ext.dd.DDM._addListeners());Ext.dd.DD=function(a,b,c){a&&this.init(a,b,c)}; +Ext.extend(Ext.dd.DD,Ext.dd.DragDrop,{scroll:!0,autoOffset:function(a,b){this.setDelta(a-this.startPageX,b-this.startPageY)},setDelta:function(a,b){this.deltaX=a;this.deltaY=b},setDragElPos:function(a,b){var c=this.getDragEl();this.alignElWithMouse(c,a,b)},alignElWithMouse:function(a,b,c){b=this.getTargetCoord(b,c);var d=a.dom?a:Ext.fly(a,"_dd");this.deltaSetXY?d.setLeftTop(b.x+this.deltaSetXY[0],b.y+this.deltaSetXY[1]):(d.setXY([b.x,b.y]),c=d.getLeft(!0),d=d.getTop(!0),this.deltaSetXY=[c-b.x,d-b.y]); +this.cachePosition(b.x,b.y);this.autoScroll(b.x,b.y,a.offsetHeight,a.offsetWidth);return b},cachePosition:function(a,b){if(a)this.lastPageX=a,this.lastPageY=b;else{var c=Ext.lib.Dom.getXY(this.getEl());this.lastPageX=c[0];this.lastPageY=c[1]}},autoScroll:function(a,b,c,d){if(this.scroll){var e=Ext.lib.Dom.getViewHeight(),g=Ext.lib.Dom.getViewWidth(),h=this.DDM.getScrollTop(),j=this.DDM.getScrollLeft();d+=a;var k=e+h-b-this.deltaY,l=g+j-a-this.deltaX,m=document.all?80:30;c+b>e&&40>k&&window.scrollTo(j, +h+m);b<h&&(0<h&&40>b-h)&&window.scrollTo(j,h-m);d>g&&40>l&&window.scrollTo(j+m,h);a<j&&(0<j&&40>a-j)&&window.scrollTo(j-m,h)}},getTargetCoord:function(a,b){var c=a-this.deltaX,d=b-this.deltaY;this.constrainX&&(c<this.minX&&(c=this.minX),c>this.maxX&&(c=this.maxX));this.constrainY&&(d<this.minY&&(d=this.minY),d>this.maxY&&(d=this.maxY));c=this.getTick(c,this.xTicks);d=this.getTick(d,this.yTicks);return{x:c,y:d}},applyConfig:function(){Ext.dd.DD.superclass.applyConfig.call(this);this.scroll=!1!==this.config.scroll}, +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(a,b,c){a&&(this.init(a,b,c),this.initFrame())};Ext.dd.DDProxy.dragElId="ygddfdiv"; +Ext.extend(Ext.dd.DDProxy,Ext.dd.DD,{resizeFrame:!0,centerFrame:!1,createFrame:function(){var a=this,b=document.body;if(!b||!b.firstChild)setTimeout(function(){a.createFrame()},50);else{var c=this.getDragEl();if(!c){c=document.createElement("div");c.id=this.dragElId;var d=c.style;d.position="absolute";d.visibility="hidden";d.cursor="move";d.border="2px solid #aaa";d.zIndex=999;b.insertBefore(c,b.firstChild)}}},initFrame:function(){this.createFrame()},applyConfig:function(){Ext.dd.DDProxy.superclass.applyConfig.call(this); +this.resizeFrame=!1!==this.config.resizeFrame;this.centerFrame=this.config.centerFrame;this.setDragElId(this.config.dragElId||Ext.dd.DDProxy.dragElId)},showFrame:function(a,b){this.getEl();var c=this.getDragEl(),d=c.style;this._resizeProxy();this.centerFrame&&this.setDelta(Math.round(parseInt(d.width,10)/2),Math.round(parseInt(d.height,10)/2));this.setDragElPos(a,b);Ext.fly(c).show()},_resizeProxy:function(){if(this.resizeFrame){var a=this.getEl();Ext.fly(this.getDragEl()).setSize(a.offsetWidth,a.offsetHeight)}}, +b4MouseDown:function(a){var b=a.getPageX();a=a.getPageY();this.autoOffset(b,a);this.setDragElPos(b,a)},b4StartDrag:function(a,b){this.showFrame(a,b)},b4EndDrag:function(){Ext.fly(this.getDragEl()).hide()},endDrag:function(){var a=this.getEl(),b=this.getDragEl();b.style.visibility="";this.beforeMove();a.style.visibility="hidden";Ext.dd.DDM.moveToEl(a,b);b.style.visibility="hidden";a.style.visibility="";this.afterDrag()},beforeMove:function(){},afterDrag:function(){},toString:function(){return"DDProxy "+ +this.id}});Ext.dd.DDTarget=function(a,b,c){a&&this.initTarget(a,b,c)}; +Ext.extend(Ext.dd.DDTarget,Ext.dd.DragDrop,{getDragEl:Ext.emptyFn,isValidHandleChild:Ext.emptyFn,startDrag:Ext.emptyFn,endDrag:Ext.emptyFn,onDrag:Ext.emptyFn,onDragDrop:Ext.emptyFn,onDragEnter:Ext.emptyFn,onDragOut:Ext.emptyFn,onDragOver:Ext.emptyFn,onInvalidDrop:Ext.emptyFn,onMouseDown:Ext.emptyFn,onMouseUp:Ext.emptyFn,setXConstraint:Ext.emptyFn,setYConstraint:Ext.emptyFn,resetConstraints:Ext.emptyFn,clearConstraints:Ext.emptyFn,clearTicks:Ext.emptyFn,setInitPosition:Ext.emptyFn,setDragElId:Ext.emptyFn, +setHandleElId:Ext.emptyFn,setOuterHandleElId:Ext.emptyFn,addInvalidHandleClass:Ext.emptyFn,addInvalidHandleId:Ext.emptyFn,addInvalidHandleType:Ext.emptyFn,removeInvalidHandleClass:Ext.emptyFn,removeInvalidHandleId:Ext.emptyFn,removeInvalidHandleType:Ext.emptyFn,toString:function(){return"DDTarget "+this.id}}); +Ext.dd.DragTracker=Ext.extend(Ext.util.Observable,{active:!1,tolerance:5,autoStart:!1,constructor:function(a){Ext.apply(this,a);this.addEvents("mousedown","mouseup","mousemove","dragstart","dragend","drag");this.dragRegion=new Ext.lib.Region(0,0,0,0);this.el&&this.initEl(this.el);Ext.dd.DragTracker.superclass.constructor.call(this,a)},initEl:function(a){this.el=Ext.get(a);a.on("mousedown",this.onMouseDown,this,this.delegate?{delegate:this.delegate}:void 0)},destroy:function(){this.el.un("mousedown", +this.onMouseDown,this);delete this.el},onMouseDown:function(a,b){!1!==this.fireEvent("mousedown",this,a)&&!1!==this.onBeforeStart(a)&&(this.startXY=this.lastXY=a.getXY(),this.dragTarget=this.delegate?b:this.el.dom,!1!==this.preventDefault&&a.preventDefault(),Ext.getDoc().on({scope:this,mouseup:this.onMouseUp,mousemove:this.onMouseMove,selectstart:this.stopSelect}),this.autoStart&&(this.timer=this.triggerStart.defer(!0===this.autoStart?1E3:this.autoStart,this,[a])))},onMouseMove:function(a){if(this.active&& +Ext.isIE&&!a.browserEvent.button)a.preventDefault(),this.onMouseUp(a);else{a.preventDefault();var b=a.getXY(),c=this.startXY;this.lastXY=b;if(!this.active)if(Math.abs(c[0]-b[0])>this.tolerance||Math.abs(c[1]-b[1])>this.tolerance)this.triggerStart(a);else return;this.fireEvent("mousemove",this,a);this.onDrag(a);this.fireEvent("drag",this,a)}},onMouseUp:function(a){var b=Ext.getDoc(),c=this.active;b.un("mousemove",this.onMouseMove,this);b.un("mouseup",this.onMouseUp,this);b.un("selectstart",this.stopSelect, +this);a.preventDefault();this.clearStart();this.active=!1;delete this.elRegion;this.fireEvent("mouseup",this,a);c&&(this.onEnd(a),this.fireEvent("dragend",this,a))},triggerStart:function(a){this.clearStart();this.active=!0;this.onStart(a);this.fireEvent("dragstart",this,a)},clearStart:function(){this.timer&&(clearTimeout(this.timer),delete this.timer)},stopSelect:function(a){a.stopEvent();return!1},onBeforeStart:function(){},onStart:function(){},onDrag:function(){},onEnd:function(){},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(a){a=this.getXY(a);var b=this.startXY;return[b[0]-a[0],b[1]-a[1]]},constrainModes:{point:function(a){this.elRegion||(this.elRegion=this.getDragCt().getRegion());var b=this.dragRegion;b.left=a[0];b.top=a[1];b.right=a[0];b.bottom=a[1];b.constrainTo(this.elRegion);return[b.left,b.top]}}}); +Ext.dd.ScrollManager=function(){var a=Ext.dd.DragDropMgr,b={},c=null,d={},e=function(){a.dragCurrent&&a.refreshCache(a.dragCurrent.groups)},g=function(){if(a.dragCurrent){var b=Ext.dd.ScrollManager,c=d.el.ddScrollConfig?d.el.ddScrollConfig.increment:b.increment;b.animate?d.el.scroll(d.dir,c,!0,b.animDuration,e):d.el.scroll(d.dir,c)&&e()}},h=function(){d.id&&clearInterval(d.id);d.id=0;d.el=null;d.dir=""},j=function(b,c){h();d.el=b;d.dir=c;var e=b.ddScrollConfig?b.ddScrollConfig.ddGroup:void 0,j=b.ddScrollConfig&& +b.ddScrollConfig.frequency?b.ddScrollConfig.frequency:Ext.dd.ScrollManager.frequency;if(void 0===e||a.dragCurrent.ddGroup==e)d.id=setInterval(g,j)};a.fireEvents=a.fireEvents.createSequence(function(e,g){if(!g&&a.dragCurrent){var m=Ext.dd.ScrollManager;if(!c||c!=a.dragCurrent)c=a.dragCurrent,m.refreshCache();var q=Ext.lib.Event.getXY(e),q=new Ext.lib.Point(q[0],q[1]),r;for(r in b){var n=b[r],s=n._region,x=n.ddScrollConfig?n.ddScrollConfig:m;if(s&&s.contains(q)&&n.isScrollable()){if(s.bottom-q.y<=x.vthresh){d.el!= +n&&j(n,"down");return}if(s.right-q.x<=x.hthresh){d.el!=n&&j(n,"left");return}if(q.y-s.top<=x.vthresh){d.el!=n&&j(n,"up");return}if(q.x-s.left<=x.hthresh){d.el!=n&&j(n,"right");return}}}h()}},a);a.stopDrag=a.stopDrag.createSequence(function(){c=null;h()},a);return{register:function(a){if(Ext.isArray(a))for(var c=0,d=a.length;c<d;c++)this.register(a[c]);else a=Ext.get(a),b[a.id]=a},unregister:function(a){if(Ext.isArray(a))for(var c=0,d=a.length;c<d;c++)this.unregister(a[c]);else a=Ext.get(a),delete b[a.id]}, +vthresh:25,hthresh:25,increment:100,frequency:500,animate:!0,animDuration:0.4,ddGroup:void 0,refreshCache:function(){for(var a in b)"object"==typeof b[a]&&(b[a]._region=b[a].getRegion())}}}(); +Ext.dd.Registry=function(){var a={},b={},c=0,d=function(a,b){if("string"==typeof a)return a;var d=a.id;!d&&!1!==b&&(d="extdd-"+ ++c,a.id=d);return d};return{register:function(c,g){g=g||{};"string"==typeof c&&(c=document.getElementById(c));g.ddel=c;a[d(c)]=g;!1!==g.isHandle&&(b[g.ddel.id]=g);if(g.handles)for(var h=g.handles,j=0,k=h.length;j<k;j++)b[d(h[j])]=g},unregister:function(c){c=d(c,!1);var g=a[c];if(g&&(delete a[c],g.handles)){c=g.handles;for(var g=0,h=c.length;g<h;g++)delete b[d(c[g],!1)]}}, +getHandle:function(a){"string"!=typeof a&&(a=a.id);return b[a]},getHandleFromEvent:function(a){return(a=Ext.lib.Event.getTarget(a))?b[a.id]:null},getTarget:function(b){"string"!=typeof b&&(b=b.id);return a[b]},getTargetFromEvent:function(c){return(c=Ext.lib.Event.getTarget(c))?a[c.id]||b[c.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||!1!==a.shadow});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;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;a&&this.ghost.update("")},update:function(a){"string"==typeof a?this.ghost.update(a):(this.ghost.update(""),a.style.margin="0",this.ghost.dom.appendChild(a));(a=this.ghost.dom.firstChild)&& +Ext.fly(a).setStyle("float","none")},getEl:function(){return this.el},getGhost:function(){return this.ghost},hide:function(a){this.el.hide();a&&this.reset(!0)},stop:function(){this.anim&&(this.anim.isAnimated&&this.anim.isAnimated())&&this.anim.stop()},show:function(){this.el.show()},sync:function(){this.el.sync()},repair:function(a,b,c){this.callback=b;this.scope=c;a&&!1!==this.animRepair?(this.el.addClass("x-dd-drag-repair"),this.el.hideUnders(!0),this.anim=this.el.shift({duration:this.repairDuration|| +0.5,easing:"easeOut",xy:a,stopFx:!0,callback:this.afterRepair,scope:this})):this.afterRepair()},afterRepair:function(){this.hide(!0);"function"==typeof this.callback&&this.callback.call(this.scope||this);this.scope=this.callback=null},destroy:function(){Ext.destroy(this.ghost,this.el)}}; +Ext.dd.DragSource=function(a,b){this.el=Ext.get(a);this.dragData||(this.dragData={});Ext.apply(this,b);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:!1,isTarget:!1,scroll:!0===this.scroll});this.dragging=!1}; +Ext.extend(Ext.dd.DragSource,Ext.dd.DDProxy,{dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",getDragData:function(){return this.dragData},onDragEnter:function(a,b){var c=Ext.dd.DragDropMgr.getDDById(b);this.cachedTarget=c;if(!1!==this.beforeDragEnter(c,a,b)){if(c.isNotifyTarget){var d=c.notifyEnter(this,a,this.dragData);this.proxy.setStatus(d)}else this.proxy.setStatus(this.dropAllowed);this.afterDragEnter&&this.afterDragEnter(c,a,b)}},beforeDragEnter:function(){return!0},alignElWithMouse:function(){Ext.dd.DragSource.superclass.alignElWithMouse.apply(this, +arguments);this.proxy.sync()},onDragOver:function(a,b){var c=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(b);if(!1!==this.beforeDragOver(c,a,b)){if(c.isNotifyTarget){var d=c.notifyOver(this,a,this.dragData);this.proxy.setStatus(d)}this.afterDragOver&&this.afterDragOver(c,a,b)}},beforeDragOver:function(){return!0},onDragOut:function(a,b){var c=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(b);!1!==this.beforeDragOut(c,a,b)&&(c.isNotifyTarget&&c.notifyOut(this,a,this.dragData),this.proxy.reset(), +this.afterDragOut&&this.afterDragOut(c,a,b));this.cachedTarget=null},beforeDragOut:function(){return!0},onDragDrop:function(a,b){var c=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(b);if(!1!==this.beforeDragDrop(c,a,b)){if(c.isNotifyTarget)if(c.notifyDrop(this,a,this.dragData))this.onValidDrop(c,a,b);else this.onInvalidDrop(c,a,b);else this.onValidDrop(c,a,b);this.afterDragDrop&&this.afterDragDrop(c,a,b)}delete this.cachedTarget},beforeDragDrop:function(){return!0},onValidDrop:function(a,b,c){this.hideProxy(); +this.afterValidDrop&&this.afterValidDrop(a,b,c)},getRepairXY:function(){return this.el.getXY()},onInvalidDrop:function(a,b,c){this.beforeInvalidDrop(a,b,c);this.cachedTarget&&(this.cachedTarget.isNotifyTarget&&this.cachedTarget.notifyOut(this,b,this.dragData),this.cacheTarget=null);this.proxy.repair(this.getRepairXY(b,this.dragData),this.afterRepair,this);this.afterInvalidDrop&&this.afterInvalidDrop(b,c)},afterRepair:function(){Ext.enableFx&&this.el.highlight(this.hlColor||"c3daf9");this.dragging= +!1},beforeInvalidDrop:function(){return!0},handleMouseDown:function(a){if(!this.dragging){var b=this.getDragData(a);b&&!1!==this.onBeforeDrag(b,a)&&(this.dragData=b,this.proxy.stop(),Ext.dd.DragSource.superclass.handleMouseDown.apply(this,arguments))}},onBeforeDrag:function(){return!0},onStartDrag:Ext.emptyFn,startDrag:function(a,b){this.proxy.reset();this.dragging=!0;this.proxy.update("");this.onInitDrag(a,b);this.proxy.show()},onInitDrag:function(a,b){var c=this.el.dom.cloneNode(!0);c.id=Ext.id(); +this.proxy.update(c);this.onStartDrag(a,b);return!0},getProxy:function(){return this.proxy},hideProxy:function(){this.proxy.hide();this.proxy.reset(!0);this.dragging=!1},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups)},b4EndDrag:function(){},endDrag:function(a){this.onEndDrag(this.dragData,a)},onEndDrag:function(){},autoOffset:function(){this.setDelta(-12,-20)},destroy:function(){Ext.dd.DragSource.superclass.destroy.call(this);Ext.destroy(this.proxy)}}); +Ext.dd.DropTarget=Ext.extend(Ext.dd.DDTarget,{constructor:function(a,b){this.el=Ext.get(a);Ext.apply(this,b);this.containerScroll&&Ext.dd.ScrollManager.register(this.el);Ext.dd.DropTarget.superclass.constructor.call(this,this.el.dom,this.ddGroup||this.group,{isTarget:!0})},dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",isTarget:!0,isNotifyTarget:!0,notifyEnter:function(){this.overClass&&this.el.addClass(this.overClass);return this.dropAllowed},notifyOver:function(){return this.dropAllowed}, +notifyOut:function(){this.overClass&&this.el.removeClass(this.overClass)},notifyDrop:function(){return!1},destroy:function(){Ext.dd.DropTarget.superclass.destroy.call(this);this.containerScroll&&Ext.dd.ScrollManager.unregister(this.el)}}); +Ext.dd.DragZone=Ext.extend(Ext.dd.DragSource,{constructor:function(a,b){Ext.dd.DragZone.superclass.constructor.call(this,a,b);this.containerScroll&&Ext.dd.ScrollManager.register(this.el)},getDragData:function(a){return Ext.dd.Registry.getHandleFromEvent(a)},onInitDrag:function(a,b){this.proxy.update(this.dragData.ddel.cloneNode(!0));this.onStartDrag(a,b);return!0},afterRepair:function(){Ext.enableFx&&Ext.Element.fly(this.dragData.ddel).highlight(this.hlColor||"c3daf9");this.dragging=!1},getRepairXY:function(){return Ext.Element.fly(this.dragData.ddel).getXY()}, +destroy:function(){Ext.dd.DragZone.superclass.destroy.call(this);this.containerScroll&&Ext.dd.ScrollManager.unregister(this.el)}});Ext.dd.DropZone=function(a,b){Ext.dd.DropZone.superclass.constructor.call(this,a,b)}; +Ext.extend(Ext.dd.DropZone,Ext.dd.DropTarget,{getTargetFromEvent:function(a){return Ext.dd.Registry.getTargetFromEvent(a)},onNodeEnter:function(){},onNodeOver:function(){return this.dropAllowed},onNodeOut:function(){},onNodeDrop:function(){return!1},onContainerOver:function(){return this.dropNotAllowed},onContainerDrop:function(){return!1},notifyEnter:function(){return this.dropNotAllowed},notifyOver:function(a,b,c){var d=this.getTargetFromEvent(b);if(!d)return this.lastOverNode&&(this.onNodeOut(this.lastOverNode, +a,b,c),this.lastOverNode=null),this.onContainerOver(a,b,c);if(this.lastOverNode!=d){if(this.lastOverNode)this.onNodeOut(this.lastOverNode,a,b,c);this.onNodeEnter(d,a,b,c);this.lastOverNode=d}return this.onNodeOver(d,a,b,c)},notifyOut:function(a,b,c){this.lastOverNode&&(this.onNodeOut(this.lastOverNode,a,b,c),this.lastOverNode=null)},notifyDrop:function(a,b,c){this.lastOverNode&&(this.onNodeOut(this.lastOverNode,a,b,c),this.lastOverNode=null);var d=this.getTargetFromEvent(b);return d?this.onNodeDrop(d, +a,b,c):this.onContainerDrop(a,b,c)},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups)}});Ext.Element.addMethods({initDD:function(a,b,c){a=new Ext.dd.DD(Ext.id(this.dom),a,b);return Ext.apply(a,c)},initDDProxy:function(a,b,c){a=new Ext.dd.DDProxy(Ext.id(this.dom),a,b);return Ext.apply(a,c)},initDDTarget:function(a,b,c){a=new Ext.dd.DDTarget(Ext.id(this.dom),a,b);return Ext.apply(a,c)}}); +Ext.tree.TreePanel=Ext.extend(Ext.Panel,{rootVisible:!0,animate:Ext.enableFx,lines:!0,enableDD:!1,hlDrop:Ext.enableFx,pathSeparator:"/",bubbleEvents:[],initComponent:function(){Ext.tree.TreePanel.superclass.initComponent.call(this);this.eventModel||(this.eventModel=new Ext.tree.TreeEventModel(this));var a=this.loader;a?Ext.isObject(a)&&!a.load&&(a=new Ext.tree.TreeLoader(a)):a=new Ext.tree.TreeLoader({dataUrl:this.dataUrl,requestMethod:this.requestMethod});this.loader=a;this.nodeHash={};this.root&& +(a=this.root,delete this.root,this.setRootNode(a));this.addEvents("append","remove","movenode","insert","beforeappend","beforeremove","beforemovenode","beforeinsert","beforeload","load","textchange","beforeexpandnode","beforecollapsenode","expandnode","disabledchange","collapsenode","beforeclick","click","containerclick","checkchange","beforedblclick","dblclick","containerdblclick","contextmenu","containercontextmenu","beforechildrenrendered","startdrag","enddrag","dragdrop","beforenodedrop","nodedrop", +"nodedragover");if(this.singleExpand)this.on("beforeexpandnode",this.restrictExpand,this)},proxyNodeEvent:function(a,b,c,d,e,g,h){if("collapse"==a||"expand"==a||"beforecollapse"==a||"beforeexpand"==a||"move"==a||"beforemove"==a)a+="node";return this.fireEvent(a,b,c,d,e,g,h)},getRootNode:function(){return this.root},setRootNode:function(a){this.destroyRoot();a.render||(a=this.loader.createNode(a));this.root=a;a.ownerTree=this;a.isRoot=!0;this.registerNode(a);if(!this.rootVisible){var b=a.attributes.uiProvider; +a.ui=b?new b(a):new Ext.tree.RootTreeNodeUI(a)}this.innerCt&&(this.clearInnerCt(),this.renderRoot());return a},clearInnerCt:function(){this.innerCt.update("")},renderRoot:function(){this.root.render();this.rootVisible||this.root.renderChildren()},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; +b&&(b.expandedChild&&b.expandedChild.parentNode==b&&b.expandedChild.collapse(),b.expandedChild=a)},getChecked:function(a,b){b=b||this.root;var c=[];b.cascade(function(){this.attributes.checked&&c.push(!a?this:"id"==a?this.id:this.attributes[a])});return c},getLoader:function(){return this.loader},expandAll:function(){this.root.expand(!0)},collapseAll:function(){this.root.collapse(!0)},getSelectionModel:function(){this.selModel||(this.selModel=new Ext.tree.DefaultSelectionModel);return this.selModel}, +expandPath:function(a,b,c){if(Ext.isEmpty(a))c&&c(!1,void 0);else{b=b||"id";var d=a.split(this.pathSeparator),e=this.root;if(e.attributes[b]!=d[1])c&&c(!1,null);else{var g=1,h=function(){if(++g==d.length)c&&c(!0,e);else{var a=e.findChild(b,d[g]);a?(e=a,a.expand(!1,!1,h)):c&&c(!1,e)}};e.expand(!1,!1,h)}}},selectPath:function(a,b,c){if(Ext.isEmpty(a))c&&c(!1,void 0);else{b=b||"id";a=a.split(this.pathSeparator);var d=a.pop();1<a.length?this.expandPath(a.join(this.pathSeparator),b,function(a,g){if(a&& +g){var h=g.findChild(b,d);h?(h.select(),c&&c(!0,h)):c&&c(!1,h)}else c&&c(!1,h)}):(this.root.select(),c&&c(!0,this.root))}},getTreeEl:function(){return this.body},onRender:function(a,b){Ext.tree.TreePanel.superclass.onRender.call(this,a,b);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);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:!0===this.ddAppendOnly});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.renderRoot()},beforeDestroy:function(){this.rendered&&(Ext.dd.ScrollManager.unregister(this.body),Ext.destroy(this.dropZone,this.dragZone));this.destroyRoot();Ext.destroy(this.loader);this.nodeHash=this.root=this.loader=null;Ext.tree.TreePanel.superclass.beforeDestroy.call(this)},destroyRoot:function(){this.root&&this.root.destroy&&this.root.destroy(!0)}});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;!1!==a.trackMouseOver&&a.mon(a.innerCt,{scope:this,mouseover:this.delegateOver,mouseout:this.delegateOut});a.mon(a.getTreeEl(),{scope:this,click:this.delegateClick,dblclick:this.delegateDblClick,contextmenu:this.delegateContextMenu})},getNode:function(a){if(a=a.getTarget(".x-tree-node-el",10))if(a=Ext.fly(a,"_treeEvents").getAttribute("tree-node-id","ext"))return this.tree.getNodeById(a);return null},getNodeTarget:function(a){var b= +a.getTarget(".x-tree-node-icon",1);b||(b=a.getTarget(".x-tree-node-el",6));return b},delegateOut:function(a,b){if(this.beforeEvent(a)){if(a.getTarget(".x-tree-ec-icon",1)){var c=this.getNode(a);this.onIconOut(a,c);c==this.lastEcOver&&delete this.lastEcOver}if((b=this.getNodeTarget(a))&&!a.within(b,!0))this.onNodeOut(a,this.getNode(a))}},delegateOver:function(a){if(this.beforeEvent(a)&&(Ext.isGecko&&!this.trackingDoc&&(Ext.getBody().on("mouseover",this.trackExit,this),this.trackingDoc=!0),this.lastEcOver&& +(this.onIconOut(a,this.lastEcOver),delete this.lastEcOver),a.getTarget(".x-tree-ec-icon",1)&&(this.lastEcOver=this.getNode(a),this.onIconOver(a,this.lastEcOver)),this.getNodeTarget(a)))this.onNodeOver(a,this.getNode(a))},trackExit:function(a){if(this.lastOverNode){if(this.lastOverNode.ui&&!a.within(this.lastOverNode.ui.getEl()))this.onNodeOut(a,this.lastOverNode);delete this.lastOverNode;Ext.getBody().un("mouseover",this.trackExit,this);this.trackingDoc=!1}},delegateClick:function(a){if(this.beforeEvent(a))if(a.getTarget("input[type=checkbox]", +1))this.onCheckboxClick(a,this.getNode(a));else if(a.getTarget(".x-tree-ec-icon",1))this.onIconClick(a,this.getNode(a));else{if(this.getNodeTarget(a))this.onNodeClick(a,this.getNode(a))}else this.checkContainerEvent(a,"click")},delegateDblClick:function(a){if(this.beforeEvent(a)){if(this.getNodeTarget(a))this.onNodeDblClick(a,this.getNode(a))}else this.checkContainerEvent(a,"dblclick")},delegateContextMenu:function(a){if(this.beforeEvent(a)){if(this.getNodeTarget(a))this.onNodeContextMenu(a,this.getNode(a))}else this.checkContainerEvent(a, +"contextmenu")},checkContainerEvent:function(a,b){if(this.disabled)return a.stopEvent(),!1;this.onContainerEvent(a,b)},onContainerEvent:function(a,b){this.tree.fireEvent("container"+b,this.tree,a)},onNodeClick:function(a,b){b.ui.onClick(a)},onNodeOver:function(a,b){this.lastOverNode=b;b.ui.onOver(a)},onNodeOut:function(a,b){b.ui.onOut(a)},onIconOver:function(a,b){b.ui.addClass("x-tree-ec-over")},onIconOut:function(a,b){b.ui.removeClass("x-tree-ec-over")},onIconClick:function(a,b){b.ui.ecClick(a)}, +onCheckboxClick:function(a,b){b.ui.onCheckChange(a)},onNodeDblClick:function(a,b){b.ui.onDblClick(a)},onNodeContextMenu:function(a,b){b.ui.onContextMenu(a)},beforeEvent:function(a){var b=this.getNode(a);return this.disabled||!b||!b.ui?(a.stopEvent(),!1):!0},disable:function(){this.disabled=!0},enable:function(){this.disabled=!1}}; +Ext.tree.DefaultSelectionModel=Ext.extend(Ext.util.Observable,{constructor:function(a){this.selNode=null;this.addEvents("selectionchange","beforeselect");Ext.apply(this,a);Ext.tree.DefaultSelectionModel.superclass.constructor.call(this)},init:function(a){this.tree=a;a.mon(a.getTreeEl(),"keydown",this.onKeyDown,this);a.on("click",this.onNodeClick,this)},onNodeClick:function(a){this.select(a)},select:function(a,b){if(!Ext.fly(a.ui.wrap).isVisible()&&b)return b.call(this,a);var c=this.selNode;if(a== +c)a.ui.onSelectedChange(!0);else if(!1!==this.fireEvent("beforeselect",this,a,c)){if(c&&c.ui)c.ui.onSelectedChange(!1);this.selNode=a;a.ui.onSelectedChange(!0);this.fireEvent("selectionchange",this,a,c)}return a},unselect:function(a,b){this.selNode==a&&this.clearSelections(b)},clearSelections:function(a){var b=this.selNode;b&&(b.ui.onSelectedChange(!1),this.selNode=null,!0!==a&&this.fireEvent("selectionchange",this,null));return b},getSelectedNode:function(){return this.selNode},isSelected:function(a){return this.selNode== +a},selectPrevious:function(a){if(!(a=a||this.selNode||this.lastSelNode))return null;var b=a.previousSibling;if(b){if(!b.isExpanded()||1>b.childNodes.length)return this.select(b,this.selectPrevious);for(a=b.lastChild;a&&a.isExpanded()&&Ext.fly(a.ui.wrap).isVisible()&&0<a.childNodes.length;)a=a.lastChild;return this.select(a,this.selectPrevious)}return a.parentNode&&(this.tree.rootVisible||!a.parentNode.isRoot)?this.select(a.parentNode,this.selectPrevious):null},selectNext:function(a){if(!(a=a||this.selNode|| +this.lastSelNode))return null;if(a.firstChild&&a.isExpanded()&&Ext.fly(a.ui.wrap).isVisible())return this.select(a.firstChild,this.selectNext);if(a.nextSibling)return this.select(a.nextSibling,this.selectNext);if(a.parentNode){var b=null;a.parentNode.bubble(function(){if(this.nextSibling)return b=this.getOwnerTree().selModel.select(this.nextSibling,this.selectNext),!1});return b}return null},onKeyDown:function(a){var b=this.selNode||this.lastSelNode;if(b)switch(a.getKey()){case a.DOWN:a.stopEvent(); +this.selectNext();break;case a.UP:a.stopEvent();this.selectPrevious();break;case a.RIGHT:a.preventDefault();b.hasChildNodes()&&(b.isExpanded()?b.firstChild&&this.select(b.firstChild,a):b.expand());break;case a.LEFT:a.preventDefault(),b.hasChildNodes()&&b.isExpanded()?b.collapse():b.parentNode&&(this.tree.rootVisible||b.parentNode!=this.tree.getRootNode())&&this.select(b.parentNode,a)}}}); +Ext.tree.MultiSelectionModel=Ext.extend(Ext.util.Observable,{constructor:function(a){this.selNodes=[];this.selMap={};this.addEvents("selectionchange");Ext.apply(this,a);Ext.tree.MultiSelectionModel.superclass.constructor.call(this)},init:function(a){this.tree=a;a.mon(a.getTreeEl(),"keydown",this.onKeyDown,this);a.on("click",this.onNodeClick,this)},onNodeClick:function(a,b){b.ctrlKey&&this.isSelected(a)?this.unselect(a):this.select(a,b,b.ctrlKey)},select:function(a,b,c){!0!==c&&this.clearSelections(!0); +if(this.isSelected(a))return this.lastSelNode=a;this.selNodes.push(a);this.lastSelNode=this.selMap[a.id]=a;a.ui.onSelectedChange(!0);this.fireEvent("selectionchange",this,this.selNodes);return a},unselect:function(a){if(this.selMap[a.id]){a.ui.onSelectedChange(!1);var b=this.selNodes.indexOf(a);-1!=b&&this.selNodes.splice(b,1);delete this.selMap[a.id];this.fireEvent("selectionchange",this,this.selNodes)}},clearSelections:function(a){var b=this.selNodes;if(0<b.length){for(var c=0,d=b.length;c<d;c++)b[c].ui.onSelectedChange(!1); +this.selNodes=[];this.selMap={};!0!==a&&this.fireEvent("selectionchange",this,this.selNodes)}},isSelected:function(a){return this.selMap[a.id]?!0:!1},getSelectedNodes:function(){return this.selNodes.concat([])},onKeyDown:Ext.tree.DefaultSelectionModel.prototype.onKeyDown,selectNext:Ext.tree.DefaultSelectionModel.prototype.selectNext,selectPrevious:Ext.tree.DefaultSelectionModel.prototype.selectPrevious}); +Ext.data.Tree=Ext.extend(Ext.util.Observable,{constructor:function(a){this.nodeHash={};this.root=null;a&&this.setRootNode(a);this.addEvents("append","remove","move","insert","beforeappend","beforeremove","beforemove","beforeinsert");Ext.data.Tree.superclass.constructor.call(this)},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=!0;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=Ext.extend(Ext.util.Observable,{constructor:function(a){this.attributes=a||{};this.leaf=this.attributes.leaf;this.id=this.attributes.id;this.id||(this.id=Ext.id(null,"xnode-"),this.attributes.id=this.id);this.childNodes=[];this.nextSibling=this.previousSibling=this.lastChild=this.firstChild=this.parentNode=null;this.addEvents({append:!0,remove:!0,move:!0,insert:!0,beforeappend:!0,beforeremove:!0,beforemove:!0,beforeinsert:!0});this.listeners=this.attributes.listeners;Ext.data.Node.superclass.constructor.call(this)}, +fireEvent:function(a){if(!1===Ext.data.Node.superclass.fireEvent.apply(this,arguments))return!1;var b=this.getOwnerTree();return b&&!1===b.proxyNodeEvent.apply(b,arguments)?!1:!0},isLeaf:function(){return!0===this.leaf},setFirstChild:function(a){this.firstChild=a},setLastChild:function(a){this.lastChild=a},isLast:function(){return!this.parentNode?!0:this.parentNode.lastChild==this},isFirst:function(){return!this.parentNode?!0:this.parentNode.firstChild==this},hasChildNodes:function(){return!this.isLeaf()&& +0<this.childNodes.length},isExpandable:function(){return this.attributes.expandable||this.hasChildNodes()},appendChild:function(a){var b=!1;Ext.isArray(a)?b=a:1<arguments.length&&(b=arguments);if(b)for(var c=0,d=b.length;c<d;c++)this.appendChild(b[c]);else{if(!1===this.fireEvent("beforeappend",this.ownerTree,this,a))return!1;b=this.childNodes.length;if(c=a.parentNode){if(!1===a.fireEvent("beforemove",a.getOwnerTree(),a,c,this,b))return!1;c.removeChild(a)}b=this.childNodes.length;0===b&&this.setFirstChild(a); +this.childNodes.push(a);a.parentNode=this;(d=this.childNodes[b-1])?(a.previousSibling=d,d.nextSibling=a):a.previousSibling=null;a.nextSibling=null;this.setLastChild(a);a.setOwnerTree(this.getOwnerTree());this.fireEvent("append",this.ownerTree,this,a,b);c&&a.fireEvent("move",this.ownerTree,a,c,this,b);return a}},removeChild:function(a,b){var c=this.childNodes.indexOf(a);if(-1==c||!1===this.fireEvent("beforeremove",this.ownerTree,this,a))return!1;this.childNodes.splice(c,1);a.previousSibling&&(a.previousSibling.nextSibling= +a.nextSibling);a.nextSibling&&(a.nextSibling.previousSibling=a.previousSibling);this.firstChild==a&&this.setFirstChild(a.nextSibling);this.lastChild==a&&this.setLastChild(a.previousSibling);this.fireEvent("remove",this.ownerTree,this,a);b?a.destroy(!0):a.clear();return a},clear:function(a){this.setOwnerTree(null,a);this.parentNode=this.previousSibling=this.nextSibling=null;a&&(this.firstChild=this.lastChild=null)},destroy:function(a){!0===a?(this.purgeListeners(),this.clear(!0),Ext.each(this.childNodes, +function(a){a.destroy(!0)}),this.childNodes=null):this.remove(!0)},insertBefore:function(a,b){if(!b)return this.appendChild(a);if(a==b||!1===this.fireEvent("beforeinsert",this.ownerTree,this,a,b))return!1;var c=this.childNodes.indexOf(b),d=a.parentNode,e=c;d==this&&this.childNodes.indexOf(a)<c&&e--;if(d){if(!1===a.fireEvent("beforemove",a.getOwnerTree(),a,d,this,c,b))return!1;d.removeChild(a)}0===e&&this.setFirstChild(a);this.childNodes.splice(e,0,a);a.parentNode=this;(c=this.childNodes[e-1])?(a.previousSibling= +c,c.nextSibling=a):a.previousSibling=null;a.nextSibling=b;b.previousSibling=a;a.setOwnerTree(this.getOwnerTree());this.fireEvent("insert",this.ownerTree,this,a,b);d&&a.fireEvent("move",this.ownerTree,a,d,this,e,b);return a},remove:function(a){this.parentNode&&this.parentNode.removeChild(this,a);return this},removeAll:function(a){for(var b=this.childNodes,c;c=b[0];)this.removeChild(c,a);return this},item:function(a){return this.childNodes[a]},replaceChild:function(a,b){var c=b?b.nextSibling:null;this.removeChild(b); +this.insertBefore(a,c);return b},indexOf:function(a){return this.childNodes.indexOf(a)},getOwnerTree:function(){if(!this.ownerTree)for(var a=this;a;){if(a.ownerTree){this.ownerTree=a.ownerTree;break}a=a.parentNode}return this.ownerTree},getDepth:function(){for(var a=0,b=this;b.parentNode;)++a,b=b.parentNode;return a},setOwnerTree:function(a,b){a!=this.ownerTree&&(this.ownerTree&&this.ownerTree.unregisterNode(this),this.ownerTree=a,!0!==b&&Ext.each(this.childNodes,function(b){b.setOwnerTree(a)}),a&& +a.registerNode(this))},setId:function(a){if(a!==this.id){var b=this.ownerTree;b&&b.unregisterNode(this);this.id=this.attributes.id=a;b&&b.registerNode(this);this.onIdChange(a)}},onIdChange:Ext.emptyFn,getPath:function(a){a=a||"id";for(var b=this.parentNode,c=[this.attributes[a]];b;)c.unshift(b.attributes[a]),b=b.parentNode;a=this.getOwnerTree().pathSeparator;return a+c.join(a)},bubble:function(a,b,c){for(var d=this;d&&!1!==a.apply(b||d,c||[d]);)d=d.parentNode},cascade:function(a,b,c){if(!1!==a.apply(b|| +this,c||[this]))for(var d=this.childNodes,e=0,g=d.length;e<g;e++)d[e].cascade(a,b,c)},eachChild:function(a,b,c){for(var d=this.childNodes,e=0,g=d.length;e<g&&!1!==a.apply(b||d[e],c||[d[e]]);e++);},findChild:function(a,b,c){return this.findChildBy(function(){return this.attributes[a]==b},null,c)},findChildBy:function(a,b,c){for(var d=this.childNodes,e=d.length,g=0,h;g<e;g++)if(h=d[g],!0===a.call(b||h,h)||c&&(h=h.findChildBy(a,b,c),null!=h))return h;return null},sort:function(a,b){var c=this.childNodes, +d=c.length;if(0<d){c.sort(b?function(){a.apply(b,arguments)}:a);for(var e=0;e<d;e++){var g=c[e];g.previousSibling=c[e-1];g.nextSibling=c[e+1];0===e&&this.setFirstChild(g);e==d-1&&this.setLastChild(g)}}},contains:function(a){return a.isAncestor(this)},isAncestor:function(a){for(var b=this.parentNode;b;){if(b==a)return!0;b=b.parentNode}return!1},toString:function(){return"[Node"+(this.id?" "+this.id:"")+"]"}}); +Ext.tree.TreeNode=Ext.extend(Ext.data.Node,{constructor:function(a){a=a||{};Ext.isString(a)&&(a={text:a});this.rendered=this.childrenRendered=!1;Ext.tree.TreeNode.superclass.constructor.call(this,a);this.expanded=!0===a.expanded;this.isTarget=!1!==a.isTarget;this.draggable=!1!==a.draggable&&!1!==a.allowDrag;this.allowChildren=!1!==a.allowChildren&&!1!==a.allowDrop;this.text=a.text;this.disabled=!0===a.disabled;this.hidden=!0===a.hidden;this.addEvents("textchange","beforeexpand","beforecollapse","expand", +"disabledchange","collapse","beforeclick","click","checkchange","beforedblclick","dblclick","contextmenu","beforechildrenrendered");this.ui=new (this.attributes.uiProvider||this.defaultUI||Ext.tree.TreeNodeUI)(this)},preventHScroll:!0,isExpanded:function(){return this.expanded},getUI:function(){return this.ui},getLoader:function(){var a;return this.loader||((a=this.getOwnerTree())&&a.loader?a.loader:this.loader=new Ext.tree.TreeLoader)},setFirstChild:function(a){var b=this.firstChild;Ext.tree.TreeNode.superclass.setFirstChild.call(this, +a);this.childrenRendered&&(b&&a!=b)&&b.renderIndent(!0,!0);this.rendered&&this.renderIndent(!0,!0)},setLastChild:function(a){var b=this.lastChild;Ext.tree.TreeNode.superclass.setLastChild.call(this,a);this.childrenRendered&&(b&&a!=b)&&b.renderIndent(!0,!0);this.rendered&&this.renderIndent(!0,!0)},appendChild:function(a){!a.render&&!Ext.isArray(a)&&(a=this.getLoader().createNode(a));(a=Ext.tree.TreeNode.superclass.appendChild.call(this,a))&&this.childrenRendered&&a.render();this.ui.updateExpandIcon(); +return a},removeChild:function(a,b){this.ownerTree.getSelectionModel().unselect(a);Ext.tree.TreeNode.superclass.removeChild.apply(this,arguments);if(!b){var c=a.ui.rendered;c&&a.ui.remove();c&&1>this.childNodes.length?this.collapse(!1,!1):this.ui.updateExpandIcon();!this.firstChild&&!this.isHiddenRoot()&&(this.childrenRendered=!1)}return a},insertBefore:function(a,b){a.render||(a=this.getLoader().createNode(a));var c=Ext.tree.TreeNode.superclass.insertBefore.call(this,a,b);c&&(b&&this.childrenRendered)&& +a.render();this.ui.updateExpandIcon();return c},setText:function(a){var b=this.text;this.text=this.attributes.text=a;if(this.rendered)this.ui.onTextChange(this,a,b);this.fireEvent("textchange",this,a,b)},setIconCls:function(a){var b=this.attributes.iconCls;this.attributes.iconCls=a;if(this.rendered)this.ui.onIconClsChange(this,a,b)},setTooltip:function(a,b){this.attributes.qtip=a;this.attributes.qtipTitle=b;if(this.rendered)this.ui.onTipChange(this,a,b)},setIcon:function(a){this.attributes.icon=a; +if(this.rendered)this.ui.onIconChange(this,a)},setHref:function(a,b){this.attributes.href=a;this.attributes.hrefTarget=b;if(this.rendered)this.ui.onHrefChange(this,a,b)},setCls:function(a){var b=this.attributes.cls;this.attributes.cls=a;if(this.rendered)this.ui.onClsChange(this,a,b)},select:function(){var a=this.getOwnerTree();a&&a.getSelectionModel().select(this)},unselect:function(a){var b=this.getOwnerTree();b&&b.getSelectionModel().unselect(this,a)},isSelected:function(){var a=this.getOwnerTree(); +return a?a.getSelectionModel().isSelected(this):!1},expand:function(a,b,c,d){if(!this.expanded){if(!1===this.fireEvent("beforeexpand",this,a,b))return;this.childrenRendered||this.renderChildren();this.expanded=!0;if(!this.isHiddenRoot()&&this.getOwnerTree().animate&&!1!==b||b){this.ui.animExpand(function(){this.fireEvent("expand",this);this.runCallback(c,d||this,[this]);!0===a&&this.expandChildNodes(!0,!0)}.createDelegate(this));return}this.ui.expand();this.fireEvent("expand",this)}this.runCallback(c, +d||this,[this]);!0===a&&this.expandChildNodes(!0)},runCallback:function(a,b,c){Ext.isFunction(a)&&a.apply(b,c)},isHiddenRoot:function(){return this.isRoot&&!this.getOwnerTree().rootVisible},collapse:function(a,b,c,d){if(this.expanded&&!this.isHiddenRoot()){if(!1===this.fireEvent("beforecollapse",this,a,b))return;this.expanded=!1;if(this.getOwnerTree().animate&&!1!==b||b){this.ui.animCollapse(function(){this.fireEvent("collapse",this);this.runCallback(c,d||this,[this]);!0===a&&this.collapseChildNodes(!0)}.createDelegate(this)); +return}this.ui.collapse();this.fireEvent("collapse",this);this.runCallback(c,d||this,[this])}else this.expanded||this.runCallback(c,d||this,[this]);if(!0===a){b=this.childNodes;for(var e=0,g=b.length;e<g;e++)b[e].collapse(!0,!1)}},delayedExpand:function(a){this.expandProcId||(this.expandProcId=this.expand.defer(a,this))},cancelExpand:function(){this.expandProcId&&clearTimeout(this.expandProcId);this.expandProcId=!1},toggle:function(){this.expanded?this.collapse():this.expand()},ensureVisible:function(a, +b){var c=this.getOwnerTree();c.expandPath(this.parentNode?this.parentNode.getPath():this.getPath(),!1,function(){var d=c.getNodeById(this.id);c.getTreeEl().scrollChildIntoView(d.ui.anchor);this.runCallback(a,b||this,[this])}.createDelegate(this))},expandChildNodes:function(a,b){var c=this.childNodes,d,e=c.length;for(d=0;d<e;d++)c[d].expand(a,b)},collapseChildNodes:function(a){for(var b=this.childNodes,c=0,d=b.length;c<d;c++)b[c].collapse(a)},disable:function(){this.disabled=!0;this.unselect();if(this.rendered&& +this.ui.onDisableChange)this.ui.onDisableChange(this,!0);this.fireEvent("disabledchange",this,!0)},enable:function(){this.disabled=!1;if(this.rendered&&this.ui.onDisableChange)this.ui.onDisableChange(this,!1);this.fireEvent("disabledchange",this,!1)},renderChildren:function(a){!1!==a&&this.fireEvent("beforechildrenrendered",this);a=this.childNodes;for(var b=0,c=a.length;b<c;b++)a[b].render(!0);this.childrenRendered=!0},sort:function(a,b){Ext.tree.TreeNode.superclass.sort.apply(this,arguments);if(this.childrenRendered)for(var c= +this.childNodes,d=0,e=c.length;d<e;d++)c[d].render(!0)},render:function(a){this.ui.render(a);this.rendered||(this.getOwnerTree().registerNode(this),this.rendered=!0,this.expanded&&(this.expanded=!1,this.expand(!1,!1)))},renderIndent:function(a,b){b&&(this.ui.childIndent=null);this.ui.renderIndent();if(!0===a&&this.childrenRendered)for(var c=this.childNodes,d=0,e=c.length;d<e;d++)c[d].renderIndent(!0,b)},beginUpdate:function(){this.childrenRendered=!1},endUpdate:function(){this.expanded&&this.rendered&& +this.renderChildren()},destroy:function(a){!0===a&&this.unselect(!0);Ext.tree.TreeNode.superclass.destroy.call(this,a);Ext.destroy(this.ui,this.loader);this.ui=this.loader=null},onIdChange:function(a){this.ui.onIdChange(a)}});Ext.tree.TreePanel.nodeTypes.node=Ext.tree.TreeNode;Ext.tree.AsyncTreeNode=function(a){this.loaded=a&&!0===a.loaded;this.loading=!1;Ext.tree.AsyncTreeNode.superclass.constructor.apply(this,arguments);this.addEvents("beforeload","load")}; +Ext.extend(Ext.tree.AsyncTreeNode,Ext.tree.TreeNode,{expand:function(a,b,c,d){if(this.loading){var e,g=function(){this.loading||(clearInterval(e),this.expand(a,b,c,d))}.createDelegate(this);e=setInterval(g,200)}else{if(!this.loaded){if(!1===this.fireEvent("beforeload",this))return;this.loading=!0;this.ui.beforeLoad(this);if(g=this.loader||this.attributes.loader||this.getOwnerTree().getLoader()){g.load(this,this.loadComplete.createDelegate(this,[a,b,c,d]),this);return}}Ext.tree.AsyncTreeNode.superclass.expand.call(this, +a,b,c,d)}},isLoading:function(){return this.loading},loadComplete:function(a,b,c,d){this.loading=!1;this.loaded=!0;this.ui.afterLoad(this);this.fireEvent("load",this);this.expand(a,b,c,d)},isLoaded:function(){return this.loaded},hasChildNodes:function(){return!this.isLeaf()&&!this.loaded?!0:Ext.tree.AsyncTreeNode.superclass.hasChildNodes.call(this)},reload:function(a,b){for(this.collapse(!1,!1);this.firstChild;)this.removeChild(this.firstChild).destroy();this.loaded=this.childrenRendered=!1;this.isHiddenRoot()&& +(this.expanded=!1);this.expand(!1,!1,a,b)}});Ext.tree.TreePanel.nodeTypes.async=Ext.tree.AsyncTreeNode; +Ext.tree.TreeNodeUI=Ext.extend(Object,{constructor:function(a){Ext.apply(this,{node:a,rendered:!1,animating:!1,wasLeaf:!0,ecc:"x-tree-ec-icon x-tree-elbow",emptyIcon:Ext.BLANK_IMAGE_URL})},removeChild:function(a){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(a,b){this.rendered&&(this.textNode.innerHTML=b)},onIconClsChange:function(a,b,c){this.rendered&& +Ext.fly(this.iconNode).replaceClass(c,b)},onIconChange:function(a,b){if(this.rendered){var c=Ext.isEmpty(b);this.iconNode.src=c?this.emptyIcon:b;Ext.fly(this.iconNode)[c?"removeClass":"addClass"]("x-tree-node-inline-icon")}},onTipChange:function(a,b,c){this.rendered&&(a=Ext.isDefined(c),this.textNode.setAttributeNS?(this.textNode.setAttributeNS("ext","qtip",b),a&&this.textNode.setAttributeNS("ext","qtitle",c)):(this.textNode.setAttribute("ext:qtip",b),a&&this.textNode.setAttribute("ext:qtitle",c)))}, +onHrefChange:function(a,b,c){this.rendered&&(this.anchor.href=this.getHref(b),Ext.isDefined(c)&&(this.anchor.target=c))},onClsChange:function(a,b,c){this.rendered&&Ext.fly(this.elNode).replaceClass(c,b)},onDisableChange:function(a,b){this.disabled=b;this.checkbox&&(this.checkbox.disabled=b);this[b?"addClass":"removeClass"]("x-tree-node-disabled")},onSelectedChange:function(a){a?(this.focus(),this.addClass("x-tree-selected")):this.removeClass("x-tree-selected")},onMove:function(a,b,c,d,e,g){this.childIndent= +null;this.rendered&&((a=d.ui.getContainer())?((g=g?g.ui.getEl():null)?a.insertBefore(this.wrap,g):a.appendChild(this.wrap),this.node.renderIndent(!0,c!=d)):(this.holder=document.createElement("div"),this.holder.appendChild(this.wrap)))},addClass:function(a){this.elNode&&Ext.fly(this.elNode).addClass(a)},removeClass:function(a){this.elNode&&Ext.fly(this.elNode).removeClass(a)},remove:function(){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.onDisableChange(this.node,!0);this.node.hidden&&this.hide();var a=this.node.getOwnerTree();(a.enableDD||a.enableDrag||a.enableDrop)&&(!this.node.isRoot||a.rootVisible)&&Ext.dd.Registry.register(this.elNode,{node:this.node,handles:this.getDDHandles(),isHandle:!1})},getDDHandles:function(){return[this.iconNode,this.textNode,this.elNode]},hide:function(){this.node.hidden=!0;this.wrap&&(this.wrap.style.display= +"none")},show:function(){this.node.hidden=!1;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(a){if(this.dropping)a.stopEvent();else if(!1!==this.fireEvent("beforeclick",this.node,a)){var b=a.getTarget("a");!this.disabled&&this.node.attributes.href&&b?this.fireEvent("click",this.node,a):(b&&a.ctrlKey&& +a.stopEvent(),a.preventDefault(),this.disabled||(this.node.attributes.singleClickExpand&&(!this.animating&&this.node.isExpandable())&&this.node.toggle(),this.fireEvent("click",this.node,a)))}else a.stopEvent()},onDblClick:function(a){a.preventDefault();!this.disabled&&!1!==this.fireEvent("beforedblclick",this.node,a)&&(this.checkbox&&this.toggleCheck(),!this.animating&&this.node.isExpandable()&&this.node.toggle(),this.fireEvent("dblclick",this.node,a))},onOver:function(){this.addClass("x-tree-node-over")}, +onOut:function(){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(){!this.animating&&this.node.isExpandable()&&this.node.toggle()},startDrop:function(){this.dropping=!0},endDrop:function(){setTimeout(function(){this.dropping=!1}.createDelegate(this),50)},expand:function(){this.updateExpandIcon();this.ctNode.style.display=""},focus:function(){if(this.node.preventHScroll)try{var a= +this.node.getOwnerTree().getTreeEl().dom,b=a.scrollLeft;this.anchor.focus();a.scrollLeft=b}catch(c){}else try{this.anchor.focus()}catch(d){}},toggleCheck:function(a){var b=this.checkbox;b&&(b.checked=void 0===a?!b.checked:a,this.onCheckChange())},blur:function(){try{this.anchor.blur()}catch(a){}},animExpand:function(a){var b=Ext.get(this.ctNode);b.stopFx();this.node.isExpandable()?(this.animating=!0,this.updateExpandIcon(),b.slideIn("t",{callback:function(){this.animating=!1;Ext.callback(a)},scope:this, +duration:this.node.ownerTree.duration||0.25})):(this.updateExpandIcon(),this.ctNode.style.display="",Ext.callback(a))},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(a){var b=Ext.get(this.ctNode);b.enableDisplayMode("block");b.stopFx();this.animating=!0;this.updateExpandIcon();b.slideOut("t",{callback:function(){this.animating= +!1;Ext.callback(a)},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(!0))},getDDRepairXY:function(){return Ext.lib.Dom.getXY(this.iconNode)},onRender:function(){this.render()},render:function(a){var b=this.node,c=b.attributes,d=b.parentNode?b.parentNode.ui.getContainer():b.ownerTree.innerCt.dom;if(this.rendered)!0===a&&d.appendChild(this.wrap);else{this.rendered= +!0;this.renderElements(b,c,d,a);if(c.qtip)this.onTipChange(b,c.qtip,c.qtipTitle);else c.qtipCfg&&(c.qtipCfg.target=Ext.id(this.textNode),Ext.QuickTips.register(c.qtipCfg));this.initEvents();this.node.expanded||this.updateExpandIcon(!0)}},renderElements:function(a,b,c,d){this.indentMarkup=a.parentNode?a.parentNode.ui.getChildIndent():"";var e=Ext.isBoolean(b.checked),g,h=this.getHref(b.href);b=['<li class="x-tree-node"><div ext:tree-node-id="',a.id,'" class="x-tree-node-el x-tree-node-leaf x-unselectable ', +b.cls,'" unselectable="on"><span class="x-tree-node-indent">',this.indentMarkup,'</span><img alt="" src="',this.emptyIcon,'" class="x-tree-ec-icon x-tree-elbow" /><img alt="" src="',b.icon||this.emptyIcon,'" class="x-tree-node-icon',b.icon?" x-tree-node-inline-icon":"",b.iconCls?" "+b.iconCls:"",'" unselectable="on" />',e?'<input class="x-tree-node-cb" type="checkbox" '+(b.checked?'checked="checked" />':"/>"):"",'<a hidefocus="on" class="x-tree-node-anchor" href="',h,'" tabIndex="1" ',b.hrefTarget? +' target="'+b.hrefTarget+'"':"",'><span unselectable="on">',a.text,'</span></a></div><ul class="x-tree-node-ct" style="display:none;"></ul></li>'].join("");this.wrap=!0!==d&&a.nextSibling&&(g=a.nextSibling.ui.getEl())?Ext.DomHelper.insertHtml("beforeBegin",g,b):Ext.DomHelper.insertHtml("beforeEnd",c,b);this.elNode=this.wrap.childNodes[0];this.ctNode=this.wrap.childNodes[1];a=this.elNode.childNodes;this.indentNode=a[0];this.ecNode=a[1];this.iconNode=a[2];c=3;e&&(this.checkbox=a[3],this.checkbox.defaultChecked= +this.checkbox.checked,c++);this.anchor=a[c];this.textNode=a[c].firstChild},getHref:function(a){return Ext.isEmpty(a)?Ext.isGecko?"":"#":a},getAnchor:function(){return this.anchor},getTextEl:function(){return this.textNode},getIconEl:function(){return this.iconNode},isChecked:function(){return this.checkbox?this.checkbox.checked:!1},updateExpandIcon:function(){if(this.rendered){var a=this.node,b,c=a.isLast()?"x-tree-elbow-end":"x-tree-elbow";if(a.hasChildNodes()||a.attributes.expandable){if(a.expanded? +(c+="-minus",a="x-tree-node-collapsed",b="x-tree-node-expanded"):(c+="-plus",a="x-tree-node-expanded",b="x-tree-node-collapsed"),this.wasLeaf&&(this.removeClass("x-tree-node-leaf"),this.wasLeaf=!1),this.c1!=a||this.c2!=b)Ext.fly(this.elNode).replaceClass(a,b),this.c1=a,this.c2=b}else this.wasLeaf||(Ext.fly(this.elNode).replaceClass("x-tree-node-expanded","x-tree-node-collapsed"),delete this.c1,delete this.c2,this.wasLeaf=!0);c="x-tree-ec-icon "+c;this.ecc!=c&&(this.ecc=this.ecNode.className=c)}}, +onIdChange:function(a){this.rendered&&this.elNode.setAttribute("ext:tree-node-id",a)},getChildIndent:function(){if(!this.childIndent){for(var a=[],b=this.node;b;){if(!b.isRoot||b.isRoot&&b.ownerTree.rootVisible)b.isLast()?a.unshift('<img alt="" src="'+this.emptyIcon+'" class="x-tree-icon" />'):a.unshift('<img alt="" src="'+this.emptyIcon+'" class="x-tree-elbow-line" />');b=b.parentNode}this.childIndent=a.join("")}return this.childIndent},renderIndent:function(){if(this.rendered){var a="",b=this.node.parentNode; +b&&(a=b.ui.getChildIndent());this.indentMarkup!=a&&(this.indentMarkup=this.indentNode.innerHTML=a);this.updateExpandIcon()}},destroy:function(){this.elNode&&Ext.dd.Registry.unregister(this.elNode.id);Ext.each("textnode anchor checkbox indentNode ecNode iconNode elNode ctNode wrap holder".split(" "),function(a){this[a]&&(Ext.fly(this[a]).remove(),delete this[a])},this);delete this.node}}); +Ext.tree.RootTreeNodeUI=Ext.extend(Ext.tree.TreeNodeUI,{render:function(){if(!this.rendered){var a=this.node.ownerTree.innerCt.dom;this.node.expanded=!0;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.isString(this.paramOrder)&&(this.paramOrder=this.paramOrder.split(/[\s,|]/))}; +Ext.extend(Ext.tree.TreeLoader,Ext.util.Observable,{uiProviders:{},clearOnLoad:!0,paramOrder:void 0,paramsAsHash:!1,nodeParameter:"node",directFn:void 0,load:function(a,b,c){if(this.clearOnLoad)for(;a.firstChild;)a.removeChild(a.firstChild);if(this.doPreload(a))this.runCallback(b,c||a,[a]);else if(this.directFn||this.dataUrl||this.url)this.requestData(a,b,c||a)},doPreload:function(a){if(a.attributes.children){if(1>a.childNodes.length){var b=a.attributes.children;a.beginUpdate();for(var c=0,d=b.length;c< +d;c++){var e=a.appendChild(this.createNode(b[c]));this.preloadChildren&&this.doPreload(e)}a.endUpdate()}return!0}return!1},getParams:function(a){var b=Ext.apply({},this.baseParams),c=this.nodeParameter,d=this.paramOrder;c&&(b[c]=a.id);if(this.directFn){a=[a.id];if(d){c&&-1<d.indexOf(c)&&(a=[]);for(var c=0,e=d.length;c<e;c++)a.push(b[d[c]])}else this.paramsAsHash&&(a=[b]);return a}return b},requestData:function(a,b,c){if(!1!==this.fireEvent("beforeload",this,a,b))if(this.directFn){var d=this.getParams(a); +d.push(this.processDirectResponse.createDelegate(this,[{callback:b,node:a,scope:c}],!0));this.directFn.apply(window,d)}else 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,scope:c},params:this.getParams(a)});else this.runCallback(b,c||a,[])},processDirectResponse:function(a,b,c){b.status?this.handleResponse({responseData:Ext.isArray(a)?a:null,responseText:a,argument:c}): +this.handleFailure({argument:c})},runCallback:function(a,b,c){Ext.isFunction(a)&&a.apply(b,c)},isLoading:function(){return!!this.transId},abort:function(){this.isLoading()&&Ext.Ajax.abort(this.transId)},createNode:function(a){this.baseAttrs&&Ext.applyIf(a,this.baseAttrs);!1!==this.applyLoader&&!a.loader&&(a.loader=this);Ext.isString(a.uiProvider)&&(a.uiProvider=this.uiProviders[a.uiProvider]||eval(a.uiProvider));return a.nodeType?new Ext.tree.TreePanel.nodeTypes[a.nodeType](a):a.leaf?new Ext.tree.TreeNode(a): +new Ext.tree.AsyncTreeNode(a)},processResponse:function(a,b,c,d){var e=a.responseText;try{var g=a.responseData||Ext.decode(e);b.beginUpdate();for(var e=0,h=g.length;e<h;e++){var j=this.createNode(g[e]);j&&b.appendChild(j)}b.endUpdate();this.runCallback(c,d||b,[b])}catch(k){this.handleFailure(a)}},handleResponse:function(a){this.transId=!1;var b=a.argument;this.processResponse(a,b.node,b.callback,b.scope);this.fireEvent("load",this,b.node,a)},handleFailure:function(a){this.transId=!1;var b=a.argument; +this.fireEvent("loadexception",this,b.node,a);this.runCallback(b.callback,b.scope||b.node,[b.node])},destroy:function(){this.abort();this.purgeListeners()}});Ext.tree.TreeFilter=function(a,b){this.tree=a;this.filtered={};Ext.apply(this,b)}; +Ext.tree.TreeFilter.prototype={clearBlank:!1,reverse:!1,autoClear:!1,remove:!1,filter:function(a,b,c){b=b||"text";var d;if("string"==typeof a){var e=a.length;if(0==e&&this.clearBlank){this.clear();return}a=a.toLowerCase();d=function(c){return c.attributes[b].substr(0,e).toLowerCase()==a}}else if(a.exec)d=function(c){return a.test(c.attributes[b])};else throw"Illegal filter type, must be string or regex";this.filterBy(d,null,c)},filterBy:function(a,b,c){c=c||this.tree.root;this.autoClear&&this.clear(); +var d=this.filtered,e=this.reverse;c.cascade(function(g){return g==c?!0:d[g.id]?!1:!a.call(b||g,g)||e?(d[g.id]=g,g.ui.hide(),!1):!0});if(this.remove)for(var g in d)if("function"!=typeof g){var h=d[g];h&&h.parentNode&&h.parentNode.removeChild(h)}},clear:function(){var a=this.filtered,b;for(b in a)if("function"!=typeof b){var c=a[b];c&&c.ui.show()}this.filtered={}}}; +Ext.tree.TreeSorter=Ext.extend(Object,{constructor:function(a,b){Ext.apply(this,b);a.on({scope:this,beforechildrenrendered:this.doSort,append:this.updateSort,insert:this.updateSort,textchange:this.updateSortParent});var c=this.dir&&"desc"==this.dir.toLowerCase(),d=this.property||"text";sortType=this.sortType;folderSort=this.folderSort;caseSensitive=!0===this.caseSensitive;leafAttr=this.leafAttr||"leaf";Ext.isString(sortType)&&(sortType=Ext.data.SortTypes[sortType]);this.sortFn=function(a,b){var h= +a.attributes,j=b.attributes;if(folderSort){if(h[leafAttr]&&!j[leafAttr])return 1;if(!h[leafAttr]&&j[leafAttr])return-1}h=h[d];j=j[d];h=sortType?sortType(h):caseSensitive?h:h.toUpperCase();v2=sortType?sortType(j):caseSensitive?j:j.toUpperCase();return h<v2?c?1:-1:h>v2?c?-1:1:0}},doSort:function(a){a.sort(this.sortFn)},updateSort:function(a,b){b.childrenRendered&&this.doSort.defer(1,this,[b])},updateSortParent:function(a){(a=a.parentNode)&&a.childrenRendered&&this.doSort.defer(1,this,[a])}}); +Ext.dd.DropZone&&(Ext.tree.TreeDropZone=function(a,b){this.allowParentInsert=b.allowParentInsert||!1;this.allowContainerDrop=b.allowContainerDrop||!1;this.appendOnly=b.appendOnly||!1;Ext.tree.TreeDropZone.superclass.constructor.call(this,a.getTreeEl(),b);this.tree=a;this.dragOverData={};this.lastInsertClass="x-tree-no-status"},Ext.extend(Ext.tree.TreeDropZone,Ext.dd.DropZone,{ddGroup:"TreeDD",expandDelay:1E3,expandNode:function(a){a.hasChildNodes()&&!a.isExpanded()&&a.expand(!1,null,this.triggerCacheRefresh.createDelegate(this))}, +queueExpand:function(a){this.expandProcId=this.expandNode.defer(this.expandDelay,this,[a])},cancelExpand:function(){this.expandProcId&&(clearTimeout(this.expandProcId),this.expandProcId=!1)},isValidDropPoint:function(a,b,c,d,e){if(!a||!e)return!1;var g=a.node,h=e.node;if(!g||(!g.isTarget||!b)||"append"==b&&!1===g.allowChildren||("above"==b||"below"==b)&&g.parentNode&&!1===g.parentNode.allowChildren||h&&(g==h||h.contains(g)))return!1;a=this.dragOverData;a.tree=this.tree;a.target=g;a.data=e;a.point= +b;a.source=c;a.rawEvent=d;a.dropNode=h;a.cancel=!1;b=this.tree.fireEvent("nodedragover",a);return!1===a.cancel&&!1!==b},getDropPoint:function(a,b){var c=b.node;if(c.isRoot)return!1!==c.allowChildren?"append":!1;var d=b.ddel,e=Ext.lib.Dom.getY(d),d=e+d.offsetHeight,g=Ext.lib.Event.getPageY(a),h=!1===c.allowChildren||c.isLeaf();if(this.appendOnly||!1===c.parentNode.allowChildren)return h?!1:"append";var j=!1;this.allowParentInsert||(j=c.hasChildNodes()&&c.isExpanded());c=(d-e)/(h?2:3);return g>=e&& +g<e+c?"above":!j&&(h||g>=d-c&&g<=d)?"below":"append"},onNodeEnter:function(){this.cancelExpand()},onContainerOver:function(a,b,c){return this.allowContainerDrop&&this.isValidDropPoint({ddel:this.tree.getRootNode().ui.elNode,node:this.tree.getRootNode()},"append",a,b,c)?this.dropAllowed:this.dropNotAllowed},onNodeOver:function(a,b,c,d){var e=this.getDropPoint(c,a,b),g=a.node;!this.expandProcId&&"append"==e&&g.hasChildNodes()&&!a.node.isExpanded()?this.queueExpand(g):"append"!=e&&this.cancelExpand(); +g=this.dropNotAllowed;this.isValidDropPoint(a,e,b,c,d)&&e&&(b=a.ddel,"above"==e?(g=a.node.isFirst()?"x-tree-drop-ok-above":"x-tree-drop-ok-between",a="x-tree-drag-insert-above"):"below"==e?(g=a.node.isLast()?"x-tree-drop-ok-below":"x-tree-drop-ok-between",a="x-tree-drag-insert-below"):(g="x-tree-drop-ok-append",a="x-tree-drag-append"),this.lastInsertClass!=a&&(Ext.fly(b).replaceClass(this.lastInsertClass,a),this.lastInsertClass=a));return g},onNodeOut:function(a){this.cancelExpand();this.removeDropIndicators(a)}, +onNodeDrop:function(a,b,c,d){var e=this.getDropPoint(c,a,b),g=a.node;g.ui.startDrop();if(!this.isValidDropPoint(a,e,b,c,d))return g.ui.endDrop(),!1;a=d.node||(b.getTreeNode?b.getTreeNode(d,g,e,c):null);return this.processDrop(g,d,e,b,c,a)},onContainerDrop:function(a,b,c){if(this.allowContainerDrop&&this.isValidDropPoint({ddel:this.tree.getRootNode().ui.elNode,node:this.tree.getRootNode()},"append",a,b,c)){var d=this.tree.getRootNode();d.ui.startDrop();var e=c.node||(a.getTreeNode?a.getTreeNode(c, +d,"append",b):null);return this.processDrop(d,c,"append",a,b,e)}return!1},processDrop:function(a,b,c,d,e,g){var h={tree:this.tree,target:a,data:b,point:c,source:d,rawEvent:e,dropNode:g,cancel:!g,dropStatus:!1};if(!1===this.tree.fireEvent("beforenodedrop",h)||!0===h.cancel||!h.dropNode)return a.ui.endDrop(),h.dropStatus;a=h.target;"append"==c&&!a.isExpanded()?a.expand(!1,null,function(){this.completeDrop(h)}.createDelegate(this)):this.completeDrop(h);return!0},completeDrop:function(a){var b=a.dropNode, +c=a.point,d=a.target;Ext.isArray(b)||(b=[b]);for(var e,g=0,h=b.length;g<h;g++)e=b[g],"above"==c?d.parentNode.insertBefore(e,d):"below"==c?d.parentNode.insertBefore(e,d.nextSibling):d.appendChild(e);e.ui.focus();Ext.enableFx&&this.tree.hlDrop&&e.ui.highlight();d.ui.endDrop();this.tree.fireEvent("nodedrop",a)},afterNodeMoved:function(a,b,c,d,e){Ext.enableFx&&this.tree.hlDrop&&(e.ui.focus(),e.ui.highlight());this.tree.fireEvent("nodedrop",this.tree,d,b,a,c)},getTree:function(){return this.tree},removeDropIndicators:function(a){a&& +a.ddel&&(Ext.fly(a.ddel).removeClass(["x-tree-drag-insert-above","x-tree-drag-insert-below","x-tree-drag-append"]),this.lastInsertClass="_noclass")},beforeDragDrop:function(){this.cancelExpand();return!0},afterRepair:function(a){a&&Ext.enableFx&&a.node.ui.highlight();this.hideProxy()}})); +Ext.dd.DragZone&&(Ext.tree.TreeDragZone=function(a,b){Ext.tree.TreeDragZone.superclass.constructor.call(this,a.innerCt,b);this.tree=a},Ext.extend(Ext.tree.TreeDragZone,Ext.dd.DragZone,{ddGroup:"TreeDD",onBeforeDrag:function(a){return(a=a.node)&&a.draggable&&!a.disabled},onInitDrag:function(a){var b=this.dragData;this.tree.getSelectionModel().select(b.node);this.tree.eventModel.disable();this.proxy.update("");b.node.ui.appendDDGhost(this.proxy.ghost.dom);this.tree.fireEvent("startdrag",this.tree,b.node, +a)},getRepairXY:function(a,b){return b.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){this.tree.fireEvent("dragdrop",this.tree,this.dragData.node,a,b);this.hideProxy()},beforeInvalidDrop:function(){var a=this.tree.getSelectionModel();a.clearSelections();a.select(this.dragData.node)},afterRepair:function(){Ext.enableFx&&this.tree.hlDrop&&Ext.Element.fly(this.dragData.ddel).highlight(this.hlColor|| +"c3daf9");this.dragging=!1}}));Ext.tree.TreeEditor=function(a,b,c){b=b||{};b=b.events?b:new Ext.form.TextField(b);Ext.tree.TreeEditor.superclass.constructor.call(this,b,c);this.tree=a;if(a.rendered)this.initEditor(a);else a.on("render",this.initEditor,this)}; +Ext.extend(Ext.tree.TreeEditor,Ext.Editor,{alignment:"l-l",autoSize:!1,hideEl:!1,cls:"x-small-editor x-tree-editor",shim:!1,shadow:"frame",maxWidth:250,editDelay:350,initEditor:function(a){a.on({scope:this,beforeclick:this.beforeNodeClick,dblclick:this.onNodeDblClick});this.on({scope:this,complete:this.updateNode,beforestartedit:this.fitToTree,specialkey:this.onSpecialKey});this.on("startedit",this.bindScroll,this,{delay:10})},fitToTree:function(a,b){var c=this.tree.getTreeEl().dom,d=b.dom;c.scrollLeft> +d.offsetLeft&&(c.scrollLeft=d.offsetLeft);c=Math.min(this.maxWidth,(20<c.clientWidth?c.clientWidth:c.offsetWidth)-Math.max(0,d.offsetLeft-c.scrollLeft)-5);this.setSize(c,"")},triggerEdit:function(a){this.completeEdit();if(!1!==a.attributes.editable){this.editNode=a;this.tree.autoScroll&&Ext.fly(a.ui.getEl()).scrollIntoView(this.tree.body);var b=a.text||"";!Ext.isGecko&&Ext.isEmpty(a.text)&&a.setText(" ");this.autoEditTimer=this.startEdit.defer(this.editDelay,this,[a.ui.textNode,b]);return!1}}, +bindScroll:function(){this.tree.getTreeEl().on("scroll",this.cancelEdit,this)},beforeNodeClick:function(a,b){clearTimeout(this.autoEditTimer);if(this.tree.getSelectionModel().isSelected(a))return b.stopEvent(),this.triggerEdit(a)},onNodeDblClick:function(){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);this.editNode&&this.editNode.ui.focus.defer(50, +this.editNode.ui)},onSpecialKey:function(a,b){var c=b.getKey();c==b.ESC?(b.stopEvent(),this.cancelEdit()):c==b.ENTER&&!b.hasModifier()&&(b.stopEvent(),this.completeEdit())},onDestroy:function(){clearTimeout(this.autoEditTimer);Ext.tree.TreeEditor.superclass.onDestroy.call(this);var a=this.tree;a.un("beforeclick",this.beforeNodeClick,this);a.un("dblclick",this.onNodeDblClick,this)}}); +Ext.Window=Ext.extend(Ext.Panel,{baseCls:"x-window",resizable:!0,draggable:!0,closable:!0,closeAction:"close",constrain:!1,constrainHeader:!1,plain:!1,minimizable:!1,maximizable:!1,minHeight:100,minWidth:200,expandOnShow:!0,showAnimDuration:0.25,hideAnimDuration:0.25,collapsible:!1,initHidden:void 0,hidden:!0,elements:"header,body",frame:!0,floating:!0,initComponent:function(){this.initTools();Ext.Window.superclass.initComponent.call(this);this.addEvents("resize","maximize","minimize","restore"); +Ext.isDefined(this.initHidden)&&(this.hidden=this.initHidden);!1===this.hidden&&(this.hidden=!0,this.show())},getState:function(){return Ext.apply(Ext.Window.superclass.getState.call(this)||{},this.getBox(!0))},onRender:function(a,b){Ext.Window.superclass.onRender.call(this,a,b);this.plain&&this.el.addClass("x-window-plain");this.focusEl=this.el.createChild({tag:"a",href:"#",cls:"x-dlg-focus",tabIndex:"-1",html:" "});this.focusEl.swallowEvent("click",!0);this.proxy=this.el.createProxy("x-window-proxy"); +this.proxy.enableDisplayMode("block");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.maximizable&&this.mon(this.header,"dblclick",this.toggleMaximize,this)},initEvents:function(){Ext.Window.superclass.initEvents.call(this);this.animateTarget&&this.setAnimateTarget(this.animateTarget);this.resizable&&(this.resizer=new Ext.Resizable(this.el,{minWidth:this.minWidth, +minHeight:this.minHeight,handles:this.resizeHandles||"all",pinned:!0,resizeElement:this.resizerAction,handleCls:"x-window-handle"}),this.resizer.window=this,this.mon(this.resizer,"beforeresize",this.beforeResize,this));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);this.maximized&&(this.maximized=!1,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(a,b){b.stopEvent();this[this.closeAction]()},beforeDestroy:function(){this.rendered&&(this.hide(),this.clearAnchor(),Ext.destroy(this.focusEl,this.resizer,this.dd,this.proxy,this.mask));Ext.Window.superclass.beforeDestroy.call(this)},onDestroy:function(){this.manager&&this.manager.unregister(this);Ext.Window.superclass.onDestroy.call(this)},initTools:function(){this.minimizable&&this.addTool({id:"minimize", +handler:this.minimize.createDelegate(this,[])});this.maximizable&&(this.addTool({id:"maximize",handler:this.maximize.createDelegate(this,[])}),this.addTool({id:"restore",handler:this.restore.createDelegate(this,[]),hidden:!0}));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(){Ext.isIE&&this.resizer&&(this.resizer.syncHandleHeight(),this.el.repaint())},handleResize:function(a){var b=this.resizeBox;b.x!=a.x||b.y!=a.y?this.updateBox(a):(this.setSize(a),Ext.isIE6&&Ext.isStrict&&this.doLayout());this.focus();this.updateHandles();this.saveState()},focus:function(){var a=this.focusEl,b=this.defaultButton,c;if(Ext.isDefined(b)&& +(a=Ext.isNumber(b)&&this.fbar?this.fbar.items.get(b):Ext.isString(b)?Ext.getCmp(b):b,b=a.getEl(),c=Ext.getDom(this.container),b&&c&&c!=document.body&&!Ext.lib.Region.getRegion(c).contains(Ext.lib.Region.getRegion(b.dom))))return;a=a||this.focusEl;a.focus.defer(10,a)},setAnimateTarget:function(a){this.animateTarget=a=Ext.get(a)},beforeShow:function(){delete this.el.lastXY;delete this.el.lastLT;if(void 0===this.x||void 0===this.y){var a=this.el.getAlignToXY(this.container,"c-c"),a=this.el.translatePoints(a[0], +a[1]);this.x=void 0===this.x?a.left:this.x;this.y=void 0===this.y?a.top:this.y}this.el.setLeftTop(this.x,this.y);this.expandOnShow&&this.expand(!1);this.modal&&(Ext.getBody().addClass("x-body-masked"),this.mask.setSize(Ext.lib.Dom.getViewWidth(!0),Ext.lib.Dom.getViewHeight(!0)),this.mask.show())},show:function(a,b,c){this.rendered||this.render(Ext.getBody());if(!1===this.hidden)return this.toFront(),this;if(!1===this.fireEvent("beforeshow",this))return this;if(b)this.on("show",b,c,{single:!0});this.hidden= +!1;Ext.isDefined(a)&&this.setAnimateTarget(a);this.beforeShow();this.animateTarget?this.animShow():this.afterShow();return this},afterShow:function(a){if(this.isDestroyed)return!1;this.proxy.hide();this.el.setStyle("display","block");this.el.show();this.maximized&&this.fitContainer();Ext.isMac&&Ext.isGecko2&&this.cascade(this.setAutoScroll);if(this.monitorResize||this.modal||this.constrain||this.constrainHeader)Ext.EventManager.onWindowResize(this.onWindowResize,this);this.doConstrain();this.doLayout(); +this.keyMap&&this.keyMap.enable();this.toFront();this.updateHandles();if(a&&(Ext.isIE||Ext.isWebKit))a=this.getSize(),this.onResize(a.width,a.height);this.onShow();this.fireEvent("show",this)},animShow:function(){this.proxy.show();this.proxy.setBox(this.animateTarget.getBox());this.proxy.setOpacity(0);var a=this.getBox();this.el.setStyle("display","none");this.proxy.shift(Ext.apply(a,{callback:this.afterShow.createDelegate(this,[!0],!1),scope:this,easing:"easeNone",duration:this.showAnimDuration, +opacity:0.5}))},hide:function(a,b,c){if(this.hidden||!1===this.fireEvent("beforehide",this))return this;if(b)this.on("hide",b,c,{single:!0});this.hidden=!0;void 0!==a&&this.setAnimateTarget(a);this.modal&&(this.mask.hide(),Ext.getBody().removeClass("x-body-masked"));this.animateTarget?this.animHide():(this.el.hide(),this.afterHide());return this},afterHide:function(){this.proxy.hide();(this.monitorResize||this.modal||this.constrain||this.constrainHeader)&&Ext.EventManager.removeResizeListener(this.onWindowResize, +this);this.keyMap&&this.keyMap.disable();this.onHide();this.fireEvent("hide",this)},animHide:function(){this.proxy.setOpacity(0.5);this.proxy.show();var a=this.getBox(!1);this.proxy.setBox(a);this.el.hide();this.proxy.shift(Ext.apply(this.animateTarget.getBox(),{callback:this.afterHide,scope:this,duration:this.hideAnimDuration,easing:"easeNone",opacity:0}))},onShow:Ext.emptyFn,onHide:Ext.emptyFn,onWindowResize:function(){this.maximized&&this.fitContainer();this.modal&&(this.mask.setSize("100%","100%"), +this.mask.setSize(Ext.lib.Dom.getViewWidth(!0),Ext.lib.Dom.getViewHeight(!0)));this.doConstrain()},doConstrain:function(){if(this.constrain||this.constrainHeader){var a;this.constrain?a={right:this.el.shadowOffset,left:this.el.shadowOffset,bottom:this.el.shadowOffset}:(a=this.getSize(),a={right:-(a.width-100),bottom:-(a.height-25)});(a=this.el.getConstrainToXY(this.container,!0,a))&&this.setPosition(a[0],a[1])}},ghost:function(a){a=this.createGhost(a);var b=this.getBox(!0);a.setLeftTop(b.x,b.y);a.setWidth(b.width); +this.el.hide();return this.activeGhost=a},unghost:function(a,b){this.activeGhost&&(!1!==a&&(this.el.show(),this.focus.defer(10,this),Ext.isMac&&Ext.isGecko2&&this.cascade(this.setAutoScroll)),!1!==b&&this.setPosition(this.activeGhost.getLeft(!0),this.activeGhost.getTop(!0)),this.activeGhost.hide(),this.activeGhost.remove(),delete this.activeGhost)},minimize:function(){this.fireEvent("minimize",this);return this},close:function(){!1!==this.fireEvent("beforeclose",this)&&(this.hidden?this.doClose(): +this.hide(null,this.doClose,this))},doClose:function(){this.fireEvent("close",this);this.destroy()},maximize:function(){this.maximized||(this.expand(!1),this.restoreSize=this.getSize(),this.restorePos=this.getPosition(!0),this.maximizable&&(this.tools.maximize.hide(),this.tools.restore.show()),this.maximized=!0,this.el.disableShadow(),this.dd&&this.dd.lock(),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){var a=this.tools;this.el.removeClass("x-window-maximized");a.restore&&a.restore.hide();a.maximize&&a.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=!1;this.el.enableShadow(!0);this.dd&&this.dd.unlock();this.collapsible&&a.toggle&&a.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(!1);this.setSize(a.width,a.height)},setZIndex:function(a){this.modal&&this.mask.setStyle("z-index",a);this.el.setZIndex(++a);a+=5;this.resizer&&this.resizer.proxy.setStyle("z-index",++a);this.lastZIndex=a},alignTo:function(a,b,c){a=this.el.getAlignToXY(a, +b,c);this.setPagePosition(a[0],a[1]);return this},anchorTo:function(a,b,c,d){this.clearAnchor();this.anchorTarget={el:a,alignment:b,offsets:c};Ext.EventManager.onWindowResize(this.doAnchor,this);a=typeof d;if("undefined"!=a)Ext.EventManager.on(window,"scroll",this.doAnchor,this,{buffer:"number"==a?d:50});return this.doAnchor()},doAnchor:function(){var a=this.anchorTarget;this.alignTo(a.el,a.alignment,a.offsets);return this},clearAnchor:function(){this.anchorTarget&&(Ext.EventManager.removeResizeListener(this.doAnchor, +this),Ext.EventManager.un(window,"scroll",this.doAnchor,this),delete this.anchorTarget);return this},toFront:function(a){this.manager.bringToFront(this)&&(!a||!a.getTarget().focus)&&this.focus();return this},setActive:function(a){a?(this.maximized||this.el.enableShadow(!0),this.fireEvent("activate",this)):(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=Ext.extend(Ext.dd.DD,{constructor: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=!1},moveOnly:!0,headerOffsets:[100,25],startDrag:function(){var a=this.win;this.proxy=a.ghost(a.initialConfig.cls);if(!1!==a.constrain){var b=a.el.shadowOffset;this.constrainTo(a.container,{right:b,left:b,bottom:b})}else!1!==a.constrainHeader&&(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(){this.win.unghost();this.win.saveState()}}); +Ext.WindowGroup=function(){var a={},b=[],c=null,d=function(a,b){return!a._lastAccess||a._lastAccess<b._lastAccess?-1:1},e=function(){var a=b.length;if(0<a){b.sort(d);for(var c=b[0].manager.zseed,e=0;e<a;e++){var g=b[e];g&&!g.hidden&&g.setZIndex(c+10*e)}}h()},g=function(a){a!=c&&(c&&c.setActive(!1),(c=a)&&a.setActive(!0))},h=function(){for(var a=b.length-1;0<=a;--a)if(!b[a].hidden){g(b[a]);return}g(null)};return{zseed:9E3,register:function(c){c.manager&&c.manager.unregister(c);c.manager=this;a[c.id]= +c;b.push(c);c.on("hide",h)},unregister:function(c){delete c.manager;delete a[c.id];c.un("hide",h);b.remove(c)},get:function(b){return"object"==typeof b?b:a[b]},bringToFront:function(a){a=this.get(a);return a!=c?(a._lastAccess=(new Date).getTime(),e(),!0):!1},sendToBack:function(a){a=this.get(a);a._lastAccess=-(new Date).getTime();e();return a},hideAll:function(){for(var b in a)a[b]&&("function"!=typeof a[b]&&a[b].isVisible())&&a[b].hide()},getActive:function(){return c},getBy:function(a,c){for(var d= +[],e=b.length-1;0<=e;--e){var g=b[e];!1!==a.call(c||g,g)&&d.push(g)}return d},each:function(b,c){for(var d in a)if(a[d]&&"function"!=typeof a[d]&&!1===b.call(c||a[d],a[d]))break}}};Ext.WindowMgr=new Ext.WindowGroup; +Ext.MessageBox=function(){var a,b,c,d,e,g,h,j,k,l,m,q,r="",n="",s=["ok","yes","no","cancel"],x=function(c){l[c].blur();a.isVisible()&&(a.hide(),u(),Ext.callback(b.fn,b.scope||window,[c,m.dom.value,b],1))},u=function(){b&&b.cls&&a.el.removeClass(b.cls);j.reset()};return{getDialog:function(m){if(!a){var n=[];l={};Ext.each(s,function(a){n.push(l[a]=new Ext.Button({text:this.buttonText[a],handler:x.createCallback(a),hideMode:"offsets"}))},this);a=new Ext.Window({autoCreate:!0,title:m,resizable:!1,constrain:!0, +constrainHeader:!0,minimizable:!1,maximizable:!1,stateful:!1,modal:!0,shim:!0,buttonAlign:"center",width:400,height:100,minHeight:80,plain:!0,footer:!0,closable:!0,close:function(){b&&b.buttons&&b.buttons.no&&!b.buttons.cancel?x("no"):x("cancel")},fbar:new Ext.Toolbar({items:n,enableOverflow:!1})});a.render(document.body);a.getEl().addClass("x-window-dlg");c=a.mask;d=a.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(d.dom.firstChild);m=d.dom.childNodes[1];e=Ext.get(m.firstChild);g=Ext.get(m.childNodes[2].firstChild);g.enableDisplayMode();g.addKeyListener([10,13],function(){a.isVisible()&&(b&&b.buttons)&&(b.buttons.ok?x("ok"):b.buttons.yes&&x("yes"))});h=Ext.get(m.childNodes[2].childNodes[1]);h.enableDisplayMode();j=new Ext.ProgressBar({renderTo:d});d.createChild({cls:"x-clear"})}return a},updateText:function(c){!a.isVisible()&&!b.width&&a.setSize(this.maxWidth,100);e.update(c?c+" ":" ");var d= +""!=n?k.getWidth()+k.getMargins("lr"):0,g=e.getWidth()+e.getMargins("lr"),h=a.getFrameWidth("lr"),l=a.body.getFrameWidth("lr"),g=Math.max(Math.min(b.width||d+g+h+l,b.maxWidth||this.maxWidth),Math.max(b.minWidth||this.minWidth,q||0));!0===b.prompt&&m.setWidth(g-d-h-l);(!0===b.progress||!0===b.wait)&&j.setSize(g-d-h-l);Ext.isIE&&g==q&&(g+=4);e.update(c||" ");a.setSize(g,"auto").center();return this},updateProgress:function(a,b,c){j.updateProgress(a,b);c&&this.updateText(c);return this},isVisible:function(){return a&& +a.isVisible()},hide:function(){var b=a?a.activeGhost:null;if(this.isVisible()||b)a.hide(),u(),b&&a.unghost(!1,!1);return this},show:function(d){this.isVisible()&&this.hide();b=d;var e=this.getDialog(b.title||" ");e.setTitle(b.title||" ");var k=!1!==b.closable&&!0!==b.progress&&!0!==b.wait;e.tools.close.setDisplayed(k);m=g;b.prompt=b.prompt||(b.multiline?!0:!1);b.prompt?b.multiline?(g.hide(),h.show(),h.setHeight(Ext.isNumber(b.multiline)?b.multiline:this.defaultTextHeight),m=h):(g.show(), +h.hide()):(g.hide(),h.hide());m.dom.value=b.value||"";if(b.prompt)e.focusEl=m;else{d=b.buttons;var n=null;d&&d.ok?n=l.ok:d&&d.yes&&(n=l.yes);n&&(e.focusEl=n)}Ext.isDefined(b.iconCls)&&e.setIconClass(b.iconCls);this.setIcon(Ext.isDefined(b.icon)?b.icon:r);var u=b.buttons,w=0,x;u?(a.footer.dom.style.display="",Ext.iterate(l,function(a,b){(x=u[a])?(b.show(),b.setText(Ext.isString(x)?x:Ext.MessageBox.buttonText[a]),w+=b.getEl().getWidth()+15):b.hide()})):Ext.each(s,function(a){l[a].hide()});q=w;j.setVisible(!0=== +b.progress||!0===b.wait);this.updateProgress(0,b.progressText);this.updateText(b.msg);b.cls&&e.el.addClass(b.cls);e.proxyDrag=!0===b.proxyDrag;e.modal=!1!==b.modal;e.mask=!1!==b.modal?c:!1;e.isVisible()||(document.body.appendChild(a.el.dom),e.setAnimateTarget(b.animEl),e.on("show",function(){!0===k?e.keyMap.enable():e.keyMap.disable()},this,{single:!0}),e.show(b.animEl));!0===b.wait&&j.wait(b.waitConfig);return this},setIcon:function(b){if(a)return r=void 0,b&&""!=b?(k.removeClass("x-hidden"),k.replaceClass(n, +b),d.addClass("x-dlg-icon"),n=b):(k.replaceClass(n,"x-hidden"),d.removeClass("x-dlg-icon"),n=""),this;r=b},progress:function(a,b,c){this.show({title:a,msg:b,buttons:!1,progress:!0,closable:!1,minWidth:this.minProgressWidth,progressText:c});return this},wait:function(a,b,c){this.show({title:b,msg:a,buttons:!1,closable:!1,wait:!0,modal:!0,minWidth:this.minProgressWidth,waitConfig:c});return this},alert:function(a,b,c,d){this.show({title:a,msg:b,buttons:this.OK,fn:c,scope:d,minWidth:this.minWidth}); +return this},confirm:function(a,b,c,d){this.show({title:a,msg:b,buttons:this.YESNO,fn:c,scope:d,icon:this.QUESTION,minWidth:this.minWidth});return this},prompt:function(a,b,c,d,e,g){this.show({title:a,msg:b,buttons:this.OKCANCEL,fn:c,minWidth:this.minPromptWidth,scope:d,prompt:!0,multiline:e,value:g});return this},OK:{ok:!0},CANCEL:{cancel:!0},OKCANCEL:{ok:!0,cancel:!0},YESNO:{yes:!0,no:!0},YESNOCANCEL:{yes:!0,no:!0,cancel:!0},INFO:"ext-mb-info",WARNING:"ext-mb-warning",QUESTION:"ext-mb-question", +ERROR:"ext-mb-error",defaultTextHeight:75,maxWidth:600,minWidth:100,minProgressWidth:250,minPromptWidth:250,buttonText:{ok:"OK",cancel:"Cancel",yes:"Yes",no:"No"}}}();Ext.Msg=Ext.MessageBox; +Ext.dd.PanelProxy=Ext.extend(Object,{constructor:function(a,b){this.panel=a;this.id=this.panel.id+"-ddproxy";Ext.apply(this,b)},insertProxy:!0,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(){this.ghost&&(this.proxy&&(this.proxy.remove(),delete this.proxy),this.panel.el.dom.style.display="",this.ghost.remove(),delete this.ghost)}, +show:function(){this.ghost||(this.ghost=this.panel.createGhost(this.panel.initialConfig.cls,void 0,Ext.getBody()),this.ghost.setXY(this.panel.el.getXY()),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(a,b,c){this.hide();"function"==typeof b&&b.call(c||this)},moveProxy:function(a,b){this.proxy&&a.insertBefore(this.proxy.dom,b)}}); +Ext.Panel.DD=Ext.extend(Ext.dd.DragSource,{constructor:function(a,b){this.panel=a;this.dragData={panel:a};this.proxy=new Ext.dd.PanelProxy(a,b);Ext.Panel.DD.superclass.constructor.call(this,a.el,b);var c=a.header,d=a.body;c&&(this.setHandleElId(c.id),d=a.header);d.setStyle("cursor","move");this.scroll=!1},showFrame:Ext.emptyFn,startDrag:Ext.emptyFn,b4StartDrag:function(){this.proxy.show()},b4MouseDown:function(a){var b=a.getPageX();a=a.getPageY();this.autoOffset(b,a)},onInitDrag:function(a,b){this.onStartDrag(a, +b);return!0},createFrame:Ext.emptyFn,getDragEl:function(){return this.proxy.ghost.dom},endDrag:function(){this.proxy.hide();this.panel.saveState()},autoOffset:function(a,b){a-=this.startPageX;b-=this.startPageY;this.setDelta(a,b)}});Ext.Toolbar=function(a){Ext.isArray(a)?a={items:a,layout:"toolbar"}:(a=Ext.apply({layout:"toolbar"},a),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",enableOverflow:!1,trackMenus:!0,internalDefaults:{removeMode:"container",hideParent:!0},toolbarCls:"x-toolbar",initComponent:function(){a.superclass.initComponent.call(this);this.addEvents("overflowchange")},onRender:function(a,c){this.el||(this.autoCreate||(this.autoCreate={cls:this.toolbarCls+" x-small-editor"}),this.el=a.createChild(Ext.apply({id:this.id},this.autoCreate),c),Ext.Toolbar.superclass.onRender.apply(this, +arguments))},lookupComponent:function(b){Ext.isString(b)?(b="-"==b?new a.Separator:" "==b?new a.Spacer:"->"==b?new a.Fill:new a.TextItem(b),this.applyDefaults(b)):b.isFormField||b.render?b=this.createComponent(b):b.tag?b=new a.Item({autoEl:b}):b.tagName?b=new a.Item({el:b}):Ext.isObject(b)&&(b=b.xtype?this.createComponent(b):this.constructButton(b));return b},applyDefaults:function(a){if(!Ext.isString(a)){a=Ext.Toolbar.superclass.applyDefaults.call(this,a);var c=this.internalDefaults;a.events?(Ext.applyIf(a.initialConfig, +c),Ext.apply(a,c)):Ext.applyIf(a,c)}return a},addSeparator:function(){return this.add(new a.Separator)},addSpacer:function(){return this.add(new a.Spacer)},addFill:function(){this.add(new a.Fill)},addElement:function(b){return this.addItem(new a.Item({el:b}))},addItem:function(a){return this.add.apply(this,arguments)},addButton:function(a){if(Ext.isArray(a)){for(var c=[],d=0,e=a.length;d<e;d++)c.push(this.addButton(a[d]));return c}return this.add(this.constructButton(a))},addText:function(b){return this.addItem(new a.TextItem(b))}, +addDom:function(b){return this.add(new a.Item({autoEl:b}))},addField:function(a){return this.add(a)},insertButton:function(a,c){if(Ext.isArray(c)){for(var d=[],e=0,g=c.length;e<g;e++)d.push(this.insertButton(a+e,c[e]));return d}return Ext.Toolbar.superclass.insert.call(this,a,c)},trackMenu:function(a,c){if(this.trackMenus&&a.menu){var d=c?"mun":"mon";this[d](a,"menutriggerover",this.onButtonTriggerOver,this);this[d](a,"menushow",this.onButtonMenuShow,this);this[d](a,"menuhide",this.onButtonMenuHide, +this)}},constructButton:function(a){return a.events?a:this.createComponent(a,a.split?"splitbutton":this.defaultType)},onAdd:function(a){Ext.Toolbar.superclass.onAdd.call(this);this.trackMenu(a);this.disabled&&a.disable()},onRemove:function(a){Ext.Toolbar.superclass.onRemove.call(this);a==this.activeMenuBtn&&delete this.activeMenuBtn;this.trackMenu(a,!0)},onDisable:function(){this.items.each(function(a){a.disable&&a.disable()})},onEnable:function(){this.items.each(function(a){a.enable&&a.enable()})}, +onButtonTriggerOver:function(a){this.activeMenuBtn&&this.activeMenuBtn!=a&&(this.activeMenuBtn.hideMenu(),a.showMenu(),this.activeMenuBtn=a)},onButtonMenuShow:function(a){this.activeMenuBtn=a},onButtonMenuHide:function(){delete this.activeMenuBtn}});Ext.reg("toolbar",Ext.Toolbar);a.Item=Ext.extend(Ext.BoxComponent,{hideParent:!0,enable:Ext.emptyFn,disable:Ext.emptyFn,focus:Ext.emptyFn});Ext.reg("tbitem",a.Item);a.Separator=Ext.extend(a.Item,{onRender:function(a,c){this.el=a.createChild({tag:"span", +cls:"xtb-sep"},c)}});Ext.reg("tbseparator",a.Separator);a.Spacer=Ext.extend(a.Item,{onRender:function(a,c){this.el=a.createChild({tag:"div",cls:"xtb-spacer",style:this.width?"width:"+this.width+"px":""},c)}});Ext.reg("tbspacer",a.Spacer);a.Fill=Ext.extend(a.Item,{render:Ext.emptyFn,isFill:!0});Ext.reg("tbfill",a.Fill);a.TextItem=Ext.extend(a.Item,{constructor:function(b){a.TextItem.superclass.constructor.call(this,Ext.isString(b)?{text:b}:b)},onRender:function(b,c){this.autoEl={cls:"xtb-text",html:this.text|| +""};a.TextItem.superclass.onRender.call(this,b,c)},setText:function(a){this.rendered?this.el.update(a):this.text=a}});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:!0,internalDefaults:{removeMode:"container",hideParent:!0},initComponent:function(){this.layoutConfig=this.layoutConfig||{};Ext.applyIf(this.layoutConfig,{columns:this.columns});this.title||this.addClass("x-btn-group-notitle");this.on("afterlayout",this.onAfterLayout,this);Ext.ButtonGroup.superclass.initComponent.call(this)},applyDefaults:function(a){a=Ext.ButtonGroup.superclass.applyDefaults.call(this, +a);var b=this.internalDefaults;a.events?(Ext.applyIf(a.initialConfig,b),Ext.apply(a,b)):Ext.applyIf(a,b);return a},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",initComponent:function(){var b=[this.first=new a.Button({tooltip:this.firstText,overflowText:this.firstText,iconCls:"x-tbar-page-first",disabled:!0,handler:this.moveFirst,scope:this}),this.prev= +new a.Button({tooltip:this.prevText,overflowText:this.prevText,iconCls:"x-tbar-page-prev",disabled:!0,handler:this.movePrevious,scope:this}),"-",this.beforePageText,this.inputItem=new Ext.form.NumberField({cls:"x-tbar-page-number",allowDecimals:!1,allowNegative:!1,enableKeyEvents:!0,selectOnFocus:!0,submitValue:!1,listeners:{scope:this,keydown:this.onPagingKeyDown,blur:this.onPagingBlur}}),this.afterTextItem=new a.TextItem({text:String.format(this.afterPageText,1)}),"-",this.next=new a.Button({tooltip:this.nextText, +overflowText:this.nextText,iconCls:"x-tbar-page-next",disabled:!0,handler:this.moveNext,scope:this}),this.last=new a.Button({tooltip:this.lastText,overflowText:this.lastText,iconCls:"x-tbar-page-last",disabled:!0,handler:this.moveLast,scope:this}),"-",this.refresh=new a.Button({tooltip:this.refreshText,overflowText:this.refreshText,iconCls:"x-tbar-loading",handler:this.doRefresh,scope:this})],c=this.items||this.buttons||[];this.items=this.prependButtons?c.concat(b):b.concat(c);delete this.buttons; +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:!0});this.cursor=0;this.bindStore(this.store,!0)},onFirstLayout:function(){this.dsLoaded&&this.onLoad.apply(this,this.dsLoaded)},updateInfo:function(){if(this.displayItem){var a=this.store.getCount(),a=0==a?this.emptyMsg:String.format(this.displayMsg,this.cursor+ +1,this.cursor+a,this.store.getTotalCount());this.displayItem.setText(a)}},onLoad:function(a,c,d){this.rendered?(a=this.getParams(),this.cursor=d.params&&d.params[a.start]?d.params[a.start]:0,d=this.getPageData(),a=d.activePage,c=d.pages,this.afterTextItem.setText(String.format(this.afterPageText,d.pages)),this.inputItem.setValue(a),this.first.setDisabled(1==a),this.prev.setDisabled(1==a),this.next.setDisabled(a==c),this.last.setDisabled(a==c),this.refresh.enable(),this.updateInfo(),this.fireEvent("change", +this,d)):this.dsLoaded=[a,c,d]},getPageData:function(){var a=this.store.getTotalCount();return{total:a,activePage:Math.ceil((this.cursor+this.pageSize)/this.pageSize),pages:a<this.pageSize?1:Math.ceil(a/this.pageSize)}},changePage:function(a){this.doLoad(((a-1)*this.pageSize).constrain(0,this.store.getTotalCount()))},onLoadError:function(){this.rendered&&this.refresh.enable()},readPage:function(a){var c=this.inputItem.getValue(),d;return!c||isNaN(d=parseInt(c,10))?(this.inputItem.setValue(a.activePage), +!1):d},onPagingFocus:function(){this.inputItem.select()},onPagingBlur:function(){this.inputItem.setValue(this.getPageData().activePage)},onPagingKeyDown:function(a,c){var d=c.getKey(),e=this.getPageData(),g;if(d==c.RETURN)c.stopEvent(),g=this.readPage(e),!1!==g&&(g=Math.min(Math.max(1,g),e.pages)-1,this.doLoad(g*this.pageSize));else if(d==c.HOME||d==c.END)c.stopEvent(),g=d==c.HOME?1:e.pages,a.setValue(g);else if(d==c.UP||d==c.PAGEUP||d==c.DOWN||d==c.PAGEDOWN)if(c.stopEvent(),g=this.readPage(e)){var h= +c.shiftKey?10:1;if(d==c.DOWN||d==c.PAGEDOWN)h*=-1;g+=h;1<=g&g<=e.pages&&a.setValue(g)}},getParams:function(){return this.paramNames||this.store.paramNames},beforeLoad:function(){this.rendered&&this.refresh&&this.refresh.disable()},doLoad:function(a){var c={},d=this.getParams();c[d.start]=a;c[d.limit]=this.pageSize;!1!==this.fireEvent("beforechange",this,c)&&this.store.load({params:c})},moveFirst:function(){this.doLoad(0)},movePrevious:function(){this.doLoad(Math.max(0,this.cursor-this.pageSize))}, +moveNext:function(){this.doLoad(this.cursor+this.pageSize)},moveLast:function(){var a=this.store.getTotalCount(),c=a%this.pageSize;this.doLoad(c?a-c:a-this.pageSize)},doRefresh:function(){this.doLoad(this.cursor)},bindStore:function(a,c){var d;!c&&this.store&&(a!==this.store&&this.store.autoDestroy?this.store.destroy():(this.store.un("beforeload",this.beforeLoad,this),this.store.un("load",this.onLoad,this),this.store.un("exception",this.onLoadError,this)),a||(this.store=null));a&&(a=Ext.StoreMgr.lookup(a), +a.on({scope:this,beforeload:this.beforeLoad,load:this.onLoad,exception:this.onLoadError}),d=!0);this.store=a;if(d)this.onLoad(a,null,{})},unbind:function(){this.bindStore(null)},bind:function(a){this.bindStore(a)},onDestroy:function(){this.bindStore(null);Ext.PagingToolbar.superclass.onDestroy.call(this)}})})();Ext.reg("paging",Ext.PagingToolbar);
|