var _gaq=_gaq||[];_gaq.push(["_setAccount","UA-24049059-3"]);_gaq.push(["_trackPageview"]);(function(){var b=document.createElement("script");b.type="text/javascript";b.async=true;b.src=("https:"==document.location.protocol?"https://ssl":"http://www")+".google-analytics.com/ga.js";var a=document.getElementsByTagName("script")[0];a.parentNode.insertBefore(b,a)})();;var CodeMirrorConfig=window.CodeMirrorConfig||{};var CodeMirror=(function(){function g(h,j){for(var i in j){if(!h.hasOwnProperty(i)){h[i]=j[i]}}}function e(k,j){for(var h=0;h<k.length;h++){j(k[h])}}function b(h){if(document.createElementNS&&document.documentElement.namespaceURI!==null){return document.createElementNS("http://www.w3.org/1999/xhtml",h)}else{return document.createElement(h)}}g(CodeMirrorConfig,{stylesheet:[],path:"",parserfile:[],basefiles:["util.js","stringstream.js","select.js","undo.js","editor.js","tokenize.js"],iframeClass:null,passDelay:200,passTime:50,lineNumberDelay:200,lineNumberTime:50,continuousScanning:false,saveFunction:null,onLoad:null,onChange:null,undoDepth:50,undoDelay:800,disableSpellcheck:true,textWrapping:true,readOnly:false,width:"",height:"300px",minHeight:100,autoMatchParens:false,markParen:null,unmarkParen:null,parserConfig:null,tabMode:"indent",enterMode:"indent",electricChars:true,reindentOnLoad:false,activeTokens:null,onCursorActivity:null,lineNumbers:false,firstLineNumber:1,onLineNumberClick:null,indentUnit:2,domain:null,noScriptCaching:false,incrementalLoading:false});function c(i,j){var l=b("div"),h=b("div");l.style.position="absolute";l.style.height="100%";if(l.style.setExpression){try{l.style.setExpression("height","this.previousSibling.offsetHeight + 'px'")}catch(k){}}l.style.top="0px";l.style.left="0px";l.style.overflow="hidden";i.appendChild(l);h.className="CodeMirror-line-numbers";l.appendChild(h);h.innerHTML="<div>"+j+"</div>";return l}function f(h){if(typeof h.parserfile=="string"){h.parserfile=[h.parserfile]}if(typeof h.basefiles=="string"){h.basefiles=[h.basefiles]}if(typeof h.stylesheet=="string"){h.stylesheet=[h.stylesheet]}var i=['<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>'];i.push('<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>');var j=h.noScriptCaching?"?nocache="+new Date().getTime().toString(16):"";e(h.stylesheet,function(k){i.push('<link rel="stylesheet" type="text/css" href="'+k+j+'"/>')});e(h.basefiles.concat(h.parserfile),function(k){if(!/^https?:/.test(k)){k=h.path+k}i.push('<script type="text/javascript" src="'+k+j+'"><\/script>')});i.push('</head><body style="border-width: 0;" class="editbox" spellcheck="'+(h.disableSpellcheck?"false":"true")+'"></body></html>');return i.join("")}var d=document.selection&&window.ActiveXObject&&/MSIE/.test(navigator.userAgent);function a(i,j){this.options=j=j||{};g(j,CodeMirrorConfig);if(j.dumbTabs){j.tabMode="spaces"}else{if(j.normalTab){j.tabMode="default"}}if(j.cursorActivity){j.onCursorActivity=j.cursorActivity}var k=this.frame=b("iframe");if(j.iframeClass){k.className=j.iframeClass}k.frameBorder=0;k.style.border="0";k.style.width="100%";k.style.height="100%";k.style.display="block";var l=this.wrapping=b("div");l.style.position="relative";l.className="CodeMirror-wrapping";l.style.width=j.width;l.style.height=(j.height=="dynamic")?j.minHeight+"px":j.height;var h=this.textareaHack=b("textarea");l.appendChild(h);h.style.position="absolute";h.style.left="-10000px";h.style.width="10px";h.tabIndex=100000;k.CodeMirror=this;if(j.domain&&d){this.html=f(j);k.src="javascript:(function(){document.open();"+(j.domain?'document.domain="'+j.domain+'";':"")+"document.write(window.frameElement.CodeMirror.html);document.close();})()"}else{k.src="javascript:;"}if(i.appendChild){i.appendChild(l)}else{i(l)}l.appendChild(k);if(j.lineNumbers){this.lineNumbers=c(l,j.firstLineNumber)}this.win=k.contentWindow;if(!j.domain||!d){this.win.document.open();this.win.document.write(f(j));this.win.document.close()}}a.prototype={init:function(){if(this.options.initCallback){this.options.initCallback(this)}if(this.options.onLoad){this.options.onLoad(this)}if(this.options.lineNumbers){this.activateLineNumbers()}if(this.options.reindentOnLoad){this.reindent()}if(this.options.height=="dynamic"){this.setDynamicHeight()}},getCode:function(){return this.editor.getCode()},setCode:function(h,i){this.editor.importCode(h,i)},selection:function(){this.focusIfIE();return this.editor.selectedText()},reindent:function(){this.editor.reindent()},reindentSelection:function(){this.focusIfIE();this.editor.reindentSelection(null)},focusIfIE:function(){if(this.win.select.ie_selection&&document.activeElement!=this.frame){this.focus()}},focus:function(){this.win.focus();if(this.editor.selectionSnapshot){this.win.select.setBookmark(this.win.document.body,this.editor.selectionSnapshot)}},replaceSelection:function(h){this.focus();this.editor.replaceSelection(h);return true},replaceChars:function(i,j,h){this.editor.replaceChars(i,j,h)},getSearchCursor:function(i,h,j){return this.editor.getSearchCursor(i,h,j)},undo:function(){this.editor.history.undo()},redo:function(){this.editor.history.redo()},historySize:function(){return this.editor.history.historySize()},clearHistory:function(){this.editor.history.clear()},grabKeys:function(i,h){this.editor.grabKeys(i,h)},ungrabKeys:function(){this.editor.ungrabKeys()},setParser:function(h,i){this.editor.setParser(h,i)},setSpellcheck:function(h){this.win.document.body.spellcheck=h},setStylesheet:function(n){if(typeof n==="string"){n=[n]}var j={};var l={};var i=this.win.document.getElementsByTagName("link");for(var h=0,m;m=i[h];h++){if(m.rel.indexOf("stylesheet")!==-1){for(var o=0;o<n.length;o++){var k=n[o];if(m.href.substring(m.href.length-k.length)===k){j[m.href]=true;l[k]=true}}}}for(var h=0,m;m=i[h];h++){if(m.rel.indexOf("stylesheet")!==-1){m.disabled=!(m.href in j)}}for(var o=0;o<n.length;o++){var k=n[o];if(!(k in l)){var m=this.win.document.createElement("link");m.rel="stylesheet";m.type="text/css";m.href=k;this.win.document.getElementsByTagName("head")[0].appendChild(m)}}},setTextWrapping:function(h){if(h==this.options.textWrapping){return}this.win.document.body.style.whiteSpace=h?"":"nowrap";this.options.textWrapping=h;if(this.lineNumbers){this.setLineNumbers(false);this.setLineNumbers(true)}},setIndentUnit:function(h){this.win.indentUnit=h},setUndoDepth:function(h){this.editor.history.maxDepth=h},setTabMode:function(h){this.options.tabMode=h},setEnterMode:function(h){this.options.enterMode=h},setLineNumbers:function(h){if(h&&!this.lineNumbers){this.lineNumbers=c(this.wrapping,this.options.firstLineNumber);this.activateLineNumbers()}else{if(!h&&this.lineNumbers){this.wrapping.removeChild(this.lineNumbers);this.wrapping.style.paddingLeft="";this.lineNumbers=null}}},cursorPosition:function(h){this.focusIfIE();return this.editor.cursorPosition(h)},firstLine:function(){return this.editor.firstLine()},lastLine:function(){return this.editor.lastLine()},nextLine:function(h){return this.editor.nextLine(h)},prevLine:function(h){return this.editor.prevLine(h)},lineContent:function(h){return this.editor.lineContent(h)},setLineContent:function(h,i){this.editor.setLineContent(h,i)},removeLine:function(h){this.editor.removeLine(h)},insertIntoLine:function(i,h,j){this.editor.insertIntoLine(i,h,j)},selectLines:function(k,h,j,i){this.win.focus();this.editor.selectLines(k,h,j,i)},nthLine:function(i){var h=this.firstLine();for(;i>1&&h!==false;i--){h=this.nextLine(h)}return h},lineNumber:function(h){var i=0;while(h!==false){i++;h=this.prevLine(h)}return i},jumpToLine:function(h){if(typeof h=="number"){h=this.nthLine(h)}this.selectLines(h,0);this.win.focus()},currentLine:function(){return this.lineNumber(this.cursorLine())},cursorLine:function(){return this.cursorPosition().line},cursorCoords:function(h){return this.editor.cursorCoords(h)},activateLineNumbers:function(){var j=this.frame,q=j.contentWindow,s=q.document,n=s.body,t=this.lineNumbers,o=t.firstChild,u=this;var v=null;t.onclick=function(y){var x=u.options.onLineNumberClick;if(x){var z=(y||window.event).target||(y||window.event).srcElement;var w=z==t?NaN:Number(z.innerHTML);if(!isNaN(w)){x(w,z)}}};function i(){if(j.offsetWidth==0){return}for(var w=j;w.parentNode;w=w.parentNode){}if(!t.parentNode||w!=document||!q.Editor){try{m()}catch(x){}clearInterval(h);return}if(t.offsetWidth!=v){v=t.offsetWidth;j.parentNode.style.paddingLeft=v+"px"}}function k(){t.scrollTop=n.scrollTop||s.documentElement.scrollTop||0}var m=function(){};i();var h=setInterval(i,500);function r(A){var z=o.firstChild.offsetHeight;if(z==0){return}var w=50+Math.max(n.offsetHeight,Math.max(j.offsetHeight,n.scrollHeight||0)),x=Math.ceil(w/z);for(var y=o.childNodes.length;y<=x;y++){var B=b("div");B.appendChild(document.createTextNode(A?String(y+u.options.firstLineNumber):"\u00a0"));o.appendChild(B)}}function p(){function y(){r(true);k()}u.updateNumbers=y;var w=q.addEventHandler(q,"scroll",k,true),x=q.addEventHandler(q,"resize",y,true);m=function(){w();x();if(u.updateNumbers==y){u.updateNumbers=null}};y()}function l(){var A,D,C,F,I=[],J=u.options.styleNumbers;function G(L,K){if(!D){D=o.appendChild(b("div"))}if(J){J(D,K,L)}I.push(D);I.push(L);F=D.offsetHeight+D.offsetTop;D=D.nextSibling}function z(){for(var K=0;K<I.length;K+=2){I[K].innerHTML=I[K+1]}I=[]}function H(){if(!o.parentNode||o.parentNode!=u.lineNumbers){return}var K=new Date().getTime()+u.options.lineNumberTime;while(A){G(C++,A.previousSibling);for(;A&&!q.isBR(A);A=A.nextSibling){var M=A.offsetTop+A.offsetHeight;while(o.offsetHeight&&M-3>F){var L=F;G("&nbsp;");if(F<=L){break}}}if(A){A=A.nextSibling}if(new Date().getTime()>K){z();x=setTimeout(H,u.options.lineNumberDelay);return}}while(D){G(C++)}z();k()}function y(K){k();r(K);A=n.firstChild;D=o.firstChild;F=0;C=u.options.firstLineNumber;H()}y(true);var x=null;function B(){if(x){clearTimeout(x)}if(u.editor.allClean()){y()}else{x=setTimeout(B,200)}}u.updateNumbers=B;var E=q.addEventHandler(q,"scroll",k,true),w=q.addEventHandler(q,"resize",B,true);m=function(){if(x){clearTimeout(x)}if(u.updateNumbers==B){u.updateNumbers=null}E();w()}}(this.options.textWrapping||this.options.styleNumbers?l:p)()},setDynamicHeight:function(){var j=this,n=j.options.onCursorActivity,m=j.win,i=m.document.body,k=null,l=null,h=2*j.frame.offsetTop;i.style.overflowY="hidden";m.document.documentElement.style.overflowY="hidden";this.frame.scrolling="no";function o(){var p=0,q=i.lastChild,r;while(q&&m.isBR(q)){if(!q.hackBR){p++}q=q.previousSibling}if(q){k=q.offsetHeight;r=q.offsetTop+(1+p)*k}else{if(k){r=p*k}}if(r){j.wrapping.style.height=Math.max(h+r,j.options.minHeight)+"px"}}setTimeout(o,300);j.options.onCursorActivity=function(p){if(n){n(p)}clearTimeout(l);l=setTimeout(o,100)}}};a.InvalidLineHandle={toString:function(){return"CodeMirror.InvalidLineHandle"}};a.replace=function(h){if(typeof h=="string"){h=document.getElementById(h)}return function(i){h.parentNode.replaceChild(i,h)}};a.fromTextArea=function(k,j){if(typeof k=="string"){k=document.getElementById(k)}j=j||{};if(k.style.width&&j.width==null){j.width=k.style.width}if(k.style.height&&j.height==null){j.height=k.style.height}if(j.content==null){j.content=k.value}function i(){k.value=m.getCode()}if(k.form){if(typeof k.form.addEventListener=="function"){k.form.addEventListener("submit",i,false)}else{k.form.attachEvent("onsubmit",i)}var h=k.form.submit;function n(){i();k.form.submit=h;k.form.submit();k.form.submit=n}k.form.submit=n}function l(o){if(k.nextSibling){k.parentNode.insertBefore(o,k.nextSibling)}else{k.parentNode.appendChild(o)}}k.style.display="none";var m=new a(l,j);m.save=i;m.toTextArea=function(){i();k.parentNode.removeChild(m.wrapping);k.style.display="";if(k.form){k.form.submit=h;if(typeof k.form.removeEventListener=="function"){k.form.removeEventListener("submit",i,false)}else{k.form.detachEvent("onsubmit",i)}}};return m};a.isProbablySupported=function(){var h;if(window.opera){return Number(window.opera.version())>=9.52}else{if(/Apple Computer, Inc/.test(navigator.vendor)&&(h=navigator.userAgent.match(/Version\/(\d+(?:\.\d+)?)\./))){return Number(h[1])>=3}else{if(document.selection&&window.ActiveXObject&&(h=navigator.userAgent.match(/MSIE (\d+(?:\.\d*)?)\b/))){return Number(h[1])>=6}else{if(h=navigator.userAgent.match(/gecko\/(\d{8})/i)){return Number(h[1])>=20050901}else{if(h=navigator.userAgent.match(/AppleWebKit\/(\d+)/)){return Number(h[1])>=525}else{return null}}}}}};return a})();;;function js_beautify(d,A){var c,D,p,Q,l,w,B,r,e,aa;var H,W,g,n,u,Z;var P,U,F;var R,ab,j;A=A?A:{};var G=A.braces_on_own_line?A.braces_on_own_line:false;var K=A.indent_size?A.indent_size:4;var h=A.indent_char?A.indent_char:" ";var T=typeof A.preserve_newlines==="undefined"?true:A.preserve_newlines;var x=typeof A.max_preserve_newlines==="undefined"?false:A.max_preserve_newlines;var X=A.indent_level?A.indent_level:0;var s=A.space_after_anon_function==="undefined"?false:A.space_after_anon_function;var k=typeof A.keep_array_indentation==="undefined"?false:A.keep_array_indentation;ab=false;var v=d.length;function q(i){i=typeof i==="undefined"?false:i;while(D.length&&(D[D.length-1]===" "||D[D.length-1]===aa||(i&&(D[D.length-1]==="\n"||D[D.length-1]==="\r")))){D.pop()}}function a(i){return i.replace(/^\s\s*|\s\s*$/,"")}function C(ac){r.eat_next_space=false;if(k&&N(r.mode)){return}ac=typeof ac==="undefined"?true:ac;r.if_line=false;q();if(!D.length){return}if(D[D.length-1]!=="\n"||!ac){ab=true;D.push("\n")}for(var t=0;t<r.indentation_level;t+=1){D.push(aa)}if(r.var_line&&r.var_line_reindented){if(h===" "){D.push("    ")}else{D.push(aa)}}}function y(){if(r.eat_next_space){r.eat_next_space=false;return}var i=" ";if(D.length){i=D[D.length-1]}if(i!==" "&&i!=="\n"&&i!==aa){D.push(" ")}}function J(){ab=false;r.eat_next_space=false;D.push(p)}function o(){r.indentation_level+=1}function O(){if(D.length&&D[D.length-1]===aa){D.pop()}}function m(i){if(r){e.push(r)}r={previous_mode:r?r.mode:"BLOCK",mode:i,var_line:false,var_line_tainted:false,var_line_reindented:false,in_html_comment:false,if_line:false,in_case:false,eat_next_space:false,indentation_baseline:-1,indentation_level:(r?r.indentation_level+((r.var_line&&r.var_line_reindented)?1:0):X)}}function N(i){return i==="[EXPRESSION]"||i==="[INDENTED-EXPRESSION]"}function E(i){return i==="[EXPRESSION]"||i==="[INDENTED-EXPRESSION]"||i==="(EXPRESSION)"}function f(){F=r.mode==="DO_BLOCK";if(e.length>0){r=e.pop()}}function L(ad,t){for(var ac=0;ac<t.length;ac+=1){if(t[ac]===ad){return true}}return false}function z(){var ad=0,ac=0;for(var t=D.length-1;t>=0;t--){switch(D[t]){case":":if(ad===0){ac++}break;case"?":if(ad===0){if(ac===0){return true}else{ac--}}break;case"{":if(ad===0){return false}ad--;break;case"(":case"[":ad--;break;case")":case"]":case"}":ad++;break}}}function V(){j=0;if(n>=v){return["","TK_EOF"]}R=false;var ak=c.charAt(n);n+=1;var am=k&&N(r.mode);if(am){var ae=0;while(L(ak,H)){if(ak==="\n"){q();D.push("\n");ab=true;ae=0}else{if(ak==="\t"){ae+=4}else{if(ak==="\r"){}else{ae+=1}}}if(n>=v){return["","TK_EOF"]}ak=c.charAt(n);n+=1}if(r.indentation_baseline===-1){r.indentation_baseline=ae}if(ab){var ag;for(ag=0;ag<r.indentation_level+1;ag+=1){D.push(aa)}if(r.indentation_baseline!==-1){for(ag=0;ag<ae-r.indentation_baseline;ag++){D.push(" ")}}}}else{while(L(ak,H)){if(ak==="\n"){j+=((x)?(j<=x)?1:0:1)}if(n>=v){return["","TK_EOF"]}ak=c.charAt(n);n+=1}if(T){if(j>1){for(ag=0;ag<j;ag+=1){C(ag===0);ab=true}}}R=j>0}if(L(ak,W)){if(n<v){while(L(c.charAt(n),W)){ak+=c.charAt(n);n+=1;if(n===v){break}}}if(n!==v&&ak.match(/^[0-9]+[Ee]$/)&&(c.charAt(n)==="-"||c.charAt(n)==="+")){var ad=c.charAt(n);n+=1;var an=V(n);ak+=ad+an[0];return[ak,"TK_WORD"]}if(ak==="in"){return[ak,"TK_OPERATOR"]}if(R&&Q!=="TK_OPERATOR"&&!r.if_line&&(T||l!=="var")){C()}return[ak,"TK_WORD"]}if(ak==="("||ak==="["){return[ak,"TK_START_EXPR"]}if(ak===")"||ak==="]"){return[ak,"TK_END_EXPR"]}if(ak==="{"){return[ak,"TK_START_BLOCK"]}if(ak==="}"){return[ak,"TK_END_BLOCK"]}if(ak===";"){return[ak,"TK_SEMICOLON"]}if(ak==="/"){var ah="";var al=true;if(c.charAt(n)==="*"){n+=1;if(n<v){while(!(c.charAt(n)==="*"&&c.charAt(n+1)&&c.charAt(n+1)==="/")&&n<v){ak=c.charAt(n);ah+=ak;if(ak==="\x0d"||ak==="\x0a"){al=false}n+=1;if(n>=v){break}}}n+=2;if(al){return["/*"+ah+"*/","TK_INLINE_COMMENT"]}else{return["/*"+ah+"*/","TK_BLOCK_COMMENT"]}}if(c.charAt(n)==="/"){ah=ak;while(c.charAt(n)!=="\r"&&c.charAt(n)!=="\n"){ah+=c.charAt(n);n+=1;if(n>=v){break}}n+=1;if(R){C()}return[ah,"TK_COMMENT"]}}if(ak==="'"||ak==='"'||(ak==="/"&&((Q==="TK_WORD"&&L(l,["return","do"]))||(Q==="TK_COMMENT"||Q==="TK_START_EXPR"||Q==="TK_START_BLOCK"||Q==="TK_END_BLOCK"||Q==="TK_OPERATOR"||Q==="TK_EQUALS"||Q==="TK_EOF"||Q==="TK_SEMICOLON")))){var ao=ak;var aj=false;var ac=ak;if(n<v){if(ao==="/"){var ai=false;while(aj||ai||c.charAt(n)!==ao){ac+=c.charAt(n);if(!aj){aj=c.charAt(n)==="\\";if(c.charAt(n)==="["){ai=true}else{if(c.charAt(n)==="]"){ai=false}}}else{aj=false}n+=1;if(n>=v){return[ac,"TK_STRING"]}}}else{while(aj||c.charAt(n)!==ao){ac+=c.charAt(n);if(!aj){aj=c.charAt(n)==="\\"}else{aj=false}n+=1;if(n>=v){return[ac,"TK_STRING"]}}}}n+=1;ac+=ao;if(ao==="/"){while(n<v&&L(c.charAt(n),W)){ac+=c.charAt(n);n+=1}}return[ac,"TK_STRING"]}if(ak==="#"){if(D.length===0&&c.charAt(n)==="!"){ac=ak;while(n<v&&ak!="\n"){ak=c.charAt(n);ac+=ak;n+=1}D.push(a(ac)+"\n");C();return V()}var af="#";if(n<v&&L(c.charAt(n),Z)){do{ak=c.charAt(n);af+=ak;n+=1}while(n<v&&ak!=="#"&&ak!=="=");if(ak==="#"){}else{if(c.charAt(n)==="["&&c.charAt(n+1)==="]"){af+="[]";n+=2}else{if(c.charAt(n)==="{"&&c.charAt(n+1)==="}"){af+="{}";n+=2}}}return[af,"TK_WORD"]}}if(ak==="<"&&c.substring(n-1,n+3)==="<!--"){n+=3;r.in_html_comment=true;return["<!--","TK_COMMENT"]}if(ak==="-"&&r.in_html_comment&&c.substring(n-1,n+2)==="-->"){r.in_html_comment=false;n+=2;if(R){C()}return["-->","TK_COMMENT"]}if(L(ak,g)){while(n<v&&L(ak+c.charAt(n),g)){ak+=c.charAt(n);n+=1;if(n>=v){break}}if(ak==="="){return[ak,"TK_EQUALS"]}else{return[ak,"TK_OPERATOR"]}}return[ak,"TK_UNKNOWN"]}aa="";while(K>0){aa+=h;K-=1}c=d;B="";Q="TK_START_EXPR";l="";w="";D=[];F=false;H="\n\r\t ".split("");W="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_$".split("");Z="0123456789".split("");g="+ - * / % & ++ -- = += -= *= /= %= == === != !== > < >= <= >> << >>> >>>= >>= <<= && &= | || ! !! , : ? ^ ^= |= ::".split(" ");u="continue,try,throw,return,var,if,switch,case,default,for,while,break,function".split(",");e=[];m("BLOCK");n=0;while(true){var S=V(n);p=S[0];U=S[1];if(U==="TK_EOF"){break}switch(U){case"TK_START_EXPR":if(p==="["){if(Q==="TK_WORD"||l===")"){if(L(l,u)){y()}m("(EXPRESSION)");J();break}if(r.mode==="[EXPRESSION]"||r.mode==="[INDENTED-EXPRESSION]"){if(w==="]"&&l===","){if(r.mode==="[EXPRESSION]"){r.mode="[INDENTED-EXPRESSION]";if(!k){o()}}m("[EXPRESSION]");if(!k){C()}}else{if(l==="["){if(r.mode==="[EXPRESSION]"){r.mode="[INDENTED-EXPRESSION]";if(!k){o()}}m("[EXPRESSION]");if(!k){C()}}else{m("[EXPRESSION]")}}}else{m("[EXPRESSION]")}}else{m("(EXPRESSION)")}if(l===";"||Q==="TK_START_BLOCK"){C()}else{if(Q==="TK_END_EXPR"||Q==="TK_START_EXPR"||Q==="TK_END_BLOCK"||l==="."){}else{if(Q!=="TK_WORD"&&Q!=="TK_OPERATOR"){y()}else{if(B==="function"){if(s){y()}}else{if(L(l,u)||l==="catch"){y()}}}}}J();break;case"TK_END_EXPR":if(p==="]"){if(k){if(l==="}"){O();J();f();break}}else{if(r.mode==="[INDENTED-EXPRESSION]"){if(l==="]"){f();C();J();break}}}}f();J();break;case"TK_START_BLOCK":if(B==="do"){m("DO_BLOCK")}else{m("BLOCK")}if(G){if(Q!=="TK_OPERATOR"){if(l=="return"){y()}else{C(true)}}J();o()}else{if(Q!=="TK_OPERATOR"&&Q!=="TK_START_EXPR"){if(Q==="TK_START_BLOCK"){C()}else{y()}}else{if(N(r.previous_mode)&&l===","){if(w==="}"){y()}else{C()}}}o();J()}break;case"TK_END_BLOCK":f();if(G){C();J()}else{if(Q==="TK_START_BLOCK"){if(ab){O()}else{q()}}else{if(N(r.mode)&&k){k=false;C();k=true}else{C()}}J()}break;case"TK_WORD":if(F){y();J();y();F=false;break}if(p==="function"){if((ab||l===";")&&l!=="{"){j=ab?j:0;if(!T){j=1}for(var Y=0;Y<2-j;Y++){C(false)}}}if(p==="case"||p==="default"){if(l===":"){O()}else{r.indentation_level--;C();r.indentation_level++}J();r.in_case=true;break}P="NONE";if(Q==="TK_END_BLOCK"){if(!L(p.toLowerCase(),["else","catch","finally"])){P="NEWLINE"}else{if(G){P="NEWLINE"}else{P="SPACE";y()}}}else{if(Q==="TK_SEMICOLON"&&(r.mode==="BLOCK"||r.mode==="DO_BLOCK")){P="NEWLINE"}else{if(Q==="TK_SEMICOLON"&&E(r.mode)){P="SPACE"}else{if(Q==="TK_STRING"){P="NEWLINE"}else{if(Q==="TK_WORD"){P="SPACE"}else{if(Q==="TK_START_BLOCK"){P="NEWLINE"}else{if(Q==="TK_END_EXPR"){y();P="NEWLINE"}}}}}}}if(r.if_line&&Q==="TK_END_EXPR"){r.if_line=false}if(L(p.toLowerCase(),["else","catch","finally"])){if(Q!=="TK_END_BLOCK"||G){C()}else{q(true);y()}}else{if(L(p,u)||P==="NEWLINE"){if((Q==="TK_START_EXPR"||l==="="||l===",")&&p==="function"){}else{if(l==="return"||l==="throw"){y()}else{if(Q!=="TK_END_EXPR"){if((Q!=="TK_START_EXPR"||p!=="var")&&l!==":"){if(p==="if"&&B==="else"&&l!=="{"){y()}else{C()}}}else{if(L(p,u)&&l!==")"){C()}}}}}else{if(N(r.mode)&&l===","&&w==="}"){C()}else{if(P==="SPACE"){y()}}}}J();B=p;if(p==="var"){r.var_line=true;r.var_line_reindented=false;r.var_line_tainted=false}if(p==="if"){r.if_line=true}if(p==="else"){r.if_line=false}break;case"TK_SEMICOLON":J();r.var_line=false;r.var_line_reindented=false;break;case"TK_STRING":if(Q==="TK_START_BLOCK"||Q==="TK_END_BLOCK"||Q==="TK_SEMICOLON"){C()}else{if(Q==="TK_WORD"){y()}}J();break;case"TK_EQUALS":if(r.var_line){r.var_line_tainted=true}y();J();y();break;case"TK_OPERATOR":var b=true;var I=true;if(r.var_line&&p===","&&(E(r.mode))){r.var_line_tainted=false}if(r.var_line){if(p===","){if(r.var_line_tainted){J();r.var_line_reindented=true;r.var_line_tainted=false;C();break}else{r.var_line_tainted=false}}}if(l==="return"||l==="throw"){y();J();break}if(p===":"&&r.in_case){J();C();r.in_case=false;break}if(p==="::"){J();break}if(p===","){if(r.var_line){if(r.var_line_tainted){J();C();r.var_line_tainted=false}else{J();y()}}else{if(Q==="TK_END_BLOCK"&&r.mode!=="(EXPRESSION)"){J();if(r.mode==="OBJECT"&&l==="}"){C()}else{y()}}else{if(r.mode==="OBJECT"){J();C()}else{J();y()}}}break}else{if(L(p,["--","++","!"])||(L(p,["-","+"])&&(L(Q,["TK_START_BLOCK","TK_START_EXPR","TK_EQUALS","TK_OPERATOR"])||L(l,u)))){b=false;I=false;if(l===";"&&E(r.mode)){b=true}if(Q==="TK_WORD"&&L(l,u)){b=true}if(r.mode==="BLOCK"&&(l==="{"||l===";")){C()}}else{if(p==="."){b=false}else{if(p===":"){if(!z()){r.mode="OBJECT";b=false}}}}}if(b){y()}J();if(I){y()}if(p==="!"){}break;case"TK_BLOCK_COMMENT":var M=p.split(/\x0a|\x0d\x0a/);if(/^\/\*\*/.test(p)){C();D.push(M[0]);for(Y=1;Y<M.length;Y++){C();D.push(" ");D.push(a(M[Y]))}}else{if(M.length>1){C();q()}else{y()}for(Y=0;Y<M.length;Y++){D.push(M[Y]);D.push("\n")}}C();break;case"TK_INLINE_COMMENT":y();J();if(E(r.mode)){y()}else{C()}break;case"TK_COMMENT":if(R){C()}else{y()}J();C();break;case"TK_UNKNOWN":if(l==="return"||l==="throw"){y()}J();break}w=l;Q=U;l=p}return D.join("").replace(/[\n ]+$/,"")}if(typeof exports!=="undefined"){exports.js_beautify=js_beautify};;;function style_html(e,a,c,d){var g,f;function g(){this.pos=0;this.token="";this.current_mode="CONTENT";this.tags={parent:"parent1",parentcount:1,parent1:""};this.tag_type="";this.token_text=this.last_token=this.last_text=this.token_type="";this.Utils={whitespace:"\n\r\t ".split(""),single_token:"br,input,link,meta,!doctype,basefont,base,area,hr,wbr,param,img,isindex,?xml,embed".split(","),extra_liners:"head,body,/html".split(","),in_array:function(k,h){for(var j=0;j<h.length;j++){if(k===h[j]){return true}}return false}};this.get_content=function(){var h="";var k=[];var l=false;while(this.input.charAt(this.pos)!=="<"){if(this.pos>=this.input.length){return k.length?k.join(""):["","TK_EOF"]}h=this.input.charAt(this.pos);this.pos++;this.line_char_count++;if(this.Utils.in_array(h,this.Utils.whitespace)){if(k.length){l=true}this.line_char_count--;continue}else{if(l){if(this.line_char_count>=this.max_char){k.push("\n");for(var j=0;j<this.indent_level;j++){k.push(this.indent_string)}this.line_char_count=0}else{k.push(" ");this.line_char_count++}l=false}}k.push(h)}return k.length?k.join(""):""};this.get_script=function(){var h="";var j=[];var k=new RegExp("<\/script>","igm");k.lastIndex=this.pos;var i=k.exec(this.input);var l=i?i.index:this.input.length;while(this.pos<l){if(this.pos>=this.input.length){return j.length?j.join(""):["","TK_EOF"]}h=this.input.charAt(this.pos);this.pos++;j.push(h)}return j.length?j.join(""):""};this.record_tag=function(h){if(this.tags[h+"count"]){this.tags[h+"count"]++;this.tags[h+this.tags[h+"count"]]=this.indent_level}else{this.tags[h+"count"]=1;this.tags[h+this.tags[h+"count"]]=this.indent_level}this.tags[h+this.tags[h+"count"]+"parent"]=this.tags.parent;this.tags.parent=h+this.tags[h+"count"]};this.retrieve_tag=function(h){if(this.tags[h+"count"]){var i=this.tags.parent;while(i){if(h+this.tags[h+"count"]===i){break}i=this.tags[i+"parent"]}if(i){this.indent_level=this.tags[h+this.tags[h+"count"]];this.tags.parent=this.tags[i+"parent"]}delete this.tags[h+this.tags[h+"count"]+"parent"];delete this.tags[h+this.tags[h+"count"]];if(this.tags[h+"count"]==1){delete this.tags[h+"count"]}else{this.tags[h+"count"]--}}};this.get_tag=function(){var h="";var j=[];var l=false;do{if(this.pos>=this.input.length){return j.length?j.join(""):["","TK_EOF"]}h=this.input.charAt(this.pos);this.pos++;this.line_char_count++;if(this.Utils.in_array(h,this.Utils.whitespace)){l=true;this.line_char_count--;continue}if(h==="'"||h==='"'){if(!j[1]||j[1]!=="!"){h+=this.get_unformatted(h);l=true}}if(h==="="){l=false}if(j.length&&j[j.length-1]!=="="&&h!==">"&&l){if(this.line_char_count>=this.max_char){this.print_newline(false,j);this.line_char_count=0}else{j.push(" ");this.line_char_count++}l=false}j.push(h)}while(h!==">");var m=j.join("");var k;if(m.indexOf(" ")!=-1){k=m.indexOf(" ")}else{k=m.indexOf(">")}var i=m.substring(1,k).toLowerCase();if(m.charAt(m.length-2)==="/"||this.Utils.in_array(i,this.Utils.single_token)){this.tag_type="SINGLE"}else{if(i==="script"){this.record_tag(i);this.tag_type="SCRIPT"}else{if(i==="style"){this.record_tag(i);this.tag_type="STYLE"}else{if(i==="a"){var n=this.get_unformatted("</a>",m);j.push(n);this.tag_type="SINGLE"}else{if(i.charAt(0)==="!"){if(i.indexOf("[if")!=-1){if(m.indexOf("!IE")!=-1){var n=this.get_unformatted("-->",m);j.push(n)}this.tag_type="START"}else{if(i.indexOf("[endif")!=-1){this.tag_type="END";this.unindent()}else{if(i.indexOf("[cdata[")!=-1){var n=this.get_unformatted("]]>",m);j.push(n);this.tag_type="SINGLE"}else{var n=this.get_unformatted("-->",m);j.push(n);this.tag_type="SINGLE"}}}}else{if(i.charAt(0)==="/"){this.retrieve_tag(i.substring(1));this.tag_type="END"}else{this.record_tag(i);this.tag_type="START"}if(this.Utils.in_array(i,this.Utils.extra_liners)){this.print_newline(true,this.output)}}}}}}return j.join("")};this.get_unformatted=function(j,l){if(l&&l.indexOf(j)!=-1){return""}var h="";var m="";var n=true;do{if(this.pos>=this.input.length){return m}h=this.input.charAt(this.pos);this.pos++;if(this.Utils.in_array(h,this.Utils.whitespace)){if(!n){this.line_char_count--;continue}if(h==="\n"||h==="\r"){m+="\n";for(var k=0;k<this.indent_level;k++){m+=this.indent_string}n=false;this.line_char_count=0;continue}}m+=h;this.line_char_count++;n=true}while(m.indexOf(j)==-1);return m};this.get_token=function(){var i;if(this.last_token==="TK_TAG_SCRIPT"){var h=this.get_script();if(typeof h!=="string"){return h}i=js_beautify(h,{indent_size:this.indent_size,indent_char:this.indent_character,indent_level:this.indent_level});return[i,"TK_CONTENT"]}if(this.current_mode==="CONTENT"){i=this.get_content();if(typeof i!=="string"){return i}else{return[i,"TK_CONTENT"]}}if(this.current_mode==="TAG"){i=this.get_tag();if(typeof i!=="string"){return i}else{var j="TK_TAG_"+this.tag_type;return[i,j]}}};this.printer=function(l,k,h,m){this.input=l||"";this.output=[];this.indent_character=k||" ";this.indent_string="";this.indent_size=h||2;this.indent_level=0;this.max_char=m||70;this.line_char_count=0;for(var j=0;j<this.indent_size;j++){this.indent_string+=this.indent_character}this.print_newline=function(p,n){this.line_char_count=0;if(!n||!n.length){return}if(!p){while(this.Utils.in_array(n[n.length-1],this.Utils.whitespace)){n.pop()}}n.push("\n");for(var o=0;o<this.indent_level;o++){n.push(this.indent_string)}};this.print_token=function(i){this.output.push(i)};this.indent=function(){this.indent_level++};this.unindent=function(){if(this.indent_level>0){this.indent_level--}}};return this}f=new g();f.printer(e,c,a);while(true){var b=f.get_token();f.token_text=b[0];f.token_type=b[1];if(f.token_type==="TK_EOF"){break}switch(f.token_type){case"TK_TAG_START":case"TK_TAG_SCRIPT":case"TK_TAG_STYLE":f.print_newline(false,f.output);f.print_token(f.token_text);f.indent();f.current_mode="CONTENT";break;case"TK_TAG_END":f.print_newline(true,f.output);f.print_token(f.token_text);f.current_mode="CONTENT";break;case"TK_TAG_SINGLE":f.print_newline(false,f.output);f.print_token(f.token_text);f.current_mode="CONTENT";break;case"TK_CONTENT":if(f.token_text!==""){f.print_newline(false,f.output);f.print_token(f.token_text)}f.current_mode="TAG";break}f.last_token=f.token_type;f.last_text=f.token_text}return f.output.join("")};;;var JavascriptObfuscator={detect:function(a){return/^var _0x[a-f0-9]+ ?\= ?\[/.test(a)},unpack:function(e){if(JavascriptObfuscator.detect(e)){var c=/var (_0x[a-f\d]+) ?\= ?\[(.*?)\];/.exec(e);if(c){var d=c[1];var a=JavascriptObfuscator._smart_split(c[2]);var e=e.substring(c[0].length);for(var b in a){e=e.replace(new RegExp(d+"\\["+b+"\\]","g"),JavascriptObfuscator._fix_quotes(JavascriptObfuscator._unescape(a[b])))}}}return e},_fix_quotes:function(b){var a=/^"(.*)"$/.exec(b);if(a){b=a[1];b="'"+b.replace(/'/g,"\\'")+"'"}return b},_smart_split:function(c){var a=[];var d=0;while(d<c.length){if(c.charAt(d)=='"'){var b="";d+=1;while(d<c.length){if(c.charAt(d)=='"'){break}if(c.charAt(d)=="\\"){b+="\\";d++}b+=c.charAt(d);d++}a.push('"'+b+'"')}d+=1}return a},_unescape:function(b){for(var a=32;a<128;a++){b=b.replace(new RegExp("\\\\x"+a.toString(16),"ig"),String.fromCharCode(a))}return b},run_tests:function(b){var a=b||new SanityTest();a.test_function(JavascriptObfuscator._smart_split,"JavascriptObfuscator._smart_split");a.expect("",[]);a.expect('"a", "b"',['"a"','"b"']);a.expect('"aaa","bbbb"',['"aaa"','"bbbb"']);a.expect('"a", "b\\""',['"a"','"b\\""']);a.test_function(JavascriptObfuscator._unescape,"JavascriptObfuscator._unescape");a.expect("\\x40","@");a.expect("\\x10","\\x10");a.expect("\\x1","\\x1");a.expect("\\x61\\x62\\x22\\x63\\x64",'ab"cd');a.test_function(JavascriptObfuscator.detect,"JavascriptObfuscator.detect");a.expect("",false);a.expect("abcd",false);a.expect("var _0xaaaa",false);a.expect('var _0xaaaa = ["a", "b"]',true);a.expect('var _0xaaaa=["a", "b"]',true);a.expect('var _0x1234=["a","b"]',true);return a}};;;var EscapedBookmarklet={detect:function(a){return a.indexOf("%20")!=-1&&a.indexOf(" ")==-1},unpack:function(a){if(EscapedBookmarklet.detect(a)){return unescape(a)}return a},run_tests:function(b){var a=b||new SanityTest();a.test_function(EscapedBookmarklet.detect,"EscapedBookmarklet.detect");a.expect("",false);a.expect("var a = b",false);a.expect("var%20a=b",true);a.test_function(EscapedBookmarklet.unpack,"EscapedBookmarklet.unpack");a.expect("","");a.expect("abcd","abcd");a.expect("var a = b","var a = b");a.expect("var%20a=b","var a=b");return a}};;;var P_A_C_K_E_R={detect:function(a){return P_A_C_K_E_R._starts_with(a.toLowerCase().replace(/ +/g,""),"eval(function(")||P_A_C_K_E_R._starts_with(a.toLowerCase().replace(/ +/g,""),"eval((function(")},unpack:function(str){var unpacked_source="";if(P_A_C_K_E_R.detect(str)){try{eval("unpacked_source = "+str.substring(4)+";");if(typeof unpacked_source=="string"&&unpacked_source){str=unpacked_source}}catch(error){}}return str},_starts_with:function(b,a){return b.substr(0,a.length)===a},run_tests:function(b){var a=b||new SanityTest();a.test_function(P_A_C_K_E_R.detect,"P_A_C_K_E_R.detect");a.expect("",false);a.expect("var a = b",false);a.expect("eval(function(p,a,c,k,e,r",true);a.expect("eval ( function(p, a, c, k, e, r",true);a.test_function(P_A_C_K_E_R.unpack,"P_A_C_K_E_R.unpack");a.expect("eval(function(p,a,c,k,e,r){e=String;if(!''.replace(/^/,String)){while(c--)r[c]=k[c]||c;k=[function(e){return r[e]}];e=function(){return'\\\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\\\b'+e(c)+'\\\\b','g'),k[c]);return p}('0 2=1',3,3,'var||a'.split('|'),0,{}))","var a=1");var c=function(d){return P_A_C_K_E_R._starts_with(d,"a")};a.test_function(c,"P_A_C_K_E_R._starts_with(?, a)");a.expect("abc",true);a.expect("bcd",false);a.expect("a",true);a.expect("",false);return a}};;;window.undefined=window.undefined;Ext={version:"3.0"};Ext.apply=function(h,g,c){if(c){Ext.apply(h,c)}if(h&&g&&typeof g=="object"){for(var f in g){h[f]=g[f]}}return h};(function(){var Y=0,I=Object.prototype.toString,J=function(a){if(Ext.isArray(a)||a.callee){return true}if(/NodeList|HTMLCollection/.test(I.call(a))){return true}return((a.nextNode||a.item)&&Ext.isNumber(a.length))},H=navigator.userAgent.toLowerCase(),e=function(a){return a.test(H)},W=document,T=W.compatMode=="CSS1Compat",N=e(/opera/),X=e(/chrome/),G=e(/webkit/),D=!X&&e(/safari/),Z=D&&e(/applewebkit\/4/),ac=D&&e(/version\/3/),K=D&&e(/version\/4/),L=!N&&e(/msie/),P=L&&e(/msie 7/),Q=L&&e(/msie 8/),M=L&&!P&&!Q,R=!G&&e(/gecko/),aa=R&&e(/rv:1\.8/),ad=R&&e(/rv:1\.9/),F=L&&!T,O=e(/windows|win32/),U=e(/macintosh|mac os x/),V=e(/adobeair/),S=e(/linux/),ab=/^https/i.test(window.location.protocol);if(M){try{W.execCommand("BackgroundImageCache",false,true)}catch(E){}}Ext.apply(Ext,{SSL_SECURE_URL:"javascript:false",isStrict:T,isSecure:ab,isReady:false,enableGarbageCollector:true,enableListenerCollection:false,USE_NATIVE_JSON:false,applyIf:function(c,a){if(c){for(var b in a){if(Ext.isEmpty(c[b])){c[b]=a[b]}}}return c},id:function(b,a){return(b=Ext.getDom(b)||{}).id=b.id||(a||"ext-gen")+(++Y)},extend:function(){var b=function(c){for(var d in c){this[d]=c[d]}};var a=Object.prototype.constructor;return function(c,g,d){if(Ext.isObject(g)){d=g;g=c;c=d.constructor!=a?d.constructor:function(){g.apply(this,arguments)}}var h=function(){},f,i=g.prototype;h.prototype=i;f=c.prototype=new h();f.constructor=c;c.superclass=i;if(i.constructor==a){i.constructor=g}c.override=function(j){Ext.override(c,j)};f.superclass=f.supr=(function(){return i});f.override=b;Ext.override(c,d);c.extend=function(j){Ext.extend(c,j)};return c}}(),override:function(c,a){if(a){var b=c.prototype;Ext.apply(b,a);if(Ext.isIE&&a.toString!=c.toString){b.toString=a.toString}}},namespace:function(){var b,a;Ext.each(arguments,function(c){a=c.split(".");b=window[a[0]]=window[a[0]]||{};Ext.each(a.slice(1),function(d){b=b[d]=b[d]||{}})});return b},urlEncode:function(a,b){var d,g=[],f,c=encodeURIComponent;for(f in a){d=!Ext.isDefined(a[f]);Ext.each(d?f:a[f],function(h,i){g.push("&",c(f),"=",(h!=f||!d)?c(h):"")})}if(!b){g.shift();b=""}return b+g.join("")},urlDecode:function(f,h){var b={},c=f.split("&"),a=decodeURIComponent,g,d;Ext.each(c,function(i){i=i.split("=");g=a(i[0]);d=a(i[1]);b[g]=h||!b[g]?d:[].concat(b[g]).concat(d)});return b},urlAppend:function(b,a){if(!Ext.isEmpty(a)){return b+(b.indexOf("?")===-1?"?":"&")+a}return b},toArray:function(){return L?function(d,a,c,b){b=[];Ext.each(d,function(f){b.push(f)});return b.slice(a||0,c||b.length)}:function(c,a,b){return Array.prototype.slice.call(c,a||0,b||c.length)}}(),each:function(a,b,c){if(Ext.isEmpty(a,true)){return}if(!J(a)||Ext.isPrimitive(a)){a=[a]}for(var f=0,d=a.length;f<d;f++){if(b.call(c||a[f],a[f],f,a)===false){return f}}},iterate:function(b,d,c){if(J(b)){Ext.each(b,d,c);return}else{if(Ext.isObject(b)){for(var a in b){if(b.hasOwnProperty(a)){if(d.call(c||b,a,b[a])===false){return}}}}}},getDom:function(a){if(!a||!W){return null}return a.dom?a.dom:(Ext.isString(a)?W.getElementById(a):a)},getBody:function(){return Ext.get(W.body||W.documentElement)},removeNode:L?function(){var a;return function(b){if(b&&b.tagName!="BODY"){a=a||W.createElement("div");a.appendChild(b);a.innerHTML=""}}}():function(a){if(a&&a.parentNode&&a.tagName!="BODY"){a.parentNode.removeChild(a)}},isEmpty:function(b,a){return b===null||b===undefined||((Ext.isArray(b)&&!b.length))||(!a?b==="":false)},isArray:function(a){return I.apply(a)==="[object Array]"},isObject:function(a){return a&&typeof a=="object"},isPrimitive:function(a){return Ext.isString(a)||Ext.isNumber(a)||Ext.isBoolean(a)},isFunction:function(a){return I.apply(a)==="[object Function]"},isNumber:function(a){return typeof a==="number"&&isFinite(a)},isString:function(a){return typeof a==="string"},isBoolean:function(a){return typeof a==="boolean"},isDefined:function(a){return typeof a!=="undefined"},isOpera:N,isWebKit:G,isChrome:X,isSafari:D,isSafari3:ac,isSafari4:K,isSafari2:Z,isIE:L,isIE6:M,isIE7:P,isIE8:Q,isGecko:R,isGecko2:aa,isGecko3:ad,isBorderBox:F,isLinux:S,isWindows:O,isMac:U,isAir:V});Ext.ns=Ext.namespace})();Ext.ns("Ext","Ext.util","Ext.lib","Ext.data");Ext.apply(Function.prototype,{createInterceptor:function(d,e){var f=this;return !Ext.isFunction(d)?this:function(){var a=this,b=arguments;d.target=a;d.method=f;return(d.apply(e||a||window,b)!==false)?f.apply(a||window,b):null}},createCallback:function(){var d=arguments,c=this;return function(){return c.apply(window,d)}},createDelegate:function(h,e,f){var g=this;return function(){var a=e||arguments;if(f===true){a=Array.prototype.slice.call(arguments,0);a=a.concat(e)}else{if(Ext.isNumber(f)){a=Array.prototype.slice.call(arguments,0);var b=[f,0].concat(e);Array.prototype.splice.apply(a,b)}}return g.apply(h||window,a)}},defer:function(j,h,f,g){var i=this.createDelegate(h,f,g);if(j>0){return setTimeout(i,j)}i();return 0}});Ext.applyIf(String,{format:function(c){var d=Ext.toArray(arguments,1);return c.replace(/\{(\d+)\}/g,function(b,a){return d[a]})}});Ext.applyIf(Array.prototype,{indexOf:function(f){for(var d=0,e=this.length;d<e;d++){if(this[d]==f){return d}}return -1},remove:function(c){var d=this.indexOf(c);if(d!=-1){this.splice(d,1)}return this}});Ext.ns("Ext.grid","Ext.dd","Ext.tree","Ext.form","Ext.menu","Ext.state","Ext.layout","Ext.app","Ext.ux","Ext.chart","Ext.direct");Ext.apply(Ext,function(){var c=Ext,d=0;return{emptyFn:function(){},BLANK_IMAGE_URL:Ext.isIE6||Ext.isIE7?"http://extjs.com/s.gif":"data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==",extendX:function(b,a){return Ext.extend(b,a(b.prototype))},getDoc:function(){return Ext.get(document)},isDate:function(a){return Object.prototype.toString.apply(a)==="[object Date]"},num:function(a,b){a=Number(a===null||typeof a=="boolean"?NaN:a);return isNaN(a)?b:a},value:function(a,f,b){return Ext.isEmpty(a,b)?f:a},escapeRe:function(a){return a.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},sequence:function(a,h,b,g){a[h]=a[h].createSequence(b,g)},addBehaviors:function(a){if(!Ext.isReady){Ext.onReady(function(){Ext.addBehaviors(a)})}else{var i={},b,j,h;for(j in a){if((b=j.split("@"))[1]){h=b[0];if(!i[h]){i[h]=Ext.select(h)}i[h].on(b[1],a[j])}}i=null}},combine:function(){var h=arguments,i=h.length,a=[];for(var b=0;b<i;b++){var j=h[b];if(Ext.isArray(j)){a=a.concat(j)}else{if(j.length!==undefined&&!j.substr){a=a.concat(Array.prototype.slice.call(j,0))}else{a.push(j)}}}return a},copyTo:function(f,b,a){if(typeof a=="string"){a=a.split(/[,;\s]/)}Ext.each(a,function(e){if(b.hasOwnProperty(e)){f[e]=b[e]}},this);return f},destroy:function(){Ext.each(arguments,function(a){if(a){if(Ext.isArray(a)){this.destroy.apply(this,a)}else{if(Ext.isFunction(a.destroy)){a.destroy()}else{if(a.dom){a.remove()}}}}},this)},destroyMembers:function(a,i,l,k){for(var b=1,m=arguments,n=m.length;b<n;b++){Ext.destroy(a[m[b]]);delete a[m[b]]}},clean:function(b){var a=[];Ext.each(b,function(f){if(!!f){a.push(f)}});return a},unique:function(f){var b=[],a={};Ext.each(f,function(e){if(!a[e]){b.push(e)}a[e]=true});return b},flatten:function(f){var a=[];function b(e){Ext.each(e,function(h){if(Ext.isArray(h)){b(h)}else{a.push(h)}});return a}return b(f)},min:function(f,b){var a=f[0];b=b||function(e,h){return e<h?-1:1};Ext.each(f,function(e){a=b(a,e)==-1?a:e});return a},max:function(f,b){var a=f[0];b=b||function(e,h){return e>h?1:-1};Ext.each(f,function(e){a=b(a,e)==1?a:e});return a},mean:function(a){return Ext.sum(a)/a.length},sum:function(b){var a=0;Ext.each(b,function(f){a+=f});return a},partition:function(f,b){var a=[[],[]];Ext.each(f,function(i,e,j){a[(b&&b(i,e,j))||(!b&&i)?0:1].push(i)});return a},invoke:function(h,g){var a=[],b=Array.prototype.slice.call(arguments,2);Ext.each(h,function(f,e){if(f&&typeof f[g]=="function"){a.push(f[g].apply(f,b))}else{a.push(undefined)}});return a},pluck:function(f,a){var b=[];Ext.each(f,function(e){b.push(e[a])});return b},zip:function(){var a=Ext.partition(arguments,function(e){return !Ext.isFunction(e)}),j=a[0],b=a[1][0],p=Ext.max(Ext.pluck(j,"length")),m=[];for(var i=0;i<p;i++){m[i]=[];if(b){m[i]=b.apply(b,Ext.pluck(j,i))}else{for(var n=0,o=j.length;n<o;n++){m[i].push(j[n][i])}}}return m},getCmp:function(a){return Ext.ComponentMgr.get(a)},useShims:c.isIE6||(c.isMac&&c.isGecko2),type:function(a){if(a===undefined||a===null){return false}if(a.htmlElement){return"element"}var b=typeof a;if(b=="object"&&a.nodeName){switch(a.nodeType){case 1:return"element";case 3:return(/\S/).test(a.nodeValue)?"textnode":"whitespace"}}if(b=="object"||b=="function"){switch(a.constructor){case Array:return"array";case RegExp:return"regexp";case Date:return"date"}if(typeof a.length=="number"&&typeof a.item=="function"){return"nodelist"}}return b},intercept:function(a,h,b,g){a[h]=a[h].createInterceptor(b,g)},callback:function(h,a,b,g){if(Ext.isFunction(h)){if(g){h.defer(g,a,b||[])}else{h.apply(a,b||[])}}}}}());Ext.apply(Function.prototype,{createSequence:function(d,e){var f=this;return !Ext.isFunction(d)?this:function(){var a=f.apply(this||window,arguments);d.apply(e||this||window,arguments);return a}}});Ext.applyIf(String,{escape:function(b){return b.replace(/('|\\)/g,"\\$1")},leftPad:function(g,e,h){var f=String(g);if(!h){h=" "}while(f.length<e){f=h+f}return f}});String.prototype.toggle=function(c,d){return this==c?d:c};String.prototype.trim=function(){var b=/^\s+|\s+$/g;return function(){return this.replace(b,"")}}();Date.prototype.getElapsed=function(b){return Math.abs((b||new Date()).getTime()-this.getTime())};Ext.applyIf(Number.prototype,{constrain:function(c,d){return Math.min(Math.max(this,c),d)}});Ext.util.TaskRunner=function(n){n=n||10;var m=[],r=[],q=0,l=false,o=function(){l=false;clearInterval(q);q=0},k=function(){if(!l){l=true;q=setInterval(j,n)}},p=function(a){r.push(a);if(a.onStop){a.onStop.apply(a.scope||a)}},j=function(){var b=r.length,g=new Date().getTime();if(b>0){for(var e=0;e<b;e++){m.remove(r[e])}r=[];if(m.length<1){o();return}}for(var e=0,f,c,a,d=m.length;e<d;++e){f=m[e];c=g-f.taskRunTime;if(f.interval<=c){a=f.run.apply(f.scope||f,f.args||[++f.taskRunCount]);f.taskRunTime=g;if(a===false||f.taskRunCount===f.repeat){p(f);return}}if(f.duration&&f.duration<=(g-f.taskStartTime)){p(f)}}};this.start=function(a){m.push(a);a.taskStartTime=new Date().getTime();a.taskRunTime=0;a.taskRunCount=0;k();return a};this.stop=function(a){p(a);return a};this.stopAll=function(){o();for(var a=0,b=m.length;a<b;a++){if(m[a].onStop){m[a].onStop()}}m=[];r=[]}};Ext.TaskMgr=new Ext.util.TaskRunner();(function(){var d;function f(a){if(!d){d=new Ext.Element.Flyweight()}d.dom=a;return d}(function(){var b=document,h=b.compatMode=="CSS1Compat",c=Math.max,a=parseInt;Ext.lib.Dom={isAncestor:function(k,g){var l=false;k=Ext.getDom(k);g=Ext.getDom(g);if(k&&g){if(k.contains){return k.contains(g)}else{if(k.compareDocumentPosition){return !!(k.compareDocumentPosition(g)&16)}else{while(g=g.parentNode){l=g==k||l}}}}return l},getViewWidth:function(g){return g?this.getDocumentWidth():this.getViewportWidth()},getViewHeight:function(g){return g?this.getDocumentHeight():this.getViewportHeight()},getDocumentHeight:function(){return c(!h?b.body.scrollHeight:b.documentElement.scrollHeight,this.getViewportHeight())},getDocumentWidth:function(){return c(!h?b.body.scrollWidth:b.documentElement.scrollWidth,this.getViewportWidth())},getViewportHeight:function(){return Ext.isIE?(Ext.isStrict?b.documentElement.clientHeight:b.body.clientHeight):self.innerHeight},getViewportWidth:function(){return !Ext.isStrict&&!Ext.isOpera?b.body.clientWidth:Ext.isIE?b.documentElement.clientWidth:self.innerWidth},getY:function(g){return this.getXY(g)[1]},getX:function(g){return this.getXY(g)[0]},getXY:function(A){var B,v,g,D,z,y,E=0,p=0,F,C,x=(b.body||b.documentElement),w=[0,0];A=Ext.getDom(A);if(A!=x){if(A.getBoundingClientRect){g=A.getBoundingClientRect();F=f(document).getScroll();w=[g.left+F.left,g.top+F.top]}else{B=A;C=f(A).isStyle("position","absolute");while(B){v=f(B);E+=B.offsetLeft;p+=B.offsetTop;C=C||v.isStyle("position","absolute");if(Ext.isGecko){p+=D=a(v.getStyle("borderTopWidth"),10)||0;E+=z=a(v.getStyle("borderLeftWidth"),10)||0;if(B!=A&&!v.isStyle("overflow","visible")){E+=z;p+=D}}B=B.offsetParent}if(Ext.isSafari&&C){E-=x.offsetLeft;p-=x.offsetTop}if(Ext.isGecko&&!C){y=f(x);E+=a(y.getStyle("borderLeftWidth"),10)||0;p+=a(y.getStyle("borderTopWidth"),10)||0}B=A.parentNode;while(B&&B!=x){if(!Ext.isOpera||(B.tagName!="TR"&&!f(B).isStyle("display","inline"))){E-=B.scrollLeft;p-=B.scrollTop}B=B.parentNode}w=[E,p]}}return w},setXY:function(o,n){(o=Ext.fly(o,"_setXY")).position();var m=o.translatePoints(n),p=o.dom.style,g;for(g in m){if(!isNaN(m[g])){p[g]=m[g]+"px"}}},setX:function(g,j){this.setXY(g,[j,false])},setY:function(j,g){this.setXY(j,[false,g])}}})();Ext.lib.Dom.getRegion=function(a){return Ext.lib.Region.getRegion(a)};Ext.lib.Event=function(){var L=false,P=[],am=[],X=0,ab=[],ap,R=false,ai=window,a=document,ah=200,V=20,U=0,W=1,ak=2,ag=3,T=3,b=4,Q="scrollLeft",Z="scrollTop",an="unload",aa="mouseover",c="mouseout",ao=function(){var g;if(ai.addEventListener){g=function(h,j,i,k){if(j=="mouseenter"){i=i.createInterceptor(ae);h.addEventListener(aa,i,(k))}else{if(j=="mouseleave"){i=i.createInterceptor(ae);h.addEventListener(c,i,(k))}else{h.addEventListener(j,i,(k))}}return i}}else{if(ai.attachEvent){g=function(h,j,i,k){h.attachEvent("on"+j,i);return i}}else{g=function(){}}}return g}(),al=function(){var g;if(ai.removeEventListener){g=function(h,j,i,k){if(j=="mouseenter"){j=aa}else{if(j=="mouseleave"){j=c}}h.removeEventListener(j,i,(k))}}else{if(ai.detachEvent){g=function(h,j,i){h.detachEvent("on"+j,i)}}else{g=function(){}}}return g}();var S=Ext.isGecko?function(g){return Object.prototype.toString.call(g)=="[object XULElement]"}:function(){};var ad=Ext.isGecko?function(g){try{return g.nodeType==3}catch(h){return false}}:function(g){return g.nodeType==3};function ae(h){var g=ac.getRelatedTarget(h);return !(S(g)||N(h.currentTarget,g))}function N(g,h){if(g&&g.firstChild){while(h){if(h===g){return true}try{h=h.parentNode}catch(i){return false}if(h&&(h.nodeType!=1)){h=null}}}return false}function Y(h,g,i){var j=-1;Ext.each(P,function(l,k){if(l&&l[ak]==i&&l[U]==h&&l[W]==g){j=k}});return j}function O(){var g=false,h=[],j,i=!L||(X>0);if(!R){R=true;Ext.each(ab,function(l,k,m){if(l&&(j=a.getElementById(l.id))){if(!l.checkReady||L||j.nextSibling||(a&&a.body)){j=l.override?(l.override===true?l.obj:l.override):j;l.fn.call(j,l.obj);ab[k]=null}else{h.push(l)}}});X=(h.length===0)?0:X-1;if(i){af()}else{clearInterval(ap);ap=null}g=!(R=false)}return g}function af(){if(!ap){var g=function(){O()};ap=setInterval(g,V)}}function M(){var g=a.documentElement,h=a.body;if(g&&(g[Z]||g[Q])){return[g[Q],g[Z]]}else{if(h){return[h[Q],h[Z]]}else{return[0,0]}}}function aj(g,i){g=g.browserEvent||g;var h=g["page"+i];if(!h&&h!==0){h=g["client"+i]||0;if(Ext.isIE){h+=M()[i=="X"?0:1]}}return h}var ac={onAvailable:function(i,g,h,j){ab.push({id:i,fn:g,obj:h,override:j,checkReady:false});X=ah;af()},addListener:function(h,g,i){var j;h=Ext.getDom(h);if(h&&i){if(an==g){j=!!(am[am.length]=[h,g,i])}else{P.push([h,g,i,j=ao(h,g,i,false)])}}return !!j},removeListener:function(h,l,i){var j=false,k,g;h=Ext.getDom(h);if(!i){j=this.purgeElement(h,false,l)}else{if(an==l){Ext.each(am,function(n,m,o){if(n&&n[0]==h&&n[1]==l&&n[2]==i){am.splice(m,1);j=true}})}else{k=arguments[3]||Y(h,l,i);g=P[k];if(h&&g){al(h,l,g[ag],false);g[ag]=g[ak]=null;P.splice(k,1);j=true}}}return j},getTarget:function(g){g=g.browserEvent||g;return this.resolveTextNode(g.target||g.srcElement)},resolveTextNode:function(g){return g&&!S(g)&&ad(g)?g.parentNode:g},getRelatedTarget:function(g){g=g.browserEvent||g;return this.resolveTextNode(g.relatedTarget||(g.type==c?g.toElement:g.type==aa?g.fromElement:null))},getPageX:function(g){return aj(g,"X")},getPageY:function(g){return aj(g,"Y")},getXY:function(g){return[this.getPageX(g),this.getPageY(g)]},stopEvent:function(g){this.stopPropagation(g);this.preventDefault(g)},stopPropagation:function(g){g=g.browserEvent||g;if(g.stopPropagation){g.stopPropagation()}else{g.cancelBubble=true}},preventDefault:function(g){g=g.browserEvent||g;if(g.preventDefault){g.preventDefault()}else{g.returnValue=false}},getEvent:function(g){g=g||ai.event;if(!g){var h=this.getEvent.caller;while(h){g=h.arguments[0];if(g&&Event==g.constructor){break}h=h.caller}}return g},getCharCode:function(g){g=g.browserEvent||g;return g.charCode||g.keyCode||0},_load:function(h){L=true;var g=Ext.lib.Event;if(Ext.isIE&&h!==true){al(ai,"load",arguments.callee)}},purgeElement:function(j,h,g){var i=this;Ext.each(i.getListeners(j,g),function(k){if(k){i.removeListener(j,k.type,k.fn)}});if(h&&j&&j.childNodes){Ext.each(j.childNodes,function(k){i.purgeElement(k,h,g)})}},getListeners:function(i,k){var h=this,j=[],g;if(k){g=k==an?am:P}else{g=P.concat(am)}Ext.each(g,function(m,l){if(m&&m[U]==i&&(!k||k==m[W])){j.push({type:m[W],fn:m[ak],obj:m[T],adjust:m[b],index:l})}});return j.length?j:null},_unload:function(h){var i=Ext.lib.Event,k,l,n,g,m,j;Ext.each(am,function(p){if(p){try{j=p[b]?(p[b]===true?p[T]:p[b]):ai;p[ak].call(j,i.getEvent(h),p[T])}catch(o){}}});am=null;if(P&&(l=P.length)){while(l){if((n=P[m=--l])){i.removeListener(n[U],n[W],n[ak],m)}}}al(ai,an,i._unload)}};ac.on=ac.addListener;ac.un=ac.removeListener;if(a&&a.body){ac._load(true)}else{ao(ai,"load",ac._load)}ao(ai,an,ac._unload);O();return ac}();Ext.lib.Ajax=function(){var w=["MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],z="Content-Type";function v(h){var i=h.conn,g;function j(l,k){for(g in k){if(k.hasOwnProperty(g)){l.setRequestHeader(g,k[g])}}}if(s.defaultHeaders){j(i,s.defaultHeaders)}if(s.headers){j(i,s.headers);s.headers=null}}function y(g,h,i,j){return{tId:g,status:i?-1:0,statusText:i?"transaction aborted":"communication failure",isAbort:true,isTimeout:true,argument:h}}function t(h,g){(s.headers=s.headers||{})[h]=g}function b(m,g){var k={},i,h=m.conn,l,j;try{i=m.conn.getAllResponseHeaders();Ext.each(i.replace(/\r\n/g,"\n").split("\n"),function(o){l=o.indexOf(":");if(l>=0){j=o.substr(0,l).toLowerCase();if(o.charAt(l+1)==" "){++l}k[j]=o.substr(l+1)}})}catch(n){}return{tId:m.tId,status:h.status,statusText:h.statusText,getResponseHeader:function(o){return k[o.toLowerCase()]},getAllResponseHeaders:function(){return i},responseText:h.responseText,responseXML:h.responseXML,argument:g}}function c(g){g.conn=null;g=null}function x(h,g,l,m){if(!g){c(h);return}var j,k;try{if(h.conn.status!==undefined&&h.conn.status!=0){j=h.conn.status}else{j=13030}}catch(i){j=13030}if((j>=200&&j<300)||(Ext.isIE&&j==1223)){k=b(h,g.argument);if(g.success){if(!g.scope){g.success(k)}else{g.success.apply(g.scope,[k])}}}else{switch(j){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:k=y(h.tId,g.argument,(l?l:false),m);if(g.failure){if(!g.scope){g.failure(k)}else{g.failure.apply(g.scope,[k])}}break;default:k=b(h,g.argument);if(g.failure){if(!g.scope){g.failure(k)}else{g.failure.apply(g.scope,[k])}}}}c(h);k=null}function q(j,g){g=g||{};var l=j.conn,h=j.tId,k=s.poll,i=g.timeout||null;if(i){s.timeout[h]=setTimeout(function(){s.abort(j,g,true)},i)}k[h]=setInterval(function(){if(l&&l.readyState==4){clearInterval(k[h]);k[h]=null;if(i){clearTimeout(s.timeout[h]);s.timeout[h]=null}x(j,g)}},s.pollInterval)}function u(g,j,h,k){var i=r()||null;if(i){i.conn.open(g,j,true);if(s.useDefaultXhrHeader){t("X-Requested-With",s.defaultXhrHeader)}if(k&&s.useDefaultHeader&&(!s.headers||!s.headers[z])){t(z,s.defaultPostHeader)}if(s.defaultHeaders||s.headers){v(i)}q(i,h);i.conn.send(k||null)}return i}function r(){var g;try{if(g=a(s.transactionId)){s.transactionId++}}catch(h){}finally{return g}}function a(g){var j;try{j=new XMLHttpRequest()}catch(h){for(var i=0;i<w.length;++i){try{j=new ActiveXObject(w[i]);break}catch(h){}}}finally{return{conn:j,tId:g}}}var s={request:function(h,o,n,m,i){if(i){var l=this,g=i.xmlData,k=i.jsonData,j;Ext.applyIf(l,i);if(g||k){j=l.headers;if(!j||!j[z]){t(z,g?"text/xml":"application/json")}m=g||(Ext.isObject(k)?Ext.encode(k):k)}}return u(h||i.method||"POST",o,n,m)},serializeForm:function(g){var p=g.elements||(document.forms[g]||Ext.getDom(g)).elements,j=false,k=encodeURIComponent,m,i,h,o,n="",l;Ext.each(p,function(B){h=B.name;l=B.type;if(!B.disabled&&h){if(/select-(one|multiple)/i.test(l)){Ext.each(B.options,function(A){if(A.selected){n+=String.format("{0}={1}&",k(h),(A.hasAttribute?A.hasAttribute("value"):A.getAttributeNode("value").specified)?A.value:A.text)}})}else{if(!/file|undefined|reset|button/i.test(l)){if(!(/radio|checkbox/i.test(l)&&!B.checked)&&!(l=="submit"&&j)){n+=k(h)+"="+k(B.value)+"&";j=/submit/i.test(l)}}}}});return n.substr(0,n.length-1)},useDefaultHeader:true,defaultPostHeader:"application/x-www-form-urlencoded; charset=UTF-8",useDefaultXhrHeader:true,defaultXhrHeader:"XMLHttpRequest",poll:{},timeout:{},pollInterval:50,transactionId:0,abort:function(i,g,l){var j=this,h=i.tId,k=false;if(j.isCallInProgress(i)){i.conn.abort();clearInterval(j.poll[h]);j.poll[h]=null;if(l){j.timeout[h]=null}x(i,g,(k=true),l)}return k},isCallInProgress:function(g){return g.conn&&!{0:true,4:true}[g.conn.readyState]}};return s}();Ext.lib.Region=function(c,a,j,i){var b=this;b.top=c;b[1]=c;b.right=a;b.bottom=j;b.left=i;b[0]=i};Ext.lib.Region.prototype={contains:function(a){var b=this;return(a.left>=b.left&&a.right<=b.right&&a.top>=b.top&&a.bottom<=b.bottom)},getArea:function(){var a=this;return((a.bottom-a.top)*(a.right-a.left))},intersect:function(a){var b=this,j=Math.max(b.top,a.top),c=Math.min(b.right,a.right),l=Math.min(b.bottom,a.bottom),k=Math.max(b.left,a.left);if(l>=j&&c>=k){return new Ext.lib.Region(j,c,l,k)}},union:function(a){var b=this,j=Math.min(b.top,a.top),c=Math.max(b.right,a.right),l=Math.max(b.bottom,a.bottom),k=Math.min(b.left,a.left);return new Ext.lib.Region(j,c,l,k)},constrainTo:function(a){var b=this;b.top=b.top.constrain(a.top,a.bottom);b.bottom=b.bottom.constrain(a.top,a.bottom);b.left=b.left.constrain(a.left,a.right);b.right=b.right.constrain(a.left,a.right);return b},adjust:function(c,i,j,a){var b=this;b.top+=c;b.left+=i;b.right+=a;b.bottom+=j;return b}};Ext.lib.Region.getRegion=function(c){var a=Ext.lib.Dom.getXY(c),j=a[1],b=a[0]+c.offsetWidth,l=a[1]+c.offsetHeight,k=a[0];return new Ext.lib.Region(j,b,l,k)};Ext.lib.Point=function(c,a){if(Ext.isArray(c)){a=c[1];c=c[0]}var b=this;b.x=b.right=b.left=b[0]=c;b.y=b.top=b.bottom=b[1]=a};Ext.lib.Point.prototype=new Ext.lib.Region();(function(){var k=Ext.lib,b=/width|height|opacity|padding/i,l=/^((width|height)|(top|left))$/,n=/width|height|top$|bottom$|left$|right$/i,c=/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i,a=function(g){return typeof g!=="undefined"},m=function(){return new Date()};k.Anim={motion:function(r,h,q,j,i,g){return this.run(r,h,q,j,i,g,Ext.lib.Motion)},run:function(u,h,s,j,i,v,g){g=g||Ext.lib.AnimBase;if(typeof j=="string"){j=Ext.lib.Easing[j]}var t=new g(u,h,s,j);t.animateX(function(){if(Ext.isFunction(i)){i.call(v)}});return t}};k.AnimBase=function(h,i,g,j){if(h){this.init(h,i,g,j)}};k.AnimBase.prototype={doMethod:function(i,j,h){var g=this;return g.method(g.curFrame,j,h-j,g.totalFrames)},setAttr:function(i,g,h){if(b.test(i)&&g<0){g=0}Ext.fly(this.el,"_anim").setStyle(i,g+h)},getAttr:function(i){var g=Ext.fly(this.el),j=g.getStyle(i),h=l.exec(i)||[];if(j!=="auto"&&!c.test(j)){return parseFloat(j)}return(!!(h[2])||(g.getStyle("position")=="absolute"&&!!(h[3])))?g.dom["offset"+h[0].charAt(0).toUpperCase()+h[0].substr(1)]:0},getDefaultUnit:function(g){return n.test(g)?"px":""},animateX:function(j,i){var h=this,g=function(){h.onComplete.removeListener(g);if(Ext.isFunction(j)){j.call(i||h,h)}};h.onComplete.addListener(g,h);h.animate()},setRunAttr:function(u){var i=this,h=this.attributes[u],g=h.to,j=h.by,z=h.from,y=h.unit,w=(this.runAttrs[u]={}),v;if(!a(g)&&!a(j)){return false}var x=a(z)?z:i.getAttr(u);if(a(g)){v=g}else{if(a(j)){if(Ext.isArray(x)){v=[];Ext.each(x,function(p,o){v[o]=p+j[o]})}else{v=x+j}}}Ext.apply(w,{start:x,end:v,unit:a(y)?y:i.getDefaultUnit(u)})},init:function(w,i,j,x){var g=this,u=0,z=k.AnimMgr;Ext.apply(g,{isAnimated:false,startTime:null,el:Ext.getDom(w),attributes:i||{},duration:j||1,method:x||k.Easing.easeNone,useSec:true,curFrame:0,totalFrames:z.fps,runAttrs:{},animate:function(){var p=this,o=p.duration;if(p.isAnimated){return false}p.curFrame=0;p.totalFrames=p.useSec?Math.ceil(z.fps*o):o;z.registerElement(p)},stop:function(p){var o=this;if(p){o.curFrame=o.totalFrames;o._onTween.fire()}z.stop(o)}});var y=function(){var o=this,p;o.onStart.fire();o.runAttrs={};for(p in this.attributes){this.setRunAttr(p)}o.isAnimated=true;o.startTime=m();u=0};var h=function(){var p=this;p.onTween.fire({duration:m()-p.startTime,curFrame:p.curFrame});var o=p.runAttrs;for(var q in o){this.setAttr(q,p.doMethod(q,o[q].start,o[q].end),o[q].unit)}++u};var v=function(){var q=this,o=(m()-q.startTime)/1000,p={duration:o,frames:u,fps:u/o};q.isAnimated=false;u=0;q.onComplete.fire(p)};g.onStart=new Ext.util.Event(g);g.onTween=new Ext.util.Event(g);g.onComplete=new Ext.util.Event(g);(g._onStart=new Ext.util.Event(g)).addListener(y);(g._onTween=new Ext.util.Event(g)).addListener(h);(g._onComplete=new Ext.util.Event(g)).addListener(v)}};Ext.lib.AnimMgr=new function(){var q=this,g=null,h=[],i=0;Ext.apply(q,{fps:1000,delay:1,registerElement:function(o){h.push(o);++i;o._onStart.fire();q.start()},unRegister:function(o,p){o._onComplete.fire();p=p||j(o);if(p!=-1){h.splice(p,1)}if(--i<=0){q.stop()}},start:function(){if(g===null){g=setInterval(q.run,q.delay)}},stop:function(o){if(!o){clearInterval(g);for(var p=0,t=h.length;p<t;++p){if(h[0].isAnimated){q.unRegister(h[0],0)}}h=[];g=null;i=0}else{q.unRegister(o)}},run:function(){var o;Ext.each(h,function(p){if(p&&p.isAnimated){o=p.totalFrames;if(p.curFrame<o||o===null){++p.curFrame;if(p.useSec){r(p)}p._onTween.fire()}else{q.stop(p)}}},q)}});var j=function(o){var p=-1;Ext.each(h,function(u,v){if(u==o){p=v;return false}});return p};var r=function(A){var p=A.totalFrames,x=A.curFrame,y=A.duration,z=(x*y*1000/p),B=(m()-A.startTime),o=0;if(B<y*1000){o=Math.round((B/z-1)*x)}else{o=p-(x+1)}if(o>0&&isFinite(o)){if(A.curFrame+o>=p){o=p-(x+1)}A.curFrame+=o}}};k.Bezier=new function(){this.getPosition=function(t,u){var j=t.length,g=[],s=1-u,h,i;for(h=0;h<j;++h){g[h]=[t[h][0],t[h][1]]}for(i=1;i<j;++i){for(h=0;h<j-i;++h){g[h][0]=s*g[h][0]+u*g[parseInt(h+1,10)][0];g[h][1]=s*g[h][1]+u*g[parseInt(h+1,10)][1]}}return[g[0][0],g[0][1]]}};k.Easing={easeNone:function(h,i,j,g){return j*h/g+i},easeIn:function(h,i,j,g){return j*(h/=g)*h+i},easeOut:function(h,i,j,g){return -j*(h/=g)*(h-2)+i}};(function(){k.Motion=function(u,v,t,s){if(u){k.Motion.superclass.constructor.call(this,u,v,t,s)}};Ext.extend(k.Motion,Ext.lib.AnimBase);var j=k.Motion.superclass,g=k.Motion.prototype,h=/^points$/i;Ext.apply(k.Motion.prototype,{setAttr:function(x,t,u){var v=this,w=j.setAttr;if(h.test(x)){u=u||"px";w.call(v,"left",t[0],u);w.call(v,"top",t[1],u)}else{w.call(v,x,t,u)}},getAttr:function(t){var r=this,s=j.getAttr;return h.test(t)?[s.call(r,"left"),s.call(r,"top")]:s.call(r,t)},doMethod:function(v,s,u){var t=this;return h.test(v)?k.Bezier.getPosition(t.runAttrs[v],t.method(t.curFrame,0,100,t.totalFrames)/100):j.doMethod.call(t,v,s,u)},setRunAttr:function(M){if(h.test(M)){var K=this,D=this.el,H=this.attributes.points,O=H.control||[],J=H.from,I=H.to,L=H.by,F=k.Dom,E,P,C,N,G;if(O.length>0&&!Ext.isArray(O[0])){O=[O]}else{}Ext.fly(D,"_anim").position();F.setXY(D,a(J)?J:F.getXY(D));E=K.getAttr("points");if(a(I)){C=i.call(K,I,E);for(P=0,N=O.length;P<N;++P){O[P]=i.call(K,O[P],E)}}else{if(a(L)){C=[E[0]+L[0],E[1]+L[1]];for(P=0,N=O.length;P<N;++P){O[P]=[E[0]+O[P][0],E[1]+O[P][1]]}}}G=this.runAttrs[M]=[E];if(O.length>0){G=G.concat(O)}G[G.length]=C}else{j.setRunAttr.call(this,M)}}});var i=function(t,r){var s=k.Dom.getXY(this.el);return[t[0]-s[0]+r[0],t[1]-s[1]+r[1]]}})()})();(function(){var l=Math.abs,a=Math.PI,b=Math.asin,c=Math.pow,k=Math.sin,j=Ext.lib;Ext.apply(j.Easing,{easeBoth:function(i,n,g,h){return((i/=h/2)<1)?g/2*i*i+n:-g/2*((--i)*(i-2)-1)+n},easeInStrong:function(i,n,g,h){return g*(i/=h)*i*i*i+n},easeOutStrong:function(i,n,g,h){return -g*((i=i/h-1)*i*i*i-1)+n},easeBothStrong:function(i,n,g,h){return((i/=h/2)<1)?g/2*i*i*i*i+n:-g/2*((i-=2)*i*i*i-2)+n},elasticIn:function(h,p,r,s,i,t){if(h==0||(h/=s)==1){return h==0?p:p+r}t=t||(s*0.3);var g;if(i>=l(r)){g=t/(2*a)*b(r/i)}else{i=r;g=t/4}return -(i*c(2,10*(h-=1))*k((h*s-g)*(2*a)/t))+p},elasticOut:function(h,p,r,s,i,t){if(h==0||(h/=s)==1){return h==0?p:p+r}t=t||(s*0.3);var g;if(i>=l(r)){g=t/(2*a)*b(r/i)}else{i=r;g=t/4}return i*c(2,-10*h)*k((h*s-g)*(2*a)/t)+r+p},elasticBoth:function(h,p,r,s,i,t){if(h==0||(h/=s/2)==2){return h==0?p:p+r}t=t||(s*(0.3*1.5));var g;if(i>=l(r)){g=t/(2*a)*b(r/i)}else{i=r;g=t/4}return h<1?-0.5*(i*c(2,10*(h-=1))*k((h*s-g)*(2*a)/t))+p:i*c(2,-10*(h-=1))*k((h*s-g)*(2*a)/t)*0.5+r+p},backIn:function(i,o,p,g,h){h=h||1.70158;return p*(i/=g)*i*((h+1)*i-h)+o},backOut:function(i,o,p,g,h){if(!h){h=1.70158}return p*((i=i/g-1)*i*((h+1)*i+h)+1)+o},backBoth:function(i,o,p,g,h){h=h||1.70158;return((i/=g/2)<1)?p/2*(i*i*(((h*=(1.525))+1)*i-h))+o:p/2*((i-=2)*i*(((h*=(1.525))+1)*i+h)+2)+o},bounceIn:function(i,n,g,h){return g-j.Easing.bounceOut(h-i,0,g,h)+n},bounceOut:function(i,n,g,h){if((i/=h)<(1/2.75)){return g*(7.5625*i*i)+n}else{if(i<(2/2.75)){return g*(7.5625*(i-=(1.5/2.75))*i+0.75)+n}else{if(i<(2.5/2.75)){return g*(7.5625*(i-=(2.25/2.75))*i+0.9375)+n}}}return g*(7.5625*(i-=(2.625/2.75))*i+0.984375)+n},bounceBoth:function(i,n,g,h){return(i<h/2)?j.Easing.bounceIn(i*2,0,g,h)*0.5+n:j.Easing.bounceOut(i*2-h,0,g,h)*0.5+g*0.5+n}})})();(function(){var n=Ext.lib;n.Anim.color=function(j,l,i,h,g,k){return n.Anim.run(j,l,i,h,g,k,n.ColorAnim)};n.ColorAnim=function(j,g,i,h){n.ColorAnim.superclass.constructor.call(this,j,g,i,h)};Ext.extend(n.ColorAnim,n.AnimBase);var c=n.ColorAnim.superclass,m=/color$/i,p=/^transparent|rgba\(0, 0, 0, 0\)$/,a=/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i,r=/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i,q=/^#?([0-9A-F]{1})([0-9A-F]{1})([0-9A-F]{1})$/i,o=function(g){return typeof g!=="undefined"};function b(k){var i=parseInt,j,g=null,h;if(k.length==3){return k}Ext.each([r,a,q],function(l,t){j=(t%2==0)?16:10;h=l.exec(k);if(h&&h.length==4){g=[i(h[1],j),i(h[2],j),i(h[3],j)];return false}});return g}Ext.apply(n.ColorAnim.prototype,{getAttr:function(g){var i=this,j=i.el,h;if(m.test(g)){while(j&&p.test(h=Ext.fly(j).getStyle(g))){j=j.parentNode;h="fff"}}else{h=c.getAttr.call(i,g)}return h},doMethod:function(g,h,l){var j=this,i,k=Math.floor;if(m.test(g)){i=[];Ext.each(h,function(v,u){i[u]=c.doMethod.call(j,g,v,l[u])});i="rgb("+k(i[0])+","+k(i[1])+","+k(i[2])+")"}else{i=c.doMethod.call(j,g,h,l)}return i},setRunAttr:function(g){var l=this,u=l.attributes[g],h=u.to,k=u.by,j;c.setRunAttr.call(l,g);j=l.runAttrs[g];if(m.test(g)){var i=b(j.start),v=b(j.end);if(!o(h)&&o(k)){v=b(k);Ext.each(i,function(s,t){v[t]=s+v[t]})}j.start=i;j.end=v}}})})();(function(){var c=Ext.lib;c.Anim.scroll=function(o,q,n,m,r,p){return c.Anim.run(o,q,n,m,r,p,c.Scroll)};c.Scroll=function(m,n,l,k){if(m){c.Scroll.superclass.constructor.call(this,m,n,l,k)}};Ext.extend(c.Scroll,c.ColorAnim);var a=c.Scroll.superclass,b="scroll";Ext.apply(c.Scroll.prototype,{doMethod:function(t,n,s){var p,q=this,o=q.curFrame,r=q.totalFrames;if(t==b){p=[q.method(o,n[0],s[0]-n[0],r),q.method(o,n[1],s[1]-n[1],r)]}else{p=a.doMethod.call(q,t,n,s)}return p},getAttr:function(j){var i=this;if(j==b){return[i.el.scrollLeft,i.el.scrollTop]}else{return a.getAttr.call(i,j)}},setAttr:function(n,k,l){var m=this;if(n==b){m.el.scrollLeft=k[0];m.el.scrollTop=k[1]}else{a.setAttr.call(m,n,k,l)}}})})();if(Ext.isIE){function e(){var a=Function.prototype;delete a.createSequence;delete a.defer;delete a.createDelegate;delete a.createCallback;delete a.createInterceptor;window.detachEvent("onunload",e)}window.attachEvent("onunload",e)}})();;;Ext.DomHelper=function(){var t=null,C=/^(?:br|frame|hr|img|input|link|meta|range|spacer|wbr|area|param|col)$/i,A=/^table|tbody|tr|td$/i,w,z="afterbegin",y="afterend",I="beforebegin",x="beforeend",K="<table>",E="</table>",J=K+"<tbody>",D="</tbody>"+E,B=J+"<tr>",u="</tr>"+D;function F(b,h,a,g,c,e){var d=w.insertHtml(g,Ext.getDom(b),v(h));return a?Ext.get(d,true):d}function v(h){var c="",d,a,b,e,g;if(typeof h=="string"){c=h}else{if(Ext.isArray(h)){Ext.each(h,function(i){c+=v(i)})}else{c+="<"+(h.tag=h.tag||"div");Ext.iterate(h,function(i,j){if(!/tag|children|cn|html$/i.test(i)){if(Ext.isObject(j)){c+=" "+i+"='";Ext.iterate(j,function(k,l){c+=k+":"+l+";"});c+="'"}else{c+=" "+({cls:"class",htmlFor:"for"}[i]||i)+"='"+j+"'"}}});if(C.test(h.tag)){c+="/>"}else{c+=">";if((g=h.children||h.cn)){c+=v(g)}else{if(h.html){c+=h.html}}c+="</"+h.tag+">"}}}return c}function G(g,b,c,a){t.innerHTML=[b,c,a].join("");var e=-1,d=t;while(++e<g){d=d.firstChild}return d}function H(e,d,b,c){var a,g;t=t||document.createElement("div");if(e=="td"&&(d==z||d==x)||!/td|tr|tbody/i.test(e)&&(d==I||d==y)){return}g=d==I?b:d==y?b.nextSibling:d==z?b.firstChild:null;if(d==I||d==y){b=b.parentNode}if(e=="td"||(e=="tr"&&(d==x||d==z))){a=G(4,B,c,u)}else{if((e=="tbody"&&(d==x||d==z))||(e=="tr"&&(d==I||d==y))){a=G(3,J,c,D)}else{a=G(2,K,c,E)}}b.insertBefore(a,g);return a}w={markup:function(a){return v(a)},insertHtml:function(e,k,d){var g={},i,b,c,a,h,j;e=e.toLowerCase();g[I]=["BeforeBegin","previousSibling"];g[y]=["AfterEnd","nextSibling"];if(k.insertAdjacentHTML){if(A.test(k.tagName)&&(j=H(k.tagName.toLowerCase(),e,k,d))){return j}g[z]=["AfterBegin","firstChild"];g[x]=["BeforeEnd","lastChild"];if((i=g[e])){k.insertAdjacentHTML(i[0],d);return k[i[1]]}}else{c=k.ownerDocument.createRange();b="setStart"+(/end/i.test(e)?"After":"Before");if(g[e]){c[b](k);a=c.createContextualFragment(d);k.parentNode.insertBefore(a,e==I?k:k.nextSibling);return k[(e==I?"previous":"next")+"Sibling"]}else{h=(e==z?"first":"last")+"Child";if(k.firstChild){c[b](k[h]);a=c.createContextualFragment(d);if(e==z){k.insertBefore(a,k.firstChild)}else{k.appendChild(a)}}else{k.innerHTML=d}return k[h]}}throw'Illegal insertion point -> "'+e+'"'},insertBefore:function(c,a,b){return F(c,a,b,I)},insertAfter:function(c,a,b){return F(c,a,b,y,"nextSibling")},insertFirst:function(c,a,b){return F(c,a,b,z,"firstChild")},append:function(c,a,b){return F(c,a,b,x,"",true)},overwrite:function(c,a,b){c=Ext.getDom(c);c.innerHTML=v(a);return b?Ext.get(c.firstChild):c.firstChild},createHtml:v};return w}();Ext.apply(Ext.DomHelper,function(){var n,j="afterbegin",l="afterend",k="beforebegin",o="beforeend";function m(b,h,a,g,c,e){b=Ext.getDom(b);var d;if(n.useDom){d=i(h,null);if(e){b.appendChild(d)}else{(c=="firstChild"?b:b.parentNode).insertBefore(d,b[c]||b)}}else{d=Ext.DomHelper.insertHtml(g,b,Ext.DomHelper.createHtml(h))}return a?Ext.get(d,true):d}function i(h,d){var b,a=document,c,e,r,g;if(Ext.isArray(h)){b=a.createDocumentFragment();Ext.each(h,function(p){i(p,b)})}else{if(Ext.isString(h)){b=a.createTextNode(h)}else{b=a.createElement(h.tag||"div");c=!!b.setAttribute;Ext.iterate(h,function(q,p){if(!/tag|children|cn|html|style/.test(q)){if(q=="cls"){b.className=p}else{if(c){b.setAttribute(q,p)}else{b[q]=p}}}});n.applyStyles(b,h.style);if((g=h.children||h.cn)){i(g,b)}else{if(h.html){b.innerHTML=h.html}}}}if(d){d.appendChild(b)}return b}n={createTemplate:function(a){var b=Ext.DomHelper.createHtml(a);return new Ext.Template(b)},useDom:false,applyStyles:function(a,e){if(e){var c=0,d,b;a=Ext.fly(a);if(Ext.isFunction(e)){e=e.call()}if(Ext.isString(e)){e=e.trim().split(/\s*(?::|;)\s*/);for(d=e.length;c<d;){a.setStyle(e[c++],e[c++])}}else{if(Ext.isObject(e)){a.setStyle(e)}}}},insertBefore:function(c,a,b){return m(c,a,b,k)},insertAfter:function(c,a,b){return m(c,a,b,l,"nextSibling")},insertFirst:function(c,a,b){return m(c,a,b,j,"firstChild")},append:function(c,a,b){return m(c,a,b,o,"",true)},createDom:i};return n}());Ext.Template=function(h){var g=this,a=arguments,i=[];if(Ext.isArray(h)){h=h.join("")}else{if(a.length>1){Ext.each(a,function(b){if(Ext.isObject(b)){Ext.apply(g,b)}else{i.push(b)}});h=i.join("")}}g.html=h;if(g.compiled){g.compile()}};Ext.Template.prototype={applyTemplate:function(d){var c=this;return c.compiled?c.compiled(d):c.html.replace(c.re,function(b,a){return d[a]!==undefined?d[a]:""})},set:function(e,g){var d=this;d.html=e;d.compiled=null;return g?d.compile():d},re:/\{([\w-]+)\}/g,compile:function(){var me=this,sep=Ext.isGecko?"+":",";function fn(m,name){name="values['"+name+"']";return"'"+sep+"("+name+" == undefined ? '' : "+name+")"+sep+"'"}eval("this.compiled = function(values){ return "+(Ext.isGecko?"'":"['")+me.html.replace(/\\/g,"\\\\").replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn)+(Ext.isGecko?"';};":"'].join('');};"));return me},insertFirst:function(d,e,g){return this.doInsert("afterBegin",d,e,g)},insertBefore:function(d,e,g){return this.doInsert("beforeBegin",d,e,g)},insertAfter:function(d,e,g){return this.doInsert("afterEnd",d,e,g)},append:function(d,e,g){return this.doInsert("beforeEnd",d,e,g)},doInsert:function(k,i,g,h){i=Ext.getDom(i);var j=Ext.DomHelper.insertHtml(k,i,this.applyTemplate(g));return h?Ext.get(j,true):j},overwrite:function(d,e,g){d=Ext.getDom(d);d.innerHTML=this.applyTemplate(e);return g?Ext.get(d.firstChild,true):d.firstChild}};Ext.Template.prototype.apply=Ext.Template.prototype.applyTemplate;Ext.Template.from=function(c,d){c=Ext.getDom(c);return new Ext.Template(c.value||c.innerHTML,d||"")};Ext.apply(Ext.Template.prototype,{applyTemplate:function(h){var j=this,i=j.disableFormats!==true,k=Ext.util.Format,m=j;if(j.compiled){return j.compiled(h)}function l(c,a,e,b){if(e&&i){if(e.substr(0,5)=="this."){return m.call(e.substr(5),h[a],h)}else{if(b){var g=/^\s*['"](.*)["']\s*$/;b=b.split(",");for(var q=0,d=b.length;q<d;q++){b[q]=b[q].replace(g,"$1")}b=[h[a]].concat(b)}else{b=[h[a]]}return k[e].apply(k,b)}}else{return h[a]!==undefined?h[a]:""}}return j.html.replace(j.re,l)},disableFormats:false,re:/\{([\w-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g,compile:function(){var me=this,fm=Ext.util.Format,useF=me.disableFormats!==true,sep=Ext.isGecko?"+":",",body;function fn(m,name,format,args){if(format&&useF){args=args?","+args:"";if(format.substr(0,5)!="this."){format="fm."+format+"("}else{format='this.call("'+format.substr(5)+'", ';args=", values"}}else{args="";format="(values['"+name+"'] == undefined ? '' : "}return"'"+sep+format+"values['"+name+"']"+args+")"+sep+"'"}if(Ext.isGecko){body="this.compiled = function(values){ return '"+me.html.replace(/\\/g,"\\\\").replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn)+"';};"}else{body=["this.compiled = function(values){ return ['"];body.push(me.html.replace(/\\/g,"\\\\").replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn));body.push("'].join('');};");body=body.join("")}eval(body);return me},call:function(g,d,e){return this[g](d,e)}});Ext.Template.prototype.apply=Ext.Template.prototype.applyTemplate;Ext.DomQuery=function(){var cache={},simpleCache={},valueCache={},nonSpace=/\S/,trimRe=/^\s+|\s+$/g,tplRe=/\{(\d+)\}/g,modeRe=/^(\s?[\/>+~]\s?|\s|$)/,tagTokenRe=/^(#)?([\w-\*]+)/,nthRe=/(\d*)n\+?(\d*)/,nthRe2=/\D/,isIE=window.ActiveXObject?true:false,isOpera=Ext.isOpera,key=30803;eval("var batch = 30803;");function child(p,index){var i=0,n=p.firstChild;while(n){if(n.nodeType==1){if(++i==index){return n}}n=n.nextSibling}return null}function next(n){while((n=n.nextSibling)&&n.nodeType!=1){}return n}function prev(n){while((n=n.previousSibling)&&n.nodeType!=1){}return n}function children(d){var n=d.firstChild,ni=-1,nx;while(n){nx=n.nextSibling;if(n.nodeType==3&&!nonSpace.test(n.nodeValue)){d.removeChild(n)}else{n.nodeIndex=++ni}n=nx}return this}function byClassName(c,a,v){if(!v){return c}var r=[],ri=-1,cn;for(var i=0,ci;ci=c[i];i++){if((" "+ci.className+" ").indexOf(v)!=-1){r[++ri]=ci}}return r}function attrValue(n,attr){if(!n.tagName&&typeof n.length!="undefined"){n=n[0]}if(!n){return null}if(attr=="for"){return n.htmlFor}if(attr=="class"||attr=="className"){return n.className}return n.getAttribute(attr)||n[attr]}function getNodes(ns,mode,tagName){var result=[],ri=-1,cs;if(!ns){return result}tagName=tagName||"*";if(typeof ns.getElementsByTagName!="undefined"){ns=[ns]}if(!mode){for(var i=0,ni;ni=ns[i];i++){cs=ni.getElementsByTagName(tagName);for(var j=0,ci;ci=cs[j];j++){result[++ri]=ci}}}else{if(mode=="/"||mode==">"){var utag=tagName.toUpperCase();for(var i=0,ni,cn;ni=ns[i];i++){cn=isOpera?ni.childNodes:(ni.children||ni.childNodes);for(var j=0,cj;cj=cn[j];j++){if(cj.nodeName==utag||cj.nodeName==tagName||tagName=="*"){result[++ri]=cj}}}}else{if(mode=="+"){var utag=tagName.toUpperCase();for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(n&&(n.nodeName==utag||n.nodeName==tagName||tagName=="*")){result[++ri]=n}}}else{if(mode=="~"){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 r=[],ri=-1;tagName=tagName.toLowerCase();for(var i=0,ci;ci=cs[i];i++){if(ci.nodeType==1&&ci.tagName.toLowerCase()==tagName){r[++ri]=ci}}return r}function byId(cs,attr,id){if(cs.tagName||cs==document){cs=[cs]}if(!id){return cs}var r=[],ri=-1;for(var i=0,ci;ci=cs[i];i++){if(ci&&ci.id==id){r[++ri]=ci;return r}}return r}function byAttribute(cs,attr,value,op,custom){var r=[],ri=-1,st=custom=="{",f=Ext.DomQuery.operators[op];for(var i=0,ci;ci=cs[i];i++){if(ci.nodeType!=1){continue}var a;if(st){a=Ext.DomQuery.getStyle(ci,attr)}else{if(attr=="class"||attr=="className"){a=ci.className}else{if(attr=="for"){a=ci.htmlFor}else{if(attr=="href"){a=ci.getAttribute("href",2)}else{a=ci.getAttribute(attr)}}}}if((f&&f(a,value))||(!f&&a)){r[++ri]=ci}}return r}function byPseudo(cs,name,value){return Ext.DomQuery.pseudos[name](cs,value)}function nodupIEXml(cs){var d=++key,r;cs[0].setAttribute("_nodup",d);r=[cs[0]];for(var i=1,len=cs.length;i<len;i++){var c=cs[i];if(!c.getAttribute("_nodup")!=d){c.setAttribute("_nodup",d);r[r.length]=c}}for(var i=0,len=cs.length;i<len;i++){cs[i].removeAttribute("_nodup")}return r}function nodup(cs){if(!cs){return[]}var len=cs.length,c,i,r=cs,cj,ri=-1;if(!len||typeof cs.nodeType!="undefined"||len==1){return cs}if(isIE&&typeof cs[0].selectSingleNode!="undefined"){return nodupIEXml(cs)}var d=++key;cs[0]._nodup=d;for(i=1;c=cs[i];i++){if(c._nodup!=d){c._nodup=d}else{r=[];for(var j=0;j<i;j++){r[++ri]=cs[j]}for(j=i+1;cj=cs[j];j++){if(cj._nodup!=d){cj._nodup=d;r[++ri]=cj}}return r}}return r}function quickDiffIEXml(c1,c2){var d=++key,r=[];for(var i=0,len=c1.length;i<len;i++){c1[i].setAttribute("_qdiff",d)}for(var i=0,len=c2.length;i<len;i++){if(c2[i].getAttribute("_qdiff")!=d){r[r.length]=c2[i]}}for(var i=0,len=c1.length;i<len;i++){c1[i].removeAttribute("_qdiff")}return r}function quickDiff(c1,c2){var len1=c1.length,d=++key,r=[];if(!len1){return c2}if(isIE&&c1[0].selectSingleNode){return quickDiffIEXml(c1,c2)}for(var i=0;i<len1;i++){c1[i]._qdiff=d}for(var i=0,len=c2.length;i<len;i++){if(c2[i]._qdiff!=d){r[r.length]=c2[i]}}return r}function quickId(ns,mode,root,id){if(ns==root){var d=root.ownerDocument||root;return d.getElementById(id)}ns=getNodes(ns,mode,"*");return byId(ns,null,id)}return{getStyle:function(el,name){return Ext.fly(el).getStyle(name)},compile:function(path,type){type=type||"select";var fn=["var f = function(root){\n var mode; ++batch; var n = root || document;\n"],q=path,mode,lq,tk=Ext.DomQuery.matchers,tklen=tk.length,mm,lmode=q.match(modeRe);if(lmode&&lmode[1]){fn[fn.length]='mode="'+lmode[1].replace(trimRe,"")+'";';q=q.replace(lmode[1],"")}while(path.substr(0,1)=="/"){path=path.substr(1)}while(q&&lq!=q){lq=q;var tm=q.match(tagTokenRe);if(type=="select"){if(tm){if(tm[1]=="#"){fn[fn.length]='n = quickId(n, mode, root, "'+tm[2]+'");'}else{fn[fn.length]='n = getNodes(n, mode, "'+tm[2]+'");'}q=q.replace(tm[0],"")}else{if(q.substr(0,1)!="@"){fn[fn.length]='n = getNodes(n, mode, "*");'}}}else{if(tm){if(tm[1]=="#"){fn[fn.length]='n = byId(n, null, "'+tm[2]+'");'}else{fn[fn.length]='n = byTag(n, "'+tm[2]+'");'}q=q.replace(tm[0],"")}}while(!(mm=q.match(modeRe))){var matched=false;for(var j=0;j<tklen;j++){var t=tk[j];var m=q.match(t.re);if(m){fn[fn.length]=t.select.replace(tplRe,function(x,i){return m[i]});q=q.replace(m[0],"");matched=true;break}}if(!matched){throw'Error parsing selector, parsing failed at "'+q+'"'}}if(mm[1]){fn[fn.length]='mode="'+mm[1].replace(trimRe,"")+'";';q=q.replace(mm[1],"")}}fn[fn.length]="return nodup(n);\n}";eval(fn.join(""));return f},select:function(path,root,type){if(!root||root==document){root=document}if(typeof root=="string"){root=document.getElementById(root)}var paths=path.split(","),results=[];for(var i=0,len=paths.length;i<len;i++){var p=paths[i].replace(trimRe,"");if(!cache[p]){cache[p]=Ext.DomQuery.compile(p);if(!cache[p]){throw p+" is not a valid selector"}}var result=cache[p](root);if(result&&result!=document){results=results.concat(result)}}if(paths.length>1){return nodup(results)}return results},selectNode:function(path,root){return Ext.DomQuery.select(path,root)[0]},selectValue:function(path,root,defaultValue){path=path.replace(trimRe,"");if(!valueCache[path]){valueCache[path]=Ext.DomQuery.compile(path,"select")}var n=valueCache[path](root),v;n=n[0]?n[0]:n;v=(n&&n.firstChild?n.firstChild.nodeValue:null);return((v===null||v===undefined||v==="")?defaultValue:v)},selectNumber:function(path,root,defaultValue){var v=Ext.DomQuery.selectValue(path,root,defaultValue||0);return parseFloat(v)},is:function(el,ss){if(typeof el=="string"){el=document.getElementById(el)}var isArray=Ext.isArray(el),result=Ext.DomQuery.filter(isArray?el:[el],ss);return isArray?(result.length==el.length):(result.length>0)},filter:function(els,ss,nonMatches){ss=ss.replace(trimRe,"");if(!simpleCache[ss]){simpleCache[ss]=Ext.DomQuery.compile(ss,"simple")}var result=simpleCache[ss](els);return nonMatches?quickDiff(result,els):result},matchers:[{re:/^\.([\w-]+)/,select:'n = byClassName(n, null, " {1} ");'},{re:/^\:([\w-]+)(?:\(((?:[^\s>\/]*|.*?))\))?/,select:'n = byPseudo(n, "{1}", "{2}");'},{re:/^(?:([\[\{])(?:@)?([\w-]+)\s?(?:(=|.=)\s?['"]?(.*?)["']?)?[\]\}])/,select:'n = byAttribute(n, "{2}", "{4}", "{3}", "{1}");'},{re:/^#([\w-]+)/,select:'n = byId(n, null, "{1}");'},{re:/^@([\w-]+)/,select:'return {firstChild:{nodeValue:attrValue(n, "{1}")}};'}],operators:{"=":function(a,v){return a==v},"!=":function(a,v){return a!=v},"^=":function(a,v){return a&&a.substr(0,v.length)==v},"$=":function(a,v){return a&&a.substr(a.length-v.length)==v},"*=":function(a,v){return a&&a.indexOf(v)!==-1},"%=":function(a,v){return(a%v)==0},"|=":function(a,v){return a&&(a==v||a.substr(0,v.length+1)==v+"-")},"~=":function(a,v){return a&&(" "+a+" ").indexOf(" "+v+" ")!=-1}},pseudos:{"first-child":function(c){var r=[],ri=-1,n;for(var i=0,ci;ci=n=c[i];i++){while((n=n.previousSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci}}return r},"last-child":function(c){var r=[],ri=-1,n;for(var i=0,ci;ci=n=c[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci}}return r},"nth-child":function(c,a){var r=[],ri=-1,m=nthRe.exec(a=="even"&&"2n"||a=="odd"&&"2n+1"||!nthRe2.test(a)&&"n+"+a||a),f=(m[1]||1)-0,l=m[2]-0;for(var i=0,n;n=c[i];i++){var pn=n.parentNode;if(batch!=pn._batch){var j=0;for(var cn=pn.firstChild;cn;cn=cn.nextSibling){if(cn.nodeType==1){cn.nodeIndex=++j}}pn._batch=batch}if(f==1){if(l==0||n.nodeIndex==l){r[++ri]=n}}else{if((n.nodeIndex+l)%f==0){r[++ri]=n}}}return r},"only-child":function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(!prev(ci)&&!next(ci)){r[++ri]=ci}}return r},empty:function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var cns=ci.childNodes,j=0,cn,empty=true;while(cn=cns[j]){++j;if(cn.nodeType==1||cn.nodeType==3){empty=false;break}}if(empty){r[++ri]=ci}}return r},contains:function(c,v){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if((ci.textContent||ci.innerText||"").indexOf(v)!=-1){r[++ri]=ci}}return r},nodeValue:function(c,v){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(ci.firstChild&&ci.firstChild.nodeValue==v){r[++ri]=ci}}return r},checked:function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(ci.checked==true){r[++ri]=ci}}return r},not:function(c,ss){return Ext.DomQuery.filter(c,ss,true)},any:function(c,selectors){var ss=selectors.split("|"),r=[],ri=-1,s;for(var i=0,ci;ci=c[i];i++){for(var j=0;s=ss[j];j++){if(Ext.DomQuery.is(ci,s)){r[++ri]=ci;break}}}return r},odd:function(c){return this["nth-child"](c,"odd")},even:function(c){return this["nth-child"](c,"even")},nth:function(c,a){return c[a-1]||[]},first:function(c){return c[0]||[]},last:function(c){return c[c.length-1]||[]},has:function(c,ss){var s=Ext.DomQuery.select,r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(s(ss,ci).length>0){r[++ri]=ci}}return r},next:function(c,ss){var is=Ext.DomQuery.is,r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=next(ci);if(n&&is(n,ss)){r[++ri]=ci}}return r},prev:function(c,ss){var is=Ext.DomQuery.is,r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=prev(ci);if(n&&is(n,ss)){r[++ri]=ci}}return r}}}}();Ext.query=Ext.DomQuery.select;(function(){var p=Ext.util,m=Ext.toArray,n=Ext.each,w=Ext.isObject,q=true,o=false;p.Observable=function(){var a=this,b=a.events;if(a.listeners){a.on(a.listeners);delete a.listeners}a.events=b||{}};p.Observable.prototype=function(){var b=/^(?:scope|delay|buffer|single)$/,a=function(c){return c.toLowerCase()};return{fireEvent:function(){var j=m(arguments),h=a(j[0]),g=this,i=q,d=g.events[h],e,c;if(g.eventsSuspended===q){if(e=g.suspendedEventsQueue){e.push(j)}}else{if(w(d)&&d.bubble){if(d.fire.apply(d,j.slice(1))===o){return o}c=g.getBubbleTarget&&g.getBubbleTarget();if(c&&c.enableBubble){c.enableBubble(h);return c.fireEvent.apply(c,j)}}else{if(w(d)){j.shift();i=d.fire.apply(d,j)}}}return i},addListener:function(c,j,h,d){var k=this,l,g,i,e;if(w(c)){d=c;for(l in d){g=d[l];if(!b.test(l)){k.addListener(l,g.fn||g,g.scope||d.scope,g.fn?g:d)}}}else{c=a(c);e=k.events[c]||q;if(typeof e=="boolean"){k.events[c]=e=new p.Event(k,c)}e.addListener(j,h,w(d)?d:{})}},removeListener:function(g,d,e){var c=this.events[a(g)];if(w(c)){c.removeListener(d,e)}},purgeListeners:function(){var c=this.events,e,d;for(d in c){e=c[d];if(w(e)){e.clearListeners()}}},addEvents:function(c){var d=this;d.events=d.events||{};if(typeof c=="string"){n(arguments,function(e){d.events[e]=d.events[e]||q})}else{Ext.applyIf(d.events,c)}},hasListener:function(d){var c=this.events[d];return w(c)&&c.listeners.length>0},suspendEvents:function(c){this.eventsSuspended=q;if(c){this.suspendedEventsQueue=[]}},resumeEvents:function(){var c=this;c.eventsSuspended=!delete c.suspendedEventQueue;n(c.suspendedEventsQueue,function(d){c.fireEvent.apply(c,d)})}}}();var s=p.Observable.prototype;s.on=s.addListener;s.un=s.removeListener;p.Observable.releaseCapture=function(a){a.fireEvent=s.fireEvent};function r(c,b,a){return function(){if(b.target==arguments[0]){c.apply(a,m(arguments))}}}function u(c,b,d){var a=new p.DelayedTask();return function(){a.delay(b.buffer,c,d,m(arguments))}}function t(c,b,d,a){return function(){b.removeListener(d,a);return c.apply(a,arguments)}}function v(c,b,a){return function(){var d=m(arguments);(function(){c.apply(a,d)}).defer(b.delay||10)}}p.Event=function(b,a){this.name=a;this.obj=b;this.listeners=[]};p.Event.prototype={addListener:function(c,d,e){var b=this,a;d=d||b.obj;if(!b.isListening(c,d)){a=b.createListener(c,d,e);if(b.firing){b.listeners=b.listeners.slice(0)}b.listeners.push(a)}},createListener:function(c,d,b){b=b||{},d=d||this.obj;var a={fn:c,scope:d,options:b},e=c;if(b.target){e=r(e,b,d)}if(b.delay){e=v(e,b,d)}if(b.single){e=t(e,this,c,d)}if(b.buffer){e=u(e,b,d)}a.fireFn=e;return a},findListener:function(b,c){var d,a=-1;n(this.listeners,function(g,e){d=g.scope;if(g.fn==b&&(d==c||d==this.obj)){a=e;return o}},this);return a},isListening:function(b,a){return this.findListener(b,a)!=-1},removeListener:function(c,d){var e,b=this,a=o;if((e=b.findListener(c,d))!=-1){if(b.firing){b.listeners=b.listeners.slice(0)}b.listeners.splice(e,1);a=q}return a},clearListeners:function(){this.listeners=[]},fire:function(){var b=this,c=m(arguments),a=q;n(b.listeners,function(d){b.firing=q;if(d.fireFn.apply(d.scope||b.obj||window,c)===o){return a=b.firing=o}});b.firing=o;return a}}})();Ext.apply(Ext.util.Observable.prototype,function(){function b(e){var k=(this.methodEvents=this.methodEvents||{})[e],n,o,m,l=this;if(!k){this.methodEvents[e]=k={};k.originalFn=this[e];k.methodName=e;k.before=[];k.after=[];var a=function(c,d,g){if(!Ext.isEmpty(o=c.apply(d||l,g))){if(Ext.isObject(o)){n=!Ext.isEmpty(o.returnValue)?o.returnValue:o;m=!!o.cancel}else{if(o===false){m=true}else{n=o}}}};this[e]=function(){var c=Ext.toArray(arguments);n=o=undefined;m=false;Ext.each(k.before,function(d){a(d.fn,d.scope,c);if(m){return n}});if(!Ext.isEmpty(o=k.originalFn.apply(l,c))){n=o}Ext.each(k.after,function(d){a(d.fn,d.scope,c);if(m){return n}});return n}}return k}return{beforeMethod:function(e,g,a){b.call(this,e).before.push({fn:g,scope:a})},afterMethod:function(e,g,a){b.call(this,e).after.push({fn:g,scope:a})},removeMethodListener:function(e,k,a){var i=b.call(this,e),j=false;Ext.each(i.before,function(d,c,g){if(d.fn==k&&d.scope==a){g.splice(c,1);j=true;return false}});if(!j){Ext.each(i.after,function(d,c,g){if(d.fn==k&&d.scope==a){g.splice(c,1);return false}})}},relayEvents:function(g,a){var h=this;function i(c){return function(){return h.fireEvent.apply(h,[c].concat(Ext.toArray(arguments)))}}Ext.each(a,function(c){h.events[c]=h.events[c]||true;g.on(c,i(c),h)})},enableBubble:function(a){var d=this;a=Ext.isArray(a)?a:Ext.toArray(arguments);Ext.each(a,function(g){g=g.toLowerCase();var c=d.events[g]||true;if(typeof c=="boolean"){c=new Ext.util.Event(d,g);d.events[g]=c}c.bubble=true})}}}());Ext.util.Observable.capture=function(g,d,e){g.fireEvent=g.fireEvent.createInterceptor(d,e)};Ext.util.Observable.observeClass=function(b){Ext.apply(b,new Ext.util.Observable());b.prototype.fireEvent=function(){return(b.fireEvent.apply(b,arguments)!==false)&&(Ext.util.Observable.prototype.fireEvent.apply(this,arguments)!==false)}};Ext.EventManager=function(){var w,D,G=false,E=Ext.lib.Event,C=Ext.lib.Dom,N=document,v=window,J="ie-deferred-loader",B="DOMContentLoaded",K={},I=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;function F(b,c,g,i,a){var e=Ext.id(b),h=K[e]=K[e]||{};(h[c]=h[c]||[]).push([g,i,a]);E.on(b,c,i);if(c=="mousewheel"&&b.addEventListener){var d=["DOMMouseScroll",i,false];b.addEventListener.apply(b,d);E.on(window,"unload",function(){b.removeEventListener.apply(b,d)})}if(c=="mousedown"&&b==document){Ext.EventManager.stoppedMouseDownEvent.addListener(i)}}function M(){if(!G){Ext.isReady=G=true;if(D){clearInterval(D)}if(Ext.isGecko||Ext.isOpera){N.removeEventListener(B,M,false)}if(Ext.isIE){var a=N.getElementById(J);if(a){a.onreadystatechange=null;a.parentNode.removeChild(a)}}if(w){w.fire();w.clearListeners()}}}function O(){var a="complete";w=new Ext.util.Event();if(Ext.isGecko||Ext.isOpera){N.addEventListener(B,M,false)}else{if(Ext.isIE){N.write("<script id="+J+' defer="defer" src="//:"><\/script>');N.getElementById(J).onreadystatechange=function(){if(this.readyState==a){M()}}}else{if(Ext.isWebKit){D=setInterval(function(){if(N.readyState==a){M()}},10)}}}E.on(v,"load",M)}function y(b,a){return function(){var c=Ext.toArray(arguments);if(a.target==Ext.EventObject.setEvent(c[0]).target){b.apply(this,c)}}}function x(b,a){var c=new Ext.util.DelayedTask(b);return function(d){c.delay(a.buffer,b,null,[new Ext.EventObjectImpl(d)])}}function A(d,e,c,a,b){return function(g){Ext.EventManager.removeListener(e,c,a,b);d(g)}}function L(b,a){return function(c){c=new Ext.EventObjectImpl(c);setTimeout(function(){b(c)},a.delay||10)}}function H(b,c,d,i,a){var g=!Ext.isObject(d)?{}:d,e=Ext.getDom(b);i=i||g.fn;a=a||g.scope;if(!e){throw'Error listening for "'+c+'". Element "'+b+"\" doesn't exist."}function h(j){if(!Ext){return}j=Ext.EventObject.setEvent(j);var k;if(g.delegate){if(!(k=j.getTarget(g.delegate,e))){return}}else{k=j.target}if(g.stopEvent){j.stopEvent()}if(g.preventDefault){j.preventDefault()}if(g.stopPropagation){j.stopPropagation()}if(g.normalized){j=j.browserEvent}i.call(a||e,j,k,g)}if(g.target){h=y(h,g)}if(g.delay){h=L(h,g)}if(g.single){h=A(h,e,c,i,a)}if(g.buffer){h=x(h,g)}F(e,c,i,h,a);return h}var z={addListener:function(b,d,g,i,c){if(Ext.isObject(d)){var e=d,a,h;for(a in e){h=e[a];if(!I.test(a)){if(Ext.isFunction(h)){H(b,a,e,h,e.scope)}else{H(b,a,h)}}}}else{H(b,d,c,g,i)}},removeListener:function(c,d,b,e){var h=Ext.getDom(c),g=Ext.id(h),a;Ext.each((K[g]||{})[d],function(j,i,k){if(Ext.isArray(j)&&j[0]==b&&(!e||j[2]==e)){E.un(h,d,a=j[1]);k.splice(i,1);return false}});if(d=="mousewheel"&&h.addEventListener&&a){h.removeEventListener("DOMMouseScroll",a,false)}if(d=="mousedown"&&h==N&&a){Ext.EventManager.stoppedMouseDownEvent.removeListener(a)}},removeAll:function(b){var d=Ext.id(b=Ext.getDom(b)),a=K[d],c;for(c in a){if(a.hasOwnProperty(c)){Ext.each(a[c],function(e){E.un(b,c,e.wrap)})}}K[d]=null},onDocumentReady:function(a,b,c){if(G){w.addListener(a,b,c);w.fire();w.clearListeners()}else{if(!w){O()}c=c||{};c.delay=c.delay||1;w.addListener(a,b,c)}},elHash:K};z.on=z.addListener;z.un=z.removeListener;z.stoppedMouseDownEvent=new Ext.util.Event();return z}();Ext.onReady=Ext.EventManager.onDocumentReady;(function(){var b=function(){var g=document.body||document.getElementsByTagName("body")[0];if(!g){return false}var a=[" ",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){a.push("ext-safari "+(Ext.isSafari2?"ext-safari2":(Ext.isSafari3?"ext-safari3":"ext-safari4")))}else{if(Ext.isChrome){a.push("ext-chrome")}}if(Ext.isMac){a.push("ext-mac")}if(Ext.isLinux){a.push("ext-linux")}if(Ext.isStrict||Ext.isBorderBox){var e=g.parentNode;if(e){e.className+=Ext.isStrict?" ext-strict":" ext-border-box"}}g.className+=a.join(" ");return true};if(!b()){Ext.onReady(b)}})();Ext.EventObject=function(){var d=Ext.lib.Event,e={3:13,63234:37,63235:39,63232:38,63233:40,63276:33,63277:34,63272:46,63273:36,63275:35},g=Ext.isIE?{1:0,4:1,2:2}:(Ext.isWebKit?{1:0,2:1,3:2}:{0:0,1:1,2:2});Ext.EventObjectImpl=function(a){if(a){this.setEvent(a.browserEvent||a)}};Ext.EventObjectImpl.prototype={setEvent:function(a){var b=this;if(a==b||(a&&a.browserEvent)){return a}b.browserEvent=a;if(a){b.button=a.button?g[a.button]:(a.which?a.which-1:-1);if(a.type=="click"&&b.button==-1){b.button=0}b.type=a.type;b.shiftKey=a.shiftKey;b.ctrlKey=a.ctrlKey||a.metaKey||false;b.altKey=a.altKey;b.keyCode=a.keyCode;b.charCode=a.charCode;b.target=d.getTarget(a);b.xy=d.getXY(a)}else{b.button=-1;b.shiftKey=false;b.ctrlKey=false;b.altKey=false;b.keyCode=0;b.charCode=0;b.target=null;b.xy=[0,0]}return b},stopEvent:function(){var a=this;if(a.browserEvent){if(a.browserEvent.type=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.fire(a)}d.stopEvent(a.browserEvent)}},preventDefault:function(){if(this.browserEvent){d.preventDefault(this.browserEvent)}},stopPropagation:function(){var a=this;if(a.browserEvent){if(a.browserEvent.type=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.fire(a)}d.stopPropagation(a.browserEvent)}},getCharCode:function(){return this.charCode||this.keyCode},getKey:function(){return this.normalizeKey(this.keyCode||this.charCode)},normalizeKey:function(a){return Ext.isSafari?(e[a]||a):a},getPageX:function(){return this.xy[0]},getPageY:function(){return this.xy[1]},getXY:function(){return this.xy},getTarget:function(b,a,c){return b?Ext.fly(this.target).findParent(b,a,c):(c?Ext.get(this.target):this.target)},getRelatedTarget:function(){return this.browserEvent?d.getRelatedTarget(this.browserEvent):null},getWheelDelta:function(){var b=this.browserEvent;var a=0;if(b.wheelDelta){a=b.wheelDelta/120}else{if(b.detail){a=-b.detail/3}}return a},within:function(b,a,i){if(b){var c=this[a?"getRelatedTarget":"getTarget"]();return c&&((i?(c==Ext.getDom(b)):false)||Ext.fly(b).contains(c))}return false}};return new Ext.EventObjectImpl()}();Ext.apply(Ext.EventManager,function(){var s,m,q,t,u=Ext.lib.Dom,l=Ext.lib.Event,n=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/,o=0,p=0,r=Ext.isSafari?Ext.num(navigator.userAgent.toLowerCase().match(/version\/(\d+\.\d)/)[1]||2)>=3.1:!((Ext.isGecko&&!Ext.isWindows)||Ext.isOpera);return{doResizeEvent:function(){var a=u.getViewHeight(),b=u.getViewWidth();if(p!=a||o!=b){s.fire(o=b,p=a)}},onWindowResize:function(c,a,b){if(!s){s=new Ext.util.Event();m=new Ext.util.DelayedTask(this.doResizeEvent);l.on(window,"resize",this.fireWindowResize,this)}s.addListener(c,a,b)},fireWindowResize:function(){if(s){if((Ext.isIE||Ext.isAir)&&m){m.delay(50)}else{s.fire(u.getViewWidth(),u.getViewHeight())}}},onTextResize:function(c,d,b){if(!q){q=new Ext.util.Event();var a=new Ext.Element(document.createElement("div"));a.dom.className="x-text-resize";a.dom.innerHTML="X";a.appendTo(document.body);t=a.dom.offsetHeight;setInterval(function(){if(a.dom.offsetHeight!=t){q.fire(t,t=a.dom.offsetHeight)}},this.textResizeInterval)}q.addListener(c,d,b)},removeResizeListener:function(a,b){if(s){s.removeListener(a,b)}},fireResize:function(){if(s){s.fire(u.getViewWidth(),u.getViewHeight())}},textResizeInterval:50,ieDeferSrc:false,useKeydown:r}}());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 c=this,d=this.normalizeKey(c.keyCode);return(d>=33&&d<=40)||d==c.RETURN||d==c.TAB||d==c.ESC},isSpecialKey:function(){var b=this.normalizeKey(this.keyCode);return(this.type=="keypress"&&this.ctrlKey)||this.isNavKeyPress()||(b==this.BACKSPACE)||(b>=16&&b<=20)||(b>=44&&b<=45)},getPoint:function(){return new Ext.lib.Point(this.xy[0],this.xy[1])},hasModifier:function(){return((this.ctrlKey||this.altKey)||this.shiftKey)}});(function(){var r=document;Ext.Element=function(d,c){var b=typeof d=="string"?r.getElementById(d):d,a;if(!b){return null}a=b.id;if(!c&&a&&Ext.Element.cache[a]){return Ext.Element.cache[a]}this.dom=b;this.id=a||Ext.id(b)};var y=Ext.lib.Dom,u=Ext.DomHelper,o=Ext.lib.Event,v=Ext.lib.Anim,t=Ext.Element;t.prototype={set:function(a,d){var c=this.dom,e,b;for(e in a){b=a[e];if(e!="style"&&!Ext.isFunction(b)){if(e=="cls"){c.className=b}else{if(a.hasOwnProperty(e)){if(d||!!c.setAttribute){c.setAttribute(e,b)}else{c[e]=b}}}}}if(a.style){Ext.DomHelper.applyStyles(c,a.style)}return this},defaultUnit:"px",is:function(a){return Ext.DomQuery.is(this.dom,a)},focus:function(a,b){var d=this,b=b||d.dom;try{if(Number(a)){d.focus.defer(a,null,[null,b])}else{b.focus()}}catch(c){}return d},blur:function(){try{this.dom.blur()}catch(a){}return this},getValue:function(b){var a=this.dom.value;return b?parseInt(a,10):a},addListener:function(d,a,b,c){Ext.EventManager.on(this.dom,d,a,b||this,c);return this},removeListener:function(c,a,b){Ext.EventManager.removeListener(this.dom,c,a,b||this);return this},removeAllListeners:function(){Ext.EventManager.removeAll(this.dom);return this},addUnits:function(a){if(a===""||a=="auto"||a===undefined){a=a||""}else{if(!isNaN(a)||!q.test(a)){a=a+(this.defaultUnit||"px")}}return a},load:function(b,a,c){Ext.Ajax.request(Ext.apply({params:a,url:b.url||b,callback:c,el:this.dom,indicatorText:b.indicatorText||""},Ext.isObject(b)?b:{}));return this},isBorderBox:function(){return s[(this.dom.tagName||"").toLowerCase()]||Ext.isBorderBox},remove:function(){var b=this,a=b.dom;b.removeAllListeners();delete t.cache[a.id];delete t.dataCache[a.id];Ext.removeNode(a)},hover:function(d,e,b,c){var a=this;a.on("mouseenter",d,b||a.dom,c);a.on("mouseleave",e,b||a.dom,c);return a},contains:function(a){return !a?false:Ext.lib.Dom.isAncestor(this.dom,a.dom?a.dom:a)},getAttributeNS:function(a,b){return this.getAttribute(b,a)},getAttribute:Ext.isIE?function(d,b){var a=this.dom,c=typeof a[b+":"+d];if(["undefined","unknown"].indexOf(c)==-1){return a[b+":"+d]}return a[d]}:function(c,b){var a=this.dom;return a.getAttributeNS(b,c)||a.getAttribute(b+":"+c)||a.getAttribute(c)||a[c]},update:function(a){this.dom.innerHTML=a;return this}};var n=t.prototype;t.addMethods=function(a){Ext.apply(n,a)};n.on=n.addListener;n.un=n.removeListener;n.autoBoxAdjust=true;var q=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i,w;t.cache={};t.dataCache={};t.get=function(d){var e,a,b;if(!d){return null}if(typeof d=="string"){if(!(a=r.getElementById(d))){return null}if(e=t.cache[d]){e.dom=a}else{e=t.cache[d]=new t(a)}return e}else{if(d.tagName){if(!(b=d.id)){b=Ext.id(d)}if(e=t.cache[b]){e.dom=d}else{e=t.cache[b]=new t(d)}return e}else{if(d instanceof t){if(d!=w){d.dom=r.getElementById(d.id)||d.dom;t.cache[d.id]=d}return d}else{if(d.isComposite){return d}else{if(Ext.isArray(d)){return t.select(d)}else{if(d==r){if(!w){var c=function(){};c.prototype=t.prototype;w=new c();w.dom=r}return w}}}}}}return null};t.data=function(c,d,b){var a=t.dataCache[c.id];if(!a){a=t.dataCache[c.id]={}}if(arguments.length==2){return a[d]}else{a[d]=b}};function p(){if(!Ext.enableGarbageCollector){clearInterval(t.collectorThread)}else{var c,b,a;for(c in t.cache){b=t.cache[c];a=b.dom;if(!a||!a.parentNode||(!a.offsetParent&&!r.getElementById(c))){delete t.cache[c];if(a&&Ext.enableListenerCollection){Ext.EventManager.removeAll(a)}}}}}t.collectorThreadId=setInterval(p,30000);var x=function(){};x.prototype=t.prototype;t.Flyweight=function(a){this.dom=a};t.Flyweight.prototype=new x();t.Flyweight.prototype.isFlyweight=true;t._flyweights={};t.fly=function(a,c){var b=null;c=c||"_global";if(a=Ext.getDom(a)){(t._flyweights[c]=t._flyweights[c]||new t.Flyweight()).dom=a;b=t._flyweights[c]}return b};Ext.get=t.get;Ext.fly=t.fly;var s=Ext.isStrict?{select:1}:{input:1,select:1,textarea:1};if(Ext.isIE||Ext.isGecko){s.button=1}Ext.EventManager.on(window,"unload",function(){delete t.cache;delete t.dataCache;delete t._flyweights})})();Ext.Element.addMethods({swallowEvent:function(g,e){var h=this;function i(a){a.stopPropagation();if(e){a.preventDefault()}}if(Ext.isArray(g)){Ext.each(g,function(a){h.on(a,i)});return h}h.on(g,i);return h},relayEvent:function(d,c){this.on(d,function(a){c.fireEvent(d,a)})},clean:function(h){var l=this,k=l.dom,j=k.firstChild,m=-1;if(Ext.Element.data(k,"isCleaned")&&h!==true){return l}while(j){var i=j.nextSibling;if(j.nodeType==3&&!/\S/.test(j.nodeValue)){k.removeChild(j)}else{j.nodeIndex=++m}j=i}Ext.Element.data(k,"isCleaned",true);return l},load:function(){var b=this.getUpdater();b.update.apply(b,arguments);return this},getUpdater:function(){return this.updateManager||(this.updateManager=new Ext.Updater(this))},update:function(html,loadScripts,callback){html=html||"";if(loadScripts!==true){this.dom.innerHTML=html;if(Ext.isFunction(callback)){callback()}return this}var id=Ext.id(),dom=this.dom;html+='<span id="'+id+'"></span>';Ext.lib.Event.onAvailable(id,function(){var DOC=document,hd=DOC.getElementsByTagName("head")[0],re=/(?:<script([^>]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig,srcRe=/\ssrc=([\'\"])(.*?)\1/i,typeRe=/\stype=([\'\"])(.*?)\1/i,match,attrs,srcMatch,typeMatch,el,s;while((match=re.exec(html))){attrs=match[1];srcMatch=attrs?attrs.match(srcRe):false;if(srcMatch&&srcMatch[2]){s=DOC.createElement("script");s.src=srcMatch[2];typeMatch=attrs.match(typeRe);if(typeMatch&&typeMatch[2]){s.type=typeMatch[2]}hd.appendChild(s)}else{if(match[2]&&match[2].length>0){if(window.execScript){window.execScript(match[2])}else{window.eval(match[2])}}}}el=DOC.getElementById(id);if(el){Ext.removeNode(el)}if(Ext.isFunction(callback)){callback()}});dom.innerHTML=html.replace(/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,"");return this},createProxy:function(h,i,j){h=Ext.isObject(h)?h:{tag:"div",cls:h};var k=this,g=i?Ext.DomHelper.append(i,h,true):Ext.DomHelper.insertBefore(k.dom,h,true);if(j&&k.setBox&&k.getBox){g.setBox(k.getBox())}return g}});Ext.Element.prototype.getUpdateManager=Ext.Element.prototype.getUpdater;Ext.Element.uncache=function(g){for(var h=0,i=arguments,a=i.length;h<a;h++){if(i[h]){delete Ext.Element.cache[i[h].id||i[h]]}}};Ext.Element.addMethods({getAnchorXY:function(y,t,h){y=(y||"tl").toLowerCase();h=h||{};var u=this,B=u.dom==document.body||u.dom==document,r=h.width||B?Ext.lib.Dom.getViewWidth():u.getWidth(),w=h.height||B?Ext.lib.Dom.getViewHeight():u.getHeight(),o,C=Math.round,A=u.getXY(),s=u.getScroll(),v=B?s.left:!t?A[0]:0,x=B?s.top:!t?A[1]:0,z={c:[C(r*0.5),C(w*0.5)],t:[C(r*0.5),0],l:[0,C(w*0.5)],r:[r,C(w*0.5)],b:[C(r*0.5),w],tl:[0,0],bl:[0,w],br:[r,w],tr:[r,0]};o=z[y];return[o[0]+v,o[1]+x]},anchorTo:function(r,n,q,s,l,k){var m=this,o=m.dom;function p(){Ext.fly(o).alignTo(r,n,q,s);Ext.callback(k,Ext.fly(o))}Ext.EventManager.onWindowResize(p,m);if(!Ext.isEmpty(l)){Ext.EventManager.on(window,"scroll",p,m,{buffer:!isNaN(l)?l:50})}p.call(m);return m},getAlignToXY:function(ad,X,W){ad=Ext.get(ad);if(!ad||!ad.dom){throw"Element.alignToXY with an element that doesn't exist"}W=W||[0,0];X=(X=="?"?"tl-bl?":(!/-/.test(X)&&X!==""?"tl-"+X:X||"tl-bl")).toLowerCase();var o=this,w=o.dom,d,h,Y,Z,T,P,y,R=Ext.lib.Dom.getViewWidth()-10,x=Ext.lib.Dom.getViewHeight()-10,af,ac,ab,aa,O,m,c=document,p=c.documentElement,V=c.body,Q=(p.scrollLeft||V.scrollLeft||0)+5,S=(p.scrollTop||V.scrollTop||0)+5,r=false,ae="",ag="",U=X.match(/^([a-z]+)-([a-z]+)(\?)?$/);if(!U){throw"Element.alignTo with an invalid alignment "+X}ae=U[1];ag=U[2];r=!!U[3];d=o.getAnchorXY(ae,true);h=ad.getAnchorXY(ag,false);Y=h[0]-d[0]+W[0];Z=h[1]-d[1]+W[1];if(r){T=o.getWidth();P=o.getHeight();y=ad.getRegion();af=ae.charAt(0);ac=ae.charAt(ae.length-1);ab=ag.charAt(0);aa=ag.charAt(ag.length-1);O=((af=="t"&&ab=="b")||(af=="b"&&ab=="t"));m=((ac=="r"&&aa=="l")||(ac=="l"&&aa=="r"));if(Y+T>R+Q){Y=m?y.left-T:R+Q-T}if(Y<Q){Y=m?y.right:Q}if(Z+P>x+S){Z=O?y.top-P:x+S-P}if(Z<S){Z=O?y.bottom:S}}return[Y,Z]},alignTo:function(k,h,i,g){var j=this;return j.setXY(j.getAlignToXY(k,h,i),j.preanim&&!!g?j.preanim(arguments,3):false)},adjustForConstraints:function(g,e,d){return this.getConstrainToXY(e||document,false,d,g)||g},getConstrainToXY:function(g,h,k,i){var j={top:0,left:0,bottom:0,right:0};return function(K,a,I,G){K=Ext.get(K);I=I?Ext.applyIf(I,j):j;var b,e,c=0,d=0;if(K.dom==document.body||K.dom==document){b=Ext.lib.Dom.getViewWidth();e=Ext.lib.Dom.getViewHeight()}else{b=K.dom.clientWidth;e=K.dom.clientHeight;if(!a){var s=K.getXY();c=s[0];d=s[1]}}var x=K.getScroll();c+=I.left+x.left;d+=I.top+x.top;b-=I.right;e-=I.bottom;var y=c+b;var L=d+e;var J=G||(!a?this.getXY():[this.getLeft(true),this.getTop(true)]);var E=J[0],F=J[1];var D=this.dom.offsetWidth,w=this.dom.offsetHeight;var H=false;if((E+D)>y){E=y-D;H=true}if((F+w)>L){F=L-w;H=true}if(E<c){E=c;H=true}if(F<d){F=d;H=true}return H?[E,F]:false}}(),getCenterXY:function(){return this.getAlignToXY(document,"c-c")},center:function(b){return this.alignTo(b||document,"c-c")}});Ext.Element.addMethods(function(){var j="parentNode",g="nextSibling",k="previousSibling",i=Ext.DomQuery,h=Ext.get;return{findParent:function(a,b,n){var d=this.dom,o=document.body,c=0,e;if(Ext.isGecko&&Object.prototype.toString.call(d)=="[object XULElement]"){return null}b=b||50;if(isNaN(b)){e=Ext.getDom(b);b=Number.MAX_VALUE}while(d&&d.nodeType==1&&c<b&&d!=o&&d!=e){if(i.is(d,a)){return n?h(d):d}c++;d=d.parentNode}return null},findParentNode:function(a,b,d){var c=Ext.fly(this.dom.parentNode,"_internal");return c?c.findParent(a,b,d):null},up:function(a,b){return this.findParentNode(a,b,true)},select:function(b,a){return Ext.Element.select(b,a,this.dom)},query:function(b,a){return i.select(b,this.dom)},child:function(c,b){var a=i.selectNode(c,this.dom);return b?a:h(a)},down:function(c,b){var a=i.selectNode(" > "+c,this.dom);return b?a:h(a)},parent:function(b,a){return this.matchNode(j,j,b,a)},next:function(b,a){return this.matchNode(g,g,b,a)},prev:function(b,a){return this.matchNode(k,k,b,a)},first:function(b,a){return this.matchNode(g,"firstChild",b,a)},last:function(b,a){return this.matchNode(k,"lastChild",b,a)},matchNode:function(d,a,e,c){var b=this.dom[a];while(b){if(b.nodeType==1&&(!e||i.is(b,e))){return !c?h(b):b}b=b[d]}return null}}}());Ext.Element.addMethods(function(){var h=Ext.getDom,g=Ext.get,i=Ext.DomHelper,e=function(a){return(a.nodeType||a.dom||typeof a=="string")};return{appendChild:function(a){return g(a).appendTo(this)},appendTo:function(a){h(a).appendChild(this.dom);return this},insertBefore:function(a){(a=h(a)).parentNode.insertBefore(this.dom,a);return this},insertAfter:function(a){(a=h(a)).parentNode.insertBefore(this.dom,a.nextSibling);return this},insertFirst:function(a,b){a=a||{};if(e(a)){a=h(a);this.dom.insertBefore(a,this.dom.firstChild);return !b?g(a):a}else{return this.createChild(a,this.dom.firstChild,b)}},replace:function(a){a=g(a);this.insertBefore(a);a.remove();return this},replaceWith:function(b){var a=this,c=Ext.Element;if(e(b)){b=h(b);a.dom.parentNode.insertBefore(b,a.dom)}else{b=i.insertBefore(a.dom,b)}delete c.cache[a.id];Ext.removeNode(a.dom);a.id=Ext.id(a.dom=b);return c.cache[a.id]=a},createChild:function(b,c,a){b=b||{tag:"div"};return c?i.insertBefore(c,b,a!==true):i[!this.dom.firstChild?"overwrite":"append"](this.dom,b,a!==true)},wrap:function(c,b){var a=i.insertBefore(this.dom,c||{tag:"div"},!b);a.dom?a.dom.appendChild(this.dom):a.appendChild(this.dom);return a},insertHtml:function(c,b,d){var a=i.insertHtml(c,this.dom,b);return d?Ext.get(a):a}}}());Ext.apply(Ext.Element.prototype,function(){var g=Ext.getDom,e=Ext.get,d=Ext.DomHelper;return{insertSibling:function(b,j,c){var a=this,k;if(Ext.isArray(b)){Ext.each(b,function(h){k=a.insertSibling(h,j,c)});return k}j=(j||"before").toLowerCase();b=b||{};if(b.nodeType||b.dom){k=a.dom.parentNode.insertBefore(g(b),j=="before"?a.dom:a.dom.nextSibling);if(!c){k=e(k)}}else{if(j=="after"&&!a.dom.nextSibling){k=d.append(a.dom.parentNode,b,!c)}else{k=d[j=="after"?"insertAfter":"insertBefore"](a.dom,b,!c)}}return k}}}());Ext.Element.addMethods(function(){var ac={},G=/(-[a-z])/gi,ah={},M=document.defaultView,J=Ext.isIE?"styleFloat":"cssFloat",O=/alpha\(opacity=(.*)\)/i,Y=/^\s+|\s+$/g,S=Ext.Element,af="padding",ag="margin",F="border",K="-left",Q="-right",H="-top",V="-bottom",aa="-width",N=Math,U="hidden",ae="isClipped",Z="overflow",W="overflow-x",X="overflow-y",P="originalClip",ab={l:F+K+aa,r:F+Q+aa,t:F+H+aa,b:F+V+aa},ad={l:af+K,r:af+Q,t:af+H,b:af+V},ai={l:ag+K,r:ag+Q,t:ag+H,b:ag+V},L=Ext.Element.data;function R(b,a){return a.charAt(1).toUpperCase()}function T(b,c){var a=0;Ext.each(b.match(/\w/g),function(d){if(d=parseInt(this.getStyle(c[d]),10)){a+=N.abs(d)}},this);return a}function I(a){return ac[a]||(ac[a]=a=="float"?J:a.replace(G,R))}return{adjustWidth:function(c){var b=this;var a=(typeof c=="number");if(a&&b.autoBoxAdjust&&!b.isBorderBox()){c-=(b.getBorderWidth("lr")+b.getPadding("lr"))}return(a&&c<0)?0:c},adjustHeight:function(c){var b=this;var a=(typeof c=="number");if(a&&b.autoBoxAdjust&&!b.isBorderBox()){c-=(b.getBorderWidth("tb")+b.getPadding("tb"))}return(a&&c<0)?0:c},addClass:function(b){var a=this;Ext.each(b,function(c){a.dom.className+=(!a.hasClass(c)&&c?" "+c:"")});return a},radioClass:function(a){Ext.each(this.dom.parentNode.childNodes,function(b){if(b.nodeType==1){Ext.fly(b,"_internal").removeClass(a)}});return this.addClass(a)},removeClass:function(b){var a=this;if(a.dom.className){Ext.each(b,function(c){a.dom.className=a.dom.className.replace(ah[c]=ah[c]||new RegExp("(?:^|\\s+)"+c+"(?:\\s+|$)","g")," ")})}return a},toggleClass:function(a){return this.hasClass(a)?this.removeClass(a):this.addClass(a)},hasClass:function(a){return a&&(" "+this.dom.className+" ").indexOf(" "+a+" ")!=-1},replaceClass:function(a,b){return this.removeClass(a).addClass(b)},isStyle:function(b,a){return this.getStyle(b)==a},getStyle:function(){return M&&M.getComputedStyle?function(a){var b=this.dom,d,c;if(b==document){return null}a=I(a);return(d=b.style[a])?d:(c=M.getComputedStyle(b,""))?c[a]:null}:function(a){var c=this.dom,e,d;if(c==document){return null}if(a=="opacity"){if(c.style.filter.match){if(e=c.style.filter.match(O)){var b=parseFloat(e[1]);if(!isNaN(b)){return b?b/100:0}}}return 1}a=I(a);return c.style[a]||((d=c.currentStyle)?d[a]:null)}}(),getColor:function(g,e,a){var c=this.getStyle(g),d=a||"#",b;if(!c||/transparent|inherit/.test(c)){return e}if(/^r/.test(c)){Ext.each(c.slice(4,c.length-1).split(","),function(h){b=parseInt(h,10);d+=(b<16?"0":"")+b.toString(16)})}else{c=c.replace("#","");d+=c.length==3?c.replace(/^(\w)(\w)(\w)$/,"$1$1$2$2$3$3"):c}return(d.length>5?d.toLowerCase():e)},setStyle:function(a,b){var d,c,e;if(!Ext.isObject(a)){d={};d[a]=b;a=d}for(c in a){b=a[c];c=="opacity"?this.setOpacity(b):this.dom.style[I(c)]=b}return this},setOpacity:function(e,g){var b=this,d=b.dom.style;if(!g||!b.anim){if(Ext.isIE){var c=e<1?"alpha(opacity="+e*100+")":"",a=d.filter.replace(O,"").replace(Y,"");d.zoom=1;d.filter=a+(a.length>0?" ":"")+c}else{d.opacity=e}}else{b.anim({opacity:{to:e}},b.preanim(arguments,1),null,0.35,"easeIn")}return b},clearOpacity:function(){var a=this.dom.style;if(Ext.isIE){if(!Ext.isEmpty(a.filter)){a.filter=a.filter.replace(O,"").replace(Y,"")}}else{a.opacity=a["-moz-opacity"]=a["-khtml-opacity"]=""}return this},getHeight:function(b){var c=this,a=c.dom,d=N.max(a.offsetHeight,a.clientHeight)||0;d=!b?d:d-c.getBorderWidth("tb")-c.getPadding("tb");return d<0?0:d},getWidth:function(c){var b=this,a=b.dom,d=N.max(a.offsetWidth,a.clientWidth)||0;d=!c?d:d-b.getBorderWidth("lr")-b.getPadding("lr");return d<0?0:d},setWidth:function(b,c){var a=this;b=a.adjustWidth(b);!c||!a.anim?a.dom.style.width=a.addUnits(b):a.anim({width:{to:b}},a.preanim(arguments,1));return a},setHeight:function(c,b){var a=this;c=a.adjustHeight(c);!b||!a.anim?a.dom.style.height=a.addUnits(c):a.anim({height:{to:c}},a.preanim(arguments,1));return a},getBorderWidth:function(a){return T.call(this,a,ab)},getPadding:function(a){return T.call(this,a,ad)},clip:function(){var b=this,a=b.dom;if(!L(a,ae)){L(a,ae,true);L(a,P,{o:b.getStyle(Z),x:b.getStyle(W),y:b.getStyle(X)});b.setStyle(Z,U);b.setStyle(W,U);b.setStyle(X,U)}return b},unclip:function(){var c=this,a=c.dom;if(L(a,ae)){L(a,ae,false);var b=L(a,P);if(b.o){c.setStyle(Z,b.o)}if(b.x){c.setStyle(W,b.x)}if(b.y){c.setStyle(X,b.y)}}return c},addStyles:T,margins:ai}}());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 b="_internal";return{applyStyles:function(a){Ext.DomHelper.applyStyles(this.dom,a);return this},getStyles:function(){var a={};Ext.each(arguments,function(d){a[d]=this.getStyle(d)},this);return a},getStyleSize:function(){var h=this,a,j,d=this.dom,k=d.style;if(k.width&&k.width!="auto"){a=parseInt(k.width,10);if(h.isBorderBox()){a-=h.getFrameWidth("lr")}}if(k.height&&k.height!="auto"){j=parseInt(k.height,10);if(h.isBorderBox()){j-=h.getFrameWidth("tb")}}return{width:a||h.getWidth(true),height:j||h.getHeight(true)}},setOverflow:function(a){var d=this.dom;if(a=="auto"&&Ext.isMac&&Ext.isGecko2){d.style.overflow="hidden";(function(){d.style.overflow="auto"}).defer(1)}else{d.style.overflow=a}},boxWrap:function(a){a=a||"x-box";var d=Ext.get(this.insertHtml("beforeBegin","<div class='"+a+"'>"+String.format(Ext.Element.boxMarkup,a)+"</div>"));Ext.DomQuery.selectNode("."+a+"-mc",d.dom).appendChild(this.dom);return d},setSize:function(h,a,i){var g=this;if(Ext.isObject(h)){a=h.height;h=h.width}h=g.adjustWidth(h);a=g.adjustHeight(a);if(!i||!g.anim){g.dom.style.width=g.addUnits(h);g.dom.style.height=g.addUnits(a)}else{g.anim({width:{to:h},height:{to:a}},g.preanim(arguments,2))}return g},getComputedHeight:function(){var d=this,a=Math.max(d.dom.offsetHeight,d.dom.clientHeight);if(!a){a=parseInt(d.getStyle("height"),10)||0;if(!d.isBorderBox()){a+=d.getFrameWidth("tb")}}return a},getComputedWidth:function(){var a=Math.max(this.dom.offsetWidth,this.dom.clientWidth);if(!a){a=parseInt(this.getStyle("width"),10)||0;if(!this.isBorderBox()){a+=this.getFrameWidth("lr")}}return a},getFrameWidth:function(d,a){return a&&this.isBorderBox()?0:(this.getPadding(d)+this.getBorderWidth(d))},addClassOnOver:function(a){this.hover(function(){Ext.fly(this,b).addClass(a)},function(){Ext.fly(this,b).removeClass(a)});return this},addClassOnFocus:function(a){this.on("focus",function(){Ext.fly(this,b).addClass(a)},this.dom);this.on("blur",function(){Ext.fly(this,b).removeClass(a)},this.dom);return this},addClassOnClick:function(a){var d=this.dom;this.on("mousedown",function(){Ext.fly(d,b).addClass(a);var c=Ext.getDoc(),h=function(){Ext.fly(d,b).removeClass(a);c.removeListener("mouseup",h)};c.on("mouseup",h)});return this},getViewSize:function(){var h=document,d=this.dom,i=Ext.lib.Dom,a=(d==h||d==h.body);return{width:(a?i.getViewWidth():d.clientWidth),height:(a?i.getViewHeight():d.clientHeight)}},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",true).applyStyles("-moz-user-select:none;-khtml-user-select:none;").addClass("x-unselectable")},getMargins:function(k){var j=this,a,i={t:"top",l:"left",r:"right",b:"bottom"},h={};if(!k){for(a in j.margins){h[i[a]]=parseInt(j.getStyle(j.margins[a]),10)||0}return h}else{return j.addStyles.call(j,k,j.margins)}}}}());(function(){var w=Ext.lib.Dom,v="left",r="right",t="top",p="bottom",q="position",u="static",s="relative",o="auto",n="z-index";function m(c,a,b){return this.preanim&&!!a?this.preanim(c,b):false}Ext.Element.addMethods({getX:function(){return w.getX(this.dom)},getY:function(){return w.getY(this.dom)},getXY:function(){return w.getXY(this.dom)},getOffsetsTo:function(a){var b=this.getXY(),c=Ext.fly(a,"_internal").getXY();return[b[0]-c[0],b[1]-c[1]]},setX:function(a,b){return this.setXY([a,this.getY()],m.call(this,arguments,b,1))},setY:function(b,a){return this.setXY([this.getX(),b],m.call(this,arguments,a,1))},setLeft:function(a){this.setStyle(v,this.addUnits(a));return this},setTop:function(a){this.setStyle(t,this.addUnits(a));return this},setRight:function(a){this.setStyle(r,this.addUnits(a));return this},setBottom:function(a){this.setStyle(p,this.addUnits(a));return this},setXY:function(b,a){var c=this;if(!a||!c.anim){w.setXY(c.dom,b)}else{c.anim({points:{to:b}},c.preanim(arguments,1),"motion")}return c},setLocation:function(a,b,c){return this.setXY([a,b],m.call(this,arguments,c,2))},moveTo:function(a,b,c){return this.setXY([a,b],m.call(this,arguments,c,2))},getLeft:function(a){return !a?this.getX():parseInt(this.getStyle(v),10)||0},getRight:function(a){var b=this;return !a?b.getX()+b.getWidth():(b.getLeft(true)+b.getWidth())||0},getTop:function(a){return !a?this.getY():parseInt(this.getStyle(t),10)||0},getBottom:function(a){var b=this;return !a?b.getY()+b.getHeight():(b.getTop(true)+b.getHeight())||0},position:function(b,c,a,d){var e=this;if(!b&&e.isStyle(q,u)){e.setStyle(q,s)}else{if(b){e.setStyle(q,b)}}if(c){e.setStyle(n,c)}if(a||d){e.setXY([a||false,d||false])}},clearPositioning:function(a){a=a||"";this.setStyle({left:a,right:a,top:a,bottom:a,"z-index":"",position:u});return this},getPositioning:function(){var a=this.getStyle(v);var b=this.getStyle(t);return{position:this.getStyle(q),left:a,right:a?"":this.getStyle(r),top:b,bottom:b?"":this.getStyle(p),"z-index":this.getStyle(n)}},setPositioning:function(a){var b=this,c=b.dom.style;b.setStyle(a);if(a.right==o){c.right=""}if(a.bottom==o){c.bottom=""}return b},translatePoints:function(a,b){b=isNaN(a[1])?b:a[1];a=isNaN(a[0])?a:a[0];var e=this,d=e.isStyle(q,s),c=e.getXY(),h=parseInt(e.getStyle(v),10),g=parseInt(e.getStyle(t),10);h=!isNaN(h)?h:(d?0:e.dom.offsetLeft);g=!isNaN(g)?g:(d?0:e.dom.offsetTop);return{left:(a-c[0]+h),top:(b-c[1]+g)}},animTest:m})})();Ext.Element.addMethods({setBox:function(k,j,h){var l=this,i=k.width,m=k.height;if((j&&!l.autoBoxAdjust)&&!l.isBorderBox()){i-=(l.getBorderWidth("lr")+l.getPadding("lr"));m-=(l.getBorderWidth("tb")+l.getPadding("tb"))}l.setBounds(k.x,k.y,i,m,l.animTest.call(l,arguments,h,2));return l},getBox:function(x,h){var t=this,E,A,l,B=t.getBorderWidth,b=t.getPadding,z,D,F,r;if(!h){E=t.getXY()}else{A=parseInt(t.getStyle("left"),10)||0;l=parseInt(t.getStyle("top"),10)||0;E=[A,l]}var C=t.dom,G=C.offsetWidth,y=C.offsetHeight,w;if(!x){w={x:E[0],y:E[1],0:E[0],1:E[1],width:G,height:y}}else{z=B.call(t,"l")+b.call(t,"l");D=B.call(t,"r")+b.call(t,"r");F=B.call(t,"t")+b.call(t,"t");r=B.call(t,"b")+b.call(t,"b");w={x:E[0]+z,y:E[1]+F,0:E[0]+z,1:E[1]+F,width:G-(z+D),height:y-(F+r)}}w.right=w.x+w.width;w.bottom=w.y+w.height;return w},move:function(q,x,w){var t=this,n=t.getXY(),p=n[0],r=n[1],v=[p-x,r],o=[p+x,r],s=[p,r-x],y=[p,r+x],u={l:v,left:v,r:o,right:o,t:s,top:s,up:s,b:y,bottom:y,down:y};q=q.toLowerCase();t.moveTo(u[q][0],u[q][1],t.animTest.call(t,arguments,w,2))},setLeftTop:function(h,i){var e=this,g=e.dom.style;g.left=e.addUnits(h);g.top=e.addUnits(i);return e},getRegion:function(){return Ext.lib.Dom.getRegion(this.dom)},setBounds:function(h,j,l,i,m){var k=this;if(!m||!k.anim){k.setSize(l,i);k.setLocation(h,j)}else{k.anim({points:{to:[h,j]},width:{to:k.adjustWidth(l)},height:{to:k.adjustHeight(i)}},k.preanim(arguments,4),"motion")}return k},setRegion:function(c,d){return this.setBounds(c.left,c.top,c.right-c.left,c.bottom-c.top,this.animTest.call(this,arguments,d,1))}});Ext.Element.addMethods({isScrollable:function(){var b=this.dom;return b.scrollHeight>b.clientHeight||b.scrollWidth>b.clientWidth},scrollTo:function(d,c){this.dom["scroll"+(/top/i.test(d)?"Top":"Left")]=c;return this},getScroll:function(){var k=this.dom,l=document,j=l.body,o=l.documentElement,d,m,n;if(k==l||k==j){if(Ext.isIE&&Ext.isStrict){d=o.scrollLeft;m=o.scrollTop}else{d=window.pageXOffset;m=window.pageYOffset}n={left:d||(j?j.scrollLeft:0),top:m||(j?j.scrollTop:0)}}else{n={left:k.scrollLeft,top:k.scrollTop}}return n}});Ext.Element.addMethods({scrollTo:function(o,m,i){var j=/top/i,k="scroll"+(j.test(o)?"Top":"Left"),n=this,l=n.dom;if(!i||!n.anim){l[k]=m}else{n.anim({scroll:{to:j.test(k)?[l[k],m]:[m,l[k]]}},n.preanim(arguments,2),"scroll")}return n},scrollIntoView:function(y,v){var c=Ext.getDom(y)||Ext.getBody().dom,w=this.dom,x=this.getOffsetsTo(c),r=x[0]+c.scrollLeft,B=x[1]+c.scrollTop,b=B+w.offsetHeight,z=r+w.offsetWidth,A=c.clientHeight,o=parseInt(c.scrollTop,10),C=parseInt(c.scrollLeft,10),t=o+A,l=C+c.clientWidth;if(w.offsetHeight>A||B<o){c.scrollTop=B}else{if(b>t){c.scrollTop=b-A}}c.scrollTop=c.scrollTop;if(v!==false){if(w.offsetWidth>c.clientWidth||r<C){c.scrollLeft=r}else{if(z>l){c.scrollLeft=z-c.clientWidth}}c.scrollLeft=c.scrollLeft}return this},scrollChildIntoView:function(c,d){Ext.fly(c,"_scrollChildIntoView").scrollIntoView(this,d)},scroll:function(r,z,x){if(!this.isScrollable()){return}var w=this.dom,v=w.scrollLeft,h=w.scrollTop,q=w.scrollWidth,s=w.scrollHeight,u=w.clientWidth,A=w.clientHeight,y=false,l,t={l:Math.min(v+z,q-u),r:l=Math.max(v-z,0),t:Math.max(h-z,0),b:Math.min(h+z,s-A)};t.d=t.b;t.u=t.t;r=r.substr(0,1);if((l=t[r])>-1){y=true;this.scrollTo(r=="l"||r=="r"?"left":"top",l,this.preanim(arguments,2))}return y}});Ext.Element.VISIBILITY=1;Ext.Element.DISPLAY=2;Ext.Element.addMethods(function(){var o="visibility",r="display",t="hidden",m="none",u="originalDisplay",s="visibilityMode",q=Ext.Element.DISPLAY,p=Ext.Element.data,n=function(a){var b=p(a,u);if(b===undefined){p(a,u,b="")}return b},l=function(b){var a=p(b,s);if(a===undefined){p(b,s,a=1)}return a};return{originalDisplay:"",visibilityMode:1,setVisibilityMode:function(a){p(this.dom,s,a);return this},animate:function(a,d,e,c,b){this.anim(a,{duration:d,callback:e,easing:c},b);return this},anim:function(h,g,a,d,i,b){a=a||"run";g=g||{};var e=this,c=Ext.lib.Anim[a](e.dom,h,(g.duration||d)||0.35,(g.easing||i)||"easeOut",function(){if(b){b.call(e)}if(g.callback){g.callback.call(g.scope||e,e,g)}},e);g.anim=c;return c},preanim:function(b,a){return !b[a]?false:(Ext.isObject(b[a])?b[a]:{duration:b[a+1],callback:b[a+2],easing:b[a+3]})},isVisible:function(){return !this.isStyle(o,t)&&!this.isStyle(r,m)},setVisible:function(c,a){var e=this,d=e.dom,b=l(this.dom)==q;if(!a||!e.anim){if(b){e.setDisplayed(c)}else{e.fixDisplay();d.style.visibility=c?"visible":t}}else{if(c){e.setOpacity(0.01);e.setVisible(true)}e.anim({opacity:{to:(c?1:0)}},e.preanim(arguments,1),null,0.35,"easeIn",function(){if(!c){d.style[b?r:o]=(b)?m:t;Ext.fly(d).setOpacity(1)}})}return e},toggle:function(b){var a=this;a.setVisible(!a.isVisible(),a.preanim(arguments,0));return a},setDisplayed:function(a){if(typeof a=="boolean"){a=a?n(this.dom):m}this.setStyle(r,a);return this},fixDisplay:function(){var a=this;if(a.isStyle(r,m)){a.setStyle(o,t);a.setStyle(r,n(this.dom));if(a.isStyle(r,m)){a.setStyle(r,"block")}}},hide:function(a){this.setVisible(false,this.preanim(arguments,0));return this},show:function(a){this.setVisible(true,this.preanim(arguments,0));return this}}}());Ext.Element.addMethods(function(){var n="visibility",i="display",j="hidden",k="none",o="x-masked",l="x-masked-relative",m=Ext.Element.data;return{isVisible:function(c){var b=!this.isStyle(n,j)&&!this.isStyle(i,k),a=this.dom.parentNode;if(c!==true||!b){return b}while(a&&!/body/i.test(a.tagName)){if(!Ext.fly(a,"_isVisible").isVisible()){return false}a=a.parentNode}return true},isDisplayed:function(){return !this.isStyle(i,k)},enableDisplayMode:function(a){this.setVisibilityMode(Ext.Element.DISPLAY);if(!Ext.isEmpty(a)){m(this.dom,"originalDisplay",a)}return this},mask:function(r,d){var b=this,g=b.dom,c=Ext.DomHelper,e="ext-el-mask-msg",s,a;if(b.getStyle("position")=="static"){b.addClass(l)}if((s=m(g,"maskMsg"))){s.remove()}if((s=m(g,"mask"))){s.remove()}a=c.append(g,{cls:"ext-el-mask"},true);m(g,"mask",a);b.addClass(o);a.setDisplayed(true);if(typeof r=="string"){var h=c.append(g,{cls:e,cn:{tag:"div"}},true);m(g,"maskMsg",h);h.dom.className=d?e+" "+d:e;h.dom.firstChild.innerHTML=r;h.setDisplayed(true);h.center(b)}if(Ext.isIE&&!(Ext.isIE7&&Ext.isStrict)&&b.getStyle("height")=="auto"){a.setSize(undefined,b.getHeight())}return a},unmask:function(){var b=this,a=b.dom,d=m(a,"mask"),c=m(a,"maskMsg");if(d){if(c){c.remove();m(a,"maskMsg",undefined)}d.remove();m(a,"mask",undefined)}b.removeClass([o,l])},isMasked:function(){var a=m(this.dom,"mask");return a&&a.isVisible()},createShim:function(){var b=document.createElement("iframe"),a;b.frameBorder="0";b.className="ext-shim";if(Ext.isIE&&Ext.isSecure){b.src=Ext.SSL_SECURE_URL}a=Ext.get(this.dom.parentNode.insertBefore(b,this.dom));a.autoBoxAdjust=false;return a}}}());Ext.Element.addMethods({addKeyListener:function(e,h,i){var g;if(!Ext.isObject(e)||Ext.isArray(e)){g={key:e,fn:h,scope:i}}else{g={key:e.key,shift:e.shift,ctrl:e.ctrl,alt:e.alt,fn:h,scope:i}}return new Ext.KeyMap(this,g)},addKeyMap:function(b){return new Ext.KeyMap(this,b)}});(function(){var C=null,M=undefined,R=true,H=false,S="setX",U="setY",aa="setXY",O="left",Q="bottom",I="top",P="right",K="height",V="width",T="points",E="hidden",B="absolute",G="visible",W="motion",N="position",J="easeOut",X=new Ext.Element.Flyweight(),F={},D=function(a){return a||{}},L=function(a){X.dom=a;X.id=Ext.id(a);return X},Y=function(a){if(!F[a]){F[a]=[]}return F[a]},Z=function(a,b){F[a]=b};Ext.enableFx=R;Ext.Fx={switchStatements:function(b,a,c){return a.apply(this,c[b])},slideIn:function(l,o){o=D(o);var j=this,m=j.dom,g=m.style,d,c,h,a,b,g,k,e,i,n;l=l||"t";j.queueFx(o,function(){d=L(m).getXY();L(m).fixDisplay();c=L(m).getFxRestore();h={x:d[0],y:d[1],0:d[0],1:d[1],width:m.offsetWidth,height:m.offsetHeight};h.right=h.x+h.width;h.bottom=h.y+h.height;L(m).setWidth(h.width).setHeight(h.height);a=L(m).fxWrap(c.pos,o,E);g.visibility=G;g.position=B;function q(){L(m).fxUnwrap(a,c.pos,o);g.width=c.width;g.height=c.height;L(m).afterFx(o)}e={to:[h.x,h.y]};i={to:h.width};n={to:h.height};function p(x,A,w,z,u,s,ad,ae,r,v,y){var t={};L(x).setWidth(w).setHeight(z);if(L(x)[u]){L(x)[u](s)}A[ad]=A[ae]="0";if(r){t.width=r}if(v){t.height=v}if(y){t.points=y}return t}k=L(m).switchStatements(l.toLowerCase(),p,{t:[a,g,h.width,0,C,C,O,Q,C,n,C],l:[a,g,0,h.height,C,C,P,I,i,C,C],r:[a,g,h.width,h.height,S,h.right,O,I,C,C,e],b:[a,g,h.width,h.height,U,h.bottom,O,I,C,n,e],tl:[a,g,0,0,C,C,P,Q,i,n,e],bl:[a,g,0,0,U,h.y+h.height,P,I,i,n,e],br:[a,g,0,0,aa,[h.right,h.bottom],O,I,i,n,e],tr:[a,g,0,0,S,h.x+h.width,O,Q,i,n,e]});g.visibility=G;L(a).show();arguments.callee.anim=L(a).fxanim(k,o,W,0.5,J,q)});return j},slideOut:function(k,a){a=D(a);var i=this,l=i.dom,e=l.style,d=i.getXY(),b,c,h,g,j={to:0};k=k||"t";i.queueFx(a,function(){c=L(l).getFxRestore();h={x:d[0],y:d[1],0:d[0],1:d[1],width:l.offsetWidth,height:l.offsetHeight};h.right=h.x+h.width;h.bottom=h.y+h.height;L(l).setWidth(h.width).setHeight(h.height);b=L(l).fxWrap(c.pos,a,G);e.visibility=G;e.position=B;L(b).setWidth(h.width).setHeight(h.height);function n(){a.useDisplay?L(l).setDisplayed(H):L(l).hide();L(l).fxUnwrap(b,c.pos,a);e.width=c.width;e.height=c.height;L(l).afterFx(a)}function m(x,p,r,o,t,q,u,s,v){var w={};x[p]=x[r]="0";w[o]=t;if(q){w[q]=u}if(s){w[s]=v}return w}g=L(l).switchStatements(k.toLowerCase(),m,{t:[e,O,Q,K,j],l:[e,P,I,V,j],r:[e,O,I,V,j,T,{to:[h.right,h.y]}],b:[e,O,I,K,j,T,{to:[h.x,h.bottom]}],tl:[e,P,Q,V,j,K,j],bl:[e,P,I,V,j,K,j,T,{to:[h.x,h.bottom]}],br:[e,O,I,V,j,K,j,T,{to:[h.x+h.width,h.bottom]}],tr:[e,O,Q,V,j,K,j,T,{to:[h.right,h.y]}]});arguments.callee.anim=L(b).fxanim(g,a,W,0.5,J,n)});return i},puff:function(a){a=D(a);var c=this,b=c.dom,g=b.style,e,h,d;c.queueFx(a,function(){e=L(b).getWidth();h=L(b).getHeight();L(b).clearOpacity();L(b).show();d=L(b).getFxRestore();function i(){a.useDisplay?L(b).setDisplayed(H):L(b).hide();L(b).clearOpacity();L(b).setPositioning(d.pos);g.width=d.width;g.height=d.height;g.fontSize="";L(b).afterFx(a)}arguments.callee.anim=L(b).fxanim({width:{to:L(b).adjustWidth(e*2)},height:{to:L(b).adjustHeight(h*2)},points:{by:[-e*0.5,-h*0.5]},opacity:{to:0},fontSize:{to:200,unit:"%"}},a,W,0.5,J,i)});return c},switchOff:function(a){a=D(a);var c=this,b=c.dom,e=b.style,d;c.queueFx(a,function(){L(b).clearOpacity();L(b).clip();d=L(b).getFxRestore();function g(){a.useDisplay?L(b).setDisplayed(H):L(b).hide();L(b).clearOpacity();L(b).setPositioning(d.pos);e.width=d.width;e.height=d.height;L(b).afterFx(a)}L(b).fxanim({opacity:{to:0.3}},C,C,0.1,C,function(){L(b).clearOpacity();(function(){L(b).fxanim({height:{to:1},points:{by:[0,L(b).getHeight()*0.5]}},a,W,0.3,"easeIn",g)}).defer(100)})});return c},highlight:function(e,a){a=D(a);var c=this,b=c.dom,h=a.attr||"backgroundColor",g={},d;c.queueFx(a,function(){L(b).clearOpacity();L(b).show();function i(){b.style[h]=d;L(b).afterFx(a)}d=b.style[h];g[h]={from:e||"ffff9c",to:a.endColor||L(b).getColor(h)||"ffffff"};arguments.callee.anim=L(b).fxanim(g,a,"color",1,"easeIn",i)});return c},frame:function(h,d,a){a=D(a);var e=this,b=e.dom,g,c;e.queueFx(a,function(){h=h||"#C3DAF9";if(h.length==6){h="#"+h}d=d||1;L(b).show();var i=L(b).getXY(),k={x:i[0],y:i[1],0:i[0],1:i[1],width:b.offsetWidth,height:b.offsetHeight},l=function(){g=L(document.body||document.documentElement).createChild({style:{visbility:E,position:B,"z-index":35000,border:"0px solid "+h}});return g.queueFx({},j)};arguments.callee.anim={isAnimated:true,stop:function(){d=0;g.stopFx()}};function j(){var m=Ext.isBorderBox?2:1;c=g.anim({top:{from:k.y,to:k.y-20},left:{from:k.x,to:k.x-20},borderWidth:{from:0,to:10},opacity:{from:1,to:0},height:{from:k.height,to:k.height+20*m},width:{from:k.width,to:k.width+20*m}},{duration:a.duration||1,callback:function(){g.remove();--d>0?l():L(b).afterFx(a)}});arguments.callee.anim={isAnimated:true,stop:function(){c.stop()}}}l()});return e},pause:function(a){var b=this.dom,c;this.queueFx({},function(){c=setTimeout(function(){L(b).afterFx({})},a*1000);arguments.callee.anim={isAnimated:true,stop:function(){clearTimeout(c);L(b).afterFx({})}}});return this},fadeIn:function(b){b=D(b);var d=this,c=d.dom,a=b.endOpacity||1;d.queueFx(b,function(){L(c).setOpacity(0);L(c).fixDisplay();c.style.visibility=G;arguments.callee.anim=L(c).fxanim({opacity:{to:a}},b,C,0.5,J,function(){if(a==1){L(c).clearOpacity()}L(c).afterFx(b)})});return d},fadeOut:function(b){b=D(b);var d=this,c=d.dom,e=c.style,a=b.endOpacity||0;d.queueFx(b,function(){arguments.callee.anim=L(c).fxanim({opacity:{to:a}},b,C,0.5,J,function(){if(a==0){Ext.Element.data(c,"visibilityMode")==Ext.Element.DISPLAY||b.useDisplay?e.display="none":e.visibility=E;L(c).clearOpacity()}L(c).afterFx(b)})});return d},scale:function(c,b,a){this.shift(Ext.apply({},a,{width:c,height:b}));return this},shift:function(a){a=D(a);var b=this.dom,c={};this.queueFx(a,function(){for(var d in a){if(a[d]!=M){c[d]={to:a[d]}}}c.width?c.width.to=L(b).adjustWidth(a.width):c;c.height?c.height.to=L(b).adjustWidth(a.height):c;if(c.x||c.y||c.xy){c.points=c.xy||{to:[c.x?c.x.to:L(b).getX(),c.y?c.y.to:L(b).getY()]}}arguments.callee.anim=L(b).fxanim(c,a,W,0.35,J,function(){L(b).afterFx(a)})});return this},ghost:function(k,b){b=D(b);var i=this,a=i.dom,e=a.style,h={opacity:{to:0},points:{}},d=h.points,c,g,j;k=k||"b";i.queueFx(b,function(){c=L(a).getFxRestore();g=L(a).getWidth();j=L(a).getHeight();function l(){b.useDisplay?L(a).setDisplayed(H):L(a).hide();L(a).clearOpacity();L(a).setPositioning(c.pos);e.width=c.width;e.height=c.height;L(a).afterFx(b)}d.by=L(a).switchStatements(k.toLowerCase(),function(m,n){return[m,n]},{t:[0,-j],l:[-g,0],r:[g,0],b:[0,j],tl:[-g,-j],bl:[-g,j],br:[g,j],tr:[g,-j]});arguments.callee.anim=L(a).fxanim(h,b,W,0.5,J,l)});return i},syncFx:function(){var a=this;a.fxDefaults=Ext.apply(a.fxDefaults||{},{block:H,concurrent:R,stopFx:H});return a},sequenceFx:function(){var a=this;a.fxDefaults=Ext.apply(a.fxDefaults||{},{block:H,concurrent:H,stopFx:H});return a},nextFx:function(){var a=Y(this.dom.id)[0];if(a){a.call(this)}},hasActiveFx:function(){return Y(this.dom.id)[0]},stopFx:function(d){var c=this,a=c.dom.id;if(c.hasActiveFx()){var b=Y(a)[0];if(b&&b.anim){if(b.anim.isAnimated){Z(a,[b]);b.anim.stop(d!==undefined?d:R)}else{Z(a,[])}}}return c},beforeFx:function(a){if(this.hasActiveFx()&&!a.concurrent){if(a.stopFx){this.stopFx();return R}return H}return R},hasFxBlock:function(){var a=Y(this.dom.id);return a&&a[0]&&a[0].block},queueFx:function(a,d){var c=this;if(!c.hasFxBlock()){Ext.applyIf(a,c.fxDefaults);if(!a.concurrent){var b=c.beforeFx(a);d.block=a.block;Y(c.dom.id).push(d);if(b){c.nextFx()}}else{d.call(c)}}return c},fxWrap:function(a,c,e){var d=this.dom,g,h;if(!c.wrap||!(g=Ext.getDom(c.wrap))){if(c.fixPosition){h=L(d).getXY()}var b=document.createElement("div");b.style.visibility=e;g=d.parentNode.insertBefore(b,d);L(g).setPositioning(a);if(L(g).isStyle(N,"static")){L(g).position("relative")}L(d).clearPositioning("auto");L(g).clip();g.appendChild(d);if(h){L(g).setXY(h)}}return g},fxUnwrap:function(d,a,b){var c=this.dom;L(c).clearPositioning();L(c).setPositioning(a);if(!b.wrap){d.parentNode.insertBefore(c,d);L(d).remove()}},getFxRestore:function(){var a=this.dom.style;return{pos:this.getPositioning(),width:a.width,height:a.height}},afterFx:function(c){var d=this.dom,a=d.id,b=!c.concurrent;if(c.afterStyle){L(d).setStyle(c.afterStyle)}if(c.afterCls){L(d).addClass(c.afterCls)}if(c.remove==R){L(d).remove()}if(b){Y(a).shift()}if(c.callback){c.callback.call(c.scope,L(d))}if(b){L(d).nextFx()}},fxanim:function(d,c,g,b,e,h){g=g||"run";c=c||{};var a=Ext.lib.Anim[g](this.dom,d,(c.duration||b)||0.35,(c.easing||e)||J,h,this);c.anim=a;return a}};Ext.Fx.resize=Ext.Fx.scale;Ext.Element.addMethods(Ext.Fx)})();Ext.CompositeElementLite=function(c,d){this.elements=[];this.add(c,d);this.el=new Ext.Element.Flyweight()};Ext.CompositeElementLite.prototype={isComposite:true,getCount:function(){return this.elements.length},add:function(c){if(c){if(Ext.isArray(c)){this.elements=this.elements.concat(c)}else{var d=this.elements;Ext.each(c,function(a){d.push(a)})}}return this},invoke:function(h,g){var e=this.elements,i=this.el;Ext.each(e,function(a){i.dom=a;Ext.Element.prototype[h].apply(i,g)});return this},item:function(d){var c=this;if(!c.elements[d]){return null}c.el.dom=c.elements[d];return c.el},addListener:function(g,h,i,e){Ext.each(this.elements,function(a){Ext.EventManager.on(a,g,h,i||a,e)});return this},each:function(i,e){var h=this,g=h.el;Ext.each(h.elements,function(a,b){g.dom=a;return i.call(e||g,g,h,b)});return h},indexOf:function(b){return this.elements.indexOf(Ext.getDom(b))},replaceElement:function(j,k,h){var d=!isNaN(j)?j:this.indexOf(j),i;if(d>-1){k=Ext.getDom(k);if(h){i=this.elements[d];i.parentNode.insertBefore(k,i);Ext.removeNode(i)}this.elements.splice(d,1,k)}return this},clear:function(){this.elements=[]}};Ext.CompositeElementLite.prototype.on=Ext.CompositeElementLite.prototype.addListener;(function(){var g,d=Ext.Element.prototype,e=Ext.CompositeElementLite.prototype;for(g in d){if(Ext.isFunction(d[g])){(function(a){e[a]=e[a]||function(){return this.invoke(a,arguments)}}).call(e,g)}}})();if(Ext.DomQuery){Ext.Element.selectorFunction=Ext.DomQuery.select}Ext.Element.select=function(g,h,e){var i;if(typeof g=="string"){i=Ext.Element.selectorFunction(g,e)}else{if(g.length!==undefined){i=g}else{throw"Invalid selector"}}return new Ext.CompositeElementLite(i)};Ext.select=Ext.Element.select;Ext.apply(Ext.CompositeElementLite.prototype,{addElements:function(g,e){if(!g){return this}if(typeof g=="string"){g=Ext.Element.selectorFunction(g,e)}var d=this.elements;Ext.each(g,function(a){d.push(Ext.get(a))});return this},fill:function(b){this.elements=[];this.add(b);return this},first:function(){return this.item(0)},last:function(){return this.item(this.getCount()-1)},contains:function(b){return this.indexOf(b)!=-1},filter:function(d){var c=[];this.each(function(a){if(a.is(d)){c[c.length]=a.dom}});this.fill(c);return this},removeElement:function(j,i){var k=this,h=this.elements,g;Ext.each(j,function(a){if((g=(h[a]||h[a=k.indexOf(a)]))){if(i){if(g.dom){g.remove()}else{Ext.removeNode(g)}}h.splice(a,1)}});return this}});Ext.CompositeElement=function(c,d){this.elements=[];this.add(c,d)};Ext.extend(Ext.CompositeElement,Ext.CompositeElementLite,{invoke:function(c,d){Ext.each(this.elements,function(a){Ext.Element.prototype[c].apply(a,d)});return this},add:function(g,e){if(!g){return this}if(typeof g=="string"){g=Ext.Element.selectorFunction(g,e)}var d=this.elements;Ext.each(g,function(a){d.push(Ext.get(a))});return this},item:function(b){return this.elements[b]||null},indexOf:function(b){return this.elements.indexOf(Ext.get(b))},filter:function(e){var g=this,d=[];Ext.each(g.elements,function(a){if(a.is(e)){d.push(Ext.get(a))}});g.elements=d;return g},each:function(c,d){Ext.each(this.elements,function(a,b){return c.call(d||a,a,this,b)},this);return this}});Ext.Element.select=function(g,h,e){var i;if(typeof g=="string"){i=Ext.Element.selectorFunction(g,e)}else{if(g.length!==undefined){i=g}else{throw"Invalid selector"}}return(h===true)?new Ext.CompositeElement(i):new Ext.CompositeElementLite(i)};Ext.select=Ext.Element.select;(function(){var u="beforerequest",m="requestcomplete",n="requestexception",s=undefined,p="load",q="POST",o="GET",r=window;Ext.data.Connection=function(a){Ext.apply(this,a);this.addEvents(u,m,n);Ext.data.Connection.superclass.constructor.call(this)};function v(a){this.transId=false;var b=a.argument.options;a.argument=b?b.argument:null;this.fireEvent(m,this,a,b);if(b.success){b.success.call(b.scope,a,b)}if(b.callback){b.callback.call(b.scope,b,true,a)}}function t(a,b){this.transId=false;var c=a.argument.options;a.argument=c?c.argument:null;this.fireEvent(n,this,a,c,b);if(c.failure){c.failure.call(c.scope,a,c)}if(c.callback){c.callback.call(c.scope,c,false,a)}}function w(A,e,d){var c=Ext.id(),g=document,l=g.createElement("iframe"),b=Ext.getDom(A.form),h=[],i,B="multipart/form-data",a={target:b.target,method:b.method,encoding:b.encoding,enctype:b.enctype,action:b.action};Ext.apply(l,{id:c,name:c,className:"x-hidden",src:Ext.SSL_SECURE_URL});g.body.appendChild(l);if(Ext.isIE){document.frames[c].name=c}Ext.apply(b,{target:c,method:q,enctype:B,encoding:B,action:d||a.action});e=Ext.urlDecode(e,false);for(var j in e){if(e.hasOwnProperty(j)){i=g.createElement("input");i.type="hidden";i.value=e[i.name=j];b.appendChild(i);h.push(i)}}function k(){var H=this,x={responseText:"",responseXML:null,argument:A.argument},y,z;try{y=l.contentWindow.document||l.contentDocument||r.frames[c].document;if(y){if(y.body){if(/textarea/i.test((z=y.body.firstChild||{}).tagName)){x.responseText=z.value}else{x.responseText=y.body.innerHTML}}x.responseXML=y.XMLDocument||y}}catch(G){}Ext.EventManager.removeListener(l,p,k,H);H.fireEvent(m,H,x,A);function F(C,D,E){if(Ext.isFunction(C)){C.apply(D,E)}}F(A.success,A.scope,[x,A]);F(A.callback,A.scope,[A,true,x]);if(!H.debugUploads){setTimeout(function(){Ext.removeNode(l)},100)}}Ext.EventManager.on(l,p,k,this);b.submit();Ext.apply(b,a);Ext.each(h,function(x){Ext.removeNode(x)})}Ext.extend(Ext.data.Connection,Ext.util.Observable,{timeout:30000,autoAbort:false,disableCaching:true,disableCachingParam:"_dc",request:function(j){var g=this;if(g.fireEvent(u,g,j)){if(j.el){if(!Ext.isEmpty(j.indicatorText)){g.indicatorText='<div class="loading-indicator">'+j.indicatorText+"</div>"}if(g.indicatorText){Ext.getDom(j.el).innerHTML=g.indicatorText}j.success=(Ext.isFunction(j.success)?j.success:function(){}).createInterceptor(function(k){Ext.getDom(j.el).innerHTML=k.responseText})}var b=j.params,c=j.url||g.url,d,i={success:v,failure:t,scope:g,argument:{options:j},timeout:j.timeout||g.timeout},a,e;if(Ext.isFunction(b)){b=b.call(j.scope||r,j)}b=Ext.urlEncode(g.extraParams,Ext.isObject(b)?Ext.urlEncode(b):b);if(Ext.isFunction(c)){c=c.call(j.scope||r,j)}if((a=Ext.getDom(j.form))){c=c||a.action;if(j.isUpload||/multipart\/form-data/i.test(a.getAttribute("enctype"))){return w.call(g,j,b,c)}e=Ext.lib.Ajax.serializeForm(a);b=b?(b+"&"+e):e}d=j.method||g.method||((b||j.xmlData||j.jsonData)?q:o);if(d===o&&(g.disableCaching&&j.disableCaching!==false)||j.disableCaching===true){var h=j.disableCachingParam||g.disableCachingParam;c=Ext.urlAppend(c,h+"="+(new Date().getTime()))}j.headers=Ext.apply(j.headers||{},g.defaultHeaders||{});if(j.autoAbort===true||g.autoAbort){g.abort()}if((d==o||j.xmlData||j.jsonData)&&b){c=Ext.urlAppend(c,b);b=""}return(g.transId=Ext.lib.Ajax.request(d,c,i,b,j))}else{return j.callback?j.callback.apply(j.scope,[j,s,s]):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)}}})})();Ext.Ajax=new Ext.data.Connection({autoAbort:false,serializeForm:function(b){return Ext.lib.Ajax.serializeForm(b)}});Ext.UpdateManager=Ext.Updater=Ext.extend(Ext.util.Observable,function(){var h="beforeupdate",l="update",m="failure";function i(c){var b=this;b.transaction=null;if(c.argument.form&&c.argument.reset){try{c.argument.form.reset()}catch(a){}}if(b.loadScripts){b.renderer.render(b.el,c,b,j.createDelegate(b,[c]))}else{b.renderer.render(b.el,c,b);j.call(b,c)}}function j(c,b,a){this.fireEvent(b||l,this.el,c);if(Ext.isFunction(c.argument.callback)){c.argument.callback.call(c.argument.scope,this.el,Ext.isEmpty(a)?true:false,c,c.argument.options)}}function k(a){j.call(this,a,m,!!(this.transaction=null))}return{constructor:function(b,c){var a=this;b=Ext.get(b);if(!c&&b.updateManager){return b.updateManager}a.el=b;a.defaultUrl=null;a.addEvents(h,l,m);Ext.apply(a,Ext.Updater.defaults);a.transaction=null;a.refreshDelegate=a.refresh.createDelegate(a);a.updateDelegate=a.update.createDelegate(a);a.formUpdateDelegate=(a.formUpdate||function(){}).createDelegate(a);a.renderer=a.renderer||a.getDefaultRenderer();Ext.Updater.superclass.constructor.call(a)},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(e,q,o,b){var c=this,g,d;if(c.fireEvent(h,c.el,e,q)!==false){if(Ext.isObject(e)){g=e;e=g.url;q=q||g.params;o=o||g.callback;b=b||g.discardUrl;d=g.scope;if(!Ext.isEmpty(g.nocache)){c.disableCaching=g.nocache}if(!Ext.isEmpty(g.text)){c.indicatorText='<div class="loading-indicator">'+g.text+"</div>"}if(!Ext.isEmpty(g.scripts)){c.loadScripts=g.scripts}if(!Ext.isEmpty(g.timeout)){c.timeout=g.timeout}}c.showLoading();if(!b){c.defaultUrl=e}if(Ext.isFunction(e)){e=e.call(c)}var a=Ext.apply({},{url:e,params:(Ext.isFunction(q)&&d)?q.createDelegate(d):q,success:i,failure:k,scope:c,callback:undefined,timeout:(c.timeout*1000),disableCaching:c.disableCaching,argument:{options:g,url:e,form:null,callback:o,scope:d||window,params:q}},g);c.transaction=Ext.Ajax.request(a)}},formUpdate:function(b,e,c,a){var d=this;if(d.fireEvent(h,d.el,b,e)!==false){if(Ext.isFunction(e)){e=e.call(d)}b=Ext.getDom(b);d.transaction=Ext.Ajax.request({form:b,url:e,success:i,failure:k,scope:d,timeout:(d.timeout*1000),argument:{url:e,form:b,callback:a,reset:c}});d.showLoading.defer(1,d)}},startAutoRefresh:function(e,d,b,a,g){var c=this;if(g){c.update(d||c.defaultUrl,b,a,true)}if(c.autoRefreshProcId){clearInterval(c.autoRefreshProcId)}c.autoRefreshProcId=setInterval(c.update.createDelegate(c,[d||c.defaultUrl,b,a,true]),e*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(a){if(this.defaultUrl){this.update(this.defaultUrl,null,a,true)}}}}());Ext.Updater.defaults={timeout:30,disableCaching:false,showLoadIndicator:true,indicatorText:'<div class="loading-indicator">Loading...</div>',loadScripts:false,sslBlankUrl:(Ext.SSL_SECURE_URL||"javascript:false")};Ext.Updater.updateElement=function(j,k,i,g){var h=Ext.get(j).getUpdater();Ext.apply(h,g);h.update(k,i,g?g.callback:null)};Ext.Updater.BasicRenderer=function(){};Ext.Updater.BasicRenderer.prototype={render:function(i,g,e,h){i.update(g.responseText,e.loadScripts,h)}};(function(){Date.useStrict=false;function c(a){var b=Array.prototype.slice.call(arguments,1);return a.replace(/\{(\d+)\}/g,function(i,h){return b[h]})}Date.formatCodeToRegex=function(b,g){var a=Date.parseCodes[b];if(a){a=typeof a=="function"?a():a;Date.parseCodes[b]=a}return a?Ext.applyIf({c:a.c?c(a.c,g||"{0}"):a.c},a):{g:0,c:null,s:Ext.escapeRe(b)}};var d=Date.formatCodeToRegex;Ext.apply(Date,{parseFunctions:{"M$":function(h,i){var b=new RegExp("\\/Date\\(([-+])?(\\d+)(?:[+-]\\d{4})?\\)\\/");var a=(h||"").match(b);return a?new Date(((a[1]||"")+a[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(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:"this.getFullYear()",y:"('' + this.getFullYear()).substring(2, 4)",a:"(this.getHours() < 12 ? 'am' : 'pm')",A:"(this.getHours() < 12 ? 'AM' : 'PM')",g:"((this.getHours() % 12) ? this.getHours() % 12 : 12)",G:"this.getHours()",h:"String.leftPad((this.getHours() % 12) ? this.getHours() % 12 : 12, 2, '0')",H:"String.leftPad(this.getHours(), 2, '0')",i:"String.leftPad(this.getMinutes(), 2, '0')",s:"String.leftPad(this.getSeconds(), 2, '0')",u:"String.leftPad(this.getMilliseconds(), 3, '0')",O:"this.getGMTOffset()",P:"this.getGMTOffset(true)",T:"this.getTimezone()",Z:"(this.getTimezoneOffset() * -60)",c:function(){for(var a="Y-m-dTH:i:sP",e=[],i=0,l=a.length;i<l;++i){var b=a.charAt(i);e.push(b=="T"?"'T'":Date.getFormatCode(b))}return e.join(" + ")},U:"Math.round(this.getTime() / 1000)"},isValid:function(p,r,q,b,i,h,m){b=b||0;i=i||0;h=h||0;m=m||0;var a=new Date(p,r-1,q,b,i,h,m);return p==a.getFullYear()&&r==a.getMonth()+1&&q==a.getDate()&&b==a.getHours()&&i==a.getMinutes()&&h==a.getSeconds()&&m==a.getMilliseconds()},parseDate:function(h,a,i){var b=Date.parseFunctions;if(b[a]==null){Date.createParser(a)}return b[a](h,Ext.isDefined(i)?i:Date.useStrict)},getFormatCode:function(a){var b=Date.formatCodes[a];if(b){b=typeof b=="function"?b():b;Date.formatCodes[a]=b}return b||("'"+String.escape(a)+"'")},createFormat:function(a){var b=[],k=false,i="";for(var j=0;j<a.length;++j){i=a.charAt(j);if(!k&&i=="\\"){k=true}else{if(k){k=false;b.push("'"+String.escape(i)+"'")}else{b.push(Date.getFormatCode(i))}}}Date.formatFunctions[a]=new Function("return "+b.join("+"))},createParser:function(){var a=["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 = y >= 0? y : Ext.num(def.y, dt.getFullYear());","m = m >= 0? m : Ext.num(def.m - 1, dt.getMonth());","d = d >= 0? d : Ext.num(def.d, dt.getDate());","h  = h || Ext.num(def.h, dt.getHours());","i  = i || Ext.num(def.i, dt.getMinutes());","s  = s || Ext.num(def.s, dt.getSeconds());","ms = ms || Ext.num(def.ms, dt.getMilliseconds());","if(z >= 0 && y >= 0){","v = new Date(y, 0, 1, h, i, s, ms);","v = !strict? v : (strict === true && (z <= 364 || (v.isLeapYear() && z <= 365))? v.add(Date.DAY, z) : null);","}else if(strict === true && !Date.isValid(y, m + 1, d, h, i, s, ms)){","v = null;","}else{","v = new Date(y, m, d, h, i, s, ms);","}","}","}","if(v){","if(zz != null){","v = v.add(Date.SECOND, -v.getTimezoneOffset() * 60 - zz);","}else if(o){","v = v.add(Date.MINUTE, -v.getTimezoneOffset() + (sn == '+'? -1 : 1) * (hr * 60 + mn));","}","}","return v;"].join("\n");return function(i){var t=Date.parseRegexes.length,b=1,s=[],o=[],p=false,u="";for(var q=0;q<i.length;++q){u=i.charAt(q);if(!p&&u=="\\"){p=true}else{if(p){p=false;o.push(String.escape(u))}else{var r=d(u,b);b+=r.g;o.push(r.s);if(r.g&&r.c){s.push(r.c)}}}}Date.parseRegexes[t]=new RegExp("^"+o.join("")+"$","i");Date.parseFunctions[i]=new Function("input","strict",c(a,t,s.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 b=[],a=0;a<7;b.push(Date.getShortDayName(a)),++a){}return{g:0,c:null,s:"(?:"+b.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 b=[],a=0;a<12;b.push(Date.getShortMonthName(a)),++a){}return Ext.applyIf({s:"("+b.join("|")+")"},d("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 d("Y")},Y:{g:1,c:"y = parseInt(results[{0}], 10);\n",s:"(\\d{4})"},y:{g:1,c:"var ty = parseInt(results[{0}], 10);\ny = ty > Date.y2kYear ? 1900 + ty : 2000 + ty;\n",s:"(\\d{1,2})"},a:{g:1,c:"if (results[{0}] == 'am') {\nif (h == 12) { h = 0; }\n} else { if (h < 12) { h += 12; }}",s:"(am|pm)"},A:{g:1,c:"if (results[{0}] == 'AM') {\nif (h == 12) { h = 0; }\n} else { if (h < 12) { h += 12; }}",s:"(AM|PM)"},g:function(){return d("G")},G:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(\\d{1,2})"},h:function(){return d("H")},H:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},i:{g:1,c:"i = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},s:{g:1,c:"s = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},u:{g:1,c:"ms = results[{0}]; ms = parseInt(ms, 10)/Math.pow(10, ms.length - 3);\n",s:"(\\d+)"},O:{g:1,c:["o = results[{0}];","var sn = o.substring(0,1),","hr = o.substring(1,3)*1 + Math.floor(o.substring(3,5) / 60),","mn = o.substring(3,5) % 60;","o = ((-12 <= (hr*60 + mn)/60) && ((hr*60 + mn)/60 <= 14))? (sn + String.leftPad(hr, 2, '0') + String.leftPad(mn, 2, '0')) : null;\n"].join("\n"),s:"([+-]\\d{4})"},P:{g:1,c:["o = results[{0}];","var sn = o.substring(0,1),","hr = o.substring(1,3)*1 + Math.floor(o.substring(4,6) / 60),","mn = o.substring(4,6) % 60;","o = ((-12 <= (hr*60 + mn)/60) && ((hr*60 + mn)/60 <= 14))? (sn + String.leftPad(hr, 2, '0') + String.leftPad(mn, 2, '0')) : null;\n"].join("\n"),s:"([+-]\\d{2}:\\d{2})"},T:{g:0,c:null,s:"[A-Z]{1,4}"},Z:{g:1,c:"zz = results[{0}] * 1;\nzz = (-43200 <= zz && zz <= 50400)? zz : null;\n",s:"([+-]?\\d{1,5})"},c:function(){var b=[],i=[d("Y",1),d("m",2),d("d",3),d("h",4),d("i",5),d("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){",d("P",8).c,"}else{",d("O",8).c,"}","}"].join("\n")}];for(var a=0,h=i.length;a<h;++a){b.push(i[a].c)}return{g:1,c:b.join(""),s:[i[0].s,"(?:","-",i[1].s,"(?:","-",i[2].s,"(?:","(?:T| )?",i[3].s,":",i[4].s,"(?::",i[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(b){if(Date.formatFunctions[b]==null){Date.createFormat(b)}return Date.formatFunctions[b].call(this)},getTimezone:function(){return this.toString().replace(/^.* (?:\((.*)\)|([A-Z]{1,4})(?:[\-+][0-9]{4})?(?: -?\d+)?)$/,"$1$2").replace(/[^A-Z]/g,"")},getGMTOffset:function(b){return(this.getTimezoneOffset()>0?"-":"+")+String.leftPad(Math.floor(Math.abs(this.getTimezoneOffset())/60),2,"0")+(b?":":"")+String.leftPad(Math.abs(this.getTimezoneOffset()%60),2,"0")},getDayOfYear:function(){var i=0,d=0,h=this.clone(),g=this.getMonth();for(i=0,h.setMonth(0);i<g;h.setMonth(++i)){d+=h.getDaysInMonth()}return d+this.getDate()-1},getWeekOfYear:function(){var d=86400000,c=7*d;return function(){var b=Date.UTC(this.getFullYear(),this.getMonth(),this.getDate()+3)/d,g=Math.floor(b/7),a=new Date(g*c).getUTCFullYear();return g-Math.floor(Date.UTC(a,0,7)/c)+1}}(),isLeapYear:function(){var b=this.getFullYear();return !!((b&3)==0&&(b%100||(b%400==0&&b)))},getFirstDayOfMonth:function(){var b=(this.getDay()-(this.getDate()-1))%7;return(b<0)?(b+7):b},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 b=[31,28,31,30,31,30,31,31,30,31,30,31];return function(){var a=this.getMonth();return a==1&&this.isLeapYear()?29:b[a]}}(),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(h){if(h){return this.clone().clearTime()}var c=this.getDate();this.setHours(0);this.setMinutes(0);this.setSeconds(0);this.setMilliseconds(0);if(this.getDate()!=c){for(var d=1,i=this.add(Date.HOUR,d);i.getDate()!=c;d++,i=this.add(Date.HOUR,d)){}this.setDate(c);this.setHours(i.getHours())}return this},add:function(d,i){var h=this.clone();if(!d||i===0){return h}switch(d.toLowerCase()){case Date.MILLI:h.setMilliseconds(this.getMilliseconds()+i);break;case Date.SECOND:h.setSeconds(this.getSeconds()+i);break;case Date.MINUTE:h.setMinutes(this.getMinutes()+i);break;case Date.HOUR:h.setHours(this.getHours()+i);break;case Date.DAY:h.setDate(this.getDate()+i);break;case Date.MONTH:var g=this.getDate();if(g>28){g=Math.min(g,this.getFirstDateOfMonth().add("mo",i).getLastDateOfMonth().getDate())}h.setDate(g);h.setMonth(this.getMonth()+i);break;case Date.YEAR:h.setFullYear(this.getFullYear()+i);break}return h},between:function(g,e){var d=this.getTime();return g.getTime()<=d&&d<=e.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(g){if(g<=-1){var h=Math.ceil(-g),i=Math.ceil(h/12),e=(h%12)?12-h%12:0;this.setFullYear(this.getFullYear()-i);return this._xMonth(e)}else{return this._xMonth(g)}},setDate:function(b){return this.setTime(this.getTime()-(this.getDate()-b)*86400000)}})}Ext.util.DelayedTask=function(l,m,i){var k=this,j,h=function(){clearInterval(j);j=null;l.apply(m,i||[])};k.delay=function(c,a,b,d){k.cancel();l=a||l;m=b||m;i=d||i;j=setInterval(h,c)};k.cancel=function(){if(j){clearInterval(j);j=null}}};Ext.util.MixedCollection=function(c,d){this.items=[];this.map={};this.keys=[];this.length=0;this.addEvents("clear","add","replace","remove","sort");this.allowFunctions=c===true;if(d){this.getKey=d}Ext.util.MixedCollection.superclass.constructor.call(this)};Ext.extend(Ext.util.MixedCollection,Ext.util.Observable,{allowFunctions:false,add:function(d,g){if(arguments.length==1){g=arguments[0];d=this.getKey(g)}if(typeof d!="undefined"&&d!==null){var e=this.map[d];if(typeof e!="undefined"){return this.replace(d,g)}this.map[d]=g}this.length++;this.items.push(g);this.keys.push(d);this.fireEvent("add",this.length-1,g,d);return g},getKey:function(b){return b.id},replace:function(i,h){if(arguments.length==1){h=arguments[0];i=this.getKey(h)}var g=this.map[i];if(typeof i=="undefined"||i===null||typeof g=="undefined"){return this.add(i,h)}var e=this.indexOfKey(i);this.items[e]=h;this.map[i]=h;this.fireEvent("replace",i,g,h);return h},addAll:function(i){if(arguments.length>1||Ext.isArray(i)){var g=arguments.length>1?arguments:i;for(var j=0,h=g.length;j<h;j++){this.add(g[j])}}else{for(var k in i){if(this.allowFunctions||typeof i[k]!="function"){this.add(k,i[k])}}}},each:function(i,j){var g=[].concat(this.items);for(var k=0,h=g.length;k<h;k++){if(i.call(j||g[k],g[k],k,h)===false){break}}},eachKey:function(h,i){for(var e=0,g=this.keys.length;e<g;e++){h.call(i||window,this.keys[e],this.items[e],e,g)}},find:function(h,i){for(var e=0,g=this.items.length;e<g;e++){if(h.call(i||window,this.items[e],this.keys[e])){return this.items[e]}}return null},insert:function(e,d,g){if(arguments.length==2){g=arguments[1];d=this.getKey(g)}if(this.containsKey(d)){this.suspendEvents();this.removeKey(d);this.resumeEvents()}if(e>=this.length){return this.add(d,g)}this.length++;this.items.splice(e,0,g);if(typeof d!="undefined"&&d!==null){this.map[d]=g}this.keys.splice(e,0,d);this.fireEvent("add",e,g,d);return g},remove:function(b){return this.removeAt(this.indexOf(b))},removeAt:function(e){if(e<this.length&&e>=0){this.length--;var g=this.items[e];this.items.splice(e,1);var d=this.keys[e];if(typeof d!="undefined"){delete this.map[d]}this.keys.splice(e,1);this.fireEvent("remove",g,d);return g}return false},removeKey:function(b){return this.removeAt(this.indexOfKey(b))},getCount:function(){return this.length},indexOf:function(b){return this.items.indexOf(b)},indexOfKey:function(b){return this.keys.indexOf(b)},item:function(d){var e=this.map[d],g=e!==undefined?e:(typeof d=="number")?this.items[d]:undefined;return !Ext.isFunction(g)||this.allowFunctions?g:null},itemAt:function(b){return this.items[b]},key:function(b){return this.map[b]},contains:function(b){return this.indexOf(b)!=-1},containsKey:function(b){return typeof this.map[b]!="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(c,s,i){var p,o,q=String(s).toUpperCase()=="DESC"?-1:1,k=[],r=this.keys,n=this.items;i=i||function(a,b){return a-b};for(p=0,o=n.length;p<o;p++){k[k.length]={key:r[p],value:n[p],index:p}}k.sort(function(b,d){var a=i(b[c],d[c])*q;if(a===0){a=(b.index<d.index?-1:1)}return a});for(p=0,o=k.length;p<o;p++){n[p]=k[p].value;r[p]=k[p].key}this.fireEvent("sort",this)},sort:function(d,c){this._sort("value",d,c)},keySort:function(d,c){this._sort("key",d,c||function(h,i){var a=String(h).toUpperCase(),b=String(i).toUpperCase();return a>b?1:(a<b?-1:0)})},getRange:function(i,h){var g=this.items;if(g.length<1){return[]}i=i||0;h=Math.min(typeof h=="undefined"?this.length-1:h,this.length-1);var k,j=[];if(i<=h){for(k=i;k<=h;k++){j[j.length]=g[k]}}else{for(k=i;k>=h;k--){j[j.length]=g[k]}}return j},filter:function(i,e,h,g){if(Ext.isEmpty(e,false)){return this.clone()}e=this.createValueMatcher(e,h,g);return this.filterBy(function(a){return a&&e.test(a[i])})},filterBy:function(l,m){var k=new Ext.util.MixedCollection();k.getKey=this.getKey;var i=this.keys,n=this.items;for(var o=0,j=n.length;o<j;o++){if(l.call(m||this,n[o],i[o])){k.add(i[o],n[o])}}return k},findIndex:function(k,g,i,j,h){if(Ext.isEmpty(g,false)){return -1}g=this.createValueMatcher(g,j,h);return this.findIndexBy(function(a){return a&&g.test(a[k])},null,i)},findIndexBy:function(l,m,k){var i=this.keys,n=this.items;for(var o=(k||0),j=n.length;o<j;o++){if(l.call(m||this,n[o],i[o])){return o}}return -1},createValueMatcher:function(d,g,e){if(!d.exec){d=String(d);d=new RegExp((g===true?"":"^")+Ext.escapeRe(d),e?"":"i")}return d},clone:function(){var i=new Ext.util.MixedCollection();var g=this.keys,j=this.items;for(var k=0,h=j.length;k<h;k++){i.add(g[k],j[k])}i.getKey=this.getKey;return i}});Ext.util.MixedCollection.prototype.get=Ext.util.MixedCollection.prototype.item;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(typeof o=="undefined"||o===null){return"null"}else{if(Ext.isArray(o)){return encodeArray(o)}else{if(Object.prototype.toString.apply(o)==="[object Date]"){return Ext.util.JSON.encodeDate(o)}else{if(typeof o=="string"){return encodeString(o)}else{if(typeof o=="number"){return isFinite(o)?String(o):"null"}else{if(typeof o=="boolean"){return String(o)}else{var a=["{"],b,i,v;for(i in o){if(!useHasOwn||o.hasOwnProperty(i)){v=o[i];switch(typeof v){case"undefined":case"function":case"unknown":break;default:if(b){a.push(",")}a.push(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.util.Format=function(){var trimRe=/^\s+|\s+$/g;return{ellipsis:function(value,len,word){if(value&&value.length>len){if(word){var vs=value.substr(0,len-2);var index=Math.max(vs.lastIndexOf(" "),vs.lastIndexOf("."),vs.lastIndexOf("!"),vs.lastIndexOf("?"));if(index==-1||index<(len-15)){return value.substr(0,len-3)+"..."}else{return vs.substr(0,index)+"..."}}else{return value.substr(0,len-3)+"..."}}return value},undef:function(value){return value!==undefined?value:""},defaultValue:function(value,defaultValue){return value!==undefined&&value!==""?value:defaultValue},htmlEncode:function(value){return !value?value:String(value).replace(/&/g,"&amp;").replace(/>/g,"&gt;").replace(/</g,"&lt;").replace(/"/g,"&quot;")},htmlDecode:function(value){return !value?value:String(value).replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&quot;/g,'"').replace(/&amp;/g,"&")},trim:function(value){return String(value).replace(trimRe,"")},substr:function(value,start,length){return String(value).substr(start,length)},lowercase:function(value){return String(value).toLowerCase()},uppercase:function(value){return String(value).toUpperCase()},capitalize:function(value){return !value?value:value.charAt(0).toUpperCase()+value.substr(1).toLowerCase()},call:function(value,fn){if(arguments.length>2){var args=Array.prototype.slice.call(arguments,2);args.unshift(value);return eval(fn).apply(window,args)}else{return eval(fn).call(window,value)}},usMoney:function(v){v=(Math.round((v-0)*100))/100;v=(v==Math.floor(v))?v+".00":((v*10==Math.floor(v*10))?v+"0":v);v=String(v);var ps=v.split(".");var whole=ps[0];var sub=ps[1]?"."+ps[1]:".00";var r=/(\d+)(\d{3})/;while(r.test(whole)){whole=whole.replace(r,"$1,$2")}v=whole+sub;if(v.charAt(0)=="-"){return"-$"+v.substr(1)}return"$"+v},date:function(v,format){if(!v){return""}if(!Ext.isDate(v)){v=new Date(Date.parse(v))}return v.dateFormat(format||"m/d/Y")},dateRenderer:function(format){return function(v){return Ext.util.Format.date(v,format)}},stripTagsRE:/<\/?[^>]+>/gi,stripTags:function(v){return !v?v:String(v).replace(this.stripTagsRE,"")},stripScriptsRe:/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,stripScripts:function(v){return !v?v:String(v).replace(this.stripScriptsRe,"")},fileSize:function(size){if(size<1024){return size+" bytes"}else{if(size<1048576){return(Math.round(((size*10)/1024))/10)+" KB"}else{return(Math.round(((size*10)/1048576))/10)+" MB"}}},math:function(){var fns={};return function(v,a){if(!fns[a]){fns[a]=new Function("v","return v "+a+";")}return fns[a](v)}}(),round:function(value,precision){var result=Number(value);if(typeof precision=="number"){precision=Math.pow(10,precision);result=Math.round(value*precision)/precision}return result},number:function(v,format){if(!format){return v}v=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();if(hasComma){psplit=fnum.split(".");var cnum=psplit[0],parr=[],j=cnum.length,m=Math.floor(j/3),n=cnum.length%3||3;for(var i=0;i<j;i+=n){if(i!=0){n=3}parr[parr.length]=cnum.substr(i,n);m-=1}fnum=parr.join(comma);if(psplit[1]){fnum+=dec+psplit[1]}}return(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 v===undefined||v===null?"":v.replace(/\n/g,"<br/>")}}}();Ext.XTemplate=function(){Ext.XTemplate.superclass.constructor.apply(this,arguments);var z=this,L=z.html,F=/<tpl\b[^>]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>/,P=/^<tpl\b[^>]*?for="(.*?)"/,C=/^<tpl\b[^>]*?if="(.*?)"/,A=/^<tpl\b[^>]*?exec="(.*?)"/,E,G=0,K=[],H="values",B="parent",J="xindex",I="xcount",O="return ",Q="with(values){ ";L=["<tpl>",L,"</tpl>"].join("");while((E=L.match(F))){var R=E[0].match(P),S=E[0].match(C),m=E[0].match(A),N=null,M=null,D=null,s=R&&R[1]?R[1]:"";if(S){N=S&&S[1]?S[1]:null;if(N){M=new Function(H,B,J,I,Q+O+(Ext.util.Format.htmlDecode(N))+"; }")}}if(m){N=m&&m[1]?m[1]:null;if(N){D=new Function(H,B,J,I,Q+(Ext.util.Format.htmlDecode(N))+"; }")}}if(s){switch(s){case".":s=new Function(H,B,Q+O+H+"; }");break;case"..":s=new Function(H,B,Q+O+B+"; }");break;default:s=new Function(H,B,Q+O+s+"; }")}}K.push({id:G,target:s,exec:D,test:M,body:E[1]||""});L=L.replace(E[0],"{xtpl"+G+"}");++G}Ext.each(K,function(a){z.compileTpl(a)});z.master=K[K.length-1];z.tpls=K};Ext.extend(Ext.XTemplate,Ext.Template,{re:/\{([\w-\.\#]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?(\s?[\+\-\*\\]\s?[\d\.\+\-\*\\\(\)]+)?\}/g,codeRe:/\{\[((?:\\\]|.|\n)*?)\]\}/g,applySubTemplate:function(u,n,o,r,s){var p=this,q,l=p.tpls[u],m,t=[];if((l.test&&!l.test.call(p,n,o,r,s))||(l.exec&&l.exec.call(p,n,o,r,s))){return""}m=l.target?l.target.call(p,n,o):n;q=m.length;o=l.target?n:o;if(l.target&&Ext.isArray(m)){Ext.each(m,function(b,a){t[t.length]=l.compiled.call(p,b,o,a+1,q)});return t.join("")}return l.compiled.call(p,m,o,r,s)},compileTpl:function(tpl){var fm=Ext.util.Format,useF=this.disableFormats!==true,sep=Ext.isGecko?"+":",",body;function fn(m,name,format,args,math){if(name.substr(0,4)=="xtpl"){return"'"+sep+"this.applySubTemplate("+name.substr(4)+", values, parent, xindex, xcount)"+sep+"'"}var v;if(name==="."){v="values"}else{if(name==="#"){v="xindex"}else{if(name.indexOf(".")!=-1){v=name}else{v="values['"+name+"']"}}}if(math){v="("+v+math+")"}if(format&&useF){args=args?","+args:"";if(format.substr(0,5)!="this."){format="fm."+format+"("}else{format='this.call("'+format.substr(5)+'", ';args=", values"}}else{args="";format="("+v+" === undefined ? '' : "}return"'"+sep+format+v+args+")"+sep+"'"}function codeFn(m,code){return"'"+sep+"("+code+")"+sep+"'"}if(Ext.isGecko){body="tpl.compiled = function(values, parent, xindex, xcount){ return '"+tpl.body.replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn).replace(this.codeRe,codeFn)+"';};"}else{body=["tpl.compiled = function(values, parent, xindex, xcount){ return ['"];body.push(tpl.body.replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn).replace(this.codeRe,codeFn));body.push("'].join('');};");body=body.join("")}eval(body);return this},applyTemplate:function(b){return this.master.compiled.call(this,b,{},1,1)},compile:function(){return this}});Ext.XTemplate.prototype.apply=Ext.XTemplate.prototype.applyTemplate;Ext.XTemplate.from=function(b){b=Ext.getDom(b);return new Ext.XTemplate(b.value||b.innerHTML)};Ext.util.CSS=function(){var h=null;var i=document;var e=/(-[a-z])/gi;var g=function(b,a){return a.charAt(1).toUpperCase()};return{createStyleSheet:function(d,a){var m;var n=i.getElementsByTagName("head")[0];var b=i.createElement("style");b.setAttribute("type","text/css");if(a){b.setAttribute("id",a)}if(Ext.isIE){n.appendChild(b);m=b.styleSheet;m.cssText=d}else{try{b.appendChild(i.createTextNode(d))}catch(c){b.cssText=d}n.appendChild(b);m=b.styleSheet?b.styleSheet:(b.sheet||i.styleSheets[i.styleSheets.length-1])}this.cacheStyleSheet(m);return m},removeStyleSheet:function(a){var b=i.getElementById(a);if(b){b.parentNode.removeChild(b)}},swapStyleSheet:function(a,c){this.removeStyleSheet(a);var b=i.createElement("link");b.setAttribute("rel","stylesheet");b.setAttribute("type","text/css");b.setAttribute("id",a);b.setAttribute("href",c);i.getElementsByTagName("head")[0].appendChild(b)},refreshCache:function(){return this.getRules(true)},cacheStyleSheet:function(c){if(!h){h={}}try{var a=c.cssRules||c.rules;for(var d=a.length-1;d>=0;--d){h[a[d].selectorText]=a[d]}}catch(b){}},getRules:function(d){if(h===null||d){h={};var b=i.styleSheets;for(var c=0,m=b.length;c<m;c++){try{this.cacheStyleSheet(b[c])}catch(a){}}}return h},getRule:function(d,b){var c=this.getRules(b);if(!Ext.isArray(d)){return c[d]}for(var a=0;a<d.length;a++){if(c[d[a]]){return c[d[a]]}}return null},updateRule:function(l,b,c){if(!Ext.isArray(l)){var a=this.getRule(l);if(a){a.style[b.replace(e,g)]=c;return true}}else{for(var d=0;d<l.length;d++){if(this.updateRule(l[d],b,c)){return true}}}return false}}}();Ext.util.ClickRepeater=function(c,d){this.el=Ext.get(c);this.el.unselectable();Ext.apply(this,d);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)};Ext.extend(Ext.util.ClickRepeater,Ext.util.Observable,{interval:20,delay:250,preventDefault:true,stopDefault:false,timer:0,enable:function(){if(this.disabled){this.el.on("mousedown",this.handleMouseDown,this);if(this.preventDefault||this.stopDefault){this.el.on("click",this.eventOptions,this)}}this.disabled=false},disable:function(b){if(b||!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(b){this[b?"disable":"enable"]()},eventOptions:function(b){if(this.preventDefault){b.preventDefault()}if(this.stopDefault){b.stopEvent()}},destroy:function(){this.disable(true);Ext.destroy(this.el);this.purgeListeners()},handleMouseDown:function(){clearTimeout(this.timer);this.el.blur();if(this.pressClass){this.el.addClass(this.pressClass)}this.mousedownTime=new Date();Ext.getDoc().on("mouseup",this.handleMouseUp,this);this.el.on("mouseout",this.handleMouseOut,this);this.fireEvent("mousedown",this);this.fireEvent("click",this);if(this.accelerate){this.delay=400}this.timer=this.click.defer(this.delay||this.interval,this)},click:function(){this.fireEvent("click",this);this.timer=this.click.defer(this.accelerate?this.easeOutExpo(this.mousedownTime.getElapsed(),400,-390,12000):this.interval,this)},easeOutExpo:function(i,b,c,d){return(i==d)?b+c:c*(-Math.pow(2,-10*i/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(){clearTimeout(this.timer);this.el.un("mouseover",this.handleMouseReturn,this);this.el.un("mouseout",this.handleMouseOut,this);Ext.getDoc().un("mouseup",this.handleMouseUp,this);this.el.removeClass(this.pressClass);this.fireEvent("mouseup",this)}});Ext.KeyNav=function(c,d){this.el=Ext.get(c);Ext.apply(this,d);if(!this.disabled){this.disabled=true;this.enable()}};Ext.KeyNav.prototype={disabled:false,defaultEventAction:"stopEvent",forceKeyDown:false,prepareEvent:function(g){var e=g.getKey();var d=this.keyToHandler[e];if(Ext.isSafari2&&d&&e>=37&&e<=40){g.stopEvent()}},relay:function(g){var e=g.getKey();var d=this.keyToHandler[e];if(d&&this[d]){if(this.doRelay(g,this[d],d)!==true){g[this.defaultEventAction]()}}},doRelay:function(g,d,e){return d.call(this.scope||this,g)},enter:false,left:false,right:false,up:false,down:false,tab:false,esc:false,pageUp:false,pageDown:false,del:false,home:false,end:false,keyToHandler:{37:"left",39:"right",38:"up",40:"down",33:"pageUp",34:"pageDown",46:"del",36:"home",35:"end",13:"enter",27:"esc",9:"tab"},enable:function(){if(this.disabled){if(this.isKeydown()){this.el.on("keydown",this.relay,this)}else{this.el.on("keydown",this.prepareEvent,this);this.el.on("keypress",this.relay,this)}this.disabled=false}},disable:function(){if(!this.disabled){if(this.isKeydown()){this.el.un("keydown",this.relay,this)}else{this.el.un("keydown",this.prepareEvent,this);this.el.un("keypress",this.relay,this)}this.disabled=true}},setDisabled:function(b){this[b?"disable":"enable"]()},isKeydown:function(){return this.forceKeyDown||Ext.EventManager.useKeydown}};Ext.KeyMap=function(g,d,e){this.el=Ext.get(g);this.eventName=e||"keydown";this.bindings=[];if(d){this.addBinding(d)}this.enable()};Ext.KeyMap.prototype={stopEvent:false,addBinding:function(t){if(Ext.isArray(t)){Ext.each(t,function(a){this.addBinding(a)},this);return}var m=t.key,p=t.fn||t.handler,j=t.scope;if(t.stopEvent){this.stopEvent=t.stopEvent}if(typeof m=="string"){var o=[];var q=m.toUpperCase();for(var s=0,r=q.length;s<r;s++){o.push(q.charCodeAt(s))}m=o}var u=Ext.isArray(m);var n=function(c){if(this.checkModifiers(t,c)){var a=c.getKey();if(u){for(var d=0,b=m.length;d<b;d++){if(m[d]==a){if(this.stopEvent){c.stopEvent()}p.call(j||window,a,c);return}}}else{if(a==m){if(this.stopEvent){c.stopEvent()}p.call(j||window,a,c)}}}};this.bindings.push(n)},checkModifiers:function(e,l){var k,n,m=["shift","ctrl","alt"];for(var o=0,i=m.length;o<i;++o){n=m[o];k=e[n];if(!(k===undefined||(k===l[n+"Key"]))){return false}}return true},on:function(i,n,o){var k,j,m,l;if(typeof i=="object"&&!Ext.isArray(i)){k=i.key;j=i.shift;m=i.ctrl;l=i.alt}else{k=i}this.addBinding({key:k,shift:j,ctrl:m,alt:l,fn:n,scope:o})},handleKeyDown:function(e){if(this.enabled){var i=this.bindings;for(var h=0,b=i.length;h<b;h++){i[h].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(b){this[b?"disable":"enable"]()}};Ext.util.TextMetrics=function(){var b;return{measure:function(a,g,e){if(!b){b=Ext.util.TextMetrics.Instance(a,e)}b.bind(a);b.setFixedWidth(e||"auto");return b.getSize(g)},createInstance:function(a,d){return Ext.util.TextMetrics.Instance(a,d)}}}();Ext.util.TextMetrics.Instance=function(e,h){var i=new Ext.Element(document.createElement("div"));document.body.appendChild(i.dom);i.position("absolute");i.setLeftTop(-1000,-1000);i.hide();if(h){i.setWidth(h)}var g={getSize:function(a){i.update(a);var b=i.getSize();i.update("");return b},bind:function(a){i.setStyle(Ext.fly(a).getStyles("font-size","font-style","font-weight","font-family","line-height","text-transform","letter-spacing"))},setFixedWidth:function(a){i.setWidth(a)},getWidth:function(a){i.dom.style.width="auto";return this.getSize(a).width},getHeight:function(a){return this.getSize(a).height}};g.bind(e);return g};Ext.Element.addMethods({getTextWidth:function(g,d,e){return(Ext.util.TextMetrics.measure(this.dom,Ext.value(g,this.dom.innerHTML,true)).width).constrain(d||0,e||1000000)}});Ext.util.Cookies={set:function(q,o){var k=arguments;var l=arguments.length;var j=(l>2)?k[2]:null;var m=(l>3)?k[3]:"/";var p=(l>4)?k[4]:null;var n=(l>5)?k[5]:false;document.cookie=q+"="+escape(o)+((j===null)?"":("; expires="+j.toGMTString()))+((m===null)?"":("; path="+m))+((p===null)?"":("; domain="+p))+((n===true)?"; secure":"")},get:function(l){var h=l+"=";var j=h.length;var i=document.cookie.length;var k=0;var m=0;while(k<i){m=k+j;if(document.cookie.substring(k,m)==h){return Ext.util.Cookies.getCookieVal(m)}k=document.cookie.indexOf(" ",k)+1;if(k===0){break}}return null},clear:function(b){if(Ext.util.Cookies.get(b)){document.cookie=b+"=; expires=Thu, 01-Jan-70 00:00:01 GMT"}},getCookieVal:function(c){var d=document.cookie.indexOf(";",c);if(d==-1){d=document.cookie.length}return unescape(document.cookie.substring(c,d))}};Ext.handleError=function(b){throw b};Ext.Error=function(b){this.message=(this.lang[b])?this.lang[b]:b};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 g=new Ext.util.MixedCollection();var d={};var e={};return{register:function(a){g.add(a)},unregister:function(a){g.remove(a)},get:function(a){return g.get(a)},onAvailable:function(a,b,c){g.on("add",function(k,j){if(j.id==a){b.call(c||j,j);g.un("add",b,c)}})},all:g,isRegistered:function(a){return d[a]!==undefined},registerType:function(a,b){d[a]=b;b.xtype=a},create:function(b,a){return b.render?b:new d[b.xtype||a](b)},registerPlugin:function(a,b){e[a]=b;b.ptype=a},createPlugin:function(b,a){return new e[b.ptype||a](b)}}}();Ext.reg=Ext.ComponentMgr.registerType;Ext.preg=Ext.ComponentMgr.registerPlugin;Ext.create=Ext.ComponentMgr.create;Ext.Component=function(d){d=d||{};if(d.initialConfig){if(d.isAction){this.baseAction=d}d=d.initialConfig}else{if(d.tagName||d.dom||Ext.isString(d)){d={applyTo:d,id:d.id||d}}}this.initialConfig=d;Ext.apply(this,d);this.addEvents("disable","enable","beforeshow","show","beforehide","hide","beforerender","render","afterrender","beforedestroy","destroy","beforestaterestore","staterestore","beforestatesave","statesave");this.getId();Ext.ComponentMgr.register(this);Ext.Component.superclass.constructor.call(this);if(this.baseAction){this.baseAction.addComponent(this)}this.initComponent();if(this.plugins){if(Ext.isArray(this.plugins)){for(var g=0,e=this.plugins.length;g<e;g++){this.plugins[g]=this.initPlugin(this.plugins[g])}}else{this.plugins=this.initPlugin(this.plugins)}}if(this.stateful!==false){this.initState(d)}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,ctype:"Ext.Component",actionMode:"el",getActionEl:function(){return this[this.actionMode]},initPlugin:function(b){if(b.ptype&&!Ext.isFunction(b.init)){b=Ext.ComponentMgr.createPlugin(b)}else{if(Ext.isString(b)){b=Ext.ComponentMgr.createPlugin({ptype:b})}}b.init(this);return b},initComponent:Ext.emptyFn,render:function(c,d){if(!this.rendered&&this.fireEvent("beforerender",this)!==false){if(!c&&this.el){this.el=Ext.get(this.el);c=this.el.dom.parentNode;this.allowDomMove=false}this.container=Ext.get(c);if(this.ctCls){this.container.addClass(this.ctCls)}this.rendered=true;if(d!==undefined){if(Ext.isNumber(d)){d=this.container.dom.childNodes[d]}else{d=Ext.getDom(d)}}this.onRender(this.container,d||null);if(this.autoShow){this.el.removeClass(["x-hidden","x-hide-"+this.hideMode])}if(this.cls){this.el.addClass(this.cls);delete this.cls}if(this.style){this.el.applyStyles(this.style);delete this.style}if(this.overCls){this.el.addClassOnOver(this.overCls)}this.fireEvent("render",this);this.afterRender(this.container);if(this.hidden){this.doHide()}if(this.disabled){this.disable(true)}if(this.stateful!==false){this.initStateEvents()}this.initRef();this.fireEvent("afterrender",this)}return this},initRef:function(){if(this.ref){var h=this.ref.split("/");var i=h.length,e=0;var g=this;while(e<i){if(g.ownerCt){g=g.ownerCt}e++}g[h[--e]]=this}},initState:function(e){if(Ext.state.Manager){var g=this.getStateId();if(g){var d=Ext.state.Manager.get(g);if(d){if(this.fireEvent("beforestaterestore",this,d)!==false){this.applyState(d);this.fireEvent("staterestore",this,d)}}}}},getStateId:function(){return this.stateId||((this.id.indexOf("ext-comp-")==0||this.id.indexOf("ext-gen")==0)?null:this.id)},initStateEvents:function(){if(this.stateEvents){for(var d=0,c;c=this.stateEvents[d];d++){this.on(c,this.saveState,this,{delay:100})}}},applyState:function(c,d){if(c){Ext.apply(this,c)}},getState:function(){return null},saveState:function(){if(Ext.state.Manager&&this.stateful!==false){var c=this.getStateId();if(c){var d=this.getState();if(this.fireEvent("beforestatesave",this,d)!==false){Ext.state.Manager.set(c,d);this.fireEvent("statesave",this,d)}}}},applyToMarkup:function(b){this.allowDomMove=false;this.el=Ext.get(b);this.render(this.el.dom.parentNode)},addClass:function(b){if(this.el){this.el.addClass(b)}else{this.cls=this.cls?this.cls+" "+b:b}return this},removeClass:function(b){if(this.el){this.el.removeClass(b)}else{if(this.cls){this.cls=this.cls.split(" ").remove(b).join(" ")}}return this},onRender:function(d,e){if(!this.el&&this.autoEl){if(Ext.isString(this.autoEl)){this.el=document.createElement(this.autoEl)}else{var g=document.createElement("div");Ext.DomHelper.overwrite(g,this.autoEl);this.el=g.firstChild}if(!this.el.id){this.el.id=this.getId()}}if(this.el){this.el=Ext.get(this.el);if(this.allowDomMove!==false){d.dom.insertBefore(this.el.dom,e)}}},getAutoCreate:function(){var b=Ext.isObject(this.autoCreate)?this.autoCreate:Ext.apply({},this.defaultAutoCreate);if(this.id&&!b.id){b.id=this.id}return b},afterRender:Ext.emptyFn,destroy:function(){if(this.fireEvent("beforedestroy",this)!==false){this.beforeDestroy();if(this.rendered){this.el.removeAllListeners();this.el.remove();if(this.actionMode=="container"||this.removeMode=="container"){this.container.remove()}}this.onDestroy();Ext.ComponentMgr.unregister(this);this.fireEvent("destroy",this);this.purgeListeners()}},beforeDestroy:Ext.emptyFn,onDestroy:Ext.emptyFn,getEl:function(){return this.el},getId:function(){return this.id||(this.id="ext-comp-"+(++Ext.Component.AUTO_ID))},getItemId:function(){return this.itemId||this.getId()},focus:function(c,d){if(d){this.focus.defer(Ext.isNumber(d)?d:10,this,[c,false]);return}if(this.rendered){this.el.focus();if(c===true){this.el.dom.select()}}return this},blur:function(){if(this.rendered){this.el.blur()}return this},disable:function(b){if(this.rendered){this.onDisable()}this.disabled=true;if(b!==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(b){return this[b?"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.getVisibiltyEl().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.getVisibiltyEl().addClass("x-hide-"+this.hideMode)},getVisibiltyEl:function(){return this.hideParent?this.container:this.getActionEl()},setVisible:function(b){return this[b?"show":"hide"]()},isVisible:function(){return this.rendered&&this.getVisibiltyEl().isVisible()},cloneConfig:function(d){d=d||{};var g=d.id||Ext.id();var e=Ext.applyIf(d,this.initialConfig);e.id=g;return new this.constructor(e)},getXType:function(){return this.constructor.xtype},isXType:function(c,d){if(Ext.isFunction(c)){c=c.xtype}else{if(Ext.isObject(c)){c=c.constructor.xtype}}return !d?("/"+this.getXTypes()+"/").indexOf("/"+c+"/")!=-1:this.constructor.xtype==c},getXTypes:function(){var e=this.constructor;if(!e.xtypes){var g=[],c=this;while(c&&c.constructor.xtype){g.unshift(c.constructor.xtype);c=c.constructor.superclass}e.xtypeChain=g;e.xtypes=g.join("/")}return e.xtypes},findParentBy:function(d){for(var c=this.ownerCt;(c!=null)&&!d(c,this);c=c.ownerCt){}return c||null},findParentByType:function(b){return Ext.isFunction(b)?this.findParentBy(function(a){return a.constructor===b}):this.findParentBy(function(a){return a.constructor.xtype===b})},getDomPositionEl:function(){return this.getPositionEl?this.getPositionEl():this.getEl()},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(b){b.item.un(b.ename,b.fn,b.scope)},this);this.mons=[]},mon:function(o,e,p,q,k){if(!this.mons){this.mons=[];this.on("beforedestroy",this.clearMons,this,{single:true})}if(Ext.isObject(e)){var l=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;var m=e;for(var n in m){if(l.test(n)){continue}if(Ext.isFunction(m[n])){this.mons.push({item:o,ename:n,fn:m[n],scope:m.scope});o.on(n,m[n],m.scope,m)}else{this.mons.push({item:o,ename:n,fn:m[n],scope:m.scope});o.on(n,m[n])}}return}this.mons.push({item:o,ename:e,fn:p,scope:q});o.on(e,p,q,k)},mun:function(m,q,n,o){var l,p;for(var i=0,k=this.mons.length;i<k;++i){p=this.mons[i];if(m===p.item&&q==p.ename&&n===p.fn&&o===p.scope){this.mons.splice(i,1);m.un(q,n,o);l=true;break}}return l},nextSibling:function(){if(this.ownerCt){var b=this.ownerCt.items.indexOf(this);if(b!=-1&&b+1<this.ownerCt.items.getCount()){return this.ownerCt.items.itemAt(b+1)}}return null},previousSibling:function(){if(this.ownerCt){var b=this.ownerCt.items.indexOf(this);if(b>0){return this.ownerCt.items.itemAt(b-1)}}return null},getBubbleTarget:function(){return this.ownerCt}});Ext.reg("component",Ext.Component);Ext.Action=function(b){this.initialConfig=b;this.itemId=b.itemId=(b.itemId||b.id||Ext.id());this.items=[]};Ext.Action.prototype={isAction:true,setText:function(b){this.initialConfig.text=b;this.callEach("setText",[b])},getText:function(){return this.initialConfig.text},setIconClass:function(b){this.initialConfig.iconCls=b;this.callEach("setIconClass",[b])},getIconClass:function(){return this.initialConfig.iconCls},setDisabled:function(b){this.initialConfig.disabled=b;this.callEach("setDisabled",[b])},enable:function(){this.setDisabled(false)},disable:function(){this.setDisabled(true)},isDisabled:function(){return this.initialConfig.disabled},setHidden:function(b){this.initialConfig.hidden=b;this.callEach("setVisible",[!b])},show:function(){this.setHidden(false)},hide:function(){this.setHidden(true)},isHidden:function(){return this.initialConfig.hidden},setHandler:function(c,d){this.initialConfig.handler=c;this.initialConfig.scope=d;this.callEach("setHandler",[c,d])},each:function(c,d){Ext.each(this.items,c,d)},callEach:function(i,g){var j=this.items;for(var k=0,h=j.length;k<h;k++){j[k][i].apply(j[k],g)}},addComponent:function(b){this.items.push(b);b.on("destroy",this.removeComponent,this)},removeComponent:function(b){this.items.remove(b)},execute:function(){this.initialConfig.handler.apply(this.initialConfig.scope||window,arguments)}};(function(){Ext.Layer=function(l,m){l=l||{};var k=Ext.DomHelper;var b=l.parentEl,j=b?Ext.getDom(b):document.body;if(m){this.dom=Ext.getDom(m)}if(!this.dom){var a=l.dh||{tag:"div",cls:"x-layer"};this.dom=k.append(j,a)}if(l.cls){this.addClass(l.cls)}this.constrain=l.constrain!==false;this.setVisibilityMode(Ext.Element.VISIBILITY);if(l.id){this.id=this.dom.id=l.id}else{this.id=Ext.id(this.dom)}this.zindex=l.zindex||this.getZIndex();this.position("absolute",this.zindex);if(l.shadow){this.shadowOffset=l.shadowOffset||4;this.shadow=new Ext.Shadow({offset:this.shadowOffset,mode:l.shadow})}else{this.shadowOffset=0}this.useShim=l.shim!==false&&Ext.useShims;this.useDisplay=l.useDisplay;this.hide()};var d=Ext.Element.prototype;var c=[];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 a=c.shift();if(!a){a=this.createShim();a.enableDisplayMode("block");a.dom.style.display="none";a.dom.style.visibility="visible"}var b=this.dom.parentNode;if(a.dom.parentNode!=b){b.insertBefore(a.dom,this.dom)}a.setStyle("z-index",this.getZIndex()-2);this.shim=a;return a},hideShim:function(){if(this.shim){this.shim.setDisplayed(false);c.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(a){if(this.shadow){this.shadowDisabled=false;this.shadowOffset=this.lastShadowOffset;delete this.lastShadowOffset;if(a){this.sync(true)}}},sync:function(s){var h=this.shadow;if(!this.updating&&this.isVisible()&&(h||this.useShim)){var p=this.getShim();var l=this.getWidth(),q=this.getHeight();var r=this.getLeft(true),b=this.getTop(true);if(h&&!this.shadowDisabled){if(s&&!h.isVisible()){h.show(this)}else{h.realign(r,b,l,q)}if(p){if(s){p.show()}var o=h.adjusts,a=p.dom.style;a.left=(Math.min(r,r+o.l))+"px";a.top=(Math.min(b,b+o.t))+"px";a.width=(l+o.w)+"px";a.height=(q+o.h)+"px"}}else{if(p){if(s){p.show()}p.setSize(l,q);p.setLeftTop(r,b)}}}},destroy:function(){this.hideShim();if(this.shadow){this.shadow.hide()}this.removeAllListeners();Ext.removeNode(this.dom);Ext.Element.uncache(this.id)},remove:function(){this.destroy()},beginUpdate:function(){this.updating=true},endUpdate:function(){this.updating=false;this.sync(true)},hideUnders:function(a){if(this.shadow){this.shadow.hide()}this.hideShim()},constrainXY:function(){if(this.constrain){var r=Ext.lib.Dom.getViewWidth(),v=Ext.lib.Dom.getViewHeight();var a=Ext.getDoc().getScroll();var b=this.getXY();var q=b[0],s=b[1];var w=this.shadowOffset;var p=this.dom.offsetWidth+w,u=this.dom.offsetHeight+w;var t=false;if((q+p)>r+a.left){q=r-p-w;t=true}if((s+u)>v+a.top){s=v-u-w;t=true}if(q<a.left){q=a.left;t=true}if(s<a.top){s=a.top;t=true}if(t){if(this.avoidY){var h=this.avoidY;if(s<=h&&(s+u)>=h){s=h-u-5}}b=[q,s];this.storeXY(b);d.setXY.call(this,b);this.sync()}}return this},isVisible:function(){return this.visible},showAction:function(){this.visible=true;if(this.useDisplay===true){this.setDisplayed("")}else{if(this.lastXY){d.setXY.call(this,this.lastXY)}else{if(this.lastLT){d.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(m,n,b,a,e){if(m){this.showAction()}if(n&&m){var o=function(){this.sync(true);if(a){a()}}.createDelegate(this);d.setVisible.call(this,true,true,b,o,e)}else{if(!m){this.hideUnders(true)}var o=a;if(n){o=function(){this.hideAction();if(a){a()}}.createDelegate(this)}d.setVisible.call(this,m,n,b,o,e);if(m){this.sync(true)}else{if(!n){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(){if(!this.updating&&this.shadow){this.shadow.hide()}},setLeft:function(a){this.storeLeftTop(a,this.getTop(true));d.setLeft.apply(this,arguments);this.sync();return this},setTop:function(a){this.storeLeftTop(this.getLeft(true),a);d.setTop.apply(this,arguments);this.sync();return this},setLeftTop:function(a,b){this.storeLeftTop(a,b);d.setLeftTop.apply(this,arguments);this.sync();return this},setXY:function(e,n,b,a,m){this.fixDisplay();this.beforeAction();this.storeXY(e);var o=this.createCB(a);d.setXY.call(this,e,n,b,o,m);if(!n){o()}return this},createCB:function(a){var b=this;return function(){b.constrainXY();b.sync(true);if(a){a()}}},setX:function(m,l,b,a,e){this.setXY([m,this.getY()],l,b,a,e);return this},setY:function(a,m,e,b,l){this.setXY([this.getX(),a],m,e,b,l);return this},setSize:function(h,e,o,a,q,b){this.beforeAction();var p=this.createCB(q);d.setSize.call(this,h,e,o,a,p,b);if(!o){p()}return this},setWidth:function(m,n,b,a,e){this.beforeAction();var o=this.createCB(a);d.setWidth.call(this,m,n,b,o,e);if(!n){o()}return this},setHeight:function(h,n,b,a,e){this.beforeAction();var o=this.createCB(a);d.setHeight.call(this,h,n,b,o,e);if(!n){o()}return this},setBounds:function(b,h,a,t,e,r,q,s){this.beforeAction();var u=this.createCB(q);if(!e){this.storeXY([b,h]);d.setXY.call(this,[b,h]);d.setSize.call(this,a,t,e,r,u,s);u()}else{d.setBounds.call(this,b,h,a,t,e,r,u,s)}return this},setZIndex:function(a){this.zindex=a;this.setStyle("z-index",a+2);if(this.shadow){this.shadow.setZIndex(a+1)}if(this.shim){this.shim.setStyle("z-index",a)}return this}})})();Ext.Shadow=function(h){Ext.apply(this,h);if(typeof this.mode!="string"){this.mode=this.defaultMode}var g=this.offset,i={h:0};var a=Math.floor(this.offset/2);switch(this.mode.toLowerCase()){case"drop":i.w=0;i.l=i.t=g;i.t-=1;if(Ext.isIE){i.l-=this.offset+a;i.t-=this.offset+a;i.w-=a;i.h-=a;i.t+=1}break;case"sides":i.w=(g*2);i.l=-g;i.t=g-1;if(Ext.isIE){i.l-=(this.offset-a);i.t-=this.offset+a;i.l+=1;i.w-=(this.offset-a)*2;i.w-=a+1;i.h-=1}break;case"frame":i.w=i.h=(g*2);i.l=i.t=-g;i.t+=1;i.h-=2;if(Ext.isIE){i.l-=(this.offset-a);i.t-=(this.offset-a);i.l+=1;i.w-=(this.offset+a+1);i.h-=(this.offset+a);i.h+=1}break}this.adjusts=i};Ext.Shadow.prototype={offset:4,defaultMode:"drop",show:function(b){b=Ext.get(b);if(!this.el){this.el=Ext.Shadow.Pool.pull();if(this.el.dom.nextSibling!=b.dom){this.el.insertBefore(b)}}this.el.setStyle("z-index",this.zIndex||parseInt(b.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(b.getLeft(true),b.getTop(true),b.getWidth(),b.getHeight());this.el.dom.style.display="block"},isVisible:function(){return this.el?true:false},realign:function(B,a,d,y){if(!this.el){return}var s=this.adjusts,v=this.el.dom,C=v.style;var x=0;C.left=(B+s.l)+"px";C.top=(a+s.t)+"px";var h=(d+s.w),z=(y+s.h),w=h+"px",l=z+"px";if(C.width!=w||C.height!=l){C.width=w;C.height=l;if(!Ext.isIE){var t=v.childNodes;var A=Math.max(0,(h-12))+"px";t[0].childNodes[1].style.width=A;t[1].childNodes[1].style.width=A;t[2].childNodes[1].style.width=A;t[1].style.height=Math.max(0,(z-12))+"px"}}},hide:function(){if(this.el){this.el.dom.style.display="none";Ext.Shadow.Pool.push(this.el);delete this.el}},setZIndex:function(b){this.zIndex=b;if(this.el){this.el.setStyle("z-index",b)}}};Ext.Shadow.Pool=function(){var c=[];var d=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 a=c.shift();if(!a){a=Ext.get(Ext.DomHelper.insertHtml("beforeBegin",document.body.firstChild,d));a.autoBoxAdjust=false}return a},push:function(a){c.push(a)}}}();Ext.BoxComponent=Ext.extend(Ext.Component,{initComponent:function(){Ext.BoxComponent.superclass.initComponent.call(this);this.addEvents("resize","move")},boxReady:false,deferHeight:false,setSize:function(h,l){if(typeof h=="object"){l=h.height;h=h.width}if(!this.boxReady){this.width=h;this.height=l;return this}if(this.cacheSizes!==false&&this.lastSize&&this.lastSize.width==h&&this.lastSize.height==l){return this}this.lastSize={width:h,height:l};var m=this.adjustSize(h,l);var j=m.width,i=m.height;if(j!==undefined||i!==undefined){var k=this.getResizeEl();if(!this.deferHeight&&j!==undefined&&i!==undefined){k.setSize(j,i)}else{if(!this.deferHeight&&i!==undefined){k.setHeight(i)}else{if(j!==undefined){k.setWidth(j)}}}this.onResize(j,i,h,l);this.fireEvent("resize",this,j,i,h,l)}return this},setWidth:function(b){return this.setSize(b)},setHeight:function(b){return this.setSize(undefined,b)},getSize:function(){return this.getResizeEl().getSize()},getWidth:function(){return this.getResizeEl().getWidth()},getHeight:function(){return this.getResizeEl().getHeight()},getOuterSize:function(){var b=this.getResizeEl();return{width:b.getWidth()+b.getMargins("lr"),height:b.getHeight()+b.getMargins("tb")}},getPosition:function(d){var c=this.getPositionEl();if(d===true){return[c.getLeft(true),c.getTop(true)]}return this.xy||c.getXY()},getBox:function(e){var g=this.getPosition(e);var d=this.getSize();d.x=g[0];d.y=g[1];return d},updateBox:function(b){this.setSize(b.width,b.height);this.setPagePosition(b.x,b.y);return this},getResizeEl:function(){return this.resizeEl||this.el},getPositionEl:function(){return this.positionEl||this.el},setPosition:function(i,j){if(i&&typeof i[1]=="number"){j=i[1];i=i[0]}this.x=i;this.y=j;if(!this.boxReady){return this}var h=this.adjustPosition(i,j);var k=h.x,l=h.y;var m=this.getPositionEl();if(k!==undefined||l!==undefined){if(k!==undefined&&l!==undefined){m.setLeftTop(k,l)}else{if(k!==undefined){m.setLeft(k)}else{if(l!==undefined){m.setTop(l)}}}this.onPosition(k,l);this.fireEvent("move",this,k,l)}return this},setPagePosition:function(e,g){if(e&&typeof e[1]=="number"){g=e[1];e=e[0]}this.pageX=e;this.pageY=g;if(!this.boxReady){return}if(e===undefined||g===undefined){return}var d=this.getPositionEl().translatePoints(e,g);this.setPosition(d.left,d.top);return this},onRender:function(c,d){Ext.BoxComponent.superclass.onRender.call(this,c,d);if(this.resizeEl){this.resizeEl=Ext.get(this.resizeEl)}if(this.positionEl){this.positionEl=Ext.get(this.positionEl)}},afterRender:function(){Ext.BoxComponent.superclass.afterRender.call(this);this.boxReady=true;this.setSize(this.width,this.height);if(this.x||this.y){this.setPosition(this.x,this.y)}else{if(this.pageX||this.pageY){this.setPagePosition(this.pageX,this.pageY)}}},syncSize:function(){delete this.lastSize;this.setSize(this.autoWidth?undefined:this.getResizeEl().getWidth(),this.autoHeight?undefined:this.getResizeEl().getHeight());return this},onResize:function(h,e,g,i){},onPosition:function(d,c){},adjustSize:function(d,c){if(this.autoWidth){d="auto"}if(this.autoHeight){c="auto"}return{width:d,height:c}},adjustPosition:function(d,c){return{x:d,y:c}}});Ext.reg("box",Ext.BoxComponent);Ext.Spacer=Ext.extend(Ext.BoxComponent,{autoEl:"div"});Ext.reg("spacer",Ext.Spacer);Ext.SplitBar=function(k,i,g,j,h){this.el=Ext.get(k,true);this.el.dom.unselectable="on";this.resizingEl=Ext.get(i,true);this.orientation=g||Ext.SplitBar.HORIZONTAL;this.minSize=0;this.maxSize=2000;this.animate=false;this.useShim=false;this.shim=null;if(!h){this.proxy=Ext.SplitBar.createProxy(this.orientation)}else{this.proxy=Ext.get(h).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=j||(this.el.getX()>this.resizingEl.getX()?Ext.SplitBar.LEFT:Ext.SplitBar.RIGHT);this.el.addClass("x-splitbar-h")}else{this.placement=j||(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(h,i){this.fireEvent("beforeresize",this);this.overlay=Ext.DomHelper.append(document.body,{cls:"x-drag-overlay",html:"&#160;"},true);this.overlay.unselectable();this.overlay.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true));this.overlay.show();Ext.get(this.proxy).setDisplayed("block");var k=this.adapter.getElementSize(this);this.activeMinSize=this.getMinimumSize();this.activeMaxSize=this.getMaximumSize();var j=k-this.activeMinSize;var g=Math.max(this.activeMaxSize-k,0);if(this.orientation==Ext.SplitBar.HORIZONTAL){this.dd.resetConstraints();this.dd.setXConstraint(this.placement==Ext.SplitBar.LEFT?j:g,this.placement==Ext.SplitBar.LEFT?g:j,this.tickSize);this.dd.setYConstraint(0,0)}else{this.dd.resetConstraints();this.dd.setXConstraint(0,0);this.dd.setYConstraint(this.placement==Ext.SplitBar.TOP?j:g,this.placement==Ext.SplitBar.TOP?g:j,this.tickSize)}this.dragSpecs.startSize=k;this.dragSpecs.startPoint=[h,i];Ext.dd.DDProxy.prototype.b4StartDrag.call(this.dd,h,i)},onEndProxyDrag:function(g){Ext.get(this.proxy).setDisplayed(false);var d=Ext.lib.Event.getXY(g);if(this.overlay){Ext.destroy(this.overlay);delete this.overlay}var e;if(this.orientation==Ext.SplitBar.HORIZONTAL){e=this.dragSpecs.startSize+(this.placement==Ext.SplitBar.LEFT?d[0]-this.dragSpecs.startPoint[0]:this.dragSpecs.startPoint[0]-d[0])}else{e=this.dragSpecs.startSize+(this.placement==Ext.SplitBar.TOP?d[1]-this.dragSpecs.startPoint[1]:this.dragSpecs.startPoint[1]-d[1])}e=Math.min(Math.max(e,this.activeMinSize),this.activeMaxSize);if(e!=this.dragSpecs.startSize){if(this.fireEvent("beforeapply",this,e)!==false){this.adapter.setElementSize(this,e);this.fireEvent("moved",this,e);this.fireEvent("resize",this,e)}}},getAdapter:function(){return this.adapter},setAdapter:function(b){this.adapter=b;this.adapter.init(this)},getMinimumSize:function(){return this.minSize},setMinimumSize:function(b){this.minSize=b},getMaximumSize:function(){return this.maxSize},setMaximumSize:function(b){this.maxSize=b},setCurrentSize:function(c){var d=this.animate;this.animate=false;this.adapter.setElementSize(this,c);this.animate=d},destroy:function(b){Ext.destroy(this.shim,Ext.get(this.proxy));this.dd.unreg();if(b){this.el.remove()}this.purgeListeners()}});Ext.SplitBar.createProxy=function(d){var g=new Ext.Element(document.createElement("div"));g.unselectable();var e="x-splitbar-proxy";g.addClass(e+" "+(d==Ext.SplitBar.HORIZONTAL?e+"-h":e+"-v"));document.body.appendChild(g.dom);return g.dom};Ext.SplitBar.BasicLayoutAdapter=function(){};Ext.SplitBar.BasicLayoutAdapter.prototype={init:function(b){},getElementSize:function(b){if(b.orientation==Ext.SplitBar.HORIZONTAL){return b.resizingEl.getWidth()}else{return b.resizingEl.getHeight()}},setElementSize:function(d,e,g){if(d.orientation==Ext.SplitBar.HORIZONTAL){if(!d.animate){d.resizingEl.setWidth(e);if(g){g(d,e)}}else{d.resizingEl.setWidth(e,true,0.1,g,"easeOut")}}else{if(!d.animate){d.resizingEl.setHeight(e);if(g){g(d,e)}}else{d.resizingEl.setHeight(e,true,0.1,g,"easeOut")}}}};Ext.SplitBar.AbsoluteLayoutAdapter=function(b){this.basic=new Ext.SplitBar.BasicLayoutAdapter();this.container=Ext.get(b)};Ext.SplitBar.AbsoluteLayoutAdapter.prototype={init:function(b){this.basic.init(b)},getElementSize:function(b){return this.basic.getElementSize(b)},setElementSize:function(d,e,g){this.basic.setElementSize(d,e,this.moveSplitter.createDelegate(this,[d]))},moveSplitter:function(d){var c=Ext.SplitBar;switch(d.placement){case c.LEFT:d.el.setX(d.resizingEl.getRight());break;case c.RIGHT:d.el.setStyle("right",(this.container.getWidth()-d.resizingEl.getLeft())+"px");break;case c.TOP:d.el.setY(d.resizingEl.getBottom());break;case c.BOTTOM:d.el.setY(d.resizingEl.getTop()-d.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:100,autoDestroy:true,forceLayout:false,defaultType:"panel",initComponent:function(){Ext.Container.superclass.initComponent.call(this);this.addEvents("afterlayout","beforeadd","beforeremove","add","remove");this.enableBubble("add","remove");var b=this.items;if(b){delete this.items;if(Ext.isArray(b)&&b.length>0){this.add.apply(this,b)}else{this.add(b)}}},initItems:function(){if(!this.items){this.items=new Ext.util.MixedCollection(false,this.getComponentId);this.getLayout()}},setLayout:function(b){if(this.layout&&this.layout!=b){this.layout.setContainer(null)}this.initItems();this.layout=b;b.setContainer(this)},render:function(){Ext.Container.superclass.render.apply(this,arguments);if(this.layout){if(Ext.isObject(this.layout)&&!this.layout.layout){this.layoutConfig=this.layout;this.layout=this.layoutConfig.type}if(typeof this.layout=="string"){this.layout=new Ext.Container.LAYOUTS[this.layout.toLowerCase()](this.layoutConfig)}this.setLayout(this.layout);if(this.activeItem!==undefined){var b=this.activeItem;delete this.activeItem;this.layout.setActiveItem(b)}}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(b){return b.getItemId()},add:function(g){this.initItems();var c=arguments.length>1;if(c||Ext.isArray(g)){Ext.each(c?arguments:g,function(a){this.add(a)},this);return}var h=this.lookupComponent(this.applyDefaults(g));var i=this.items.length;if(this.fireEvent("beforeadd",this,h,i)!==false&&this.onBeforeAdd(h)!==false){this.items.add(h);h.ownerCt=this;this.fireEvent("add",this,h,i)}return h},insert:function(k,l){this.initItems();var m=arguments,a=m.length;if(a>2){for(var i=a-1;i>=1;--i){this.insert(k,m[i])}return}var c=this.lookupComponent(this.applyDefaults(l));if(c.ownerCt==this&&this.items.indexOf(c)<k){--k}if(this.fireEvent("beforeadd",this,c,k)!==false&&this.onBeforeAdd(c)!==false){this.items.insert(k,c);c.ownerCt=this;this.fireEvent("add",this,c,k)}return c},applyDefaults:function(b){if(this.defaults){if(typeof b=="string"){b=Ext.ComponentMgr.get(b);Ext.apply(b,this.defaults)}else{if(!b.events){Ext.applyIf(b,this.defaults)}else{Ext.apply(b,this.defaults)}}}return b},onBeforeAdd:function(b){if(b.ownerCt){b.ownerCt.remove(b,false)}if(this.hideBorders===true){b.border=(b.border===true)}},remove:function(e,c){this.initItems();var g=this.getComponent(e);if(g&&this.fireEvent("beforeremove",this,g)!==false){this.items.remove(g);delete g.ownerCt;if(c===true||(c!==false&&this.autoDestroy)){g.destroy()}if(this.layout&&this.layout.activeItem==g){delete this.layout.activeItem}this.fireEvent("remove",this,g)}return g},removeAll:function(m){this.initItems();var k,j=[],h=[];this.items.each(function(a){j.push(a)});for(var l=0,i=j.length;l<i;++l){k=j[l];this.remove(k,m);if(k.ownerCt!==this){h.push(k)}}return h},getComponent:function(b){if(Ext.isObject(b)){return b}return this.items.get(b)},lookupComponent:function(b){if(typeof b=="string"){return Ext.ComponentMgr.get(b)}else{if(!b.events){return this.createComponent(b)}}return b},createComponent:function(b){return Ext.create(b,this.defaultType)},doLayout:function(o,p){var l=this.rendered,m=this.forceLayout;if(!this.isVisible()||this.collapsed){this.deferLayout=this.deferLayout||!o;if(!(p||m)){return}o=o&&!this.deferLayout}else{delete this.deferLayout}if(l&&this.layout){this.layout.layout()}if(o!==true&&this.items){var q=this.items.items;for(var c=0,i=q.length;c<i;c++){var n=q[c];if(n.doLayout){n.forceLayout=m;n.doLayout()}}}if(l){this.onLayout(o,p)}delete this.forceLayout},onLayout:Ext.emptyFn,onShow:function(){Ext.Container.superclass.onShow.call(this);if(this.deferLayout!==undefined){this.doLayout(true)}},getLayout:function(){if(!this.layout){var b=new Ext.layout.ContainerLayout(this.layoutConfig);this.setLayout(b)}return this.layout},beforeDestroy:function(){if(this.items){Ext.destroy.apply(Ext,this.items.items)}if(this.monitorResize){Ext.EventManager.removeResizeListener(this.doLayout,this)}Ext.destroy(this.layout);Ext.Container.superclass.beforeDestroy.call(this)},bubble:function(i,e,g){var h=this;while(h){if(i.apply(e||h,g||[h])===false){break}h=h.ownerCt}return this},cascade:function(j,k,h){if(j.apply(k||this,h||[this])!==false){if(this.items){var l=this.items.items;for(var m=0,i=l.length;m<i;m++){if(l[m].cascade){l[m].cascade(j,k,h)}else{j.apply(k||l[m],h||[l[m]])}}}}return this},findById:function(g){var e,d=this;this.cascade(function(a){if(d!=a&&a.id===g){e=a;return false}});return e||null},findByType:function(c,d){return this.findBy(function(a){return a.isXType(c,d)})},find:function(c,d){return this.findBy(function(a){return a[c]===d})},findBy:function(h,i){var g=[],e=this;this.cascade(function(a){if(e!=a&&h.call(i||a,a,e)===true){g.push(a)}});return g},get:function(b){return this.items.get(b)}});Ext.Container.LAYOUTS={};Ext.reg("container",Ext.Container);Ext.layout.ContainerLayout=function(b){Ext.apply(this,b)};Ext.layout.ContainerLayout.prototype={monitorResize:false,activeItem:null,layout:function(){var b=this.container.getLayoutTarget();this.onLayout(this.container,b);this.container.fireEvent("afterlayout",this.container,this)},onLayout:function(d,c){this.renderAll(d,c)},isValidParent:function(c,d){return d&&c.getDomPositionEl().dom.parentNode==(d.dom||d)},renderAll:function(l,k){var c=l.items.items;for(var m=0,i=c.length;m<i;m++){var j=c[m];if(j&&(!j.rendered||!this.isValidParent(j,k))){this.renderItem(j,m,k)}}},renderItem:function(g,e,c){if(g&&!g.rendered){g.render(c,e);this.configureItem(g,e)}else{if(g&&!this.isValidParent(g,c)){if(typeof e=="number"){e=c.dom.childNodes[e]}c.dom.insertBefore(g.getDomPositionEl().dom,e||null);g.container=c;this.configureItem(g,e)}}},configureItem:function(g,e){if(this.extraCls){var c=g.getPositionEl?g.getPositionEl():g;c.addClass(this.extraCls)}if(this.renderHidden&&g!=this.activeItem){g.hide()}if(g.doLayout){g.doLayout(false,this.forceLayout)}},onResize:function(){if(this.container.collapsed){return}var b=this.container.bufferResize;if(b){if(!this.resizeTask){this.resizeTask=new Ext.util.DelayedTask(this.runLayout,this);this.resizeBuffer=typeof b=="number"?b:100}this.resizeTask.delay(this.resizeBuffer)}else{this.runLayout()}},runLayout:function(){this.layout();this.container.onLayout()},setContainer:function(b){if(this.monitorResize&&b!=this.container){if(this.container){this.container.un("resize",this.onResize,this);this.container.un("bodyresize",this.onResize,this)}if(b){b.on({scope:this,resize:this.onResize,bodyresize:this.onResize})}}this.container=b},parseMargins:function(d){if(typeof d=="number"){d=d.toString()}var g=d.split(" ");var e=g.length;if(e==1){g[1]=g[0];g[2]=g[0];g[3]=g[0]}if(e==2){g[2]=g[0];g[3]=g[1]}if(e==3){g[3]=g[1]}return{top:parseInt(g[0],10)||0,right:parseInt(g[1],10)||0,bottom:parseInt(g[2],10)||0,left:parseInt(g[3],10)||0}},fieldTpl:(function(){var b=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>");b.disableFormats=true;return b.compile()})(),destroy:Ext.emptyFn};Ext.Container.LAYOUTS.auto=Ext.layout.ContainerLayout;Ext.layout.FitLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,onLayout:function(e,g){Ext.layout.FitLayout.superclass.onLayout.call(this,e,g);if(!this.container.collapsed){var d=(Ext.isIE6&&Ext.isStrict&&g.dom==document.body)?g.getViewSize():g.getStyleSize();this.setItemSize(this.activeItem||e.items.itemAt(0),d)}},setItemSize:function(c,d){if(c&&d.height>0){c.setSize(d)}}});Ext.Container.LAYOUTS.fit=Ext.layout.FitLayout;Ext.layout.CardLayout=Ext.extend(Ext.layout.FitLayout,{deferredRender:false,layoutOnCardChange:false,renderHidden:true,constructor:function(b){Ext.layout.CardLayout.superclass.constructor.call(this,b);this.forceLayout=(this.deferredRender===false)},setActiveItem:function(b){b=this.container.getComponent(b);if(this.activeItem!=b){if(this.activeItem){this.activeItem.hide()}this.activeItem=b;b.show();this.container.doLayout();if(this.layoutOnCardChange&&b.doLayout){b.doLayout()}}},renderAll:function(d,c){if(this.deferredRender){this.renderItem(this.activeItem,undefined,c)}else{Ext.layout.CardLayout.superclass.renderAll.call(this,d,c)}}});Ext.Container.LAYOUTS.card=Ext.layout.CardLayout;Ext.layout.AnchorLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,getAnchorViewSize:function(d,c){return c.dom==document.body?c.getViewSize():c.getStyleSize()},onLayout:function(x,u){Ext.layout.AnchorLayout.superclass.onLayout.call(this,x,u);var D=this.getAnchorViewSize(x,u);var a=D.width,y=D.height;if(a<20&&y<20){return}var B,h;if(x.anchorSize){if(typeof x.anchorSize=="number"){B=x.anchorSize}else{B=x.anchorSize.width;h=x.anchorSize.height}}else{B=x.initialConfig.width;h=x.initialConfig.height}var v=x.items.items,w=v.length,z,i,c,A,C;for(z=0;z<w;z++){i=v[z];if(i.anchor){c=i.anchorSpec;if(!c){var E=i.anchor.split(" ");i.anchorSpec=c={right:this.parseAnchor(E[0],i.initialConfig.width,B),bottom:this.parseAnchor(E[1],i.initialConfig.height,h)}}A=c.right?this.adjustWidthAnchor(c.right(a),i):undefined;C=c.bottom?this.adjustHeightAnchor(c.bottom(y),i):undefined;if(A||C){i.setSize(A||undefined,C||undefined)}}}},parseAnchor:function(m,i,a){if(m&&m!="none"){var k;if(/^(r|right|b|bottom)$/i.test(m)){var j=a-i;return function(b){if(b!==k){k=b;return b-j}}}else{if(m.indexOf("%")!=-1){var l=parseFloat(m.replace("%",""))*0.01;return function(b){if(b!==k){k=b;return Math.floor(b*l)}}}else{m=parseInt(m,10);if(!isNaN(m)){return function(b){if(b!==k){k=b;return b+m}}}}}}return false},adjustWidthAnchor:function(c,d){return c},adjustHeightAnchor:function(c,d){return c}});Ext.Container.LAYOUTS.anchor=Ext.layout.AnchorLayout;Ext.layout.ColumnLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,extraCls:"x-column",scrollOffset:0,isValidParent:function(c,d){return(c.getPositionEl?c.getPositionEl():c.getEl()).dom.parentNode==this.innerCt.dom},onLayout:function(s,p){var r=s.items.items,q=r.length,o,u;if(!this.innerCt){p.addClass("x-column-layout-ct");this.innerCt=p.createChild({cls:"x-column-inner"});this.innerCt.createChild({cls:"x-clear"})}this.renderAll(s,this.innerCt);var c=Ext.isIE&&p.dom!=Ext.getBody().dom?p.getStyleSize():p.getViewSize();if(c.width<1&&c.height<1){return}var i=c.width-p.getPadding("lr")-this.scrollOffset,t=c.height-p.getPadding("tb"),h=i;this.innerCt.setWidth(i);for(u=0;u<q;u++){o=r[u];if(!o.columnWidth){h-=(o.getSize().width+o.getEl().getMargins("lr"))}}h=h<0?0:h;for(u=0;u<q;u++){o=r[u];if(o.columnWidth){o.setSize(Math.floor(o.columnWidth*h)-o.getEl().getMargins("lr"))}}}});Ext.Container.LAYOUTS.column=Ext.layout.ColumnLayout;Ext.layout.BorderLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,rendered:false,onLayout:function(V,h){var U;if(!this.rendered){h.addClass("x-border-layout-ct");var m=V.items.items;U=[];for(var O=0,M=m.length;O<M;O++){var w=m[O];var R=w.region;if(w.collapsed){U.push(w)}w.collapsed=false;if(!w.rendered){w.cls=w.cls?w.cls+" x-border-panel":"x-border-panel";w.render(h,O)}this[R]=R!="center"&&w.split?new Ext.layout.BorderLayout.SplitRegion(this,w.initialConfig,R):new Ext.layout.BorderLayout.Region(this,w.initialConfig,R);this[R].render(h,w)}this.rendered=true}var s=h.getViewSize();if(s.width<20||s.height<20){if(U){this.restoreCollapsed=U}return}else{if(this.restoreCollapsed){U=this.restoreCollapsed;delete this.restoreCollapsed}}var L=s.width,K=s.height;var N=L,b=K,Q=0,P=0;var e=this.north,I=this.south,S=this.west,J=this.east,w=this.center;if(!w&&Ext.layout.BorderLayout.WARN!==false){throw"No center region defined in BorderLayout "+V.id}if(e&&e.isVisible()){var i=e.getSize();var c=e.getMargins();i.width=L-(c.left+c.right);i.x=c.left;i.y=c.top;Q=i.height+i.y+c.bottom;b-=Q;e.applyLayout(i)}if(I&&I.isVisible()){var i=I.getSize();var c=I.getMargins();i.width=L-(c.left+c.right);i.x=c.left;var n=(i.height+c.top+c.bottom);i.y=K-n+c.top;b-=n;I.applyLayout(i)}if(S&&S.isVisible()){var i=S.getSize();var c=S.getMargins();i.height=b-(c.top+c.bottom);i.x=c.left;i.y=Q+c.top;var W=(i.width+c.left+c.right);P+=W;N-=W;S.applyLayout(i)}if(J&&J.isVisible()){var i=J.getSize();var c=J.getMargins();i.height=b-(c.top+c.bottom);var W=(i.width+c.left+c.right);i.x=L-W+c.left;i.y=Q+c.top;N-=W;J.applyLayout(i)}if(w){var c=w.getMargins();var T={x:P+c.left,y:Q+c.top,width:N-(c.left+c.right),height:b-(c.top+c.bottom)};w.applyLayout(T)}if(U){for(var O=0,M=U.length;O<M;O++){U[O].collapse(false)}}if(Ext.isIE&&Ext.isStrict){h.repaint()}},destroy:function(){var d=["north","south","east","west"];for(var e=0;e<d.length;e++){var g=this[d[e]];if(g){if(g.destroy){g.destroy()}else{if(g.split){g.split.destroy(true)}}}}Ext.layout.BorderLayout.superclass.destroy.call(this)}});Ext.layout.BorderLayout.Region=function(d,e,g){Ext.apply(this,e);this.layout=d;this.position=g;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||{},g=="north"||g=="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(e,i){this.panel=i;i.el.enableDisplayMode();this.targetEl=e;this.el=i.el;var g=i.getState,h=this.position;i.getState=function(){return Ext.apply(g.call(i)||{},this.state)}.createDelegate(this);if(h!="center"){i.allowQueuedExpand=false;i.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){i.collapseEl="el";i.slideAnchor=this.getSlideAnchor()}if(i.tools&&i.tools.toggle){i.tools.toggle.addClass("x-tool-collapse-"+h);i.tools.toggle.addClassOnOver("x-tool-collapse-"+h+"-over")}}},getCollapsedEl:function(){if(!this.collapsedEl){if(!this.toolTemplate){var c=new Ext.Template('<div class="x-tool x-tool-{id}">&#160;</div>');c.disableFormats=true;c.compile();Ext.layout.BorderLayout.Region.prototype.toolTemplate=c}this.collapsedEl=this.targetEl.createChild({cls:"x-layout-collapsed x-layout-collapsed-"+this.position,id:this.panel.id+"-xcollapsed"});this.collapsedEl.enableDisplayMode("block");if(this.collapseMode=="mini"){this.collapsedEl.addClass("x-layout-cmini-"+this.position);this.miniCollapsedEl=this.collapsedEl.createChild({cls:"x-layout-mini x-layout-mini-"+this.position,html:"&#160;"});this.miniCollapsedEl.addClassOnOver("x-layout-mini-over");this.collapsedEl.addClassOnOver("x-layout-collapsed-over");this.collapsedEl.on("click",this.onExpandClick,this,{stopEvent:true})}else{if(this.collapsible!==false&&!this.hideCollapseTool){var d=this.toolTemplate.append(this.collapsedEl.dom,{id:"expand-"+this.position},true);d.addClassOnOver("x-tool-expand-"+this.position+"-over");d.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(b){if(this.isSlid){this.afterSlideIn();this.panel.expand(false)}else{this.panel.expand()}},onCollapseClick:function(b){this.panel.collapse()},beforeCollapse:function(c,d){this.lastAnim=d;if(this.splitEl){this.splitEl.hide()}this.getCollapsedEl().show();this.panel.el.setStyle("z-index",100);this.isCollapsed=true;this.layout.layout()},onCollapse:function(b){this.panel.el.setStyle("z-index",1);if(this.lastAnim===false||this.panel.animCollapse===false){this.getCollapsedEl().dom.style.visibility="visible"}else{this.getCollapsedEl().slideIn(this.panel.slideAnchor,{duration:0.2})}this.state.collapsed=true;this.panel.saveState()},beforeExpand:function(d){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",1);this.state.collapsed=false;this.panel.saveState()},collapseClick:function(b){if(this.isSlid){b.stopPropagation();this.slideIn()}else{b.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(b){this.panel=b},getMinWidth:function(){return this.minWidth},getMinHeight:function(){return this.minHeight},applyLayoutCollapsed:function(d){var c=this.getCollapsedEl();c.setLeftTop(d.x,d.y);c.setSize(d.width,d.height)},applyLayout:function(b){if(this.isCollapsed){this.applyLayoutCollapsed(b)}else{this.panel.setPosition(b.x,b.y);this.panel.setSize(b.width,b.height)}},beforeSlide:function(){this.panel.beforeEffect()},afterSlide:function(){this.panel.afterEffect()},initAutoHide:function(){if(this.autoHide!==false){if(!this.autoHideHd){var b=new Ext.util.DelayedTask(this.slideIn,this);this.autoHideHd={mouseout:function(a){if(!a.within(this.el,true)){b.delay(500)}},mouseover:function(a){b.cancel()},scope:this}}this.el.on(this.autoHideHd)}},clearAutoHide:function(){if(this.autoHide!==false){this.el.un("mouseout",this.autoHideHd.mouseout);this.el.un("mouseover",this.autoHideHd.mouseover)}},clearMonitor:function(){Ext.getDoc().un("click",this.slideInIf,this)},slideOut:function(){if(this.isSlid||this.el.hasActiveFx()){return}this.isSlid=true;var b=this.panel.tools;if(b&&b.toggle){b.toggle.hide()}this.el.show();if(this.position=="east"||this.position=="west"){this.panel.setSize(undefined,this.collapsedEl.getHeight())}else{this.panel.setSize(this.collapsedEl.getWidth(),undefined)}this.restoreLT=[this.el.dom.style.left,this.el.dom.style.top];this.el.alignTo(this.collapsedEl,this.getCollapseAnchor());this.el.setStyle("z-index",this.floatingZIndex+2);this.panel.el.replaceClass("x-panel-collapsed","x-panel-floating");if(this.animFloat!==false){this.beforeSlide();this.el.slideIn(this.getSlideAnchor(),{callback:function(){this.afterSlide();this.initAutoHide();Ext.getDoc().on("click",this.slideInIf,this)},scope:this,block:true})}else{this.initAutoHide();Ext.getDoc().on("click",this.slideInIf,this)}},afterSlideIn:function(){this.clearAutoHide();this.isSlid=false;this.clearMonitor();this.el.setStyle("z-index","");this.panel.el.replaceClass("x-panel-floating","x-panel-collapsed");this.el.dom.style.left=this.restoreLT[0];this.el.dom.style.top=this.restoreLT[1];var b=this.panel.tools;if(b&&b.toggle){b.toggle.show()}},slideIn:function(b){if(!this.isSlid||this.el.hasActiveFx()){Ext.callback(b);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(b)},scope:this,block:true})}else{this.el.hide();this.afterSlideIn()}},slideInIf:function(b){if(!b.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 b=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,d=this.cmargins;switch(this.position){case"west":return[-(d.right+c.getWidth()+d.left),0];break;case"east":return[d.right+c.getWidth()+d.left,0];break;case"north":return[0,-(d.top+d.bottom+c.getHeight())];break;case"south":return[0,d.top+d.bottom+c.getHeight()];break}}};Ext.layout.BorderLayout.SplitRegion=function(d,e,g){Ext.layout.BorderLayout.SplitRegion.superclass.constructor.call(this,d,e,g);this.applyLayout=this.applyFns[g]};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(i){if(this.isCollapsed){return this.applyLayoutCollapsed(i)}var h=this.splitEl.dom,e=h.style;this.panel.setPosition(i.x,i.y);var g=h.offsetWidth;e.left=(i.x+i.width-g)+"px";e.top=(i.y)+"px";e.height=Math.max(0,i.height)+"px";this.panel.setSize(i.width-g,i.height)},east:function(i){if(this.isCollapsed){return this.applyLayoutCollapsed(i)}var h=this.splitEl.dom,e=h.style;var g=h.offsetWidth;this.panel.setPosition(i.x+g,i.y);e.left=(i.x)+"px";e.top=(i.y)+"px";e.height=Math.max(0,i.height)+"px";this.panel.setSize(i.width-g,i.height)},north:function(i){if(this.isCollapsed){return this.applyLayoutCollapsed(i)}var h=this.splitEl.dom,e=h.style;var g=h.offsetHeight;this.panel.setPosition(i.x,i.y);e.left=(i.x)+"px";e.top=(i.y+i.height-g)+"px";e.width=Math.max(0,i.width)+"px";this.panel.setSize(i.width,i.height-g)},south:function(i){if(this.isCollapsed){return this.applyLayoutCollapsed(i)}var h=this.splitEl.dom,e=h.style;var g=h.offsetHeight;this.panel.setPosition(i.x,i.y+g);e.left=(i.x)+"px";e.top=(i.y)+"px";e.width=Math.max(0,i.width)+"px";this.panel.setSize(i.width,i.height-g)}},render:function(g,i){Ext.layout.BorderLayout.SplitRegion.superclass.render.call(this,g,i);var h=this.position;this.splitEl=g.createChild({cls:"x-layout-split x-layout-split-"+h,html:"&#160;",id:this.panel.id+"-xsplit"});if(this.collapseMode=="mini"){this.miniSplitEl=this.splitEl.createChild({cls:"x-layout-mini x-layout-mini-"+h,html:"&#160;"});this.miniSplitEl.addClassOnOver("x-layout-mini-over");this.miniSplitEl.on("click",this.onCollapseClick,this,{stopEvent:true})}var e=this.splitSettings[h];this.split=new Ext.SplitBar(this.splitEl.dom,i.el,e.orientation);this.split.tickSize=this.tickSize;this.split.placement=e.placement;this.split.getMaximumSize=this[e.maxFn].createDelegate(this);this.split.minSize=this.minSize||this[e.minProp];this.split.on("beforeapply",this.onSplitMove,this);this.split.useShim=this.useShim===true;this.maxSize=this.maxSize||this[e.maxProp];if(i.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 b=this.panel.getSize();if(this.position=="north"||this.position=="south"){b.height+=this.splitEl.dom.offsetHeight}else{b.width+=this.splitEl.dom.offsetWidth}return b},getHMaxSize:function(){var c=this.maxSize||10000;var d=this.layout.center;return Math.min(c,(this.el.getWidth()+d.el.getWidth())-d.getMinWidth())},getVMaxSize:function(){var c=this.maxSize||10000;var d=this.layout.center;return Math.min(c,(this.el.getHeight()+d.el.getHeight())-d.getMinHeight())},onSplitMove:function(d,e){var g=this.panel.getSize();this.lastSplitSize=e;if(this.position=="north"||this.position=="south"){this.panel.setSize(g.width,e);this.state.height=e}else{this.panel.setSize(e,g.height);this.state.width=e}this.layout.layout();this.panel.saveState();return false},getSplitBar:function(){return this.split},destroy:function(){Ext.destroy(this.miniSplitEl,this.split,this.splitEl)}});Ext.Container.LAYOUTS.border=Ext.layout.BorderLayout;Ext.layout.FormLayout=Ext.extend(Ext.layout.AnchorLayout,{labelSeparator:":",setContainer:function(d){Ext.layout.FormLayout.superclass.setContainer.call(this,d);if(d.labelAlign){d.addClass("x-form-label-"+d.labelAlign)}if(d.hideLabels){this.labelStyle="display:none";this.elementStyle="padding-left:0;";this.labelAdjust=0}else{this.labelSeparator=d.labelSeparator||this.labelSeparator;d.labelWidth=d.labelWidth||100;if(typeof d.labelWidth=="number"){var c=(typeof d.labelPad=="number"?d.labelPad:5);this.labelAdjust=d.labelWidth+c;this.labelStyle="width:"+d.labelWidth+"px;";this.elementStyle="padding-left:"+(d.labelWidth+c)+"px"}if(d.labelAlign=="top"){this.labelStyle="width:auto;";this.labelAdjust=0;this.elementStyle="padding-left:0;"}}},getLabelStyle:function(i){var g="",k=[this.labelStyle,i];for(var j=0,h=k.length;j<h;++j){if(k[j]){g+=k[j];if(g.substr(-1,1)!=";"){g+=";"}}}return g},renderItem:function(h,g,i){if(h&&!h.rendered&&(h.isFormField||h.fieldLabel)&&h.inputType!="hidden"){var c=this.getTemplateArgs(h);if(typeof g=="number"){g=i.dom.childNodes[g]||null}if(g){this.fieldTpl.insertBefore(g,c)}else{this.fieldTpl.append(i,c)}h.render("x-form-el-"+h.id)}else{Ext.layout.FormLayout.superclass.renderItem.apply(this,arguments)}},getTemplateArgs:function(c){var d=!c.fieldLabel||c.hideLabel;return{id:c.id,label:c.fieldLabel,labelStyle:c.labelStyle||this.labelStyle||"",elementStyle:this.elementStyle||"",labelSeparator:d?"":(typeof c.labelSeparator=="undefined"?this.labelSeparator:c.labelSeparator),itemCls:(c.itemCls||this.container.itemCls||"")+(c.hideLabel?" x-hide-label":""),clearCls:c.clearCls||"x-form-clear-left"}},adjustWidthAnchor:function(c,d){return c-(d.isFormField||d.fieldLabel?(d.hideLabel?0:this.labelAdjust):0)},isValidParent:function(c,d){return true}});Ext.Container.LAYOUTS.form=Ext.layout.FormLayout;Ext.layout.AccordionLayout=Ext.extend(Ext.layout.FitLayout,{fill:true,autoWidth:true,titleCollapse:true,hideCollapseTool:false,collapseFirst:false,animate:false,sequence:false,activeOnTop:false,renderItem:function(b){if(this.animate===false){b.animCollapse=false}b.collapsible=true;if(this.autoWidth){b.autoWidth=true}if(this.titleCollapse){b.titleCollapse=true}if(this.hideCollapseTool){b.hideCollapseTool=true}if(this.collapseFirst!==undefined){b.collapseFirst=this.collapseFirst}if(!this.activeItem&&!b.collapsed){this.activeItem=b}else{if(this.activeItem&&this.activeItem!=b){b.collapsed=true}}Ext.layout.AccordionLayout.superclass.renderItem.apply(this,arguments);b.header.addClass("x-accordion-hd");b.on("beforeexpand",this.beforeExpand,this)},beforeExpand:function(g,d){var e=this.activeItem;if(e){if(this.sequence){delete this.activeItem;if(!e.collapsed){e.collapse({callback:function(){g.expand(d||true)},scope:this});return false}}else{e.collapse(this.animate)}}this.activeItem=g;if(this.activeOnTop){g.el.dom.parentNode.insertBefore(g.el.dom,g.el.dom.parentNode.firstChild)}this.layout()},setItemSize:function(g,d){if(this.fill&&g){var e=0;this.container.items.each(function(a){if(a!=g){e+=a.header.getHeight()}});d.height-=e;g.setSize(d)}},setActiveItem:function(b){b=this.container.getComponent(b);if(this.activeItem!=b){if(b.rendered&&b.collapsed){b.expand()}else{this.activeItem=b}}}});Ext.Container.LAYOUTS.accordion=Ext.layout.AccordionLayout;Ext.layout.Accordion=Ext.layout.AccordionLayout;Ext.layout.TableLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:false,tableAttrs:null,setContainer:function(b){Ext.layout.TableLayout.superclass.setContainer.call(this,b);this.currentRow=0;this.currentColumn=0;this.cells=[]},onLayout:function(m,k){var l=m.items.items,i=l.length,j,c;if(!this.table){k.addClass("x-table-layout-ct");this.table=k.createChild(Ext.apply({tag:"table",cls:"x-table-layout",cellspacing:0,cn:{tag:"tbody"}},this.tableAttrs),null,true)}this.renderAll(m,k)},getRow:function(d){var c=this.table.tBodies[0].childNodes[d];if(!c){c=document.createElement("tr");this.table.tBodies[0].appendChild(c)}return c},getNextCell:function(l){var k=this.getNextNonSpan(this.currentColumn,this.currentRow);var o=this.currentColumn=k[0],p=this.currentRow=k[1];for(var m=p;m<p+(l.rowspan||1);m++){if(!this.cells[m]){this.cells[m]=[]}for(var q=o;q<o+(l.colspan||1);q++){this.cells[m][q]=true}}var n=document.createElement("td");if(l.cellId){n.id=l.cellId}var c="x-table-layout-cell";if(l.cellCls){c+=" "+l.cellCls}n.className=c;if(l.colspan){n.colSpan=l.colspan}if(l.rowspan){n.rowSpan=l.rowspan}this.getRow(p).appendChild(n);return n},getNextNonSpan:function(e,g){var d=this.columns;while((d&&e>=d)||(this.cells[g]&&this.cells[g][e])){if(d&&e>=d){g++;e=0}else{e++}}return[e,g]},renderItem:function(h,g,i){if(h&&!h.rendered){h.render(this.getNextCell(h));if(this.extraCls){var c=h.getPositionEl?h.getPositionEl():h;c.addClass(this.extraCls)}}},isValidParent:function(c,d){return true}});Ext.Container.LAYOUTS.table=Ext.layout.TableLayout;Ext.layout.AbsoluteLayout=Ext.extend(Ext.layout.AnchorLayout,{extraCls:"x-abs-layout-item",onLayout:function(d,c){c.position();this.paddingLeft=c.getPadding("l");this.paddingTop=c.getPadding("t");Ext.layout.AbsoluteLayout.superclass.onLayout.call(this,d,c)},adjustWidthAnchor:function(c,d){return c?c-d.getPosition(true)[0]+this.paddingLeft:c},adjustHeightAnchor:function(c,d){return c?c-d.getPosition(true)[1]+this.paddingTop:c}});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,scrollOffset:0,extraCls:"x-box-item",ctCls:"x-box-layout-ct",innerCls:"x-box-inner",isValidParent:function(c,d){return c.getEl().dom.parentNode==this.innerCt.dom},onLayout:function(p,m){var o=p.items.items,c=o.length,l,q,n=c-1,i;if(!this.innerCt){m.addClass(this.ctCls);this.innerCt=m.createChild({cls:this.innerCls});this.padding=this.parseMargins(this.padding)}this.renderAll(p,this.innerCt)},renderItem:function(b){if(typeof b.margins=="string"){b.margins=this.parseMargins(b.margins)}else{if(!b.margins){b.margins=this.defaultMargins}}Ext.layout.BoxLayout.superclass.renderItem.apply(this,arguments)},getTargetSize:function(b){return(Ext.isIE6&&Ext.isStrict&&b.dom==document.body)?b.getStyleSize():b.getViewSize()},getItems:function(c){var d=[];c.items.each(function(a){if(a.isVisible()){d.push(a)}});return d}});Ext.layout.VBoxLayout=Ext.extend(Ext.layout.BoxLayout,{align:"left",onLayout:function(W,G){Ext.layout.VBoxLayout.superclass.onLayout.call(this,W,G);var V=this.getItems(W),T,R,M,K=this.getTargetSize(G),S=K.width-G.getPadding("lr")-this.scrollOffset,l=K.height-G.getPadding("tb"),I=this.padding.left,Q=this.padding.top,U=this.pack=="start",w=["stretch","stretchmax"].indexOf(this.align)==-1,L=S-(this.padding.left+this.padding.right),P=0,O=0,F=0,J=0,X=0;Ext.each(V,function(a){T=a.margins;F+=a.flex||0;R=a.getHeight();M=T.top+T.bottom;P+=R+M;J+=M+(a.flex?0:R);O=Math.max(O,a.getWidth()+T.left+T.right)});P=l-P-this.padding.top-this.padding.bottom;var aa=O+this.padding.left+this.padding.right;switch(this.align){case"stretch":this.innerCt.setSize(S,l);break;case"stretchmax":case"left":this.innerCt.setSize(aa,l);break;case"center":this.innerCt.setSize(S=Math.max(S,aa),l);break}var Y=Math.max(0,l-this.padding.top-this.padding.bottom-J),H=Y,h=[],t=[],N=0,Z=Math.max(0,S-this.padding.left-this.padding.right);Ext.each(V,function(a){if(U&&a.flex){R=Math.floor(Y*(a.flex/F));H-=R;h.push(R)}});if(this.pack=="center"){Q+=P?P/2:0}else{if(this.pack=="end"){Q+=P}}Ext.each(V,function(a){T=a.margins;Q+=T.top;a.setPosition(I+T.left,Q);if(U&&a.flex){R=Math.max(0,h[N++]+(H-->0?1:0));if(w){t.push(a.getWidth())}a.setSize(Z,R)}else{R=a.getHeight()}Q+=R+T.bottom});N=0;Ext.each(V,function(a){T=a.margins;if(this.align=="stretch"){a.setWidth((L-(T.left+T.right)).constrain(a.minWidth||0,a.maxWidth||1000000))}else{if(this.align=="stretchmax"){a.setWidth((O-(T.left+T.right)).constrain(a.minWidth||0,a.maxWidth||1000000))}else{if(this.align=="center"){var b=Z-(a.getWidth()+T.left+T.right);if(b>0){a.setPosition(I+T.left+(b/2),a.y)}}if(U&&a.flex){a.setWidth(t[N++])}}}},this)}});Ext.Container.LAYOUTS.vbox=Ext.layout.VBoxLayout;Ext.layout.HBoxLayout=Ext.extend(Ext.layout.BoxLayout,{align:"top",onLayout:function(X,G){Ext.layout.HBoxLayout.superclass.onLayout.call(this,X,G);var W=this.getItems(X),T,Y,M,K=this.getTargetSize(G),R=K.width-G.getPadding("lr")-this.scrollOffset,L=K.height-G.getPadding("tb"),F=this.padding.left,P=this.padding.top,U=this.pack=="start",h=["stretch","stretchmax"].indexOf(this.align)==-1,Q=L-(this.padding.top+this.padding.bottom),J=0,I=0,w=0,Z=0,V=0;Ext.each(W,function(a){T=a.margins;w+=a.flex||0;Y=a.getWidth();M=T.left+T.right;J+=Y+M;Z+=M+(a.flex?0:Y);I=Math.max(I,a.getHeight()+T.top+T.bottom)});J=R-J-this.padding.left-this.padding.right;var l=I+this.padding.top+this.padding.bottom;switch(this.align){case"stretch":this.innerCt.setSize(R,L);break;case"stretchmax":case"top":this.innerCt.setSize(R,l);break;case"middle":this.innerCt.setSize(R,L=Math.max(L,l));break}var t=Math.max(0,R-this.padding.left-this.padding.right-Z),H=t,S=[],O=[],N=0,aa=Math.max(0,L-this.padding.top-this.padding.bottom);Ext.each(W,function(a){if(U&&a.flex){Y=Math.floor(t*(a.flex/w));H-=Y;S.push(Y)}});if(this.pack=="center"){F+=J?J/2:0}else{if(this.pack=="end"){F+=J}}Ext.each(W,function(a){T=a.margins;F+=T.left;a.setPosition(F,P+T.top);if(U&&a.flex){Y=Math.max(0,S[N++]+(H-->0?1:0));if(h){O.push(a.getHeight())}a.setSize(Y,aa)}else{Y=a.getWidth()}F+=Y+T.right});N=0;Ext.each(W,function(b){var c=b.margins;if(this.align=="stretch"){b.setHeight((Q-(c.top+c.bottom)).constrain(b.minHeight||0,b.maxHeight||1000000))}else{if(this.align=="stretchmax"){b.setHeight((I-(c.top+c.bottom)).constrain(b.minHeight||0,b.maxHeight||1000000))}else{if(this.align=="middle"){var a=aa-(b.getHeight()+c.top+c.bottom);if(a>0){b.setPosition(b.x,P+c.top+(a/2))}}if(U&&b.flex){b.setHeight(O[N++])}}}},this)}});Ext.Container.LAYOUTS.hbox=Ext.layout.HBoxLayout;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(d,c){this.fireEvent("resize",this,d,c,d,c)}});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,toolTarget:"header",collapseEl:"bwrap",slideAnchor:"t",disabledClass:"",deferHeight:true,expandDefaults:{duration:0.25},collapseDefaults:{duration:0.25},initComponent:function(){Ext.Panel.superclass.initComponent.call(this);this.addEvents("bodyresize","titlechange","iconchange","collapse","expand","beforecollapse","beforeexpand","beforeclose","close","activate","deactivate");if(this.unstyled){this.baseCls="x-plain"}if(this.tbar){this.elements+=",tbar";if(Ext.isObject(this.tbar)){this.topToolbar=this.tbar}delete this.tbar}if(this.bbar){this.elements+=",bbar";if(Ext.isObject(this.bbar)){this.bottomToolbar=this.bbar}delete this.bbar}if(this.header===true){this.elements+=",header";delete this.header}else{if(this.headerCfg||(this.title&&this.header!==false)){this.elements+=",header"}}if(this.footerCfg||this.footer===true){this.elements+=",footer";delete this.footer}if(this.buttons){this.elements+=",footer";var g=this.buttons;this.buttons=[];for(var d=0,e=g.length;d<e;d++){if(g[d].render){this.buttons.push(g[d])}else{if(g[d].xtype){this.buttons.push(Ext.create(g[d],"button"))}else{this.addButton(g[d])}}}}if(this.fbar){this.elements+=",footer"}if(this.autoLoad){this.on("render",this.doAutoLoad,this,{delay:10})}},createElement:function(e,g){if(this[e]){g.appendChild(this[e].dom);return}if(e==="bwrap"||this.elements.indexOf(e)!=-1){if(this[e+"Cfg"]){this[e]=Ext.fly(g).createChild(this[e+"Cfg"])}else{var d=document.createElement("div");d.className=this[e+"Cls"];this[e]=Ext.get(g.appendChild(d))}if(this[e+"CssClass"]){this[e].addClass(this[e+"CssClass"])}if(this[e+"Style"]){this[e].applyStyles(this[e+"Style"])}}},onRender:function(s,t){Ext.Panel.superclass.onRender.call(this,s,t);this.createClasses();var w=this.el,q=w.dom,o;w.addClass(this.baseCls);if(q.firstChild){this.header=w.down("."+this.headerCls);this.bwrap=w.down("."+this.bwrapCls);var p=this.bwrap?this.bwrap:w;this.tbar=p.down("."+this.tbarCls);this.body=p.down("."+this.bodyCls);this.bbar=p.down("."+this.bbarCls);this.footer=p.down("."+this.footerCls);this.fromMarkup=true}if(this.preventBodyReset===true){w.addClass("x-panel-reset")}if(this.cls){w.addClass(this.cls)}if(this.buttons){this.elements+=",footer"}if(this.frame){w.insertHtml("afterBegin",String.format(Ext.Element.boxMarkup,this.baseCls));this.createElement("header",q.firstChild.firstChild.firstChild);this.createElement("bwrap",q);o=this.bwrap.dom;var u=q.childNodes[1],v=q.childNodes[2];o.appendChild(u);o.appendChild(v);var n=o.firstChild.firstChild.firstChild;this.createElement("tbar",n);this.createElement("body",n);this.createElement("bbar",n);this.createElement("footer",o.lastChild.firstChild.firstChild);if(!this.footer){this.bwrap.dom.lastChild.className+=" x-panel-nofooter"}}else{this.createElement("header",q);this.createElement("bwrap",q);o=this.bwrap.dom;this.createElement("tbar",o);this.createElement("body",o);this.createElement("bbar",o);this.createElement("footer",o);if(!this.header){this.body.addClass(this.bodyCls+"-noheader");if(this.tbar){this.tbar.addClass(this.tbarCls+"-noheader")}}}if(this.padding!==undefined){this.body.setStyle("padding",this.body.addUnits(this.padding))}if(this.border===false){this.el.addClass(this.baseCls+"-noborder");this.body.addClass(this.bodyCls+"-noborder");if(this.header){this.header.addClass(this.headerCls+"-noborder")}if(this.footer){this.footer.addClass(this.footerCls+"-noborder")}if(this.tbar){this.tbar.addClass(this.tbarCls+"-noborder")}if(this.bbar){this.bbar.addClass(this.bbarCls+"-noborder")}}if(this.bodyBorder===false){this.body.addClass(this.bodyCls+"-noborder")}this.bwrap.enableDisplayMode("block");if(this.header){this.header.unselectable();if(this.headerAsText){this.header.dom.innerHTML='<span class="'+this.headerTextCls+'">'+this.header.dom.innerHTML+"</span>";if(this.iconCls){this.setIconClass(this.iconCls)}}}if(this.floating){this.makeFloating(this.floating)}if(this.collapsible){this.tools=this.tools?this.tools.slice(0):[];if(!this.hideCollapseTool){this.tools[this.collapseFirst?"unshift":"push"]({id:"toggle",handler:this.toggleCollapse,scope:this})}if(this.titleCollapse&&this.header){this.mon(this.header,"click",this.toggleCollapse,this);this.header.setStyle("cursor","pointer")}}if(this.tools){var r=this.tools;this.tools={};this.addTool.apply(this,r)}else{this.tools={}}if(this.buttons&&this.buttons.length>0){this.fbar=new Ext.Toolbar({items:this.buttons,toolbarCls:"x-panel-fbar"})}this.toolbars=[];if(this.fbar){this.fbar=Ext.create(this.fbar,"toolbar");this.fbar.enableOverflow=false;if(this.fbar.items){this.fbar.items.each(function(a){a.minWidth=a.minWidth||this.minButtonWidth},this)}this.fbar.toolbarCls="x-panel-fbar";var d=this.footer.createChild({cls:"x-panel-btns x-panel-btns-"+this.buttonAlign});this.fbar.ownerCt=this;this.fbar.render(d);d.createChild({cls:"x-clear"});this.toolbars.push(this.fbar)}if(this.tbar&&this.topToolbar){if(Ext.isArray(this.topToolbar)){this.topToolbar=new Ext.Toolbar(this.topToolbar)}else{if(!this.topToolbar.events){this.topToolbar=Ext.create(this.topToolbar,"toolbar")}}this.topToolbar.ownerCt=this;this.topToolbar.render(this.tbar);this.toolbars.push(this.topToolbar)}if(this.bbar&&this.bottomToolbar){if(Ext.isArray(this.bottomToolbar)){this.bottomToolbar=new Ext.Toolbar(this.bottomToolbar)}else{if(!this.bottomToolbar.events){this.bottomToolbar=Ext.create(this.bottomToolbar,"toolbar")}}this.bottomToolbar.ownerCt=this;this.bottomToolbar.render(this.bbar);this.toolbars.push(this.bottomToolbar)}Ext.each(this.toolbars,function(a){a.on({scope:this,afterlayout:this.syncHeight,remove:this.syncHeight})},this)},setIconClass:function(e){var g=this.iconCls;this.iconCls=e;if(this.rendered&&this.header){if(this.frame){this.header.addClass("x-panel-icon");this.header.replaceClass(g,this.iconCls)}else{var h=this.header.dom;var i=h.firstChild&&String(h.firstChild.tagName).toLowerCase()=="img"?h.firstChild:null;if(i){Ext.fly(i).replaceClass(g,this.iconCls)}else{Ext.DomHelper.insertBefore(h.firstChild,{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-panel-inline-icon "+this.iconCls})}}}this.fireEvent("iconchange",this,e,g)},makeFloating:function(b){this.floating=true;this.el=new Ext.Layer(Ext.isObject(b)?b:{shadow:this.shadow!==undefined?this.shadow:"sides",shadowOffset:this.shadowOffset,constrain:false,shim:this.shim===false?false:undefined},this.el)},getTopToolbar:function(){return this.topToolbar},getBottomToolbar:function(){return this.bottomToolbar},addButton:function(h,j,k){var i={handler:j,scope:k,minWidth:this.minButtonWidth,hideParent:true};if(typeof h=="string"){i.text=h}else{Ext.apply(i,h)}var g=new Ext.Button(i);if(!this.buttons){this.buttons=[]}this.buttons.push(g);return g},addTool:function(){if(!this[this.toolTarget]){return}if(!this.toolTemplate){var k=new Ext.Template('<div class="x-tool x-tool-{id}">&#160;</div>');k.disableFormats=true;k.compile();Ext.Panel.prototype.toolTemplate=k}for(var l=0,n=arguments,o=n.length;l<o;l++){var a=n[l];if(!this.tools[a.id]){var i="x-tool-"+a.id+"-over";var m=this.toolTemplate.insertFirst((a.align!=="left")?this[this.toolTarget]:this[this.toolTarget].child("span"),a,true);this.tools[a.id]=m;m.enableDisplayMode("block");this.mon(m,"click",this.createToolHandler(m,a,i,this));if(a.on){this.mon(m,a.on)}if(a.hidden){m.hide()}if(a.qtip){if(Ext.isObject(a.qtip)){Ext.QuickTips.register(Ext.apply({target:m.id},a.qtip))}else{m.dom.qtip=a.qtip}}m.addClassOnOver(i)}}},onLayout:function(){if(this.toolbars.length>0){this.duringLayout=true;Ext.each(this.toolbars,function(b){b.doLayout()});delete this.duringLayout;this.syncHeight()}},syncHeight:function(){if(!(this.autoHeight||this.duringLayout)){var l=this.lastSize;if(l&&!Ext.isEmpty(l.height)){var h=l.height,m=this.el.getHeight();if(h!="auto"&&h!=m){var k=this.body,i=k.getHeight();m=Math.max(i+h-m,0);if(i>0&&i!=m){k.setHeight(m);if(Ext.isIE&&m<=0){return}var j=k.getSize();this.fireEvent("bodyresize",j.width,j.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(i,g,h,e){return function(a){i.removeClass(h);if(g.stopEvent!==false){a.stopEvent()}if(g.handler){g.handler.call(g.scope||i,a,i,e,g)}}},afterRender:function(){if(this.floating&&!this.hidden){this.el.show()}if(this.title){this.setTitle(this.title)}this.setAutoScroll();if(this.html){this.body.update(Ext.isObject(this.html)?Ext.DomHelper.markup(this.html):this.html);delete this.html}if(this.contentEl){var b=Ext.getDom(this.contentEl);Ext.fly(b).removeClass(["x-hidden","x-hide-display"]);this.body.dom.appendChild(b)}if(this.collapsed){this.collapsed=false;this.collapse(false)}Ext.Panel.superclass.afterRender.call(this);this.initEvents()},setAutoScroll:function(){if(this.rendered&&this.autoScroll){var b=this.body||this.el;if(b){b.setOverflow("auto")}}},getKeyMap:function(){if(!this.keyMap){this.keyMap=new Ext.KeyMap(this.el,this.keys)}return this.keyMap},initEvents:function(){if(this.keys){this.getKeyMap()}if(this.draggable){this.initDraggable()}},initDraggable:function(){this.dd=new Ext.Panel.DD(this,typeof this.draggable=="boolean"?null:this.draggable)},beforeEffect:function(){if(this.floating){this.el.beforeAction()}this.el.addClass("x-panel-animated")},afterEffect:function(){this.syncShadow();this.el.removeClass("x-panel-animated")},createEffect:function(i,a,h){var g={scope:h,block:true};if(i===true){g.callback=a;return g}else{if(!i.callback){g.callback=a}else{g.callback=function(){a.call(h);Ext.callback(i.callback,i.scope)}}}return Ext.applyIf(g,i)},collapse:function(c){if(this.collapsed||this.el.hasFxBlock()||this.fireEvent("beforecollapse",this,c)===false){return}var d=c===true||(c!==false&&this.animCollapse);this.beforeEffect();this.onCollapse(d,c);return this},onCollapse:function(d,c){if(d){this[this.collapseEl].slideOut(this.slideAnchor,Ext.apply(this.createEffect(c||true,this.afterCollapse,this),this.collapseDefaults))}else{this[this.collapseEl].hide();this.afterCollapse()}},afterCollapse:function(){this.collapsed=true;this.el.addClass(this.collapsedCls);this.afterEffect();this.fireEvent("collapse",this)},expand:function(c){if(!this.collapsed||this.el.hasFxBlock()||this.fireEvent("beforeexpand",this,c)===false){return}var d=c===true||(c!==false&&this.animCollapse);this.el.removeClass(this.collapsedCls);this.beforeEffect();this.onExpand(d,c);return this},onExpand:function(d,c){if(d){this[this.collapseEl].slideIn(this.slideAnchor,Ext.apply(this.createEffect(c||true,this.afterExpand,this),this.expandDefaults))}else{this[this.collapseEl].show();this.afterExpand()}},afterExpand:function(){this.collapsed=false;this.afterEffect();if(this.deferLayout!==undefined){this.doLayout(true)}this.fireEvent("expand",this)},toggleCollapse:function(b){this[this.collapsed?"expand":"collapse"](b);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(g,k){if(g!==undefined||k!==undefined){if(!this.collapsed){if(typeof g=="number"){g=this.adjustBodyWidth(g-this.getFrameWidth());if(this.tbar){this.tbar.setWidth(g);if(this.topToolbar){this.topToolbar.setSize(g)}}if(this.bbar){this.bbar.setWidth(g);if(this.bottomToolbar){this.bottomToolbar.setSize(g)}}if(this.fbar){var j=this.fbar,i=1,h=Ext.isStrict;if(this.buttonAlign=="left"){i=g-j.container.getFrameWidth("lr")}else{if(Ext.isIE||Ext.isWebKit){if(!(this.buttonAlign=="center"&&Ext.isWebKit)&&(!h||(!Ext.isIE8&&h))){(function(){j.setWidth(j.getEl().child(".x-toolbar-ct").getWidth())}).defer(1)}else{i="auto"}}else{i="auto"}}j.setWidth(i)}this.body.setWidth(g)}else{if(g=="auto"){this.body.setWidth(g)}}if(typeof k=="number"){k=Math.max(0,this.adjustBodyHeight(k-this.getFrameHeight()));this.body.setHeight(k)}else{if(k=="auto"){this.body.setHeight(k)}}if(this.disabled&&this.el._mask){this.el._mask.setSize(this.el.dom.clientWidth,this.el.getHeight())}}else{this.queuedBodySize={width:g,height:k};if(!this.queuedExpand&&this.allowQueuedExpand!==false){this.queuedExpand=true;this.on("expand",function(){delete this.queuedExpand;this.onResize(this.queuedBodySize.width,this.queuedBodySize.height);this.doLayout()},this,{single:true})}}this.fireEvent("bodyresize",this,g,k)}this.syncShadow()},adjustBodyHeight:function(b){return b},adjustBodyWidth:function(b){return b},onPosition:function(){this.syncShadow()},getFrameWidth:function(){var d=this.el.getFrameWidth("lr")+this.bwrap.getFrameWidth("lr");if(this.frame){var e=this.bwrap.dom.firstChild;d+=(Ext.fly(e).getFrameWidth("l")+Ext.fly(e.firstChild).getFrameWidth("r"));var g=this.bwrap.dom.firstChild.firstChild.firstChild;d+=Ext.fly(g).getFrameWidth("lr")}return d},getFrameHeight:function(){var g=this.el.getFrameWidth("tb")+this.bwrap.getFrameWidth("tb");g+=(this.tbar?this.tbar.getHeight():0)+(this.bbar?this.bbar.getHeight():0);if(this.frame){var i=this.el.dom.firstChild;var h=this.bwrap.dom.lastChild;g+=(i.offsetHeight+h.offsetHeight);var e=this.bwrap.dom.firstChild.firstChild.firstChild;g+=Ext.fly(e).getFrameWidth("tb")}else{g+=(this.header?this.header.getHeight():0)+(this.footer?this.footer.getHeight():0)}return g},getInnerWidth:function(){return this.getSize().width-this.getFrameWidth()},getInnerHeight:function(){return this.getSize().height-this.getFrameHeight()},syncShadow:function(){if(this.floating){this.el.sync(true)}},getLayoutTarget:function(){return this.body},setTitle:function(c,d){this.title=c;if(this.header&&this.headerAsText){this.header.child("span").update(c)}if(d){this.setIconClass(d)}this.fireEvent("titlechange",this,c);return this},getUpdater:function(){return this.body.getUpdater()},load:function(){var b=this.body.getUpdater();b.update.apply(b,arguments);return this},beforeDestroy:function(){if(this.header){this.header.removeAllListeners();if(this.headerAsText){Ext.Element.uncache(this.header.child("span"))}}Ext.Element.uncache(this.header,this.tbar,this.bbar,this.footer,this.body,this.bwrap);if(this.tools){for(var d in this.tools){Ext.destroy(this.tools[d])}}if(this.buttons){for(var b in this.buttons){Ext.destroy(this.buttons[b])}}Ext.destroy(this.toolbars);Ext.Panel.superclass.beforeDestroy.call(this)},createClasses:function(){this.headerCls=this.baseCls+"-header";this.headerTextCls=this.baseCls+"-header-text";this.bwrapCls=this.baseCls+"-bwrap";this.tbarCls=this.baseCls+"-tbar";this.bodyCls=this.baseCls+"-body";this.bbarCls=this.baseCls+"-bbar";this.footerCls=this.baseCls+"-footer"},createGhost:function(h,i,g){var j=document.createElement("div");j.className="x-panel-ghost "+(h?h:"");if(this.header){j.appendChild(this.el.dom.firstChild.cloneNode(true))}Ext.fly(j.appendChild(document.createElement("ul"))).setHeight(this.bwrap.getHeight());j.style.width=this.el.dom.offsetWidth+"px";if(!g){this.container.dom.appendChild(j)}else{Ext.getDom(g).appendChild(j)}if(i!==false&&this.el.useShim!==false){var k=new Ext.Layer({shadow:false,useDisplay:true,constrain:false},j);k.show();return k}else{return new Ext.Element(j)}},doAutoLoad:function(){var b=this.body.getUpdater();if(this.renderer){b.setRenderer(this.renderer)}b.update(Ext.isObject(this.autoLoad)?this.autoLoad:{url:this.autoLoad})},getTool:function(b){return this.tools[b]}});Ext.reg("panel",Ext.Panel);Ext.Editor=function(c,d){if(c.field){this.field=Ext.create(c.field,"textfield");d=Ext.apply({},c);delete d.field}else{this.field=c}Ext.Editor.superclass.constructor.call(this,d)};Ext.extend(Ext.Editor,Ext.Component,{value:"",alignment:"c-c?",shadow:"frame",constrain:false,swallowKeys:true,completeOnEnter:false,cancelOnEsc:false,updateEl:false,initComponent:function(){Ext.Editor.superclass.initComponent.call(this);this.addEvents("beforestartedit","startedit","beforecomplete","complete","canceledit","specialkey")},onRender:function(c,d){this.el=new Ext.Layer({shadow:this.shadow,cls:"x-editor",parentEl:c,shim:this.shim,shadowOffset:this.shadowOffset||4,id:this.id,constrain:this.constrain});if(this.zIndex){this.el.setZIndex(this.zIndex)}this.el.setStyle("overflow",Ext.isGecko?"auto":"hidden");if(this.field.msgTarget!="title"){this.field.msgTarget="qtip"}this.field.inEditor=true;this.field.render(this.el);if(Ext.isGecko){this.field.el.dom.setAttribute("autocomplete","off")}this.mon(this.field,"specialkey",this.onSpecialKey,this);if(this.swallowKeys){this.field.el.swallowEvent(["keydown","keypress"])}this.field.show();this.mon(this.field,"blur",this.onBlur,this);if(this.field.grow){this.mon(this.field,"autosize",this.el.sync,this.el,{delay:1})}},onSpecialKey:function(g,d){var e=d.getKey();if(this.completeOnEnter&&e==d.ENTER){d.stopEvent();this.completeEdit()}else{if(this.cancelOnEsc&&e==d.ESC){this.cancelEdit()}else{this.fireEvent("specialkey",g,d)}}if(this.field.triggerBlur&&(e==d.ENTER||e==d.ESC||e==d.TAB)){this.field.triggerBlur()}},startEdit:function(d,g){if(this.editing){this.completeEdit()}this.boundEl=Ext.get(d);var e=g!==undefined?g:this.boundEl.dom.innerHTML;if(!this.rendered){this.render(this.parentEl||document.body)}if(this.fireEvent("beforestartedit",this,this.boundEl,e)===false){return}this.startValue=e;this.field.setValue(e);this.doAutoSize();this.el.alignTo(this.boundEl,this.alignment);this.editing=true;this.show()},doAutoSize:function(){if(this.autoSize){var b=this.boundEl.getSize();switch(this.autoSize){case"width":this.setSize(b.width,"");break;case"height":this.setSize("",b.height);break;default:this.setSize(b.width,b.height)}}},setSize:function(d,c){delete this.field.lastSize;this.field.setSize(d,c);if(this.el){if(Ext.isGecko2||Ext.isOpera){this.el.setSize(d,c)}this.el.sync()}},realign:function(){this.el.alignTo(this.boundEl,this.alignment)},completeEdit:function(d){if(!this.editing){return}var c=this.getValue();if(!this.field.isValid()){if(this.revertInvalid!==false){this.cancelEdit(d)}return}if(String(c)===String(this.startValue)&&this.ignoreNoChange){this.hideEdit(d);return}if(this.fireEvent("beforecomplete",this,c,this.startValue)!==false){c=this.getValue();if(this.updateEl&&this.boundEl){this.boundEl.update(c)}this.hideEdit(d);this.fireEvent("complete",this,c,this.startValue)}},onShow:function(){this.el.show();if(this.hideEl!==false){this.boundEl.hide()}this.field.show();if(Ext.isIE&&!this.fixIEFocus){this.fixIEFocus=true;this.deferredFocus.defer(50,this)}else{this.field.focus()}this.fireEvent("startedit",this.boundEl,this.startValue)},deferredFocus:function(){if(this.editing){this.field.focus()}},cancelEdit:function(d){if(this.editing){var c=this.getValue();this.setValue(this.startValue);this.hideEdit(d);this.fireEvent("canceledit",this,c,this.startValue)}},hideEdit:function(b){if(b!==true){this.editing=false;this.hide()}},onBlur:function(){if(this.allowBlur!==true&&this.editing){this.completeEdit()}},onHide:function(){if(this.editing){this.completeEdit();return}this.field.blur();if(this.field.collapse){this.field.collapse()}this.el.hide();if(this.hideEl!==false){this.boundEl.show()}},setValue:function(b){this.field.setValue(b)},getValue:function(){return this.field.getValue()},beforeDestroy:function(){Ext.destroy(this.field);this.field=null}});Ext.reg("editor",Ext.Editor);Ext.ColorPalette=function(b){Ext.ColorPalette.superclass.constructor.call(this,b);this.addEvents("select");if(this.handler){this.on("select",this.handler,this.scope,true)}};Ext.extend(Ext.ColorPalette,Ext.Component,{itemCls:"x-color-palette",value:null,clickEvent:"click",ctype:"Ext.ColorPalette",allowReselect:false,colors:["000000","993300","333300","003300","003366","000080","333399","333333","800000","FF6600","808000","008000","008080","0000FF","666699","808080","FF0000","FF9900","99CC00","339966","33CCCC","3366FF","800080","969696","FF00FF","FFCC00","FFFF00","00FF00","00FFFF","00CCFF","993366","C0C0C0","FF99CC","FFCC99","FFFF99","CCFFCC","CCFFFF","99CCFF","CC99FF","FFFFFF"],onRender:function(e,g){var i=this.tpl||new Ext.XTemplate('<tpl for="."><a href="#" class="color-{.}" hidefocus="on"><em><span style="background:#{.}" unselectable="on">&#160;</span></em></a></tpl>');var h=document.createElement("div");h.id=this.getId();h.className=this.itemCls;i.overwrite(h,this.colors);e.dom.insertBefore(h,g);this.el=Ext.get(h);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 b=this.value;this.value=null;this.select(b)}},handleClick:function(c,e){c.preventDefault();if(!this.disabled){var g=e.className.match(/(?:^|\s)color-(.{6})(?:\s|$)/)[1];this.select(g.toUpperCase())}},select:function(d){d=d.replace("#","");if(d!=this.value||this.allowReselect){var c=this.el;if(this.value){c.child("a.color-"+this.value).removeClass("x-color-palette-sel")}c.child("a.color-"+d).addClass("x-color-palette-sel");this.value=d;this.fireEvent("select",this,d)}}});Ext.reg("colorpalette",Ext.ColorPalette);Ext.DatePicker=Ext.extend(Ext.BoxComponent,{todayText:"Today",okText:"&#160;OK&#160;",cancelText:"Cancel",todayTip:"{0} (Spacebar)",minText:"This date is before the minimum date",maxText:"This date is after the maximum date",format:"m/d/y",disabledDaysText:"Disabled",disabledDatesText:"Disabled",monthNames:Date.monthNames,dayNames:Date.dayNames,nextText:"Next Month (Control+Right)",prevText:"Previous Month (Control+Left)",monthYearText:"Choose a month (Control+Up/Down to move years)",startDay:0,showToday:true,initComponent:function(){Ext.DatePicker.superclass.initComponent.call(this);this.value=this.value?this.value.clearTime():new Date().clearTime();this.addEvents("select");if(this.handler){this.on("select",this.handler,this.scope||this)}this.initDisabledDays()},initDisabledDays:function(){if(!this.disabledDatesRE&&this.disabledDates){var d=this.disabledDates,e=d.length-1,g="(?:";Ext.each(d,function(a,b){g+=Ext.isDate(a)?"^"+Ext.escapeRe(a.dateFormat(this.format))+"$":d[b];if(b!=e){g+="|"}},this);this.disabledDatesRE=new RegExp(g+")")}},setDisabledDates:function(b){if(Ext.isArray(b)){this.disabledDates=b;this.disabledDatesRE=null}else{this.disabledDatesRE=b}this.initDisabledDays();this.update(this.value,true)},setDisabledDays:function(b){this.disabledDays=b;this.update(this.value,true)},setMinDate:function(b){this.minDate=b;this.update(this.value,true)},setMaxDate:function(b){this.maxDate=b;this.update(this.value,true)},setValue:function(c){var d=this.value;this.value=c.clearTime(true);if(this.el){this.update(this.value)}},getValue:function(){return this.value},focus:function(){if(this.el){this.update(this.activeDate)}},onEnable:function(b){Ext.DatePicker.superclass.onEnable.call(this);this.doDisabled(false);this.update(b?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(b){Ext.fly(b).repaint()})}},doDisabled:function(b){this.keyNav.setDisabled(b);this.prevRepeater.setDisabled(b);this.nextRepeater.setDisabled(b);if(this.showToday){this.todayKeyListener.setDisabled(b);this.todayBtn.setDisabled(b)}},onRender:function(p,d){var i=['<table cellspacing="0">','<tr><td class="x-date-left"><a href="#" title="',this.prevText,'">&#160;</a></td><td class="x-date-middle" align="center"></td><td class="x-date-right"><a href="#" title="',this.nextText,'">&#160;</a></td></tr>','<tr><td colspan="3"><table class="x-date-inner" cellspacing="0"><thead><tr>'],q=this.dayNames,n;for(n=0;n<7;n++){var l=this.startDay+n;if(l>6){l=l-7}i.push("<th><span>",q[l].substr(0,1),"</span></th>")}i[i.length]="</tr></thead><tbody><tr>";for(n=0;n<42;n++){if(n%7===0&&n!==0){i[i.length]="</tr><tr>"}i[i.length]='<td><a href="#" hidefocus="on" class="x-date-date" tabIndex="1"><em><span></span></em></a></td>'}i.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 m=document.createElement("div");m.className="x-date-picker";m.innerHTML=i.join("");p.dom.insertBefore(m,d);this.el=Ext.get(m);this.eventEl=Ext.get(m.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(a){if(a.ctrlKey){this.showPrevMonth()}else{this.update(this.activeDate.add("d",-1))}},right:function(a){if(a.ctrlKey){this.showNextMonth()}else{this.update(this.activeDate.add("d",1))}},up:function(a){if(a.ctrlKey){this.showNextYear()}else{this.update(this.activeDate.add("d",-7))}},down:function(a){if(a.ctrlKey){this.showPrevYear()}else{this.update(this.activeDate.add("d",7))}},pageUp:function(a){this.showNextMonth()},pageDown:function(a){this.showPrevMonth()},enter:function(a){a.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:"&#160;",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 o=(new Date()).dateFormat(this.format);this.todayBtn=new Ext.Button({renderTo:this.el.child("td.x-date-bottom",true),text:String.format(this.todayText,o),tooltip:String.format(this.todayTip,o),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 d=['<table border="0" cellspacing="0">'];for(var c=0;c<6;c++){d.push('<tr><td class="x-date-mp-month"><a href="#">',Date.getShortMonthName(c),"</a></td>",'<td class="x-date-mp-month x-date-mp-sep"><a href="#">',Date.getShortMonthName(c+6),"</a></td>",c===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>')}d.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(d.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(g,b,a){a+=1;if((a%2)===0){g.dom.xmonth=5+Math.round(a*0.5)}else{g.dom.xmonth=Math.round((a-1)*0.5)}})}},showMonthPicker:function(){if(!this.disabled){this.createMonthPicker();var b=this.el.getSize();this.monthPicker.setSize(b);this.monthPicker.child("table").setSize(b);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(i){this.mpyear=i;var k=this.mpYears.elements;for(var g=1;g<=10;g++){var j=k[g-1],h;if((g%2)===0){h=i+Math.round(g*0.5);j.firstChild.innerHTML=h;j.xyear=h}else{h=i-(5-Math.round(g*0.5));j.firstChild.innerHTML=h;j.xyear=h}this.mpYears.item(g-1)[h==this.mpSelYear?"addClass":"removeClass"]("x-date-mp-sel")}},updateMPMonth:function(b){this.mpMonths.each(function(a,g,e){a[a.dom.xmonth==b?"addClass":"removeClass"]("x-date-mp-sel")})},selectMPMonth:function(b){},onMonthClick:function(j,d){j.stopEvent();var k=new Ext.Element(d),e;if(k.is("button.x-date-mp-cancel")){this.hideMonthPicker()}else{if(k.is("button.x-date-mp-ok")){var i=new Date(this.mpSelYear,this.mpSelMonth,(this.activeDate||this.value).getDate());if(i.getMonth()!=this.mpSelMonth){i=new Date(this.mpSelYear,this.mpSelMonth,1).getLastDateOfMonth()}this.update(i);this.hideMonthPicker()}else{if((e=k.up("td.x-date-mp-month",2))){this.mpMonths.removeClass("x-date-mp-sel");e.addClass("x-date-mp-sel");this.mpSelMonth=e.dom.xmonth}else{if((e=k.up("td.x-date-mp-year",2))){this.mpYears.removeClass("x-date-mp-sel");e.addClass("x-date-mp-sel");this.mpSelYear=e.dom.xyear}else{if(k.is("a.x-date-mp-prev")){this.updateMPYear(this.mpyear-10)}else{if(k.is("a.x-date-mp-next")){this.updateMPYear(this.mpyear+10)}}}}}}},onMonthDblClick:function(h,e){h.stopEvent();var i=new Ext.Element(e),g;if((g=i.up("td.x-date-mp-month",2))){this.update(new Date(this.mpSelYear,g.dom.xmonth,(this.activeDate||this.value).getDate()));this.hideMonthPicker()}else{if((g=i.up("td.x-date-mp-year",2))){this.update(new Date(g.dom.xyear,this.mpSelMonth,(this.activeDate||this.value).getDate()));this.hideMonthPicker()}}},hideMonthPicker:function(b){if(this.monthPicker){if(b===true){this.monthPicker.hide()}else{this.monthPicker.slideOut("t",{duration:0.2})}}},showPrevMonth:function(b){this.update(this.activeDate.add("mo",-1))},showNextMonth:function(b){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(d){d.stopEvent();if(!this.disabled){var c=d.getWheelDelta();if(c>0){this.showPrevMonth()}else{if(c<0){this.showNextMonth()}}}},handleDateClick:function(c,d){c.stopEvent();if(!this.disabled&&d.dateValue&&!Ext.fly(d.parentNode).hasClass("x-date-disabled")){this.setValue(new Date(d.dateValue));this.fireEvent("select",this,this.value)}},selectToday:function(){if(this.todayBtn&&!this.todayBtn.disabled){this.setValue(new Date().clearTime());this.fireEvent("select",this,this.value)}},update:function(L,V){var ak=this.activeDate,Y=this.isVisible();this.activeDate=L;if(!V&&ak&&this.el){var Z=L.getTime();if(ak.getMonth()==L.getMonth()&&ak.getFullYear()==L.getFullYear()){this.cells.removeClass("x-date-selected");this.cells.each(function(a){if(a.dom.firstChild.dateValue==Z){a.addClass("x-date-selected");if(Y){Ext.fly(a.dom.firstChild).focus(50)}return false}});return}}var ad=L.getDaysInMonth();var W=L.getFirstDateOfMonth();var ag=W.getDay()-this.startDay;if(ag<=this.startDay){ag+=7}var T=L.add("mo",-1);var af=T.getDaysInMonth()-ag;var ah=this.cells.elements;var U=this.textNodes;ad+=ag;var d=86400000;var Q=(new Date(T.getFullYear(),T.getMonth(),af)).clearTime();var S=new Date().clearTime().getTime();var N=L.clearTime().getTime();var P=this.minDate?this.minDate.clearTime():Number.NEGATIVE_INFINITY;var t=this.maxDate?this.maxDate.clearTime():Number.POSITIVE_INFINITY;var M=this.disabledDatesRE;var R=this.disabledDatesText;var i=this.disabledDays?this.disabledDays.join(""):false;var O=this.disabledDaysText;var X=this.format;if(this.showToday){var ab=new Date().clearTime();var ai=(ab<P||ab>t||(M&&X&&M.test(ab.dateFormat(X)))||(i&&i.indexOf(ab.getDay())!=-1));if(!this.disabled){this.todayBtn.setDisabled(ai);this.todayKeyListener[ai?"disable":"enable"]()}}var ac=function(b,e){e.title="";var c=Q.getTime();e.firstChild.dateValue=c;if(c==S){e.className+=" x-date-today";e.title=b.todayText}if(c==N){e.className+=" x-date-selected";if(Y){Ext.fly(e.firstChild).focus(50)}}if(c<P){e.className=" x-date-disabled";e.title=b.minText;return}if(c>t){e.className=" x-date-disabled";e.title=b.maxText;return}if(i){if(i.indexOf(Q.getDay())!=-1){e.title=O;e.className=" x-date-disabled"}}if(M&&X){var a=Q.dateFormat(X);if(M.test(a)){e.title=R.replace("%0",a);e.className=" x-date-disabled"}}};var K=0;for(;K<ag;K++){U[K].innerHTML=(++af);Q.setDate(Q.getDate()+1);ah[K].className="x-date-prevday";ac(this,ah[K])}for(;K<ad;K++){var aj=K-ag+1;U[K].innerHTML=(aj);Q.setDate(Q.getDate()+1);ah[K].className="x-date-active";ac(this,ah[K])}var w=0;for(;K<42;K++){U[K].innerHTML=(++w);Q.setDate(Q.getDate()+1);ah[K].className="x-date-nextday";ac(this,ah[K])}this.mbtn.setText(this.monthNames[L.getMonth()]+" "+L.getFullYear());if(!this.internalRender){var ae=this.el.dom.firstChild;var aa=ae.offsetWidth;this.el.setWidth(aa+this.el.getBorderWidth("lr"));Ext.fly(ae).setWidth(aa);this.internalRender=true;if(Ext.isOpera&&!this.secondPass){ae.rows[0].cells[1].style.width=(aa-(ae.rows[0].cells[0].offsetWidth+ae.rows[0].cells[2].offsetWidth))+"px";this.secondPass=true;this.update.defer(10,this,[L])}}},beforeDestroy:function(){if(this.rendered){this.keyNav.disable();this.keyNav=null;Ext.destroy(this.leftClickRpt,this.rightClickRpt,this.monthPicker,this.eventEl,this.mbtn,this.todayBtn)}}});Ext.reg("datepicker",Ext.DatePicker);Ext.LoadMask=function(g,d){this.el=Ext.get(g);Ext.apply(this,d);if(this.store){this.store.on("beforeload",this.onBeforeLoad,this);this.store.on("load",this.onLoad,this);this.store.on("exception",this.onLoad,this);this.removeMask=Ext.value(this.removeMask,false)}else{var e=this.el.getUpdater();e.showLoadIndicator=false;e.on("beforeupdate",this.onBeforeLoad,this);e.on("update",this.onLoad,this);e.on("failure",this.onLoad,this);this.removeMask=Ext.value(this.removeMask,true)}};Ext.LoadMask.prototype={msg:"Loading...",msgCls:"x-mask-loading",disabled:false,disable:function(){this.disabled=true},enable:function(){this.disabled=false},onLoad:function(){this.el.unmask(this.removeMask)},onBeforeLoad:function(){if(!this.disabled){this.el.mask(this.msg,this.msgCls)}},show:function(){this.onBeforeLoad()},hide:function(){this.onLoad()},destroy:function(){if(this.store){this.store.un("beforeload",this.onBeforeLoad,this);this.store.un("load",this.onLoad,this);this.store.un("exception",this.onLoad,this)}else{var b=this.el.getUpdater();b.un("beforeupdate",this.onBeforeLoad,this);b.un("update",this.onLoad,this);b.un("failure",this.onLoad,this)}}};Ext.Slider=Ext.extend(Ext.BoxComponent,{vertical:false,minValue:0,maxValue:100,decimalPrecision:0,keyIncrement:1,increment:0,clickRange:[5,15],clickToChange:true,animate:true,dragging:false,initComponent:function(){if(!Ext.isDefined(this.value)){this.value=this.minValue}Ext.Slider.superclass.initComponent.call(this);this.keyIncrement=Math.max(this.increment,this.keyIncrement);this.addEvents("beforechange","change","changecomplete","dragstart","drag","dragend");if(this.vertical){Ext.apply(this,Ext.Slider.Vertical)}},onRender:function(){this.autoEl={cls:"x-slider "+(this.vertical?"x-slider-vert":"x-slider-horz"),cn:{cls:"x-slider-end",cn:{cls:"x-slider-inner",cn:[{cls:"x-slider-thumb"},{tag:"a",cls:"x-slider-focus",href:"#",tabIndex:"-1",hidefocus:"on"}]}}};Ext.Slider.superclass.onRender.apply(this,arguments);this.endEl=this.el.first();this.innerEl=this.endEl.first();this.thumb=this.innerEl.first();this.halfThumb=(this.vertical?this.thumb.getHeight():this.thumb.getWidth())/2;this.focusEl=this.thumb.next();this.initEvents()},initEvents:function(){this.thumb.addClassOnOver("x-slider-thumb-over");this.mon(this.el,{scope:this,mousedown:this.onMouseDown,keydown:this.onKeyDown});this.focusEl.swallowEvent("click",true);this.tracker=new Ext.dd.DragTracker({onBeforeStart:this.onBeforeDragStart.createDelegate(this),onStart:this.onDragStart.createDelegate(this),onDrag:this.onDrag.createDelegate(this),onEnd:this.onDragEnd.createDelegate(this),tolerance:3,autoStart:300});this.tracker.initEl(this.thumb);this.on("beforedestroy",this.tracker.destroy,this.tracker)},onMouseDown:function(c){if(this.disabled){return}if(this.clickToChange&&c.target!=this.thumb.dom){var d=this.innerEl.translatePoints(c.getXY());this.onClickChange(d)}this.focus()},onClickChange:function(b){if(b.top>this.clickRange[0]&&b.top<this.clickRange[1]){this.setValue(Ext.util.Format.round(this.reverseValue(b.left),this.decimalPrecision),undefined,true)}},onKeyDown:function(c){if(this.disabled){c.preventDefault();return}var d=c.getKey();switch(d){case c.UP:case c.RIGHT:c.stopEvent();if(c.ctrlKey){this.setValue(this.maxValue,undefined,true)}else{this.setValue(this.value+this.keyIncrement,undefined,true)}break;case c.DOWN:case c.LEFT:c.stopEvent();if(c.ctrlKey){this.setValue(this.minValue,undefined,true)}else{this.setValue(this.value-this.keyIncrement,undefined,true)}break;default:c.preventDefault()}},doSnap:function(e){if(!this.increment||this.increment==1||!e){return e}var h=e,i=this.increment;var g=e%i;if(g!=0){h-=g;if(g*2>i){h+=i}else{if(g*2<-i){h-=i}}}return h.constrain(this.minValue,this.maxValue)},afterRender:function(){Ext.Slider.superclass.afterRender.apply(this,arguments);if(this.value!==undefined){var b=this.normalizeValue(this.value);if(b!==this.value){delete this.value;this.setValue(b,false)}else{this.moveThumb(this.translateValue(b),false)}}},getRatio:function(){var d=this.innerEl.getWidth();var c=this.maxValue-this.minValue;return c==0?d:(d/c)},normalizeValue:function(b){b=this.doSnap(b);b=Ext.util.Format.round(b,this.decimalPrecision);b=b.constrain(this.minValue,this.maxValue);return b},setValue:function(d,e,g){d=this.normalizeValue(d);if(d!==this.value&&this.fireEvent("beforechange",this,d,this.value)!==false){this.value=d;this.moveThumb(this.translateValue(d),e!==false);this.fireEvent("change",this,d);if(g){this.fireEvent("changecomplete",this,d)}}},translateValue:function(d){var c=this.getRatio();return(d*c)-(this.minValue*c)-this.halfThumb},reverseValue:function(c){var d=this.getRatio();return(c+this.halfThumb+(this.minValue*d))/d},moveThumb:function(c,d){if(!d||this.animate===false){this.thumb.setLeft(c)}else{this.thumb.shift({left:c,stopFx:true,duration:0.35})}},focus:function(){this.focusEl.focus(10)},onBeforeDragStart:function(b){return !this.disabled},onDragStart:function(b){this.thumb.addClass("x-slider-thumb-drag");this.dragging=true;this.dragStartValue=this.value;this.fireEvent("dragstart",this,b)},onDrag:function(d){var c=this.innerEl.translatePoints(this.tracker.getXY());this.setValue(Ext.util.Format.round(this.reverseValue(c.left),this.decimalPrecision),false);this.fireEvent("drag",this,d)},onDragEnd:function(b){this.thumb.removeClass("x-slider-thumb-drag");this.dragging=false;this.fireEvent("dragend",this,b);if(this.dragStartValue!=this.value){this.fireEvent("changecomplete",this,this.value)}},onResize:function(d,c){this.innerEl.setWidth(d-(this.el.getPadding("l")+this.endEl.getPadding("r")));this.syncThumb()},onDisable:function(){Ext.Slider.superclass.onDisable.call(this);this.thumb.addClass(this.disabledClass);if(Ext.isIE){var b=this.thumb.getXY();this.thumb.hide();this.innerEl.addClass(this.disabledClass).dom.disabled=true;if(!this.thumbHolder){this.thumbHolder=this.endEl.createChild({cls:"x-slider-thumb "+this.disabledClass})}this.thumbHolder.show().setXY(b)}},onEnable:function(){Ext.Slider.superclass.onEnable.call(this);this.thumb.removeClass(this.disabledClass);if(Ext.isIE){this.innerEl.removeClass(this.disabledClass).dom.disabled=false;if(this.thumbHolder){this.thumbHolder.hide()}this.thumb.show();this.syncThumb()}},syncThumb:function(){if(this.rendered){this.moveThumb(this.translateValue(this.value))}},getValue:function(){return this.value}});Ext.reg("slider",Ext.Slider);Ext.Slider.Vertical={onResize:function(d,c){this.innerEl.setHeight(c-(this.el.getPadding("t")+this.endEl.getPadding("b")));this.syncThumb()},getRatio:function(){var c=this.innerEl.getHeight();var d=this.maxValue-this.minValue;return c/d},moveThumb:function(c,d){if(!d||this.animate===false){this.thumb.setBottom(c)}else{this.thumb.shift({bottom:c,stopFx:true,duration:0.35})}},onDrag:function(d){var g=this.innerEl.translatePoints(this.tracker.getXY());var e=this.innerEl.getHeight()-g.top;this.setValue(this.minValue+Ext.util.Format.round(e/this.getRatio(),this.decimalPrecision),false);this.fireEvent("drag",this,d)},onClickChange:function(c){if(c.left>this.clickRange[0]&&c.left<this.clickRange[1]){var d=this.innerEl.getHeight()-c.top;this.setValue(this.minValue+Ext.util.Format.round(d/this.getRatio(),this.decimalPrecision),undefined,true)}}};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(j,h){var k=new Ext.Template('<div class="{cls}-wrap">','<div class="{cls}-inner">','<div class="{cls}-bar">','<div class="{cls}-text">',"<div>&#160;</div>","</div>","</div>",'<div class="{cls}-text {cls}-text-back">',"<div>&#160;</div>","</div>","</div>","</div>");this.el=h?k.insertBefore(h,{cls:this.baseCls},true):k.append(j,{cls:this.baseCls},true);if(this.id){this.el.dom.id=this.id}var g=this.el.dom.firstChild;this.progressBar=Ext.get(g.firstChild);if(this.textEl){this.textEl=Ext.get(this.textEl);delete this.textTopEl}else{this.textTopEl=Ext.get(this.progressBar.dom.firstChild);var i=Ext.get(g.childNodes[1]);this.textTopEl.setStyle("z-index",99).addClass("x-hidden");this.textEl=new Ext.CompositeElement([this.textTopEl.dom.firstChild,i.dom.firstChild]);this.textEl.setWidth(g.offsetWidth)}this.progressBar.setHeight(g.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(i,h,e){this.value=i||0;if(h){this.updateText(h)}if(this.rendered){var g=Math.floor(i*this.el.dom.firstChild.offsetWidth);this.progressBar.setWidth(g,e===true||(e!==false&&this.animate));if(this.textTopEl){this.textTopEl.removeClass("x-hidden").setWidth(g)}}this.fireEvent("update",this,i,h);return this},wait:function(c){if(!this.waitTimer){var d=this;c=c||{};this.updateText(c.text);this.waitTimer=Ext.TaskMgr.start({run:function(b){var a=c.increment||10;this.updateProgress(((((b+a)%a)+1)*(100/a))*0.01,null,c.animate)},interval:c.interval||1000,duration:c.duration,onStop:function(){if(c.fn){c.fn.apply(c.scope||this)}this.reset()},scope:d})}return this},isWaiting:function(){return this.waitTimer!==null},updateText:function(b){this.text=b||"&#160;";if(this.rendered){this.textEl.update(this.text)}return this},syncProgressBar:function(){if(this.value){this.updateProgress(this.value,this.text)}return this},setSize:function(e,g){Ext.ProgressBar.superclass.setSize.call(this,e,g);if(this.textTopEl){var d=this.el.dom.firstChild;this.textEl.setSize(d.offsetWidth,d.offsetHeight)}this.syncProgressBar();return this},reset:function(b){this.updateProgress(0);if(this.textTopEl){this.textTopEl.addClass("x-hidden")}if(this.waitTimer){this.waitTimer.onStop=null;Ext.TaskMgr.stop(this.waitTimer);this.waitTimer=null}if(b===true){this.hide()}return this}});Ext.reg("progress",Ext.ProgressBar);(function(){var d=Ext.EventManager;var c=Ext.lib.Dom;Ext.dd.DragDrop=function(a,g,b){if(a){this.init(a,g,b)}};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(b,a){},startDrag:function(b,a){},b4Drag:function(a){},onDrag:function(a){},onDragEnter:function(b,a){},b4DragOver:function(a){},onDragOver:function(b,a){},b4DragOut:function(a){},onDragOut:function(b,a){},b4DragDrop:function(a){},onDragDrop:function(b,a){},onInvalidDrop:function(a){},b4EndDrag:function(a){},endDrag:function(a){},b4MouseDown:function(a){},onMouseDown:function(a){},onMouseUp:function(a){},onAvailable:function(){},defaultPadding:{left:0,right:0,top:0,bottom:0},constrainTo:function(s,u,a){if(typeof u=="number"){u={left:u,right:u,top:u,bottom:u}}u=u||this.defaultPadding;var q=Ext.get(this.getEl()).getBox();var x=Ext.get(s);var b=x.getScroll();var r,w=x.dom;if(w==document.body){r={x:b.left,y:b.top,width:Ext.lib.Dom.getViewWidth(),height:Ext.lib.Dom.getViewHeight()}}else{var p=x.getXY();r={x:p[0]+b.left,y:p[1]+b.top,width:w.clientWidth,height:w.clientHeight}}var t=q.y-r.y;var v=q.x-r.x;this.resetConstraints();this.setXConstraint(v-(u.left||0),r.width-v-q.width-(u.right||0),this.xTickSize);this.setYConstraint(t-(u.top||0),r.height-t-q.height-(u.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(a,g,b){this.initTarget(a,g,b);d.on(this.id,"mousedown",this.handleMouseDown,this)},initTarget:function(a,g,b){this.config=b||{};this.DDM=Ext.dd.DDM;this.groups={};if(typeof a!=="string"){a=Ext.id(a)}this.id=a;this.addToGroup((g)?g:"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=(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(b,i,a,h){if(!i&&0!==i){this.padding=[b,b,b,b]}else{if(!a&&0!==a){this.padding=[b,i,b,i]}else{this.padding=[b,i,a,h]}}},setInitPosition:function(j,k){var b=this.getEl();if(!this.DDM.verifyEl(b)){return}var l=j||0;var m=k||0;var a=c.getXY(b);this.initPageX=a[0]-l;this.initPageY=a[1]-m;this.lastPageX=a[0];this.lastPageY=a[1];this.setStartPosition(a)},setStartPosition:function(a){var b=a||c.getXY(this.getEl());this.deltaSetXY=null;this.startPageX=b[0];this.startPageY=b[1]},addToGroup:function(a){this.groups[a]=true;this.DDM.regDragDrop(this,a)},removeFromGroup:function(a){if(this.groups[a]){delete this.groups[a]}this.DDM.removeDDFromGroup(this,a)},setDragElId:function(a){this.dragElId=a},setHandleElId:function(a){if(typeof a!=="string"){a=Ext.id(a)}this.handleElId=a;this.DDM.regHandle(this.id,a)},setOuterHandleElId:function(a){if(typeof a!=="string"){a=Ext.id(a)}d.on(a,"mousedown",this.handleMouseDown,this);this.setHandleElId(a);this.hasOuterHandles=true},unreg:function(){d.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,b){if(this.primaryButtonOnly&&a.button!=0){return}if(this.isLocked()){return}this.DDM.refreshCache(this.groups);var e=new Ext.lib.Point(Ext.lib.Event.getPageX(a),Ext.lib.Event.getPageY(a));if(!this.hasOuterHandles&&!this.DDM.isOverTarget(e,this)){}else{if(this.clickValidator(a)){this.setStartPosition();this.b4MouseDown(a);this.onMouseDown(a);this.DDM.handleMouseDown(a,this);this.DDM.stopEvent(a)}else{}}},clickValidator:function(a){var b=a.getTarget();return(this.isValidHandleChild(b)&&(this.id==this.handleElId||this.DDM.handleWasClicked(b,this.id)))},addInvalidHandleType:function(b){var a=b.toUpperCase();this.invalidHandleTypes[a]=a},addInvalidHandleId:function(a){if(typeof a!=="string"){a=Ext.id(a)}this.invalidHandleIds[a]=a},addInvalidHandleClass:function(a){this.invalidHandleClasses.push(a)},removeInvalidHandleType:function(b){var a=b.toUpperCase();delete this.invalidHandleTypes[a]},removeInvalidHandleId:function(a){if(typeof a!=="string"){a=Ext.id(a)}delete this.invalidHandleIds[a]},removeInvalidHandleClass:function(b){for(var a=0,g=this.invalidHandleClasses.length;a<g;++a){if(this.invalidHandleClasses[a]==b){delete this.invalidHandleClasses[a]}}},isValidHandleChild:function(e){var i=true;var a;try{a=e.nodeName.toUpperCase()}catch(b){a=e.nodeName}i=i&&!this.invalidHandleTypes[a];i=i&&!this.invalidHandleIds[e.id];for(var l=0,m=this.invalidHandleClasses.length;i&&l<m;++l){i=!Ext.fly(e).hasClass(this.invalidHandleClasses[l])}return i},setXTicks:function(a,i){this.xTicks=[];this.xTickSize=i;var b={};for(var h=this.initPageX;h>=this.minX;h=h-i){if(!b[h]){this.xTicks[this.xTicks.length]=h;b[h]=true}}for(h=this.initPageX;h<=this.maxX;h=h+i){if(!b[h]){this.xTicks[this.xTicks.length]=h;b[h]=true}}this.xTicks.sort(this.DDM.numericSort)},setYTicks:function(a,i){this.yTicks=[];this.yTickSize=i;var b={};for(var h=this.initPageY;h>=this.minY;h=h-i){if(!b[h]){this.yTicks[this.yTicks.length]=h;b[h]=true}}for(h=this.initPageY;h<=this.maxY;h=h+i){if(!b[h]){this.yTicks[this.yTicks.length]=h;b[h]=true}}this.yTicks.sort(this.DDM.numericSort)},setXConstraint:function(a,b,g){this.leftConstraint=a;this.rightConstraint=b;this.minX=this.initPageX-a;this.maxX=this.initPageX+b;if(g){this.setXTicks(this.initPageX,g)}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(g,a,b){this.topConstraint=g;this.bottomConstraint=a;this.minY=this.initPageY-g;this.maxY=this.initPageY+a;if(b){this.setYTicks(this.initPageY,b)}this.constrainY=true},resetConstraints:function(){if(this.initPageX||this.initPageX===0){var a=(this.maintainOffset)?this.lastPageX-this.initPageX:0;var b=(this.maintainOffset)?this.lastPageY-this.initPageY:0;this.setInitPosition(a,b)}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(a,l){if(!l){return a}else{if(l[0]>=a){return l[0]}else{for(var n=0,o=l.length;n<o;++n){var m=n+1;if(l[m]&&l[m]>=a){var b=a-l[n];var i=l[m]-a;return(i>b)?l[n]:l[m]}}return l[l.length-1]}}},toString:function(){return("DragDrop "+this.id)}}})();if(!Ext.dd.DragDropMgr){Ext.dd.DragDropMgr=function(){var b=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(j,k){for(var i in this.ids){for(var a in this.ids[i]){var h=this.ids[i][a];if(!this.isTypeOfDD(h)){continue}h[j].apply(h,k)}}},_onLoad:function(){this.init();b.on(document,"mouseup",this.handleMouseUp,this,true);b.on(document,"mousemove",this.handleMouseMove,this,true);b.on(window,"unload",this._onUnload,this,true);b.on(window,"resize",this._onResize,this,true)},_onResize:function(a){this._execOnAll("resetConstraints",[])},lock:function(){this.locked=true},unlock:function(){this.locked=false},isLocked:function(){return this.locked},locationCache:{},useCache:true,clickPixelThresh:3,clickTimeThresh:350,dragThreshMet:false,clickTimeout:null,startX:0,startY:0,regDragDrop:function(d,a){if(!this.initialized){this.init()}if(!this.ids[a]){this.ids[a]={}}this.ids[a][d.id]=d},removeDDFromGroup:function(e,a){if(!this.ids[a]){this.ids[a]={}}var g=this.ids[a];if(g&&g[e.id]){delete g[e.id]}},_remove:function(d){for(var a in d.groups){if(a&&this.ids[a]&&this.ids[a][d.id]){delete this.ids[a][d.id]}}delete this.handleIds[d.id]},regHandle:function(d,a){if(!this.handleIds[d]){this.handleIds[d]={}}this.handleIds[d][a]=a},isDragDrop:function(a){return(this.getDDById(a))?true:false},getRelated:function(i,m){var j=[];for(var k in i.groups){for(var l in this.ids[k]){var a=this.ids[k][l];if(!this.isTypeOfDD(a)){continue}if(!m||a.isTarget){j[j.length]=a}}}return j},isLegalTarget:function(h,i){var k=this.getRelated(h,true);for(var j=0,a=k.length;j<a;++j){if(k[j].id==i.id){return true}}return false},isTypeOfDD:function(a){return(a&&a.__ygDragDrop)},isHandle:function(d,a){return(this.handleIds[d]&&this.handleIds[d][a])},getDDById:function(d){for(var a in this.ids){if(this.ids[a][d]){return this.ids[a][d]}}return null},handleMouseDown:function(e,g){if(Ext.QuickTips){Ext.QuickTips.disable()}if(this.dragCurrent){this.handleMouseUp(e)}this.currentTarget=e.getTarget();this.dragCurrent=g;var a=g.getEl();this.startX=e.getPageX();this.startY=e.getPageY();this.deltaX=this.startX-a.offsetLeft;this.deltaY=this.startY-a.offsetTop;this.dragThreshMet=false;this.clickTimeout=setTimeout(function(){var c=Ext.dd.DDM;c.startDrag(c.startX,c.startY)},this.clickTimeThresh)},startDrag:function(a,d){clearTimeout(this.clickTimeout);if(this.dragCurrent){this.dragCurrent.b4StartDrag(a,d);this.dragCurrent.startDrag(a,d)}this.dragThreshMet=true},handleMouseUp:function(a){if(Ext.QuickTips){Ext.QuickTips.enable()}if(!this.dragCurrent){return}clearTimeout(this.clickTimeout);if(this.dragThreshMet){this.fireEvents(a,true)}else{}this.stopDrag(a);this.stopEvent(a)},stopEvent:function(a){if(this.stopPropagation){a.stopPropagation()}if(this.preventDefault){a.preventDefault()}},stopDrag:function(a){if(this.dragCurrent){if(this.dragThreshMet){this.dragCurrent.b4EndDrag(a);this.dragCurrent.endDrag(a)}this.dragCurrent.onMouseUp(a)}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 g=Math.abs(this.startX-e.getPageX());var a=Math.abs(this.startY-e.getPageY());if(g>this.clickPixelThresh||a>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(t,s){var e=this.dragCurrent;if(!e||e.isLocked()){return}var a=t.getPoint();var C=[];var z=[];var v=[];var x=[];var A=[];for(var y in this.dragOvers){var B=this.dragOvers[y];if(!this.isTypeOfDD(B)){continue}if(!this.isOverTarget(a,B,this.mode)){z.push(B)}C[y]=true;delete this.dragOvers[y]}for(var i in e.groups){if("string"!=typeof i){continue}for(y in this.ids[i]){var w=this.ids[i][y];if(!this.isTypeOfDD(w)){continue}if(w.isTarget&&!w.isLocked()&&((w!=e)||(e.ignoreSelf===false))){if(this.isOverTarget(a,w,this.mode)){if(s){x.push(w)}else{if(!C[w.id]){A.push(w)}else{v.push(w)}this.dragOvers[w.id]=w}}}}}if(this.mode){if(z.length){e.b4DragOut(t,z);e.onDragOut(t,z)}if(A.length){e.onDragEnter(t,A)}if(v.length){e.b4DragOver(t,v);e.onDragOver(t,v)}if(x.length){e.b4DragDrop(t,x);e.onDragDrop(t,x)}}else{var u=0;for(y=0,u=z.length;y<u;++y){e.b4DragOut(t,z[y].id);e.onDragOut(t,z[y].id)}for(y=0,u=A.length;y<u;++y){e.onDragEnter(t,A[y].id)}for(y=0,u=v.length;y<u;++y){e.b4DragOver(t,v[y].id);e.onDragOver(t,v[y].id)}for(y=0,u=x.length;y<u;++y){e.b4DragDrop(t,x[y].id);e.onDragDrop(t,x[y].id)}}if(s&&!x.length){e.onInvalidDrop(t)}},getBestMatch:function(j){var h=null;var k=j.length;if(k==1){h=j[0]}else{for(var i=0;i<k;++i){var a=j[i];if(a.cursorIsOver){h=a;break}else{if(!h||h.overlap.getArea()<a.overlap.getArea()){h=a}}}}return h},refreshCache:function(k){for(var a in k){if("string"!=typeof a){continue}for(var j in this.ids[a]){var i=this.ids[a][j];if(this.isTypeOfDD(i)){var h=this.getLocation(i);if(h){this.locationCache[i.id]=h}else{delete this.locationCache[i.id]}}}}},verifyEl:function(g){if(g){var a;if(Ext.isIE){try{a=g.offsetParent}catch(e){}}else{a=g.offsetParent}if(a){return true}}return false},getLocation:function(u){if(!this.isTypeOfDD(u)){return null}var w=u.getEl(),r,x,y,e,l,a,z,s,v;try{r=Ext.lib.Dom.getXY(w)}catch(t){}if(!r){return null}x=r[0];y=x+w.offsetWidth;e=r[1];l=e+w.offsetHeight;a=e-u.padding[0];z=y+u.padding[1];s=l+u.padding[2];v=x-u.padding[3];return new Ext.lib.Region(a,z,s,v)},isOverTarget:function(a,s,q){var o=this.locationCache[s.id];if(!o||!this.useCache){o=this.getLocation(s);this.locationCache[s.id]=o}if(!o){return false}s.cursorIsOver=o.contains(a);var l=this.dragCurrent;if(!l||!l.getTargetCoord||(!q&&!l.constrainX&&!l.constrainY)){return s.cursorIsOver}s.overlap=null;var n=l.getTargetCoord(a.x,a.y);var r=l.getDragEl();var p=new Ext.lib.Region(n.y,n.x+r.offsetWidth,n.y+r.offsetHeight,n.x);var m=p.intersect(o);if(m){s.overlap=m;return(q)?true:s.cursorIsOver}else{return false}},_onUnload:function(d,a){Ext.dd.DragDropMgr.unregAll()},unregAll:function(){if(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(d){var a=this.elementCache[d];if(!a||!a.el){a=this.elementCache[d]=new this.ElementWrapper(Ext.getDom(d))}return a},getElement:function(a){return Ext.getDom(a)},getCss:function(d){var a=Ext.getDom(d);return(a)?a.style:null},ElementWrapper:function(a){this.el=a||null;this.id=this.el&&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(h,a){if(h.swapNode){h.swapNode(a)}else{var g=a.parentNode;var i=a.nextSibling;if(i==h){g.insertBefore(h,a)}else{if(a==h.nextSibling){g.insertBefore(a,h)}else{h.parentNode.replaceChild(a,h);g.insertBefore(h,i)}}}},getScroll:function(){var h,a,g=document.documentElement,i=document.body;if(g&&(g.scrollTop||g.scrollLeft)){h=g.scrollTop;a=g.scrollLeft}else{if(i){h=i.scrollTop;a=i.scrollLeft}else{}}return{top:h,left:a}},getStyle:function(d,a){return Ext.fly(d).getStyle(a)},getScrollTop:function(){return this.getScroll().top},getScrollLeft:function(){return this.getScroll().left},moveToEl:function(a,e){var g=Ext.lib.Dom.getXY(e);Ext.lib.Dom.setXY(a,g)},numericSort:function(a,e){return(a-e)},_timeoutCount:0,_addListeners:function(){var a=Ext.dd.DDM;if(Ext.lib.Event&&document){a._onLoad()}else{if(a._timeoutCount>2000){}else{setTimeout(a._addListeners,10);if(document&&document.body){a._timeoutCount+=1}}}},handleWasClicked:function(a,e){if(this.isHandle(e,a.id)){return true}else{var g=a.parentNode;while(g){if(this.isHandle(e,g.id)){return true}else{g=g.parentNode}}}return false}}}();Ext.dd.DDM=Ext.dd.DragDropMgr;Ext.dd.DDM._addListeners()}Ext.dd.DD=function(g,e,d){if(g){this.init(g,e,d)}};Ext.extend(Ext.dd.DD,Ext.dd.DragDrop,{scroll:true,autoOffset:function(i,e){var g=i-this.startPageX;var h=e-this.startPageY;this.setDelta(g,h)},setDelta:function(c,d){this.deltaX=c;this.deltaY=d},setDragElPos:function(g,d){var e=this.getDragEl();this.alignElWithMouse(e,g,d)},alignElWithMouse:function(q,m,n){var o=this.getTargetCoord(m,n);var j=q.dom?q:Ext.fly(q,"_dd");if(!this.deltaSetXY){var l=[o.x,o.y];j.setXY(l);var p=j.getLeft(true);var k=j.getTop(true);this.deltaSetXY=[p-o.x,k-o.y]}else{j.setLeftTop(o.x+this.deltaSetXY[0],o.y+this.deltaSetXY[1])}this.cachePosition(o.x,o.y);this.autoScroll(o.x,o.y,q.offsetHeight,q.offsetWidth);return o},cachePosition:function(d,e){if(d){this.lastPageX=d;this.lastPageY=e}else{var g=Ext.lib.Dom.getXY(this.getEl());this.lastPageX=g[0];this.lastPageY=g[1]}},autoScroll:function(t,u,y,s){if(this.scroll){var r=Ext.lib.Dom.getViewHeight();var B=Ext.lib.Dom.getViewWidth();var h=this.DDM.getScrollTop();var z=this.DDM.getScrollLeft();var v=y+u;var q=s+t;var w=(r+h-u-this.deltaY);var x=(B+z-t-this.deltaX);var A=40;var C=(document.all)?80:30;if(v>r&&w<A){window.scrollTo(z,h+C)}if(u<h&&h>0&&u-h<A){window.scrollTo(z,h-C)}if(q>B&&x<A){window.scrollTo(z+C,h)}if(t<z&&z>0&&t-z<A){window.scrollTo(z-C,h)}}},getTargetCoord:function(i,e){var g=i-this.deltaX;var h=e-this.deltaY;if(this.constrainX){if(g<this.minX){g=this.minX}if(g>this.maxX){g=this.maxX}}if(this.constrainY){if(h<this.minY){h=this.minY}if(h>this.maxY){h=this.maxY}}g=this.getTick(g,this.xTicks);h=this.getTick(h,this.yTicks);return{x:g,y:h}},applyConfig:function(){Ext.dd.DD.superclass.applyConfig.call(this);this.scroll=(this.config.scroll!==false)},b4MouseDown:function(b){this.autoOffset(b.getPageX(),b.getPageY())},b4Drag:function(b){this.setDragElPos(b.getPageX(),b.getPageY())},toString:function(){return("DD "+this.id)}});Ext.dd.DDProxy=function(g,e,d){if(g){this.init(g,e,d);this.initFrame()}};Ext.dd.DDProxy.dragElId="ygddfdiv";Ext.extend(Ext.dd.DDProxy,Ext.dd.DD,{resizeFrame:true,centerFrame:false,createFrame:function(){var e=this;var g=document.body;if(!g||!g.firstChild){setTimeout(function(){e.createFrame()},50);return}var h=this.getDragEl();if(!h){h=document.createElement("div");h.id=this.dragElId;var i=h.style;i.position="absolute";i.visibility="hidden";i.cursor="move";i.border="2px solid #aaa";i.zIndex=999;g.insertBefore(h,g.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(i,j){var k=this.getEl();var h=this.getDragEl();var g=h.style;this._resizeProxy();if(this.centerFrame){this.setDelta(Math.round(parseInt(g.width,10)/2),Math.round(parseInt(g.height,10)/2))}this.setDragElPos(i,j);Ext.fly(h).show()},_resizeProxy:function(){if(this.resizeFrame){var b=this.getEl();Ext.fly(this.getDragEl()).setSize(b.offsetWidth,b.offsetHeight)}},b4MouseDown:function(d){var e=d.getPageX();var g=d.getPageY();this.autoOffset(e,g);this.setDragElPos(e,g)},b4StartDrag:function(d,c){this.showFrame(d,c)},b4EndDrag:function(b){Ext.fly(this.getDragEl()).hide()},endDrag:function(g){var d=this.getEl();var e=this.getDragEl();e.style.visibility="";this.beforeMove();d.style.visibility="hidden";Ext.dd.DDM.moveToEl(d,e);e.style.visibility="hidden";d.style.visibility="";this.afterDrag()},beforeMove:function(){},afterDrag:function(){},toString:function(){return("DDProxy "+this.id)}});Ext.dd.DDTarget=function(g,e,d){if(g){this.initTarget(g,e,d)}};Ext.extend(Ext.dd.DDTarget,Ext.dd.DragDrop,{toString:function(){return("DDTarget "+this.id)}});Ext.dd.DragTracker=function(b){Ext.apply(this,b);this.addEvents("mousedown","mouseup","mousemove","dragstart","dragend","drag");this.dragRegion=new Ext.lib.Region(0,0,0,0);if(this.el){this.initEl(this.el)}};Ext.extend(Ext.dd.DragTracker,Ext.util.Observable,{active:false,tolerance:5,autoStart:false,initEl:function(b){this.el=Ext.get(b);b.on("mousedown",this.onMouseDown,this,this.delegate?{delegate:this.delegate}:undefined)},destroy:function(){this.el.un("mousedown",this.onMouseDown,this)},onMouseDown:function(g,d){if(this.fireEvent("mousedown",this,g)!==false&&this.onBeforeStart(g)!==false){this.startXY=this.lastXY=g.getXY();this.dragTarget=this.delegate?d:this.el.dom;if(this.preventDefault!==false){g.preventDefault()}var e=Ext.getDoc();e.on("mouseup",this.onMouseUp,this);e.on("mousemove",this.onMouseMove,this);e.on("selectstart",this.stopSelect,this);if(this.autoStart){this.timer=this.triggerStart.defer(this.autoStart===true?1000:this.autoStart,this)}}},onMouseMove:function(h,i){if(this.active&&Ext.isIE&&!h.browserEvent.button){h.preventDefault();this.onMouseUp(h);return}h.preventDefault();var e=h.getXY(),g=this.startXY;this.lastXY=e;if(!this.active){if(Math.abs(g[0]-e[0])>this.tolerance||Math.abs(g[1]-e[1])>this.tolerance){this.triggerStart()}else{return}}this.fireEvent("mousemove",this,h);this.onDrag(h);this.fireEvent("drag",this,h)},onMouseUp:function(g){var d=Ext.getDoc();d.un("mousemove",this.onMouseMove,this);d.un("mouseup",this.onMouseUp,this);d.un("selectstart",this.stopSelect,this);g.preventDefault();this.clearStart();var e=this.active;this.active=false;delete this.elRegion;this.fireEvent("mouseup",this,g);if(e){this.onEnd(g);this.fireEvent("dragend",this,g)}},triggerStart:function(b){this.clearStart();this.active=true;this.onStart(this.startXY);this.fireEvent("dragstart",this,this.startXY)},clearStart:function(){if(this.timer){clearTimeout(this.timer);delete this.timer}},stopSelect:function(b){b.stopEvent();return false},onBeforeStart:function(b){},onStart:function(b){},onDrag:function(b){},onEnd:function(b){},getDragTarget:function(){return this.dragTarget},getDragCt:function(){return this.el},getXY:function(b){return b?this.constrainModes[b].call(this,this.lastXY):this.lastXY},getOffset:function(g){var d=this.getXY(g);var e=this.startXY;return[e[0]-d[0],e[1]-d[1]]},constrainModes:{point:function(c){if(!this.elRegion){this.elRegion=this.getDragCt().getRegion()}var d=this.dragRegion;d.left=c[0];d.top=c[1];d.right=c[0];d.bottom=c[1];d.constrainTo(this.elRegion);return[d.left,d.top]}}});Ext.dd.ScrollManager=function(){var s=Ext.dd.DragDropMgr;var q={};var t=null;var n={};var o=function(a){t=null;u()};var m=function(){if(s.dragCurrent){s.refreshCache(s.dragCurrent.groups)}};var r=function(){if(s.dragCurrent){var b=Ext.dd.ScrollManager;var a=n.el.ddScrollConfig?n.el.ddScrollConfig.increment:b.increment;if(!b.animate){if(n.el.scroll(n.dir,a)){m()}}else{n.el.scroll(n.dir,a,true,b.animDuration,m)}}};var u=function(){if(n.id){clearInterval(n.id)}n.id=0;n.el=null;n.dir=""};var p=function(a,b){u();n.el=a;n.dir=b;var c=(a.ddScrollConfig&&a.ddScrollConfig.frequency)?a.ddScrollConfig.frequency:Ext.dd.ScrollManager.frequency;n.id=setInterval(r,c)};var l=function(c,a){if(a||!s.dragCurrent){return}var j=Ext.dd.ScrollManager;if(!t||t!=s.dragCurrent){t=s.dragCurrent;j.refreshCache()}var i=Ext.lib.Event.getXY(c);var h=new Ext.lib.Point(i[0],i[1]);for(var e in q){var d=q[e],g=d._region;var b=d.ddScrollConfig?d.ddScrollConfig:j;if(g&&g.contains(h)&&d.isScrollable()){if(g.bottom-h.y<=b.vthresh){if(n.el!=d){p(d,"down")}return}else{if(g.right-h.x<=b.hthresh){if(n.el!=d){p(d,"left")}return}else{if(h.y-g.top<=b.vthresh){if(n.el!=d){p(d,"up")}return}else{if(h.x-g.left<=b.hthresh){if(n.el!=d){p(d,"right")}return}}}}}}u()};s.fireEvents=s.fireEvents.createSequence(l,s);s.stopDrag=s.stopDrag.createSequence(o,s);return{register:function(c){if(Ext.isArray(c)){for(var a=0,b=c.length;a<b;a++){this.register(c[a])}}else{c=Ext.get(c);q[c.id]=c}},unregister:function(c){if(Ext.isArray(c)){for(var a=0,b=c.length;a<b;a++){this.unregister(c[a])}}else{c=Ext.get(c);delete q[c.id]}},vthresh:25,hthresh:25,increment:100,frequency:500,animate:true,animDuration:0.4,refreshCache:function(){for(var a in q){if(typeof q[a]=="object"){q[a]._region=q[a].getRegion()}}}}}();Ext.dd.Registry=function(){var h={};var e={};var g=0;var i=function(b,c){if(typeof b=="string"){return b}var a=b.id;if(!a&&c!==false){a="extdd-"+(++g);b.id=a}return a};return{register:function(b,a){a=a||{};if(typeof b=="string"){b=document.getElementById(b)}a.ddel=b;h[i(b)]=a;if(a.isHandle!==false){e[a.ddel.id]=a}if(a.handles){var c=a.handles;for(var d=0,l=c.length;d<l;d++){e[i(c[d])]=a}}},unregister:function(c){var a=i(c,false);var b=h[a];if(b){delete h[a];if(b.handles){var d=b.handles;for(var m=0,n=d.length;m<n;m++){delete e[i(d[m],false)]}}}},getHandle:function(a){if(typeof a!="string"){a=a.id}return e[a]},getHandleFromEvent:function(a){var b=Ext.lib.Event.getTarget(a);return b?e[b.id]:null},getTarget:function(a){if(typeof a!="string"){a=a.id}return h[a]},getTargetFromEvent:function(a){var b=Ext.lib.Event.getTarget(a);return b?h[b.id]||e[b.id]:null}}}();Ext.dd.StatusProxy=function(b){Ext.apply(this,b);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:!b||b.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(b){b=b||this.dropNotAllowed;if(this.dropStatus!=b){this.el.replaceClass(this.dropStatus,b);this.dropStatus=b}},reset:function(b){this.el.dom.className="x-dd-drag-proxy "+this.dropNotAllowed;this.dropStatus=this.dropNotAllowed;if(b){this.ghost.update("")}},update:function(d){if(typeof d=="string"){this.ghost.update(d)}else{this.ghost.update("");d.style.margin="0";this.ghost.dom.appendChild(d)}var c=this.ghost.dom.firstChild;if(c){Ext.fly(c).setStyle("float","none")}},getEl:function(){return this.el},getGhost:function(){return this.ghost},hide:function(b){this.el.hide();if(b){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(d,g,e){this.callback=g;this.scope=e;if(d&&this.animRepair!==false){this.el.addClass("x-dd-drag-repair");this.el.hideUnders(true);this.anim=this.el.shift({duration:this.repairDuration||0.5,easing:"easeOut",xy:d,stopFx:true,callback:this.afterRepair,scope:this})}else{this.afterRepair()}},afterRepair:function(){this.hide(true);if(typeof this.callback=="function"){this.callback.call(this.scope||this)}this.callback=null;this.scope=null}};Ext.dd.DragSource=function(c,d){this.el=Ext.get(c);if(!this.dragData){this.dragData={}}Ext.apply(this,d);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(b){return this.dragData},onDragEnter:function(i,h){var e=Ext.dd.DragDropMgr.getDDById(h);this.cachedTarget=e;if(this.beforeDragEnter(e,i,h)!==false){if(e.isNotifyTarget){var g=e.notifyEnter(this,i,this.dragData);this.proxy.setStatus(g)}else{this.proxy.setStatus(this.dropAllowed)}if(this.afterDragEnter){this.afterDragEnter(e,i,h)}}},beforeDragEnter:function(d,e,g){return true},alignElWithMouse:function(){Ext.dd.DragSource.superclass.alignElWithMouse.apply(this,arguments);this.proxy.sync()},onDragOver:function(i,h){var e=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(h);if(this.beforeDragOver(e,i,h)!==false){if(e.isNotifyTarget){var g=e.notifyOver(this,i,this.dragData);this.proxy.setStatus(g)}if(this.afterDragOver){this.afterDragOver(e,i,h)}}},beforeDragOver:function(d,e,g){return true},onDragOut:function(d,g){var e=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(g);if(this.beforeDragOut(e,d,g)!==false){if(e.isNotifyTarget){e.notifyOut(this,d,this.dragData)}this.proxy.reset();if(this.afterDragOut){this.afterDragOut(e,d,g)}}this.cachedTarget=null},beforeDragOut:function(d,e,g){return true},onDragDrop:function(d,g){var e=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(g);if(this.beforeDragDrop(e,d,g)!==false){if(e.isNotifyTarget){if(e.notifyDrop(this,d,this.dragData)){this.onValidDrop(e,d,g)}else{this.onInvalidDrop(e,d,g)}}else{this.onValidDrop(e,d,g)}if(this.afterDragDrop){this.afterDragDrop(e,d,g)}}delete this.cachedTarget},beforeDragDrop:function(d,e,g){return true},onValidDrop:function(d,e,g){this.hideProxy();if(this.afterValidDrop){this.afterValidDrop(d,e,g)}},getRepairXY:function(c,d){return this.el.getXY()},onInvalidDrop:function(d,e,g){this.beforeInvalidDrop(d,e,g);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,g)}},afterRepair:function(){if(Ext.enableFx){this.el.highlight(this.hlColor||"c3daf9")}this.dragging=false},beforeInvalidDrop:function(d,e,g){return true},handleMouseDown:function(c){if(this.dragging){return}var d=this.getDragData(c);if(d&&this.onBeforeDrag(d,c)!==false){this.dragData=d;this.proxy.stop();Ext.dd.DragSource.superclass.handleMouseDown.apply(this,arguments)}},onBeforeDrag:function(d,c){return true},onStartDrag:Ext.emptyFn,startDrag:function(d,c){this.proxy.reset();this.dragging=true;this.proxy.update("");this.onInitDrag(d,c);this.proxy.show()},onInitDrag:function(e,g){var d=this.el.dom.cloneNode(true);d.id=Ext.id();this.proxy.update(d);this.onStartDrag(e,g);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(b){},endDrag:function(b){this.onEndDrag(this.dragData,b)},onEndDrag:function(d,c){},autoOffset:function(d,c){this.setDelta(-12,-20)}});Ext.dd.DropTarget=function(c,d){this.el=Ext.get(c);Ext.apply(this,d);if(this.containerScroll){Ext.dd.ScrollManager.register(this.el)}Ext.dd.DropTarget.superclass.constructor.call(this,this.el.dom,this.ddGroup||this.group,{isTarget:true})};Ext.extend(Ext.dd.DropTarget,Ext.dd.DDTarget,{dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",isTarget:true,isNotifyTarget:true,notifyEnter:function(e,g,d){if(this.overClass){this.el.addClass(this.overClass)}return this.dropAllowed},notifyOver:function(e,g,d){return this.dropAllowed},notifyOut:function(e,g,d){if(this.overClass){this.el.removeClass(this.overClass)}},notifyDrop:function(e,g,d){return false}});Ext.dd.DragZone=function(c,d){Ext.dd.DragZone.superclass.constructor.call(this,c,d);if(this.containerScroll){Ext.dd.ScrollManager.register(this.el)}};Ext.extend(Ext.dd.DragZone,Ext.dd.DragSource,{getDragData:function(b){return Ext.dd.Registry.getHandleFromEvent(b)},onInitDrag:function(d,c){this.proxy.update(this.dragData.ddel.cloneNode(true));this.onStartDrag(d,c);return true},afterRepair:function(){if(Ext.enableFx){Ext.Element.fly(this.dragData.ddel).highlight(this.hlColor||"c3daf9")}this.dragging=false},getRepairXY:function(b){return Ext.Element.fly(this.dragData.ddel).getXY()}});Ext.dd.DropZone=function(c,d){Ext.dd.DropZone.superclass.constructor.call(this,c,d)};Ext.extend(Ext.dd.DropZone,Ext.dd.DropTarget,{getTargetFromEvent:function(b){return Ext.dd.Registry.getTargetFromEvent(b)},onNodeEnter:function(h,g,i,e){},onNodeOver:function(h,g,i,e){return this.dropAllowed},onNodeOut:function(h,g,i,e){},onNodeDrop:function(h,g,i,e){return false},onContainerOver:function(e,g,d){return this.dropNotAllowed},onContainerDrop:function(e,g,d){return false},notifyEnter:function(e,g,d){return this.dropNotAllowed},notifyOver:function(g,i,e){var h=this.getTargetFromEvent(i);if(!h){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,g,i,e);this.lastOverNode=null}return this.onContainerOver(g,i,e)}if(this.lastOverNode!=h){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,g,i,e)}this.onNodeEnter(h,g,i,e);this.lastOverNode=h}return this.onNodeOver(h,g,i,e)},notifyOut:function(e,g,d){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,e,g,d);this.lastOverNode=null}},notifyDrop:function(g,i,e){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,g,i,e);this.lastOverNode=null}var h=this.getTargetFromEvent(i);return h?this.onNodeDrop(h,g,i,e):this.onContainerDrop(g,i,e)},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups)}});Ext.Element.addMethods({initDD:function(i,e,h){var g=new Ext.dd.DD(Ext.id(this.dom),i,e);return Ext.apply(g,h)},initDDProxy:function(i,e,h){var g=new Ext.dd.DDProxy(Ext.id(this.dom),i,e);return Ext.apply(g,h)},initDDTarget:function(i,e,h){var g=new Ext.dd.DDTarget(Ext.id(this.dom),i,e);return Ext.apply(g,h)}});Ext.data.Api=(function(){var b={};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])?true:false},getVerb:function(a){if(b[a]){return b[a]}for(var d in this.actions){if(this.actions[d]===a){b[a]=d;break}}return(b[a]!==undefined)?b[a]:null},isValid:function(a){var g=[];var h=this.actions;for(var i in a){if(!(i in h)){g.push(i)}}return(!g.length)?true:g},hasUniqueUrl:function(k,h){var a=(k.api[h])?k.api[h].url:null;var i=true;for(var j in k.api){if((i=(j===h)?true:(k.api[j].url!=a)?true:false)===false){break}}return i},prepare:function(a){if(!a.api){a.api={}}for(var e in this.actions){var g=this.actions[e];a.api[g]=a.api[g]||a.url||a.directFn;if(typeof(a.api[g])=="string"){a.api[g]={url:a.api[g]}}}},restify:function(a){a.restful=true;for(var d in this.restActions){a.api[this.actions[d]].method=this.restActions[d]}}}})();Ext.data.Api.Error=Ext.extend(Ext.Error,{constructor:function(c,d){this.arg=d;Ext.Error.call(this,c)},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(b){return b},stripTagsRE:/<\/?[^>]+>/gi,asText:function(b){return String(b).replace(this.stripTagsRE,"")},asUCText:function(b){return String(b).toUpperCase().replace(this.stripTagsRE,"")},asUCString:function(b){return String(b).toUpperCase()},asDate:function(b){if(!b){return 0}if(Ext.isDate(b)){return b.getTime()}return Date.parse(String(b))},asFloat:function(d){var c=parseFloat(String(d).replace(/,/g,""));return isNaN(c)?0:c},asInt:function(d){var c=parseInt(String(d).replace(/,/g,""),10);return isNaN(c)?0:c}};Ext.data.Record=function(d,c){this.id=(c||c===0)?c:Ext.data.Record.id(this);this.data=d||{}};Ext.data.Record.create=function(i){var k=Ext.extend(Ext.data.Record,{});var j=k.prototype;j.fields=new Ext.util.MixedCollection(false,function(a){return a.name});for(var g=0,h=i.length;g<h;g++){j.fields.add(new Ext.data.Field(i[g]))}k.getField=function(a){return j.fields.get(a)};return k};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(b){b.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(b){this.store=b},set:function(d,g){var e=(typeof g==="object");if(!e&&String(this.data[d])===String(g)){return}else{if(e&&Ext.encode(this.data[d])===Ext.encode(g)){return}}this.dirty=true;if(!this.modified){this.modified={}}if(typeof this.modified[d]=="undefined"){this.modified[d]=this.data[d]}this.data[d]=g;if(!this.editing){this.afterEdit()}},afterEdit:function(){if(this.store){this.store.afterEdit(this)}},afterReject:function(){if(this.store){this.store.afterReject(this)}},afterCommit:function(){if(this.store){this.store.afterCommit(this)}},get:function(b){return this.data[b]},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(d){var e=this.modified;for(var g in e){if(typeof e[g]!="function"){this.data[g]=e[g]}}this.dirty=false;delete this.modified;this.editing=false;if(d!==true){this.afterReject()}},commit:function(b){this.dirty=false;delete this.modified;this.editing=false;if(b!==true){this.afterCommit()}},getChanges:function(){var e=this.modified,d={};for(var g in e){if(e.hasOwnProperty(g)){d[g]=this.data[g]}}return d},hasError:function(){return this.error!==null},clearError:function(){this.error=null},copy:function(b){return new this.constructor(Ext.apply({},this.data),b||this.id)},isModified:function(b){return !!(this.modified&&this.modified.hasOwnProperty(b))},isValid:function(){return this.fields.find(function(b){return(b.allowBlank===false&&Ext.isEmpty(this.data[b.name]))?true:false},this)?false:true},markDirty:function(){this.dirty=true;if(!this.modified){this.modified={}}this.fields.each(function(b){this.modified[b.name]=this.data[b.name]},this)}};Ext.StoreMgr=Ext.apply(new Ext.util.MixedCollection(),{register:function(){for(var d=0,c;(c=arguments[d]);d++){this.add(c)}},unregister:function(){for(var d=0,c;(c=arguments[d]);d++){this.remove(this.lookup(c))}},lookup:function(i){if(Ext.isArray(i)){var g=["field1"],j=!Ext.isArray(i[0]);if(!j){for(var k=2,h=i[0].length;k<=h;++k){g.push("field"+k)}}return new Ext.data.ArrayStore({fields:g,data:i,expandData:j,autoDestroy:true,autoCreated:true})}return Ext.isObject(i)?(i.events?i:Ext.create(i,"store")):this.get(i)},getKey:function(b){return b.storeId}});Ext.data.Store=function(b){this.data=new Ext.util.MixedCollection(false);this.data.getKey=function(a){return a.id};this.baseParams={};this.removed=[];if(b&&b.data){this.inlineData=b.data;delete b.data}Ext.apply(this,b);this.paramNames=Ext.applyIf(this.paramNames||{},this.defaultParamNames);if(this.url&&!this.proxy){this.proxy=new Ext.data.HttpProxy({url:this.url})}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.onMetaChange.createDelegate(this)}if(this.writer){this.writer.meta=this.reader.meta;this.pruneModifiedRecords=true}}if(this.recordType){this.fields=this.recordType.prototype.fields}this.modified=[];this.addEvents("datachanged","metachange","add","remove","update","clear","exception","beforeload","load","loadexception","beforewrite","write");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})}this.sortToggle={};if(this.sortField){this.setDefaultSort(this.sortField,this.sortDir)}else{if(this.sortInfo){this.setDefaultSort(this.sortInfo.field,this.sortInfo.direction)}}Ext.data.Store.superclass.constructor.call(this);if(this.id){this.storeId=this.id;delete this.id}if(this.storeId){Ext.StoreMgr.register(this)}if(this.inlineData){this.loadData(this.inlineData);delete this.inlineData}else{if(this.autoLoad){this.load.defer(10,this,[typeof this.autoLoad=="object"?this.autoLoad:undefined])}}};Ext.extend(Ext.data.Store,Ext.util.Observable,{writer:undefined,remoteSort:false,autoDestroy:false,pruneModifiedRecords:false,lastOptions:null,autoSave:true,batch:true,restful:false,paramNames:undefined,defaultParamNames:{start:"start",limit:"limit",sort:"sort",dir:"dir"},destroy:function(){if(this.storeId){Ext.StoreMgr.unregister(this)}this.data=null;Ext.destroy(this.proxy);this.reader=this.writer=null;this.purgeListeners()},add:function(e){e=[].concat(e);if(e.length<1){return}for(var h=0,g=e.length;h<g;h++){e[h].join(this)}var i=this.data.length;this.data.addAll(e);if(this.snapshot){this.snapshot.addAll(e)}this.fireEvent("add",this,e,i)},addSorted:function(d){var c=this.findInsertIndex(d);this.insert(c,d)},remove:function(d){var c=this.data.indexOf(d);if(c>-1){this.data.removeAt(c);if(this.pruneModifiedRecords){this.modified.remove(d)}if(this.snapshot){this.snapshot.remove(d)}this.fireEvent("remove",this,d,c)}},removeAt:function(b){this.remove(this.getAt(b))},removeAll:function(){this.data.clear();if(this.snapshot){this.snapshot.clear()}if(this.pruneModifiedRecords){this.modified=[]}this.fireEvent("clear",this)},insert:function(i,e){e=[].concat(e);for(var h=0,g=e.length;h<g;h++){this.data.insert(i,e[h]);e[h].join(this)}this.fireEvent("add",this,e,i)},indexOf:function(b){return this.data.indexOf(b)},indexOfId:function(b){return this.data.indexOfKey(b)},getById:function(b){return this.data.key(b)},getAt:function(b){return this.data.itemAt(b)},getRange:function(c,d){return this.data.getRange(c,d)},storeOptions:function(b){b=Ext.apply({},b);delete b.callback;delete b.scope;this.lastOptions=b},load:function(d){d=d||{};this.storeOptions(d);if(this.sortInfo&&this.remoteSort){var e=this.paramNames;d.params=d.params||{};d.params[e.sort]=this.sortInfo.field;d.params[e.dir]=this.sortInfo.direction}try{return this.execute("read",null,d)}catch(g){this.handleException(g);return false}},updateRecord:function(d,e,g){if(g==Ext.data.Record.EDIT&&this.autoSave===true&&(!e.phantom||(e.phantom&&e.isValid))){this.save()}},createRecords:function(k,g,j){for(var i=0,h=g.length;i<h;i++){if(g[i].phantom&&g[i].isValid()){g[i].markDirty();this.modified.push(g[i])}}if(this.autoSave===true){this.save()}},destroyRecord:function(d,e,g){if(this.modified.indexOf(e)!=-1){this.modified.remove(e)}if(!e.phantom){this.removed.push(e);e.lastIndex=g;if(this.autoSave===true){this.save()}}},execute:function(j,h,g){if(!Ext.data.Api.isAction(j)){throw new Ext.data.Api.Error("execute",j)}g=Ext.applyIf(g||{},{params:{}});var k=true;if(j==="read"){k=this.fireEvent("beforeload",this,g)}else{if(this.writer.listful===true&&this.restful!==true){h=(Ext.isArray(h))?h:[h]}else{if(Ext.isArray(h)&&h.length==1){h=h.shift()}}if((k=this.fireEvent("beforewrite",this,j,h,g))!==false){this.writer.write(j,g.params,h)}}if(k!==false){var i=Ext.apply({},g.params,this.baseParams);if(this.writer&&this.proxy.url&&!this.proxy.restful&&!Ext.data.Api.hasUniqueUrl(this.proxy,j)){i.xaction=j}this.proxy.request(Ext.data.Api.actions[j],h,i,this.reader,this.createCallback(j,h),this,g)}return k},save:function(){if(!this.writer){throw new Ext.data.Store.Error("writer-undefined")}if(this.removed.length){this.doTransaction("destroy",this.removed)}var g=[].concat(this.getModifiedRecords());if(!g.length){return true}var i=[];for(var e=g.length-1;e>=0;e--){if(g[e].phantom===true){var h=g.splice(e,1).shift();if(h.isValid()){i.push(h)}}else{if(!g[e].isValid()){g.splice(e,1)}}}if(i.length){this.doTransaction("create",i)}if(g.length){this.doTransaction("update",g)}return true},doTransaction:function(j,g){function i(b){try{this.execute(j,b)}catch(a){this.handleException(a)}}if(this.batch===false){for(var k=0,h=g.length;k<h;k++){i.call(this,g[k])}}else{i.call(this,g)}},createCallback:function(d,e){var g=Ext.data.Api.actions;return(d=="read")?this.loadRecords:function(b,c,a){this["on"+Ext.util.Format.capitalize(d)+"Records"](a,e,b);if(a===true){this.fireEvent("write",this,d,b,c,e)}}},clearModified:function(d){if(Ext.isArray(d)){for(var c=d.length-1;c>=0;c--){this.modified.splice(this.modified.indexOf(d[c]),1)}}else{this.modified.splice(this.modified.indexOf(d),1)}},reMap:function(e){if(Ext.isArray(e)){for(var h=0,g=e.length;h<g;h++){this.reMap(e[h])}}else{delete this.data.map[e._phid];this.data.map[e.id]=e;var i=this.data.keys.indexOf(e._phid);this.data.keys.splice(i,1,e.id);delete e._phid}},onCreateRecords:function(h,g,e){if(h===true){try{this.reader.realize(g,e);this.reMap(g)}catch(i){this.handleException(i);if(Ext.isArray(g)){this.onCreateRecords(h,g,e)}}}},onUpdateRecords:function(h,g,e){if(h===true){try{this.reader.update(g,e)}catch(i){this.handleException(i);if(Ext.isArray(g)){this.onUpdateRecords(h,g,e)}}}},onDestroyRecords:function(i,g,j){g=(g instanceof Ext.data.Record)?[g]:g;for(var k=0,h=g.length;k<h;k++){this.removed.splice(this.removed.indexOf(g[k]),1)}if(i===false){for(k=g.length-1;k>=0;k--){this.insert(g[k].lastIndex,g[k])}}},handleException:function(b){Ext.handleError(b)},reload:function(b){this.load(Ext.applyIf(b||{},this.lastOptions))},loadRecords:function(k,i,l){if(!k||l===false){if(l!==false){this.fireEvent("load",this,[],i)}if(i.callback){i.callback.call(i.scope||this,[],i,false,k)}return}var m=k.records,n=k.totalRecords||m.length;if(!i||i.add!==true){if(this.pruneModifiedRecords){this.modified=[]}for(var o=0,j=m.length;o<j;o++){m[o].join(this)}if(this.snapshot){this.data=this.snapshot;delete this.snapshot}this.data.clear();this.data.addAll(m);this.totalLength=n;this.applySort();this.fireEvent("datachanged",this)}else{this.totalLength=Math.max(n,this.data.length+m.length);this.add(m)}this.fireEvent("load",this,m,i);if(i.callback){i.callback.call(i.scope||this,m,i,true)}},loadData:function(g,e){var d=this.reader.readRecords(g);this.loadRecords(d,{add:e},true)},getCount:function(){return this.data.length||0},getTotalCount:function(){return this.totalLength||0},getSortState:function(){return this.sortInfo},applySort:function(){if(this.sortInfo&&!this.remoteSort){var d=this.sortInfo,c=d.field;this.sortData(c,d.direction)}},sortData:function(i,h){h=h||"ASC";var g=this.fields.get(i).sortType;var e=function(c,d){var a=g(c.data[i]),b=g(d.data[i]);return a>b?1:(a<b?-1:0)};this.data.sort(h,e);if(this.snapshot&&this.snapshot!=this.data){this.snapshot.sort(h,e)}},setDefaultSort:function(c,d){d=d?d.toUpperCase():"ASC";this.sortInfo={field:c,direction:d};this.sortToggle[c]=d},sort:function(i,k){var j=this.fields.get(i);if(!j){return false}if(!k){if(this.sortInfo&&this.sortInfo.field==j.name){k=(this.sortToggle[j.name]||"ASC").toggle("ASC","DESC")}else{k=j.sortDir}}var g=(this.sortToggle)?this.sortToggle[j.name]:null;var h=(this.sortInfo)?this.sortInfo:null;this.sortToggle[j.name]=k;this.sortInfo={field:j.name,direction:k};if(!this.remoteSort){this.applySort();this.fireEvent("datachanged",this)}else{if(!this.load(this.lastOptions)){if(g){this.sortToggle[j.name]=g}if(h){this.sortInfo=h}}}},each:function(c,d){this.data.each(c,d)},getModifiedRecords:function(){return this.modified},createFilterFn:function(i,e,h,g){if(Ext.isEmpty(e,false)){return false}e=this.data.createValueMatcher(e,h,g);return function(a){return e.test(a.data[i])}},sum:function(k,j,i){var m=this.data.items,h=0;j=j||0;i=(i||i===0)?i:m.length-1;for(var l=j;l<=i;l++){h+=(m[l].data[k]||0)}return h},filter:function(j,k,i,h){var g=this.createFilterFn(j,k,i,h);return g?this.filterBy(g):this.clearFilter()},filterBy:function(c,d){this.snapshot=this.snapshot||this.data;this.data=this.queryBy(c,d||this);this.fireEvent("datachanged",this)},query:function(j,k,i,h){var g=this.createFilterFn(j,k,i,h);return g?this.queryBy(g):this.data.clone()},queryBy:function(d,e){var g=this.snapshot||this.data;return g.filterBy(d,e||this)},find:function(l,m,j,k,i){var h=this.createFilterFn(l,m,k,i);return h?this.data.findIndexBy(h,null,j):-1},findExact:function(d,e,g){return this.data.findIndexBy(function(a){return a.get(d)===e},this,g)},findBy:function(d,e,g){return this.data.findIndexBy(d,e,g)},collect:function(o,l,t){var p=(t===true&&this.snapshot)?this.snapshot.items:this.data.items;var i,d,u=[],s={};for(var r=0,q=p.length;r<q;r++){i=p[r].data[o];d=String(i);if((l||!Ext.isEmpty(i))&&!s[d]){s[d]=true;u[u.length]=i}}return u},clearFilter:function(b){if(this.isFiltered()){this.data=this.snapshot;delete this.snapshot;if(b!==true){this.fireEvent("datachanged",this)}}},isFiltered:function(){return this.snapshot&&this.snapshot!=this.data},afterEdit:function(b){if(this.modified.indexOf(b)==-1){this.modified.push(b)}this.fireEvent("update",this,b,Ext.data.Record.EDIT)},afterReject:function(b){this.modified.remove(b);this.fireEvent("update",this,b,Ext.data.Record.REJECT)},afterCommit:function(b){this.modified.remove(b);this.fireEvent("update",this,b,Ext.data.Record.COMMIT)},commitChanges:function(){var d=this.modified.slice(0);this.modified=[];for(var g=0,e=d.length;g<e;g++){d[g].commit()}},rejectChanges:function(){var d=this.modified.slice(0);this.modified=[];for(var g=0,e=d.length;g<e;g++){d[g].reject()}},onMetaChange:function(d,e,g){this.recordType=e;this.fields=e.prototype.fields;delete this.snapshot;if(d.sortInfo){this.sortInfo=d.sortInfo}else{if(this.sortInfo&&!this.fields.get(this.sortInfo.field)){delete this.sortInfo}}this.modified=[];this.fireEvent("metachange",this,this.reader.meta)},findInsertIndex:function(e){this.suspendEvents();var g=this.data.clone();this.data.add(e);this.applySort();var d=this.data.indexOf(e);this.data=g;this.resumeEvents();return d},setBaseParam:function(d,c){this.baseParams=this.baseParams||{};this.baseParams[d]=c}});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=function(j){if(typeof j=="string"){j={name:j}}Ext.apply(this,j);if(!this.type){this.type="auto"}var k=Ext.data.SortTypes;if(typeof this.sortType=="string"){this.sortType=k[this.sortType]}if(!this.sortType){switch(this.type){case"string":this.sortType=k.asUCString;break;case"date":this.sortType=k.asDate;break;default:this.sortType=k.none}}var i=/[\$,%]/g;if(!this.convert){var g,h=this.dateFormat;switch(this.type){case"":case"auto":case undefined:g=function(a){return a};break;case"string":g=function(a){return(a===undefined||a===null)?"":String(a)};break;case"int":g=function(a){return a!==undefined&&a!==null&&a!==""?parseInt(String(a).replace(i,""),10):""};break;case"float":g=function(a){return a!==undefined&&a!==null&&a!==""?parseFloat(String(a).replace(i,""),10):""};break;case"bool":case"boolean":g=function(a){return a===true||a==="true"||a==1};break;case"date":g=function(a){if(!a){return""}if(Ext.isDate(a)){return a}if(h){if(h=="timestamp"){return new Date(a*1000)}if(h=="time"){return new Date(parseInt(a,10))}return Date.parseDate(a,h)}var b=Date.parse(a);return b?new Date(b):null};break}this.convert=g}};Ext.data.Field.prototype={dateFormat:null,defaultValue:"",mapping:null,sortType:null,sortDir:"ASC",allowBlank:true};Ext.data.DataReader=function(d,c){this.meta=d;this.recordType=Ext.isArray(c)?Ext.data.Record.create(c):c};Ext.data.DataReader.prototype={buildExtractors:Ext.emptyFn,realize:function(e,h){if(Ext.isArray(e)){for(var i=e.length-1;i>=0;i--){if(Ext.isArray(h)){this.realize(e.splice(i,1).shift(),h.splice(i,1).shift())}else{this.realize(e.splice(i,1).shift(),h)}}}else{if(Ext.isArray(h)&&h.length==1){h=h.shift()}if(!this.isData(h)){throw new Ext.data.DataReader.Error("realize",e)}this.buildExtractors();var g=this.extractValues(h,e.fields.items,e.fields.items.length);e.phantom=false;e._phid=e.id;e.id=h[this.meta.idProperty];e.data=g;e.commit()}},update:function(e,g){if(Ext.isArray(e)){for(var d=e.length-1;d>=0;d--){if(Ext.isArray(g)){this.update(e.splice(d,1).shift(),g.splice(d,1).shift())}else{this.update(e.splice(d,1).shift(),g)}}}else{if(Ext.isArray(g)&&g.length==1){g=g.shift()}if(!this.isData(g)){e.commit();throw new Ext.data.DataReader.Error("update",e)}this.buildExtractors();e.data=this.extractValues(Ext.apply(e.data,g),e.fields.items,e.fields.items.length);e.commit()}},isData:function(b){return(b&&Ext.isObject(b)&&!Ext.isEmpty(b[this.meta.idProperty]))?true:false}};Ext.data.DataReader.Error=Ext.extend(Ext.Error,{constructor:function(c,d){this.arg=d;Ext.Error.call(this,c)},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(b){Ext.apply(this,b)};Ext.data.DataWriter.prototype={writeAllFields:false,listful:false,write:function(d,g,e){this.render(d,e,g,this[d](e))},render:Ext.emptyFn,update:function(g){var h={};if(Ext.isArray(g)){var i=[],e=[];Ext.each(g,function(a){e.push(a.id);i.push(this.updateRecord(a))},this);h[this.meta.idProperty]=e;h[this.meta.root]=i}else{if(g instanceof Ext.data.Record){h[this.meta.idProperty]=g.id;h[this.meta.root]=this.updateRecord(g)}}return h},updateRecord:Ext.emptyFn,create:function(e){var g={};if(Ext.isArray(e)){var d=[];Ext.each(e,function(a){d.push(this.createRecord(a))},this);g[this.meta.root]=d}else{if(e instanceof Ext.data.Record){g[this.meta.root]=this.createRecord(e)}}return g},createRecord:Ext.emptyFn,destroy:function(g){var h={};if(Ext.isArray(g)){var i=[],e=[];Ext.each(g,function(a){i.push(this.destroyRecord(a))},this);h[this.meta.root]=i}else{if(g instanceof Ext.data.Record){h[this.meta.root]=this.destroyRecord(g)}}return h},destroyRecord:Ext.emptyFn,toHash:function(i){var j=i.fields.map,k={},g=(this.writeAllFields===false&&i.phantom===false)?i.getChanges():i.data,h;Ext.iterate(g,function(a,b){if((h=j[a])){k[h.mapping?h.mapping:h.name]=b}});k[this.meta.idProperty]=i.id;return k}};Ext.data.DataProxy=function(d){d=d||{};this.api=d.api;this.url=d.url;this.restful=d.restful;this.listeners=d.listeners;this.prettyUrls=d.prettyUrls;try{Ext.data.Api.prepare(this)}catch(c){if(c instanceof Ext.data.Api.Error){c.toConsole()}}this.addEvents("exception","beforeload","load","loadexception","beforewrite","write");Ext.data.DataProxy.superclass.constructor.call(this)};Ext.extend(Ext.data.DataProxy,Ext.util.Observable,{restful:false,setApi:function(){if(arguments.length==1){var b=Ext.data.Api.isValid(arguments[0]);if(b===true){this.api=arguments[0]}else{throw new Ext.data.Api.Error("invalid",b)}}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(b){return(this.api[b])?true:false},request:function(m,i,l,j,k,n,o){if(!this.api[m]&&!this.load){throw new Ext.data.DataProxy.Error("action-undefined",m)}l=l||{};if((m===Ext.data.Api.actions.read)?this.fireEvent("beforeload",this,l):this.fireEvent("beforewrite",this,m,i,l)!==false){this.doRequest.apply(this,arguments)}else{k.call(n||this,null,o,false)}},load:null,doRequest:function(m,i,l,j,k,n,o){this.load(l,j,k,n,o)},buildUrl:function(j,g){g=g||null;var k=(this.api[j])?this.api[j].url:this.url;if(!k){throw new Ext.data.Api.Error("invalid-url",j)}var i=null;var h=k.match(/(.*)(\.\w+)$/);if(h){i=h[2];k=h[1]}if((this.prettyUrls===true||this.restful===true)&&g instanceof Ext.data.Record&&!g.phantom){k+="/"+g.id}if(i){k+=i}return k},destroy:function(){this.purgeListeners()}});Ext.data.DataProxy.Error=Ext.extend(Ext.Error,{constructor:function(c,d){this.arg=d;Ext.Error.call(this,c)},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.ScriptTagProxy=function(b){Ext.apply(this,b);Ext.data.ScriptTagProxy.superclass.constructor.call(this,b);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(u,t,v,s,q,p,o){var w=Ext.urlEncode(Ext.apply(v,this.extraParams));var x=this.buildUrl(u,t);if(!x){throw new Ext.data.Api.Error("invalid-url",x)}x=Ext.urlAppend(x,w);if(this.nocache){x=Ext.urlAppend(x,"_dc="+(new Date().getTime()))}var y=++Ext.data.ScriptTagProxy.TRANS_ID;var n={id:y,action:u,cb:"stcCallback"+y,scriptId:"stcScript"+y,params:v,arg:o,url:x,callback:q,scope:p,reader:s};window[n.cb]=this.createCallback(u,t,n);x+=String.format("&{0}={1}",this.callbackParam,n.cb);if(this.autoAbort!==false){this.abort()}n.timeoutId=this.handleFailure.defer(this.timeout,this,[n]);var r=document.createElement("script");r.setAttribute("src",x);r.setAttribute("type","text/javascript");r.setAttribute("id",n.scriptId);this.head.appendChild(r);this.trans=n},createCallback:function(h,e,i){var g=this;return function(a){g.trans=false;g.destroyTrans(i,true);if(h===Ext.data.Api.actions.read){g.onRead.call(g,h,i,a)}else{g.onWrite.call(g,h,i,a,e)}}},onRead:function(j,k,e){var h;try{h=k.reader.readRecords(e)}catch(i){this.fireEvent("loadexception",this,k,e,i);this.fireEvent("exception",this,"response",j,k,e,i);k.callback.call(k.scope||window,null,k.arg,false);return}if(h.success===false){this.fireEvent("loadexception",this,k,e);this.fireEvent("exception",this,"remote",j,k,e,null)}else{this.fireEvent("load",this,e,k.arg)}k.callback.call(k.scope||window,h,k.arg,h.success)},onWrite:function(k,l,m,e){var i=l.reader;try{i.readResponse(k,m)}catch(j){this.fireEvent("exception",this,"response",k,l,m,j);l.callback.call(l.scope||window,null,m,false);return}if(!m[i.meta.successProperty]===true){this.fireEvent("exception",this,"remote",k,l,m,e);l.callback.call(l.scope||window,null,m,false);return}this.fireEvent("write",this,k,m[i.meta.root],m,e,l.arg);l.callback.call(l.scope||window,m[i.meta.root],m,true)},isLoading:function(){return this.trans?true:false},abort:function(){if(this.isLoading()){this.destroyTrans(this.trans)}},destroyTrans:function(d,e){this.head.removeChild(document.getElementById(d.scriptId));clearTimeout(d.timeoutId);if(e){window[d.cb]=undefined;try{delete window[d.cb]}catch(g){}}else{window[d.cb]=function(){window[d.cb]=undefined;try{delete window[d.cb]}catch(a){}}}},handleFailure:function(b){this.trans=false;this.destroyTrans(b,false);if(b.action===Ext.data.Api.actions.read){this.fireEvent("loadexception",this,null,b.arg)}this.fireEvent("exception",this,"response",b.action,{response:null,options:b.arg});b.callback.call(b.scope||window,null,b.arg,false)},destroy:function(){this.abort();Ext.data.ScriptTagProxy.superclass.destroy.call(this)}});Ext.data.HttpProxy=function(e){Ext.data.HttpProxy.superclass.constructor.call(this,e);this.conn=e;this.conn.url=null;this.useAjax=!e||!e.events;var g=Ext.data.Api.actions;this.activeRequest={};for(var d in g){this.activeRequest[g[d]]=undefined}};Ext.extend(Ext.data.HttpProxy,Ext.data.DataProxy,{getConnection:function(){return this.useAjax?Ext.Ajax:this.conn},setUrl:function(d,c){this.conn.url=d;if(c===true){this.url=d;Ext.data.Api.prepare(this)}},doRequest:function(n,p,l,q,j,o,k){var m={method:(this.api[n])?this.api[n]["method"]:undefined,request:{callback:j,scope:o,arg:k},reader:q,callback:this.createCallback(n,p),scope:this};if(typeof(l[q.meta.root])==="object"){m.jsonData=l}else{m.params=l||{}}if(this.conn.url===null){this.conn.url=this.buildUrl(n,p)}else{if(this.restful===true&&p instanceof Ext.data.Record&&!p.phantom){this.conn.url+="/"+p.id}}if(this.useAjax){Ext.applyIf(m,this.conn);if(this.activeRequest[n]){}this.activeRequest[n]=Ext.Ajax.request(m)}else{this.conn.request(m)}this.conn.url=null},createCallback:function(c,d){return function(a,b,g){this.activeRequest[c]=undefined;if(!b){if(c===Ext.data.Api.actions.read){this.fireEvent("loadexception",this,a,g)}this.fireEvent("exception",this,"response",c,a,g);a.request.callback.call(a.request.scope,null,a.request.arg,false);return}if(c===Ext.data.Api.actions.read){this.onRead(c,a,g)}else{this.onWrite(c,a,g,d)}}},onRead:function(l,j,e){var i;try{i=j.reader.read(e)}catch(k){this.fireEvent("loadexception",this,j,e,k);this.fireEvent("exception",this,"response",l,j,e,k);j.request.callback.call(j.request.scope,null,j.request.arg,false);return}if(i.success===false){this.fireEvent("loadexception",this,j,e);var m=j.reader.readResponse(l,e);this.fireEvent("exception",this,"remote",l,j,m,null)}else{this.fireEvent("load",this,j,j.request.arg)}j.request.callback.call(j.request.scope,i,j.request.arg,i.success)},onWrite:function(m,k,o,e){var j=k.reader;var n;try{n=j.readResponse(m,o)}catch(l){this.fireEvent("exception",this,"response",m,k,o,l);k.request.callback.call(k.request.scope,null,k.request.arg,false);return}if(n[j.meta.successProperty]===false){this.fireEvent("exception",this,"remote",m,k,n,e)}else{this.fireEvent("write",this,m,n[j.meta.root],n,e,k.request.arg)}k.request.callback.call(k.request.scope,n[j.meta.root],n,n[j.meta.successProperty])},destroy:function(){if(!this.useAjax){this.conn.abort()}else{if(this.activeRequest){var c=Ext.data.Api.actions;for(var d in c){if(this.activeRequest[c[d]]){Ext.Ajax.abort(this.activeRequest[c[d]])}}}}Ext.data.HttpProxy.superclass.destroy.call(this)}});Ext.data.MemoryProxy=function(c){var d={};d[Ext.data.Api.actions.read]=true;Ext.data.MemoryProxy.superclass.constructor.call(this,{api:d});this.data=c};Ext.extend(Ext.data.MemoryProxy,Ext.data.DataProxy,{doRequest:function(r,q,s,p,n,m,l){s=s||{};var e;try{e=p.readRecords(this.data)}catch(o){this.fireEvent("loadexception",this,null,l,o);this.fireEvent("exception",this,"response",r,l,null,o);n.call(m,null,l,false);return}n.call(m,e,l,true)}});Ext.data.JsonWriter=function(b){Ext.data.JsonWriter.superclass.constructor.call(this,b);if(this.returnJson!=undefined){this.encode=this.returnJson}};Ext.extend(Ext.data.JsonWriter,Ext.data.DataWriter,{returnJson:undefined,encode:true,render:function(i,g,h,e){Ext.apply(h,e);if(this.encode===true){if(Ext.isArray(g)&&e[this.meta.idProperty]){h[this.meta.idProperty]=Ext.encode(h[this.meta.idProperty])}h[this.meta.root]=Ext.encode(h[this.meta.root])}},createRecord:function(b){return this.toHash(b)},updateRecord:function(b){return this.toHash(b)},destroyRecord:function(b){return b.id}});Ext.data.JsonReader=function(d,c){d=d||{};Ext.applyIf(d,{idProperty:"id",successProperty:"success",totalProperty:"total"});Ext.data.JsonReader.superclass.constructor.call(this,d,c||d.fields)};Ext.extend(Ext.data.JsonReader,Ext.data.DataReader,{read:function(e){var d=e.responseText;var g=Ext.decode(d);if(!g){throw {message:"JsonReader.read: Json object not found"}}return this.readRecords(g)},onMetaChange:function(e,g,d){},simpleAccess:function(c,d){return c[d]},getJsonAccessor:function(){var b=/[\[\.]/;return function(d){try{return(b.test(d))?new Function("obj","return obj."+d):function(c){return c[d]}}catch(a){}return Ext.emptyFn}}(),readRecords:function(C){this.jsonData=C;if(C.metaData){delete this.ef;this.meta=C.metaData;this.recordType=Ext.data.Record.create(C.metaData.fields);this.onMetaChange(this.meta,this.recordType,C)}var D=this.meta,o=this.recordType,x=o.prototype.fields,E=x.items,n=x.length,i;this.buildExtractors();var s=this.getRoot(C),v=s.length,w=v,c=true;if(D.totalProperty){i=parseInt(this.getTotal(C),10);if(!isNaN(i)){w=i}}if(D.successProperty){i=this.getSuccess(C);if(i===false||i==="false"){c=false}}var A=[];for(var z=0;z<v;z++){var B=s[z];var y=new o(this.extractValues(B,E,n),this.getId(B));y.json=B;A[z]=y}return{success:c,records:A,totalRecords:w}},buildExtractors:function(){if(this.ef){return}var g=this.meta,n=this.recordType,o=n.prototype.fields,i=o.items,m=o.length;if(g.totalProperty){this.getTotal=this.getJsonAccessor(g.totalProperty)}if(g.successProperty){this.getSuccess=this.getJsonAccessor(g.successProperty)}this.getRoot=g.root?this.getJsonAccessor(g.root):function(a){return a};if(g.id||g.idProperty){var p=this.getJsonAccessor(g.id||g.idProperty);this.getId=function(a){var b=p(a);return(b===undefined||b==="")?null:b}}else{this.getId=function(){return null}}var q=[];for(var r=0;r<m;r++){o=i[r];var s=(o.mapping!==undefined&&o.mapping!==null)?o.mapping:o.name;q.push(this.getJsonAccessor(s))}this.ef=q},extractValues:function(k,n,j){var l,o={};for(var m=0;m<j;m++){l=n[m];var i=this.ef[m](k);o[l.name]=l.convert((i!==undefined)?i:l.defaultValue,k)}return o},readResponse:function(d,e){var g=(e.responseText!==undefined)?Ext.decode(e.responseText):e;if(!g){throw new Ext.data.JsonReader.Error("response")}if(Ext.isEmpty(g[this.meta.successProperty])){throw new Ext.data.JsonReader.Error("successProperty-response",this.meta.successProperty)}if((d===Ext.data.Api.actions.create||d===Ext.data.Api.actions.update)){if(Ext.isEmpty(g[this.meta.root])){throw new Ext.data.JsonReader.Error("root-emtpy",this.meta.root)}else{if(g[this.meta.root]===undefined){throw new Ext.data.JsonReader.Error("root-undefined-response",this.meta.root)}}}this.ef=this.buildExtractors();return g}});Ext.data.JsonReader.Error=Ext.extend(Ext.Error,{constructor:function(c,d){this.arg=d;Ext.Error.call(this,c)},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-response":'Could not locate your "root" property in your server response.  Please review your JsonReader config to ensure the config-property "root" matches the property 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-emtpy":'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;var E=this.meta,H=E?Ext.num(E.idIndex,E.id):null,J=this.recordType,B=J.prototype.fields,j=[],G;if(!this.getRoot){this.getRoot=E.root?this.getJsonAccessor(E.root):function(a){return a};if(E.totalProperty){this.getTotal=this.getJsonAccessor(E.totalProperty)}}var s=this.getRoot(A);for(var k=0;k<s.length;k++){var v=s[k];var K={};var C=((H||H===0)&&v[H]!==undefined&&v[H]!==""?v[H]:null);for(var n=0,D=B.length;n<D;n++){var i=B.items[n];var o=i.mapping!==undefined&&i.mapping!==null?i.mapping:n;G=v[o]!==undefined?v[o]:i.defaultValue;G=i.convert(G,v);K[i.name]=G}var I=new J(K,C);I.json=v;j[j.length]=I}var F=j.length;if(E.totalProperty){G=parseInt(this.getTotal(A),10);if(!isNaN(G)){F=G}}return{records:j,totalRecords:F}}});Ext.data.ArrayStore=Ext.extend(Ext.data.Store,{constructor:function(b){Ext.data.ArrayStore.superclass.constructor.call(this,Ext.apply(b,{reader:new Ext.data.ArrayReader(b)}))},loadData:function(i,g){if(this.expandData===true){var j=[];for(var k=0,h=i.length;k<h;k++){j[j.length]=[i[k]]}i=j}Ext.data.ArrayStore.superclass.loadData.call(this,i,g)}});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(b){Ext.data.JsonStore.superclass.constructor.call(this,Ext.apply(b,{reader:new Ext.data.JsonReader(b)}))}});Ext.reg("jsonstore",Ext.data.JsonStore);Ext.data.XmlWriter=Ext.extend(Ext.data.DataWriter,{render:function(i,g,h,e){},createRecord:function(b){},updateRecord:function(b){},destroyRecord:function(b){}});Ext.data.XmlReader=function(d,c){d=d||{};Ext.data.XmlReader.superclass.constructor.call(this,d,c||d.fields)};Ext.extend(Ext.data.XmlReader,Ext.data.DataReader,{read:function(d){var c=d.responseXML;if(!c){throw {message:"XmlReader.read: XML Document not available"}}return this.readRecords(c)},readRecords:function(i){this.xmlData=i;var C=i.documentElement||i;var I=Ext.DomQuery;var P=this.recordType,F=P.prototype.fields;var N=this.meta.idPath||this.meta.id;var K=0,M=true;if(this.meta.totalRecords){K=I.selectNumber(this.meta.totalRecords,C,0)}if(this.meta.success){var G=I.selectValue(this.meta.success,C,true);M=G!==false&&G!=="false"}var q=[];var E=I.select(this.meta.record,C);for(var v=0,n=E.length;v<n;v++){var D=E[v];var Q={};var H=N?I.selectValue(N,D):undefined;for(var B=0,J=F.length;B<J;B++){var j=F.items[B];var L=I.selectValue(Ext.value(j.mapping,j.name,true),D,j.defaultValue);L=j.convert(L,D);Q[j.name]=L}var O=new P(Q,H);O.node=D;q[q.length]=O}return{success:M,records:q,totalRecords:K||q.length}},readResponse:Ext.emptyFn});Ext.data.XmlStore=Ext.extend(Ext.data.Store,{constructor:function(b){Ext.data.XmlStore.superclass.constructor.call(this,Ext.apply(b,{reader:new Ext.data.XmlReader(b)}))}});Ext.reg("xmlstore",Ext.data.XmlStore);Ext.data.GroupingStore=Ext.extend(Ext.data.Store,{constructor:function(b){Ext.data.GroupingStore.superclass.constructor.call(this,b);this.applyGroupField()},remoteGroup:false,groupOnSort:false,groupDir:"ASC",clearGrouping:function(){this.groupField=false;if(this.remoteGroup){if(this.baseParams){delete this.baseParams.groupBy}var b=this.lastOptions;if(b&&b.params){delete b.params.groupBy}this.reload()}else{this.applySort();this.fireEvent("datachanged",this)}},groupBy:function(h,e,i){i=i?(String(i).toUpperCase()=="DESC"?"DESC":"ASC"):this.groupDir;if(this.groupField==h&&this.groupDir==i&&!e){return}this.groupField=h;this.groupDir=i;this.applyGroupField();if(this.groupOnSort){this.sort(h,i);return}if(this.remoteGroup){this.reload()}else{var g=this.sortInfo||{};if(g.field!=h||g.direction!=i){this.applySort()}else{this.sortData(h,i)}this.fireEvent("datachanged",this)}},applyGroupField:function(){if(this.remoteGroup){if(!this.baseParams){this.baseParams={}}this.baseParams.groupBy=this.groupField;this.baseParams.groupDir=this.groupDir}},applySort:function(){Ext.data.GroupingStore.superclass.applySort.call(this);if(!this.groupOnSort&&!this.remoteGroup){var b=this.getGroupState();if(b&&(b!=this.sortInfo.field||this.groupDir!=this.sortInfo.direction)){this.sortData(this.groupField,this.groupDir)}}},applyGrouping:function(b){if(this.groupField!==false){this.groupBy(this.groupField,true,this.groupDir);return true}else{if(b===true){this.fireEvent("datachanged",this)}return false}},getGroupState:function(){return this.groupOnSort&&this.groupField!==false?(this.sortInfo?this.sortInfo.field:undefined):this.groupField}});Ext.reg("groupingstore",Ext.data.GroupingStore);Ext.data.DirectProxy=function(b){Ext.apply(this,b);if(typeof this.paramOrder=="string"){this.paramOrder=this.paramOrder.split(/[\s,|]/)}Ext.data.DirectProxy.superclass.constructor.call(this,b)};Ext.extend(Ext.data.DirectProxy,Ext.data.DataProxy,{paramOrder:undefined,paramsAsHash:true,directFn:undefined,doRequest:function(x,w,y,u,q,p,i){var r=[];var s=this.api[x]||this.directFn;switch(x){case Ext.data.Api.actions.create:r.push(y[u.meta.root]);break;case Ext.data.Api.actions.read:if(this.paramOrder){for(var v=0,t=this.paramOrder.length;v<t;v++){r.push(y[this.paramOrder[v]])}}else{if(this.paramsAsHash){r.push(y)}}break;case Ext.data.Api.actions.update:r.push(y[u.meta.idProperty]);r.push(y[u.meta.root]);break;case Ext.data.Api.actions.destroy:r.push(y[u.meta.root]);break}var o={params:y||{},callback:q,scope:p,arg:i,reader:u};r.push(this.createCallback(x,w,o),this);s.apply(window,r)},createCallback:function(g,e,d){return function(b,a){if(!a.status){if(g===Ext.data.Api.actions.read){this.fireEvent("loadexception",this,d,a,null)}this.fireEvent("exception",this,"remote",g,d,a,null);d.callback.call(d.scope,null,d.arg,false);return}if(g===Ext.data.Api.actions.read){this.onRead(g,d,b,a)}else{this.onWrite(g,d,b,a,e)}}},onRead:function(j,k,i,l){var h;try{h=k.reader.readRecords(i)}catch(m){this.fireEvent("loadexception",this,k,l,m);this.fireEvent("exception",this,"response",j,k,l,m);k.callback.call(k.scope,null,k.arg,false);return}this.fireEvent("load",this,l,k.arg);k.callback.call(k.scope,h,k.arg,true)},onWrite:function(i,j,h,k,g){this.fireEvent("write",this,i,h,k,g,j.arg);j.callback.call(j.scope,h,k,true)}});Ext.data.DirectStore=function(b){b.batchTransactions=false;Ext.data.DirectStore.superclass.constructor.call(this,Ext.apply(b,{proxy:(typeof(b.proxy)=="undefined")?new Ext.data.DirectProxy(Ext.copyTo({},b,"paramOrder,paramsAsHash,directFn,api")):b.proxy,reader:(typeof(b.reader)=="undefined"&&typeof(b.fields)=="object")?new Ext.data.JsonReader(Ext.copyTo({},b,"totalProperty,root,idProperty"),b.fields):b.reader}))};Ext.extend(Ext.data.DirectStore,Ext.data.Store,{});Ext.reg("directstore",Ext.data.DirectStore);Ext.Direct=Ext.extend(Ext.util.Observable,{exceptions:{TRANSPORT:"xhr",PARSE:"parse",LOGIN:"login",SERVER:"exception"},constructor:function(){this.addEvents("event","exception");this.transactions={};this.providers={}},addProvider:function(g){var i=arguments;if(i.length>1){for(var h=0,a=i.length;h<a;h++){this.addProvider(i[h])}return}if(!g.events){g=new Ext.Direct.PROVIDERS[g.type](g)}g.id=g.id||Ext.id();this.providers[g.id]=g;g.on("data",this.onProviderData,this);g.on("exception",this.onProviderException,this);if(!g.isConnected()){g.connect()}return g},getProvider:function(b){return this.providers[b]},removeProvider:function(c){var d=c.id?c:this.providers[c.id];d.un("data",this.onProviderData,this);d.un("exception",this.onProviderException,this);delete this.providers[d.id];return d},addTransaction:function(b){this.transactions[b.tid]=b;return b},removeTransaction:function(b){delete this.transactions[b.tid||b];return b},getTransaction:function(b){return this.transactions[b.tid||b]},onProviderData:function(h,i){if(Ext.isArray(i)){for(var e=0,g=i.length;e<g;e++){this.onProviderData(h,i[e])}return}if(i.name&&i.name!="event"&&i.name!="exception"){this.fireEvent(i.name,i)}else{if(i.type=="exception"){this.fireEvent("exception",i)}}this.fireEvent("event",i,h)},createEvent:function(d,c){return new Ext.Direct.eventTypes[d.type](Ext.apply(d,c))}});Ext.Direct=new Ext.Direct();Ext.Direct.TID=1;Ext.Direct.PROVIDERS={};Ext.Direct.Transaction=function(b){Ext.apply(this,b);this.tid=++Ext.Direct.TID;this.retryCount=0};Ext.Direct.Transaction.prototype={send:function(){this.provider.queueTransaction(this)},retry:function(){this.retryCount++;this.send()},getProvider:function(){return this.provider}};Ext.Direct.Event=function(b){Ext.apply(this,b)};Ext.Direct.Event.prototype={status:true,getData:function(){return this.data}};Ext.Direct.RemotingEvent=Ext.extend(Ext.Direct.Event,{type:"rpc",getTransaction:function(){return this.transaction||Ext.Direct.getTransaction(this.tid)}});Ext.Direct.ExceptionEvent=Ext.extend(Ext.Direct.RemotingEvent,{status:false,type:"exception"});Ext.Direct.eventTypes={rpc:Ext.Direct.RemotingEvent,event:Ext.Direct.Event,exception:Ext.Direct.ExceptionEvent};Ext.direct.Provider=Ext.extend(Ext.util.Observable,{priority:1,constructor:function(b){Ext.apply(this,b);this.addEvents("connect","disconnect","data","exception");Ext.direct.Provider.superclass.constructor.call(this,b)},isConnected:function(){return false},connect:Ext.emptyFn,disconnect:Ext.emptyFn});Ext.direct.JsonProvider=Ext.extend(Ext.direct.Provider,{parseResponse:function(b){if(!Ext.isEmpty(b.responseText)){if(typeof b.responseText=="object"){return b.responseText}return Ext.decode(b.responseText)}return null},getEvents:function(k){var m=null;try{m=this.parseResponse(k)}catch(l){var n=new Ext.Direct.ExceptionEvent({data:l,xhr:k,code:Ext.Direct.exceptions.PARSE,message:"Error parsing json response: \n\n "+m});return[n]}var o=[];if(Ext.isArray(m)){for(var e=0,i=m.length;e<i;e++){o.push(Ext.Direct.createEvent(m[e]))}}else{o.push(Ext.Direct.createEvent(m))}return o}});Ext.direct.PollingProvider=Ext.extend(Ext.direct.JsonProvider,{priority:3,interval:3000,constructor:function(b){Ext.direct.PollingProvider.superclass.constructor.call(this,b);this.addEvents("beforepoll","poll")},isConnected:function(){return !!this.pollTask},connect:function(){if(this.url&&!this.pollTask){this.pollTask=Ext.TaskMgr.start({run:function(){if(this.fireEvent("beforepoll",this)!==false){if(typeof this.url=="function"){this.url(this.baseParams)}else{Ext.Ajax.request({url:this.url,callback:this.onData,scope:this,params:this.baseParams})}}},interval:this.interval,scope:this});this.fireEvent("connect",this)}else{if(!this.url){throw"Error initializing PollingProvider, no url configured."}}},disconnect:function(){if(this.pollTask){Ext.TaskMgr.stop(this.pollTask);delete this.pollTask;this.fireEvent("disconnect",this)}},onData:function(n,k,l){if(k){var o=this.getEvents(l);for(var e=0,i=o.length;e<i;e++){var m=o[e];this.fireEvent("data",this,m)}}else{var m=new Ext.Direct.ExceptionEvent({data:m,code:Ext.Direct.exceptions.TRANSPORT,message:"Unable to connect to the server.",xhr:l});this.fireEvent("data",this,m)}}});Ext.Direct.PROVIDERS.polling=Ext.direct.PollingProvider;Ext.direct.RemotingProvider=Ext.extend(Ext.direct.JsonProvider,{enableBuffer:10,maxRetries:1,constructor:function(b){Ext.direct.RemotingProvider.superclass.constructor.call(this,b);this.addEvents("beforecall","call");this.namespace=(typeof this.namespace==="string")?Ext.ns(this.namespace):this.namespace||window;this.transactions={};this.callBuffer=[]},initAPI:function(){var l=this.actions;for(var k in l){var o=this.namespace[k]||(this.namespace[k]={});var n=l[k];for(var m=0,c=n.length;m<c;m++){var i=n[m];o[i.name]=this.createMethod(k,i)}}},isConnected:function(){return !!this.connected},connect:function(){if(this.url){this.initAPI();this.connected=true;this.fireEvent("connect",this)}else{if(!this.url){throw"Error initializing RemotingProvider, no url configured."}}},disconnect:function(){if(this.connected){this.connected=false;this.fireEvent("disconnect",this)}},onData:function(s,n,m){if(n){var i=this.getEvents(m);for(var r=0,q=i.length;r<q;r++){var p=i[r];var e=this.getTransaction(p);this.fireEvent("data",this,p);if(e){this.doCallback(e,p,true);Ext.Direct.removeTransaction(e)}}}else{var o=[].concat(s.ts);for(var r=0,q=o.length;r<q;r++){var e=this.getTransaction(o[r]);if(e&&e.retryCount<this.maxRetries){e.retry()}else{var p=new Ext.Direct.ExceptionEvent({data:p,transaction:e,code:Ext.Direct.exceptions.TRANSPORT,message:"Unable to connect to the server.",xhr:m});this.fireEvent("data",this,p);if(e){this.doCallback(e,p,false);Ext.Direct.removeTransaction(e)}}}}},getCallData:function(b){return{action:b.action,method:b.method,data:b.data,type:"rpc",tid:b.tid}},doSend:function(l){var j={url:this.url,callback:this.onData,scope:this,ts:l};var h;if(Ext.isArray(l)){h=[];for(var m=0,i=l.length;m<i;m++){h.push(this.getCallData(l[m]))}}else{h=this.getCallData(l)}if(this.enableUrlEncode){var k={};k[typeof this.enableUrlEncode=="string"?this.enableUrlEncode:"data"]=Ext.encode(h);j.params=k}else{j.jsonData=h}Ext.Ajax.request(j)},combineAndSend:function(){var b=this.callBuffer.length;if(b>0){this.doSend(b==1?this.callBuffer[0]:this.callBuffer);this.callBuffer=[]}},queueTransaction:function(b){if(b.form){this.processForm(b);return}this.callBuffer.push(b);if(this.enableBuffer){if(!this.callTask){this.callTask=new Ext.util.DelayedTask(this.combineAndSend,this)}this.callTask.delay(typeof this.enableBuffer=="number"?this.enableBuffer:10)}else{this.combineAndSend()}},doCall:function(k,j,c){var l=null,n=c[j.len],m=c[j.len+1];if(j.len!==0){l=c.slice(0,j.len)}var o=new Ext.Direct.Transaction({provider:this,args:c,action:k,method:j.name,data:l,cb:m&&Ext.isFunction(n)?n.createDelegate(m):n});if(this.fireEvent("beforecall",this,o)!==false){Ext.Direct.addTransaction(o);this.queueTransaction(o);this.fireEvent("call",this,o)}},doForm:function(l,c,o,m,p){var q=new Ext.Direct.Transaction({provider:this,action:l,method:c.name,args:[o,m,p],cb:p&&Ext.isFunction(m)?m.createDelegate(p):m,isForm:true});if(this.fireEvent("beforecall",this,q)!==false){Ext.Direct.addTransaction(q);var k=String(o.getAttribute("enctype")).toLowerCase()=="multipart/form-data",n={extTID:q.tid,extAction:l,extMethod:c.name,extType:"rpc",extUpload:String(k)};Ext.apply(q,{form:Ext.getDom(o),isUpload:k,params:m&&Ext.isObject(m.params)?Ext.apply(n,m.params):n});this.fireEvent("call",this,q);this.processForm(q)}},processForm:function(b){Ext.Ajax.request({url:this.url,params:b.params,callback:this.onData,scope:this,form:b.form,isUpload:b.isUpload,ts:b})},createMethod:function(g,e){var c;if(!e.formHandler){c=function(){this.doCall(g,e,Array.prototype.slice.call(arguments,0))}.createDelegate(this)}else{c=function(b,a,d){this.doForm(g,e,b,a,d)}.createDelegate(this)}c.directCfg={action:g,method:e};return c},getTransaction:function(b){return b&&b.tid?Ext.Direct.getTransaction(b.tid):null},doCallback:function(k,i){var j=i.status?"success":"failure";if(k&&k.cb){var e=k.cb;var h=i.result||i.data;if(Ext.isFunction(e)){e(h,i)}else{Ext.callback(e[j],e.scope,[h,i]);Ext.callback(e.callback,e.scope,[h,i])}}}});Ext.Direct.PROVIDERS.remoting=Ext.direct.RemotingProvider;Ext.Resizable=function(x,w){this.el=Ext.get(x);if(w&&w.wrap){w.resizeChild=this.el;this.el=this.el.wrap(typeof w.wrap=="object"?w.wrap:{cls:"xresizable-wrap"});this.el.id=this.el.dom.id=w.resizeChild.id+"-rzwrap";this.el.setStyle("overflow","hidden");this.el.setPositioning(w.resizeChild.getPositioning());w.resizeChild.clearPositioning();if(!w.width||!w.height){var v=w.resizeChild.getSize();this.el.setSize(v.width,v.height)}if(w.pinned&&!w.adjustments){w.adjustments="auto"}}this.proxy=this.el.createProxy({tag:"div",cls:"x-resizable-proxy",id:this.el.id+"-rzproxy"},Ext.getBody());this.proxy.unselectable();this.proxy.enableDisplayMode("block");Ext.apply(this,w);if(this.pinned){this.disableTrackOver=true;this.el.addClass("x-resizable-pinned")}var s=this.el.getStyle("position");if(s!="absolute"&&s!="fixed"){this.el.setStyle("position","relative")}if(!this.handles){this.handles="s,e,se";if(this.multiDirectional){this.handles+=",n,w"}}if(this.handles=="all"){this.handles="n s e w ne nw se sw"}var i=this.handles.split(/\s*?[,;]\s*?| /);var y=Ext.Resizable.positions;for(var t=0,r=i.length;t<r;t++){if(i[t]&&y[i[t]]){var p=y[i[t]];this[p]=new Ext.Resizable.Handle(this,p,this.disableTrackOver,this.transparent)}}this.corner=this.southeast;if(this.handles.indexOf("n")!=-1||this.handles.indexOf("w")!=-1){this.updateBox=true}this.activeHandle=null;if(this.resizeChild){if(typeof this.resizeChild=="boolean"){this.resizeChild=Ext.get(this.el.dom.firstChild,true)}else{this.resizeChild=Ext.get(this.resizeChild,true)}}if(this.adjustments=="auto"){var z=this.resizeChild;var q=this.west,u=this.east,A=this.north,i=this.south;if(z&&(q||A)){z.position("relative");z.setLeft(q?q.el.getWidth():0);z.setTop(A?A.el.getHeight():0)}this.adjustments=[(u?-u.el.getWidth():0)+(q?-q.el.getWidth():0),(A?-A.el.getHeight():0)+(i?-i.el.getHeight():0)-1]}if(this.draggable){this.dd=this.dynamic?this.el.initDD(null):this.el.initDDProxy(null,{dragElId:this.proxy.id});this.dd.setHandleElId(this.resizeChild?this.resizeChild.id:this.el.id)}this.addEvents("beforeresize","resize");if(this.width!==null&&this.height!==null){this.resizeTo(this.width,this.height)}else{this.updateChildSize()}if(Ext.isIE){this.el.dom.style.zoom=1}Ext.Resizable.superclass.constructor.call(this)};Ext.extend(Ext.Resizable,Ext.util.Observable,{adjustments:[0,0],animate:false,disableTrackOver:false,draggable:false,duration:0.35,dynamic:false,easing:"easeOutStrong",enabled:true,handles:false,multiDirectional:false,height:null,width:null,heightIncrement:0,widthIncrement:0,minHeight:5,minWidth:5,maxHeight:10000,maxWidth:10000,minX:0,minY:0,pinned:false,preserveRatio:false,resizeChild:false,transparent:false,resizeTo:function(c,d){this.el.setSize(c,d);this.updateChildSize();this.fireEvent("resize",this,c,d,null)},startSizing:function(g,d){this.fireEvent("beforeresize",this,g);if(this.enabled){if(!this.overlay){this.overlay=this.el.createProxy({tag:"div",cls:"x-resizable-overlay",html:"&#160;"},Ext.getBody());this.overlay.unselectable();this.overlay.enableDisplayMode("block");this.overlay.on({scope:this,mousemove:this.onMouseMove,mouseup:this.onMouseUp})}this.overlay.setStyle("cursor",d.el.getStyle("cursor"));this.resizing=true;this.startBox=this.el.getBox();this.startPoint=g.getXY();this.offsets=[(this.startBox.x+this.startBox.width)-this.startPoint[0],(this.startBox.y+this.startBox.height)-this.startPoint[1]];this.overlay.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true));this.overlay.show();if(this.constrainTo){var e=Ext.get(this.constrainTo);this.resizeRegion=e.getRegion().adjust(e.getFrameWidth("t"),e.getFrameWidth("l"),-e.getFrameWidth("b"),-e.getFrameWidth("r"))}this.proxy.setStyle("visibility","hidden");this.proxy.show();this.proxy.setBox(this.startBox);if(!this.dynamic){this.proxy.setStyle("visibility","visible")}}},onMouseDown:function(d,c){if(this.enabled){c.stopEvent();this.activeHandle=d;this.startSizing(c,d)}},onMouseUp:function(c){this.activeHandle=null;var d=this.resizeElement();this.resizing=false;this.handleOut();this.overlay.hide();this.proxy.hide();this.fireEvent("resize",this,d.width,d.height,c)},updateChildSize:function(){if(this.resizeChild){var h=this.el;var g=this.resizeChild;var i=this.adjustments;if(h.dom.offsetWidth){var b=h.getSize(true);g.setSize(b.width+i[0],b.height+i[1])}if(Ext.isIE){setTimeout(function(){if(h.dom.offsetWidth){var a=h.getSize(true);g.setSize(a.width+i[0],a.height+i[1])}},10)}}},snap:function(k,i,g){if(!i||!k){return k}var j=k;var h=k%i;if(h>0){if(h>(i/2)){j=k+(i-h)}else{j=k-h}}return Math.max(g,j)},resizeElement:function(){var b=this.proxy.getBox();if(this.updateBox){this.el.setBox(b,false,this.animate,this.duration,null,this.easing)}else{this.el.setSize(b.width,b.height,this.animate,this.duration,null,this.easing)}this.updateChildSize();if(!this.dynamic){this.proxy.hide()}return b},constrain:function(e,i,g,h){if(e-i<g){i=e-g}else{if(e-i>h){i=e-h}}return i},onMouseMove:function(e){if(this.enabled&&this.activeHandle){try{if(this.resizeRegion&&!this.resizeRegion.contains(e.getPoint())){return}var y=this.curSize||this.startBox,Q=this.startBox.x,R=this.startBox.y,W=Q,X=R,P=y.width,w=y.height,V=P,N=w,O=this.minWidth,M=this.minHeight,F=this.maxWidth,G=this.maxHeight,T=this.widthIncrement,Y=this.heightIncrement,K=e.getXY(),I=-(this.startPoint[0]-Math.max(this.minX,K[0])),L=-(this.startPoint[1]-Math.max(this.minY,K[1])),S=this.activeHandle.position,x,U;switch(S){case"east":P+=I;P=Math.min(Math.max(O,P),F);break;case"south":w+=L;w=Math.min(Math.max(M,w),G);break;case"southeast":P+=I;w+=L;P=Math.min(Math.max(O,P),F);w=Math.min(Math.max(M,w),G);break;case"north":L=this.constrain(w,L,M,G);R+=L;w-=L;break;case"west":I=this.constrain(P,I,O,F);Q+=I;P-=I;break;case"northeast":P+=I;P=Math.min(Math.max(O,P),F);L=this.constrain(w,L,M,G);R+=L;w-=L;break;case"northwest":I=this.constrain(P,I,O,F);L=this.constrain(w,L,M,G);R+=L;w-=L;Q+=I;P-=I;break;case"southwest":I=this.constrain(P,I,O,F);w+=L;w=Math.min(Math.max(M,w),G);Q+=I;P-=I;break}var J=this.snap(P,T,O);var H=this.snap(w,Y,M);if(J!=P||H!=w){switch(S){case"northeast":R-=H-w;break;case"north":R-=H-w;break;case"southwest":Q-=J-P;break;case"west":Q-=J-P;break;case"northwest":Q-=J-P;R-=H-w;break}P=J;w=H}if(this.preserveRatio){switch(S){case"southeast":case"east":w=N*(P/V);w=Math.min(Math.max(M,w),G);P=V*(w/N);break;case"south":P=V*(w/N);P=Math.min(Math.max(O,P),F);w=N*(P/V);break;case"northeast":P=V*(w/N);P=Math.min(Math.max(O,P),F);w=N*(P/V);break;case"north":x=P;P=V*(w/N);P=Math.min(Math.max(O,P),F);w=N*(P/V);Q+=(x-P)/2;break;case"southwest":w=N*(P/V);w=Math.min(Math.max(M,w),G);x=P;P=V*(w/N);Q+=x-P;break;case"west":U=w;w=N*(P/V);w=Math.min(Math.max(M,w),G);R+=(U-w)/2;x=P;P=V*(w/N);Q+=x-P;break;case"northwest":x=P;U=w;w=N*(P/V);w=Math.min(Math.max(M,w),G);P=V*(w/N);R+=U-w;Q+=x-P;break}}this.proxy.setBounds(Q,R,P,w);if(this.dynamic){this.resizeElement()}}catch(h){}}},handleOver:function(){if(this.enabled){this.el.addClass("x-resizable-over")}},handleOut:function(){if(!this.resizing){this.el.removeClass("x-resizable-over")}},getEl:function(){return this.el},getResizeChild:function(){return this.resizeChild},destroy:function(d){Ext.destroy(this.dd,this.overlay,this.proxy);this.overlay=null;this.proxy=null;var g=Ext.Resizable.positions;for(var e in g){if(typeof g[e]!="function"&&this[g[e]]){this[g[e]].destroy()}}if(d){this.el.update("");Ext.destroy(this.el);this.el=null}this.purgeListeners()},syncHandleHeight:function(){var b=this.el.getHeight(true);if(this.west){this.west.el.setHeight(b)}if(this.east){this.east.el.setHeight(b)}}});Ext.Resizable.positions={n:"north",s:"south",e:"east",w:"west",se:"southeast",sw:"southwest",nw:"northwest",ne:"northeast"};Ext.Resizable.Handle=function(k,i,g,j){if(!this.tpl){var h=Ext.DomHelper.createTemplate({tag:"div",cls:"x-resizable-handle x-resizable-handle-{0}"});h.compile();Ext.Resizable.Handle.prototype.tpl=h}this.position=i;this.rz=k;this.el=this.tpl.append(k.el.dom,[this.position],true);this.el.unselectable();if(j){this.el.setOpacity(0)}this.el.on("mousedown",this.onMouseDown,this);if(!g){this.el.on({scope:this,mouseover:this.onMouseOver,mouseout:this.onMouseOut})}};Ext.Resizable.Handle.prototype={afterResize:function(b){},onMouseDown:function(b){this.rz.onMouseDown(this,b)},onMouseOver:function(b){this.rz.handleOver(this,b)},onMouseOut:function(b){this.rz.handleOut(this,b)},destroy:function(){Ext.destroy(this.el);this.el=null}};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,collapsible:false,initHidden:true,monitorResize:true,elements:"header,body",frame:true,floating:true,initComponent:function(){Ext.Window.superclass.initComponent.call(this);this.addEvents("resize","maximize","minimize","restore");if(this.initHidden===false){this.show()}else{this.hidden=true}},getState:function(){return Ext.apply(Ext.Window.superclass.getState.call(this)||{},this.getBox(true))},onRender:function(c,d){Ext.Window.superclass.onRender.call(this,c,d);if(this.plain){this.el.addClass("x-window-plain")}this.focusEl=this.el.createChild({tag:"a",href:"#",cls:"x-dlg-focus",tabIndex:"-1",html:"&#160;"});this.focusEl.swallowEvent("click",true);this.proxy=this.el.createProxy("x-window-proxy");this.proxy.enableDisplayMode("block");if(this.modal){this.mask=this.container.createChild({cls:"ext-el-mask"},this.el.dom);this.mask.enableDisplayMode("block");this.mask.hide();this.mon(this.mask,"click",this.focus,this)}this.initTools()},initEvents:function(){Ext.Window.superclass.initEvents.call(this);if(this.animateTarget){this.setAnimateTarget(this.animateTarget)}if(this.resizable){this.resizer=new Ext.Resizable(this.el,{minWidth:this.minWidth,minHeight:this.minHeight,handles:this.resizeHandles||"all",pinned:true,resizeElement:this.resizerAction});this.resizer.window=this;this.mon(this.resizer,"beforeresize",this.beforeResize,this)}if(this.draggable){this.header.addClass("x-window-draggable")}this.mon(this.el,"mousedown",this.toFront,this);this.manager=this.manager||Ext.WindowMgr;this.manager.register(this);if(this.maximized){this.maximized=false;this.maximize()}if(this.closable){var b=this.getKeyMap();b.on(27,this.onEsc,this);b.disable()}},initDraggable:function(){this.dd=new Ext.Window.DD(this)},onEsc:function(){this[this.closeAction]()},beforeDestroy:function(){if(this.rendered){this.hide();if(this.doAnchor){Ext.EventManager.removeResizeListener(this.doAnchor,this);Ext.EventManager.un(window,"scroll",this.doAnchor,this)}Ext.destroy(this.focusEl,this.resizer,this.dd,this.proxy,this.mask)}Ext.Window.superclass.beforeDestroy.call(this)},onDestroy:function(){if(this.manager){this.manager.unregister(this)}Ext.Window.superclass.onDestroy.call(this)},initTools:function(){if(this.minimizable){this.addTool({id:"minimize",handler:this.minimize.createDelegate(this,[])})}if(this.maximizable){this.addTool({id:"maximize",handler:this.maximize.createDelegate(this,[])});this.addTool({id:"restore",handler:this.restore.createDelegate(this,[]),hidden:true});this.mon(this.header,"dblclick",this.toggleMaximize,this)}if(this.closable){this.addTool({id:"close",handler:this[this.closeAction].createDelegate(this,[])})}},resizerAction:function(){var b=this.proxy.getBox();this.proxy.hide();this.window.handleResize(b);return b},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(c){var d=this.resizeBox;if(d.x!=c.x||d.y!=c.y){this.updateBox(c)}else{this.setSize(c)}this.focus();this.updateHandles();this.saveState();this.doLayout();this.fireEvent("resize",this,c.width,c.height)},focus:function(){var g=this.focusEl,e=this.defaultButton,d=typeof e;if(d!="undefined"){if(d=="number"&&this.fbar){g=this.fbar.items.get(e)}else{if(d=="string"){g=Ext.getCmp(e)}else{g=e}}}g=g||this.focusEl;g.focus.defer(10,g)},setAnimateTarget:function(b){b=Ext.get(b);this.animateTarget=b},beforeShow:function(){delete this.el.lastXY;delete this.el.lastLT;if(this.x===undefined||this.y===undefined){var d=this.el.getAlignToXY(this.container,"c-c");var c=this.el.translatePoints(d[0],d[1]);this.x=this.x===undefined?c.left:this.x;this.y=this.y===undefined?c.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(g,e,d){if(!this.rendered){this.render(Ext.getBody())}if(this.hidden===false){this.toFront();return this}if(this.fireEvent("beforeshow",this)===false){return this}if(e){this.on("show",e,d,{single:true})}this.hidden=false;if(g!==undefined){this.setAnimateTarget(g)}this.beforeShow();if(this.animateTarget){this.animShow()}else{this.afterShow()}return this},afterShow:function(c){this.proxy.hide();this.el.setStyle("display","block");this.el.show();if(this.maximized){this.fitContainer()}if(Ext.isMac&&Ext.isGecko){this.cascade(this.setAutoScroll)}if(this.monitorResize||this.modal||this.constrain||this.constrainHeader){Ext.EventManager.onWindowResize(this.onWindowResize,this)}this.doConstrain();this.doLayout();if(this.keyMap){this.keyMap.enable()}this.toFront();this.updateHandles();if(c&&(Ext.isIE||Ext.isWebKit)){var d=this.getSize();this.onResize(d.width,d.height)}this.fireEvent("show",this)},animShow:function(){this.proxy.show();this.proxy.setBox(this.animateTarget.getBox());this.proxy.setOpacity(0);var b=this.getBox(false);b.callback=this.afterShow.createDelegate(this,[true],false);b.scope=this;b.duration=0.25;b.easing="easeNone";b.opacity=0.5;b.block=true;this.el.setStyle("display","none");this.proxy.shift(b)},hide:function(g,e,d){if(this.hidden||this.fireEvent("beforehide",this)===false){return this}if(e){this.on("hide",e,d,{single:true})}this.hidden=true;if(g!==undefined){this.setAnimateTarget(g)}if(this.modal){this.mask.hide();Ext.getBody().removeClass("x-body-masked")}if(this.animateTarget){this.animHide()}else{this.el.hide();this.afterHide()}return this},afterHide:function(){this.proxy.hide();if(this.monitorResize||this.modal||this.constrain||this.constrainHeader){Ext.EventManager.removeResizeListener(this.onWindowResize,this)}if(this.keyMap){this.keyMap.disable()}this.fireEvent("hide",this)},animHide:function(){this.proxy.setOpacity(0.5);this.proxy.show();var d=this.getBox(false);this.proxy.setBox(d);this.el.hide();var b=this.animateTarget.getBox();b.callback=this.afterHide;b.scope=this;b.duration=0.25;b.easing="easeNone";b.block=true;b.opacity=0;this.proxy.shift(b)},onWindowResize:function(){if(this.maximized){this.fitContainer()}if(this.modal){this.mask.setSize("100%","100%");var b=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 d;if(this.constrain){d={right:this.el.shadowOffset,left:this.el.shadowOffset,bottom:this.el.shadowOffset}}else{var e=this.getSize();d={right:-(e.width-100),bottom:-(e.height-25)}}var g=this.el.getConstrainToXY(this.container,true,d);if(g){this.setPosition(g[0],g[1])}}},ghost:function(e){var g=this.createGhost(e);var d=this.getBox(true);g.setLeftTop(d.x,d.y);g.setWidth(d.width);this.el.hide();this.activeGhost=g;return g},unghost:function(c,d){if(!this.activeGhost){return}if(c!==false){this.el.show();this.focus();if(Ext.isMac&&Ext.isGecko){this.cascade(this.setAutoScroll)}}if(d!==false){this.setPosition(this.activeGhost.getLeft(true),this.activeGhost.getTop(true))}this.activeGhost.hide();this.activeGhost.remove();delete this.activeGhost},minimize:function(){this.fireEvent("minimize",this);return this},close:function(){if(this.fireEvent("beforeclose",this)!==false){this.hide(null,function(){this.fireEvent("close",this);this.destroy()},this)}},maximize:function(){if(!this.maximized){this.expand(false);this.restoreSize=this.getSize();this.restorePos=this.getPosition(true);if(this.maximizable){this.tools.maximize.hide();this.tools.restore.show()}this.maximized=true;this.el.disableShadow();if(this.dd){this.dd.lock()}if(this.collapsible){this.tools.toggle.hide()}this.el.addClass("x-window-maximized");this.container.addClass("x-window-maximized-ct");this.setPosition(0,0);this.fitContainer();this.fireEvent("maximize",this)}return this},restore:function(){if(this.maximized){this.el.removeClass("x-window-maximized");this.tools.restore.hide();this.tools.maximize.show();this.setPosition(this.restorePos[0],this.restorePos[1]);this.setSize(this.restoreSize.width,this.restoreSize.height);delete this.restorePos;delete this.restoreSize;this.maximized=false;this.el.enableShadow(true);if(this.dd){this.dd.unlock()}if(this.collapsible){this.tools.toggle.show()}this.container.removeClass("x-window-maximized-ct");this.doConstrain();this.fireEvent("restore",this)}return this},toggleMaximize:function(){return this[this.maximized?"restore":"maximize"]()},fitContainer:function(){var b=this.container.getViewSize();this.setSize(b.width,b.height)},setZIndex:function(b){if(this.modal){this.mask.setStyle("z-index",b)}this.el.setZIndex(++b);b+=5;if(this.resizer){this.resizer.proxy.setStyle("z-index",++b)}this.lastZIndex=b},alignTo:function(e,g,i){var h=this.el.getAlignToXY(e,g,i);this.setPagePosition(h[0],h[1]);return this},anchorTo:function(k,i,j,g){if(this.doAnchor){Ext.EventManager.removeResizeListener(this.doAnchor,this);Ext.EventManager.un(window,"scroll",this.doAnchor,this)}this.doAnchor=function(){this.alignTo(k,i,j)};Ext.EventManager.onWindowResize(this.doAnchor,this);var h=typeof g;if(h!="undefined"){Ext.EventManager.on(window,"scroll",this.doAnchor,this,{buffer:h=="number"?g:50})}this.doAnchor();return this},toFront:function(b){if(this.manager.bringToFront(this)){if(!b||!b.getTarget().focus){this.focus()}}return this},setActive:function(b){if(b){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 b=this.el.getAlignToXY(this.container,"c-c");this.setPagePosition(b[0],b[1]);return this}});Ext.reg("window",Ext.Window);Ext.Window.DD=function(b){this.win=b;Ext.Window.DD.superclass.constructor.call(this,b.el.id,"WindowDD-"+b.id);this.setHandleElId(b.header.id);this.scroll=false};Ext.extend(Ext.Window.DD,Ext.dd.DD,{moveOnly:true,headerOffsets:[100,25],startDrag:function(){var e=this.win;this.proxy=e.ghost();if(e.constrain!==false){var g=e.el.shadowOffset;this.constrainTo(e.container,{right:g,left:g,bottom:g})}else{if(e.constrainHeader!==false){var d=this.proxy.getSize();this.constrainTo(e.container,{right:-(d.width-this.headerOffsets[0]),bottom:-(d.height-this.headerOffsets[1])})}}},b4Drag:Ext.emptyFn,onDrag:function(b){this.alignElWithMouse(this.proxy,b.getPageX(),b.getPageY())},endDrag:function(b){this.win.unghost();this.win.saveState()}});Ext.WindowGroup=function(){var l={};var n=[];var m=null;var o=function(a,b){return(!a._lastAccess||a._lastAccess<b._lastAccess)?-1:1};var k=function(){var b=n,d=b.length;if(d>0){b.sort(o);var c=b[0].manager.zseed;for(var a=0;a<d;a++){var e=b[a];if(e&&!e.hidden){e.setZIndex(c+(a*10))}}}j()};var i=function(a){if(a!=m){if(m){m.setActive(false)}m=a;if(a){a.setActive(true)}}};var j=function(){for(var a=n.length-1;a>=0;--a){if(!n[a].hidden){i(n[a]);return}}i(null)};return{zseed:9000,register:function(a){l[a.id]=a;n.push(a);a.on("hide",j)},unregister:function(a){delete l[a.id];a.un("hide",j);n.remove(a)},get:function(a){return typeof a=="object"?a:l[a]},bringToFront:function(a){a=this.get(a);if(a!=m){a._lastAccess=new Date().getTime();k();return true}return false},sendToBack:function(a){a=this.get(a);a._lastAccess=-(new Date().getTime());k();return a},hideAll:function(){for(var a in l){if(l[a]&&typeof l[a]!="function"&&l[a].isVisible()){l[a].hide()}}},getActive:function(){return m},getBy:function(b,c){var a=[];for(var d=n.length-1;d>=0;--d){var e=n[d];if(b.call(c||e,e)!==false){a.push(e)}}return a},each:function(b,c){for(var a in l){if(l[a]&&typeof l[a]!="function"){if(b.call(c||l[a],l[a])===false){return}}}}}};Ext.WindowMgr=new Ext.WindowGroup();Ext.MessageBox=function(){var x,N,B,y;var I,F,z,O,E,C,H,J;var A,w,D,M="";var L=function(a){if(x.isVisible()){x.hide();v();Ext.callback(N.fn,N.scope||window,[a,w.dom.value,N],1)}};var v=function(){if(N&&N.cls){x.el.removeClass(N.cls)}E.reset()};var K=function(a,c,b){if(N&&N.closable!==false){x.hide();v()}if(b){b.stopEvent()}};var G=function(c){var a=0;if(!c){A.ok.hide();A.cancel.hide();A.yes.hide();A.no.hide();return a}x.footer.dom.style.display="";for(var b in A){if(typeof A[b]!="function"){if(c[b]){A[b].show();A[b].setText(typeof c[b]=="string"?c[b]:Ext.MessageBox.buttonText[b]);a+=A[b].el.getWidth()+15}else{A[b].hide()}}}return a};return{getDialog:function(c){if(!x){x=new Ext.Window({autoCreate:true,title:c,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(N&&N.buttons&&N.buttons.no&&!N.buttons.cancel){L("no")}else{L("cancel")}}});A={};var b=this.buttonText;A.ok=x.addButton(b.ok,L.createCallback("ok"));A.yes=x.addButton(b.yes,L.createCallback("yes"));A.no=x.addButton(b.no,L.createCallback("no"));A.cancel=x.addButton(b.cancel,L.createCallback("cancel"));A.ok.hideMode=A.yes.hideMode=A.no.hideMode=A.cancel.hideMode="offsets";x.render(document.body);x.getEl().addClass("x-window-dlg");B=x.mask;I=x.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>'});H=Ext.get(I.dom.firstChild);var a=I.dom.childNodes[1];F=Ext.get(a.firstChild);z=Ext.get(a.childNodes[2].firstChild);z.enableDisplayMode();z.addKeyListener([10,13],function(){if(x.isVisible()&&N&&N.buttons){if(N.buttons.ok){L("ok")}else{if(N.buttons.yes){L("yes")}}}});O=Ext.get(a.childNodes[2].childNodes[1]);O.enableDisplayMode();E=new Ext.ProgressBar({renderTo:I});I.createChild({cls:"x-clear"})}return x},updateText:function(d){if(!x.isVisible()&&!N.width){x.setSize(this.maxWidth,100)}F.update(d||"&#160;");var b=M!=""?(H.getWidth()+H.getMargins("lr")):0;var g=F.getWidth()+F.getMargins("lr");var e=x.getFrameWidth("lr");var a=x.body.getFrameWidth("lr");if(Ext.isIE&&b>0){b+=3}var c=Math.max(Math.min(N.width||b+g+e+a,this.maxWidth),Math.max(N.minWidth||this.minWidth,D||0));if(N.prompt===true){w.setWidth(c-b-e-a)}if(N.progress===true||N.wait===true){E.setSize(c-b-e-a)}if(Ext.isIE&&c==D){c+=4}x.setSize(c,"auto").center();return this},updateProgress:function(b,c,a){E.updateProgress(b,c);if(a){this.updateText(a)}return this},isVisible:function(){return x&&x.isVisible()},hide:function(){var a=x?x.activeGhost:null;if(this.isVisible()||a){x.hide();v();if(a){x.unghost(false,false)}}return this},show:function(e){if(this.isVisible()){this.hide()}N=e;var d=this.getDialog(N.title||"&#160;");d.setTitle(N.title||"&#160;");var c=(N.closable!==false&&N.progress!==true&&N.wait!==true);d.tools.close.setDisplayed(c);w=z;N.prompt=N.prompt||(N.multiline?true:false);if(N.prompt){if(N.multiline){z.hide();O.show();O.setHeight(typeof N.multiline=="number"?N.multiline:this.defaultTextHeight);w=O}else{z.show();O.hide()}}else{z.hide();O.hide()}w.dom.value=N.value||"";if(N.prompt){d.focusEl=w}else{var a=N.buttons;var b=null;if(a&&a.ok){b=A.ok}else{if(a&&a.yes){b=A.yes}}if(b){d.focusEl=b}}if(N.iconCls){d.setIconClass(N.iconCls)}this.setIcon(N.icon);if(N.cls){d.el.addClass(N.cls)}d.proxyDrag=N.proxyDrag===true;d.modal=N.modal!==false;d.mask=N.modal!==false?B:false;d.on("show",function(){d.keyMap.setDisabled(c!==true);d.doLayout();this.setIcon(N.icon);D=G(N.buttons);E.setVisible(N.progress===true||N.wait===true);this.updateProgress(0,N.progressText);this.updateText(N.msg);if(N.wait===true){E.wait(N.waitConfig)}},this,{single:true});if(!d.isVisible()){document.body.appendChild(x.el.dom);d.setAnimateTarget(N.animEl);d.show(N.animEl)}return this},setIcon:function(a){if(a&&a!=""){H.removeClass("x-hidden");H.replaceClass(M,a);I.addClass("x-dlg-icon");M=a}else{H.replaceClass(M,"x-hidden");I.removeClass("x-dlg-icon");M=""}return this},progress:function(a,b,c){this.show({title:a,msg:b,buttons:false,progress:true,closable:false,minWidth:this.minProgressWidth,progressText:c});return this},wait:function(a,b,c){this.show({title:b,msg:a,buttons:false,closable:false,wait:true,modal:true,minWidth:this.minProgressWidth,waitConfig:c});return this},alert:function(d,a,b,c){this.show({title:d,msg:a,buttons:this.OK,fn:b,scope:c});return this},confirm:function(d,a,b,c){this.show({title:d,msg:a,buttons:this.YESNO,fn:b,scope:c,icon:this.QUESTION});return this},prompt:function(b,e,a,c,d,g){this.show({title:b,msg:e,buttons:this.OKCANCEL,fn:a,minWidth:250,scope:c,prompt:true,multiline:d,value:g});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:110,minProgressWidth:250,buttonText:{ok:"OK",cancel:"Cancel",yes:"Yes",no:"No"}}}();Ext.Msg=Ext.MessageBox;Ext.dd.PanelProxy=function(d,c){this.panel=d;this.id=this.panel.id+"-ddproxy";Ext.apply(this,c)};Ext.dd.PanelProxy.prototype={insertProxy:true,setStatus:Ext.emptyFn,reset:Ext.emptyFn,update:Ext.emptyFn,stop:Ext.emptyFn,sync:Ext.emptyFn,getEl:function(){return this.ghost},getGhost:function(){return this.ghost},getProxy:function(){return this.proxy},hide:function(){if(this.ghost){if(this.proxy){this.proxy.remove();delete this.proxy}this.panel.el.dom.style.display="";this.ghost.remove();delete this.ghost}},show:function(){if(!this.ghost){this.ghost=this.panel.createGhost(undefined,undefined,Ext.getBody());this.ghost.setXY(this.panel.el.getXY());if(this.insertProxy){this.proxy=this.panel.el.insertSibling({cls:"x-panel-dd-spacer"});this.proxy.setSize(this.panel.getSize())}this.panel.el.dom.style.display="none"}},repair:function(d,g,e){this.hide();if(typeof g=="function"){g.call(e||this)}},moveProxy:function(d,c){if(this.proxy){d.insertBefore(this.proxy.dom,c)}}};Ext.Panel.DD=function(d,e){this.panel=d;this.dragData={panel:d};this.proxy=new Ext.dd.PanelProxy(d,e);Ext.Panel.DD.superclass.constructor.call(this,d.el,e);var g=d.header;if(g){this.setHandleElId(g.id)}(g?g:this.panel.body).setStyle("cursor","move");this.scroll=false};Ext.extend(Ext.Panel.DD,Ext.dd.DragSource,{showFrame:Ext.emptyFn,startDrag:Ext.emptyFn,b4StartDrag:function(d,c){this.proxy.show()},b4MouseDown:function(d){var e=d.getPageX();var g=d.getPageY();this.autoOffset(e,g)},onInitDrag:function(d,c){this.onStartDrag(d,c);return true},createFrame:Ext.emptyFn,getDragEl:function(b){return this.proxy.ghost.dom},endDrag:function(b){this.proxy.hide();this.panel.saveState()},autoOffset:function(d,c){d-=this.startPageX;c-=this.startPageY;this.setDelta(d,c)}});Ext.state.Provider=function(){this.addEvents("statechange");this.state={};Ext.state.Provider.superclass.constructor.call(this)};Ext.extend(Ext.state.Provider,Ext.util.Observable,{get:function(c,d){return typeof this.state[c]=="undefined"?d:this.state[c]},clear:function(b){delete this.state[b];this.fireEvent("statechange",this,b,null)},set:function(d,c){this.state[d]=c;this.fireEvent("statechange",this,d,c)},decodeValue:function(u){var i=/^(a|n|d|b|s|o)\:(.*)$/;var s=i.exec(unescape(u));if(!s||!s[1]){return}var p=s[1];var n=s[2];switch(p){case"n":return parseFloat(n);case"d":return new Date(Date.parse(n));case"b":return(n=="1");case"a":var o=[];var m=n.split("^");for(var t=0,r=m.length;t<r;t++){o.push(this.decodeValue(m[t]))}return o;case"o":var o={};var m=n.split("^");for(var t=0,r=m.length;t<r;t++){var q=m[t].split("=");o[q[0]]=this.decodeValue(q[1])}return o;default:return n}},encodeValue:function(m){var h;if(typeof m=="number"){h="n:"+m}else{if(typeof m=="boolean"){h="b:"+(m?"1":"0")}else{if(Ext.isDate(m)){h="d:"+m.toGMTString()}else{if(Ext.isArray(m)){var j="";for(var k=0,i=m.length;k<i;k++){j+=this.encodeValue(m[k]);if(k!=i-1){j+="^"}}h="a:"+j}else{if(typeof m=="object"){var j="";for(var l in m){if(typeof m[l]!="function"&&m[l]!==undefined){j+=l+"="+this.encodeValue(m[l])+"^"}}h="o:"+j.substring(0,j.length-1)}else{h="s:"+m}}}}}return escape(h)}});Ext.state.Manager=function(){var b=new Ext.state.Provider();return{setProvider:function(a){b=a},get:function(d,a){return b.get(d,a)},set:function(a,d){b.set(a,d)},clear:function(a){b.clear(a)},getProvider:function(){return b}}}();Ext.state.CookieProvider=function(b){Ext.state.CookieProvider.superclass.constructor.call(this);this.path="/";this.expires=new Date(new Date().getTime()+(1000*60*60*24*7));this.domain=null;this.secure=false;Ext.apply(this,b);this.state=this.readCookies()};Ext.extend(Ext.state.CookieProvider,Ext.state.Provider,{set:function(d,c){if(typeof c=="undefined"||c===null){this.clear(d);return}this.setCookie(d,c);Ext.state.CookieProvider.superclass.set.call(this,d,c)},clear:function(b){this.clearCookie(b);Ext.state.CookieProvider.superclass.clear.call(this,b)},readCookies:function(){var m={};var j=document.cookie+";";var c=/\s?(.*?)=(.*?);/g;var k;while((k=c.exec(j))!=null){var i=k[1];var l=k[2];if(i&&i.substring(0,3)=="ys-"){m[i.substr(3)]=this.decodeValue(l)}}return m},setCookie:function(d,c){document.cookie="ys-"+d+"="+this.encodeValue(c)+((this.expires==null)?"":("; expires="+this.expires.toGMTString()))+((this.path==null)?"":("; path="+this.path))+((this.domain==null)?"":("; domain="+this.domain))+((this.secure==true)?"; secure":"")},clearCookie:function(b){document.cookie="ys-"+b+"=null; expires=Thu, 01-Jan-70 00:00:01 GMT"+((this.path==null)?"":("; path="+this.path))+((this.domain==null)?"":("; domain="+this.domain))+((this.secure==true)?"; secure":"")}});Ext.DataView=Ext.extend(Ext.BoxComponent,{selectedClass:"x-view-selected",emptyText:"",deferEmptyText:true,trackOver:false,last:false,initComponent:function(){Ext.DataView.superclass.initComponent.call(this);if(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 c=this.getTemplateTarget();c.update("");var d=this.store.getRange();if(d.length<1){if(!this.deferEmptyText||this.hasSkippedEmptyText){c.update(this.emptyText)}this.all.clear()}else{this.tpl.overwrite(c,this.collectData(d,0));this.all.fill(Ext.query(this.itemSelector,c.dom));this.updateIndexes(0)}this.hasSkippedEmptyText=true},getTemplateTarget:function(){return this.el},prepareData:function(b){return b},collectData:function(g,i){var j=[];for(var k=0,h=g.length;k<h;k++){j[j.length]=this.prepareData(g[k].data,i+k,g[k])}return j},bufferRender:function(d){var c=document.createElement("div");this.tpl.overwrite(c,this.collectData(d));return Ext.query(this.itemSelector,c)},onUpdate:function(j,i){var h=this.store.indexOf(i);var k=this.isSelected(h);var m=this.all.elements[h];var l=this.bufferRender([i],h)[0];this.all.replaceElement(h,l,true);if(k){this.selected.replaceElement(m,l);this.all.item(h).addClass(this.selectedClass)}this.updateIndexes(h,h)},onAdd:function(j,l,k){if(this.all.getCount()===0){this.refresh();return}var m=this.bufferRender(l,k),i,a=this.all.elements;if(k<this.all.getCount()){i=this.all.item(k).insertSibling(m,"before",true);a.splice.apply(a,[k,0].concat(m))}else{i=this.all.last().insertSibling(m,"after",true);a.push.apply(a,m)}this.updateIndexes(k)},onRemove:function(g,e,d){this.deselect(d);this.all.removeElement(d,true);this.updateIndexes(d);if(this.store.getCount()===0){this.refresh()}},refreshNode:function(b){this.onUpdate(this.store,this.store.getAt(b))},updateIndexes:function(h,i){var e=this.all.elements;h=h||0;i=i||((i===0)?0:(e.length-1));for(var g=h;g<=i;g++){e[g].viewIndex=g}},getStore:function(){return this.store},bindStore:function(d,c){if(!c&&this.store){this.store.un("beforeload",this.onBeforeLoad,this);this.store.un("datachanged",this.refresh,this);this.store.un("add",this.onAdd,this);this.store.un("remove",this.onRemove,this);this.store.un("update",this.onUpdate,this);this.store.un("clear",this.refresh,this);if(d!==this.store&&this.store.autoDestroy){this.store.destroy()}}if(d){d=Ext.StoreMgr.lookup(d);d.on({scope:this,beforeload:this.onBeforeLoad,datachanged:this.refresh,add:this.onAdd,remove:this.onRemove,update:this.onUpdate,clear:this.refresh})}this.store=d;if(d){this.refresh()}},findItemFromChild:function(b){return Ext.fly(b).findParent(this.itemSelector,this.getTemplateTarget())},onClick:function(g){var d=g.getTarget(this.itemSelector,this.getTemplateTarget());if(d){var e=this.indexOf(d);if(this.onItemClick(d,e,g)!==false){this.fireEvent("click",this,e,d,g)}}else{if(this.fireEvent("containerclick",this,g)!==false){this.onContainerClick(g)}}},onContainerClick:function(b){this.clearSelections()},onContextMenu:function(c){var d=c.getTarget(this.itemSelector,this.getTemplateTarget());if(d){this.fireEvent("contextmenu",this,this.indexOf(d),d,c)}else{this.fireEvent("containercontextmenu",this,c)}},onDblClick:function(c){var d=c.getTarget(this.itemSelector,this.getTemplateTarget());if(d){this.fireEvent("dblclick",this,this.indexOf(d),d,c)}},onMouseOver:function(c){var d=c.getTarget(this.itemSelector,this.getTemplateTarget());if(d&&d!==this.lastItem){this.lastItem=d;Ext.fly(d).addClass(this.overClass);this.fireEvent("mouseenter",this,this.indexOf(d),d,c)}},onMouseOut:function(b){if(this.lastItem){if(!b.within(this.lastItem,true,true)){Ext.fly(this.lastItem).removeClass(this.overClass);this.fireEvent("mouseleave",this,this.indexOf(this.lastItem),this.lastItem,b);delete this.lastItem}}},onItemClick:function(d,e,g){if(this.fireEvent("beforeclick",this,e,d,g)===false){return false}if(this.multiSelect){this.doMultiSelection(d,e,g);g.preventDefault()}else{if(this.singleSelect){this.doSingleSelection(d,e,g);g.preventDefault()}}return true},doSingleSelection:function(d,e,g){if(g.ctrlKey&&this.isSelected(e)){this.deselect(e)}else{this.select(e,false)}},doMultiSelection:function(i,g,h){if(h.shiftKey&&this.last!==false){var e=this.last;this.selectRange(e,g,h.ctrlKey);this.last=e}else{if((h.ctrlKey||this.simpleSelect)&&this.isSelected(g)){this.deselect(g)}else{this.select(g,h.ctrlKey||h.shiftKey||this.simpleSelect)}}},getSelectionCount:function(){return this.selected.getCount()},getSelectedNodes:function(){return this.selected.elements},getSelectedIndexes:function(){var e=[],h=this.selected.elements;for(var i=0,g=h.length;i<g;i++){e.push(h[i].viewIndex)}return e},getSelectedRecords:function(){var h=[],i=this.selected.elements;for(var e=0,g=i.length;e<g;e++){h[h.length]=this.store.getAt(i[e].viewIndex)}return h},getRecords:function(g){var i=[],j=g;for(var k=0,h=j.length;k<h;k++){i[i.length]=this.store.getAt(j[k].viewIndex)}return i},getRecord:function(b){return this.store.getAt(b.viewIndex)},clearSelections:function(d,c){if((this.multiSelect||this.singleSelect)&&this.selected.getCount()>0){if(!c){this.selected.removeClass(this.selectedClass)}this.selected.clear();this.last=false;if(!d){this.fireEvent("selectionchange",this,this.selected.elements)}}},isSelected:function(b){return this.selected.contains(this.getNode(b))},deselect:function(b){if(this.isSelected(b)){b=this.getNode(b);this.selected.removeElement(b);if(this.last==b.viewIndex){this.last=false}Ext.fly(b).removeClass(this.selectedClass);this.fireEvent("selectionchange",this,this.selected.elements)}},select:function(l,j,h){if(Ext.isArray(l)){if(!j){this.clearSelections(true)}for(var m=0,i=l.length;m<i;m++){this.select(l[m],true,true)}if(!h){this.fireEvent("selectionchange",this,this.selected.elements)}}else{var k=this.getNode(l);if(!j){this.clearSelections(true)}if(k&&!this.isSelected(k)){if(this.fireEvent("beforeselect",this,k,this.selected.elements)!==false){Ext.fly(k).addClass(this.selectedClass);this.selected.add(k);this.last=k.viewIndex;if(!h){this.fireEvent("selectionchange",this,this.selected.elements)}}}}},selectRange:function(g,e,d){if(!d){this.clearSelections(true)}this.select(this.getNodes(g,e),true)},getNode:function(b){if(Ext.isString(b)){return document.getElementById(b)}else{if(Ext.isNumber(b)){return this.all.elements[b]}}return b},getNodes:function(i,h){var j=this.all.elements;i=i||0;h=!Ext.isDefined(h)?Math.max(j.length-1,0):h;var g=[],k;if(i<=h){for(k=i;k<=h&&j[k];k++){g.push(j[k])}}else{for(k=i;k>=h&&j[k];k--){g.push(j[k])}}return g},indexOf:function(b){b=this.getNode(b);if(Ext.isNumber(b.viewIndex)){return b.viewIndex}return this.all.indexOf(b)},onBeforeLoad:function(){if(this.loadingText){this.clearSelections(false,true);this.getTemplateTarget().update('<div class="loading-indicator">'+this.loadingText+"</div>");this.all.clear()}},onDestroy:function(){Ext.DataView.superclass.onDestroy.call(this);this.bindStore(null)}});Ext.DataView.prototype.setStore=Ext.DataView.prototype.bindStore;Ext.reg("dataview",Ext.DataView);Ext.ListView=Ext.extend(Ext.DataView,{itemSelector:"dl",selectedClass:"x-list-selected",overClass:"x-list-over",scrollOffset:19,columnResize:true,columnSort:true,initComponent:function(){if(this.columnResize){this.colResizer=new Ext.ListView.ColumnResizer(this.colResizer);this.colResizer.init(this)}if(this.columnSort){this.colSorter=new Ext.ListView.Sorter(this.columnSort);this.colSorter.init(this)}if(!this.internalTpl){this.internalTpl=new Ext.XTemplate('<div class="x-list-header"><div class="x-list-header-inner">','<tpl for="columns">','<div style="width:{width}%;text-align:{align};"><em unselectable="on" id="',this.id,'-xlhd-{#}">',"{header}","</em></div>","</tpl>",'<div class="x-clear"></div>',"</div></div>",'<div class="x-list-body"><div class="x-list-body-inner">',"</div></div>")}if(!this.tpl){this.tpl=new Ext.XTemplate('<tpl for="rows">',"<dl>",'<tpl for="parent.columns">','<dt style="width:{width}%;text-align:{align};"><em unselectable="on">',"{[values.tpl.apply(parent)]}","</em></dt>","</tpl>",'<div class="x-clear"></div>',"</dl>","</tpl>")}var j=this.columns,o=0,n=0,i=j.length;for(var p=0;p<i;p++){var c=j[p];if(!c.tpl){c.tpl=new Ext.XTemplate("{"+c.dataIndex+"}")}else{if(Ext.isString(c.tpl)){c.tpl=new Ext.XTemplate(c.tpl)}}c.align=c.align||"left";if(Ext.isNumber(c.width)){c.width*=100;o+=c.width;n++}}if(n<i){var r=i-n;if(o<100){var s=((100-o)/r);for(var q=0;q<i;q++){var c=j[q];if(!Ext.isNumber(c.width)){c.width=s}}}}Ext.ListView.superclass.initComponent.call(this)},onRender:function(){Ext.ListView.superclass.onRender.apply(this,arguments);this.internalTpl.overwrite(this.el,{columns:this.columns});this.innerBody=Ext.get(this.el.dom.childNodes[1].firstChild);this.innerHd=Ext.get(this.el.dom.firstChild.firstChild);if(this.hideHeaders){this.el.dom.firstChild.style.display="none"}},getTemplateTarget:function(){return this.innerBody},collectData:function(){var b=Ext.ListView.superclass.collectData.apply(this,arguments);return{columns:this.columns,rows:b}},verifyInternalSize:function(){if(this.lastSize){this.onResize(this.lastSize.width,this.lastSize.height)}},onResize:function(h,l){var k=this.innerBody.dom;var j=this.innerHd.dom;if(!k){return}var m=k.parentNode;if(Ext.isNumber(h)){var i=h-this.scrollOffset;if(this.reserveScrollOffset||((m.offsetWidth-m.clientWidth)>10)){k.style.width=i+"px";j.style.width=i+"px"}else{k.style.width=h+"px";j.style.width=h+"px";setTimeout(function(){if((m.offsetWidth-m.clientWidth)>10){k.style.width=i+"px";j.style.width=i+"px"}},10)}}if(Ext.isNumber(l=="number")){m.style.height=(l-j.parentNode.offsetHeight)+"px"}},updateIndexes:function(){Ext.ListView.superclass.updateIndexes.apply(this,arguments);this.verifyInternalSize()},findHeaderIndex:function(j){j=j.dom||j;var h=j.parentNode,k=h.parentNode.childNodes;for(var c=0,i;i=k[c];c++){if(i==h){return c}}return -1},setHdWidths:function(){var i=this.innerHd.dom.getElementsByTagName("div");for(var e=0,h=this.columns,g=h.length;e<g;e++){i[e].style.width=h[e].width+"%"}}});Ext.reg("listview",Ext.ListView);Ext.ListView.ColumnResizer=Ext.extend(Ext.util.Observable,{minPct:0.05,constructor:function(b){Ext.apply(this,b);Ext.ListView.ColumnResizer.superclass.constructor.call(this)},init:function(b){this.view=b;b.on("render",this.initEvents,this)},initEvents:function(b){b.mon(b.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(b.innerHd);b.on("beforedestroy",this.tracker.destroy,this.tracker)},handleHdMove:function(l,o){var e=5;var k=l.getPageX();var m=l.getTarget("em",3,true);if(m){var n=m.getRegion();var p=m.dom.style;var q=m.dom.parentNode;if(k-n.left<=e&&q!=q.parentNode.firstChild){this.activeHd=Ext.get(q.previousSibling.firstChild);p.cursor=Ext.isWebKit?"e-resize":"col-resize"}else{if(n.right-k<=e&&q!=q.parentNode.lastChild.previousSibling){this.activeHd=m;p.cursor=Ext.isWebKit?"w-resize":"col-resize"}else{delete this.activeHd;p.cursor=""}}}},onBeforeStart:function(b){this.dragHd=this.activeHd;return !!this.dragHd},onStart:function(g){this.view.disableHeaders=true;this.proxy=this.view.el.createChild({cls:"x-list-resizer"});this.proxy.setHeight(this.view.el.getHeight());var e=this.tracker.getXY()[0];var d=this.view.innerHd.getWidth();this.hdX=this.dragHd.getX();this.hdIndex=this.view.findHeaderIndex(this.dragHd);this.proxy.setX(this.hdX);this.proxy.setWidth(e-this.hdX);this.minWidth=d*this.minPct;this.maxWidth=d-(this.minWidth*(this.view.columns.length-1-this.hdIndex))},onDrag:function(c){var d=this.tracker.getXY()[0];this.proxy.setWidth((d-this.hdX).constrain(this.minWidth,this.maxWidth))},onEnd:function(w){var y=this.proxy.getWidth();this.proxy.remove();var z=this.hdIndex;var t=this.view,A=t.columns,x=A.length;var i=this.view.innerHd.getWidth(),B=this.minPct*100;var e=Math.ceil((y*100)/i);var s=A[z].width-e;var u=Math.floor(s/(x-1-z));var v=s-(u*(x-1-z));for(var C=z+1;C<x;C++){var D=A[C].width+u;var E=Math.max(B,D);if(D!=E){v+=D-E}A[C].width=E}A[z].width=e;A[z+1].width+=v;delete this.dragHd;this.view.setHdWidths();this.view.refresh();setTimeout(function(){t.disableHeaders=false},100)}});Ext.ListView.Sorter=Ext.extend(Ext.util.Observable,{sortClasses:["sort-asc","sort-desc"],constructor:function(b){Ext.apply(this,b);Ext.ListView.Sorter.superclass.constructor.call(this)},init:function(b){this.view=b;b.on("render",this.initEvents,this)},initEvents:function(b){b.mon(b.innerHd,"click",this.onHdClick,this);b.innerHd.setStyle("cursor","pointer");b.mon(b.store,"datachanged",this.updateSortState,this);this.updateSortState.defer(10,this,[b.store])},updateSortState:function(o){var l=o.getSortState();if(!l){return}this.sortState=l;var m=this.view.columns,k=-1;for(var n=0,j=m.length;n<j;n++){if(m[n].dataIndex==l.field){k=n;break}}if(k!=-1){var i=l.direction;this.updateSortIcon(k,i)}},updateSortIcon:function(e,g){var h=this.sortClasses;var i=this.view.innerHd.select("em").removeClass(h);i.item(e).addClass(h[g=="DESC"?1:0])},onHdClick:function(g){var d=g.getTarget("em",3);if(d&&!this.view.disableHeaders){var e=this.view.findHeaderIndex(d);this.view.store.sort(this.view.columns[e].dataIndex)}}});Ext.TabPanel=Ext.extend(Ext.Panel,{monitorResize:true,deferredRender:true,tabWidth:120,minTabWidth:30,resizeTabs:false,enableTabScroll:false,scrollIncrement:0,scrollRepeatInterval:400,scrollDuration:0.35,animScroll:true,tabPosition:"top",baseCls:"x-tab-panel",autoTabs:false,autoTabSelector:"div.x-tab",activeTab:null,tabMargin:2,plain:false,wheelIncrement:20,idDelimiter:"__",itemCls:"x-tab-item",elements:"body",headerAsText:false,frame:false,hideBorders:true,initComponent:function(){this.frame=false;Ext.TabPanel.superclass.initComponent.call(this);this.addEvents("beforetabchange","tabchange","contextmenu");this.setLayout(new Ext.layout.CardLayout(Ext.apply({layoutOnCardChange:this.layoutOnTabChange,deferredRender:this.deferredRender},this.layoutConfig)));if(this.tabPosition=="top"){this.elements+=",header";this.stripTarget="header"}else{this.elements+=",footer";this.stripTarget="footer"}if(!this.stack){this.stack=Ext.TabPanel.AccessStack()}this.initItems()},onRender:function(m,i){Ext.TabPanel.superclass.onRender.call(this,m,i);if(this.plain){var j=this.tabPosition=="top"?"header":"footer";this[j].addClass("x-tab-panel-"+j+"-plain")}var h=this[this.stripTarget];this.stripWrap=h.createChild({cls:"x-tab-strip-wrap",cn:{tag:"ul",cls:"x-tab-strip x-tab-strip-"+this.tabPosition}});var k=(this.tabPosition=="bottom"?this.stripWrap:null);this.stripSpacer=h.createChild({cls:"x-tab-strip-spacer"},k);this.strip=new Ext.Element(this.stripWrap.dom.firstChild);this.edge=this.strip.createChild({tag:"li",cls:"x-tab-edge"});this.strip.createChild({cls:"x-clear"});this.body.addClass("x-tab-panel-body-"+this.tabPosition);if(!this.itemTpl){var l=new Ext.Template('<li class="{cls}" id="{id}"><a class="x-tab-strip-close" onclick="return false;"></a>','<a class="x-tab-right" href="#" onclick="return false;"><em class="x-tab-left">','<span class="x-tab-strip-inner"><span class="x-tab-strip-text {iconCls}">{text}</span></span>',"</em></a></li>");l.disableFormats=true;l.compile();Ext.TabPanel.prototype.itemTpl=l}this.items.each(this.initTab,this)},afterRender:function(){Ext.TabPanel.superclass.afterRender.call(this);if(this.autoTabs){this.readTabs(false)}if(this.activeTab!==undefined){var b=Ext.isObject(this.activeTab)?this.activeTab:this.items.get(this.activeTab);delete this.activeTab;this.setActiveTab(b)}},initEvents:function(){Ext.TabPanel.superclass.initEvents.call(this);this.on("add",this.onAdd,this,{target:this});this.on("remove",this.onRemove,this,{target:this});this.mon(this.strip,"mousedown",this.onStripMouseDown,this);this.mon(this.strip,"contextmenu",this.onStripContextMenu,this);if(this.enableTabScroll){this.mon(this.strip,"mousewheel",this.onWheel,this)}},findTargets:function(g){var d=null;var e=g.getTarget("li",this.strip);if(e){d=this.getComponent(e.id.split(this.idDelimiter)[1]);if(d.disabled){return{close:null,item:null,el:null}}}return{close:g.getTarget(".x-tab-strip-close",this.strip),item:d,el:e}},onStripMouseDown:function(c){if(c.button!==0){return}c.preventDefault();var d=this.findTargets(c);if(d.close){if(d.item.fireEvent("beforeclose",d.item)!==false){d.item.fireEvent("close",d.item);this.remove(d.item)}return}if(d.item&&d.item!=this.activeTab){this.setActiveTab(d.item)}},onStripContextMenu:function(c){c.preventDefault();var d=this.findTargets(c);if(d.item){this.fireEvent("contextmenu",this,d.item,c)}},readTabs:function(l){if(l===true){this.items.each(function(a){this.remove(a)},this)}var m=this.el.query(this.autoTabSelector);for(var h=0,i=m.length;h<i;h++){var k=m[h];var j=k.getAttribute("title");k.removeAttribute("title");this.add({title:j,contentEl:k})}},initTab:function(k,h){var j=this.strip.dom.childNodes[h];var i=this.getTemplateArgs(k);var g=j?this.itemTpl.insertBefore(j,i):this.itemTpl.append(this.strip,i);Ext.fly(g).addClassOnOver("x-tab-strip-over");if(k.tabTip){Ext.fly(g).child("span.x-tab-strip-text",true).qtip=k.tabTip}k.tabEl=g;k.on("disable",this.onItemDisabled,this);k.on("enable",this.onItemEnabled,this);k.on("titlechange",this.onItemTitleChanged,this);k.on("iconchange",this.onItemIconChanged,this);k.on("beforeshow",this.onBeforeShowItem,this)},getTemplateArgs:function(c){var d=c.closable?"x-tab-strip-closable":"";if(c.disabled){d+=" x-item-disabled"}if(c.iconCls){d+=" x-tab-with-icon"}if(c.tabCls){d+=" "+c.tabCls}return{id:this.id+this.idDelimiter+c.getItemId(),text:c.title,cls:d,iconCls:c.iconCls||""}},onAdd:function(g,d,e){this.initTab(d,e);if(this.items.getCount()==1){this.syncSize()}this.delegateUpdates()},onBeforeAdd:function(d){var e=d.events?(this.items.containsKey(d.getItemId())?d:null):this.items.get(d);if(e){this.setActiveTab(d);return false}Ext.TabPanel.superclass.onBeforeAdd.apply(this,arguments);var g=d.elements;d.elements=g?g.replace(",header",""):g;d.border=(d.border===true)},onRemove:function(g,d){Ext.destroy(Ext.get(this.getTabEl(d)));this.stack.remove(d);d.un("disable",this.onItemDisabled,this);d.un("enable",this.onItemEnabled,this);d.un("titlechange",this.onItemTitleChanged,this);d.un("iconchange",this.onItemIconChanged,this);d.un("beforeshow",this.onBeforeShowItem,this);if(d==this.activeTab){var e=this.stack.next();if(e){this.setActiveTab(e)}else{if(this.items.getCount()>0){this.setActiveTab(0)}else{this.activeTab=null}}}this.delegateUpdates()},onBeforeShowItem:function(b){if(b!=this.activeTab){this.setActiveTab(b);return false}},onItemDisabled:function(c){var d=this.getTabEl(c);if(d){Ext.fly(d).addClass("x-item-disabled")}this.stack.remove(c)},onItemEnabled:function(c){var d=this.getTabEl(c);if(d){Ext.fly(d).removeClass("x-item-disabled")}},onItemTitleChanged:function(c){var d=this.getTabEl(c);if(d){Ext.fly(d).child("span.x-tab-strip-text",true).innerHTML=c.title}},onItemIconChanged:function(h,g,i){var e=this.getTabEl(h);if(e){Ext.fly(e).child("span.x-tab-strip-text").replaceClass(i,g)}},getTabEl:function(b){return document.getElementById(this.id+this.idDelimiter+this.getComponent(b).getItemId())},onResize:function(){Ext.TabPanel.superclass.onResize.apply(this,arguments);this.delegateUpdates()},beginUpdate:function(){this.suspendUpdates=true},endUpdate:function(){this.suspendUpdates=false;this.delegateUpdates()},hideTabStripItem:function(c){c=this.getComponent(c);var d=this.getTabEl(c);if(d){d.style.display="none";this.delegateUpdates()}this.stack.remove(c)},unhideTabStripItem:function(c){c=this.getComponent(c);var d=this.getTabEl(c);if(d){d.style.display="";this.delegateUpdates()}},delegateUpdates:function(){if(this.suspendUpdates){return}if(this.resizeTabs&&this.rendered){this.autoSizeTabs()}if(this.enableTabScroll&&this.rendered){this.autoScrollTabs()}},autoSizeTabs:function(){var s=this.items.length;var x=this.tabPosition!="bottom"?"header":"footer";var w=this[x].dom.offsetWidth;var y=this[x].dom.clientWidth;if(!this.resizeTabs||s<1||!y){return}var q=Math.max(Math.min(Math.floor((y-4)/s)-this.tabMargin,this.tabWidth),this.minTabWidth);this.lastTabWidth=q;var o=this.strip.query("li:not([className^=x-tab-edge])");for(var u=0,r=o.length;u<r;u++){var p=o[u];var i=Ext.fly(p).child(".x-tab-strip-inner",true);var t=p.offsetWidth;var v=i.offsetWidth;i.style.width=(q-(t-v))+"px"}},adjustBodyWidth:function(b){if(this.header){this.header.setWidth(b)}if(this.footer){this.footer.setWidth(b)}return b},setActiveTab:function(g){g=this.getComponent(g);if(!g||this.fireEvent("beforetabchange",this,g,this.activeTab)===false){return}if(!this.rendered){this.activeTab=g;return}if(this.activeTab!=g){if(this.activeTab){var e=this.getTabEl(this.activeTab);if(e){Ext.fly(e).removeClass("x-tab-strip-active")}this.activeTab.fireEvent("deactivate",this.activeTab)}var d=this.getTabEl(g);Ext.fly(d).addClass("x-tab-strip-active");this.activeTab=g;this.stack.add(g);this.layout.setActiveItem(g);if(this.scrolling){this.scrollToTab(g,this.animScroll)}g.fireEvent("activate",g);this.fireEvent("tabchange",this,g)}},getActiveTab:function(){return this.activeTab||null},getItem:function(b){return this.getComponent(b)},autoScrollTabs:function(){this.pos=this.tabPosition=="bottom"?this.footer:this.header;var m=this.items.length;var p=this.pos.dom.offsetWidth;var q=this.pos.dom.clientWidth;var n=this.stripWrap;var o=n.dom;var j=o.offsetWidth;var l=this.getScrollPos();var k=this.edge.getOffsetsTo(this.stripWrap)[0]+l;if(!this.enableTabScroll||m<1||j<20){return}if(k<=q){o.scrollLeft=0;n.setWidth(q);if(this.scrolling){this.scrolling=false;this.pos.removeClass("x-tab-scrolling");this.scrollLeft.hide();this.scrollRight.hide();if(Ext.isAir||Ext.isWebKit){o.style.marginLeft="";o.style.marginRight=""}}}else{if(!this.scrolling){this.pos.addClass("x-tab-scrolling");if(Ext.isAir||Ext.isWebKit){o.style.marginLeft="18px";o.style.marginRight="18px"}}q-=n.getMargins("lr");n.setWidth(q>20?q:20);if(!this.scrolling){if(!this.scrollLeft){this.createScrollers()}else{this.scrollLeft.show();this.scrollRight.show()}}this.scrolling=true;if(l>(k-q)){o.scrollLeft=k-q}else{this.scrollToTab(this.activeTab,false)}this.updateScrollButtons()}},createScrollers:function(){this.pos.addClass("x-tab-scrolling-"+this.tabPosition);var g=this.stripWrap.dom.offsetHeight;var e=this.pos.insertFirst({cls:"x-tab-scroller-left"});e.setHeight(g);e.addClassOnOver("x-tab-scroller-left-over");this.leftRepeater=new Ext.util.ClickRepeater(e,{interval:this.scrollRepeatInterval,handler:this.onScrollLeft,scope:this});this.scrollLeft=e;var d=this.pos.insertFirst({cls:"x-tab-scroller-right"});d.setHeight(g);d.addClassOnOver("x-tab-scroller-right-over");this.rightRepeater=new Ext.util.ClickRepeater(d,{interval:this.scrollRepeatInterval,handler:this.onScrollRight,scope:this});this.scrollRight=d},getScrollWidth:function(){return this.edge.getOffsetsTo(this.stripWrap)[0]+this.getScrollPos()},getScrollPos:function(){return parseInt(this.stripWrap.dom.scrollLeft,10)||0},getScrollArea:function(){return parseInt(this.stripWrap.dom.clientWidth,10)||0},getScrollAnim:function(){return{duration:this.scrollDuration,callback:this.updateScrollButtons,scope:this}},getScrollIncrement:function(){return this.scrollIncrement||(this.resizeTabs?this.lastTabWidth+2:100)},scrollToTab:function(m,j){if(!m){return}var o=this.getTabEl(m);var k=this.getScrollPos(),n=this.getScrollArea();var l=Ext.fly(o).getOffsetsTo(this.stripWrap)[0]+k;var i=l+o.offsetWidth;if(l<k){this.scrollTo(l,j)}else{if(i>(k+n)){this.scrollTo(i-n,j)}}},scrollTo:function(c,d){this.stripWrap.scrollTo("left",c,d?this.getScrollAnim():false);if(!d){this.updateScrollButtons()}},onWheel:function(l){var k=l.getWheelDelta()*this.wheelIncrement*-1;l.stopEvent();var j=this.getScrollPos();var m=j+k;var e=this.getScrollWidth()-this.getScrollArea();var d=Math.max(0,Math.min(e,m));if(d!=j){this.scrollTo(d,false)}},onScrollRight:function(){var e=this.getScrollWidth()-this.getScrollArea();var g=this.getScrollPos();var d=Math.min(e,g+this.getScrollIncrement());if(d!=g){this.scrollTo(d,this.animScroll)}},onScrollLeft:function(){var c=this.getScrollPos();var d=Math.max(0,c-this.getScrollIncrement());if(d!=c){this.scrollTo(d,this.animScroll)}},updateScrollButtons:function(){var b=this.getScrollPos();this.scrollLeft[b===0?"addClass":"removeClass"]("x-tab-scroller-left-disabled");this.scrollRight[b>=(this.getScrollWidth()-this.getScrollArea())?"addClass":"removeClass"]("x-tab-scroller-right-disabled")},beforeDestroy:function(){if(this.items){this.items.each(function(b){if(b&&b.tabEl){Ext.get(b.tabEl).removeAllListeners();b.tabEl=null}},this)}if(this.strip){this.strip.removeAllListeners()}Ext.TabPanel.superclass.beforeDestroy.apply(this)}});Ext.reg("tabpanel",Ext.TabPanel);Ext.TabPanel.prototype.activate=Ext.TabPanel.prototype.setActiveTab;Ext.TabPanel.AccessStack=function(){var b=[];return{add:function(a){b.push(a);if(b.length>10){b.shift()}},remove:function(g){var h=[];for(var i=0,a=b.length;i<a;i++){if(b[i]!=g){h.push(b[i])}}b=h},next:function(){return b.pop()}}};Ext.Button=Ext.extend(Ext.BoxComponent,{hidden:false,disabled:false,pressed:false,enableToggle:false,menuAlign:"tl-bl?",type:"button",menuClassTarget:"tr:nth(2)",clickEvent:"click",handleMouseEvents:true,tooltipType:"qtip",buttonSelector:"button:first-child",scale:"small",iconAlign:"left",arrowAlign:"right",initComponent:function(){Ext.Button.superclass.initComponent.call(this);this.addEvents("click","toggle","mouseover","mouseout","menushow","menuhide","menutriggerover","menutriggerout");if(this.menu){this.menu=Ext.menu.MenuMgr.get(this.menu)}if(Ext.isString(this.toggleGroup)){this.enableToggle=true}},getTemplateArgs:function(){var b=(this.cls||"");b+=(this.iconCls||this.icon)?(this.text?" x-btn-text-icon":" x-btn-icon"):" x-btn-noicon";if(this.pressed){b+=" x-btn-pressed"}return[this.text||"&#160;",this.type,this.iconCls||"",b,"x-btn-"+this.scale+" x-btn-icon-"+this.scale+"-"+this.iconAlign,this.getMenuClass()]},getMenuClass:function(){return this.menu?(this.arrowAlign!="bottom"?"x-btn-arrow":"x-btn-arrow-bottom"):""},onRender:function(i,g){if(!this.template){if(!Ext.Button.buttonTemplate){Ext.Button.buttonTemplate=new Ext.Template('<table cellspacing="0" class="x-btn {3}"><tbody class="{4}">','<tr><td class="x-btn-tl"><i>&#160;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&#160;</i></td></tr>','<tr><td class="x-btn-ml"><i>&#160;</i></td><td class="x-btn-mc"><em class="{5}" unselectable="on"><button class="x-btn-text {2}" type="{1}">{0}</button></em></td><td class="x-btn-mr"><i>&#160;</i></td></tr>','<tr><td class="x-btn-bl"><i>&#160;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&#160;</i></td></tr>',"</tbody></table>");Ext.Button.buttonTemplate.compile()}this.template=Ext.Button.buttonTemplate}var e,h=this.getTemplateArgs();if(g){e=this.template.insertBefore(g,h,true)}else{e=this.template.append(i,h,true)}this.btnEl=e.child(this.buttonSelector);this.mon(this.btnEl,{scope:this,focus:this.onFocus,blur:this.onBlur});this.initButtonEl(e,this.btnEl);Ext.ButtonToggleMgr.register(this)},initButtonEl:function(d,g){this.el=d;if(this.id){this.el.dom.id=this.el.id=this.id}if(this.icon){g.setStyle("background-image","url("+this.icon+")")}if(this.tabIndex!==undefined){g.dom.tabIndex=this.tabIndex}if(this.tooltip){this.setTooltip(this.tooltip,true)}if(this.handleMouseEvents){this.mon(d,{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 e=new Ext.util.ClickRepeater(d,Ext.isObject(this.repeat)?this.repeat:{});this.mon(e,"click",this.onClick,this)}this.mon(d,this.clickEvent,this.onClick,this)},afterRender:function(){Ext.Button.superclass.afterRender.call(this);this.doAutoWidth()},setIconClass:function(b){if(this.el){this.btnEl.replaceClass(this.iconCls,b)}this.iconCls=b;return this},setTooltip:function(c,d){if(this.rendered){if(!d){this.clearTip()}if(Ext.isObject(c)){Ext.QuickTips.register(Ext.apply({target:this.btnEl.id},c));this.tooltip=c}else{this.btnEl.dom[this.tooltipType]=c}}else{this.tooltip=c}return this},clearTip:function(){if(Ext.isObject(this.tooltip)){Ext.QuickTips.unregister(this.btnEl)}},beforeDestroy:function(){if(this.rendered){this.clearTip()}Ext.destroy(this.menu,this.repeater)},onDestroy:function(){var b=Ext.getDoc();b.un("mouseover",this.monitorMouseOver,this);b.un("mouseup",this.onMouseUp,this);if(this.rendered){Ext.ButtonToggleMgr.unregister(this)}},doAutoWidth:function(){if(this.el&&this.text&&this.width===undefined){this.el.setWidth("auto");if(Ext.isIE7&&Ext.isStrict){var b=this.btnEl;if(b&&b.getWidth()>20){b.clip();b.setWidth(Ext.util.TextMetrics.measure(b,this.text).width+b.getFrameWidth("lr"))}}if(this.minWidth){if(this.el.getWidth()<this.minWidth){this.el.setWidth(this.minWidth)}}}},setHandler:function(c,d){this.handler=c;this.scope=d;return this},setText:function(b){this.text=b;if(this.el){this.el.child("td.x-btn-mc "+this.buttonSelector).update(b)}this.doAutoWidth();return this},getText:function(){return this.text},toggle:function(c,d){c=c===undefined?!this.pressed:!!c;if(c!=this.pressed){this.el[c?"addClass":"removeClass"]("x-btn-pressed");this.pressed=c;if(!d){this.fireEvent("toggle",this,c);if(this.toggleHandler){this.toggleHandler.call(this.scope||this,this,c)}}}return this},focus:function(){this.btnEl.focus()},onDisable:function(){this.onDisableChange(true)},onEnable:function(){this.onDisableChange(false)},onDisableChange:function(b){if(this.el){if(!Ext.isIE6||!this.text){this.el[b?"addClass":"removeClass"](this.disabledClass)}this.el.dom.disabled=b}this.disabled=b},showMenu:function(){if(this.rendered&&this.menu){if(this.tooltip){Ext.QuickTips.getQuickTip().cancelShow(this.btnEl)}this.menu.show(this.el,this.menuAlign)}return this},hideMenu:function(){if(this.menu){this.menu.hide()}return this},hasVisibleMenu:function(){return this.menu&&this.menu.isVisible()},onClick:function(b){if(b){b.preventDefault()}if(b.button!==0){return}if(!this.disabled){if(this.enableToggle&&(this.allowDepress!==false||!this.pressed)){this.toggle()}if(this.menu&&!this.menu.isVisible()&&!this.ignoreNextClick){this.showMenu()}this.fireEvent("click",this,b);if(this.handler){this.handler.call(this.scope||this,this,b)}}},isMenuTriggerOver:function(c,d){return this.menu&&!d},isMenuTriggerOut:function(c,d){return this.menu&&!d},onMouseOver:function(c){if(!this.disabled){var d=c.within(this.el,true);if(!d){this.el.addClass("x-btn-over");if(!this.monitoringMouseOver){Ext.getDoc().on("mouseover",this.monitorMouseOver,this);this.monitoringMouseOver=true}this.fireEvent("mouseover",this,c)}if(this.isMenuTriggerOver(c,d)){this.fireEvent("menutriggerover",this,this.menu,c)}}},monitorMouseOver:function(b){if(b.target!=this.el.dom&&!b.within(this.el)){if(this.monitoringMouseOver){Ext.getDoc().un("mouseover",this.monitorMouseOver,this);this.monitoringMouseOver=false}this.onMouseOut(b)}},onMouseOut:function(c){var d=c.within(this.el)&&c.target!=this.el.dom;this.el.removeClass("x-btn-over");this.fireEvent("mouseout",this,c);if(this.isMenuTriggerOut(c,d)){this.fireEvent("menutriggerout",this,this.menu,c)}},onFocus:function(b){if(!this.disabled){this.el.addClass("x-btn-focus")}},onBlur:function(b){this.el.removeClass("x-btn-focus")},getClickEl:function(c,d){return this.el},onMouseDown:function(b){if(!this.disabled&&b.button===0){this.getClickEl(b).addClass("x-btn-click");Ext.getDoc().on("mouseup",this.onMouseUp,this)}},onMouseUp:function(b){if(b.button===0){this.getClickEl(b,true).removeClass("x-btn-click");Ext.getDoc().un("mouseup",this.onMouseUp,this)}},onMenuShow:function(b){this.ignoreNextClick=0;this.el.addClass("x-btn-menu-active");this.fireEvent("menushow",this,this.menu)},onMenuHide:function(b){this.el.removeClass("x-btn-menu-active");this.ignoreNextClick=this.restoreClick.defer(250,this);this.fireEvent("menuhide",this,this.menu)},restoreClick:function(){this.ignoreNextClick=0}});Ext.reg("button",Ext.Button);Ext.ButtonToggleMgr=function(){var d={};function c(g,a){if(a){var b=d[g.toggleGroup];for(var i=0,k=b.length;i<k;i++){if(b[i]!=g){b[i].toggle(false)}}}}return{register:function(b){if(!b.toggleGroup){return}var a=d[b.toggleGroup];if(!a){a=d[b.toggleGroup]=[]}a.push(b);b.on("toggle",c)},unregister:function(b){if(!b.toggleGroup){return}var a=d[b.toggleGroup];if(a){a.remove(b);b.un("toggle",c)}},getPressed:function(a){var b=d[a];if(b){for(var g=0,i=b.length;g<i;g++){if(b[g].pressed===true){return b[g]}}}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(c,d){this.arrowHandler=c;this.scope=d},getMenuClass:function(){return"x-btn-split"+(this.arrowAlign=="bottom"?"-bottom":"")},isClickOnArrow:function(b){return this.arrowAlign!="bottom"?b.getPageX()>this.el.child(this.buttonSelector).getRegion().right:b.getPageY()>this.el.child(this.buttonSelector).getRegion().bottom},onClick:function(c,d){c.preventDefault();if(!this.disabled){if(this.isClickOnArrow(c)){if(this.menu&&!this.menu.isVisible()&&!this.ignoreNextClick){this.showMenu()}this.fireEvent("arrowclick",this,c);if(this.arrowHandler){this.arrowHandler.call(this.scope||this,this,c)}}else{if(this.enableToggle){this.toggle()}this.fireEvent("click",this,c);if(this.handler){this.handler.call(this.scope||this,this,c)}}}},isMenuTriggerOver:function(b){return this.menu&&b.target.tagName=="em"},isMenuTriggerOut:function(c,d){return this.menu&&c.target.tagName!="em"}});Ext.reg("splitbutton",Ext.SplitButton);Ext.CycleButton=Ext.extend(Ext.SplitButton,{getItemText:function(d){if(d&&this.showText===true){var c="";if(this.prependText){c+=this.prependText}c+=d.text;return c}return undefined},setActiveItem:function(g,e){if(typeof g!="object"){g=this.menu.items.get(g)}if(g){if(!this.rendered){this.text=this.getItemText(g);this.iconCls=g.iconCls}else{var d=this.getItemText(g);if(d){this.setText(d)}this.setIconClass(g.iconCls)}this.activeItem=g;if(!g.checked){g.setChecked(true,true)}if(this.forceIcon){this.setIconClass(this.forceIcon)}if(!e){this.fireEvent("change",this,g)}}},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 h;for(var e=0,g=this.itemCount;e<g;e++){var i=this.items[e];i.group=i.group||this.id;i.itemIndex=e;i.checkHandler=this.checkHandler;i.scope=this;i.checked=i.checked||false;this.menu.items.push(i);if(i.checked){h=i}}this.setActiveItem(h,true);Ext.CycleButton.superclass.initComponent.call(this);this.on("click",this.toggleSelected,this)},checkHandler:function(d,c){if(c){this.setActiveItem(d)}},toggleSelected:function(){this.menu.render();var g,e;for(var d=1;d<this.itemCount;d++){g=(this.activeItem.itemIndex+d)%this.itemCount;e=this.menu.items.itemAt(g);if(!e.disabled){e.setChecked(true);break}}}});Ext.reg("cycle",Ext.CycleButton);Ext.layout.ToolbarLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,triggerWidth:18,lastOverflow:false,noItemsMenuText:'<div class="x-toolbar-no-items">(None)</div>',onLayout:function(q,o){if(!this.leftTr){o.addClass("x-toolbar-layout-ct");o.insertHtml("beforeEnd",'<table cellspacing="0" class="x-toolbar-ct"><tbody><tr><td class="x-toolbar-left" align="left"><table cellspacing="0"><tbody><tr class="x-toolbar-left-row"></tr></tbody></table></td><td class="x-toolbar-right" align="right"><table cellspacing="0" class="x-toolbar-right-ct"><tbody><tr><td><table cellspacing="0"><tbody><tr class="x-toolbar-right-row"></tr></tbody></table></td><td><table cellspacing="0"><tbody><tr class="x-toolbar-extras-row"></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table>');this.leftTr=o.child("tr.x-toolbar-left-row",true);this.rightTr=o.child("tr.x-toolbar-right-row",true);this.extrasTr=o.child("tr.x-toolbar-extras-row",true)}var n=this.leftTr;var c=0;var m=q.items.items;for(var r=0,p=m.length,i;r<p;r++,c++){i=m[r];if(i.isFill){n=this.rightTr;c=-1}else{if(!i.rendered){i.render(this.insertCell(i,n,c))}else{if(!i.xtbHidden&&!this.isValidParent(i,n.childNodes[c])){var s=this.insertCell(i,n,c);s.appendChild(i.getDomPositionEl().dom);i.container=Ext.get(s)}}}}this.cleanup(this.leftTr);this.cleanup(this.rightTr);this.cleanup(this.extrasTr);this.fitToSize(o)},cleanup:function(c){var h=c.childNodes;for(var g=h.length-1,i;g>=0&&(i=h[g]);g--){if(!i.firstChild){c.removeChild(i)}}},insertCell:function(h,g,i){var c=document.createElement("td");c.className="x-toolbar-cell";g.insertBefore(c,g.childNodes[i]||null);return c},hideItem:function(c){var d=(this.hiddens=this.hiddens||[]);d.push(c);c.xtbHidden=true;c.xtbWidth=c.getDomPositionEl().dom.parentNode.offsetWidth;c.hide()},unhideItem:function(b){b.show();b.xtbHidden=false;this.hiddens.remove(b);if(this.hiddens.length<1){delete this.hiddens}},getItemWidth:function(b){return b.hidden?(b.xtbWidth||0):b.getDomPositionEl().dom.parentNode.offsetWidth},fitToSize:function(c){if(this.container.enableOverflow===false){return}var i=c.dom.clientWidth;var v=this.lastWidth||0;this.lastWidth=i;var u=c.dom.firstChild.offsetWidth;var o=i-this.triggerWidth;var p=-1;if(u>i||(this.hiddens&&i>=v)){var t,r=this.container.items.items,s=r.length,q;var w=0;for(t=0;t<s;t++){q=r[t];if(!q.isFill){w+=this.getItemWidth(q);if(w>o){if(!q.xtbHidden){this.hideItem(q)}}else{if(q.xtbHidden){this.unhideItem(q)}}}}}if(this.hiddens){this.initMore();if(!this.lastOverflow){this.container.fireEvent("overflowchange",this.container,true);this.lastOverflow=true}}else{if(this.more){this.clearMenu();this.more.destroy();delete this.more;if(this.lastOverflow){this.container.fireEvent("overflowchange",this.container,false);this.lastOverflow=false}}}},createMenuConfig:function(h,c){var g=Ext.apply({},h.initialConfig),i=h.toggleGroup;Ext.apply(g,{text:h.overflowText||h.text,iconCls:h.iconCls,icon:h.icon,itemId:h.itemId,disabled:h.disabled,handler:h.handler,scope:h.scope,menu:h.menu,hideOnClick:c});if(i||h.enableToggle){Ext.apply(g,{group:i,checked:h.pressed,listeners:{checkchange:function(a,b){h.toggle(b)}}})}delete g.xtype;delete g.id;return g},addComponentToMenu:function(d,c){if(c instanceof Ext.Toolbar.Separator){d.add("-")}else{if(Ext.isFunction(c.isXType)){if(c.isXType("splitbutton")){d.add(this.createMenuConfig(c,true))}else{if(c.isXType("button")){d.add(this.createMenuConfig(c,!c.menu))}else{if(c.isXType("buttongroup")){c.items.each(function(a){this.addComponentToMenu(d,a)},this)}}}}}},clearMenu:function(){var b=this.moreMenu;if(b&&b.items){this.moreMenu.items.each(function(a){delete a.menu})}},beforeMoreShow:function(c){var m=this.container.items.items,h=m.length,i,l,o=function(a,b){return a.isXType("buttongroup")&&!(b instanceof Ext.Toolbar.Separator)};this.clearMenu();c.removeAll();for(var n=0;n<h;n++){i=m[n];if(i.xtbHidden){if(l&&(o(i,l)||o(l,i))){c.add("-")}this.addComponentToMenu(c,i);l=i}}if(c.items.length<1){c.add(this.noItemsMenuText)}},initMore:function(){if(!this.more){this.moreMenu=new Ext.menu.Menu({listeners:{beforeshow:this.beforeMoreShow,scope:this}});this.more=new Ext.Button({iconCls:"x-toolbar-more-icon",cls:"x-toolbar-more",menu:this.moreMenu});var b=this.insertCell(this.more,this.extrasTr,100);this.more.render(b)}},destroy:function(){Ext.destroy(this.more,this.moreMenu);Ext.layout.ToolbarLayout.superclass.destroy.call(this)}});Ext.Container.LAYOUTS.toolbar=Ext.layout.ToolbarLayout;Ext.Toolbar=function(b){if(Ext.isArray(b)){b={items:b,layout:"toolbar"}}else{b=Ext.apply({layout:"toolbar"},b);if(b.buttons){b.items=b.buttons}}Ext.Toolbar.superclass.constructor.call(this,b)};(function(){var b=Ext.Toolbar;Ext.extend(b,Ext.Container,{defaultType:"button",trackMenus:true,internalDefaults:{removeMode:"container",hideParent:true},toolbarCls:"x-toolbar",initComponent:function(){b.superclass.initComponent.call(this);this.addEvents("overflowchange")},onRender:function(d,a){if(!this.el){if(!this.autoCreate){this.autoCreate={cls:this.toolbarCls+" x-small-editor"}}this.el=d.createChild(Ext.apply({id:this.id},this.autoCreate),a)}},lookupComponent:function(a){if(Ext.isString(a)){if(a=="-"){a=new b.Separator()}else{if(a==" "){a=new b.Spacer()}else{if(a=="->"){a=new b.Fill()}else{a=new b.TextItem(a)}}}this.applyDefaults(a)}else{if(a.isFormField||a.render){a=this.constructItem(a)}else{if(a.tag){a=new b.Item({autoEl:a})}else{if(a.tagName){a=new b.Item({el:a})}else{if(Ext.isObject(a)){a=a.xtype?this.constructItem(a):this.constructButton(a)}}}}}return a},applyDefaults:function(c){if(!Ext.isString(c)){c=Ext.Toolbar.superclass.applyDefaults.call(this,c);var a=this.internalDefaults;if(c.events){Ext.applyIf(c.initialConfig,a);Ext.apply(c,a)}else{Ext.applyIf(c,a)}}return c},constructItem:function(d,a){return Ext.create(d,a||this.defaultType)},addSeparator:function(){return this.add(new b.Separator())},addSpacer:function(){return this.add(new b.Spacer())},addFill:function(){this.add(new b.Fill())},addElement:function(a){return this.addItem(new b.Item({el:a}))},addItem:function(a){return Ext.Toolbar.superclass.add.apply(this,arguments)},addButton:function(i){if(Ext.isArray(i)){var g=[];for(var h=0,a=i.length;h<a;h++){g.push(this.addButton(i[h]))}return g}return this.add(this.constructButton(i))},addText:function(a){return this.addItem(new b.TextItem(a))},addDom:function(a){return this.add(new b.Item({autoEl:a}))},addField:function(a){return this.add(a)},insertButton:function(k,h){if(Ext.isArray(h)){var i=[];for(var j=0,a=h.length;j<a;j++){i.push(this.insertButton(k+j,h[j]))}return i}return Ext.Toolbar.superclass.insert.call(this,k,h)},initMenuTracking:function(a){if(this.trackMenus&&a.menu){this.mon(a,{menutriggerover:this.onButtonTriggerOver,menushow:this.onButtonMenuShow,menuhide:this.onButtonMenuHide,scope:this})}},constructButton:function(a){var e=a.events?a:this.constructItem(a,a.split?"splitbutton":this.defaultType);this.initMenuTracking(e);return e},onDisable:function(){this.items.each(function(a){if(a.disable){a.disable()}})},onEnable:function(){this.items.each(function(a){if(a.enable){a.enable()}})},onButtonTriggerOver:function(a){if(this.activeMenuBtn&&this.activeMenuBtn!=a){this.activeMenuBtn.hideMenu();a.showMenu();this.activeMenuBtn=a}},onButtonMenuShow:function(a){this.activeMenuBtn=a},onButtonMenuHide:function(a){delete this.activeMenuBtn}});Ext.reg("toolbar",Ext.Toolbar);b.Item=Ext.extend(Ext.BoxComponent,{hideParent:true,enable:Ext.emptyFn,disable:Ext.emptyFn,focus:Ext.emptyFn});Ext.reg("tbitem",b.Item);b.Separator=Ext.extend(b.Item,{onRender:function(d,a){this.el=d.createChild({tag:"span",cls:"xtb-sep"},a)}});Ext.reg("tbseparator",b.Separator);b.Spacer=Ext.extend(b.Item,{onRender:function(d,a){this.el=d.createChild({tag:"div",cls:"xtb-spacer",style:this.width?"width:"+this.width+"px":""},a)}});Ext.reg("tbspacer",b.Spacer);b.Fill=Ext.extend(b.Item,{render:Ext.emptyFn,isFill:true});Ext.reg("tbfill",b.Fill);b.TextItem=Ext.extend(b.Item,{constructor:function(a){if(Ext.isString(a)){a={autoEl:{cls:"xtb-text",html:a}}}else{a.autoEl={cls:"xtb-text",html:a.text||""}}b.TextItem.superclass.constructor.call(this,a)},setText:function(a){if(this.rendered){this.el.dom.innerHTML=a}else{this.autoEl.html=a}}});Ext.reg("tbtext",b.TextItem);b.Button=Ext.extend(Ext.Button,{});b.SplitButton=Ext.extend(Ext.SplitButton,{});Ext.reg("tbbutton",b.Button);Ext.reg("tbsplit",b.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 b=this.body.getFrameWidth("lr")+this.body.dom.firstChild.offsetWidth;this.body.setWidth(b);this.el.setWidth(b+this.getFrameWidth())}});Ext.reg("buttongroup",Ext.ButtonGroup);(function(){var b=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 d=[this.first=new b.Button({tooltip:this.firstText,overflowText:this.firstText,iconCls:"x-tbar-page-first",disabled:true,handler:this.moveFirst,scope:this}),this.prev=new b.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,listeners:{scope:this,keydown:this.onPagingKeyDown,blur:this.onPagingBlur}}),this.afterTextItem=new b.TextItem({text:String.format(this.afterPageText,1)}),"-",this.next=new b.Button({tooltip:this.nextText,overflowText:this.nextText,iconCls:"x-tbar-page-next",disabled:true,handler:this.moveNext,scope:this}),this.last=new b.Button({tooltip:this.lastText,overflowText:this.lastText,iconCls:"x-tbar-page-last",disabled:true,handler:this.moveLast,scope:this}),"-",this.refresh=new b.Button({tooltip:this.refreshText,overflowText:this.refreshText,iconCls:"x-tbar-loading",handler:this.refresh,scope:this})];var a=this.items||this.buttons||[];if(this.prependButtons){this.items=a.concat(d)}else{this.items=d.concat(a)}delete this.buttons;if(this.displayInfo){this.items.push("->");this.items.push(this.displayItem=new b.TextItem({}))}Ext.PagingToolbar.superclass.initComponent.call(this);this.addEvents("change","beforechange");this.on("afterlayout",this.onFirstLayout,this,{single:true});this.cursor=0;this.bindStore(this.store)},onFirstLayout:function(){if(this.dsLoaded){this.onLoad.apply(this,this.dsLoaded)}},updateInfo:function(){if(this.displayItem){var a=this.store.getCount();var d=a==0?this.emptyMsg:String.format(this.displayMsg,this.cursor+1,this.cursor+a,this.store.getTotalCount());this.displayItem.setText(d)}},onLoad:function(a,n,d){if(!this.rendered){this.dsLoaded=[a,n,d];return}var m=this.getParams();this.cursor=(d.params&&d.params[m.start])?d.params[m.start]:0;var k=this.getPageData(),o=k.activePage,l=k.pages;this.afterTextItem.setText(String.format(this.afterPageText,k.pages));this.inputItem.setValue(o);this.first.setDisabled(o==1);this.prev.setDisabled(o==1);this.next.setDisabled(o==l);this.last.setDisabled(o==l);this.refresh.enable();this.updateInfo();this.fireEvent("change",this,k)},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(){if(!this.rendered){return}this.refresh.enable()},readPage:function(d){var a=this.inputItem.getValue(),g;if(!a||isNaN(g=parseInt(a,10))){this.inputItem.setValue(d.activePage);return false}return g},onPagingFocus:function(){this.inputItem.select()},onPagingBlur:function(a){this.inputItem.setValue(this.getPageData().activePage)},onPagingKeyDown:function(e,k){var m=k.getKey(),d=this.getPageData(),l;if(m==k.RETURN){k.stopEvent();l=this.readPage(d);if(l!==false){l=Math.min(Math.max(1,l),d.pages)-1;this.doLoad(l*this.pageSize)}}else{if(m==k.HOME||m==k.END){k.stopEvent();l=m==k.HOME?1:d.pages;e.setValue(l)}else{if(m==k.UP||m==k.PAGEUP||m==k.DOWN||m==k.PAGEDOWN){k.stopEvent();if((l=this.readPage(d))){var a=k.shiftKey?10:1;if(m==k.DOWN||m==k.PAGEDOWN){a*=-1}l+=a;if(l>=1&l<=d.pages){e.setValue(l)}}}}}},getParams:function(){return this.paramNames||this.store.paramNames},beforeLoad:function(){if(this.rendered&&this.refresh){this.refresh.disable()}},doLoad:function(e){var g={},a=this.getParams();g[a.start]=e;g[a.limit]=this.pageSize;if(this.fireEvent("beforechange",this,g)!==false){this.store.load({params:g})}},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 d=this.store.getTotalCount(),a=d%this.pageSize;this.doLoad(a?(d-a):d-this.pageSize)},refresh:function(){this.doLoad(this.cursor)},bindStore:function(g,e){var a;if(!e&&this.store){this.store.un("beforeload",this.beforeLoad,this);this.store.un("load",this.onLoad,this);this.store.un("exception",this.onLoadError,this);if(g!==this.store&&this.store.autoDestroy){this.store.destroy()}}if(g){g=Ext.StoreMgr.lookup(g);g.on({scope:this,beforeload:this.beforeLoad,load:this.onLoad,exception:this.onLoadError});a=g.getCount()>0}this.store=g;if(a){this.onLoad(g,null,{})}},unbind:function(a){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);Ext.History=(function(){var q,s;var l=false;var r;function p(){var b=top.location.href,a=b.indexOf("#");return a>=0?b.substr(a+1):null}function u(){s.value=r}function o(a){r=a;Ext.History.fireEvent("change",a)}function n(a){var b=['<html><body><div id="state">',a,"</div></body></html>"].join("");try{var c=q.contentWindow.document;c.open();c.write(b);c.close();return true}catch(d){return false}}function t(){if(!q.contentWindow||!q.contentWindow.document){setTimeout(t,10);return}var c=q.contentWindow.document;var a=c.getElementById("state");var b=a?a.innerText:null;var d=p();setInterval(function(){c=q.contentWindow.document;a=c.getElementById("state");var e=a?a.innerText:null;var g=p();if(e!==b){b=e;o(b);top.location.hash=b;d=b;u()}else{if(g!==d){d=g;n(g)}}},50);l=true;Ext.History.fireEvent("ready",Ext.History)}function m(){r=s.value?s.value:p();if(Ext.isIE){t()}else{var a=p();setInterval(function(){var b=p();if(b!==a){a=b;o(a);u()}},50);l=true;Ext.History.fireEvent("ready",Ext.History)}}return{fieldId:"x-history-field",iframeId:"x-history-frame",events:{},init:function(a,b){if(l){Ext.callback(a,b,[this]);return}if(!Ext.isReady){Ext.onReady(function(){Ext.History.init(a,b)});return}s=Ext.getDom(Ext.History.fieldId);if(Ext.isIE){q=Ext.getDom(Ext.History.iframeId)}this.addEvents("ready","change");if(a){this.on("ready",a,b,{single:true})}m()},add:function(b,a){if(a!==false){if(this.getToken()==b){return true}}if(Ext.isIE){return n(b)}else{top.location.hash=b;return true}},back:function(){history.go(-1)},forward:function(){history.go(1)},getToken:function(){return l?r:p()}}})();Ext.apply(Ext.History,new Ext.util.Observable());Ext.Tip=Ext.extend(Ext.Panel,{minWidth:40,maxWidth:300,shadow:"sides",defaultAlign:"tl-bl?",autoRender:true,quickShowInterval:250,frame:true,hidden:true,baseCls:"x-tip",floating:{shadow:true,shim:true,useDisplay:true,constrain:false},autoHeight:true,closeAction:"hide",initComponent:function(){Ext.Tip.superclass.initComponent.call(this);if(this.closable&&!this.title){this.elements+=",header"}},afterRender:function(){Ext.Tip.superclass.afterRender.call(this);if(this.closable){this.addTool({id:"close",handler:this[this.closeAction],scope:this})}},showAt:function(b){Ext.Tip.superclass.show.call(this);if(this.measureWidth!==false&&(!this.initialConfig||typeof this.initialConfig.width!="number")){this.doAutoWidth()}if(this.constrainPosition){b=this.el.adjustForConstraints(b)}this.setPagePosition(b[0],b[1])},doAutoWidth:function(){var b=this.body.getTextWidth();if(this.title){b=Math.max(b,this.header.child("span").getTextWidth(this.title))}b+=this.getFrameWidth()+(this.closable?20:0)+this.body.getPadding("lr");this.setWidth(b.constrain(this.minWidth,this.maxWidth));if(Ext.isIE7&&!this.repainted){this.el.repaint();this.repainted=true}},showBy:function(d,c){if(!this.rendered){this.render(Ext.getBody())}this.showAt(this.el.getAlignToXY(d,c||this.defaultAlign))},initDraggable:function(){this.dd=new Ext.Tip.DD(this,typeof this.draggable=="boolean"?null:this.draggable);this.header.addClass("x-tip-draggable")}});Ext.Tip.DD=function(c,d){Ext.apply(this,d);this.tip=c;Ext.Tip.DD.superclass.constructor.call(this,c.el.id,"WindowDD-"+c.id);this.setHandleElId(c.header.id);this.scroll=false};Ext.extend(Ext.Tip.DD,Ext.dd.DD,{moveOnly:true,scroll:false,headerOffsets:[100,25],startDrag:function(){this.tip.el.disableShadow()},endDrag:function(b){this.tip.el.enableShadow(true)}});Ext.ToolTip=Ext.extend(Ext.Tip,{showDelay:500,hideDelay:200,dismissDelay:5000,trackMouse:false,anchorToTarget:true,anchorOffset:0,targetCounter:0,constrainPosition:false,initComponent:function(){Ext.ToolTip.superclass.initComponent.call(this);this.lastActive=new Date();this.initTarget(this.target);this.origAnchor=this.anchor},onRender:function(c,d){Ext.ToolTip.superclass.onRender.call(this,c,d);this.anchorCls="x-tip-anchor-"+this.getAnchorPosition();this.anchorEl=this.el.createChild({cls:"x-tip-anchor "+this.anchorCls})},afterRender:function(){Ext.ToolTip.superclass.afterRender.call(this);this.anchorEl.setStyle("z-index",this.el.getZIndex()+1)},initTarget:function(c){var d;if((d=Ext.get(c))){if(this.target){this.target=Ext.get(this.target);this.target.un("mouseover",this.onTargetOver,this);this.target.un("mouseout",this.onTargetOut,this);this.target.un("mousemove",this.onMouseMove,this)}this.mon(d,{mouseover:this.onTargetOver,mouseout:this.onTargetOut,mousemove:this.onMouseMove,scope:this});this.target=d}if(this.anchor){this.anchorTarget=this.target}},onMouseMove:function(c){var d=this.delegate?c.getTarget(this.delegate):this.triggerElement=true;if(d){this.targetXY=c.getXY();if(d===this.triggerElement){if(!this.hidden&&this.trackMouse){this.setPagePosition(this.getTargetXY())}}else{this.hide();this.lastActive=new Date(0);this.onTargetOver(c)}}else{if(!this.closable&&this.isVisible()){this.hide()}}},getTargetXY:function(){if(this.anchor){this.targetCounter++;var q=this.getOffsets();var k=(this.anchorToTarget&&!this.trackMouse)?this.el.getAlignToXY(this.anchorTarget,this.getAnchorAlign()):this.targetXY;var s=Ext.lib.Dom.getViewWidth()-5;var n=Ext.lib.Dom.getViewHeight()-5;var l=(document.documentElement.scrollLeft||document.body.scrollLeft||0)+5;var m=(document.documentElement.scrollTop||document.body.scrollTop||0)+5;var r=[k[0]+q[0],k[1]+q[1]];var o=this.getSize();this.anchorEl.removeClass(this.anchorCls);if(this.targetCounter<2){if(r[0]<l){if(this.anchorToTarget){this.defaultAlign="l-r";if(this.mouseOffset){this.mouseOffset[0]*=-1}}this.anchor="left";return this.getTargetXY()}if(r[0]+o.width>s){if(this.anchorToTarget){this.defaultAlign="r-l";if(this.mouseOffset){this.mouseOffset[0]*=-1}}this.anchor="right";return this.getTargetXY()}if(r[1]<m){if(this.anchorToTarget){this.defaultAlign="t-b";if(this.mouseOffset){this.mouseOffset[1]*=-1}}this.anchor="top";return this.getTargetXY()}if(r[1]+o.height>n){if(this.anchorToTarget){this.defaultAlign="b-t";if(this.mouseOffset){this.mouseOffset[1]*=-1}}this.anchor="bottom";return this.getTargetXY()}}this.anchorCls="x-tip-anchor-"+this.getAnchorPosition();this.anchorEl.addClass(this.anchorCls);this.targetCounter=0;return r}else{var p=this.getMouseOffset();return[this.targetXY[0]+p[0],this.targetXY[1]+p[1]]}},getMouseOffset:function(){var b=this.anchor?[0,0]:[15,18];if(this.mouseOffset){b[0]+=this.mouseOffset[0];b[1]+=this.mouseOffset[1]}return b},getAnchorPosition:function(){if(this.anchor){this.tipAnchor=this.anchor.charAt(0)}else{var b=this.defaultAlign.match(/^([a-z]+)-([a-z]+)(\?)?$/);if(!b){throw"AnchorTip.defaultAlign is invalid"}this.tipAnchor=b[1].charAt(0)}switch(this.tipAnchor){case"t":return"top";case"b":return"bottom";case"r":return"right"}return"left"},getAnchorAlign:function(){switch(this.anchor){case"top":return"tl-bl";case"left":return"tl-tr";case"right":return"tr-tl";default:return"bl-tl"}},getOffsets:function(){var d,e=this.getAnchorPosition().charAt(0);if(this.anchorToTarget&&!this.trackMouse){switch(e){case"t":d=[0,9];break;case"b":d=[0,-13];break;case"r":d=[-13,0];break;default:d=[9,0];break}}else{switch(e){case"t":d=[-15-this.anchorOffset,30];break;case"b":d=[-19-this.anchorOffset,-13-this.el.dom.offsetHeight];break;case"r":d=[-15-this.el.dom.offsetWidth,-13-this.anchorOffset];break;default:d=[25,-13-this.anchorOffset];break}}var g=this.getMouseOffset();d[0]+=g[0];d[1]+=g[1];return d},onTargetOver:function(c){if(this.disabled||c.within(this.target.dom,true)){return}var d=c.getTarget(this.delegate);if(d){this.triggerElement=d;this.clearTimer("hide");this.targetXY=c.getXY();this.delayShow()}},delayShow:function(){if(this.hidden&&!this.showTimer){if(this.lastActive.getElapsed()<this.quickShowInterval){this.show()}else{this.showTimer=this.show.defer(this.showDelay,this)}}else{if(!this.hidden&&this.autoHide!==false){this.show()}}},onTargetOut:function(b){if(this.disabled||b.within(this.target.dom,true)){return}this.clearTimer("show");if(this.autoHide!==false){this.delayHide()}},delayHide:function(){if(!this.hidden&&!this.hideTimer){this.hideTimer=this.hide.defer(this.hideDelay,this)}},hide:function(){this.clearTimer("dismiss");this.lastActive=new Date();if(this.anchorEl){this.anchorEl.hide()}Ext.ToolTip.superclass.hide.call(this);delete this.triggerElement},show:function(){if(this.anchor){this.showAt([-1000,-1000]);this.origConstrainPosition=this.constrainPosition;this.constrainPosition=false;this.anchor=this.origAnchor}this.showAt(this.getTargetXY());if(this.anchor){this.syncAnchor();this.anchorEl.show();this.constrainPosition=this.origConstrainPosition}else{this.anchorEl.hide()}},showAt:function(b){this.lastActive=new Date();this.clearTimers();Ext.ToolTip.superclass.showAt.call(this,b);if(this.dismissDelay&&this.autoHide!==false){this.dismissTimer=this.hide.defer(this.dismissDelay,this)}},syncAnchor:function(){var e,d,g;switch(this.tipAnchor.charAt(0)){case"t":e="b";d="tl";g=[20+this.anchorOffset,2];break;case"r":e="l";d="tr";g=[-2,11+this.anchorOffset];break;case"b":e="t";d="bl";g=[20+this.anchorOffset,-2];break;default:e="r";d="tl";g=[2,11+this.anchorOffset];break}this.anchorEl.alignTo(this.el,e+"-"+d,g)},setPagePosition:function(d,c){Ext.ToolTip.superclass.setPagePosition.call(this,d,c);if(this.anchor){this.syncAnchor()}},clearTimer:function(b){b=b+"Timer";clearTimeout(this[b]);delete this[b]},clearTimers:function(){this.clearTimer("show");this.clearTimer("dismiss");this.clearTimer("hide")},onShow:function(){Ext.ToolTip.superclass.onShow.call(this);Ext.getDoc().on("mousedown",this.onDocMouseDown,this)},onHide:function(){Ext.ToolTip.superclass.onHide.call(this);Ext.getDoc().un("mousedown",this.onDocMouseDown,this)},onDocMouseDown:function(b){if(this.autoHide!==true&&!this.closable&&!b.within(this.el.dom)){this.disable();this.enable.defer(100,this)}},onDisable:function(){this.clearTimers();this.hide()},adjustPosition:function(g,h){if(this.contstrainPosition){var i=this.targetXY[1],e=this.getSize().height;if(h<=i&&(h+e)>=i){h=i-e-5}}return{x:g,y:h}},onDestroy:function(){Ext.getDoc().un("mousedown",this.onDocMouseDown,this);Ext.ToolTip.superclass.onDestroy.call(this)}});Ext.QuickTip=Ext.extend(Ext.ToolTip,{interceptTitles:false,tagConfig:{namespace:"ext",attribute:"qtip",width:"qwidth",target:"target",title:"qtitle",hide:"hide",cls:"qclass",align:"qalign",anchor:"anchor"},initComponent:function(){this.target=this.target||Ext.getDoc();this.targets=this.targets||{};Ext.QuickTip.superclass.initComponent.call(this)},register:function(p){var n=Ext.isArray(p)?p:arguments;for(var o=0,j=n.length;o<j;o++){var i=n[o];var m=i.target;if(m){if(Ext.isArray(m)){for(var q=0,c=m.length;q<c;q++){this.targets[Ext.id(m[q])]=i}}else{this.targets[Ext.id(m)]=i}}}},unregister:function(b){delete this.targets[Ext.id(b)]},cancelShow:function(c){var d=this.activeTarget;c=Ext.get(c).dom;if(this.isVisible()){if(d&&d.el==c){this.hide()}}else{if(d&&d.el==c){this.clearTimer("show")}}},onTargetOver:function(k){if(this.disabled){return}this.targetXY=k.getXY();var o=k.getTarget();if(!o||o.nodeType!==1||o==document||o==document.body){return}if(this.activeTarget&&o==this.activeTarget.el){this.clearTimer("hide");this.show();return}if(o&&this.targets[o.id]){this.activeTarget=this.targets[o.id];this.activeTarget.el=o;this.anchor=this.activeTarget.anchor;if(this.anchor){this.anchorTarget=o}this.delayShow();return}var m,l=Ext.fly(o),e=this.tagConfig;var n=e.namespace;if(this.interceptTitles&&o.title){m=o.title;o.qtip=m;o.removeAttribute("title");k.preventDefault()}else{m=o.qtip||l.getAttribute(e.attribute,n)}if(m){var j=l.getAttribute(e.hide,n);this.activeTarget={el:o,text:m,width:l.getAttribute(e.width,n),autoHide:j!="user"&&j!=="false",title:l.getAttribute(e.title,n),cls:l.getAttribute(e.cls,n),align:l.getAttribute(e.align,n)};this.anchor=l.getAttribute(e.anchor,n);if(this.anchor){this.anchorTarget=o}this.delayShow()}},onTargetOut:function(b){this.clearTimer("show");if(this.autoHide!==false){this.delayHide()}},showAt:function(c){var d=this.activeTarget;if(d){if(!this.rendered){this.render(Ext.getBody());this.activeTarget=d}if(d.width){this.setWidth(d.width);this.body.setWidth(this.adjustBodyWidth(d.width-this.getFrameWidth()));this.measureWidth=false}else{this.measureWidth=true}this.setTitle(d.title||"");this.body.update(d.text);this.autoHide=d.autoHide;this.dismissDelay=d.dismissDelay||this.dismissDelay;if(this.lastCls){this.el.removeClass(this.lastCls);delete this.lastCls}if(d.cls){this.el.addClass(d.cls);this.lastCls=d.cls}if(this.anchor){this.constrainPosition=false}else{if(d.align){c=this.el.getAlignToXY(d.el,d.align);this.constrainPosition=false}else{this.constrainPosition=true}}}Ext.QuickTip.superclass.showAt.call(this,c)},hide:function(){delete this.activeTarget;Ext.QuickTip.superclass.hide.call(this)}});Ext.QuickTips=function(){var c,d=[];return{init:function(a){if(!c){if(!Ext.isReady){Ext.onReady(function(){Ext.QuickTips.init(a)});return}c=new Ext.QuickTip({elements:"header,body"});if(a!==false){c.render(Ext.getBody())}}},enable:function(){if(c){d.pop();if(d.length<1){c.enable()}}},disable:function(){if(c){c.disable()}d.push(1)},isEnabled:function(){return c!==undefined&&!c.disabled},getQuickTip:function(){return c},register:function(){c.register.apply(c,arguments)},unregister:function(){c.unregister.apply(c,arguments)},tips:function(){c.register.apply(c,arguments)}}}();Ext.tree.TreePanel=Ext.extend(Ext.Panel,{rootVisible:true,animate:Ext.enableFx,lines:true,enableDD:false,hlDrop:Ext.enableFx,pathSeparator:"/",initComponent:function(){Ext.tree.TreePanel.superclass.initComponent.call(this);if(!this.eventModel){this.eventModel=new Ext.tree.TreeEventModel(this)}var d=this.loader;if(!d){d=new Ext.tree.TreeLoader({dataUrl:this.dataUrl,requestMethod:this.requestMethod})}else{if(typeof d=="object"&&!d.load){d=new Ext.tree.TreeLoader(d)}}this.loader=d;this.nodeHash={};if(this.root){var c=this.root;delete this.root;this.setRootNode(c)}this.addEvents("append","remove","movenode","insert","beforeappend","beforeremove","beforemovenode","beforeinsert","beforeload","load","textchange","beforeexpandnode","beforecollapsenode","expandnode","disabledchange","collapsenode","beforeclick","click","checkchange","dblclick","contextmenu","beforechildrenrendered","startdrag","enddrag","dragdrop","beforenodedrop","nodedrop","nodedragover");if(this.singleExpand){this.on("beforeexpandnode",this.restrictExpand,this)}},proxyNodeEvent:function(o,i,j,k,l,m,n){if(o=="collapse"||o=="expand"||o=="beforecollapse"||o=="beforeexpand"||o=="move"||o=="beforemove"){o=o+"node"}return this.fireEvent(o,i,j,k,l,m,n)},getRootNode:function(){return this.root},setRootNode:function(c){Ext.destroy(this.root);if(!c.render){c=this.loader.createNode(c)}this.root=c;c.ownerTree=this;c.isRoot=true;this.registerNode(c);if(!this.rootVisible){var d=c.attributes.uiProvider;c.ui=d?new d(c):new Ext.tree.RootTreeNodeUI(c)}if(this.innerCt){this.innerCt.update("");this.afterRender()}return c},getNodeById:function(b){return this.nodeHash[b]},registerNode:function(b){this.nodeHash[b.id]=b},unregisterNode:function(b){delete this.nodeHash[b.id]},toString:function(){return"[Tree"+(this.id?" "+this.id:"")+"]"},restrictExpand:function(d){var c=d.parentNode;if(c){if(c.expandedChild&&c.expandedChild.parentNode==c){c.expandedChild.collapse()}c.expandedChild=d}},getChecked:function(a,i){i=i||this.root;var h=[];var g=function(){if(this.attributes.checked){h.push(!a?this:(a=="id"?this.id:this.attributes[a]))}};i.cascade(g);return h},getEl:function(){return this.el},getLoader:function(){return this.loader},expandAll:function(){this.root.expand(true)},collapseAll:function(){this.root.collapse(true)},getSelectionModel:function(){if(!this.selModel){this.selModel=new Ext.tree.DefaultSelectionModel()}return this.selModel},expandPath:function(l,j,k){j=j||"id";var n=l.split(this.pathSeparator);var o=this.root;if(o.attributes[j]!=n[1]){if(k){k(false,null)}return}var i=1;var m=function(){if(++i==n.length){if(k){k(true,o)}return}var a=o.findChild(j,n[i]);if(!a){if(k){k(false,o)}return}o=a;a.expand(false,false,m)};o.expand(false,false,m)},selectPath:function(k,i,j){i=i||"id";var m=k.split(this.pathSeparator);var h=m.pop();if(m.length>0){var l=function(b,c){if(b&&c){var a=c.findChild(i,h);if(a){a.select();if(j){j(true,a)}}else{if(j){j(false,a)}}}else{if(j){j(false,a)}}};this.expandPath(m.join(this.pathSeparator),i,l)}else{this.root.select();if(j){j(true,this.root)}}},getTreeEl:function(){return this.body},onRender:function(c,d){Ext.tree.TreePanel.superclass.onRender.call(this,c,d);this.el.addClass("x-tree");this.innerCt=this.body.createChild({tag:"ul",cls:"x-tree-root-ct "+(this.useArrows?"x-tree-arrows":this.lines?"x-tree-lines":"x-tree-no-lines")})},initEvents:function(){Ext.tree.TreePanel.superclass.initEvents.call(this);if(this.containerScroll){Ext.dd.ScrollManager.register(this.body)}if((this.enableDD||this.enableDrop)&&!this.dropZone){this.dropZone=new Ext.tree.TreeDropZone(this,this.dropConfig||{ddGroup:this.ddGroup||"TreeDD",appendOnly:this.ddAppendOnly===true})}if((this.enableDD||this.enableDrag)&&!this.dragZone){this.dragZone=new Ext.tree.TreeDragZone(this,this.dragConfig||{ddGroup:this.ddGroup||"TreeDD",scroll:this.ddScroll})}this.getSelectionModel().init(this)},afterRender:function(){Ext.tree.TreePanel.superclass.afterRender.call(this);this.root.render();if(!this.rootVisible){this.root.renderChildren()}},onDestroy:function(){if(this.rendered){this.body.removeAllListeners();Ext.dd.ScrollManager.unregister(this.body);if(this.dropZone){this.dropZone.unreg()}if(this.dragZone){this.dragZone.unreg()}}this.root.destroy();this.nodeHash=null;Ext.tree.TreePanel.superclass.onDestroy.call(this)}});Ext.tree.TreePanel.nodeTypes={};Ext.reg("treepanel",Ext.tree.TreePanel);Ext.tree.TreeEventModel=function(b){this.tree=b;this.tree.on("render",this.initEvents,this)};Ext.tree.TreeEventModel.prototype={initEvents:function(){var b=this.tree.getTreeEl();b.on("click",this.delegateClick,this);if(this.tree.trackMouseOver!==false){this.tree.innerCt.on("mouseover",this.delegateOver,this);this.tree.innerCt.on("mouseout",this.delegateOut,this)}b.on("dblclick",this.delegateDblClick,this);b.on("contextmenu",this.delegateContextMenu,this)},getNode:function(d){var e;if(e=d.getTarget(".x-tree-node-el",10)){var g=Ext.fly(e,"_treeEvents").getAttribute("tree-node-id","ext");if(g){return this.tree.getNodeById(g)}}return null},getNodeTarget:function(c){var d=c.getTarget(".x-tree-node-icon",1);if(!d){d=c.getTarget(".x-tree-node-el",6)}return d},delegateOut:function(d,e){if(!this.beforeEvent(d)){return}if(d.getTarget(".x-tree-ec-icon",1)){var g=this.getNode(d);this.onIconOut(d,g);if(g==this.lastEcOver){delete this.lastEcOver}}if((e=this.getNodeTarget(d))&&!d.within(e,true)){this.onNodeOut(d,this.getNode(d))}},delegateOver:function(c,d){if(!this.beforeEvent(c)){return}if(Ext.isGecko&&!this.trackingDoc){Ext.getBody().on("mouseover",this.trackExit,this);this.trackingDoc=true}if(this.lastEcOver){this.onIconOut(c,this.lastEcOver);delete this.lastEcOver}if(c.getTarget(".x-tree-ec-icon",1)){this.lastEcOver=this.getNode(c);this.onIconOver(c,this.lastEcOver)}if(d=this.getNodeTarget(c)){this.onNodeOver(c,this.getNode(c))}},trackExit:function(b){if(this.lastOverNode&&!b.within(this.lastOverNode.ui.getEl())){this.onNodeOut(b,this.lastOverNode);delete this.lastOverNode;Ext.getBody().un("mouseover",this.trackExit,this);this.trackingDoc=false}},delegateClick:function(c,d){if(!this.beforeEvent(c)){return}if(c.getTarget("input[type=checkbox]",1)){this.onCheckboxClick(c,this.getNode(c))}else{if(c.getTarget(".x-tree-ec-icon",1)){this.onIconClick(c,this.getNode(c))}else{if(this.getNodeTarget(c)){this.onNodeClick(c,this.getNode(c))}}}},delegateDblClick:function(c,d){if(this.beforeEvent(c)&&this.getNodeTarget(c)){this.onNodeDblClick(c,this.getNode(c))}},delegateContextMenu:function(c,d){if(this.beforeEvent(c)&&this.getNodeTarget(c)){this.onNodeContextMenu(c,this.getNode(c))}},onNodeClick:function(c,d){d.ui.onClick(c)},onNodeOver:function(c,d){this.lastOverNode=d;d.ui.onOver(c)},onNodeOut:function(c,d){d.ui.onOut(c)},onIconOver:function(c,d){d.ui.addClass("x-tree-ec-over")},onIconOut:function(c,d){d.ui.removeClass("x-tree-ec-over")},onIconClick:function(c,d){d.ui.ecClick(c)},onCheckboxClick:function(c,d){d.ui.onCheckChange(c)},onNodeDblClick:function(c,d){d.ui.onDblClick(c)},onNodeContextMenu:function(c,d){d.ui.onContextMenu(c)},beforeEvent:function(b){if(this.disabled){b.stopEvent();return false}return true},disable:function(){this.disabled=true},enable:function(){this.disabled=false}};Ext.tree.DefaultSelectionModel=function(b){this.selNode=null;this.addEvents("selectionchange","beforeselect");Ext.apply(this,b);Ext.tree.DefaultSelectionModel.superclass.constructor.call(this)};Ext.extend(Ext.tree.DefaultSelectionModel,Ext.util.Observable,{init:function(b){this.tree=b;b.getTreeEl().on("keydown",this.onKeyDown,this);b.on("click",this.onNodeClick,this)},onNodeClick:function(d,c){this.select(d)},select:function(c){var d=this.selNode;if(c==d){c.ui.onSelectedChange(true)}else{if(this.fireEvent("beforeselect",this,c,d)!==false){if(d){d.ui.onSelectedChange(false)}this.selNode=c;c.ui.onSelectedChange(true);this.fireEvent("selectionchange",this,c,d)}}return c},unselect:function(b){if(this.selNode==b){this.clearSelections()}},clearSelections:function(){var b=this.selNode;if(b){b.ui.onSelectedChange(false);this.selNode=null;this.fireEvent("selectionchange",this,null)}return b},getSelectedNode:function(){return this.selNode},isSelected:function(b){return this.selNode==b},selectPrevious:function(){var e=this.selNode||this.lastSelNode;if(!e){return null}var g=e.previousSibling;if(g){if(!g.isExpanded()||g.childNodes.length<1){return this.select(g)}else{var d=g.lastChild;while(d&&d.isExpanded()&&d.childNodes.length>0){d=d.lastChild}return this.select(d)}}else{if(e.parentNode&&(this.tree.rootVisible||!e.parentNode.isRoot)){return this.select(e.parentNode)}}return null},selectNext:function(){var c=this.selNode||this.lastSelNode;if(!c){return null}if(c.firstChild&&c.isExpanded()){return this.select(c.firstChild)}else{if(c.nextSibling){return this.select(c.nextSibling)}else{if(c.parentNode){var d=null;c.parentNode.bubble(function(){if(this.nextSibling){d=this.getOwnerTree().selModel.select(this.nextSibling);return false}});return d}}}return null},onKeyDown:function(i){var e=this.selNode||this.lastSelNode;var h=this;if(!e){return}var g=i.getKey();switch(g){case i.DOWN:i.stopEvent();this.selectNext();break;case i.UP:i.stopEvent();this.selectPrevious();break;case i.RIGHT:i.preventDefault();if(e.hasChildNodes()){if(!e.isExpanded()){e.expand()}else{if(e.firstChild){this.select(e.firstChild,i)}}}break;case i.LEFT:i.preventDefault();if(e.hasChildNodes()&&e.isExpanded()){e.collapse()}else{if(e.parentNode&&(this.tree.rootVisible||e.parentNode!=this.tree.getRootNode())){this.select(e.parentNode,i)}}break}}});Ext.tree.MultiSelectionModel=function(b){this.selNodes=[];this.selMap={};this.addEvents("selectionchange");Ext.apply(this,b);Ext.tree.MultiSelectionModel.superclass.constructor.call(this)};Ext.extend(Ext.tree.MultiSelectionModel,Ext.util.Observable,{init:function(b){this.tree=b;b.getTreeEl().on("keydown",this.onKeyDown,this);b.on("click",this.onNodeClick,this)},onNodeClick:function(d,c){if(c.ctrlKey&&this.isSelected(d)){this.unselect(d)}else{this.select(d,c,c.ctrlKey)}},select:function(e,g,d){if(d!==true){this.clearSelections(true)}if(this.isSelected(e)){this.lastSelNode=e;return e}this.selNodes.push(e);this.selMap[e.id]=e;this.lastSelNode=e;e.ui.onSelectedChange(true);this.fireEvent("selectionchange",this,this.selNodes);return e},unselect:function(d){if(this.selMap[d.id]){d.ui.onSelectedChange(false);var g=this.selNodes;var e=g.indexOf(d);if(e!=-1){this.selNodes.splice(e,1)}delete this.selMap[d.id];this.fireEvent("selectionchange",this,this.selNodes)}},clearSelections:function(e){var h=this.selNodes;if(h.length>0){for(var i=0,g=h.length;i<g;i++){h[i].ui.onSelectedChange(false)}this.selNodes=[];this.selMap={};if(e!==true){this.fireEvent("selectionchange",this,this.selNodes)}}},isSelected:function(b){return this.selMap[b.id]?true:false},getSelectedNodes:function(){return this.selNodes},onKeyDown:Ext.tree.DefaultSelectionModel.prototype.onKeyDown,selectNext:Ext.tree.DefaultSelectionModel.prototype.selectNext,selectPrevious:Ext.tree.DefaultSelectionModel.prototype.selectPrevious});Ext.data.Tree=function(b){this.nodeHash={};this.root=null;if(b){this.setRootNode(b)}this.addEvents("append","remove","move","insert","beforeappend","beforeremove","beforemove","beforeinsert");Ext.data.Tree.superclass.constructor.call(this)};Ext.extend(Ext.data.Tree,Ext.util.Observable,{pathSeparator:"/",proxyNodeEvent:function(){return this.fireEvent.apply(this,arguments)},getRootNode:function(){return this.root},setRootNode:function(b){this.root=b;b.ownerTree=this;b.isRoot=true;this.registerNode(b);return b},getNodeById:function(b){return this.nodeHash[b]},registerNode:function(b){this.nodeHash[b.id]=b},unregisterNode:function(b){delete this.nodeHash[b.id]},toString:function(){return"[Tree"+(this.id?" "+this.id:"")+"]"}});Ext.data.Node=function(b){this.attributes=b||{};this.leaf=this.attributes.leaf;this.id=this.attributes.id;if(!this.id){this.id=Ext.id(null,"xnode-");this.attributes.id=this.id}this.childNodes=[];if(!this.childNodes.indexOf){this.childNodes.indexOf=function(e){for(var g=0,a=this.length;g<a;g++){if(this[g]==e){return g}}return -1}}this.parentNode=null;this.firstChild=null;this.lastChild=null;this.previousSibling=null;this.nextSibling=null;this.addEvents({append:true,remove:true,move:true,insert:true,beforeappend:true,beforeremove:true,beforemove:true,beforeinsert:true});this.listeners=this.attributes.listeners;Ext.data.Node.superclass.constructor.call(this)};Ext.extend(Ext.data.Node,Ext.util.Observable,{fireEvent:function(c){if(Ext.data.Node.superclass.fireEvent.apply(this,arguments)===false){return false}var d=this.getOwnerTree();if(d){if(d.proxyNodeEvent.apply(d,arguments)===false){return false}}return true},isLeaf:function(){return this.leaf===true},setFirstChild:function(b){this.firstChild=b},setLastChild:function(b){this.lastChild=b},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(m){var l=false;if(Ext.isArray(m)){l=m}else{if(arguments.length>1){l=arguments}}if(l){for(var n=0,j=l.length;n<j;n++){this.appendChild(l[n])}}else{if(this.fireEvent("beforeappend",this.ownerTree,this,m)===false){return false}var i=this.childNodes.length;var o=m.parentNode;if(o){if(m.fireEvent("beforemove",m.getOwnerTree(),m,o,this,i)===false){return false}o.removeChild(m)}i=this.childNodes.length;if(i===0){this.setFirstChild(m)}this.childNodes.push(m);m.parentNode=this;var k=this.childNodes[i-1];if(k){m.previousSibling=k;k.nextSibling=m}else{m.previousSibling=null}m.nextSibling=null;this.setLastChild(m);m.setOwnerTree(this.getOwnerTree());this.fireEvent("append",this.ownerTree,this,m,i);if(o){m.fireEvent("move",this.ownerTree,m,o,this,i)}return m}},removeChild:function(c){var d=this.childNodes.indexOf(c);if(d==-1){return false}if(this.fireEvent("beforeremove",this.ownerTree,this,c)===false){return false}this.childNodes.splice(d,1);if(c.previousSibling){c.previousSibling.nextSibling=c.nextSibling}if(c.nextSibling){c.nextSibling.previousSibling=c.previousSibling}if(this.firstChild==c){this.setFirstChild(c.nextSibling)}if(this.lastChild==c){this.setLastChild(c.previousSibling)}c.setOwnerTree(null);c.parentNode=null;c.previousSibling=null;c.nextSibling=null;this.fireEvent("remove",this.ownerTree,this,c);return c},insertBefore:function(l,i){if(!i){return this.appendChild(l)}if(l==i){return false}if(this.fireEvent("beforeinsert",this.ownerTree,this,l,i)===false){return false}var h=this.childNodes.indexOf(i);var m=l.parentNode;var k=h;if(m==this&&this.childNodes.indexOf(l)<h){k--}if(m){if(l.fireEvent("beforemove",l.getOwnerTree(),l,m,this,h,i)===false){return false}m.removeChild(l)}if(k===0){this.setFirstChild(l)}this.childNodes.splice(k,0,l);l.parentNode=this;var j=this.childNodes[k-1];if(j){l.previousSibling=j;j.nextSibling=l}else{l.previousSibling=null}l.nextSibling=i;i.previousSibling=l;l.setOwnerTree(this.getOwnerTree());this.fireEvent("insert",this.ownerTree,this,l,i);if(m){l.fireEvent("move",this.ownerTree,l,m,this,k,i)}return l},remove:function(){this.parentNode.removeChild(this);return this},item:function(b){return this.childNodes[b]},replaceChild:function(e,g){var d=g?g.nextSibling:null;this.removeChild(g);this.insertBefore(e,d);return g},indexOf:function(b){return this.childNodes.indexOf(b)},getOwnerTree:function(){if(!this.ownerTree){var b=this;while(b){if(b.ownerTree){this.ownerTree=b.ownerTree;break}b=b.parentNode}}return this.ownerTree},getDepth:function(){var c=0;var d=this;while(d.parentNode){++c;d=d.parentNode}return c},setOwnerTree:function(e){if(e!=this.ownerTree){if(this.ownerTree){this.ownerTree.unregisterNode(this)}this.ownerTree=e;var h=this.childNodes;for(var i=0,g=h.length;i<g;i++){h[i].setOwnerTree(e)}if(e){e.registerNode(this)}}},setId:function(c){if(c!==this.id){var d=this.ownerTree;if(d){d.unregisterNode(this)}this.id=c;if(d){d.registerNode(this)}this.onIdChange(c)}},onIdChange:Ext.emptyFn,getPath:function(i){i=i||"id";var g=this.parentNode;var b=[this.attributes[i]];while(g){b.unshift(g.attributes[i]);g=g.parentNode}var h=this.getOwnerTree().pathSeparator;return h+b.join(h)},bubble:function(i,e,g){var h=this;while(h){if(i.apply(e||h,g||[h])===false){break}h=h.parentNode}},cascade:function(j,k,h){if(j.apply(k||this,h||[this])!==false){var l=this.childNodes;for(var m=0,i=l.length;m<i;m++){l[m].cascade(j,k,h)}}},eachChild:function(j,k,h){var l=this.childNodes;for(var m=0,i=l.length;m<i;m++){if(j.apply(k||this,h||[l[m]])===false){break}}},findChild:function(j,i){var k=this.childNodes;for(var g=0,h=k.length;g<h;g++){if(k[g].attributes[j]==i){return k[g]}}return null},findChildBy:function(i,j){var k=this.childNodes;for(var g=0,h=k.length;g<h;g++){if(i.call(j||k[g],k[g])===true){return k[g]}}return null},sort:function(m,n){var o=this.childNodes;var j=o.length;if(j>0){var l=n?function(){m.apply(n,arguments)}:m;o.sort(l);for(var i=0;i<j;i++){var k=o[i];k.previousSibling=o[i-1];k.nextSibling=o[i+1];if(i===0){this.setFirstChild(k)}if(i==j-1){this.setLastChild(k)}}}},contains:function(b){return b.isAncestor(this)},isAncestor:function(d){var c=this.parentNode;while(c){if(c==d){return true}c=c.parentNode}return false},toString:function(){return"[Node"+(this.id?" "+this.id:"")+"]"}});Ext.tree.TreeNode=function(d){d=d||{};if(typeof d=="string"){d={text:d}}this.childrenRendered=false;this.rendered=false;Ext.tree.TreeNode.superclass.constructor.call(this,d);this.expanded=d.expanded===true;this.isTarget=d.isTarget!==false;this.draggable=d.draggable!==false&&d.allowDrag!==false;this.allowChildren=d.allowChildren!==false&&d.allowDrop!==false;this.text=d.text;this.disabled=d.disabled===true;this.hidden=d.hidden===true;this.addEvents("textchange","beforeexpand","beforecollapse","expand","disabledchange","collapse","beforeclick","click","checkchange","dblclick","contextmenu","beforechildrenrendered");var c=this.attributes.uiProvider||this.defaultUI||Ext.tree.TreeNodeUI;this.ui=new c(this)};Ext.extend(Ext.tree.TreeNode,Ext.data.Node,{preventHScroll:true,isExpanded:function(){return this.expanded},getUI:function(){return this.ui},getLoader:function(){var b;return this.loader||((b=this.getOwnerTree())&&b.loader?b.loader:new Ext.tree.TreeLoader())},setFirstChild:function(d){var c=this.firstChild;Ext.tree.TreeNode.superclass.setFirstChild.call(this,d);if(this.childrenRendered&&c&&d!=c){c.renderIndent(true,true)}if(this.rendered){this.renderIndent(true,true)}},setLastChild:function(c){var d=this.lastChild;Ext.tree.TreeNode.superclass.setLastChild.call(this,c);if(this.childrenRendered&&d&&c!=d){d.renderIndent(true,true)}if(this.rendered){this.renderIndent(true,true)}},appendChild:function(c){if(!c.render&&!Ext.isArray(c)){c=this.getLoader().createNode(c)}var d=Ext.tree.TreeNode.superclass.appendChild.call(this,c);if(d&&this.childrenRendered){d.render()}this.ui.updateExpandIcon();return d},removeChild:function(b){this.ownerTree.getSelectionModel().unselect(b);Ext.tree.TreeNode.superclass.removeChild.apply(this,arguments);if(this.childrenRendered){b.ui.remove()}if(this.childNodes.length<1){this.collapse(false,false)}else{this.ui.updateExpandIcon()}if(!this.firstChild&&!this.isHiddenRoot()){this.childrenRendered=false}return b},insertBefore:function(g,e){if(!g.render){g=this.getLoader().createNode(g)}var d=Ext.tree.TreeNode.superclass.insertBefore.call(this,g,e);if(d&&e&&this.childrenRendered){g.render()}this.ui.updateExpandIcon();return d},setText:function(c){var d=this.text;this.text=c;this.attributes.text=c;if(this.rendered){this.ui.onTextChange(this,c,d)}this.fireEvent("textchange",this,c,d)},select:function(){this.getOwnerTree().getSelectionModel().select(this)},unselect:function(){this.getOwnerTree().getSelectionModel().unselect(this)},isSelected:function(){return this.getOwnerTree().getSelectionModel().isSelected(this)},expand:function(g,i,h,e){if(!this.expanded){if(this.fireEvent("beforeexpand",this,g,i)===false){return}if(!this.childrenRendered){this.renderChildren()}this.expanded=true;if(!this.isHiddenRoot()&&(this.getOwnerTree().animate&&i!==false)||i){this.ui.animExpand(function(){this.fireEvent("expand",this);this.runCallback(h,e||this,[this]);if(g===true){this.expandChildNodes(true)}}.createDelegate(this));return}else{this.ui.expand();this.fireEvent("expand",this);this.runCallback(h,e||this,[this])}}else{this.runCallback(h,e||this,[this])}if(g===true){this.expandChildNodes(true)}},runCallback:function(e,g,d){if(Ext.isFunction(e)){e.apply(g,d)}},isHiddenRoot:function(){return this.isRoot&&!this.getOwnerTree().rootVisible},collapse:function(i,l,k,m){if(this.expanded&&!this.isHiddenRoot()){if(this.fireEvent("beforecollapse",this,i,l)===false){return}this.expanded=false;if((this.getOwnerTree().animate&&l!==false)||l){this.ui.animCollapse(function(){this.fireEvent("collapse",this);this.runCallback(k,m||this,[this]);if(i===true){this.collapseChildNodes(true)}}.createDelegate(this));return}else{this.ui.collapse();this.fireEvent("collapse",this);this.runCallback(k,m||this,[this])}}else{if(!this.expanded){this.runCallback(k,m||this,[this])}}if(i===true){var n=this.childNodes;for(var o=0,j=n.length;o<j;o++){n[o].collapse(true,false)}}},delayedExpand:function(b){if(!this.expandProcId){this.expandProcId=this.expand.defer(b,this)}},cancelExpand:function(){if(this.expandProcId){clearTimeout(this.expandProcId)}this.expandProcId=false},toggle:function(){if(this.expanded){this.collapse()}else{this.expand()}},ensureVisible:function(g,d){var e=this.getOwnerTree();e.expandPath(this.parentNode?this.parentNode.getPath():this.getPath(),false,function(){var a=e.getNodeById(this.id);e.getTreeEl().scrollChildIntoView(a.ui.anchor);this.runCallback(g,d||this,[this])}.createDelegate(this))},expandChildNodes:function(e){var h=this.childNodes;for(var i=0,g=h.length;i<g;i++){h[i].expand(e)}},collapseChildNodes:function(e){var h=this.childNodes;for(var i=0,g=h.length;i<g;i++){h[i].collapse(e)}},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(e){if(e!==false){this.fireEvent("beforechildrenrendered",this)}var h=this.childNodes;for(var i=0,g=h.length;i<g;i++){h[i].render(true)}this.childrenRendered=true},sort:function(i,j){Ext.tree.TreeNode.superclass.sort.apply(this,arguments);if(this.childrenRendered){var k=this.childNodes;for(var g=0,h=k.length;g<h;g++){k[g].render(true)}}},render:function(b){this.ui.render(b);if(!this.rendered){this.getOwnerTree().registerNode(this);this.rendered=true;if(this.expanded){this.expanded=false;this.expand(false,false)}}},renderIndent:function(g,i){if(i){this.ui.childIndent=null}this.ui.renderIndent();if(g===true&&this.childrenRendered){var j=this.childNodes;for(var k=0,h=j.length;k<h;k++){j[k].renderIndent(true,i)}}},beginUpdate:function(){this.childrenRendered=false},endUpdate:function(){if(this.expanded&&this.rendered){this.renderChildren()}},destroy:function(){if(this.childNodes){for(var c=0,d=this.childNodes.length;c<d;c++){this.childNodes[c].destroy()}this.childNodes=null}if(this.ui.destroy){this.ui.destroy()}},onIdChange:function(b){this.ui.onIdChange(b)}});Ext.tree.TreePanel.nodeTypes.node=Ext.tree.TreeNode;Ext.tree.AsyncTreeNode=function(b){this.loaded=b&&b.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(i,m,k,o){if(this.loading){var l;var n=function(){if(!this.loading){clearInterval(l);this.expand(i,m,k,o)}}.createDelegate(this);l=setInterval(n,200);return}if(!this.loaded){if(this.fireEvent("beforeload",this)===false){return}this.loading=true;this.ui.beforeLoad(this);var j=this.loader||this.attributes.loader||this.getOwnerTree().getLoader();if(j){j.load(this,this.loadComplete.createDelegate(this,[i,m,k,o]),this);return}}Ext.tree.AsyncTreeNode.superclass.expand.call(this,i,m,k,o)},isLoading:function(){return this.loading},loadComplete:function(g,i,h,e){this.loading=false;this.loaded=true;this.ui.afterLoad(this);this.fireEvent("load",this);this.expand(g,i,h,e)},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(c,d){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,c,d)}});Ext.tree.TreePanel.nodeTypes.async=Ext.tree.AsyncTreeNode;Ext.tree.TreeNodeUI=function(b){this.node=b;this.rendered=false;this.animating=false;this.wasLeaf=true;this.ecc="x-tree-ec-icon x-tree-elbow";this.emptyIcon=Ext.BLANK_IMAGE_URL};Ext.tree.TreeNodeUI.prototype={removeChild:function(b){if(this.rendered){this.ctNode.removeChild(b.ui.getEl())}},beforeLoad:function(){this.addClass("x-tree-node-loading")},afterLoad:function(){this.removeClass("x-tree-node-loading")},onTextChange:function(d,g,e){if(this.rendered){this.textNode.innerHTML=g}},onDisableChange:function(d,c){this.disabled=c;if(this.checkbox){this.checkbox.disabled=c}if(c){this.addClass("x-tree-node-disabled")}else{this.removeClass("x-tree-node-disabled")}},onSelectedChange:function(b){if(b){this.focus();this.addClass("x-tree-selected")}else{this.removeClass("x-tree-selected")}},onMove:function(k,m,o,n,p,j){this.childIndent=null;if(this.rendered){var l=n.ui.getContainer();if(!l){this.holder=document.createElement("div");this.holder.appendChild(this.wrap);return}var q=j?j.ui.getEl():null;if(q){l.insertBefore(this.wrap,q)}else{l.appendChild(this.wrap)}this.node.renderIndent(true,o!=n)}},addClass:function(b){if(this.elNode){Ext.fly(this.elNode).addClass(b)}},removeClass:function(b){if(this.elNode){Ext.fly(this.elNode).removeClass(b)}},remove:function(){if(this.rendered){this.holder=document.createElement("div");this.holder.appendChild(this.wrap)}},fireEvent:function(){return this.node.fireEvent.apply(this.node,arguments)},initEvents:function(){this.node.on("move",this.onMove,this);if(this.node.disabled){this.addClass("x-tree-node-disabled");if(this.checkbox){this.checkbox.disabled=true}}if(this.node.hidden){this.hide()}var c=this.node.getOwnerTree();var d=c.enableDD||c.enableDrag||c.enableDrop;if(d&&(!this.node.isRoot||c.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(b){if(this.node.hasListener("contextmenu")||this.node.getOwnerTree().hasListener("contextmenu")){b.preventDefault();this.focus();this.fireEvent("contextmenu",this.node,b)}},onClick:function(d){if(this.dropping){d.stopEvent();return}if(this.fireEvent("beforeclick",this.node,d)!==false){var a=d.getTarget("a");if(!this.disabled&&this.node.attributes.href&&a){this.fireEvent("click",this.node,d);return}else{if(a&&d.ctrlKey){d.stopEvent()}}d.preventDefault();if(this.disabled){return}if(this.node.attributes.singleClickExpand&&!this.animating&&this.node.isExpandable()){this.node.toggle()}this.fireEvent("click",this.node,d)}else{d.stopEvent()}},onDblClick:function(b){b.preventDefault();if(this.disabled){return}if(this.checkbox){this.toggleCheck()}if(!this.animating&&this.node.isExpandable()){this.node.toggle()}this.fireEvent("dblclick",this.node,b)},onOver:function(b){this.addClass("x-tree-node-over")},onOut:function(b){this.removeClass("x-tree-node-over")},onCheckChange:function(){var b=this.checkbox.checked;this.checkbox.defaultChecked=b;this.node.attributes.checked=b;this.fireEvent("checkchange",this.node,b)},ecClick:function(b){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(g){}}else{try{var d=this.node.getOwnerTree().getTreeEl().dom;var e=d.scrollLeft;this.anchor.focus();d.scrollLeft=e}catch(g){}}},toggleCheck:function(c){var d=this.checkbox;if(d){d.checked=(c===undefined?!d.checked:c);this.onCheckChange()}},blur:function(){try{this.anchor.blur()}catch(b){}},animExpand:function(c){var d=Ext.get(this.ctNode);d.stopFx();if(!this.node.isExpandable()){this.updateExpandIcon();this.ctNode.style.display="";Ext.callback(c);return}this.animating=true;this.updateExpandIcon();d.slideIn("t",{callback:function(){this.animating=false;Ext.callback(c)},scope:this,duration:this.node.ownerTree.duration||0.25})},highlight:function(){var b=this.node.getOwnerTree();Ext.fly(this.wrap).highlight(b.hlColor||"C3DAF9",{endColor:b.hlBaseColor})},collapse:function(){this.updateExpandIcon();this.ctNode.style.display="none"},animCollapse:function(c){var d=Ext.get(this.ctNode);d.enableDisplayMode("block");d.stopFx();this.animating=true;this.updateExpandIcon();d.slideOut("t",{callback:function(){this.animating=false;Ext.callback(c)},scope:this,duration:this.node.ownerTree.duration||0.25})},getContainer:function(){return this.ctNode},getEl:function(){return this.wrap},appendDDGhost:function(b){b.appendChild(this.elNode.cloneNode(true))},getDDRepairXY:function(){return Ext.lib.Dom.getXY(this.iconNode)},onRender:function(){this.render()},render:function(i){var g=this.node,a=g.attributes;var h=g.parentNode?g.parentNode.ui.getContainer():g.ownerTree.innerCt.dom;if(!this.rendered){this.rendered=true;this.renderElements(g,a,h,i);if(a.qtip){if(this.textNode.setAttributeNS){this.textNode.setAttributeNS("ext","qtip",a.qtip);if(a.qtipTitle){this.textNode.setAttributeNS("ext","qtitle",a.qtipTitle)}}else{this.textNode.setAttribute("ext:qtip",a.qtip);if(a.qtipTitle){this.textNode.setAttribute("ext:qtitle",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(i===true){h.appendChild(this.wrap)}}},renderElements:function(r,m,n,a){this.indentMarkup=r.parentNode?r.parentNode.ui.getChildIndent():"";var q=typeof m.checked=="boolean";var t=m.href?m.href:Ext.isGecko?"":"#";var s=['<li class="x-tree-node"><div ext:tree-node-id="',r.id,'" class="x-tree-node-el x-tree-node-leaf x-unselectable ',m.cls,'" unselectable="on">','<span class="x-tree-node-indent">',this.indentMarkup,"</span>",'<img src="',this.emptyIcon,'" class="x-tree-ec-icon x-tree-elbow" />','<img src="',m.icon||this.emptyIcon,'" class="x-tree-node-icon',(m.icon?" x-tree-node-inline-icon":""),(m.iconCls?" "+m.iconCls:""),'" unselectable="on" />',q?('<input class="x-tree-node-cb" type="checkbox" '+(m.checked?'checked="checked" />':"/>")):"",'<a hidefocus="on" class="x-tree-node-anchor" href="',t,'" tabIndex="1" ',m.hrefTarget?' target="'+m.hrefTarget+'"':"",'><span unselectable="on">',r.text,"</span></a></div>",'<ul class="x-tree-node-ct" style="display:none;"></ul>',"</li>"].join("");var u;if(a!==true&&r.nextSibling&&(u=r.nextSibling.ui.getEl())){this.wrap=Ext.DomHelper.insertHtml("beforeBegin",u,s)}else{this.wrap=Ext.DomHelper.insertHtml("beforeEnd",n,s)}this.elNode=this.wrap.childNodes[0];this.ctNode=this.wrap.childNodes[1];var o=this.elNode.childNodes;this.indentNode=o[0];this.ecNode=o[1];this.iconNode=o[2];var p=3;if(q){this.checkbox=o[3];this.checkbox.defaultChecked=this.checkbox.checked;p++}this.anchor=o[p];this.textNode=o[p].firstChild},getAnchor:function(){return this.anchor},getTextEl:function(){return this.textNode},getIconEl:function(){return this.iconNode},isChecked:function(){return this.checkbox?this.checkbox.checked:false},updateExpandIcon:function(){if(this.rendered){var j=this.node,l,m;var i=j.isLast()?"x-tree-elbow-end":"x-tree-elbow";var k=j.hasChildNodes();if(k||j.attributes.expandable){if(j.expanded){i+="-minus";l="x-tree-node-collapsed";m="x-tree-node-expanded"}else{i+="-plus";l="x-tree-node-expanded";m="x-tree-node-collapsed"}if(this.wasLeaf){this.removeClass("x-tree-node-leaf");this.wasLeaf=false}if(this.c1!=l||this.c2!=m){Ext.fly(this.elNode).replaceClass(l,m);this.c1=l;this.c2=m}}else{if(!this.wasLeaf){Ext.fly(this.elNode).replaceClass("x-tree-node-expanded","x-tree-node-leaf");delete this.c1;delete this.c2;this.wasLeaf=true}}var h="x-tree-ec-icon "+i;if(this.ecc!=h){this.ecNode.className=h;this.ecc=h}}},onIdChange:function(b){if(this.rendered){this.elNode.setAttribute("ext:tree-node-id",b)}},getChildIndent:function(){if(!this.childIndent){var d=[];var c=this.node;while(c){if(!c.isRoot||(c.isRoot&&c.ownerTree.rootVisible)){if(!c.isLast()){d.unshift('<img src="'+this.emptyIcon+'" class="x-tree-elbow-line" />')}else{d.unshift('<img src="'+this.emptyIcon+'" class="x-tree-icon" />')}}c=c.parentNode}this.childIndent=d.join("")}return this.childIndent},renderIndent:function(){if(this.rendered){var d="";var c=this.node.parentNode;if(c){d=c.ui.getChildIndent()}if(this.indentMarkup!=d){this.indentNode.innerHTML=d;this.indentMarkup=d}this.updateExpandIcon()}},destroy:function(){if(this.elNode){Ext.dd.Registry.unregister(this.elNode.id)}delete this.elNode;delete this.ctNode;delete this.indentNode;delete this.ecNode;delete this.iconNode;delete this.checkbox;delete this.anchor;delete this.textNode;if(this.holder){delete this.wrap;Ext.removeNode(this.holder);delete this.holder}else{Ext.removeNode(this.wrap);delete this.wrap}}};Ext.tree.RootTreeNodeUI=Ext.extend(Ext.tree.TreeNodeUI,{render:function(){if(!this.rendered){var b=this.node.ownerTree.innerCt.dom;this.node.expanded=true;b.innerHTML='<div class="x-tree-root-node"></div>';this.wrap=this.ctNode=b.firstChild}},collapse:Ext.emptyFn,expand:Ext.emptyFn});Ext.tree.TreeLoader=function(b){this.baseParams={};Ext.apply(this,b);this.addEvents("beforeload","load","loadexception");Ext.tree.TreeLoader.superclass.constructor.call(this);if(typeof this.paramOrder=="string"){this.paramOrder=this.paramOrder.split(/[\s,|]/)}};Ext.extend(Ext.tree.TreeLoader,Ext.util.Observable,{uiProviders:{},clearOnLoad:true,paramOrder:undefined,paramsAsHash:false,directFn:undefined,load:function(d,g,e){if(this.clearOnLoad){while(d.firstChild){d.removeChild(d.firstChild)}}if(this.doPreload(d)){this.runCallback(g,e||d,[])}else{if(this.directFn||this.dataUrl||this.url){this.requestData(d,g,e||d)}}},doPreload:function(j){if(j.attributes.children){if(j.childNodes.length<1){var k=j.attributes.children;j.beginUpdate();for(var g=0,h=k.length;g<h;g++){var i=j.appendChild(this.createNode(k[g]));if(this.preloadChildren){this.doPreload(i)}}j.endUpdate()}return true}return false},getParams:function(j){var h=[],k=this.baseParams;if(this.directFn){h.push(j.id);if(k){if(this.paramOrder){for(var l=0,i=this.paramOrder.length;l<i;l++){h.push(k[this.paramOrder[l]])}}else{if(this.paramsAsHash){h.push(k)}}}return h}else{for(var m in k){if(!Ext.isFunction(k[m])){h.push(encodeURIComponent(m),"=",encodeURIComponent(k[m]),"&")}}h.push("node=",encodeURIComponent(j.id));return h.join("")}},requestData:function(i,h,e){if(this.fireEvent("beforeload",this,i,h)!==false){if(this.directFn){var g=this.getParams(i);g.push(this.processDirectResponse.createDelegate(this,[{callback:h,node:i,scope:e}],true));this.directFn.apply(window,g)}else{this.transId=Ext.Ajax.request({method:this.requestMethod,url:this.dataUrl||this.url,success:this.handleResponse,failure:this.handleFailure,scope:this,argument:{callback:h,node:i,scope:e},params:this.getParams(i)})}}else{this.runCallback(h,e||i,[])}},processDirectResponse:function(e,d,g){if(d.status){this.handleResponse({responseData:Ext.isArray(e)?e:null,responseText:e,argument:g})}else{this.handleFailure({argument:g})}},runCallback:function(e,g,d){if(Ext.isFunction(e)){e.apply(g,d)}},isLoading:function(){return !!this.transId},abort:function(){if(this.isLoading()){Ext.Ajax.abort(this.transId)}},createNode:function(attr){if(this.baseAttrs){Ext.applyIf(attr,this.baseAttrs)}if(this.applyLoader!==false){attr.loader=this}if(typeof attr.uiProvider=="string"){attr.uiProvider=this.uiProviders[attr.uiProvider]||eval(attr.uiProvider)}if(attr.nodeType){return new Ext.tree.TreePanel.nodeTypes[attr.nodeType](attr)}else{return attr.leaf?new Ext.tree.TreeNode(attr):new Ext.tree.AsyncTreeNode(attr)}},processResponse:function(r,s,n,i){var e=r.responseText;try{var u=r.responseData||Ext.decode(e);s.beginUpdate();for(var q=0,p=u.length;q<p;q++){var t=this.createNode(u[q]);if(t){s.appendChild(t)}}s.endUpdate();this.runCallback(n,i||s,[s])}catch(o){this.handleFailure(r)}},handleResponse:function(d){this.transId=false;var a=d.argument;this.processResponse(d,a.node,a.callback,a.scope);this.fireEvent("load",this,a.node,d)},handleFailure:function(d){this.transId=false;var a=d.argument;this.fireEvent("loadexception",this,a.node,d);this.runCallback(a.callback,a.scope||a.node,[a.node])}});Ext.tree.TreeFilter=function(d,c){this.tree=d;this.filtered={};Ext.apply(this,c)};Ext.tree.TreeFilter.prototype={clearBlank:false,reverse:false,autoClear:false,remove:false,filter:function(j,h,g){h=h||"text";var k;if(typeof j=="string"){var i=j.length;if(i==0&&this.clearBlank){this.clear();return}j=j.toLowerCase();k=function(a){return a.attributes[h].substr(0,i).toLowerCase()==j}}else{if(j.exec){k=function(a){return j.test(a.attributes[h])}}else{throw"Illegal filter type, must be string or regex"}}this.filterBy(k,null,g)},filterBy:function(p,q,j){j=j||this.tree.root;if(this.autoClear){this.clear()}var k=this.filtered,l=this.reverse;var o=function(a){if(a==j){return true}if(k[a.id]){return false}var b=p.call(q||a,a);if(!b||l){k[a.id]=a;a.ui.hide();return false}return true};j.cascade(o);if(this.remove){for(var m in k){if(typeof m!="function"){var n=k[m];if(n&&n.parentNode){n.parentNode.removeChild(n)}}}}},clear:function(){var e=this.tree;var g=this.filtered;for(var h in g){if(typeof h!="function"){var i=g[h];if(i){i.ui.show()}}}this.filtered={}}};Ext.tree.TreeSorter=function(j,q){Ext.apply(this,q);j.on("beforechildrenrendered",this.doSort,this);j.on("append",this.updateSort,this);j.on("insert",this.updateSort,this);j.on("textchange",this.updateSortParent,this);var o=this.dir&&this.dir.toLowerCase()=="desc";var n=this.property||"text";var m=this.sortType;var k=this.folderSort;var p=this.caseSensitive===true;var l=this.leafAttr||"leaf";this.sortFn=function(c,d){if(k){if(c.attributes[l]&&!d.attributes[l]){return 1}if(!c.attributes[l]&&d.attributes[l]){return -1}}var a=m?m(c):(p?c.attributes[n]:c.attributes[n].toUpperCase());var b=m?m(d):(p?d.attributes[n]:d.attributes[n].toUpperCase());if(a<b){return o?+1:-1}else{if(a>b){return o?-1:+1}else{return 0}}}};Ext.tree.TreeSorter.prototype={doSort:function(b){b.sort(this.sortFn)},compareNodes:function(c,d){return(c.text.toUpperCase()>d.text.toUpperCase()?1:-1)},updateSort:function(d,c){if(c.childrenRendered){this.doSort.defer(1,this,[c])}},updateSortParent:function(d){var c=d.parentNode;if(c&&c.childrenRendered){this.doSort.defer(1,this,[c])}}};if(Ext.dd.DropZone){Ext.tree.TreeDropZone=function(d,c){this.allowParentInsert=c.allowParentInsert||false;this.allowContainerDrop=c.allowContainerDrop||false;this.appendOnly=c.appendOnly||false;Ext.tree.TreeDropZone.superclass.constructor.call(this,d.getTreeEl(),c);this.tree=d;this.dragOverData={};this.lastInsertClass="x-tree-no-status"};Ext.extend(Ext.tree.TreeDropZone,Ext.dd.DropZone,{ddGroup:"TreeDD",expandDelay:1000,expandNode:function(b){if(b.hasChildNodes()&&!b.isExpanded()){b.expand(false,null,this.triggerCacheRefresh.createDelegate(this))}},queueExpand:function(b){this.expandProcId=this.expandNode.defer(this.expandDelay,this,[b])},cancelExpand:function(){if(this.expandProcId){clearTimeout(this.expandProcId);this.expandProcId=false}},isValidDropPoint:function(s,e,m,p,q){if(!s||!q){return false}var o=s.node;var n=q.node;if(!(o&&o.isTarget&&e)){return false}if(e=="append"&&o.allowChildren===false){return false}if((e=="above"||e=="below")&&(o.parentNode&&o.parentNode.allowChildren===false)){return false}if(n&&(o==n||n.contains(o))){return false}var r=this.dragOverData;r.tree=this.tree;r.target=o;r.data=q;r.point=e;r.source=m;r.rawEvent=p;r.dropNode=n;r.cancel=false;var l=this.tree.fireEvent("nodedragover",r);return r.cancel===false&&l!==false},getDropPoint:function(s,t,n){var e=t.node;if(e.isRoot){return e.allowChildren!==false?"append":false}var v=t.ddel;var b=Ext.lib.Dom.getY(v),q=b+v.offsetHeight;var r=Ext.lib.Event.getPageY(s);var p=e.allowChildren===false||e.isLeaf();if(this.appendOnly||e.parentNode.allowChildren===false){return p?false:"append"}var u=false;if(!this.allowParentInsert){u=e.hasChildNodes()&&e.isExpanded()}var w=(q-b)/(p?2:3);if(r>=b&&r<(b+w)){return"above"}else{if(!u&&(p||r>=q-w&&r<=q)){return"below"}else{return"append"}}},onNodeEnter:function(h,g,i,e){this.cancelExpand()},onContainerOver:function(e,g,d){if(this.allowContainerDrop&&this.isValidDropPoint({ddel:this.tree.getRootNode().ui.elNode,node:this.tree.getRootNode()},"append",e,g,d)){return this.dropAllowed}return this.dropNotAllowed},onNodeOver:function(r,m,n,o){var e=this.getDropPoint(n,r,m);var q=r.node;if(!this.expandProcId&&e=="append"&&q.hasChildNodes()&&!r.node.isExpanded()){this.queueExpand(q)}else{if(e!="append"){this.cancelExpand()}}var p=this.dropNotAllowed;if(this.isValidDropPoint(r,e,m,n,o)){if(e){var s=r.ddel;var l;if(e=="above"){p=r.node.isFirst()?"x-tree-drop-ok-above":"x-tree-drop-ok-between";l="x-tree-drag-insert-above"}else{if(e=="below"){p=r.node.isLast()?"x-tree-drop-ok-below":"x-tree-drop-ok-between";l="x-tree-drag-insert-below"}else{p="x-tree-drop-ok-append";l="x-tree-drag-append"}}if(this.lastInsertClass!=l){Ext.fly(s).replaceClass(this.lastInsertClass,l);this.lastInsertClass=l}}}return p},onNodeOut:function(h,g,i,e){this.cancelExpand();this.removeDropIndicators(h)},onNodeDrop:function(k,e,l,n){var j=this.getDropPoint(l,k,e);var m=k.node;m.ui.startDrop();if(!this.isValidDropPoint(k,j,e,l,n)){m.ui.endDrop();return false}var o=n.node||(e.getTreeNode?e.getTreeNode(n,m,j,l):null);return this.processDrop(m,n,j,e,l,o)},onContainerDrop:function(h,i,k){if(this.allowContainerDrop&&this.isValidDropPoint({ddel:this.tree.getRootNode().ui.elNode,node:this.tree.getRootNode()},"append",h,i,k)){var j=this.tree.getRootNode();j.ui.startDrop();var e=k.node||(h.getTreeNode?h.getTreeNode(k,j,"append",i):null);return this.processDrop(j,k,"append",h,i,e)}return false},processDrop:function(l,n,e,k,m,p){var o={tree:this.tree,target:l,data:n,point:e,source:k,rawEvent:m,dropNode:p,cancel:!p,dropStatus:false};var q=this.tree.fireEvent("beforenodedrop",o);if(q===false||o.cancel===true||!o.dropNode){l.ui.endDrop();return o.dropStatus}l=o.target;if(e=="append"&&!l.isExpanded()){l.expand(false,null,function(){this.completeDrop(o)}.createDelegate(this))}else{this.completeDrop(o)}return true},completeDrop:function(k){var n=k.dropNode,m=k.point,o=k.target;if(!Ext.isArray(n)){n=[n]}var l;for(var i=0,j=n.length;i<j;i++){l=n[i];if(m=="above"){o.parentNode.insertBefore(l,o)}else{if(m=="below"){o.parentNode.insertBefore(l,o.nextSibling)}else{o.appendChild(l)}}}l.ui.focus();if(Ext.enableFx&&this.tree.hlDrop){l.ui.highlight()}o.ui.endDrop();this.tree.fireEvent("nodedrop",k)},afterNodeMoved:function(h,k,i,j,e){if(Ext.enableFx&&this.tree.hlDrop){e.ui.focus();e.ui.highlight()}this.tree.fireEvent("nodedrop",this.tree,j,k,h,i)},getTree:function(){return this.tree},removeDropIndicators:function(c){if(c&&c.ddel){var d=c.ddel;Ext.fly(d).removeClass(["x-tree-drag-insert-above","x-tree-drag-insert-below","x-tree-drag-append"]);this.lastInsertClass="_noclass"}},beforeDragDrop:function(d,e,g){this.cancelExpand();return true},afterRepair:function(b){if(b&&Ext.enableFx){b.node.ui.highlight()}this.hideProxy()}})}if(Ext.dd.DragZone){Ext.tree.TreeDragZone=function(d,c){Ext.tree.TreeDragZone.superclass.constructor.call(this,d.innerCt,c);this.tree=d};Ext.extend(Ext.tree.TreeDragZone,Ext.dd.DragZone,{ddGroup:"TreeDD",onBeforeDrag:function(e,d){var g=e.node;return g&&g.draggable&&!g.disabled},onInitDrag:function(c){var d=this.dragData;this.tree.getSelectionModel().select(d.node);this.tree.eventModel.disable();this.proxy.update("");d.node.ui.appendDDGhost(this.proxy.ghost.dom);this.tree.fireEvent("startdrag",this.tree,d.node,c)},getRepairXY:function(c,d){return d.node.ui.getDDRepairXY()},onEndDrag:function(d,c){this.tree.eventModel.enable.defer(100,this.tree.eventModel);this.tree.fireEvent("enddrag",this.tree,d.node,c)},onValidDrop:function(e,d,g){this.tree.fireEvent("dragdrop",this.tree,this.dragData.node,e,d);this.hideProxy()},beforeInvalidDrop:function(e,g){var d=this.tree.getSelectionModel();d.clearSelections();d.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(g,i,e){i=i||{};var h=i.events?i:new Ext.form.TextField(i);Ext.tree.TreeEditor.superclass.constructor.call(this,h,e);this.tree=g;if(!g.rendered){g.on("render",this.initEditor,this)}else{this.initEditor(g)}};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(b){b.on("beforeclick",this.beforeNodeClick,this);b.on("dblclick",this.onNodeDblClick,this);this.on("complete",this.updateNode,this);this.on("beforestartedit",this.fitToTree,this);this.on("startedit",this.bindScroll,this,{delay:10});this.on("specialkey",this.onSpecialKey,this)},fitToTree:function(g,k){var i=this.tree.getTreeEl().dom,j=k.dom;if(i.scrollLeft>j.offsetLeft){i.scrollLeft=j.offsetLeft}var h=Math.min(this.maxWidth,(i.clientWidth>20?i.clientWidth:i.offsetWidth)-Math.max(0,j.offsetLeft-i.scrollLeft)-5);this.setSize(h,"")},triggerEdit:function(e,g){this.completeEdit();if(e.attributes.editable!==false){this.editNode=e;if(this.tree.autoScroll){Ext.fly(e.ui.getEl()).scrollIntoView(this.tree.body)}var d=e.text||"";if(!Ext.isGecko&&Ext.isEmpty(e.text)){e.setText("&#160;")}this.autoEditTimer=this.startEdit.defer(this.editDelay,this,[e.ui.textNode,d]);return false}},bindScroll:function(){this.tree.getTreeEl().on("scroll",this.cancelEdit,this)},beforeNodeClick:function(d,c){clearTimeout(this.autoEditTimer);if(this.tree.getSelectionModel().isSelected(d)){c.stopEvent();return this.triggerEdit(d)}},onNodeDblClick:function(d,c){clearTimeout(this.autoEditTimer)},updateNode:function(d,c){this.tree.getTreeEl().un("scroll",this.cancelEdit,this);this.editNode.setText(c)},onHide:function(){Ext.tree.TreeEditor.superclass.onHide.call(this);if(this.editNode){this.editNode.ui.focus.defer(50,this.editNode.ui)}},onSpecialKey:function(g,d){var e=d.getKey();if(e==d.ESC){d.stopEvent();this.cancelEdit()}else{if(e==d.ENTER&&!d.hasModifier()){d.stopEvent();this.completeEdit()}}}});var swfobject=function(){var ar="undefined",aE="object",ac="Shockwave Flash",Y="ShockwaveFlash.ShockwaveFlash",aF="application/x-shockwave-flash",ad="SWFObjectExprInst",ay="onreadystatechange",ag=window,aM=document,aC=navigator,ab=false,aa=[aO],aH=[],ah=[],am=[],aK,ae,aq,au,al=false,aV=false,aI,ao,aJ=true,ai=function(){var l=typeof aM.getElementById!=ar&&typeof aM.getElementsByTagName!=ar&&typeof aM.createElement!=ar,d=aC.userAgent.toLowerCase(),b=aC.platform.toLowerCase(),h=b?/win/.test(b):/win/.test(d),j=b?/mac/.test(b):/mac/.test(d),g=/webkit/.test(d)?parseFloat(d.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,c=!+"\v1",e=[0,0,0],k=null;if(typeof aC.plugins!=ar&&typeof aC.plugins[ac]==aE){k=aC.plugins[ac].description;if(k&&!(typeof aC.mimeTypes!=ar&&aC.mimeTypes[aF]&&!aC.mimeTypes[aF].enabledPlugin)){ab=true;c=false;k=k.replace(/^.*\s+(\S+\s+\S+$)/,"$1");e[0]=parseInt(k.replace(/^(.*)\..*$/,"$1"),10);e[1]=parseInt(k.replace(/^.*\.(.*)\s.*$/,"$1"),10);e[2]=/[a-zA-Z]/.test(k)?parseInt(k.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof ag.ActiveXObject!=ar){try{var i=new ActiveXObject(Y);if(i){k=i.GetVariable("$version");if(k){c=true;k=k.split(" ")[1].split(",");e=[parseInt(k[0],10),parseInt(k[1],10),parseInt(k[2],10)]}}}catch(a){}}}return{w3:l,pv:e,wk:g,ie:c,win:h,mac:j}}(),aL=function(){if(!ai.w3){return}if((typeof aM.readyState!=ar&&aM.readyState=="complete")||(typeof aM.readyState==ar&&(aM.getElementsByTagName("body")[0]||aM.body))){aQ()}if(!al){if(typeof aM.addEventListener!=ar){aM.addEventListener("DOMContentLoaded",aQ,false)}if(ai.ie&&ai.win){aM.attachEvent(ay,function(){if(aM.readyState=="complete"){aM.detachEvent(ay,arguments.callee);aQ()}});if(ag==top){(function(){if(al){return}try{aM.documentElement.doScroll("left")}catch(a){setTimeout(arguments.callee,0);return}aQ()})()}}if(ai.wk){(function(){if(al){return}if(!/loaded|complete/.test(aM.readyState)){setTimeout(arguments.callee,0);return}aQ()})()}aD(aQ)}}();function aQ(){if(al){return}try{var c=aM.getElementsByTagName("body")[0].appendChild(at("span"));c.parentNode.removeChild(c)}catch(a){return}al=true;var d=aa.length;for(var b=0;b<d;b++){aa[b]()}}function ak(a){if(al){a()}else{aa[aa.length]=a}}function aD(a){if(typeof ag.addEventListener!=ar){ag.addEventListener("load",a,false)}else{if(typeof aM.addEventListener!=ar){aM.addEventListener("load",a,false)}else{if(typeof ag.attachEvent!=ar){aN(ag,"onload",a)}else{if(typeof ag.onload=="function"){var b=ag.onload;ag.onload=function(){b();a()}}else{ag.onload=a}}}}}function aO(){if(ab){Z()}else{an()}}function Z(){var d=aM.getElementsByTagName("body")[0];var a=at(aE);a.setAttribute("type",aF);var c=d.appendChild(a);if(c){var b=0;(function(){if(typeof c.GetVariable!=ar){var e=c.GetVariable("$version");if(e){e=e.split(" ")[1].split(",");ai.pv=[parseInt(e[0],10),parseInt(e[1],10),parseInt(e[2],10)]}}else{if(b<10){b++;setTimeout(arguments.callee,10);return}}d.removeChild(a);c=null;an()})()}else{an()}}function an(){var g=aH.length;if(g>0){for(var h=0;h<g;h++){var b=aH[h].id;var l=aH[h].callbackFn;var m={success:false,id:b};if(ai.pv[0]>0){var i=aT(b);if(i){if(ap(aH[h].swfVersion)&&!(ai.wk&&ai.wk<312)){az(b,true);if(l){m.success=true;m.ref=aw(b);l(m)}}else{if(aH[h].expressInstall&&av()){var d={};d.data=aH[h].expressInstall;d.width=i.getAttribute("width")||"0";d.height=i.getAttribute("height")||"0";if(i.getAttribute("class")){d.styleclass=i.getAttribute("class")}if(i.getAttribute("align")){d.align=i.getAttribute("align")}var e={};var c=i.getElementsByTagName("param");var k=c.length;for(var j=0;j<k;j++){if(c[j].getAttribute("name").toLowerCase()!="movie"){e[c[j].getAttribute("name")]=c[j].getAttribute("value")}}af(d,e,b,l)}else{aG(i);if(l){l(m)}}}}}else{az(b,true);if(l){var a=aw(b);if(a&&typeof a.SetVariable!=ar){m.success=true;m.ref=a}l(m)}}}}}function aw(a){var d=null;var c=aT(a);if(c&&c.nodeName=="OBJECT"){if(typeof c.SetVariable!=ar){d=c}else{var b=c.getElementsByTagName(aE)[0];if(b){d=b}}}return d}function av(){return !aV&&ap("6.0.65")&&(ai.win||ai.mac)&&!(ai.wk&&ai.wk<312)}function af(e,d,i,h){aV=true;aq=h||null;au={success:false,id:i};var a=aT(i);if(a){if(a.nodeName=="OBJECT"){aK=aP(a);ae=null}else{aK=a;ae=i}e.id=ad;if(typeof e.width==ar||(!/%$/.test(e.width)&&parseInt(e.width,10)<310)){e.width="310"}if(typeof e.height==ar||(!/%$/.test(e.height)&&parseInt(e.height,10)<137)){e.height="137"}aM.title=aM.title.slice(0,47)+" - Flash Player Installation";var b=ai.ie&&ai.win?"ActiveX":"PlugIn",c="MMredirectURL="+ag.location.toString().replace(/&/g,"%26")+"&MMplayerType="+b+"&MMdoctitle="+aM.title;if(typeof d.flashvars!=ar){d.flashvars+="&"+c}else{d.flashvars=c}if(ai.ie&&ai.win&&a.readyState!=4){var g=at("div");i+="SWFObjectNew";g.setAttribute("id",i);a.parentNode.insertBefore(g,a);a.style.display="none";(function(){if(a.readyState==4){a.parentNode.removeChild(a)}else{setTimeout(arguments.callee,10)}})()}aB(e,d,i)}}function aG(a){if(ai.ie&&ai.win&&a.readyState!=4){var b=at("div");a.parentNode.insertBefore(b,a);b.parentNode.replaceChild(aP(a),b);a.style.display="none";(function(){if(a.readyState==4){a.parentNode.removeChild(a)}else{setTimeout(arguments.callee,10)}})()}else{a.parentNode.replaceChild(aP(a),a)}}function aP(b){var c=at("div");if(ai.win&&ai.ie){c.innerHTML=b.innerHTML}else{var e=b.getElementsByTagName(aE)[0];if(e){var a=e.childNodes;if(a){var g=a.length;for(var d=0;d<g;d++){if(!(a[d].nodeType==1&&a[d].nodeName=="PARAM")&&!(a[d].nodeType==8)){c.appendChild(a[d].cloneNode(true))}}}}}return c}function aB(d,g,b){var c,m=aT(b);if(ai.wk&&ai.wk<312){return c}if(m){if(typeof d.id==ar){d.id=b}if(ai.ie&&ai.win){var e="";for(var i in d){if(d[i]!=Object.prototype[i]){if(i.toLowerCase()=="data"){g.movie=d[i]}else{if(i.toLowerCase()=="styleclass"){e+=' class="'+d[i]+'"'}else{if(i.toLowerCase()!="classid"){e+=" "+i+'="'+d[i]+'"'}}}}}var h="";for(var j in g){if(g[j]!=Object.prototype[j]){h+='<param name="'+j+'" value="'+g[j]+'" />'}}m.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+e+">"+h+"</object>";ah[ah.length]=d.id;c=aT(d.id)}else{var a=at(aE);a.setAttribute("type",aF);for(var k in d){if(d[k]!=Object.prototype[k]){if(k.toLowerCase()=="styleclass"){a.setAttribute("class",d[k])}else{if(k.toLowerCase()!="classid"){a.setAttribute(k,d[k])}}}}for(var l in g){if(g[l]!=Object.prototype[l]&&l.toLowerCase()!="movie"){aR(a,l,g[l])}}m.parentNode.replaceChild(a,m);c=a}}return c}function aR(c,d,b){var a=at("param");a.setAttribute("name",d);a.setAttribute("value",b);c.appendChild(a)}function ax(a){var b=aT(a);if(b&&b.nodeName=="OBJECT"){if(ai.ie&&ai.win){b.style.display="none";(function(){if(b.readyState==4){aU(a)}else{setTimeout(arguments.callee,10)}})()}else{b.parentNode.removeChild(b)}}}function aU(b){var a=aT(b);if(a){for(var c in a){if(typeof a[c]=="function"){a[c]=null}}a.parentNode.removeChild(a)}}function aT(b){var c=null;try{c=aM.getElementById(b)}catch(a){}return c}function at(a){return aM.createElement(a)}function aN(b,c,a){b.attachEvent(c,a);am[am.length]=[b,c,a]}function ap(b){var a=ai.pv,c=b.split(".");c[0]=parseInt(c[0],10);c[1]=parseInt(c[1],10)||0;c[2]=parseInt(c[2],10)||0;return(a[0]>c[0]||(a[0]==c[0]&&a[1]>c[1])||(a[0]==c[0]&&a[1]==c[1]&&a[2]>=c[2]))?true:false}function aA(b,g,a,c){if(ai.ie&&ai.mac){return}var d=aM.getElementsByTagName("head")[0];if(!d){return}var h=(a&&typeof a=="string")?a:"screen";if(c){aI=null;ao=null}if(!aI||ao!=h){var e=at("style");e.setAttribute("type","text/css");e.setAttribute("media",h);aI=d.appendChild(e);if(ai.ie&&ai.win&&typeof aM.styleSheets!=ar&&aM.styleSheets.length>0){aI=aM.styleSheets[aM.styleSheets.length-1]}ao=h}if(ai.ie&&ai.win){if(aI&&typeof aI.addRule==aE){aI.addRule(b,g)}}else{if(aI&&typeof aM.createTextNode!=ar){aI.appendChild(aM.createTextNode(b+" {"+g+"}"))}}}function az(b,c){if(!aJ){return}var a=c?"visible":"hidden";if(al&&aT(b)){aT(b).style.visibility=a}else{aA("#"+b,"visibility:"+a)}}function aj(b){var a=/[\\\"<>\.;]/;var c=a.exec(b)!=null;return c&&typeof encodeURIComponent!=ar?encodeURIComponent(b):b}var aS=function(){if(ai.ie&&ai.win){window.attachEvent("onunload",function(){var a=am.length;for(var b=0;b<a;b++){am[b][0].detachEvent(am[b][1],am[b][2])}var e=ah.length;for(var c=0;c<e;c++){ax(ah[c])}for(var d in ai){ai[d]=null}ai=null;for(var g in swfobject){swfobject[g]=null}swfobject=null})}}();return{registerObject:function(a,e,b,d){if(ai.w3&&a&&e){var c={};c.id=a;c.swfVersion=e;c.expressInstall=b;c.callbackFn=d;aH[aH.length]=c;az(a,false)}else{if(d){d({success:false,id:a})}}},getObjectById:function(a){if(ai.w3){return aw(a)}},embedSWF:function(k,d,h,e,b,l,a,i,g,j){var c={success:false,id:d};if(ai.w3&&!(ai.wk&&ai.wk<312)&&k&&d&&h&&e&&b){az(d,false);ak(function(){h+="";e+="";var q={};if(g&&typeof g===aE){for(var o in g){q[o]=g[o]}}q.data=k;q.width=h;q.height=e;var n={};if(i&&typeof i===aE){for(var p in i){n[p]=i[p]}}if(a&&typeof a===aE){for(var r in a){if(typeof n.flashvars!=ar){n.flashvars+="&"+r+"="+a[r]}else{n.flashvars=r+"="+a[r]}}}if(ap(b)){var m=aB(q,n,d);if(q.id==d){az(d,true)}c.success=true;c.ref=m}else{if(l&&av()){q.data=l;af(q,n,d,j);return}else{az(d,true)}}if(j){j(c)}})}else{if(j){j(c)}}},switchOffAutoHideShow:function(){aJ=false},ua:ai,getFlashPlayerVersion:function(){return{major:ai.pv[0],minor:ai.pv[1],release:ai.pv[2]}},hasFlashPlayerVersion:ap,createSWF:function(b,a,c){if(ai.w3){return aB(b,a,c)}else{return undefined}},showExpressInstall:function(c,a,d,b){if(ai.w3&&av()){af(c,a,d,b)}},removeSWF:function(a){if(ai.w3){ax(a)}},createCSS:function(a,c,b,d){if(ai.w3){aA(a,c,b,d)}},addDomLoadEvent:ak,addLoadEvent:aD,getQueryParamValue:function(a){var c=aM.location.search||aM.location.hash;if(c){if(/\?/.test(c)){c=c.split("?")[1]}if(a==null){return aj(c)}var b=c.split("&");for(var d=0;d<b.length;d++){if(b[d].substring(0,b[d].indexOf("="))==a){return aj(b[d].substring((b[d].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(aV){var a=aT(ad);if(a&&aK){a.parentNode.replaceChild(aK,a);if(ae){az(ae,true);if(ai.ie&&ai.win){aK.style.display="block"}}if(aq){aq(au)}}aV=false}}}}();Ext.FlashComponent=Ext.extend(Ext.BoxComponent,{flashVersion:"9.0.45",backgroundColor:"#ffffff",wmode:"opaque",url:undefined,swfId:undefined,swfWidth:"100%",swfHeight:"100%",expressInstall:false,initComponent:function(){Ext.FlashComponent.superclass.initComponent.call(this);this.addEvents("initialize")},onRender:function(){Ext.FlashComponent.superclass.onRender.apply(this,arguments);var c={allowScriptAccess:"always",bgcolor:this.backgroundColor,wmode:this.wmode},d={allowedDomain:document.location.hostname,elementID:this.getId(),eventHandler:"Ext.FlashEventProxy.onEvent"};new swfobject.embedSWF(this.url,this.id,this.swfWidth,this.swfHeight,this.flashVersion,this.expressInstall?Ext.FlashComponent.EXPRESS_INSTALL_URL:undefined,d,c);this.swf=Ext.getDom(this.id);this.el=Ext.get(this.swf)},getSwfId:function(){return this.swfId||(this.swfId="extswf"+(++Ext.Component.AUTO_ID))},getId:function(){return this.id||(this.id="extflashcmp"+(++Ext.Component.AUTO_ID))},onFlashEvent:function(b){switch(b.type){case"swfReady":this.initSwf();return;case"log":return}b.component=this;this.fireEvent(b.type.toLowerCase().replace(/event$/,""),b)},initSwf:function(){this.onSwfReady(!!this.isInitialized);this.isInitialized=true;this.fireEvent("initialize",this)},beforeDestroy:function(){if(this.rendered){swfobject.removeSWF(this.swf.id)}Ext.FlashComponent.superclass.beforeDestroy.call(this)},onSwfReady:Ext.emptyFn});Ext.FlashComponent.EXPRESS_INSTALL_URL="http://swfobject.googlecode.com/svn/trunk/swfobject/expressInstall.swf";Ext.reg("flash",Ext.FlashComponent);Ext.FlashEventProxy={onEvent:function(g,d){var e=Ext.getCmp(g);if(e){e.onFlashEvent(d)}else{arguments.callee.defer(10,this,[g,d])}}};Ext.chart.Chart=Ext.extend(Ext.FlashComponent,{refreshBuffer:100,chartStyle:{padding:10,animationEnabled:true,font:{name:"Tahoma",color:4473924,size:11},dataTip:{padding:5,border:{color:10075112,size:1},background:{color:14346230,alpha:0.9},font:{name:"Tahoma",color:1393291,size:10,bold:true}}},extraStyle:null,disableCaching:Ext.isIE||Ext.isOpera,disableCacheParam:"_dc",initComponent:function(){Ext.chart.Chart.superclass.initComponent.call(this);if(!this.url){this.url=Ext.chart.Chart.CHART_URL}if(this.disableCaching){this.url=Ext.urlAppend(this.url,String.format("{0}={1}",this.disableCacheParam,new Date().getTime()))}this.addEvents("itemmouseover","itemmouseout","itemclick","itemdoubleclick","itemdragstart","itemdrag","itemdragend");this.store=Ext.StoreMgr.lookup(this.store)},setStyle:function(d,c){this.swf.setStyle(d,Ext.encode(c))},setStyles:function(b){this.swf.setStyles(Ext.encode(b))},setSeriesStyles:function(c){var d=[];Ext.each(c,function(a){d.push(Ext.encode(a))});this.swf.setSeriesStyles(d)},setCategoryNames:function(b){this.swf.setCategoryNames(b)},setTipRenderer:function(c){var d=this;this.tipFnName=this.createFnProxy(function(a,h,b){var i=d.store.getAt(h);return c(d,i,h,b)},this.tipFnName);this.swf.setDataTipFunction(this.tipFnName)},setSeries:function(b){this.series=b;this.refresh()},bindStore:function(d,c){if(!c&&this.store){this.store.un("datachanged",this.refresh,this);this.store.un("add",this.delayRefresh,this);this.store.un("remove",this.delayRefresh,this);this.store.un("update",this.delayRefresh,this);this.store.un("clear",this.refresh,this);if(d!==this.store&&this.store.autoDestroy){this.store.destroy()}}if(d){d=Ext.StoreMgr.lookup(d);d.on({scope:this,datachanged:this.refresh,add:this.delayRefresh,remove:this.delayRefresh,update:this.delayRefresh,clear:this.refresh})}this.store=d;if(d&&!c){this.refresh()}},onSwfReady:function(b){Ext.chart.Chart.superclass.onSwfReady.call(this,b);this.swf.setType(this.type);if(this.chartStyle){this.setStyles(Ext.apply(this.extraStyle||{},this.chartStyle))}if(this.categoryNames){this.setCategoryNames(this.categoryNames)}if(this.tipRenderer){this.setTipRenderer(this.tipRenderer)}if(!b){this.bindStore(this.store,true)}this.refresh.defer(10,this)},delayRefresh:function(){if(!this.refreshTask){this.refreshTask=new Ext.util.DelayedTask(this.refresh,this)}this.refreshTask.delay(this.refreshBuffer)},refresh:function(){var j=false;var p=[],u=this.store.data.items;for(var r=0,o=u.length;r<o;r++){p[r]=u[r].data}var s=[];var t=0;var i=null;var q=0;if(this.series){t=this.series.length;for(q=0;q<t;q++){i=this.series[q];var v={};for(var w in i){if(w=="style"&&i.style!==null){v.style=Ext.encode(i.style);j=true}else{v[w]=i[w]}}s.push(v)}}if(t>0){for(q=0;q<t;q++){i=s[q];if(!i.type){i.type=this.type}i.dataProvider=p}}else{s.push({type:this.type,dataProvider:p})}this.swf.setDataProvider(s)},createFnProxy:function(d,e){if(e){delete window[e]}var g="extFnProxy"+(++Ext.chart.Chart.PROXY_FN_ID);window[g]=d;return g},onDestroy:function(){Ext.chart.Chart.superclass.onDestroy.call(this);delete window[this.tipFnName]}});Ext.reg("chart",Ext.chart.Chart);Ext.chart.Chart.PROXY_FN_ID=0;Ext.chart.Chart.CHART_URL="http://yui.yahooapis.com/2.7.0/build/charts/assets/charts.swf";Ext.chart.PieChart=Ext.extend(Ext.chart.Chart,{type:"pie",onSwfReady:function(b){Ext.chart.PieChart.superclass.onSwfReady.call(this,b);this.setDataField(this.dataField);this.setCategoryField(this.categoryField)},setDataField:function(b){this.dataField=b;this.swf.setDataField(b)},setCategoryField:function(b){this.categoryField=b;this.swf.setCategoryField(b)}});Ext.reg("piechart",Ext.chart.PieChart);Ext.chart.CartesianChart=Ext.extend(Ext.chart.Chart,{onSwfReady:function(b){Ext.chart.CartesianChart.superclass.onSwfReady.call(this,b);if(this.xField){this.setXField(this.xField)}if(this.yField){this.setYField(this.yField)}if(this.xAxis){this.setXAxis(this.xAxis)}if(this.yAxis){this.setYAxis(this.yAxis)}},setXField:function(b){this.xField=b;this.swf.setHorizontalField(b)},setYField:function(b){this.yField=b;this.swf.setVerticalField(b)},setXAxis:function(b){this.xAxis=this.createAxis("xAxis",b);this.swf.setHorizontalAxis(this.xAxis)},setYAxis:function(b){this.yAxis=this.createAxis("yAxis",b);this.swf.setVerticalAxis(this.yAxis)},createAxis:function(k,j){var i=Ext.apply({},j),h=null;if(this[k]){h=this[k].labelFunction}if(i.labelRenderer){var g=i.labelRenderer;i.labelFunction=this.createFnProxy(function(a){return g(a)},h);delete i.labelRenderer}return i}});Ext.reg("cartesianchart",Ext.chart.CartesianChart);Ext.chart.LineChart=Ext.extend(Ext.chart.CartesianChart,{type:"line"});Ext.reg("linechart",Ext.chart.LineChart);Ext.chart.ColumnChart=Ext.extend(Ext.chart.CartesianChart,{type:"column"});Ext.reg("columnchart",Ext.chart.ColumnChart);Ext.chart.StackedColumnChart=Ext.extend(Ext.chart.CartesianChart,{type:"stackcolumn"});Ext.reg("stackedcolumnchart",Ext.chart.StackedColumnChart);Ext.chart.BarChart=Ext.extend(Ext.chart.CartesianChart,{type:"bar"});Ext.reg("barchart",Ext.chart.BarChart);Ext.chart.StackedBarChart=Ext.extend(Ext.chart.CartesianChart,{type:"stackbar"});Ext.reg("stackedbarchart",Ext.chart.StackedBarChart);Ext.chart.Axis=function(b){Ext.apply(this,b)};Ext.chart.Axis.prototype={type:null,orientation:"horizontal",reverse:false,labelFunction:null,hideOverlappingLabels:true};Ext.chart.NumericAxis=Ext.extend(Ext.chart.Axis,{type:"numeric",minimum:NaN,maximum:NaN,majorUnit:NaN,minorUnit:NaN,snapToUnits:true,alwaysShowZero:true,scale:"linear"});Ext.chart.TimeAxis=Ext.extend(Ext.chart.Axis,{type:"time",minimum:null,maximum:null,majorUnit:NaN,majorTimeUnit:null,minorUnit:NaN,minorTimeUnit:null,snapToUnits:true});Ext.chart.CategoryAxis=Ext.extend(Ext.chart.Axis,{type:"category",categoryNames:null});Ext.chart.Series=function(b){Ext.apply(this,b)};Ext.chart.Series.prototype={type:null,displayName:null};Ext.chart.CartesianSeries=Ext.extend(Ext.chart.Series,{xField:null,yField:null});Ext.chart.ColumnSeries=Ext.extend(Ext.chart.CartesianSeries,{type:"column"});Ext.chart.LineSeries=Ext.extend(Ext.chart.CartesianSeries,{type:"line"});Ext.chart.BarSeries=Ext.extend(Ext.chart.CartesianSeries,{type:"bar"});Ext.chart.PieSeries=Ext.extend(Ext.chart.Series,{type:"pie",dataField:null,categoryField:null});Ext.layout.MenuLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,setContainer:function(b){this.monitorResize=!b.floating;Ext.layout.MenuLayout.superclass.setContainer.call(this,b)},renderItem:function(c,a,h){if(!this.itemTpl){this.itemTpl=Ext.layout.MenuLayout.prototype.itemTpl=new Ext.XTemplate('<li id="{itemId}" class="{itemCls}">','<tpl if="needsIcon">','<img src="{icon}" class="{iconCls}"/>',"</tpl>","</li>")}if(c&&!c.rendered){if(Ext.isNumber(a)){a=h.dom.childNodes[a]}var i=this.getItemArgs(c);c.render(c.positionEl=a?this.itemTpl.insertBefore(a,i,true):this.itemTpl.append(h,i,true));c.positionEl.menuItemId=c.itemId||c.id;if(!i.isMenuItem&&i.needsIcon){c.positionEl.addClass("x-menu-list-item-indent")}}else{if(c&&!this.isValidParent(c,h)){if(Ext.isNumber(a)){a=h.dom.childNodes[a]}h.dom.insertBefore(c.getActionEl().dom,a||null)}}},getItemArgs:function(c){var d=c instanceof Ext.menu.Item;return{isMenuItem:d,needsIcon:!d&&(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 "+(this.extraCls||"")}},isValidParent:function(c,d){return c.el.up("li.x-menu-list-item",5).dom.parentNode===(d.dom||d)},onLayout:function(d,c){this.renderAll(d,c);this.doAutoSize()},doAutoSize:function(){var i=this.container,g=i.width;if(i.floating){if(g){i.setWidth(g)}else{if(Ext.isIE){i.setWidth(Ext.isStrict&&(Ext.isIE7||Ext.isIE8)?"auto":i.minWidth);var h=i.getEl(),e=h.dom.offsetWidth;i.setWidth(i.getLayoutTarget().getWidth()+h.getFrameWidth("lr"))}}}}});Ext.Container.LAYOUTS.menu=Ext.layout.MenuLayout;Ext.menu.Menu=Ext.extend(Ext.Container,{minWidth:120,shadow:"sides",subMenuAlign:"tl-tr?",defaultAlign:"tl-bl?",allowOtherMenus:false,ignoreParentClicks:false,enableScrolling:true,maxHeight:null,scrollIncrement:24,showSeparator:true,defaultOffsets:[0,0],floating:true,hidden:true,layout:"menu",hideMode:"offsets",scrollerHeight:8,autoLayout:true,defaultType:"menuitem",initComponent:function(){if(Ext.isArray(this.initialConfig)){Ext.apply(this,{items:this.initialConfig})}this.addEvents("click","mouseover","mouseout","itemclick");Ext.menu.MenuMgr.register(this);if(this.floating){Ext.EventManager.onWindowResize(this.hide,this)}else{if(this.initialConfig.hidden!==false){this.hidden=false}this.internalDefaults={hideOnClick:false}}Ext.menu.Menu.superclass.initComponent.call(this);if(this.autoLayout){this.on({add:this.doLayout,remove:this.doLayout,scope:this})}},getLayoutTarget:function(){return this.ul},onRender:function(d,e){if(!d){d=Ext.getBody()}var g={id:this.getId(),cls:"x-menu "+((this.floating)?"x-menu-floating x-layer ":"")+(this.cls||"")+(this.plain?" x-menu-plain":"")+(this.showSeparator?"":" x-menu-nosep"),style:this.style,cn:[{tag:"a",cls:"x-menu-focus",href:"#",onclick:"return false;",tabIndex:"-1"},{tag:"ul",cls:"x-menu-list"}]};if(this.floating){this.el=new Ext.Layer({shadow:this.shadow,dh:g,constrain:false,parentEl:d,zindex:15000})}else{this.el=d.createChild(g)}Ext.menu.Menu.superclass.onRender.call(this,d,e);if(!this.keyNav){this.keyNav=new Ext.menu.MenuNav(this)}this.focusEl=this.el.child("a.x-menu-focus");this.ul=this.el.child("ul.x-menu-list");this.mon(this.ul,{scope:this,click:this.onClick,mouseover:this.onMouseOver,mouseout:this.onMouseOut});if(this.enableScrolling){this.mon(this.el,{scope:this,delegate:".x-menu-scroller",click:this.onScroll,mouseover:this.deactivateActive})}},findTargetItem:function(c){var d=c.getTarget(".x-menu-list-item",this.ul,true);if(d&&d.menuItemId){return this.items.get(d.menuItemId)}},onClick:function(c){var d=this.findTargetItem(c);if(d){if(d.isFormField){this.setActiveItem(d)}else{if(d.menu&&this.ignoreParentClicks){d.expandMenu();c.preventDefault()}else{if(d.onClick){d.onClick(c);this.fireEvent("click",this,d,c)}}}}},setActiveItem:function(d,c){if(d!=this.activeItem){this.deactivateActive();if((this.activeItem=d).isFormField){d.focus()}else{d.activate(c)}}else{if(c){d.expandMenu()}}},deactivateActive:function(){var a=this.activeItem;if(a){if(a.isFormField){if(a.collapse){a.collapse()}}else{a.deactivate()}delete this.activeItem}},tryActivate:function(j,k){var h=this.items;for(var m=j,i=h.length;m>=0&&m<i;m+=k){var l=h.get(m);if(!l.disabled&&(l.canActivate||l.isFormField)){this.setActiveItem(l,false);return l}}return false},onMouseOver:function(c){var d=this.findTargetItem(c);if(d){if(d.canActivate&&!d.disabled){this.setActiveItem(d,true)}}this.over=true;this.fireEvent("mouseover",this,c,d)},onMouseOut:function(c){var d=this.findTargetItem(c);if(d){if(d==this.activeItem&&d.shouldDeactivate&&d.shouldDeactivate(c)){this.activeItem.deactivate();delete this.activeItem}}this.over=false;this.fireEvent("mouseout",this,c,d)},onScroll:function(h,e){if(h){h.stopEvent()}var g=this.ul.dom,i=Ext.fly(e).is(".x-menu-scroller-top");g.scrollTop+=this.scrollIncrement*(i?-1:1);if(i?g.scrollTop<=0:g.scrollTop+this.activeMax>=g.scrollHeight){this.onScrollerOut(null,e)}},onScrollerIn:function(h,e){var g=this.ul.dom,i=Ext.fly(e).is(".x-menu-scroller-top");if(i?g.scrollTop>0:g.scrollTop+this.activeMax<g.scrollHeight){Ext.fly(e).addClass(["x-menu-item-active","x-menu-scroller-active"])}},onScrollerOut:function(c,d){Ext.fly(d).removeClass(["x-menu-item-active","x-menu-scroller-active"])},show:function(d,g,e){if(this.floating){this.parentMenu=e;if(!this.el){this.render();this.doLayout(false,true)}if(this.fireEvent("beforeshow",this)!==false){this.showAt(this.el.getAlignToXY(d,g||this.defaultAlign,this.defaultOffsets),e,false)}}else{Ext.menu.Menu.superclass.show.call(this)}},showAt:function(g,d,e){this.parentMenu=d;if(!this.el){this.render()}this.el.setXY(g);if(this.enableScrolling){this.constrainScroll(g[1])}this.el.show();Ext.menu.Menu.superclass.onShow.call(this);if(Ext.isIE){this.layout.doAutoSize();if(!Ext.isIE8){this.el.repaint()}}this.hidden=false;this.focus();this.fireEvent("show",this)},constrainScroll:function(g){var e,d=this.ul.setHeight("auto").getHeight();if(this.floating){e=this.maxHeight?this.maxHeight:Ext.fly(this.el.dom.parentNode).getViewSize().height-g}else{e=this.getHeight()}if(d>e&&e>0){this.activeMax=e-this.scrollerHeight*2-this.el.getFrameWidth("tb")-Ext.num(this.el.shadowOffset,0);this.ul.setHeight(this.activeMax);this.createScrollers();this.el.select(".x-menu-scroller").setDisplayed("")}else{this.ul.setHeight(d);this.el.select(".x-menu-scroller").setDisplayed("none")}this.ul.dom.scrollTop=0},createScrollers:function(){if(!this.scroller){this.scroller={pos:0,top:this.el.insertFirst({tag:"div",cls:"x-menu-scroller x-menu-scroller-top",html:"&#160;"}),bottom:this.el.createChild({tag:"div",cls:"x-menu-scroller x-menu-scroller-bottom",html:"&#160;"})};this.scroller.top.hover(this.onScrollerIn,this.onScrollerOut,this);this.scroller.topRepeater=new Ext.util.ClickRepeater(this.scroller.top,{listeners:{click:this.onScroll.createDelegate(this,[null,this.scroller.top],false)}});this.scroller.bottom.hover(this.onScrollerIn,this.onScrollerOut,this);this.scroller.bottomRepeater=new Ext.util.ClickRepeater(this.scroller.bottom,{listeners:{click:this.onScroll.createDelegate(this,[null,this.scroller.bottom],false)}})}},onLayout:function(){if(this.isVisible()){if(this.enableScrolling){this.constrainScroll(this.el.getTop())}if(this.floating){this.el.sync()}}},focus:function(){if(!this.hidden){this.doFocus.defer(50,this)}},doFocus:function(){if(!this.hidden){this.focusEl.focus()}},hide:function(b){this.deepHide=b;Ext.menu.Menu.superclass.hide.call(this);delete this.deepHide},onHide:function(){Ext.menu.Menu.superclass.onHide.call(this);this.deactivateActive();if(this.el&&this.floating){this.el.hide()}if(this.deepHide===true&&this.parentMenu){this.parentMenu.hide(true)}},lookupComponent:function(b){if(Ext.isString(b)){b=(b=="separator"||b=="-")?new Ext.menu.Separator():new Ext.menu.TextItem(b);this.applyDefaults(b)}else{if(Ext.isObject(b)){b=this.getMenuItem(b)}else{if(b.tagName||b.el){b=new Ext.BoxComponent({el:b})}}}return b},applyDefaults:function(c){if(!Ext.isString(c)){c=Ext.menu.Menu.superclass.applyDefaults.call(this,c);var d=this.internalDefaults;if(d){if(c.events){Ext.applyIf(c.initialConfig,d);Ext.apply(c,d)}else{Ext.applyIf(c,d)}}}return c},getMenuItem:function(b){if(!b.isXType){if(!b.xtype&&Ext.isBoolean(b.checked)){return new Ext.menu.CheckItem(b)}return Ext.create(b,this.defaultType)}return b},addSeparator:function(){return this.add(new Ext.menu.Separator())},addElement:function(b){return this.add(new Ext.menu.BaseItem(b))},addItem:function(b){return this.add(b)},addMenuItem:function(b){return this.add(this.getMenuItem(b))},addText:function(b){return this.add(new Ext.menu.TextItem(b))},onDestroy:function(){Ext.menu.Menu.superclass.onDestroy.call(this);Ext.menu.MenuMgr.unregister(this);Ext.EventManager.removeResizeListener(this.hide,this);if(this.keyNav){this.keyNav.disable()}var b=this.scroller;if(b){Ext.destroy(b.topRepeater,b.bottomRepeater,b.top,b.bottom)}}});Ext.reg("menu",Ext.menu.Menu);Ext.menu.MenuNav=Ext.extend(Ext.KeyNav,function(){function d(a,b){if(!b.tryActivate(b.items.indexOf(b.activeItem)-1,-1)){b.tryActivate(b.items.length-1,-1)}}function c(a,b){if(!b.tryActivate(b.items.indexOf(b.activeItem)+1,1)){b.tryActivate(0,1)}}return{constructor:function(a){Ext.menu.MenuNav.superclass.constructor.call(this,a.el);this.scope=this.menu=a},doRelay:function(a,b){var e=a.getKey();if(this.menu.activeItem&&this.menu.activeItem.isFormField&&e!=a.TAB){return false}if(!this.menu.activeItem&&a.isNavKeyPress()&&e!=a.SPACE&&e!=a.RETURN){this.menu.tryActivate(0,1);return false}return b.call(this.scope||this,a,this.menu)},tab:function(a,b){a.stopEvent();if(a.shiftKey){d(a,b)}else{c(a,b)}},up:d,down:c,right:function(a,b){if(b.activeItem){b.activeItem.expandMenu(true)}},left:function(a,b){b.hide();if(b.parentMenu&&b.parentMenu.activeItem){b.parentMenu.activeItem.activate()}},enter:function(a,b){if(b.activeItem){a.stopPropagation();b.activeItem.onClick(a);b.fireEvent("click",this,b.activeItem);return true}}}}());Ext.menu.MenuMgr=function(){var v,x,y={},A=false,q=new Date();function o(){v={};x=new Ext.util.MixedCollection();Ext.getDoc().addKeyListener(27,function(){if(x.length>0){t()}})}function t(){if(x&&x.length>0){var a=x.clone();a.each(function(b){b.hide()})}}function w(a){x.remove(a);if(x.length<1){Ext.getDoc().un("mousedown",p);A=false}}function r(b){var a=x.last();q=new Date();x.add(b);if(!A){Ext.getDoc().on("mousedown",p);A=true}if(b.parentMenu){b.getEl().setZIndex(parseInt(b.parentMenu.getEl().getStyle("z-index"),10)+3);b.parentMenu.activeChild=b}else{if(a&&a.isVisible()){b.getEl().setZIndex(parseInt(a.getEl().getStyle("z-index"),10)+3)}}}function z(a){if(a.activeChild){a.activeChild.hide()}if(a.autoHideTimer){clearTimeout(a.autoHideTimer);delete a.autoHideTimer}}function u(b){var a=b.parentMenu;if(!a&&!b.allowOtherMenus){t()}else{if(a&&a.activeChild){a.activeChild.hide()}}}function p(a){if(q.getElapsed()>50&&x.length>0&&!a.getTarget(".x-menu")){t()}}function s(d,a){if(a){var b=y[d.group];for(var c=0,e=b.length;c<e;c++){if(b[c]!=d){b[c].setChecked(false)}}}}return{hideAll:function(){t()},register:function(a){if(!v){o()}v[a.id]=a;a.on("beforehide",z);a.on("hide",w);a.on("beforeshow",u);a.on("show",r);var b=a.group;if(b&&a.events.checkchange){if(!y[b]){y[b]=[]}y[b].push(a);a.on("checkchange",onCheck)}},get:function(a){if(typeof a=="string"){if(!v){return null}return v[a]}else{if(a.events){return a}else{if(typeof a.length=="number"){return new Ext.menu.Menu({items:a})}else{return Ext.create(a,"menu")}}}},unregister:function(a){delete v[a.id];a.un("beforehide",z);a.un("hide",w);a.un("beforeshow",u);a.un("show",r);var b=a.group;if(b&&a.events.checkchange){y[b].remove(a);a.un("checkchange",onCheck)}},registerCheckable:function(b){var a=b.group;if(a){if(!y[a]){y[a]=[]}y[a].push(b);b.on("beforecheckchange",s)}},unregisterCheckable:function(b){var a=b.group;if(a){y[a].remove(b);b.un("beforecheckchange",s)}},getCheckedItem:function(b){var a=y[b];if(a){for(var c=0,d=a.length;c<d;c++){if(a[c].checked){return a[c]}}}return null},setCheckedItem:function(c,a){var b=y[c];if(b){for(var d=0,e=b.length;d<e;d++){if(b[d].id==a){b[d].setChecked(true)}}}return null}}}();Ext.menu.BaseItem=function(b){Ext.menu.BaseItem.superclass.constructor.call(this,b);this.addEvents("click","activate","deactivate");if(this.handler){this.on("click",this.handler,this.scope)}};Ext.extend(Ext.menu.BaseItem,Ext.Component,{canActivate:false,activeClass:"x-menu-item-active",hideOnClick:true,clickHideDelay:1,ctype:"Ext.menu.BaseItem",actionMode:"container",onRender:function(c,d){Ext.menu.BaseItem.superclass.onRender.apply(this,arguments);if(this.ownerCt&&this.ownerCt instanceof Ext.menu.Menu){this.parentMenu=this.ownerCt}else{this.container.addClass("x-menu-list-item");this.mon(this.el,"click",this.onClick,this);this.mon(this.el,"mouseenter",this.activate,this);this.mon(this.el,"mouseleave",this.deactivate,this)}},setHandler:function(c,d){if(this.handler){this.un("click",this.handler,this.scope)}this.on("click",this.handler=c,this.scope=d)},onClick:function(b){if(!this.disabled&&this.fireEvent("click",this,b)!==false&&(this.parentMenu&&this.parentMenu.fireEvent("itemclick",this,b)!==false)){this.handleClick(b)}else{b.stopEvent()}},activate:function(){if(this.disabled){return false}var b=this.container;b.addClass(this.activeClass);this.region=b.getRegion().adjust(2,2,-2,-2);this.fireEvent("activate",this);return true},deactivate:function(){this.container.removeClass(this.activeClass);this.fireEvent("deactivate",this)},shouldDeactivate:function(b){return !this.region||!this.region.contains(b.getPoint())},handleClick:function(b){if(this.hideOnClick){this.parentMenu.hide.defer(this.clickHideDelay,this.parentMenu,[true])}},expandMenu:Ext.emptyFn,hideMenu:Ext.emptyFn});Ext.reg("menubaseitem",Ext.menu.BaseItem);Ext.menu.TextItem=function(b){if(typeof b=="string"){b={text:b}}Ext.menu.TextItem.superclass.constructor.call(this,b)};Ext.extend(Ext.menu.TextItem,Ext.menu.BaseItem,{hideOnClick:false,itemCls:"x-menu-text",onRender:function(){var b=document.createElement("span");b.className=this.itemCls;b.innerHTML=this.text;this.el=b;Ext.menu.TextItem.superclass.onRender.apply(this,arguments)}});Ext.reg("menutextitem",Ext.menu.TextItem);Ext.menu.Separator=function(b){Ext.menu.Separator.superclass.constructor.call(this,b)};Ext.extend(Ext.menu.Separator,Ext.menu.BaseItem,{itemCls:"x-menu-sep",hideOnClick:false,activeClass:"",onRender:function(d){var c=document.createElement("span");c.className=this.itemCls;c.innerHTML="&#160;";this.el=c;d.addClass("x-menu-sep-li");Ext.menu.Separator.superclass.onRender.apply(this,arguments)}});Ext.reg("menuseparator",Ext.menu.Separator);Ext.menu.Item=function(b){Ext.menu.Item.superclass.constructor.call(this,b);if(this.menu){this.menu=Ext.menu.MenuMgr.get(this.menu)}};Ext.extend(Ext.menu.Item,Ext.menu.BaseItem,{itemCls:"x-menu-item",canActivate:true,showDelay:200,hideDelay:200,ctype:"Ext.menu.Item",onRender:function(e,a){if(!this.itemTpl){this.itemTpl=Ext.menu.Item.prototype.itemTpl=new Ext.XTemplate('<a id="{id}" class="{cls}" hidefocus="true" unselectable="on" href="{href}"','<tpl if="hrefTarget">',' target="{hrefTarget}"',"</tpl>",">",'<img src="{icon}" class="x-menu-item-icon {iconCls}"/>','<span class="x-menu-item-text">{text}</span>',"</a>")}var g=this.getTemplateArgs();this.el=a?this.itemTpl.insertBefore(a,g,true):this.itemTpl.append(e,g,true);this.iconEl=this.el.child("img.x-menu-item-icon");this.textEl=this.el.child(".x-menu-item-text");Ext.menu.Item.superclass.onRender.call(this,e,a)},getTemplateArgs:function(){return{id:this.id,cls:this.itemCls+(this.menu?" x-menu-item-arrow":"")+(this.cls?" "+this.cls:""),href:this.href||"#",hrefTarget:this.hrefTarget,icon:this.icon||Ext.BLANK_IMAGE_URL,iconCls:this.iconCls||"",text:this.itemText||this.text||"&#160;"}},setText:function(b){this.text=b||"&#160;";if(this.rendered){this.textEl.update(this.text);this.parentMenu.layout.doAutoSize()}},setIconClass:function(d){var c=this.iconCls;this.iconCls=d;if(this.rendered){this.iconEl.replaceClass(c,this.iconCls)}},beforeDestroy:function(){if(this.menu){this.menu.destroy()}Ext.menu.Item.superclass.beforeDestroy.call(this)},handleClick:function(b){if(!this.href){b.stopEvent()}Ext.menu.Item.superclass.handleClick.apply(this,arguments)},activate:function(b){if(Ext.menu.Item.superclass.activate.apply(this,arguments)){this.focus();if(b){this.expandMenu()}}return true},shouldDeactivate:function(b){if(Ext.menu.Item.superclass.shouldDeactivate.call(this,b)){if(this.menu&&this.menu.isVisible()){return !this.menu.getEl().getRegion().contains(b.getPoint())}return true}return false},deactivate:function(){Ext.menu.Item.superclass.deactivate.apply(this,arguments);this.hideMenu()},expandMenu:function(b){if(!this.disabled&&this.menu){clearTimeout(this.hideTimer);delete this.hideTimer;if(!this.menu.isVisible()&&!this.showTimer){this.showTimer=this.deferExpand.defer(this.showDelay,this,[b])}else{if(this.menu.isVisible()&&b){this.menu.tryActivate(0,1)}}}},deferExpand:function(b){delete this.showTimer;this.menu.show(this.container,this.parentMenu.subMenuAlign||"tl-tr?",this.parentMenu);if(b){this.menu.tryActivate(0,1)}},hideMenu:function(){clearTimeout(this.showTimer);delete this.showTimer;if(!this.hideTimer&&this.menu&&this.menu.isVisible()){this.hideTimer=this.deferHide.defer(this.hideDelay,this)}},deferHide:function(){delete this.hideTimer;if(this.menu.over){this.parentMenu.setActiveItem(this,false)}else{this.menu.hide()}}});Ext.reg("menuitem",Ext.menu.Item);Ext.menu.CheckItem=function(b){Ext.menu.CheckItem.superclass.constructor.call(this,b);this.addEvents("beforecheckchange","checkchange");if(this.checkHandler){this.on("checkchange",this.checkHandler,this.scope)}Ext.menu.MenuMgr.registerCheckable(this)};Ext.extend(Ext.menu.CheckItem,Ext.menu.Item,{itemCls:"x-menu-item x-menu-check-item",groupClass:"x-menu-group-item",checked:false,ctype:"Ext.menu.CheckItem",onRender:function(b){Ext.menu.CheckItem.superclass.onRender.apply(this,arguments);if(this.group){this.el.addClass(this.groupClass)}if(this.checked){this.checked=false;this.setChecked(true,true)}},destroy:function(){Ext.menu.MenuMgr.unregisterCheckable(this);Ext.menu.CheckItem.superclass.destroy.apply(this,arguments)},setChecked:function(c,d){if(this.checked!=c&&this.fireEvent("beforecheckchange",this,c)!==false){if(this.container){this.container[c?"addClass":"removeClass"]("x-menu-item-checked")}this.checked=c;if(d!==true){this.fireEvent("checkchange",this,c)}}},handleClick:function(b){if(!this.disabled&&!(this.checked&&this.group)){this.setChecked(!this.checked)}Ext.menu.CheckItem.superclass.handleClick.apply(this,arguments)}});Ext.reg("menucheckitem",Ext.menu.CheckItem);Ext.menu.DateMenu=Ext.extend(Ext.menu.Menu,{enableScrolling:false,hideOnClick:true,cls:"x-date-menu",initComponent:function(){this.on("beforeshow",this.onBeforeShow,this);if(this.strict=(Ext.isIE7&&Ext.isStrict)){this.on("show",this.onShow,this,{single:true,delay:20})}Ext.apply(this,{plain:true,showSeparator:false,items:this.picker=new Ext.DatePicker(Ext.apply({internalRender:this.strict||!Ext.isIE,ctCls:"x-menu-date-item"},this.initialConfig))});this.picker.purgeListeners();Ext.menu.DateMenu.superclass.initComponent.call(this);this.relayEvents(this.picker,["select"]);this.on("select",this.menuHide,this);if(this.handler){this.on("select",this.handler,this.scope||this)}},menuHide:function(){if(this.hideOnClick){this.hide(true)}},onBeforeShow:function(){if(this.picker){this.picker.hideMonthPicker(true)}},onShow:function(){var b=this.picker.getEl();b.setWidth(b.getWidth())}});Ext.reg("datemenu",Ext.menu.DateMenu);Ext.menu.ColorMenu=Ext.extend(Ext.menu.Menu,{enableScrolling:false,hideOnClick:true,initComponent:function(){Ext.apply(this,{plain:true,showSeparator:false,items:this.palette=new Ext.ColorPalette(this.initialConfig)});this.palette.purgeListeners();Ext.menu.ColorMenu.superclass.initComponent.call(this);this.relayEvents(this.palette,["select"]);this.on("select",this.menuHide,this);if(this.handler){this.on("select",this.handler,this.scope||this)}},menuHide:function(){if(this.hideOnClick){this.hide(true)}}});Ext.reg("colormenu",Ext.menu.ColorMenu);Ext.form.Field=Ext.extend(Ext.BoxComponent,{invalidClass:"x-form-invalid",invalidText:"The value in this field is invalid",focusClass:"x-form-focus",validationEvent:"keyup",validateOnBlur:true,validationDelay:250,defaultAutoCreate:{tag:"input",type:"text",size:"20",autocomplete:"off"},fieldClass:"x-form-field",msgTarget:"qtip",msgFx:"normal",readOnly:false,disabled:false,isFormField:true,hasFocus:false,initComponent:function(){Ext.form.Field.superclass.initComponent.call(this);this.addEvents("focus","blur","specialkey","change","invalid","valid")},getName:function(){return this.rendered&&this.el.dom.name?this.el.dom.name:this.name||this.id||""},onRender:function(i,g){if(!this.el){var e=this.getAutoCreate();if(!e.name){e.name=this.name||this.id}if(this.inputType){e.type=this.inputType}this.autoEl=e}Ext.form.Field.superclass.onRender.call(this,i,g);var h=this.el.dom.type;if(h){if(h=="password"){h="text"}this.el.addClass("x-form-"+h)}if(this.readOnly){this.el.dom.readOnly=true}if(this.tabIndex!==undefined){this.el.dom.setAttribute("tabIndex",this.tabIndex)}this.el.addClass([this.fieldClass,this.cls])},getItemCt:function(){return this.el.up(".x-form-item",4)},initValue:function(){if(this.value!==undefined){this.setValue(this.value)}else{if(!Ext.isEmpty(this.el.dom.value)&&this.el.dom.value!=this.emptyText){this.setValue(this.el.dom.value)}}this.originalValue=this.getValue()},isDirty:function(){if(this.disabled||!this.rendered){return false}return String(this.getValue())!==String(this.originalValue)},afterRender:function(){Ext.form.Field.superclass.afterRender.call(this);this.initEvents();this.initValue()},fireKey:function(b){if(b.isSpecialKey()){this.fireEvent("specialkey",this,b)}},reset:function(){this.setValue(this.originalValue);this.clearInvalid()},initEvents:function(){this.mon(this.el,Ext.EventManager.useKeydown?"keydown":"keypress",this.fireKey,this);this.mon(this.el,"focus",this.onFocus,this);var b=this.inEditor&&Ext.isWindows&&Ext.isGecko?{buffer:10}:null;this.mon(this.el,"blur",this.onBlur,this,b)},onFocus:function(){if(this.focusClass){this.el.addClass(this.focusClass)}if(!this.hasFocus){this.hasFocus=true;this.startValue=this.getValue();this.fireEvent("focus",this)}},beforeBlur:Ext.emptyFn,onBlur:function(){this.beforeBlur();if(this.focusClass){this.el.removeClass(this.focusClass)}this.hasFocus=false;if(this.validationEvent!==false&&this.validateOnBlur&&this.validationEvent!="blur"){this.validate()}var b=this.getValue();if(String(b)!==String(this.startValue)){this.fireEvent("change",this,b,this.startValue)}this.fireEvent("blur",this)},isValid:function(e){if(this.disabled){return true}var g=this.preventMark;this.preventMark=e===true;var d=this.validateValue(this.processValue(this.getRawValue()));this.preventMark=g;return d},validate:function(){if(this.disabled||this.validateValue(this.processValue(this.getRawValue()))){this.clearInvalid();return true}return false},processValue:function(b){return b},validateValue:function(b){return true},markInvalid:function(g){if(!this.rendered||this.preventMark){return}g=g||this.invalidText;var e=this.getMessageHandler();if(e){e.mark(this,g)}else{if(this.msgTarget){this.el.addClass(this.invalidClass);var d=Ext.getDom(this.msgTarget);if(d){d.innerHTML=g;d.style.display=this.msgDisplay}}}this.fireEvent("invalid",this,g)},clearInvalid:function(){if(!this.rendered||this.preventMark){return}this.el.removeClass(this.invalidClass);var d=this.getMessageHandler();if(d){d.clear(this)}else{if(this.msgTarget){this.el.removeClass(this.invalidClass);var c=Ext.getDom(this.msgTarget);if(c){c.innerHTML="";c.style.display="none"}}}this.fireEvent("valid",this)},getMessageHandler:function(){return Ext.form.MessageTargets[this.msgTarget]},getErrorCt:function(){return this.el.findParent(".x-form-element",5,true)||this.el.findParent(".x-form-field-wrap",5,true)},alignErrorIcon:function(){this.errorIcon.alignTo(this.el,"tl-tr",[2,0])},getRawValue:function(){var b=this.rendered?this.el.getValue():Ext.value(this.value,"");if(b===this.emptyText){b=""}return b},getValue:function(){if(!this.rendered){return this.value}var b=this.el.getValue();if(b===this.emptyText||b===undefined){b=""}return b},setRawValue:function(b){return(this.el.dom.value=(Ext.isEmpty(b)?"":b))},setValue:function(b){this.value=b;if(this.rendered){this.el.dom.value=(Ext.isEmpty(b)?"":b);this.validate()}return this},append:function(b){this.setValue([this.getValue(),b].join(""))},adjustSize:function(g,h){var i=Ext.form.Field.superclass.adjustSize.call(this,g,h);i.width=this.adjustWidth(this.el.dom.tagName,i.width);if(this.offsetCt){var e=this.getItemCt();i.width-=e.getFrameWidth("lr");i.height-=e.getFrameWidth("tb")}return i},adjustWidth:function(d,c){if(typeof c=="number"&&(Ext.isIE&&(Ext.isIE6||!Ext.isStrict))&&/input|textarea/i.test(d)&&!this.inEditor){return c-3}return c}});Ext.form.MessageTargets={qtip:{mark:function(d,c){d.el.addClass(d.invalidClass);d.el.dom.qtip=c;d.el.dom.qclass="x-form-invalid-tip";if(Ext.QuickTips){Ext.QuickTips.enable()}},clear:function(b){b.el.removeClass(b.invalidClass);b.el.dom.qtip=""}},title:{mark:function(d,c){d.el.addClass(d.invalidClass);d.el.dom.title=c},clear:function(b){b.el.dom.title=""}},under:{mark:function(d,g){d.el.addClass(d.invalidClass);if(!d.errorEl){var e=d.getErrorCt();if(!e){d.el.dom.title=g;return}d.errorEl=e.createChild({cls:"x-form-invalid-msg"});d.errorEl.setWidth(e.getWidth(true)-20)}d.errorEl.update(g);Ext.form.Field.msgFx[d.msgFx].show(d.errorEl,d)},clear:function(b){b.el.removeClass(b.invalidClass);if(b.errorEl){Ext.form.Field.msgFx[b.msgFx].hide(b.errorEl,b)}else{b.el.dom.title=""}}},side:{mark:function(d,g){d.el.addClass(d.invalidClass);if(!d.errorIcon){var e=d.getErrorCt();if(!e){d.el.dom.title=g;return}d.errorIcon=e.createChild({cls:"x-form-invalid-icon"})}d.alignErrorIcon();d.errorIcon.dom.qtip=g;d.errorIcon.dom.qclass="x-form-invalid-tip";d.errorIcon.show();d.on("resize",d.alignErrorIcon,d)},clear:function(b){b.el.removeClass(b.invalidClass);if(b.errorIcon){b.errorIcon.dom.qtip="";b.errorIcon.hide();b.un("resize",b.alignErrorIcon,b)}else{b.el.dom.title=""}}}};Ext.form.Field.msgFx={normal:{show:function(d,c){d.setDisplayed("block")},hide:function(d,c){d.setDisplayed(false).update("")}},slide:{show:function(d,c){d.slideIn("t",{stopFx:true})},hide:function(d,c){d.slideOut("t",{stopFx:true,useDisplay:true})}},slideRight:{show:function(d,c){d.fixDisplay();d.alignTo(c.el,"tl-tr");d.slideIn("l",{stopFx:true})},hide:function(d,c){d.slideOut("l",{stopFx:true,useDisplay:true})}}};Ext.reg("field",Ext.form.Field);Ext.form.TextField=Ext.extend(Ext.form.Field,{grow:false,growMin:30,growMax:800,vtype:null,maskRe:null,disableKeyFilter:false,allowBlank:true,minLength:0,maxLength:Number.MAX_VALUE,minLengthText:"The minimum length for this field is {0}",maxLengthText:"The maximum length for this field is {0}",selectOnFocus:false,blankText:"This field is required",validator:null,regex:null,regexText:"",emptyText:null,emptyClass:"x-form-empty-field",initComponent:function(){Ext.form.TextField.superclass.initComponent.call(this);this.addEvents("autosize","keydown","keyup","keypress")},initEvents:function(){Ext.form.TextField.superclass.initEvents.call(this);if(this.validationEvent=="keyup"){this.validationTask=new Ext.util.DelayedTask(this.validate,this);this.mon(this.el,"keyup",this.filterValidation,this)}else{if(this.validationEvent!==false){this.mon(this.el,this.validationEvent,this.validate,this,{buffer:this.validationDelay})}}if(this.selectOnFocus||this.emptyText){this.on("focus",this.preFocus,this);this.mon(this.el,"mousedown",function(){if(!this.hasFocus){this.el.on("mouseup",function(b){b.preventDefault()},this,{single:true})}},this);if(this.emptyText){this.on("blur",this.postBlur,this);this.applyEmptyText()}}if(this.maskRe||(this.vtype&&this.disableKeyFilter!==true&&(this.maskRe=Ext.form.VTypes[this.vtype+"Mask"]))){this.mon(this.el,"keypress",this.filterKeys,this)}if(this.grow){this.mon(this.el,"keyup",this.onKeyUpBuffered,this,{buffer:50});this.mon(this.el,"click",this.autoSize,this)}if(this.enableKeyEvents){this.mon(this.el,"keyup",this.onKeyUp,this);this.mon(this.el,"keydown",this.onKeyDown,this);this.mon(this.el,"keypress",this.onKeyPress,this)}},processValue:function(d){if(this.stripCharsRe){var c=d.replace(this.stripCharsRe,"");if(c!==d){this.setRawValue(c);return c}}return d},filterValidation:function(b){if(!b.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(b){if(!b.isNavKeyPress()){this.autoSize()}},onKeyUp:function(b){this.fireEvent("keyup",this,b)},onKeyDown:function(b){this.fireEvent("keydown",this,b)},onKeyPress:function(b){this.fireEvent("keypress",this,b)},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 b=this.el;if(this.emptyText){if(b.dom.value==this.emptyText){this.setRawValue("")}b.removeClass(this.emptyClass)}if(this.selectOnFocus){(function(){b.dom.select()}).defer(this.inEditor&&Ext.isIE?50:0)}},postBlur:function(){this.applyEmptyText()},filterKeys:function(b){if(b.ctrlKey||b.isSpecialKey()){return}if(!this.maskRe.test(String.fromCharCode(b.getCharCode()))){b.stopEvent()}},setValue:function(b){if(this.emptyText&&this.el&&!Ext.isEmpty(b)){this.el.removeClass(this.emptyClass)}Ext.form.TextField.superclass.setValue.apply(this,arguments);this.applyEmptyText();this.autoSize();return this},validateValue:function(e){if(Ext.isFunction(this.validator)){var g=this.validator(e);if(g!==true){this.markInvalid(g);return false}}if(e.length<1||e===this.emptyText){if(this.allowBlank){this.clearInvalid();return true}else{this.markInvalid(this.blankText);return false}}if(e.length<this.minLength){this.markInvalid(String.format(this.minLengthText,this.minLength));return false}if(e.length>this.maxLength){this.markInvalid(String.format(this.maxLengthText,this.maxLength));return false}if(this.vtype){var d=Ext.form.VTypes;if(!d[this.vtype](e,this)){this.markInvalid(this.vtypeText||d[this.vtype+"Text"]);return false}}if(this.regex&&!this.regex.test(e)){this.markInvalid(this.regexText);return false}return true},selectText:function(j,i){var m=this.getRawValue();var l=false;if(m.length>0){j=j===undefined?0:j;i=i===undefined?m.length:i;var k=this.el.dom;if(k.setSelectionRange){k.setSelectionRange(j,i)}else{if(k.createTextRange){var d=k.createTextRange();d.moveStart("character",j);d.moveEnd("character",i-m.length);d.select()}}l=Ext.isGecko||Ext.isOpera}else{l=true}if(l){this.focus()}},autoSize:function(){if(!this.grow||!this.rendered){return}if(!this.metrics){this.metrics=Ext.util.TextMetrics.createInstance(this.el)}var i=this.el;var d=i.dom.value;var h=document.createElement("div");h.appendChild(document.createTextNode(d));d=h.innerHTML;h=null;Ext.removeNode(h);d+="&#160;";var g=Math.min(this.growMax,Math.max(this.metrics.getWidth(d)+10,this.growMin));this.el.setWidth(g);this.fireEvent("autosize",this,g)},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,wrapFocusClass:"x-trigger-wrap-focus",autoSize:Ext.emptyFn,monitorTab:true,deferHeight:true,mimicing:false,actionMode:"wrap",onResize:function(d,c){Ext.form.TriggerField.superclass.onResize.call(this,d,c);if(typeof d=="number"){this.el.setWidth(this.adjustWidth("input",d-this.trigger.getWidth()))}this.wrap.setWidth(this.el.getWidth()+this.trigger.getWidth())},adjustSize:Ext.BoxComponent.prototype.adjustSize,getResizeEl:function(){return this.wrap},getPositionEl:function(){return this.wrap},alignErrorIcon:function(){if(this.wrap){this.errorIcon.alignTo(this.wrap,"tl-tr",[2,0])}},onRender:function(c,d){Ext.form.TriggerField.superclass.onRender.call(this,c,d);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,cls:"x-form-trigger "+this.triggerClass});if(this.hideTrigger){this.trigger.setDisplayed(false)}this.initTrigger();if(!this.width){this.wrap.setWidth(this.el.getWidth()+this.trigger.getWidth())}if(!this.editable){this.editable=true;this.setEditable(false)}},afterRender:function(){Ext.form.TriggerField.superclass.afterRender.call(this)},initTrigger:function(){this.mon(this.trigger,"click",this.onTriggerClick,this,{preventDefault:true});this.trigger.addClassOnOver("x-form-trigger-over");this.trigger.addClassOnClick("x-form-trigger-click")},onDestroy:function(){Ext.destroy(this.trigger,this.wrap);if(this.mimicing){Ext.get(Ext.isIE?document.body:document).un("mousedown",this.mimicBlur,this)}Ext.form.TriggerField.superclass.onDestroy.call(this)},onFocus:function(){Ext.form.TriggerField.superclass.onFocus.call(this);if(!this.mimicing){this.wrap.addClass(this.wrapFocusClass);this.mimicing=true;Ext.get(Ext.isIE?document.body:document).on("mousedown",this.mimicBlur,this,{delay:10});if(this.monitorTab){this.el.on("keydown",this.checkTab,this)}}},checkTab:function(b){if(b.getKey()==b.TAB){this.triggerBlur()}},onBlur:function(){},mimicBlur:function(b){if(!this.wrap.contains(b.target)&&this.validateBlur(b)){this.triggerBlur()}},triggerBlur:function(){this.mimicing=false;Ext.get(Ext.isIE?document.body:document).un("mousedown",this.mimicBlur,this);if(this.monitorTab&&this.el){this.el.un("keydown",this.checkTab,this)}Ext.form.TriggerField.superclass.onBlur.call(this);if(this.wrap){this.wrap.removeClass(this.wrapFocusClass)}},beforeBlur:Ext.emptyFn,setEditable:function(b){if(b==this.editable){return}this.editable=b;if(!b){this.el.addClass("x-trigger-noedit").on("click",this.onTriggerClick,this).dom.setAttribute("readOnly",true)}else{this.el.removeClass("x-trigger-noedit").un("click",this.onTriggerClick,this).dom.removeAttribute("readOnly")}},validateBlur:function(b){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,cls:"x-form-trigger "+this.trigger1Class},{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-form-trigger "+this.trigger2Class}]}},getTrigger:function(b){return this.triggers[b]},initTrigger:function(){var d=this.trigger.select(".x-form-trigger",true);this.wrap.setStyle("overflow","hidden");var c=this;d.each(function(h,a,i){h.hide=function(){var e=c.wrap.getWidth();this.dom.style.display="none";c.el.setWidth(e-c.trigger.getWidth())};h.show=function(){var e=c.wrap.getWidth();this.dom.style.display="";c.el.setWidth(e-c.trigger.getWidth())};var b="Trigger"+(i+1);if(this["hide"+b]){h.dom.style.display="none"}this.mon(h,"click",this["on"+b+"Click"],this,{preventDefault:true});h.addClassOnOver("x-form-trigger-over");h.addClassOnClick("x-form-trigger-click")},this);this.triggers=d.elements},onTrigger1Click:Ext.emptyFn,onTrigger2Click:Ext.emptyFn});Ext.reg("trigger",Ext.form.TriggerField);Ext.form.TextArea=Ext.extend(Ext.form.TextField,{growMin:60,growMax:1000,growAppend:"&#160;\n&#160;",growPad:Ext.isWebKit?-6:0,enterIsSpecial:false,preventScrollbars:false,onRender:function(c,d){if(!this.el){this.defaultAutoCreate={tag:"textarea",style:"width:100px;height:60px;",autocomplete:"off"}}Ext.form.TextArea.superclass.onRender.call(this,c,d);if(this.grow){this.textSizeEl=Ext.DomHelper.append(document.body,{tag:"pre",cls:"x-form-grow-sizer"});if(this.preventScrollbars){this.el.setStyle("overflow","hidden")}this.el.setHeight(this.growMin)}},onDestroy:function(){Ext.destroy(this.textSizeEl);Ext.form.TextArea.superclass.onDestroy.call(this)},fireKey:function(b){if(b.isSpecialKey()&&(this.enterIsSpecial||(b.getKey()!=b.ENTER||b.hasModifier()))){this.fireEvent("specialkey",this,b)}},onKeyUp:function(b){if(!b.isNavKeyPress()||b.getKey()==b.ENTER){this.autoSize()}Ext.form.TextArea.superclass.onKeyUp.call(this,b)},autoSize:function(){if(!this.grow||!this.textSizeEl){return}var i=this.el;var g=i.dom.value;var h=this.textSizeEl;h.innerHTML="";h.appendChild(document.createTextNode(g));g=h.innerHTML;Ext.fly(h).setWidth(this.el.getWidth());if(g.length<1){g="&#160;&#160;"}else{g+=this.growAppend;if(Ext.isIE){g=g.replace(/\n/g,"<br />")}}h.innerHTML=g;var e=Math.min(this.growMax,Math.max(h.offsetHeight,this.growMin)+this.growPad);if(e!=this.lastHeight){this.lastHeight=e;this.el.setHeight(e);this.fireEvent("autosize",this,e)}}});Ext.reg("textarea",Ext.form.TextArea);Ext.form.NumberField=Ext.extend(Ext.form.TextField,{fieldClass:"x-form-field x-form-num-field",allowDecimals:true,decimalSeparator:".",decimalPrecision:2,allowNegative:true,minValue:Number.NEGATIVE_INFINITY,maxValue:Number.MAX_VALUE,minText:"The minimum value for this field is {0}",maxText:"The maximum value for this field is {0}",nanText:"{0} is not a valid number",baseChars:"0123456789",initEvents:function(){var b=this.baseChars+"";if(this.allowDecimals){b+=this.decimalSeparator}if(this.allowNegative){b+="-"}this.maskRe=new RegExp("["+Ext.escapeRe(b)+"]");Ext.form.NumberField.superclass.initEvents.call(this)},validateValue:function(c){if(!Ext.form.NumberField.superclass.validateValue.call(this,c)){return false}if(c.length<1){return true}c=String(c).replace(this.decimalSeparator,".");if(isNaN(c)){this.markInvalid(String.format(this.nanText,c));return false}var d=this.parseValue(c);if(d<this.minValue){this.markInvalid(String.format(this.minText,this.minValue));return false}if(d>this.maxValue){this.markInvalid(String.format(this.maxText,this.maxValue));return false}return true},getValue:function(){return this.fixPrecision(this.parseValue(Ext.form.NumberField.superclass.getValue.call(this)))},setValue:function(b){b=typeof b=="number"?b:parseFloat(String(b).replace(this.decimalSeparator,"."));b=isNaN(b)?"":String(b).replace(".",this.decimalSeparator);return Ext.form.NumberField.superclass.setValue.call(this,b)},parseValue:function(b){b=parseFloat(String(b).replace(this.decimalSeparator,"."));return isNaN(b)?"":b},fixPrecision:function(c){var d=isNaN(c);if(!this.allowDecimals||this.decimalPrecision==-1||d||!c){return d?"":c}return parseFloat(parseFloat(c).toFixed(this.decimalPrecision))},beforeBlur:function(){var b=this.parseValue(this.getRawValue());if(!Ext.isEmpty(b)){this.setValue(this.fixPrecision(b))}}});Ext.reg("numberfield",Ext.form.NumberField);Ext.form.DateField=Ext.extend(Ext.form.TriggerField,{format:"m/d/Y",altFormats:"m/d/Y|n/j/Y|n/j/y|m/j/y|n/d/y|m/j/Y|n/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d",disabledDaysText:"Disabled",disabledDatesText:"Disabled",minText:"The date in this field must be equal to or after {0}",maxText:"The date in this field must be equal to or before {0}",invalidText:"{0} is not a valid date - it must be in the format {1}",triggerClass:"x-form-date-trigger",showToday:true,defaultAutoCreate:{tag:"input",type:"text",size:"10",autocomplete:"off"},initComponent:function(){Ext.form.DateField.superclass.initComponent.call(this);this.addEvents("select");if(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()},initDisabledDays:function(){if(this.disabledDates){var d=this.disabledDates,e=d.length-1,g="(?:";Ext.each(d,function(a,b){g+=Ext.isDate(a)?"^"+Ext.escapeRe(a.dateFormat(this.format))+"$":d[b];if(b!=e){g+="|"}},this);this.disabledDatesRE=new RegExp(g+")")}},setDisabledDates:function(b){this.disabledDates=b;this.initDisabledDays();if(this.menu){this.menu.picker.setDisabledDates(this.disabledDatesRE)}},setDisabledDays:function(b){this.disabledDays=b;if(this.menu){this.menu.picker.setDisabledDays(b)}},setMinValue:function(b){this.minValue=(Ext.isString(b)?this.parseDate(b):b);if(this.menu){this.menu.picker.setMinDate(this.minValue)}},setMaxValue:function(b){this.maxValue=(Ext.isString(b)?this.parseDate(b):b);if(this.menu){this.menu.picker.setMaxDate(this.maxValue)}},validateValue:function(k){k=this.formatDate(k);if(!Ext.form.DateField.superclass.validateValue.call(this,k)){return false}if(k.length<1){return true}var m=k;k=this.parseDate(k);if(!k){this.markInvalid(String.format(this.invalidText,m,this.format));return false}var j=k.getTime();if(this.minValue&&j<this.minValue.getTime()){this.markInvalid(String.format(this.minText,this.formatDate(this.minValue)));return false}if(this.maxValue&&j>this.maxValue.getTime()){this.markInvalid(String.format(this.maxText,this.formatDate(this.maxValue)));return false}if(this.disabledDays){var i=k.getDay();for(var h=0;h<this.disabledDays.length;h++){if(i===this.disabledDays[h]){this.markInvalid(this.disabledDaysText);return false}}}var l=this.formatDate(k);if(this.disabledDatesRE&&this.disabledDatesRE.test(l)){this.markInvalid(String.format(this.disabledDatesText,l));return false}return true},validateBlur:function(){return !this.menu||!this.menu.isVisible()},getValue:function(){return this.parseDate(Ext.form.DateField.superclass.getValue.call(this))||""},setValue:function(b){return Ext.form.DateField.superclass.setValue.call(this,this.formatDate(this.parseDate(b)))},parseDate:function(h){if(!h||Ext.isDate(h)){return h}var e=Date.parseDate(h,this.format);if(!e&&this.altFormats){if(!this.altFormatsArray){this.altFormatsArray=this.altFormats.split("|")}for(var i=0,g=this.altFormatsArray.length;i<g&&!e;i++){e=Date.parseDate(h,this.altFormatsArray[i])}}return e},onDestroy:function(){Ext.destroy(this.menu);Ext.form.DateField.superclass.onDestroy.call(this)},formatDate:function(b){return Ext.isDate(b)?b.dateFormat(this.format):b},onTriggerClick:function(){if(this.disabled){return}if(this.menu==null){this.menu=new Ext.menu.DateMenu({hideOnClick: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,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(b){this.menu[b]("select",this.onSelect,this);this.menu[b]("hide",this.onMenuHide,this);this.menu[b]("show",this.onFocus,this)},onSelect:function(d,c){this.setValue(c);this.fireEvent("select",this,c);this.menu.hide()},onMenuHide:function(){this.focus(false,60);this.menuEvents("un")},beforeBlur:function(){var b=this.parseDate(this.getRawValue());if(b){this.setValue(b)}}});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 b=this.rendered?this.el.dom.innerHTML:Ext.value(this.value,"");if(b===this.emptyText){b=""}if(this.htmlEncode){b=Ext.util.Format.htmlDecode(b)}return b},getValue:function(){return this.getRawValue()},getName:function(){return this.name},setRawValue:function(b){if(this.htmlEncode){b=Ext.util.Format.htmlEncode(b)}return this.rendered?(this.el.dom.innerHTML=(Ext.isEmpty(b)?"":b)):(this.value=b)},setValue:function(b){this.setRawValue(b);return this}});Ext.reg("displayfield",Ext.form.DisplayField);Ext.form.ComboBox=Ext.extend(Ext.form.TriggerField,{defaultAutoCreate:{tag:"input",type:"text",size:"24",autocomplete:"off"},listClass:"",selectedClass:"x-combo-selected",listEmptyText:"",triggerClass:"x-form-arrow-trigger",shadow:"sides",listAlign:"tl-bl?",maxHeight:300,minHeight:90,triggerAction:"query",minChars:4,typeAhead:false,queryDelay:500,pageSize:0,selectOnFocus:false,queryParam:"query",loadingText:"Loading...",resizable:false,handleHeight:8,allQuery:"",mode:"remote",minListWidth:70,forceSelection:false,typeAheadDelay:250,lazyInit:true,initComponent:function(){Ext.form.ComboBox.superclass.initComponent.call(this);this.addEvents("expand","collapse","beforeselect","select","beforequery");if(this.transform){var o=Ext.getDom(this.transform);if(!this.hiddenName){this.hiddenName=o.name}if(!this.store){this.mode="local";var k=[],n=o.options;for(var d=0,i=n.length;d<i;d++){var l=n[d],m=(l.hasAttribute?l.hasAttribute("value"):l.getAttributeNode("value").specified)?l.value:l.text;if(l.selected&&Ext.isEmpty(this.value,true)){this.value=m}k.push([m,l.text])}this.store=new Ext.data.ArrayStore({id:0,fields:["value","text"],data:k,autoDestroy:true});this.valueField="value";this.displayField="text"}o.name=Ext.id();if(!this.lazyRender){this.target=true;this.el=Ext.DomHelper.insertBefore(o,this.autoCreate||this.defaultAutoCreate);this.render(this.el.parentNode,o);Ext.removeNode(o)}else{Ext.removeNode(o)}}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(c,d){Ext.form.ComboBox.superclass.onRender.call(this,c,d);if(this.hiddenName){this.hiddenField=this.el.insertSibling({tag:"input",type:"hidden",name:this.hiddenName,id:(this.hiddenId||this.hiddenName)},"before",true);this.el.dom.removeAttribute("name")}if(Ext.isGecko){this.el.dom.setAttribute("autocomplete","off")}if(!this.lazyInit){this.initList()}else{this.on("focus",this.initList,this,{single:true})}},initValue:function(){Ext.form.ComboBox.superclass.initValue.call(this);if(this.hiddenField){this.hiddenField.value=Ext.isDefined(this.hiddenValue)?this.hiddenValue:Ext.isDefined(this.value)?this.value:""}},initList:function(){if(!this.list){var d="x-combo-list";this.list=new Ext.Layer({parentEl:this.getListParent(),shadow:this.shadow,cls:[d,this.listClass].join(" "),constrain:false});var c=this.listWidth||Math.max(this.wrap.getWidth(),this.minListWidth);this.list.setSize(c,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:d+"-hd",html:this.title});this.assetHeight+=this.header.getHeight()}this.innerList=this.list.createChild({cls:d+"-inner"});this.mon(this.innerList,"mouseover",this.onViewOver,this);this.mon(this.innerList,"mousemove",this.onViewMove,this);this.innerList.setWidth(c-this.list.getFrameWidth("lr"));if(this.pageSize){this.footer=this.list.createChild({cls:d+"-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="'+d+'-item">{'+this.displayField+"}</div></tpl>"}this.view=new Ext.DataView({applyTo:this.innerList,tpl:this.tpl,singleSelect:true,selectedClass:this.selectedClass,itemSelector:this.itemSelector||"."+d+"-item",emptyText:this.listEmptyText});this.mon(this.view,"click",this.onViewClick,this);this.bindStore(this.store,true);if(this.resizable){this.resizer=new Ext.Resizable(this.list,{pinned:true,handles:"se"});this.mon(this.resizer,"resize",function(a,g,b){this.maxHeight=b-this.handleHeight-this.list.getFrameWidth("tb")-this.assetHeight;this.listWidth=g;this.innerList.setWidth(g-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(d,c){if(this.store&&!c){this.store.un("beforeload",this.onBeforeLoad,this);this.store.un("load",this.onLoad,this);this.store.un("exception",this.collapse,this);if(this.store!==d&&this.store.autoDestroy){this.store.destroy()}if(!d){this.store=null;if(this.view){this.view.bindStore(null)}}}if(d){if(!c){this.lastQuery=null;if(this.pageTb){this.pageTb.bindStore(d)}}this.store=Ext.StoreMgr.lookup(d);this.store.on({scope:this,beforeload:this.onBeforeLoad,load:this.onLoad,exception:this.collapse});if(this.view){this.view.bindStore(d)}}},initEvents:function(){Ext.form.ComboBox.superclass.initEvents.call(this);this.keyNav=new Ext.KeyNav(this.el,{up:function(b){this.inKeyMode=true;this.selectPrev()},down:function(b){if(!this.isExpanded()){this.onTriggerClick()}else{this.inKeyMode=true;this.selectNext()}},enter:function(b){this.onViewClick();this.delayedCheck=true;this.unsetDelayCheck.defer(10,this)},esc:function(b){this.collapse()},tab:function(b){this.onViewClick(false);return true},scope:this,doRelay:function(g,d,e){if(e=="down"||this.scope.isExpanded()){return Ext.KeyNav.prototype.doRelay.apply(this,arguments)}return true},forceKeyDown:true});this.queryDelay=Math.max(this.queryDelay||10,this.mode=="local"?10:250);this.dqTask=new Ext.util.DelayedTask(this.initQuery,this);if(this.typeAhead){this.taTask=new Ext.util.DelayedTask(this.onTypeAhead,this)}if(this.editable!==false&&!this.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.form.ComboBox.superclass.onDestroy.call(this)},unsetDelayCheck:function(){delete this.delayedCheck},fireKey:function(c){var d=function(a){if(a.isNavKeyPress()&&!this.isExpanded()&&!this.delayedCheck){this.fireEvent("specialkey",this,a)}};if(this.inEditor&&Ext.isWebKit&&c.getKey()==c.TAB){d.defer(10,this,[new Ext.EventObjectImpl(c)])}else{d.call(this,c)}},onResize:function(e,d){Ext.form.ComboBox.superclass.onResize.apply(this,arguments);if(this.list&&!Ext.isDefined(this.listWidth)){var g=Math.max(e,this.minListWidth);this.list.setWidth(g);this.innerList.setWidth(g-this.list.getFrameWidth("lr"))}},onEnable:function(){Ext.form.ComboBox.superclass.onEnable.apply(this,arguments);if(this.hiddenField){this.hiddenField.disabled=false}},onDisable:function(){Ext.form.ComboBox.superclass.onDisable.apply(this,arguments);if(this.hiddenField){this.hiddenField.disabled=true}},onBeforeLoad:function(){if(!this.hasFocus){return}this.innerList.update(this.loadingText?'<div class="loading-indicator">'+this.loadingText+"</div>":"");this.restrictHeight();this.selectedIndex=-1},onLoad:function(){if(!this.hasFocus){return}if(this.store.getCount()>0){this.expand();this.restrictHeight();if(this.lastQuery==this.allQuery){if(this.editable){this.el.dom.select()}if(!this.selectByValue(this.value,true)){this.select(0,true)}}else{this.selectNext();if(this.typeAhead&&this.lastKey!=Ext.EventObject.BACKSPACE&&this.lastKey!=Ext.EventObject.DELETE){this.taTask.delay(this.typeAheadDelay)}}}else{this.onEmptyResults()}},onTypeAhead:function(){if(this.store.getCount()>0){var e=this.store.getAt(0);var i=e.data[this.displayField];var g=i.length;var h=this.getRawValue().length;if(h!=g){this.setRawValue(i);this.selectText(h,i.length)}}},onSelect:function(d,c){if(this.fireEvent("beforeselect",this,d,c)!==false){this.setValue(d.data[this.valueField||this.displayField]);this.collapse();this.fireEvent("select",this,d,c)}},getName:function(){var b=this.hiddenField;return b&&b.name?b.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(e){var g=e;if(this.valueField){var d=this.findRecord(this.valueField,e);if(d){g=d.data[this.displayField]}else{if(Ext.isDefined(this.valueNotFoundText)){g=this.valueNotFoundText}}}this.lastSelectionText=g;if(this.hiddenField){this.hiddenField.value=e}Ext.form.ComboBox.superclass.setValue.call(this,g);this.value=e;return this},findRecord:function(g,d){var e;if(this.store.getCount()>0){this.store.each(function(a){if(a.data[g]==d){e=a;return false}})}return e},onViewMove:function(c,d){this.inKeyMode=false},onViewOver:function(h,e){if(this.inKeyMode){return}var i=this.view.findItemFromChild(e);if(i){var g=this.view.indexOf(i);this.select(g,false)}},onViewClick:function(d){var e=this.view.getSelectedIndexes()[0];var g=this.store.getAt(e);if(g){this.onSelect(g,e)}if(d!==false){this.el.focus()}},restrictHeight:function(){this.innerList.dom.style.height="";var h=this.innerList.dom;var k=this.list.getFrameWidth("tb")+(this.resizable?this.handleHeight:0)+this.assetHeight;var m=Math.max(h.clientHeight,h.offsetHeight,h.scrollHeight);var i=this.getPosition()[1]-Ext.getBody().getScroll().top;var j=Ext.lib.Dom.getViewHeight()-i-this.getSize().height;var l=Math.max(i,j,this.minHeight||0)-this.list.shadowOffset-k-5;m=Math.min(m,l,this.maxHeight);this.innerList.setHeight(m);this.list.beginUpdate();this.list.setHeight(m+k);this.list.alignTo(this.wrap,this.listAlign);this.list.endUpdate()},onEmptyResults:function(){this.collapse()},isExpanded:function(){return this.list&&this.list.isVisible()},selectByValue:function(e,g){if(!Ext.isEmpty(e,true)){var d=this.findRecord(this.valueField||this.displayField,e);if(d){this.select(this.store.indexOf(d),g);return true}}return false},select:function(e,g){this.selectedIndex=e;this.view.select(e);if(g!==false){var d=this.view.getNode(e);if(d){this.innerList.scrollChildIntoView(d,false)}}},selectNext:function(){var b=this.store.getCount();if(b>0){if(this.selectedIndex==-1){this.select(0)}else{if(this.selectedIndex<b-1){this.select(this.selectedIndex+1)}}}},selectPrev:function(){var b=this.store.getCount();if(b>0){if(this.selectedIndex==-1){this.select(0)}else{if(this.selectedIndex!==0){this.select(this.selectedIndex-1)}}}},onKeyUp:function(c){var d=c.getKey();if(this.editable!==false&&(d==c.BACKSPACE||!c.isSpecialKey())){this.lastKey=d;this.dqTask.delay(this.queryDelay)}Ext.form.ComboBox.superclass.onKeyUp.call(this,c)},validateBlur:function(){return !this.list||!this.list.isVisible()},initQuery:function(){this.doQuery(this.getRawValue())},beforeBlur:function(){var c=this.getRawValue();if(this.forceSelection){if(c.length>0&&c!=this.emptyText){this.el.dom.value=Ext.isDefined(this.lastSelectionText)?this.lastSelectionText:"";this.applyEmptyText()}else{this.clearValue()}}else{var d=this.findRecord(this.displayField,c);if(d){c=d.get(this.valueField||this.displayField)}this.setValue(c)}},doQuery:function(g,d){g=Ext.isEmpty(g)?"":g;var e={query:g,forceAll:d,combo:this,cancel:false};if(this.fireEvent("beforequery",e)===false||e.cancel){return false}g=e.query;d=e.forceAll;if(d===true||(g.length>=this.minChars)){if(this.lastQuery!==g){this.lastQuery=g;if(this.mode=="local"){this.selectedIndex=-1;if(d){this.store.clearFilter()}else{this.store.filter(this.displayField,g)}this.onLoad()}else{this.store.baseParams[this.queryParam]=g;this.store.load({params:this.getParams(g)});this.expand()}}else{this.selectedIndex=-1;this.onLoad()}}},getParams:function(d){var c={};if(this.pageSize){c.start=0;c.limit=this.pageSize}return c},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(b){if(!b.within(this.wrap)&&!b.within(this.list)){this.collapse()}},expand:function(){if(this.isExpanded()||!this.hasFocus){return}this.list.alignTo(this.wrap,this.listAlign);this.list.show();if(Ext.isGecko2){this.innerList.setOverflow("auto")}Ext.getDoc().on({scope:this,mousewheel:this.collapseIf,mousedown:this.collapseIf});this.fireEvent("expand",this)},onTriggerClick:function(){if(this.disabled){return}if(this.isExpanded()){this.collapse();this.el.focus()}else{this.onFocus({});if(this.triggerAction=="all"){this.doQuery(this.allQuery,true)}else{this.doQuery(this.getRawValue())}this.el.focus()}}});Ext.reg("combo",Ext.form.ComboBox);Ext.form.Checkbox=Ext.extend(Ext.form.Field,{focusClass:undefined,fieldClass:"x-form-field",checked:false,defaultAutoCreate:{tag:"input",type:"checkbox",autocomplete:"off"},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,"click",this.onClick,this);this.mon(this.el,"change",this.onClick,this)},getResizeEl:function(){return this.wrap},getPositionEl:function(){return this.wrap},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,onRender:function(c,d){Ext.form.Checkbox.superclass.onRender.call(this,c,d);if(this.inputValue!==undefined){this.el.dom.value=this.inputValue}this.wrap=this.el.wrap({cls:"x-form-check-wrap"});if(this.boxLabel){this.wrap.createChild({tag:"label",htmlFor:this.el.id,cls:"x-form-cb-label",html:this.boxLabel})}if(this.checked){this.setValue(true)}else{this.checked=this.el.dom.checked}},onDestroy:function(){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 false},onClick:function(){if(this.el.dom.checked!=this.checked){this.setValue(this.el.dom.checked)}},setValue:function(d){var c=this.checked;this.checked=(d===true||d==="true"||d=="1"||String(d).toLowerCase()=="on");if(this.rendered){this.el.dom.checked=this.checked;this.el.dom.defaultChecked=this.checked}if(c!=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");Ext.form.CheckboxGroup.superclass.initComponent.call(this)},onRender:function(x,z){if(!this.el){var s={cls:this.groupCls,layout:"column",border:false,renderTo:x};var E={defaultType:this.defaultType,layout:"form",border:false,defaults:{hideLabel:true,anchor:"100%"}};if(this.items[0].items){Ext.apply(s,{layoutConfig:{columns:this.items.length},defaults:this.defaults,items:this.items});for(var A=0,v=this.items.length;A<v;A++){Ext.applyIf(this.items[A],E)}}else{var B,u=[];if(typeof this.columns=="string"){this.columns=this.items.length}if(!Ext.isArray(this.columns)){var w=[];for(var A=0;A<this.columns;A++){w.push((100/this.columns)*0.01)}this.columns=w}B=this.columns.length;for(var A=0;A<B;A++){var D=Ext.apply({items:[]},E);D[this.columns[A]<=1?"columnWidth":"width"]=this.columns[A];if(this.defaults){D.defaults=Ext.apply(D.defaults||{},this.defaults)}u.push(D)}if(this.vertical){var i=Math.ceil(this.items.length/B),t=0;for(var A=0,v=this.items.length;A<v;A++){if(A>0&&A%i==0){t++}if(this.items[A].fieldLabel){this.items[A].hideLabel=false}u[t].items.push(this.items[A])}}else{for(var A=0,v=this.items.length;A<v;A++){var l=A%B;if(this.items[A].fieldLabel){this.items[A].hideLabel=false}u[l].items.push(this.items[A])}}Ext.apply(s,{layoutConfig:{columns:B},items:u})}this.panel=new Ext.Panel(s);this.panel.ownerCt=this;this.el=this.panel.getEl();if(this.forId&&this.itemCls){var C=this.el.up(this.itemCls).child("label",true);if(C){C.setAttribute("htmlFor",this.forId)}}var y=this.panel.findBy(function(a){return a.isFormField},this);this.items=new Ext.util.MixedCollection();this.items.addAll(y)}Ext.form.CheckboxGroup.superclass.onRender.call(this,x,z)},afterRender:function(){Ext.form.CheckboxGroup.superclass.afterRender.call(this);if(this.values){this.setValue.apply(this,this.values);delete this.values}this.eachItem(function(b){b.on("check",this.fireChecked,this);b.inGroup=true})},doLayout:function(){if(this.rendered){this.panel.forceLayout=this.ownerCt.forceLayout;this.panel.doLayout()}},fireChecked:function(){var b=[];this.eachItem(function(a){if(a.checked){b.push(a)}});this.fireEvent("change",this,b)},validateValue:function(d){if(!this.allowBlank){var c=true;this.eachItem(function(a){if(a.checked){return(c=false)}});if(c){this.markInvalid(this.blankText);return false}}return true},onDisable:function(){this.eachItem(function(b){b.disable()})},onEnable:function(){this.eachItem(function(b){b.enable()})},doLayout:function(){if(this.rendered){this.panel.forceLayout=this.ownerCt.forceLayout;this.panel.doLayout()}},onResize:function(d,c){this.panel.setSize(d,c);this.panel.doLayout()},reset:function(){Ext.form.CheckboxGroup.superclass.reset.call(this);this.eachItem(function(b){if(b.reset){b.reset()}})},setValue:function(h,i){if(this.rendered){if(arguments.length==1){if(Ext.isArray(h)){Ext.each(h,function(a,c){var b=this.items.itemAt(c);if(b){b.setValue(a)}},this)}else{if(Ext.isObject(h)){for(var g in h){var e=this.getBox(g);if(e){e.setValue(h[g])}}}else{this.setValueForItem(h)}}}else{var e=this.getBox(h);if(e){e.setValue(i)}}}else{this.values=arguments}return this},onDestroy:function(){Ext.destroy(this.panel);Ext.form.CheckboxGroup.superclass.onDestroy.call(this)},setValueForItem:function(b){b=String(b).split(",");this.eachItem(function(a){if(b.indexOf(a.inputValue)>-1){a.setValue(true)}})},getBox:function(c){var d=null;this.eachItem(function(a){if(c==a||a.dataIndex==c||a.id==c||a.getName()==c){d=a;return false}});return d},getValue:function(){var b=[];this.eachItem(function(a){if(a.checked){b.push(a)}});return b},eachItem:function(b){if(this.items&&this.items.each){this.items.each(b,this)}},initValue:Ext.emptyFn,getValue:Ext.emptyFn,getRawValue:Ext.emptyFn,setRawValue:Ext.emptyFn});Ext.reg("checkboxgroup",Ext.form.CheckboxGroup);Ext.form.Radio=Ext.extend(Ext.form.Checkbox,{inputType:"radio",markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,getGroupValue:function(){var d=this.el.up("form")||Ext.getBody();var c=d.child("input[name="+this.el.dom.name+"]:checked",true);return c?c.value:null},onClick:function(){if(this.el.dom.checked!=this.checked){var b=this.getCheckEl().select("input[name="+this.el.dom.name+"]");b.each(function(a){if(a.dom.id==this.id){this.setValue(true)}else{Ext.getCmp(a.dom.id).setValue(false)}},this)}},setValue:function(d){if(typeof d=="boolean"){Ext.form.Radio.superclass.setValue.call(this,d)}else{var c=this.getCheckEl().child("input[name="+this.el.dom.name+"][value="+d+"]",true);if(c){Ext.getCmp(c.id).setValue(true)}}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 b=null;this.eachItem(function(a){if(a.checked){b=a;return false}});return b},setValue:function(g,d){if(this.rendered){if(arguments.length>1){var e=this.getBox(g);if(e){e.setValue(d);if(e.checked){this.eachItem(function(a){if(a!==e){a.setValue(false)}})}}}else{this.setValueForItem(g)}}else{this.values=arguments}return this},fireChecked:function(){if(!this.checkTask){this.checkTask=new Ext.util.DelayedTask(this.bufferChecked,this)}this.checkTask.delay(10)},bufferChecked:function(){var b=null;this.eachItem(function(a){if(a.checked){b=a;return false}});this.fireEvent("change",this,b)},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",onRender:function(){Ext.form.Hidden.superclass.onRender.apply(this,arguments)},initEvents:function(){this.originalValue=this.getValue()},setSize:Ext.emptyFn,setWidth:Ext.emptyFn,setHeight:Ext.emptyFn,setPosition:Ext.emptyFn,setPagePosition:Ext.emptyFn,markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn});Ext.reg("hidden",Ext.form.Hidden);Ext.form.BasicForm=function(c,d){Ext.apply(this,d);if(Ext.isString(this.paramOrder)){this.paramOrder=this.paramOrder.split(/[\s,|]/)}this.items=new Ext.util.MixedCollection(false,function(a){return a.itemId||a.id||(a.id=Ext.id())});this.addEvents("beforeaction","actionfailed","actioncomplete");if(c){this.initEl(c)}Ext.form.BasicForm.superclass.constructor.call(this)};Ext.extend(Ext.form.BasicForm,Ext.util.Observable,{timeout:30,paramOrder:undefined,paramsAsHash:false,activeAction:null,trackResetOnLoad:false,initEl:function(b){this.el=Ext.get(b);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(b){b.stopEvent()},destroy:function(){this.items.each(function(b){Ext.destroy(b)});if(this.el){this.el.removeAllListeners();this.el.remove()}this.purgeListeners()},isValid:function(){var b=true;this.items.each(function(a){if(!a.validate()){b=false}});return b},isDirty:function(){var b=false;this.items.each(function(a){if(a.isDirty()){b=true;return false}});return b},doAction:function(c,d){if(Ext.isString(c)){c=new Ext.form.Action.ACTION_TYPES[c](this,d)}if(this.fireEvent("beforeaction",this,c)!==false){this.beforeAction(c);c.run.defer(100,c)}return this},submit:function(d){if(this.standardSubmit){var e=this.isValid();if(e){this.el.dom.submit()}return e}var g=String.format("{0}submit",this.api?"direct":"");this.doAction(g,d);return this},load:function(d){var c=String.format("{0}load",this.api?"direct":"");this.doAction(c,d);return this},updateRecord:function(c){c.beginEdit();var d=c.fields;d.each(function(b){var a=this.findField(b.name);if(a){c.set(b.name,a.getValue())}},this);c.endEdit();return this},loadRecord:function(b){this.setValues(b.data);return this},beforeAction:function(d){var c=d.options;if(c.waitMsg){if(this.waitMsgTarget===true){this.el.mask(c.waitMsg,"x-mask-loading")}else{if(this.waitMsgTarget){this.waitMsgTarget=Ext.get(this.waitMsgTarget);this.waitMsgTarget.mask(c.waitMsg,"x-mask-loading")}else{Ext.MessageBox.wait(c.waitMsg,c.waitTitle||this.waitTitle||"Please Wait...")}}}},afterAction:function(e,g){this.activeAction=null;var d=e.options;if(d.waitMsg){if(this.waitMsgTarget===true){this.el.unmask()}else{if(this.waitMsgTarget){this.waitMsgTarget.unmask()}else{Ext.MessageBox.updateProgress(1);Ext.MessageBox.hide()}}}if(g){if(d.reset){this.reset()}Ext.callback(d.success,d.scope,[this,e]);this.fireEvent("actioncomplete",this,e)}else{Ext.callback(d.failure,d.scope,[this,e]);this.fireEvent("actionfailed",this,e)}},findField:function(c){var d=this.items.get(c);if(!Ext.isObject(d)){this.items.each(function(a){if(a.isFormField&&(a.dataIndex==c||a.id==c||a.getName()==c)){d=a;return false}})}return d||null},markInvalid:function(k){if(Ext.isArray(k)){for(var o=0,j=k.length;o<j;o++){var i=k[o];var n=this.findField(i.id);if(n){n.markInvalid(i.msg)}}}else{var m,l;for(l in k){if(!Ext.isFunction(k[l])&&(m=this.findField(l))){m.markInvalid(k[l])}}}return this},setValues:function(o){if(Ext.isArray(o)){for(var n=0,j=o.length;n<j;n++){var i=o[n];var m=this.findField(i.id);if(m){m.setValue(i.value);if(this.trackResetOnLoad){m.originalValue=m.getValue()}}}}else{var l,k;for(k in o){if(!Ext.isFunction(o[k])&&(l=this.findField(k))){l.setValue(o[k]);if(this.trackResetOnLoad){l.originalValue=l.getValue()}}}}return this},getValues:function(c){var d=Ext.lib.Ajax.serializeForm(this.el.dom);if(c===true){return d}return Ext.urlDecode(d)},getFieldValues:function(){var b={};this.items.each(function(a){b[a.getName()]=a.getValue()});return b},clearInvalid:function(){this.items.each(function(b){b.clearInvalid()});return this},reset:function(){this.items.each(function(b){b.reset()});return this},add:function(){this.items.addAll(Array.prototype.slice.call(arguments,0));return this},remove:function(b){this.items.remove(b);return this},render:function(){this.items.each(function(b){if(b.isFormField&&!b.rendered&&document.getElementById(b.id)){b.applyToMarkup(b.id)}});return this},applyToFields:function(b){this.items.each(function(a){Ext.apply(a,b)});return this},applyIfToFields:function(b){this.items.each(function(a){Ext.applyIf(a,b)});return this},callFieldMethod:function(c,d){d=d||[];this.items.each(function(a){if(Ext.isFunction(a[c])){a[c].apply(a,d)}});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 b=Ext.applyIf({listeners:{}},this.initialConfig);return new Ext.form.BasicForm(null,b)},initFields:function(){var g=this.form;var e=this;var d=function(a){if(e.isField(a)){g.add(a)}if(a.isFieldWrap){Ext.applyIf(a,{labelAlign:a.ownerCt.labelAlign,labelWidth:a.ownerCt.labelWidth,itemCls:a.ownerCt.itemCls});g.add(a.field)}else{if(a.doLayout&&a!=e){Ext.applyIf(a,{labelAlign:a.ownerCt.labelAlign,labelWidth:a.ownerCt.labelWidth,itemCls:a.ownerCt.itemCls});if(a.items&&a.items.each){a.items.each(d,this)}}}};this.items.each(d,this)},getLayoutTarget:function(){return this.form.el},getForm:function(){return this.form},onRender:function(c,d){this.initFields();Ext.FormPanel.superclass.onRender.call(this,c,d);this.form.initEl(this.body)},beforeDestroy:function(){this.stopMonitoring();Ext.FormPanel.superclass.beforeDestroy.call(this);this.form.items.clear();Ext.destroy(this.form)},isField:function(b){return !!b.setValue&&!!b.getValue&&!!b.markInvalid&&!!b.clearInvalid},initEvents:function(){Ext.FormPanel.superclass.initEvents.call(this);this.on("remove",this.onRemove,this);this.on("add",this.onAdd,this);if(this.monitorValid){this.startMonitoring()}},onAdd:function(d,c){if(this.isField(c)){this.form.add(c)}else{if(c.findBy){Ext.applyIf(c,{labelAlign:c.ownerCt.labelAlign,labelWidth:c.ownerCt.labelWidth,itemCls:c.ownerCt.itemCls});this.form.add.apply(this.form,c.findBy(this.isField))}}},onRemove:function(d,c){if(this.isField(c)){Ext.destroy(c.container.up(".x-form-item"));this.form.remove(c)}else{if(c.findByType){Ext.each(c.findBy(this.isField),this.form.remove,this.form)}}},startMonitoring:function(){if(!this.validTask){this.validTask=new Ext.util.TaskRunner();this.validTask.start({run:this.bindHandler,interval:this.monitorPoll||200,scope:this})}},stopMonitoring:function(){if(this.validTask){this.validTask.stopAll();this.validTask=null}},load:function(){this.form.load.apply(this.form,arguments)},onDisable:function(){Ext.FormPanel.superclass.onDisable.call(this);if(this.form){this.form.items.each(function(){this.disable()})}},onEnable:function(){Ext.FormPanel.superclass.onEnable.call(this);if(this.form){this.form.items.each(function(){this.enable()})}},bindHandler:function(){var i=true;this.form.items.each(function(a){if(!a.isValid(true)){i=false;return false}});if(this.fbar){var g=this.fbar.items.items;for(var j=0,h=g.length;j<h;j++){var k=g[j];if(k.formBind===true&&k.disabled===i){k.setDisabled(!i)}}}this.fireEvent("clientvalidation",this,i)}});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(d,e){if(!this.el){this.el=document.createElement("fieldset");this.el.id=this.id;if(this.title||this.header||this.checkboxToggle){this.el.appendChild(document.createElement("legend")).className="x-fieldset-header"}}Ext.form.FieldSet.superclass.onRender.call(this,d,e);if(this.checkboxToggle){var g=typeof this.checkboxToggle=="object"?this.checkboxToggle:{tag:"input",type:"checkbox",name:this.checkboxName||this.id+"-checkbox"};this.checkbox=this.header.insertFirst(g);this.checkbox.dom.checked=!this.collapsed;this.mon(this.checkbox,"click",this.onCheckClick,this)}},onCollapse:function(d,c){if(this.checkbox){this.checkbox.dom.checked=false}Ext.form.FieldSet.superclass.onCollapse.call(this,d,c)},onExpand:function(d,c){if(this.checkbox){this.checkbox.dom.checked=true}Ext.form.FieldSet.superclass.onExpand.call(this,d,c)},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)?"&nbsp;":"&#8203;",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")},createFontOptions:function(){var l=[],h=this.fontFamilies,m,j;for(var k=0,i=h.length;k<i;k++){m=h[k];j=m.toLowerCase();l.push('<option value="',j,'" style="font-family:',m,';"',(this.defaultFont==j?' selected="true">':">"),m,"</option>")}return l.join("")},createToolbar:function(h){var g=Ext.QuickTips&&Ext.QuickTips.isEnabled();function i(a,c,b){return{itemId:a,cls:"x-btn-icon",iconCls:"x-edit-"+a,enableToggle:c!==false,scope:h,handler:b||h.relayBtnCmd,clickEvent:"mousedown",tooltip:g?h.buttonTips[a]||undefined:undefined,overflowText:h.buttonTips[a].title||undefined,tabIndex:-1}}var e=new Ext.Toolbar({renderTo:this.wrap.dom.firstChild});this.mon(e.el,"click",function(a){a.preventDefault()});if(this.enableFont&&!Ext.isSafari2){this.fontSelect=e.el.createChild({tag:"select",cls:"x-font-select",html:this.createFontOptions()});this.mon(this.fontSelect,"change",function(){var a=this.fontSelect.dom.value;this.relayCmd("fontname",a);this.deferFocus()},this);e.add(this.fontSelect.dom,"-")}if(this.enableFormat){e.add(i("bold"),i("italic"),i("underline"))}if(this.enableFontSize){e.add("-",i("increasefontsize",false,this.adjustFont),i("decreasefontsize",false,this.adjustFont))}if(this.enableColors){e.add("-",{itemId:"forecolor",cls:"x-btn-icon",iconCls:"x-edit-forecolor",clickEvent:"mousedown",tooltip:g?h.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(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:g?h.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(a,b){if(Ext.isGecko){this.execCmd("useCSS",false);this.execCmd("hilitecolor",b);this.execCmd("useCSS",true);this.deferFocus()}else{this.execCmd(Ext.isOpera?"hilitecolor":"backcolor",Ext.isWebKit||Ext.isIE?"#"+b:b);this.deferFocus()}}},clickEvent:"mousedown"})})}if(this.enableAlignments){e.add("-",i("justifyleft"),i("justifycenter"),i("justifyright"))}if(!Ext.isSafari2){if(this.enableLinks){e.add("-",i("createlink",false,this.createLink))}if(this.enableLists){e.add("-",i("insertorderedlist"),i("insertunorderedlist"))}if(this.enableSourceEdit){e.add("-",i("sourceedit",true,function(a){this.toggleSourceEdit(!this.sourceEditMode)}))}}this.tb=e},getDocMarkup:function(){return'<html><head><style type="text/css">body{border:0;margin:0;padding:3px;height:98%;cursor:text;}</style></head><body></body></html>'},getEditorBody:function(){return this.doc.body||this.doc.documentElement},getDoc:function(){return Ext.isIE?this.getWin().document:(this.iframe.contentDocument||this.getWin().document)},getWin:function(){return Ext.isIE?this.iframe.contentWindow:window.frames[this.iframe.name]},onRender:function(d,e){Ext.form.HtmlEditor.superclass.onRender.call(this,d,e);this.el.dom.style.border="0 none";this.el.dom.setAttribute("tabIndex",-1);this.el.addClass("x-hidden");if(Ext.isIE){this.el.applyStyles("margin-top:-1px;margin-bottom:-1px;")}this.wrap=this.el.wrap({cls:"x-html-editor-wrap",cn:{cls:"x-html-editor-tb"}});this.createToolbar(this);this.disableItems(true);this.createIFrame();if(!this.width){var g=this.el.getSize();this.setSize(g.width,this.height||g.height)}},createIFrame:function(){var b=document.createElement("iframe");b.name=Ext.id();b.frameBorder="0";b.src=Ext.isIE?Ext.SSL_SECURE_URL:"javascript:;";this.wrap.dom.appendChild(b);this.iframe=b;this.monitorTask=Ext.TaskMgr.start({run:this.checkDesignMode,scope:this,interval:100})},initFrame:function(){Ext.TaskMgr.stop(this.monitorTask);this.doc=this.getDoc();this.win=this.getWin();this.doc.open();this.doc.write(this.getDocMarkup());this.doc.close();var b={run:function(){if(this.doc.body||this.doc.readyState=="complete"){Ext.TaskMgr.stop(b);this.doc.designMode="on";this.initEditor.defer(10,this)}},interval:10,duration:10000,scope:this};Ext.TaskMgr.start(b)},checkDesignMode:function(){if(this.wrap&&this.wrap.dom.offsetWidth){var b=this.getDoc();if(!b){return}if(!b.editorInitialized||String(b.designMode).toLowerCase()!="on"){this.initFrame()}}},disableItems:function(b){if(this.fontSelect){this.fontSelect.dom.disabled=b}this.tb.items.each(function(a){if(a.itemId!="sourceedit"){a.setDisabled(b)}})},onResize:function(e,i){Ext.form.HtmlEditor.superclass.onResize.apply(this,arguments);if(this.el&&this.iframe){if(typeof e=="number"){var h=e-this.wrap.getFrameWidth("lr");this.el.setWidth(this.adjustWidth("textarea",h));this.tb.setWidth(h);this.iframe.style.width=Math.max(h,0)+"px"}if(typeof i=="number"){var g=i-this.wrap.getFrameWidth("tb")-this.tb.el.getHeight();this.el.setHeight(this.adjustWidth("textarea",g));this.iframe.style.height=Math.max(g,0)+"px";if(this.doc){this.getEditorBody().style.height=Math.max((g-(this.iframePad*2)),0)+"px"}}}},toggleSourceEdit:function(e){if(e===undefined){e=!this.sourceEditMode}this.sourceEditMode=e===true;var g=this.tb.items.get("sourceedit");if(g.pressed!==this.sourceEditMode){g.toggle(this.sourceEditMode);if(!g.xtbHidden){return}}if(this.sourceEditMode){this.disableItems(true);this.syncValue();this.iframe.className="x-hidden";this.el.removeClass("x-hidden");this.el.dom.removeAttribute("tabIndex");this.el.focus()}else{if(this.initialized){this.disableItems(false)}this.pushValue();this.iframe.className="";this.el.addClass("x-hidden");this.el.dom.setAttribute("tabIndex",-1);this.deferFocus()}var d=this.lastSize;if(d){delete this.lastSize;this.setSize(d)}this.fireEvent("editmodechange",this,this.sourceEditMode)},createLink:function(){var b=prompt(this.createLinkText,this.defaultLinkValue);if(b&&b!="http://"){this.relayCmd("createlink",b)}},adjustSize:Ext.BoxComponent.prototype.adjustSize,getResizeEl:function(){return this.wrap},getPositionEl:function(){return this.wrap},initEvents:function(){this.originalValue=this.getValue()},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,setValue:function(b){Ext.form.HtmlEditor.superclass.setValue.call(this,b);this.pushValue();return this},cleanHtml:function(b){b=String(b);if(b.length>5){if(Ext.isWebKit){b=b.replace(/\sclass="(?:Apple-style-span|khtml-block-placeholder)"/gi,"")}}if(b==this.defaultValue){b=""}return b},syncValue:function(){if(this.initialized){var h=this.getEditorBody();var i=h.innerHTML;if(Ext.isWebKit){var e=h.getAttribute("style");var g=e.match(/text-align:(.*?);/i);if(g&&g[1]){i='<div style="'+g[0]+'">'+i+"</div>"}}i=this.cleanHtml(i);if(this.fireEvent("beforesync",this,i)!==false){this.el.dom.value=i;this.fireEvent("sync",this,i)}}},getValue:function(){this[this.sourceEditMode?"pushValue":"syncValue"]();return Ext.form.HtmlEditor.superclass.getValue.call(this)},pushValue:function(){if(this.initialized){var e=this.el.dom.value;if(!this.activated&&e.length<1){e=this.defaultValue}if(this.fireEvent("beforepush",this,e)!==false){this.getEditorBody().innerHTML=e;if(Ext.isGecko){var g=this.doc,d=g.designMode.toLowerCase();g.designMode=d.toggle("on","off");g.designMode=d}this.fireEvent("push",this,e)}}},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 d=this.getEditorBody();var e=this.el.getStyles("font-size","font-family","background-image","background-repeat");e["background-attachment"]="fixed";d.bgProperties="fixed";Ext.DomHelper.applyStyles(d,e);if(this.doc){try{Ext.EventManager.removeAll(this.doc)}catch(g){}}this.doc=this.getDoc();Ext.EventManager.on(this.doc,{mousedown:this.onEditorEvent,dblclick:this.onEditorEvent,click:this.onEditorEvent,keyup:this.onEditorEvent,buffer:100,scope:this});if(Ext.isGecko){Ext.EventManager.on(this.doc,"keypress",this.applyCommand,this)}if(Ext.isIE||Ext.isWebKit||Ext.isOpera){Ext.EventManager.on(this.doc,"keydown",this.fixKeys,this)}this.initialized=true;this.fireEvent("initialize",this);this.doc.editorInitialized=true;this.pushValue()}catch(g){}},onDestroy:function(){if(this.monitorTask){Ext.TaskMgr.stop(this.monitorTask)}if(this.rendered){Ext.destroy(this.tb);if(this.wrap){this.wrap.dom.innerHTML="";this.wrap.remove()}}if(this.el){this.el.removeAllListeners();this.el.remove()}if(this.doc){try{Ext.EventManager.removeAll(this.doc);for(var c in this.doc){delete this.doc[c]}}catch(d){}}this.purgeListeners()},onFirstFocus:function(){this.activated=true;this.disableItems(false);if(Ext.isGecko){this.win.focus();var e=this.win.getSelection();if(!e.focusNode||e.focusNode.nodeType!=3){var d=e.getRangeAt(0);d.selectNodeContents(this.getEditorBody());d.collapse(true);this.deferFocus()}try{this.execCmd("useCSS",true);this.execCmd("styleWithCSS",false)}catch(g){}}this.fireEvent("activate",this)},adjustFont:function(d){var g=d.itemId=="increasefontsize"?1:-1;var e=parseInt(this.doc.queryCommandValue("FontSize")||2,10);if((Ext.isSafari&&!Ext.isSafari2)||Ext.isChrome||Ext.isAir){if(e<=10){e=1+g}else{if(e<=13){e=2+g}else{if(e<=16){e=3+g}else{if(e<=18){e=4+g}else{if(e<=24){e=5+g}else{e=6+g}}}}}e=e.constrain(1,6)}else{if(Ext.isSafari){g*=2}e=Math.max(1,e+g)+(Ext.isSafari?"px":0)}this.execCmd("FontSize",e)},onEditorEvent:function(b){this.updateToolbar()},updateToolbar:function(){if(!this.activated){this.onFirstFocus();return}var d=this.tb.items.map,g=this.doc;if(this.enableFont&&!Ext.isSafari2){var e=(this.doc.queryCommandValue("FontName")||this.defaultFont).toLowerCase();if(e!=this.fontSelect.dom.value){this.fontSelect.dom.value=e}}if(this.enableFormat){d.bold.toggle(g.queryCommandState("bold"));d.italic.toggle(g.queryCommandState("italic"));d.underline.toggle(g.queryCommandState("underline"))}if(this.enableAlignments){d.justifyleft.toggle(g.queryCommandState("justifyleft"));d.justifycenter.toggle(g.queryCommandState("justifycenter"));d.justifyright.toggle(g.queryCommandState("justifyright"))}if(!Ext.isSafari2&&this.enableLists){d.insertorderedlist.toggle(g.queryCommandState("insertorderedlist"));d.insertunorderedlist.toggle(g.queryCommandState("insertunorderedlist"))}Ext.menu.MenuMgr.hideAll();this.syncValue()},relayBtnCmd:function(b){this.relayCmd(b.itemId)},relayCmd:function(c,d){(function(){this.focus();this.execCmd(c,d);this.updateToolbar()}).defer(10,this)},execCmd:function(c,d){this.doc.execCommand(c,false,d===undefined?null:d);this.syncValue()},applyCommand:function(c){if(c.ctrlKey){var g=c.getCharCode(),e;if(g>0){g=String.fromCharCode(g);switch(g){case"b":e="bold";break;case"i":e="italic";break;case"u":e="underline";break}if(e){this.win.focus();this.execCmd(e);this.deferFocus();c.preventDefault()}}}},insertAtCursor:function(c){if(!this.activated){return}if(Ext.isIE){this.win.focus();var d=this.doc.selection.createRange();if(d){d.collapse(true);d.pasteHTML(c);this.syncValue();this.deferFocus()}}else{if(Ext.isGecko||Ext.isOpera){this.win.focus();this.execCmd("InsertHTML",c);this.deferFocus()}else{if(Ext.isWebKit){this.execCmd("InsertText",c);this.deferFocus()}}}},fixKeys:function(){if(Ext.isIE){return function(h){var g=h.getKey(),e;if(g==h.TAB){h.stopEvent();e=this.doc.selection.createRange();if(e){e.collapse(true);e.pasteHTML("&nbsp;&nbsp;&nbsp;&nbsp;");this.deferFocus()}}else{if(g==h.ENTER){e=this.doc.selection.createRange();if(e){var i=e.parentElement();if(!i||i.tagName.toLowerCase()!="li"){h.stopEvent();e.pasteHTML("<br />");e.collapse(false);e.select()}}}}}}else{if(Ext.isOpera){return function(c){var d=c.getKey();if(d==c.TAB){c.stopEvent();this.win.focus();this.execCmd("InsertHTML","&nbsp;&nbsp;&nbsp;&nbsp;");this.deferFocus()}}}else{if(Ext.isWebKit){return function(c){var d=c.getKey();if(d==c.TAB){c.stopEvent();this.execCmd("InsertText","\t");this.deferFocus()}}}}}}(),getToolbar:function(){return this.tb},buttonTips:{bold:{title:"Bold (Ctrl+B)",text:"Make the selected text bold.",cls:"x-html-editor-tip"},italic:{title:"Italic (Ctrl+I)",text:"Make the selected text italic.",cls:"x-html-editor-tip"},underline:{title:"Underline (Ctrl+U)",text:"Underline the selected text.",cls:"x-html-editor-tip"},increasefontsize:{title:"Grow Text",text:"Increase the font size.",cls:"x-html-editor-tip"},decreasefontsize:{title:"Shrink Text",text:"Decrease the font size.",cls:"x-html-editor-tip"},backcolor:{title:"Text Highlight Color",text:"Change the background color of the selected text.",cls:"x-html-editor-tip"},forecolor:{title:"Font Color",text:"Change the color of the selected text.",cls:"x-html-editor-tip"},justifyleft:{title:"Align Text Left",text:"Align text to the left.",cls:"x-html-editor-tip"},justifycenter:{title:"Center Text",text:"Center text in the editor.",cls:"x-html-editor-tip"},justifyright:{title:"Align Text Right",text:"Align text to the right.",cls:"x-html-editor-tip"},insertunorderedlist:{title:"Bullet List",text:"Start a bulleted list.",cls:"x-html-editor-tip"},insertorderedlist:{title:"Numbered List",text:"Start a numbered list.",cls:"x-html-editor-tip"},createlink:{title:"Hyperlink",text:"Make the selected text a hyperlink.",cls:"x-html-editor-tip"},sourceedit:{title:"Source Edit",text:"Switch to source editing mode.",cls:"x-html-editor-tip"}}});Ext.reg("htmleditor",Ext.form.HtmlEditor);Ext.form.TimeField=Ext.extend(Ext.form.ComboBox,{minValue:null,maxValue:null,minText:"The time in this field must be equal to or after {0}",maxText:"The time in this field must be equal to or before {0}",invalidText:"{0} is not a valid time",format:"g:i A",altFormats:"g:ia|g:iA|g:i a|g:i A|h:i|g:i|H:i|ga|ha|gA|h a|g a|g A|gi|hi|gia|hia|g|H",increment:15,mode:"local",triggerAction:"all",typeAhead:false,initDate:"1/1/2008",initComponent:function(){if(typeof this.minValue=="string"){this.minValue=this.parseDate(this.minValue)}if(typeof this.maxValue=="string"){this.maxValue=this.parseDate(this.maxValue)}if(!this.store){var d=this.parseDate(this.minValue)||new Date(this.initDate).clearTime();var e=this.parseDate(this.maxValue)||new Date(this.initDate).clearTime().add("mi",(24*60)-1);var g=[];while(d<=e){g.push(d.dateFormat(this.format));d=d.add("mi",this.increment)}this.store=g}Ext.form.TimeField.superclass.initComponent.call(this)},getValue:function(){var b=Ext.form.TimeField.superclass.getValue.call(this);return this.formatDate(this.parseDate(b))||""},setValue:function(b){return Ext.form.TimeField.superclass.setValue.call(this,this.formatDate(this.parseDate(b)))},validateValue:Ext.form.DateField.prototype.validateValue,parseDate:Ext.form.DateField.prototype.parseDate,formatDate:Ext.form.DateField.prototype.formatDate,beforeBlur:function(){var b=this.parseDate(this.getRawValue());if(b){this.setValue(b.dateFormat(this.format))}Ext.form.TimeField.superclass.beforeBlur.call(this)}});Ext.reg("timefield",Ext.form.TimeField);Ext.form.Label=Ext.extend(Ext.BoxComponent,{onRender:function(c,d){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,c,d)},setText:function(e,d){var g=d===false;this[!g?"text":"html"]=e;delete this[g?"text":"html"];if(this.rendered){this.el.dom.innerHTML=d!==false?Ext.util.Format.htmlEncode(e):e}return this}});Ext.reg("label",Ext.form.Label);Ext.form.Action=function(c,d){this.form=c;this.options=d||{}};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(b){},success:function(b){},handleResponse:function(b){},failure:function(b){this.response=b;this.failureType=Ext.form.Action.CONNECT_FAILURE;this.form.afterAction(this,false)},processResponse:function(b){this.response=b;if(!b.responseText&&!b.responseXML){return true}this.result=this.handleResponse(b);return this.result},getUrl:function(g){var e=this.options.url||this.form.url||this.form.el.dom.action;if(g){var d=this.getParams();if(d){e=Ext.urlAppend(e,d)}}return e},getMethod:function(){return(this.options.method||this.form.method||this.form.el.dom.method||"POST").toUpperCase()},getParams:function(){var d=this.form.baseParams;var c=this.options.params;if(c){if(typeof c=="object"){c=Ext.urlEncode(Ext.applyIf(c,d))}else{if(typeof c=="string"&&d){c+="&"+Ext.urlEncode(d)}}}else{if(d){c=Ext.urlEncode(d)}}return c},createCallback:function(b){var b=b||{};return{success:this.success,failure:this.failure,scope:this,timeout:(b.timeout*1000)||(this.form.timeout*1000),upload:this.form.fileUpload?this.success:undefined}}};Ext.form.Action.Submit=function(c,d){Ext.form.Action.Submit.superclass.constructor.call(this,c,d)};Ext.extend(Ext.form.Action.Submit,Ext.form.Action,{type:"submit",run:function(){var d=this.options;var g=this.getMethod();var e=g=="GET";if(d.clientValidation===false||this.form.isValid()){Ext.Ajax.request(Ext.apply(this.createCallback(d),{form:this.form.el.dom,url:this.getUrl(e),method:g,headers:d.headers,params:!e?this.getParams():null,isUpload:this.form.fileUpload}))}else{if(d.clientValidation!==false){this.failureType=Ext.form.Action.CLIENT_INVALID;this.form.afterAction(this,false)}}},success:function(c){var d=this.processResponse(c);if(d===true||d.success){this.form.afterAction(this,true);return}if(d.errors){this.form.markInvalid(d.errors);this.failureType=Ext.form.Action.SERVER_INVALID}this.form.afterAction(this,false)},handleResponse:function(m){if(this.form.errorReader){var h=this.form.errorReader.read(m);var j=[];if(h.records){for(var l=0,i=h.records.length;l<i;l++){var k=h.records[l];j[l]=k.data}}if(j.length<1){j=null}return{success:h.success,errors:j}}return Ext.decode(m.responseText)}});Ext.form.Action.Load=function(c,d){Ext.form.Action.Load.superclass.constructor.call(this,c,d);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(c){var d=this.processResponse(c);if(d===true||!d.success||!d.data){this.failureType=Ext.form.Action.LOAD_FAILURE;this.form.afterAction(this,false);return}this.form.clearInvalid();this.form.setValues(d.data);this.form.afterAction(this,true)},handleResponse:function(d){if(this.form.reader){var e=this.form.reader.read(d);var g=e.records&&e.records[0]?e.records[0].data:null;return{success:e.success,data:g}}return Ext.decode(d.responseText)}});Ext.form.Action.DirectLoad=Ext.extend(Ext.form.Action.Load,{constructor:function(c,d){Ext.form.Action.DirectLoad.superclass.constructor.call(this,c,d)},type:"directload",run:function(){var b=this.getParams();b.push(this.success,this);this.form.api.load.apply(window,b)},getParams:function(){var o=[],k={};var m=this.form.baseParams;var l=this.options.params;Ext.apply(k,l,m);var i=this.form.paramOrder;if(i){for(var n=0,j=i.length;n<j;n++){o.push(k[i[n]])}}else{if(this.form.paramsAsHash){o.push(k)}}return o},processResponse:function(b){this.result=b;return b}});Ext.form.Action.DirectSubmit=Ext.extend(Ext.form.Action.Submit,{constructor:function(c,d){Ext.form.Action.DirectSubmit.superclass.constructor.call(this,c,d)},type:"directsubmit",run:function(){var b=this.options;if(b.clientValidation===false||this.form.isValid()){this.success.params=this.getParams();this.form.api.submit(this.form.el.dom,this.success,this)}else{if(b.clientValidation!==false){this.failureType=Ext.form.Action.CLIENT_INVALID;this.form.afterAction(this,false)}}},getParams:function(){var g={};var e=this.form.baseParams;var d=this.options.params;Ext.apply(g,d,e);return g},processResponse:function(b){this.result=b;return b}});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 i=/^[a-zA-Z_]+$/;var h=/^[a-zA-Z0-9_]+$/;var e=/^(\w+)([-+.][\w]+)*@(\w[-\w]*\.){1,5}([A-Za-z]){2,4}$/;var g=/(((https?)|(ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i;return{email:function(a){return e.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 g.test(a)},urlText:'This field should be a URL in the format "http://www.example.com"',alpha:function(a){return i.test(a)},alphaText:"This field should only contain letters and _",alphaMask:/[a-z_]/i,alphanum:function(a){return h.test(a)},alphanumText:"This field should only contain letters, numbers and _",alphanumMask:/[a-z0-9_]/i}}();Ext.grid.GridPanel=Ext.extend(Ext.Panel,{autoExpandColumn:false,autoExpandMax:1000,autoExpandMin:50,columnLines:false,ddText:"{0} selected row{1}",deferRowRender:true,enableColumnHide:true,enableColumnMove:true,enableDragDrop:false,enableHdMenu:true,loadMask:false,minColumnWidth:25,stripeRows:false,trackMouseOver:true,stateEvents:["columnmove","columnresize","sortchange"],view:null,rendered:false,viewReady:false,initComponent:function(){Ext.grid.GridPanel.superclass.initComponent.call(this);if(this.columnLines){this.cls=(this.cls||"")+" x-grid-with-col-lines"}this.autoScroll=false;this.autoWidth=false;if(Ext.isArray(this.columns)){this.colModel=new Ext.grid.ColumnModel(this.columns);delete this.columns}if(this.ds){this.store=this.ds;delete this.ds}if(this.cm){this.colModel=this.cm;delete this.cm}if(this.sm){this.selModel=this.sm;delete this.sm}this.store=Ext.StoreMgr.lookup(this.store);this.addEvents("click","dblclick","contextmenu","mousedown","mouseup","mouseover","mouseout","keypress","keydown","cellmousedown","rowmousedown","headermousedown","cellclick","celldblclick","rowclick","rowdblclick","headerclick","headerdblclick","rowcontextmenu","cellcontextmenu","headercontextmenu","bodyscroll","columnresize","columnmove","sortchange","reconfigure")},onRender:function(i,g){Ext.grid.GridPanel.superclass.onRender.apply(this,arguments);var h=this.body;this.el.addClass("x-grid-panel");var c=this.getView();c.init(this);this.mon(h,{mousedown:this.onMouseDown,click:this.onClick,dblclick:this.onDblClick,contextmenu:this.onContextMenu,keydown:this.onKeyDown,scope:this});this.relayEvents(h,["mousedown","mouseup","mouseover","mouseout","keypress"]);this.getSelectionModel().init(this);this.view.render()},initEvents:function(){Ext.grid.GridPanel.superclass.initEvents.call(this);if(this.loadMask){this.loadMask=new Ext.LoadMask(this.bwrap,Ext.apply({store:this.store},this.loadMask))}},initStateEvents:function(){Ext.grid.GridPanel.superclass.initStateEvents.call(this);this.mon(this.colModel,"hiddenchange",this.saveState,this,{delay:100})},applyState:function(n){var c=this.colModel;var o=n.columns;if(o){for(var q=0,i=o.length;q<i;q++){var p=o[q];var l=c.getColumnById(p.id);if(l){l.hidden=p.hidden;l.width=p.width;var m=c.getIndexById(p.id);if(m!=q){c.moveColumn(m,q)}}}}if(n.sort&&this.store){this.store[this.store.remoteSort?"setDefaultSort":"sort"](n.sort.field,n.sort.direction)}delete n.columns;delete n.sort;Ext.grid.GridPanel.superclass.applyState.call(this,n)},getState:function(){var i={columns:[]};for(var c=0,h;(h=this.colModel.config[c]);c++){i.columns[c]={id:h.id,width:h.width};if(h.hidden){i.columns[c].hidden=true}}if(this.store){var g=this.store.getSortState();if(g){i.sort=g}}return i},afterRender:function(){Ext.grid.GridPanel.superclass.afterRender.call(this);this.view.layout();if(this.deferRowRender){this.view.afterRender.defer(10,this.view)}else{this.view.afterRender()}this.viewReady=true},reconfigure:function(d,c){if(this.loadMask){this.loadMask.destroy();this.loadMask=new Ext.LoadMask(this.bwrap,Ext.apply({},{store:d},this.initialConfig.loadMask))}this.view.initData(d,c);this.store=d;this.colModel=c;if(this.rendered){this.view.refresh(true)}this.fireEvent("reconfigure",this,d,c)},onKeyDown:function(b){this.fireEvent("keydown",b)},onDestroy:function(){if(this.rendered){var b=this.body;b.removeAllListeners();b.update("");Ext.destroy(this.view,this.loadMask)}else{if(this.store&&this.store.autoDestroy){this.store.destroy()}}Ext.destroy(this.colModel,this.selModel);this.store=this.selModel=this.colModel=this.view=this.loadMask=null;Ext.grid.GridPanel.superclass.onDestroy.call(this)},processEvent:function(o,m){this.fireEvent(o,m);var n=m.getTarget();var e=this.view;var k=e.findHeaderIndex(n);if(k!==false){this.fireEvent("header"+o,this,k,m)}else{var l=e.findRowIndex(n);var j=e.findCellIndex(n);if(l!==false){this.fireEvent("row"+o,this,l,m);if(j!==false){this.fireEvent("cell"+o,this,l,j,m)}}}},onClick:function(b){this.processEvent("click",b)},onMouseDown:function(b){this.processEvent("mousedown",b)},onContextMenu:function(c,d){this.processEvent("contextmenu",c)},onDblClick:function(b){this.processEvent("dblclick",b)},walkCells:function(l,s,t,q,m){var n=this.colModel,p=n.getColumnCount();var u=this.store,o=u.getCount(),r=true;if(t<0){if(s<0){l--;r=false}while(l>=0){if(!r){s=p-1}r=false;while(s>=0){if(q.call(m||this,l,s,n)===true){return[l,s]}s--}l--}}else{if(s>=p){l++;r=false}while(l<o){if(!r){s=0}r=false;while(s<p){if(q.call(m||this,l,s,n)===true){return[l,s]}s++}l++}}return null},onResize:function(){Ext.grid.GridPanel.superclass.onResize.apply(this,arguments);if(this.viewReady){this.view.layout()}},getGridEl:function(){return this.body},stopEditing:Ext.emptyFn,getSelectionModel:function(){if(!this.selModel){this.selModel=new Ext.grid.RowSelectionModel(this.disableSelection?{selectRow:Ext.emptyFn}:null)}return this.selModel},getStore:function(){return this.store},getColumnModel:function(){return this.colModel},getView:function(){if(!this.view){this.view=new Ext.grid.GridView(this.viewConfig)}return this.view},getDragDropText:function(){var b=this.selModel.getCount();return String.format(this.ddText,b,b==1?"":"s")}});Ext.reg("grid",Ext.grid.GridPanel);Ext.grid.GridView=function(b){Ext.apply(this,b);this.addEvents("beforerowremoved","beforerowsinserted","beforerefresh","rowremoved","rowsinserted","rowupdated","refresh");Ext.grid.GridView.superclass.constructor.call(this)};Ext.extend(Ext.grid.GridView,Ext.util.Observable,{deferEmptyText:true,scrollOffset:19,autoFill:false,forceFit:false,sortClasses:["sort-asc","sort-desc"],sortAscText:"Sort Ascending",sortDescText:"Sort Descending",columnsText:"Columns",selectedRowClass:"x-grid3-row-selected",borderWidth:2,tdClass:"x-grid3-cell",hdCls:"x-grid3-hd",markDirty:true,cellSelectorDepth:4,rowSelectorDepth:10,cellSelector:"td.x-grid3-cell",rowSelector:"div.x-grid3-row",firstRowCls:"x-grid3-row-first",lastRowCls:"x-grid3-row-last",rowClsRe:/(?:^|\s+)x-grid3-row-(first|last|alt)(?:\s+|$)/g,initTemplates:function(){var g=this.templates||{};if(!g.master){g.master=new Ext.Template('<div class="x-grid3" hidefocus="true">','<div class="x-grid3-viewport">','<div class="x-grid3-header"><div class="x-grid3-header-inner"><div class="x-grid3-header-offset" style="{ostyle}">{header}</div></div><div class="x-clear"></div></div>','<div class="x-grid3-scroller"><div class="x-grid3-body" style="{bstyle}">{body}</div><a href="#" class="x-grid3-focus" tabIndex="-1"></a></div>',"</div>",'<div class="x-grid3-resize-marker">&#160;</div>','<div class="x-grid3-resize-proxy">&#160;</div>',"</div>")}if(!g.header){g.header=new Ext.Template('<table border="0" cellspacing="0" cellpadding="0" style="{tstyle}">','<thead><tr class="x-grid3-hd-row">{cells}</tr></thead>',"</table>")}if(!g.hcell){g.hcell=new Ext.Template('<td class="x-grid3-hd x-grid3-cell x-grid3-td-{id} {css}" style="{style}"><div {tooltip} {attr} class="x-grid3-hd-inner x-grid3-hd-{id}" unselectable="on" style="{istyle}">',this.grid.enableHdMenu?'<a class="x-grid3-hd-btn" href="#"></a>':"",'{value}<img class="x-grid3-sort-icon" src="',Ext.BLANK_IMAGE_URL,'" />',"</div></td>")}if(!g.body){g.body=new Ext.Template("{rows}")}if(!g.row){g.row=new Ext.Template('<div class="x-grid3-row {alt}" style="{tstyle}"><table class="x-grid3-row-table" border="0" cellspacing="0" cellpadding="0" style="{tstyle}">',"<tbody><tr>{cells}</tr>",(this.enableRowBody?'<tr class="x-grid3-row-body-tr" style="{bodyStyle}"><td colspan="{cols}" class="x-grid3-body-cell" tabIndex="0" hidefocus="on"><div class="x-grid3-row-body">{body}</div></td></tr>':""),"</tbody></table></div>")}if(!g.cell){g.cell=new Ext.Template('<td class="x-grid3-col x-grid3-cell x-grid3-td-{id} {css}" style="{style}" tabIndex="0" {cellAttr}>','<div class="x-grid3-cell-inner x-grid3-col-{id}" unselectable="on" {attr}>{value}</div>',"</td>")}for(var e in g){var d=g[e];if(d&&typeof d.compile=="function"&&!d.compiled){d.disableFormats=true;d.compile()}}this.templates=g;this.colRe=new RegExp("x-grid3-td-([^\\s]+)","")},fly:function(b){if(!this._flyweight){this._flyweight=new Ext.Element.Flyweight(document.body)}this._flyweight.dom=b;return this._flyweight},getEditorParent:function(){return this.scroller.dom},initElements:function(){var g=Ext.Element;var d=this.grid.getGridEl().dom.firstChild;var e=d.childNodes;this.el=new g(d);this.mainWrap=new g(e[0]);this.mainHd=new g(this.mainWrap.dom.firstChild);if(this.grid.hideHeaders){this.mainHd.setDisplayed(false)}this.innerHd=this.mainHd.dom.firstChild;this.scroller=new g(this.mainWrap.dom.childNodes[1]);if(this.forceFit){this.scroller.setStyle("overflow-x","hidden")}this.mainBody=new g(this.scroller.dom.firstChild);this.focusEl=new g(this.scroller.dom.childNodes[1]);this.focusEl.swallowEvent("click",true);this.resizeMarker=new g(e[1]);this.resizeProxy=new g(e[2])},getRows:function(){return this.hasRows()?this.mainBody.dom.childNodes:[]},findCell:function(b){if(!b){return false}return this.fly(b).findParent(this.cellSelector,this.cellSelectorDepth)},findCellIndex:function(g,d){var e=this.findCell(g);if(e&&(!d||this.fly(e).hasClass(d))){return this.getCellIndex(e)}return false},getCellIndex:function(c){if(c){var d=c.className.match(this.colRe);if(d&&d[1]){return this.cm.getIndexById(d[1])}}return false},findHeaderCell:function(c){var d=this.findCell(c);return d&&this.fly(d).hasClass(this.hdCls)?d:null},findHeaderIndex:function(b){return this.findCellIndex(b,this.hdCls)},findRow:function(b){if(!b){return false}return this.fly(b).findParent(this.rowSelector,this.rowSelectorDepth)},findRowIndex:function(d){var c=this.findRow(d);return c?c.rowIndex:false},getRow:function(b){return this.getRows()[b]},getCell:function(c,d){return this.getRow(c).getElementsByTagName("td")[d]},getHeaderCell:function(b){return this.mainHd.dom.getElementsByTagName("td")[b]},addRowClass:function(g,e){var d=this.getRow(g);if(d){this.fly(d).addClass(e)}},removeRowClass:function(g,e){var d=this.getRow(g);if(d){this.fly(d).removeClass(e)}},removeRow:function(b){Ext.removeNode(this.getRow(b));this.syncFocusEl(b)},removeRows:function(i,g){var e=this.mainBody.dom;for(var h=i;h<=g;h++){Ext.removeNode(e.childNodes[i])}this.syncFocusEl(i)},getScrollState:function(){var b=this.scroller.dom;return{left:b.scrollLeft,top:b.scrollTop}},restoreScroll:function(d){var c=this.scroller.dom;c.scrollLeft=d.left;c.scrollTop=d.top},scrollToTop:function(){this.scroller.dom.scrollTop=0;this.scroller.dom.scrollLeft=0},syncScroll:function(){this.syncHeaderScroll();var b=this.scroller.dom;this.grid.fireEvent("bodyscroll",b.scrollLeft,b.scrollTop)},syncHeaderScroll:function(){var b=this.scroller.dom;this.innerHd.scrollLeft=b.scrollLeft;this.innerHd.scrollLeft=b.scrollLeft},updateSortIcon:function(e,g){var h=this.sortClasses;var i=this.mainHd.select("td").removeClass(h);i.item(e).addClass(h[g=="DESC"?1:0])},updateAllColumnWidths:function(){var r=this.getTotalWidth(),j=this.cm.getColumnCount(),p=[],q,t;for(t=0;t<j;t++){p[t]=this.getColumnWidth(t)}this.innerHd.firstChild.style.width=this.getOffsetWidth();this.innerHd.firstChild.firstChild.style.width=r;this.mainBody.dom.style.width=r;for(t=0;t<j;t++){var s=this.getHeaderCell(t);s.style.width=p[t]}var n=this.getRows(),i,o;for(t=0,q=n.length;t<q;t++){i=n[t];i.style.width=r;if(i.firstChild){i.firstChild.style.width=r;o=i.firstChild.rows[0];for(var u=0;u<j;u++){o.childNodes[u].style.width=p[u]}}}this.onAllColumnWidthsUpdated(p,r)},updateColumnWidth:function(r,s){var l=this.getColumnWidth(r);var o=this.getTotalWidth();this.innerHd.firstChild.style.width=this.getOffsetWidth();this.innerHd.firstChild.firstChild.style.width=o;this.mainBody.dom.style.width=o;var p=this.getHeaderCell(r);p.style.width=l;var m=this.getRows(),i;for(var q=0,n=m.length;q<n;q++){i=m[q];i.style.width=o;if(i.firstChild){i.firstChild.style.width=o;i.firstChild.rows[0].childNodes[r].style.width=l}}this.onColumnWidthUpdated(r,l,o)},updateColumnHidden:function(s,o){var p=this.getTotalWidth();this.innerHd.firstChild.style.width=this.getOffsetWidth();this.innerHd.firstChild.firstChild.style.width=p;this.mainBody.dom.style.width=p;var m=o?"none":"";var q=this.getHeaderCell(s);q.style.display=m;var l=this.getRows(),i;for(var r=0,n=l.length;r<n;r++){i=l[r];i.style.width=p;if(i.firstChild){i.firstChild.style.width=p;i.firstChild.rows[0].childNodes[s].style.display=m}}this.onColumnHiddenUpdated(s,o,p);delete this.lastViewWidth;this.layout()},doRender:function(O,M,E,S,G,p){var R=this.templates,P=R.cell,N=R.row,L=G-1;var Q="width:"+this.getTotalWidth()+";";var c=[],D,H,C={},K={tstyle:Q},I;for(var r=0,i=M.length;r<i;r++){I=M[r];D=[];var J=(r+S);for(var j=0;j<G;j++){H=O[j];C.id=H.id;C.css=j===0?"x-grid3-cell-first ":(j==L?"x-grid3-cell-last ":"");C.attr=C.cellAttr="";C.value=H.renderer(I.data[H.name],C,I,J,j,E);C.style=H.style;if(Ext.isEmpty(C.value)){C.value="&#160;"}if(this.markDirty&&I.dirty&&typeof I.modified[H.name]!=="undefined"){C.css+=" x-grid3-dirty-cell"}D[D.length]=P.apply(C)}var F=[];if(p&&((J+1)%2===0)){F[0]="x-grid3-row-alt"}if(I.dirty){F[1]=" x-grid3-dirty-row"}K.cols=G;if(this.getRowClass){F[2]=this.getRowClass(I,J,K,E)}K.alt=F.join(" ");K.cells=D.join("");c[c.length]=N.apply(K)}return c.join("")},processRows:function(e,g){if(!this.ds||this.ds.getCount()<1){return}var d=this.getRows();g=g||!this.grid.stripeRows;e=e||0;Ext.each(d,function(a,b){a.rowIndex=b;a.className=a.className.replace(this.rowClsRe," ");if(!g&&(b+1)%2===0){a.className+=" x-grid3-row-alt"}});if(e===0){Ext.fly(d[0]).addClass(this.firstRowCls)}Ext.fly(d[d.length-1]).addClass(this.lastRowCls)},afterRender:function(){if(!this.ds||!this.cm){return}this.mainBody.dom.innerHTML=this.renderRows()||"&#160;";this.processRows(0,true);if(this.deferEmptyText!==true){this.applyEmptyText()}},renderUI:function(){var h=this.renderHeaders();var g=this.templates.body.apply({rows:"&#160;"});var e=this.templates.master.apply({body:g,header:h,ostyle:"width:"+this.getOffsetWidth()+";",bstyle:"width:"+this.getTotalWidth()+";"});var i=this.grid;i.getGridEl().dom.innerHTML=e;this.initElements();Ext.fly(this.innerHd).on("click",this.handleHdDown,this);this.mainHd.on({scope:this,mouseover:this.handleHdOver,mouseout:this.handleHdOut,mousemove:this.handleHdMove});this.scroller.on("scroll",this.syncScroll,this);if(i.enableColumnResize!==false){this.splitZone=new Ext.grid.GridView.SplitDragZone(i,this.mainHd.dom)}if(i.enableColumnMove){this.columnDrag=new Ext.grid.GridView.ColumnDragZone(i,this.innerHd);this.columnDrop=new Ext.grid.HeaderDropZone(i,this.mainHd.dom)}if(i.enableHdMenu!==false){this.hmenu=new Ext.menu.Menu({id:i.id+"-hctx"});this.hmenu.add({itemId:"asc",text:this.sortAscText,cls:"xg-hmenu-sort-asc"},{itemId:"desc",text:this.sortDescText,cls:"xg-hmenu-sort-desc"});if(i.enableColumnHide!==false){this.colMenu=new Ext.menu.Menu({id:i.id+"-hcols-menu"});this.colMenu.on({scope:this,beforeshow:this.beforeColMenuShow,itemclick:this.handleHdMenuClick});this.hmenu.add("-",{itemId:"columns",hideOnClick:false,text:this.columnsText,menu:this.colMenu,iconCls:"x-cols-icon"})}this.hmenu.on("itemclick",this.handleHdMenuClick,this)}if(i.trackMouseOver){this.mainBody.on({scope:this,mouseover:this.onRowOver,mouseout:this.onRowOut})}if(i.enableDragDrop||i.enableDrag){this.dragZone=new Ext.grid.GridDragZone(i,{ddGroup:i.ddGroup||"GridDD"})}this.updateHeaderSortState()},layout:function(){if(!this.mainBody){return}var m=this.grid;var j=m.getGridEl();var g=j.getSize(true);var c=g.width;if(!m.hideHeaders&&(c<20||g.height<20)){return}if(m.autoHeight){this.scroller.dom.style.overflow="visible";if(Ext.isWebKit){this.scroller.dom.style.position="static"}}else{this.el.setSize(g.width,g.height);var k=this.mainHd.getHeight();var l=g.height-(k);this.scroller.setSize(c,l);if(this.innerHd){this.innerHd.style.width=(c)+"px"}}if(this.forceFit){if(this.lastViewWidth!=c){this.fitColumns(false,false);this.lastViewWidth=c}}else{this.autoExpand();this.syncHeaderScroll()}this.onLayout(c,l)},onLayout:function(d,c){},onColumnWidthUpdated:function(g,e,d){},onAllColumnWidthsUpdated:function(d,c){},onColumnHiddenUpdated:function(d,g,e){},updateColumnText:function(d,c){},afterMove:function(b){},init:function(b){this.grid=b;this.initTemplates();this.initData(b.store,b.colModel);this.initUI(b)},getColumnId:function(b){return this.cm.getColumnId(b)},getOffsetWidth:function(){return(this.cm.getTotalWidth()+this.scrollOffset)+"px"},renderHeaders:function(){var q=this.cm,m=this.templates,o=m.hcell,i=[],l={},k=q.getColumnCount(),n=k-1;for(var p=0;p<k;p++){l.id=q.getColumnId(p);l.value=q.getColumnHeader(p)||"";l.style=this.getColumnStyle(p,true);l.tooltip=this.getColumnTooltip(p);l.css=p===0?"x-grid3-cell-first ":(p==n?"x-grid3-cell-last ":"");if(q.config[p].align=="right"){l.istyle="padding-right:16px"}else{delete l.istyle}i[i.length]=o.apply(l)}return m.header.apply({cells:i.join(""),tstyle:"width:"+this.getTotalWidth()+";"})},getColumnTooltip:function(d){var c=this.cm.getColumnTooltip(d);if(c){if(Ext.QuickTips.isEnabled()){return'ext:qtip="'+c+'"'}else{return'title="'+c+'"'}}return""},beforeUpdate:function(){this.grid.stopEditing(true)},updateHeaders:function(){this.innerHd.firstChild.innerHTML=this.renderHeaders();this.innerHd.firstChild.style.width=this.getOffsetWidth();this.innerHd.firstChild.firstChild.style.width=this.getTotalWidth()},focusRow:function(b){this.focusCell(b,0,false)},focusCell:function(g,e,d){this.syncFocusEl(this.ensureVisible(g,e,d));if(Ext.isGecko){this.focusEl.focus()}else{this.focusEl.focus.defer(1,this.focusEl)}},resolveCell:function(k,n,l){if(typeof k!="number"){k=k.rowIndex}if(!this.ds){return null}if(k<0||k>=this.ds.getCount()){return null}n=(n!==undefined?n:0);var o=this.getRow(k),j=this.cm,m=j.getColumnCount(),i;if(!(l===false&&n===0)){while(n<m&&j.isHidden(n)){n++}i=this.getCell(k,n)}return{row:o,cell:i}},getResolvedXY:function(g){if(!g){return null}var c=this.scroller.dom,h=g.cell,i=g.row;return h?Ext.fly(h).getXY():[this.el.getX(),Ext.fly(i).getY()]},syncFocusEl:function(h,g,i){var e=h;if(!Ext.isArray(e)){h=Math.min(h,Math.max(0,this.getRows().length-1));e=this.getResolvedXY(this.resolveCell(h,g,i))}this.focusEl.setXY(e||this.scroller.getXY())},ensureVisible:function(H,C,D){var c=this.resolveCell(H,C,D);if(!c||!c.row){return}var y=c.row,B=c.cell,v=this.scroller.dom,I=0,E=y,u=this.el.dom;while(E&&E!=u){I+=E.offsetTop;E=E.offsetParent}I-=this.mainHd.dom.offsetHeight;var p=I+y.offsetHeight,G=v.clientHeight,w=u+G;u=parseInt(v.scrollTop,10);if(I<u){v.scrollTop=I}else{if(p>w){v.scrollTop=p-G}}if(D!==false){var x=parseInt(B.offsetLeft,10);var z=x+B.offsetWidth;var A=parseInt(v.scrollLeft,10);var F=A+v.clientWidth;if(x<A){v.scrollLeft=x}else{if(z>F){v.scrollLeft=z-v.clientWidth}}}return this.getResolvedXY(c)},insertRows:function(k,l,o,m){var p=k.getCount()-1;if(!m&&l===0&&o>=p){this.refresh()}else{if(!m){this.fireEvent("beforerowsinserted",this,l,o)}var j=this.renderRows(l,o),n=this.getRow(l);if(n){if(l===0){Ext.fly(this.getRow(0)).removeClass(this.firstRowCls)}Ext.DomHelper.insertHtml("beforeBegin",n,j)}else{var q=this.getRow(p-1);if(q){Ext.fly(q).removeClass(this.lastRowCls)}Ext.DomHelper.insertHtml("beforeEnd",this.mainBody.dom,j)}if(!m){this.fireEvent("rowsinserted",this,l,o);this.processRows(l)}else{if(l===0||l>=p){Ext.fly(this.getRow(l)).addClass(l===0?this.firstRowCls:this.lastRowCls)}}}this.syncFocusEl(l)},deleteRows:function(e,g,d){if(e.getRowCount()<1){this.refresh()}else{this.fireEvent("beforerowsdeleted",this,g,d);this.removeRows(g,d);this.processRows(g);this.fireEvent("rowsdeleted",this,g,d)}},getColumnStyle:function(g,i){var e=!i?(this.cm.config[g].css||""):"";e+="width:"+this.getColumnWidth(g)+";";if(this.cm.isHidden(g)){e+="display:none;"}var h=this.cm.config[g].align;if(h){e+="text-align:"+h+";"}return e},getColumnWidth:function(c){var d=this.cm.getColumnWidth(c);if(typeof d=="number"){return(Ext.isBorderBox?d:(d-this.borderWidth>0?d-this.borderWidth:0))+"px"}return d},getTotalWidth:function(){return this.cm.getTotalWidth()+"px"},fitColumns:function(E,B,A){var t=this.cm,z;var y=t.getTotalWidth(false);var H=this.grid.getGridEl().getWidth(true)-this.scrollOffset;if(H<20){return}var D=H-y;if(D===0){return false}var x=t.getColumnCount(true);var I=x-(typeof A=="number"?1:0);if(I===0){I=1;A=undefined}var i=t.getColumnCount();var v=[];var w=0;var F=0;var u;for(z=0;z<i;z++){if(!t.isHidden(z)&&!t.isFixed(z)&&z!==A){u=t.getColumnWidth(z);v.push(z);w=z;v.push(u);F+=u}}var G=(H-t.getTotalWidth())/F;while(v.length){u=v.pop();z=v.pop();t.setColumnWidth(z,Math.max(this.grid.minColumnWidth,Math.floor(u+u*G)),true)}if((y=t.getTotalWidth(false))>H){var C=I!=x?A:w;t.setColumnWidth(C,Math.max(1,t.getColumnWidth(C)-(y-H)),true)}if(E!==true){this.updateAllColumnWidths()}return true},autoExpand:function(g){var m=this.grid,k=this.cm;if(!this.userResized&&m.autoExpandColumn){var p=k.getTotalWidth(false);var l=this.grid.getGridEl().getWidth(true)-this.scrollOffset;if(p!=l){var n=k.getIndexById(m.autoExpandColumn);var o=k.getColumnWidth(n);var q=Math.min(Math.max(((l-p)+o),m.autoExpandMin),m.autoExpandMax);if(q!=o){k.setColumnWidth(n,q,true);if(g!==true){this.updateColumnWidth(n,q)}}}}},getColumnData:function(){var j=[],h=this.cm,i=h.getColumnCount();for(var k=0;k<i;k++){var g=h.getDataIndex(k);j[k]={name:(typeof g=="undefined"?this.ds.fields.get(k).name:g),renderer:h.getRenderer(k),id:h.getColumnId(k),style:this.getColumnStyle(k)}}return j},renderRows:function(l,q){var p=this.grid,n=p.colModel,s=p.store,g=p.stripeRows;var m=n.getColumnCount();if(s.getCount()<1){return""}var o=this.getColumnData();l=l||0;q=typeof q=="undefined"?s.getCount()-1:q;var r=s.getRange(l,q);return this.doRender(o,r,s,l,m,g)},renderBody:function(){var b=this.renderRows()||"&#160;";return this.templates.body.apply({rows:b})},refreshRow:function(e){var g=this.ds,d;if(typeof e=="number"){d=e;e=g.getAt(d);if(!e){return}}else{d=g.indexOf(e);if(d<0){return}}this.insertRows(g,d,d,true);this.getRow(d).rowIndex=d;this.onRemove(g,e,d+1,true);this.fireEvent("rowupdated",this,d,e)},refresh:function(c){this.fireEvent("beforerefresh",this);this.grid.stopEditing(true);var d=this.renderBody();this.mainBody.update(d).setWidth(this.getTotalWidth());if(c===true){this.updateHeaders();this.updateHeaderSortState()}this.processRows(0,true);this.layout();this.applyEmptyText();this.fireEvent("refresh",this)},applyEmptyText:function(){if(this.emptyText&&!this.hasRows()){this.mainBody.update('<div class="x-grid-empty">'+this.emptyText+"</div>")}},updateHeaderSortState:function(){var d=this.ds.getSortState();if(!d){return}if(!this.sortState||(this.sortState.field!=d.field||this.sortState.direction!=d.direction)){this.grid.fireEvent("sortchange",this.grid,d)}this.sortState=d;var g=this.cm.findColumnIndex(d.field);if(g!=-1){var e=d.direction;this.updateSortIcon(g,e)}},destroy:function(){if(this.colMenu){Ext.menu.MenuMgr.unregister(this.colMenu);this.colMenu.destroy();delete this.colMenu}if(this.hmenu){Ext.menu.MenuMgr.unregister(this.hmenu);this.hmenu.destroy();delete this.hmenu}if(this.grid.enableColumnMove){var g=Ext.dd.DDM.ids["gridHeader"+this.grid.getGridEl().id];if(g){for(var e in g){if(!g[e].config.isTarget&&g[e].dragElId){var d=g[e].dragElId;g[e].unreg();Ext.get(d).remove()}else{if(g[e].config.isTarget){g[e].proxyTop.remove();g[e].proxyBottom.remove();g[e].unreg()}}if(Ext.dd.DDM.locationCache[e]){delete Ext.dd.DDM.locationCache[e]}}delete Ext.dd.DDM.ids["gridHeader"+this.grid.getGridEl().id]}}if(this.dragZone){this.dragZone.unreg()}Ext.fly(this.innerHd).removeAllListeners();Ext.removeNode(this.innerHd);Ext.destroy(this.resizeMarker,this.resizeProxy,this.focusEl,this.mainBody,this.scroller,this.mainHd,this.mainWrap,this.dragZone,this.splitZone,this.columnDrag,this.columnDrop);this.initData(null,null);Ext.EventManager.removeResizeListener(this.onWindowResize,this);this.purgeListeners()},onDenyColumnHide:function(){},render:function(){if(this.autoFill){var b=this.grid.ownerCt;if(b&&b.getLayout()){b.on("afterlayout",function(){this.fitColumns(true,true);this.updateHeaders()},this,{single:true})}else{this.fitColumns(true,true)}}else{if(this.forceFit){this.fitColumns(true,false)}else{if(this.grid.autoExpandColumn){this.autoExpand(true)}}}this.renderUI()},initData:function(c,d){if(this.ds){this.ds.un("load",this.onLoad,this);this.ds.un("datachanged",this.onDataChange,this);this.ds.un("add",this.onAdd,this);this.ds.un("remove",this.onRemove,this);this.ds.un("update",this.onUpdate,this);this.ds.un("clear",this.onClear,this);if(this.ds!==c&&this.ds.autoDestroy){this.ds.destroy()}}if(c){c.on({scope:this,load:this.onLoad,datachanged:this.onDataChange,add:this.onAdd,remove:this.onRemove,update:this.onUpdate,clear:this.onClear})}this.ds=c;if(this.cm){this.cm.un("configchange",this.onColConfigChange,this);this.cm.un("widthchange",this.onColWidthChange,this);this.cm.un("headerchange",this.onHeaderChange,this);this.cm.un("hiddenchange",this.onHiddenChange,this);this.cm.un("columnmoved",this.onColumnMove,this)}if(d){delete this.lastViewWidth;d.on({scope:this,configchange:this.onColConfigChange,widthchange:this.onColWidthChange,headerchange:this.onHeaderChange,hiddenchange:this.onHiddenChange,columnmoved:this.onColumnMove})}this.cm=d},onDataChange:function(){this.refresh();this.updateHeaderSortState();this.syncFocusEl(0)},onClear:function(){this.refresh();this.syncFocusEl(0)},onUpdate:function(c,d){this.refreshRow(d)},onAdd:function(g,e,d){this.insertRows(g,d,d+(e.length-1))},onRemove:function(h,g,e,i){if(i!==true){this.fireEvent("beforerowremoved",this,e,g)}this.removeRow(e);if(i!==true){this.processRows(e);this.applyEmptyText();this.fireEvent("rowremoved",this,e,g)}},onLoad:function(){this.scrollToTop()},onColWidthChange:function(e,d,g){this.updateColumnWidth(d,g)},onHeaderChange:function(e,d,g){this.updateHeaders()},onHiddenChange:function(e,d,g){this.updateColumnHidden(d,g)},onColumnMove:function(g,h,e){this.indexMap=null;var i=this.getScrollState();this.refresh(true);this.restoreScroll(i);this.afterMove(e);this.grid.fireEvent("columnmove",h,e)},onColConfigChange:function(){delete this.lastViewWidth;this.indexMap=null;this.refresh(true)},initUI:function(b){b.on("headerclick",this.onHeaderClick,this)},initEvents:function(){},onHeaderClick:function(c,d){if(this.headersDisabled||!this.cm.isSortable(d)){return}c.stopEditing(true);c.store.sort(this.cm.getDataIndex(d))},onRowOver:function(d,e){var g;if((g=this.findRowIndex(e))!==false){this.addRowClass(g,"x-grid3-row-over")}},onRowOut:function(d,e){var g;if((g=this.findRowIndex(e))!==false&&!d.within(this.getRow(g),true)){this.removeRowClass(g,"x-grid3-row-over")}},handleWheel:function(b){b.stopPropagation()},onRowSelect:function(b){this.addRowClass(b,this.selectedRowClass)},onRowDeselect:function(b){this.removeRowClass(b,this.selectedRowClass)},onCellSelect:function(g,d){var e=this.getCell(g,d);if(e){this.fly(e).addClass("x-grid3-cell-selected")}},onCellDeselect:function(g,d){var e=this.getCell(g,d);if(e){this.fly(e).removeClass("x-grid3-cell-selected")}},onColumnSplitterMoved:function(g,d){this.userResized=true;var e=this.grid.colModel;e.setColumnWidth(g,d,true);if(this.forceFit){this.fitColumns(true,false,g);this.updateAllColumnWidths()}else{this.updateColumnWidth(g,d);this.syncHeaderScroll()}this.grid.fireEvent("columnresize",g,d)},handleHdMenuClick:function(i){var e=this.hdCtxIndex;var g=this.cm,h=this.ds;switch(i.itemId){case"asc":h.sort(g.getDataIndex(e),"ASC");break;case"desc":h.sort(g.getDataIndex(e),"DESC");break;default:e=g.getIndexById(i.itemId.substr(4));if(e!=-1){if(i.checked&&g.getColumnsBy(this.isHideableColumn,this).length<=1){this.onDenyColumnHide();return false}g.setHidden(e,i.checked)}}return true},isHideableColumn:function(b){return !b.hidden&&!b.fixed},beforeColMenuShow:function(){var e=this.cm,g=e.getColumnCount();this.colMenu.removeAll();for(var d=0;d<g;d++){if(e.config[d].fixed!==true&&e.config[d].hideable!==false){this.colMenu.add(new Ext.menu.CheckItem({itemId:"col-"+e.getColumnId(d),text:e.getColumnHeader(d),checked:!e.isHidden(d),hideOnClick:false,disabled:e.config[d].hideable===false}))}}},handleHdDown:function(j,l){if(Ext.fly(l).hasClass("x-grid3-hd-btn")){j.stopEvent();var k=this.findHeaderCell(l);Ext.fly(k).addClass("x-grid3-hd-menu-open");var m=this.getCellIndex(k);this.hdCtxIndex=m;var e=this.hmenu.items,i=this.cm;e.get("asc").setDisabled(!i.isSortable(m));e.get("desc").setDisabled(!i.isSortable(m));this.hmenu.on("hide",function(){Ext.fly(k).removeClass("x-grid3-hd-menu-open")},this,{single:true});this.hmenu.show(l,"tl-bl?")}},handleHdOver:function(h,g){var i=this.findHeaderCell(g);if(i&&!this.headersDisabled){this.activeHd=i;this.activeHdIndex=this.getCellIndex(i);var e=this.fly(i);this.activeHdRegion=e.getRegion();if(!this.cm.isMenuDisabled(this.activeHdIndex)){e.addClass("x-grid3-hd-over");this.activeHdBtn=e.child(".x-grid3-hd-btn");if(this.activeHdBtn){this.activeHdBtn.dom.style.height=(i.firstChild.offsetHeight-1)+"px"}}}},handleHdMove:function(j,l){if(this.activeHd&&!this.headersDisabled){var e=this.splitHandleWidth||5;var k=this.activeHdRegion;var i=j.getPageX();var m=this.activeHd.style;if(i-k.left<=e&&this.cm.isResizable(this.activeHdIndex-1)){m.cursor=Ext.isAir?"move":Ext.isWebKit?"e-resize":"col-resize"}else{if(k.right-i<=(!this.activeHdBtn?e:2)&&this.cm.isResizable(this.activeHdIndex)){m.cursor=Ext.isAir?"move":Ext.isWebKit?"w-resize":"col-resize"}else{m.cursor=""}}}},handleHdOut:function(g,e){var d=this.findHeaderCell(e);if(d&&(!Ext.isIE||!g.within(d,true))){this.activeHd=null;this.fly(d).removeClass("x-grid3-hd-over");d.style.cursor=""}},hasRows:function(){var b=this.mainBody.dom.firstChild;return b&&b.nodeType==1&&b.className!="x-grid-empty"},bind:function(d,c){this.initData(d,c)}});Ext.grid.GridView.SplitDragZone=function(d,c){this.grid=d;this.view=d.getView();this.marker=this.view.resizeMarker;this.proxy=this.view.resizeProxy;Ext.grid.GridView.SplitDragZone.superclass.constructor.call(this,c,"gridSplitters"+this.grid.getGridEl().id,{dragElId:Ext.id(this.proxy.dom),resizeFrame:false});this.scroll=false;this.hw=this.view.splitHandleWidth||5};Ext.extend(Ext.grid.GridView.SplitDragZone,Ext.dd.DDProxy,{b4StartDrag:function(h,i){this.view.headersDisabled=true;var j=this.view.mainWrap.getHeight();this.marker.setHeight(j);this.marker.show();this.marker.alignTo(this.view.getHeaderCell(this.cellIndex),"tl-tl",[-2,0]);this.proxy.setHeight(j);var g=this.cm.getColumnWidth(this.cellIndex);var k=Math.max(g-this.grid.minColumnWidth,0);this.resetConstraints();this.setXConstraint(k,1000);this.setYConstraint(0,0);this.minX=h-k;this.maxX=h+1000;this.startPos=h;Ext.dd.DDProxy.prototype.b4StartDrag.call(this,h,i)},handleMouseDown:function(u){var o=this.view.findHeaderCell(u.getTarget());if(o){var e=this.view.fly(o).getXY(),r=e[0],s=e[1];var n=u.getXY(),t=n[0];var p=o.offsetWidth,q=false;if((t-r)<=this.hw){q=-1}else{if((r+p)-t<=this.hw){q=0}}if(q!==false){this.cm=this.grid.colModel;var m=this.view.getCellIndex(o);if(q==-1){if(m+q<0){return}while(this.cm.isHidden(m+q)){--q;if(m+q<0){return}}}this.cellIndex=m+q;this.split=o.dom;if(this.cm.isResizable(this.cellIndex)&&!this.cm.isFixed(this.cellIndex)){Ext.grid.GridView.SplitDragZone.superclass.handleMouseDown.apply(this,arguments)}}else{if(this.view.columnDrag){this.view.columnDrag.callHandleMouseDown(u)}}}},endDrag:function(h){this.marker.hide();var g=this.view;var e=Math.max(this.minX,h.getPageX());var i=e-this.startPos;g.onColumnSplitterMoved(this.cellIndex,this.cm.getColumnWidth(this.cellIndex)+i);setTimeout(function(){g.headersDisabled=false},50)},autoOffset:function(){this.setDelta(0,0)}});Ext.grid.HeaderDragZone=function(e,g,d){this.grid=e;this.view=e.getView();this.ddGroup="gridHeader"+this.grid.getGridEl().id;Ext.grid.HeaderDragZone.superclass.constructor.call(this,g);if(d){this.setHandleElId(Ext.id(g));this.setOuterHandleElId(Ext.id(d))}this.scroll=false};Ext.extend(Ext.grid.HeaderDragZone,Ext.dd.DragZone,{maxDragWidth:120,getDragData:function(g){var e=Ext.lib.Event.getTarget(g);var d=this.view.findHeaderCell(e);if(d){return{ddel:d.firstChild,header:d}}return false},onInitDrag:function(d){this.view.headersDisabled=true;var c=this.dragData.ddel.cloneNode(true);c.id=Ext.id();c.style.width=Math.min(this.dragData.header.offsetWidth,this.maxDragWidth)+"px";this.proxy.update(c);return true},afterValidDrop:function(){var b=this.view;setTimeout(function(){b.headersDisabled=false},50)},afterInvalidDrop:function(){var b=this.view;setTimeout(function(){b.headersDisabled=false},50)}});Ext.grid.HeaderDropZone=function(e,g,d){this.grid=e;this.view=e.getView();this.proxyTop=Ext.DomHelper.append(document.body,{cls:"col-move-top",html:"&#160;"},true);this.proxyBottom=Ext.DomHelper.append(document.body,{cls:"col-move-bottom",html:"&#160;"},true);this.proxyTop.hide=this.proxyBottom.hide=function(){this.setLeftTop(-100,-100);this.setStyle("visibility","hidden")};this.ddGroup="gridHeader"+this.grid.getGridEl().id;Ext.grid.HeaderDropZone.superclass.constructor.call(this,e.getGridEl().dom)};Ext.extend(Ext.grid.HeaderDropZone,Ext.dd.DropZone,{proxyOffsets:[-4,-9],fly:Ext.Element.fly,getTargetFromEvent:function(g){var e=Ext.lib.Event.getTarget(g);var d=this.view.findCellIndex(e);if(d!==false){return this.view.getHeaderCell(d)}},nextVisible:function(g){var d=this.view,e=this.grid.colModel;g=g.nextSibling;while(g){if(!e.isHidden(d.getCellIndex(g))){return g}g=g.nextSibling}return null},prevVisible:function(g){var d=this.view,e=this.grid.colModel;g=g.prevSibling;while(g){if(!e.isHidden(d.getCellIndex(g))){return g}g=g.prevSibling}return null},positionIndicator:function(p,l,m){var h=Ext.lib.Event.getPageX(m);var o=Ext.lib.Dom.getRegion(l.firstChild);var q,n,e=o.top+this.proxyOffsets[1];if((o.right-h)<=(o.right-o.left)/2){q=o.right+this.view.borderWidth;n="after"}else{q=o.left;n="before"}if(this.grid.colModel.isFixed(this.view.getCellIndex(l))){return false}q+=this.proxyOffsets[0];this.proxyTop.setLeftTop(q,e);this.proxyTop.show();if(!this.bottomOffset){this.bottomOffset=this.view.mainHd.getHeight()}this.proxyBottom.setLeftTop(q,e+this.proxyTop.dom.offsetHeight+this.bottomOffset);this.proxyBottom.show();return n},onNodeEnter:function(h,g,i,e){if(e.header!=h){this.positionIndicator(e.header,h,i)}},onNodeOver:function(i,e,j,k){var h=false;if(k.header!=i){h=this.positionIndicator(k.header,i,j)}if(!h){this.proxyTop.hide();this.proxyBottom.hide()}return h?this.dropAllowed:this.dropNotAllowed},onNodeOut:function(h,g,i,e){this.proxyTop.hide();this.proxyBottom.hide()},onNodeDrop:function(v,h,s,u){var t=u.header;if(t!=v){var p=this.grid.colModel;var q=Ext.lib.Event.getPageX(s);var w=Ext.lib.Dom.getRegion(v.firstChild);var e=(w.right-q)<=((w.right-w.left)/2)?"after":"before";var r=this.view.getCellIndex(t);var n=this.view.getCellIndex(v);if(e=="after"){n++}if(r<n){n--}p.moveColumn(r,n);this.grid.fireEvent("columnmove",r,n);return true}return false}});Ext.grid.GridView.ColumnDragZone=function(d,c){Ext.grid.GridView.ColumnDragZone.superclass.constructor.call(this,d,c,null);this.proxy.el.addClass("x-grid3-col-dd")};Ext.extend(Ext.grid.GridView.ColumnDragZone,Ext.grid.HeaderDragZone,{handleMouseDown:function(b){},callHandleMouseDown:function(b){Ext.grid.GridView.ColumnDragZone.superclass.handleMouseDown.call(this,b)}});Ext.grid.SplitDragZone=function(e,g,d){this.grid=e;this.view=e.getView();this.proxy=this.view.resizeProxy;Ext.grid.SplitDragZone.superclass.constructor.call(this,g,"gridSplitters"+this.grid.getGridEl().id,{dragElId:Ext.id(this.proxy.dom),resizeFrame:false});this.setHandleElId(Ext.id(g));this.setOuterHandleElId(Ext.id(d));this.scroll=false};Ext.extend(Ext.grid.SplitDragZone,Ext.dd.DDProxy,{fly:Ext.Element.fly,b4StartDrag:function(g,h){this.view.headersDisabled=true;this.proxy.setHeight(this.view.mainWrap.getHeight());var e=this.cm.getColumnWidth(this.cellIndex);var i=Math.max(e-this.grid.minColumnWidth,0);this.resetConstraints();this.setXConstraint(i,1000);this.setYConstraint(0,0);this.minX=g-i;this.maxX=g+1000;this.startPos=g;Ext.dd.DDProxy.prototype.b4StartDrag.call(this,g,h)},handleMouseDown:function(g){var d=Ext.EventObject.setEvent(g);var e=this.fly(d.getTarget());if(e.hasClass("x-grid-split")){this.cellIndex=this.view.getCellIndex(e.dom);this.split=e.dom;this.cm=this.grid.colModel;if(this.cm.isResizable(this.cellIndex)&&!this.cm.isFixed(this.cellIndex)){Ext.grid.SplitDragZone.superclass.handleMouseDown.apply(this,arguments)}}},endDrag:function(g){this.view.headersDisabled=false;var e=Math.max(this.minX,Ext.lib.Event.getPageX(g));var d=e-this.startPos;this.view.onColumnSplitterMoved(this.cellIndex,this.cm.getColumnWidth(this.cellIndex)+d)},autoOffset:function(){this.setDelta(0,0)}});Ext.grid.GridDragZone=function(c,d){this.view=c.getView();Ext.grid.GridDragZone.superclass.constructor.call(this,this.view.mainBody.dom,d);this.scroll=false;this.grid=c;this.ddel=document.createElement("div");this.ddel.className="x-grid-dd-wrap"};Ext.extend(Ext.grid.GridDragZone,Ext.dd.DragZone,{ddGroup:"GridDD",getDragData:function(e){var g=Ext.lib.Event.getTarget(e);var h=this.view.findRowIndex(g);if(h!==false){var i=this.grid.selModel;if(!i.isSelected(h)||e.hasModifier()){i.handleMouseDown(this.grid,h,e)}return{grid:this.grid,ddel:this.ddel,rowIndex:h,selections:i.getSelections()}}return false},onInitDrag:function(c){var d=this.dragData;this.ddel.innerHTML=this.grid.getDragDropText();this.proxy.update(this.ddel)},afterRepair:function(){this.dragging=false},getRepairXY:function(c,d){return false},onEndDrag:function(d,c){},onValidDrop:function(e,d,g){this.hideProxy()},beforeInvalidDrop:function(d,c){}});Ext.grid.ColumnModel=function(b){if(b.columns){Ext.apply(this,b);this.setConfig(b.columns,true)}else{this.setConfig(b,true)}this.addEvents("widthchange","headerchange","hiddenchange","columnmoved","configchange");Ext.grid.ColumnModel.superclass.constructor.call(this)};Ext.extend(Ext.grid.ColumnModel,Ext.util.Observable,{defaultWidth:100,defaultSortable:false,getColumnId:function(b){return this.config[b].id},getColumnAt:function(b){return this.config[b]},setConfig:function(l,m){var k,j,i;if(!m){delete this.totalWidth;for(k=0,i=this.config.length;k<i;k++){j=this.config[k];if(j.editor){j.editor.destroy()}}}this.defaults=Ext.apply({width:this.defaultWidth,sortable:this.defaultSortable},this.defaults);this.config=l;this.lookup={};for(k=0,i=l.length;k<i;k++){j=Ext.applyIf(l[k],this.defaults);if(!j.isColumn){var c=Ext.grid.Column.types[j.xtype||"gridcolumn"];j=new c(j);l[k]=j}this.lookup[j.id]=j}if(!m){this.fireEvent("configchange",this)}},getColumnById:function(b){return this.lookup[b]},getIndexById:function(g){for(var d=0,e=this.config.length;d<e;d++){if(this.config[d].id==g){return d}}return -1},moveColumn:function(g,e){var c=this.config[g];this.config.splice(g,1);this.config.splice(e,0,c);this.dataMap=null;this.fireEvent("columnmoved",this,g,e)},getColumnCount:function(i){if(i===true){var h=0;for(var c=0,g=this.config.length;c<g;c++){if(!this.isHidden(c)){h++}}return h}return this.config.length},getColumnsBy:function(l,m){var k=[];for(var c=0,i=this.config.length;c<i;c++){var j=this.config[c];if(l.call(m||this,j,c)===true){k[k.length]=j}}return k},isSortable:function(b){return this.config[b].sortable},isMenuDisabled:function(b){return !!this.config[b].menuDisabled},getRenderer:function(b){if(!this.config[b].renderer){return Ext.grid.ColumnModel.defaultRenderer}return this.config[b].renderer},setRenderer:function(d,c){this.config[d].renderer=c},getColumnWidth:function(b){return this.config[b].width},setColumnWidth:function(d,g,e){this.config[d].width=g;this.totalWidth=null;if(!e){this.fireEvent("widthchange",this,d,g)}},getTotalWidth:function(d){if(!this.totalWidth){this.totalWidth=0;for(var g=0,e=this.config.length;g<e;g++){if(d||!this.isHidden(g)){this.totalWidth+=this.getColumnWidth(g)}}}return this.totalWidth},getColumnHeader:function(b){return this.config[b].header},setColumnHeader:function(d,c){this.config[d].header=c;this.fireEvent("headerchange",this,d,c)},getColumnTooltip:function(b){return this.config[b].tooltip},setColumnTooltip:function(d,c){this.config[d].tooltip=c},getDataIndex:function(b){return this.config[b].dataIndex},setDataIndex:function(d,c){this.config[d].dataIndex=c},findColumnIndex:function(i){var h=this.config;for(var c=0,g=h.length;c<g;c++){if(h[c].dataIndex==i){return c}}return -1},isCellEditable:function(d,c){return(this.config[d].editable||(typeof this.config[d].editable=="undefined"&&this.config[d].editor))?true:false},getCellEditor:function(d,c){return this.config[d].getCellEditor(c)},setEditable:function(d,c){this.config[d].editable=c},isHidden:function(b){return this.config[b].hidden},isFixed:function(b){return this.config[b].fixed},isResizable:function(b){return b>=0&&this.config[b].resizable!==false&&this.config[b].fixed!==true},setHidden:function(e,c){var g=this.config[e];if(g.hidden!==c){g.hidden=c;this.totalWidth=null;this.fireEvent("hiddenchange",this,e,c)}},setEditor:function(d,c){Ext.destroy(this.config[d].editor);this.config[d].editor=c},destroy:function(){for(var c=0,g=this.config,e=g.length;c<e;c++){Ext.destroy(g[c].editor)}this.purgeListeners()}});Ext.grid.ColumnModel.defaultRenderer=function(b){if(typeof b=="string"&&b.length<1){return"&#160;"}return b};Ext.grid.AbstractSelectionModel=function(){this.locked=false;Ext.grid.AbstractSelectionModel.superclass.constructor.call(this)};Ext.extend(Ext.grid.AbstractSelectionModel,Ext.util.Observable,{init:function(b){this.grid=b;this.initEvents()},lock:function(){this.locked=true},unlock:function(){this.locked=false},isLocked:function(){return this.locked},destroy:function(){this.purgeListeners()}});Ext.grid.RowSelectionModel=function(b){Ext.apply(this,b);this.selections=new Ext.util.MixedCollection(false,function(a){return a.id});this.last=false;this.lastActive=false;this.addEvents("selectionchange","beforerowselect","rowselect","rowdeselect");Ext.grid.RowSelectionModel.superclass.constructor.call(this)};Ext.extend(Ext.grid.RowSelectionModel,Ext.grid.AbstractSelectionModel,{singleSelect:false,initEvents:function(){if(!this.grid.enableDragDrop&&!this.grid.enableDrag){this.grid.on("rowmousedown",this.handleMouseDown,this)}else{this.grid.on("rowclick",function(a,e,g){if(g.button===0&&!g.shiftKey&&!g.ctrlKey){this.selectRow(e,false);a.view.focusRow(e)}},this)}this.rowNav=new Ext.KeyNav(this.grid.getGridEl(),{up:function(d){if(!d.shiftKey||this.singleSelect){this.selectPrevious(false)}else{if(this.last!==false&&this.lastActive!==false){var a=this.last;this.selectRange(this.last,this.lastActive-1);this.grid.getView().focusRow(this.lastActive);if(a!==false){this.last=a}}else{this.selectFirstRow()}}},down:function(d){if(!d.shiftKey||this.singleSelect){this.selectNext(false)}else{if(this.last!==false&&this.lastActive!==false){var a=this.last;this.selectRange(this.last,this.lastActive+1);this.grid.getView().focusRow(this.lastActive);if(a!==false){this.last=a}}else{this.selectFirstRow()}}},scope:this});var b=this.grid.view;b.on("refresh",this.onRefresh,this);b.on("rowupdated",this.onRowUpdated,this);b.on("rowremoved",this.onRemove,this)},onRefresh:function(){var j=this.grid.store,h;var l=this.getSelections();this.clearSelections(true);for(var m=0,i=l.length;m<i;m++){var k=l[m];if((h=j.indexOfId(k.id))!=-1){this.selectRow(h,true)}}if(l.length!=this.selections.getCount()){this.fireEvent("selectionchange",this)}},onRemove:function(e,d,g){if(this.selections.remove(g)!==false){this.fireEvent("selectionchange",this)}},onRowUpdated:function(e,d,g){if(this.isSelected(g)){e.onRowSelect(d)}},selectRecords:function(g,i){if(!i){this.clearSelections()}var j=this.grid.store;for(var k=0,h=g.length;k<h;k++){this.selectRow(j.indexOf(g[k]),true)}},getCount:function(){return this.selections.length},selectFirstRow:function(){this.selectRow(0)},selectLastRow:function(b){this.selectRow(this.grid.store.getCount()-1,b)},selectNext:function(b){if(this.hasNext()){this.selectRow(this.last+1,b);this.grid.getView().focusRow(this.last);return true}return false},selectPrevious:function(b){if(this.hasPrevious()){this.selectRow(this.last-1,b);this.grid.getView().focusRow(this.last);return true}return false},hasNext:function(){return this.last!==false&&(this.last+1)<this.grid.store.getCount()},hasPrevious:function(){return !!this.last},getSelections:function(){return[].concat(this.selections.items)},getSelected:function(){return this.selections.itemAt(0)},each:function(i,j){var k=this.getSelections();for(var g=0,h=k.length;g<h;g++){if(i.call(j||this,k[g],g)===false){return false}}return true},clearSelections:function(e){if(this.isLocked()){return}if(e!==true){var g=this.grid.store;var d=this.selections;d.each(function(a){this.deselectRow(g.indexOfId(a.id))},this);d.clear()}else{this.selections.clear()}this.last=false},selectAll:function(){if(this.isLocked()){return}this.selections.clear();for(var c=0,d=this.grid.store.getCount();c<d;c++){this.selectRow(c,true)}},hasSelection:function(){return this.selections.length>0},isSelected:function(d){var c=typeof d=="number"?this.grid.store.getAt(d):d;return(c&&this.selections.key(c.id)?true:false)},isIdSelected:function(b){return(this.selections.key(b)?true:false)},handleMouseDown:function(l,j,k){if(k.button!==0||this.isLocked()){return}var g=this.grid.getView();if(k.shiftKey&&!this.singleSelect&&this.last!==false){var m=this.last;this.selectRange(m,j,k.ctrlKey);this.last=m;g.focusRow(j)}else{var e=this.isSelected(j);if(k.ctrlKey&&e){this.deselectRow(j)}else{if(!e||this.getCount()>1){this.selectRow(j,k.ctrlKey||k.shiftKey);g.focusRow(j)}}}},selectRows:function(i,h){if(!h){this.clearSelections()}for(var e=0,g=i.length;e<g;e++){this.selectRow(i[e],true)}},selectRange:function(e,g,h){var i;if(this.isLocked()){return}if(!h){this.clearSelections()}if(e<=g){for(i=e;i<=g;i++){this.selectRow(i,true)}}else{for(i=e;i>=g;i--){this.selectRow(i,true)}}},deselectRange:function(i,e,g){if(this.isLocked()){return}for(var h=i;h<=e;h++){this.deselectRow(h,g)}},selectRow:function(e,h,g){if(this.isLocked()||(e<0||e>=this.grid.store.getCount())||(h&&this.isSelected(e))){return}var i=this.grid.store.getAt(e);if(i&&this.fireEvent("beforerowselect",this,e,h,i)!==false){if(!h||this.singleSelect){this.clearSelections()}this.selections.add(i);this.last=this.lastActive=e;if(!g){this.grid.getView().onRowSelect(e)}this.fireEvent("rowselect",this,e,i);this.fireEvent("selectionchange",this)}},deselectRow:function(d,e){if(this.isLocked()){return}if(this.last==d){this.last=false}if(this.lastActive==d){this.lastActive=false}var g=this.grid.store.getAt(d);if(g){this.selections.remove(g);if(!e){this.grid.getView().onRowDeselect(d)}this.fireEvent("rowdeselect",this,d,g);this.fireEvent("selectionchange",this)}},restoreLast:function(){if(this._last){this.last=this._last}},acceptsNav:function(g,d,e){return !e.isHidden(d)&&e.isCellEditable(d,g)},onEditorKey:function(l,m){var o=m.getKey(),k,n=this.grid,e=n.activeEditor;var g=m.shiftKey;if(o==m.TAB){m.stopEvent();e.completeEdit();if(g){k=n.walkCells(e.row,e.col-1,-1,this.acceptsNav,this)}else{k=n.walkCells(e.row,e.col+1,1,this.acceptsNav,this)}}else{if(o==m.ENTER){m.stopEvent();e.completeEdit();if(this.moveEditorOnEnter!==false){if(g){k=n.walkCells(e.row-1,e.col,-1,this.acceptsNav,this)}else{k=n.walkCells(e.row+1,e.col,1,this.acceptsNav,this)}}}else{if(o==m.ESC){e.cancelEdit()}}}if(k){n.startEditing(k[0],k[1])}},destroy:function(){if(this.rowNav){this.rowNav.disable();this.rowNav=null}Ext.grid.RowSelectionModel.superclass.destroy.call(this)}});Ext.grid.Column=function(b){Ext.apply(this,b);if(typeof this.renderer=="string"){this.renderer=Ext.util.Format[this.renderer]}else{if(Ext.isObject(this.renderer)){this.scope=this.renderer.scope;this.renderer=this.renderer.fn}}this.renderer=this.renderer.createDelegate(this.scope||b);if(this.id===undefined){this.id=++Ext.grid.Column.AUTO_ID}if(this.editor){this.editor=Ext.create(this.editor,"textfield")}};Ext.grid.Column.AUTO_ID=0;Ext.grid.Column.prototype={isColumn:true,renderer:function(b){if(typeof b=="string"&&b.length<1){return"&#160;"}return b},getEditor:function(b){return this.editable!==false?this.editor:null},getCellEditor:function(c){var d=this.getEditor(c);if(d){if(!d.startEdit){if(!d.gridEditor){d.gridEditor=new Ext.grid.GridEditor(d)}return d.gridEditor}else{if(d.startEdit){return d}}}return null}};Ext.grid.BooleanColumn=Ext.extend(Ext.grid.Column,{trueText:"true",falseText:"false",undefinedText:"&#160;",constructor:function(g){Ext.grid.BooleanColumn.superclass.constructor.call(this,g);var i=this.trueText,h=this.falseText,e=this.undefinedText;this.renderer=function(a){if(a===undefined){return e}if(!a||a==="false"){return h}return i}}});Ext.grid.NumberColumn=Ext.extend(Ext.grid.Column,{format:"0,000.00",constructor:function(b){Ext.grid.NumberColumn.superclass.constructor.call(this,b);this.renderer=Ext.util.Format.numberRenderer(this.format)}});Ext.grid.DateColumn=Ext.extend(Ext.grid.Column,{format:"m/d/Y",constructor:function(b){Ext.grid.DateColumn.superclass.constructor.call(this,b);this.renderer=Ext.util.Format.dateRenderer(this.format)}});Ext.grid.TemplateColumn=Ext.extend(Ext.grid.Column,{constructor:function(d){Ext.grid.TemplateColumn.superclass.constructor.call(this,d);var c=typeof Ext.isObject(this.tpl)?this.tpl:new Ext.XTemplate(this.tpl);this.renderer=function(b,a,g){return c.apply(g.data)};this.tpl=c}});Ext.grid.Column.types={gridcolumn:Ext.grid.Column,booleancolumn:Ext.grid.BooleanColumn,numbercolumn:Ext.grid.NumberColumn,datecolumn:Ext.grid.DateColumn,templatecolumn:Ext.grid.TemplateColumn};Ext.grid.RowNumberer=function(b){Ext.apply(this,b);if(this.rowspan){this.renderer=this.renderer.createDelegate(this)}};Ext.grid.RowNumberer.prototype={header:"",width:23,sortable:false,fixed:true,menuDisabled:true,dataIndex:"",id:"numberer",rowspan:undefined,renderer:function(e,i,g,h){if(this.rowspan){i.cellAttr='rowspan="'+this.rowspan+'"'}return h+1}};Ext.grid.CheckboxSelectionModel=Ext.extend(Ext.grid.RowSelectionModel,{header:'<div class="x-grid3-hd-checker">&#160;</div>',width:20,sortable:false,menuDisabled:true,fixed:true,dataIndex:"",id:"checker",constructor:function(){Ext.grid.CheckboxSelectionModel.superclass.constructor.apply(this,arguments);if(this.checkOnly){this.handleMouseDown=Ext.emptyFn}},initEvents:function(){Ext.grid.CheckboxSelectionModel.superclass.initEvents.call(this);this.grid.on("render",function(){var b=this.grid.getView();b.mainBody.on("mousedown",this.onMouseDown,this);Ext.fly(b.innerHd).on("mousedown",this.onHdMouseDown,this)},this)},onMouseDown:function(i,e){if(i.button===0&&e.className=="x-grid3-row-checker"){i.stopEvent();var h=i.getTarget(".x-grid3-row");if(h){var g=h.rowIndex;if(this.isSelected(g)){this.deselectRow(g)}else{this.selectRow(g,true)}}}},onHdMouseDown:function(i,g){if(g.className=="x-grid3-hd-checker"){i.stopEvent();var e=Ext.fly(g.parentNode);var h=e.hasClass("x-grid3-hd-checker-on");if(h){e.removeClass("x-grid3-hd-checker-on");this.clearSelections()}else{e.addClass("x-grid3-hd-checker-on");this.selectAll()}}},renderer:function(d,g,e){return'<div class="x-grid3-row-checker">&#160;</div>'}});Ext.grid.CellSelectionModel=function(b){Ext.apply(this,b);this.selection=null;this.addEvents("beforecellselect","cellselect","selectionchange");Ext.grid.CellSelectionModel.superclass.constructor.call(this)};Ext.extend(Ext.grid.CellSelectionModel,Ext.grid.AbstractSelectionModel,{initEvents:function(){this.grid.on("cellmousedown",this.handleMouseDown,this);this.grid.getGridEl().on(Ext.EventManager.useKeydown?"keydown":"keypress",this.handleKeyDown,this);var b=this.grid.view;b.on("refresh",this.onViewChange,this);b.on("rowupdated",this.onRowUpdated,this);b.on("beforerowremoved",this.clearSelections,this);b.on("beforerowsinserted",this.clearSelections,this);if(this.grid.isEditor){this.grid.on("beforeedit",this.beforeEdit,this)}},beforeEdit:function(b){this.select(b.row,b.column,false,true,b.record)},onRowUpdated:function(e,d,g){if(this.selection&&this.selection.record==g){e.onCellSelect(d,this.selection.cell[1])}},onViewChange:function(){this.clearSelections(true)},getSelectedCell:function(){return this.selection?this.selection.cell:null},clearSelections:function(c){var d=this.selection;if(d){if(c!==true){this.grid.view.onCellDeselect(d.cell[0],d.cell[1])}this.selection=null;this.fireEvent("selectionchange",this,null)}},hasSelection:function(){return this.selection?true:false},handleMouseDown:function(e,h,g,i){if(i.button!==0||this.isLocked()){return}this.select(h,g)},select:function(j,m,h,k,l){if(this.fireEvent("beforecellselect",this,j,m)!==false){this.clearSelections();l=l||this.grid.store.getAt(j);this.selection={record:l,cell:[j,m]};if(!h){var i=this.grid.getView();i.onCellSelect(j,m);if(k!==true){i.focusCell(j,m)}}this.fireEvent("cellselect",this,j,m);this.fireEvent("selectionchange",this,this.selection)}},isSelectable:function(g,d,e){return !e.isHidden(d)},handleKeyDown:function(p){if(!p.isNavKeyPress()){return}var q=this.grid,c=this.selection;if(!c){p.stopEvent();var e=q.walkCells(0,0,1,this.isSelectable,this);if(e){this.select(e[0],e[1])}return}var t=this;var g=function(a,d,b){return q.walkCells(a,d,b,t.isSelectable,t)};var s=p.getKey(),u=c.cell[0],k=c.cell[1];var r;switch(s){case p.TAB:if(p.shiftKey){r=g(u,k-1,-1)}else{r=g(u,k+1,1)}break;case p.DOWN:r=g(u+1,k,1);break;case p.UP:r=g(u-1,k,-1);break;case p.RIGHT:r=g(u,k+1,1);break;case p.LEFT:r=g(u,k-1,-1);break;case p.ENTER:if(q.isEditor&&!q.editing){q.startEditing(u,k);p.stopEvent();return}break}if(r){this.select(r[0],r[1]);p.stopEvent()}},acceptsNav:function(g,d,e){return !e.isHidden(d)&&e.isCellEditable(d,g)},onEditorKey:function(k,l){var e=l.getKey(),j,m=this.grid,g=m.activeEditor;if(e==l.TAB){if(l.shiftKey){j=m.walkCells(g.row,g.col-1,-1,this.acceptsNav,this)}else{j=m.walkCells(g.row,g.col+1,1,this.acceptsNav,this)}l.stopEvent()}else{if(e==l.ENTER){g.completeEdit();l.stopEvent()}else{if(e==l.ESC){l.stopEvent();g.cancelEdit()}}}if(j){m.startEditing(j[0],j[1])}}});Ext.grid.EditorGridPanel=Ext.extend(Ext.grid.GridPanel,{clicksToEdit:2,forceValidation:false,isEditor:true,detectEdit:false,autoEncode:false,trackMouseOver:false,initComponent:function(){Ext.grid.EditorGridPanel.superclass.initComponent.call(this);if(!this.selModel){this.selModel=new Ext.grid.CellSelectionModel()}this.activeEditor=null;this.addEvents("beforeedit","afteredit","validateedit")},initEvents:function(){Ext.grid.EditorGridPanel.superclass.initEvents.call(this);this.on("bodyscroll",this.stopEditing,this,[true]);this.on("columnresize",this.stopEditing,this,[true]);if(this.clicksToEdit==1){this.on("cellclick",this.onCellDblClick,this)}else{if(this.clicksToEdit=="auto"&&this.view.mainBody){this.view.mainBody.on("mousedown",this.onAutoEditClick,this)}this.on("celldblclick",this.onCellDblClick,this)}},onCellDblClick:function(d,g,e){this.startEditing(g,e)},onAutoEditClick:function(k,e){if(k.button!==0){return}var i=this.view.findRowIndex(e);var h=this.view.findCellIndex(e);if(i!==false&&h!==false){this.stopEditing();if(this.selModel.getSelectedCell){var j=this.selModel.getSelectedCell();if(j&&j[0]===i&&j[1]===h){this.startEditing(i,h)}}else{if(this.selModel.isSelected(i)){this.startEditing(i,h)}}}},onEditComplete:function(e,l,i){this.editing=false;this.activeEditor=null;e.un("specialkey",this.selModel.onEditorKey,this.selModel);var m=e.record;var j=this.colModel.getDataIndex(e.col);l=this.postEditValue(l,i,m,j);if(this.forceValidation===true||String(l)!==String(i)){var k={grid:this,record:m,field:j,originalValue:i,value:l,row:e.row,column:e.col,cancel:false};if(this.fireEvent("validateedit",k)!==false&&!k.cancel&&String(l)!==String(i)){m.set(j,k.value);delete k.cancel;this.fireEvent("afteredit",k)}}this.view.focusCell(e.row,e.col)},startEditing:function(j,e){this.stopEditing();if(this.colModel.isCellEditable(e,j)){this.view.ensureVisible(j,e,true);var m=this.store.getAt(j);var k=this.colModel.getDataIndex(e);var l={grid:this,record:m,field:k,value:m.data[k],row:j,column:e,cancel:false};if(this.fireEvent("beforeedit",l)!==false&&!l.cancel){this.editing=true;var i=this.colModel.getCellEditor(e,j);if(!i){return}if(!i.rendered){i.render(this.view.getEditorParent(i))}(function(){i.row=j;i.col=e;i.record=m;i.on("complete",this.onEditComplete,this,{single:true});i.on("specialkey",this.selModel.onEditorKey,this.selModel);this.activeEditor=i;var a=this.preEditValue(m,k);i.startEdit(this.view.getCell(j,e).firstChild,a===undefined?"":a)}).defer(50,this)}}},preEditValue:function(e,g){var d=e.data[g];return this.autoEncode&&typeof d=="string"?Ext.util.Format.htmlDecode(d):d},postEditValue:function(i,g,e,h){return this.autoEncode&&typeof i=="string"?Ext.util.Format.htmlEncode(i):i},stopEditing:function(b){if(this.activeEditor){this.activeEditor[b===true?"cancelEdit":"completeEdit"]()}this.activeEditor=null}});Ext.reg("editorgrid",Ext.grid.EditorGridPanel);Ext.grid.GridEditor=function(c,d){Ext.grid.GridEditor.superclass.constructor.call(this,c,d);c.monitorTab=false};Ext.extend(Ext.grid.GridEditor,Ext.Editor,{alignment:"tl-tl",autoSize:"width",hideEl:false,cls:"x-small-editor x-grid-editor",shim:false,shadow:false});Ext.grid.PropertyRecord=Ext.data.Record.create([{name:"name",type:"string"},"value"]);Ext.grid.PropertyStore=function(d,c){this.grid=d;this.store=new Ext.data.Store({recordType:Ext.grid.PropertyRecord});this.store.on("update",this.onUpdate,this);if(c){this.setSource(c)}Ext.grid.PropertyStore.superclass.constructor.call(this)};Ext.extend(Ext.grid.PropertyStore,Ext.util.Observable,{setSource:function(g){this.source=g;this.store.removeAll();var d=[];for(var e in g){if(this.isEditableValue(g[e])){d.push(new Ext.grid.PropertyRecord({name:e,value:g[e]},e))}}this.store.loadRecords({records:d},{},true)},onUpdate:function(i,h,j){if(j==Ext.data.Record.EDIT){var g=h.data.value;var k=h.modified.value;if(this.grid.fireEvent("beforepropertychange",this.source,h.id,g,k)!==false){this.source[h.id]=g;h.commit();this.grid.fireEvent("propertychange",this.source,h.id,g,k)}else{h.reject()}}},getProperty:function(b){return this.store.getAt(b)},isEditableValue:function(b){if(Ext.isDate(b)){return true}return !(Ext.isObject(b)||Ext.isFunction(b))},setValue:function(c,d){this.source[c]=d;this.store.getById(c).set("value",d)},getSource:function(){return this.source}});Ext.grid.PropertyColumnModel=function(k,g){var j=Ext.grid,i=Ext.form;this.grid=k;j.PropertyColumnModel.superclass.constructor.call(this,[{header:this.nameText,width:50,sortable:true,dataIndex:"name",id:"name",menuDisabled:true},{header:this.valueText,width:50,resizable:false,dataIndex:"value",id:"value",menuDisabled:true}]);this.store=g;var h=new i.Field({autoCreate:{tag:"select",children:[{tag:"option",value:"true",html:"true"},{tag:"option",value:"false",html:"false"}]},getValue:function(){return this.el.value=="true"}});this.editors={date:new j.GridEditor(new i.DateField({selectOnFocus:true})),string:new j.GridEditor(new i.TextField({selectOnFocus:true})),number:new j.GridEditor(new i.NumberField({selectOnFocus:true,style:"text-align:left;"})),"boolean":new j.GridEditor(h)};this.renderCellDelegate=this.renderCell.createDelegate(this);this.renderPropDelegate=this.renderProp.createDelegate(this)};Ext.extend(Ext.grid.PropertyColumnModel,Ext.grid.ColumnModel,{nameText:"Name",valueText:"Value",dateFormat:"m/j/Y",renderDate:function(b){return b.dateFormat(this.dateFormat)},renderBool:function(b){return b?"true":"false"},isCellEditable:function(d,c){return d==1},getRenderer:function(b){return b==1?this.renderCellDelegate:this.renderPropDelegate},renderProp:function(b){return this.getPropertyName(b)},renderCell:function(d){var c=d;if(Ext.isDate(d)){c=this.renderDate(d)}else{if(typeof d=="boolean"){c=this.renderBool(d)}}return Ext.util.Format.htmlEncode(c)},getPropertyName:function(c){var d=this.grid.propertyNames;return d&&d[c]?d[c]:c},getCellEditor:function(h,i){var g=this.store.getProperty(i),j=g.data.name,k=g.data.value;if(this.grid.customEditors[j]){return this.grid.customEditors[j]}if(Ext.isDate(k)){return this.editors.date}else{if(typeof k=="number"){return this.editors.number}else{if(typeof k=="boolean"){return this.editors["boolean"]}else{return this.editors.string}}}},destroy:function(){Ext.grid.PropertyColumnModel.superclass.destroy.call(this);for(var b in this.editors){Ext.destroy(b)}}});Ext.grid.PropertyGrid=Ext.extend(Ext.grid.EditorGridPanel,{enableColumnMove:false,stripeRows:false,trackMouseOver:false,clicksToEdit:1,enableHdMenu:false,viewConfig:{forceFit:true},initComponent:function(){this.customEditors=this.customEditors||{};this.lastEditRow=null;var c=new Ext.grid.PropertyStore(this);this.propStore=c;var d=new Ext.grid.PropertyColumnModel(this,c);c.store.sort("name","ASC");this.addEvents("beforepropertychange","propertychange");this.cm=d;this.ds=c.store;Ext.grid.PropertyGrid.superclass.initComponent.call(this);this.mon(this.selModel,"beforecellselect",function(a,b,g){if(g===0){this.startEditing.defer(200,this,[b,1]);return false}},this)},onRender:function(){Ext.grid.PropertyGrid.superclass.onRender.apply(this,arguments);this.getGridEl().addClass("x-props-grid")},afterRender:function(){Ext.grid.PropertyGrid.superclass.afterRender.apply(this,arguments);if(this.source){this.setSource(this.source)}},setSource:function(b){this.propStore.setSource(b)},getSource:function(){return this.propStore.getSource()}});Ext.reg("propertygrid",Ext.grid.PropertyGrid);Ext.grid.GroupingView=Ext.extend(Ext.grid.GridView,{groupByText:"Group By This Field",showGroupsText:"Show in Groups",hideGroupedColumn:false,showGroupName:true,startCollapsed:false,enableGrouping:true,enableGroupingMenu:true,enableNoGroups:true,emptyGroupText:"(None)",ignoreAdd:false,groupTextTpl:"{text}",gidSeed:1000,initTemplates:function(){Ext.grid.GroupingView.superclass.initTemplates.call(this);this.state={};var b=this.grid.getSelectionModel();b.on(b.selectRow?"beforerowselect":"beforecellselect",this.onBeforeRowSelect,this);if(!this.startGroup){this.startGroup=new Ext.XTemplate('<div id="{groupId}" class="x-grid-group {cls}">','<div id="{groupId}-hd" class="x-grid-group-hd" style="{style}"><div class="x-grid-group-title">',this.groupTextTpl,"</div></div>",'<div id="{groupId}-bd" class="x-grid-group-body">')}this.startGroup.compile();this.endGroup="</div></div>"},findGroup:function(b){return Ext.fly(b).up(".x-grid-group",this.mainBody.dom)},getGroups:function(){return this.hasRows()?this.mainBody.dom.childNodes:[]},onAdd:function(){if(this.enableGrouping&&!this.ignoreAdd){var b=this.getScrollState();this.refresh();this.restoreScroll(b)}else{if(!this.enableGrouping){Ext.grid.GroupingView.superclass.onAdd.apply(this,arguments)}}},onRemove:function(i,h,g,j){Ext.grid.GroupingView.superclass.onRemove.apply(this,arguments);var k=document.getElementById(h._groupId);if(k&&k.childNodes[1].childNodes.length<1){Ext.removeNode(k)}this.applyEmptyText()},refreshRow:function(b){if(this.ds.getCount()==1){this.refresh()}else{this.isUpdating=true;Ext.grid.GroupingView.superclass.refreshRow.apply(this,arguments);this.isUpdating=false}},beforeMenuShow:function(){var g,e=this.hmenu.items,d=this.cm.config[this.hdCtxIndex].groupable===false;if((g=e.get("groupBy"))){g.setDisabled(d)}if((g=e.get("showGroups"))){g.setDisabled(d);g.setChecked(!!this.getGroupField(),true)}},renderUI:function(){Ext.grid.GroupingView.superclass.renderUI.call(this);this.mainBody.on("mousedown",this.interceptMouse,this);if(this.enableGroupingMenu&&this.hmenu){this.hmenu.add("-",{itemId:"groupBy",text:this.groupByText,handler:this.onGroupByClick,scope:this,iconCls:"x-group-by-icon"});if(this.enableNoGroups){this.hmenu.add({itemId:"showGroups",text:this.showGroupsText,checked:true,checkHandler:this.onShowGroupsClick,scope:this})}this.hmenu.on("beforeshow",this.beforeMenuShow,this)}},onGroupByClick:function(){this.grid.store.groupBy(this.cm.getDataIndex(this.hdCtxIndex));this.beforeMenuShow()},onShowGroupsClick:function(d,c){if(c){this.onGroupByClick()}else{this.grid.store.clearGrouping()}},toggleGroup:function(g,d){this.grid.stopEditing(true);g=Ext.getDom(g);var e=Ext.fly(g);d=d!==undefined?d:e.hasClass("x-grid-group-collapsed");this.state[e.dom.id]=d;e[d?"removeClass":"addClass"]("x-grid-group-collapsed")},toggleAllGroups:function(i){var e=this.getGroups();for(var h=0,g=e.length;h<g;h++){this.toggleGroup(e[h],i)}},expandAllGroups:function(){this.toggleAllGroups(true)},collapseAllGroups:function(){this.toggleAllGroups(false)},interceptMouse:function(c){var d=c.getTarget(".x-grid-group-hd",this.mainBody);if(d){c.stopEvent();this.toggleGroup(d.parentNode)}},getGroup:function(j,n,l,k,g,m){var o=l?l(j,{},n,k,g,m):String(j);if(o===""){o=this.cm.config[g].emptyGroupText||this.emptyGroupText}return o},getGroupField:function(){return this.grid.store.getGroupState()},afterRender:function(){Ext.grid.GroupingView.superclass.afterRender.call(this);if(this.grid.deferRowRender){this.updateGroupWidths()}},renderRows:function(){var g=this.getGroupField();var h=!!g;if(this.hideGroupedColumn){var e=this.cm.findColumnIndex(g);if(!h&&this.lastGroupField!==undefined){this.mainBody.update("");this.cm.setHidden(this.cm.findColumnIndex(this.lastGroupField),false);delete this.lastGroupField}else{if(h&&this.lastGroupField===undefined){this.lastGroupField=g;this.cm.setHidden(e,true)}else{if(h&&this.lastGroupField!==undefined&&g!==this.lastGroupField){this.mainBody.update("");var i=this.cm.findColumnIndex(this.lastGroupField);this.cm.setHidden(i,false);this.lastGroupField=g;this.cm.setHidden(e,true)}}}}return Ext.grid.GroupingView.superclass.renderRows.apply(this,arguments)},doRender:function(V,S,G,Y,H,E){if(S.length<1){return""}var I=this.getGroupField(),K=this.cm.findColumnIndex(I),g;this.enableGrouping=!!I;if(!this.enableGrouping||this.isUpdating){return Ext.grid.GroupingView.superclass.doRender.apply(this,arguments)}var R="width:"+this.getTotalWidth()+";";var F=this.grid.getGridEl().id;var T=this.cm.config[K];var X=T.groupRenderer||T.renderer;var D=this.showGroupName?(T.groupName||T.header)+": ":"";var J=[],O,r,i,M;for(r=0,i=S.length;r<i;r++){var P=Y+r,N=S[r],U=N.data[I];g=this.getGroup(U,N,X,P,K,G);if(!O||O.group!=g){M=F+"-gp-"+I+"-"+Ext.util.Format.htmlEncode(g);var W=typeof this.state[M]!=="undefined"?!this.state[M]:this.startCollapsed;var Q=W?"x-grid-group-collapsed":"";O={group:g,gvalue:U,text:D+g,groupId:M,startRow:P,rs:[N],cls:Q,style:R};J.push(O)}else{O.rs.push(N)}N._groupId=M}var L=[];for(r=0,i=J.length;r<i;r++){g=J[r];this.doGroupStart(L,g,V,G,H);L[L.length]=Ext.grid.GroupingView.superclass.doRender.call(this,V,g.rs,G,g.startRow,H,E);this.doGroupEnd(L,g,V,G,H)}return L.join("")},getGroupId:function(l){var n=this.grid.getGridEl().id;var o=this.getGroupField();var m=this.cm.findColumnIndex(o);var i=this.cm.config[m];var k=i.groupRenderer||i.renderer;var j=this.getGroup(l,{data:{}},k,0,m,this.ds);return n+"-gp-"+o+"-"+Ext.util.Format.htmlEncode(l)},doGroupStart:function(h,j,g,i,k){h[h.length]=this.startGroup.apply(j)},doGroupEnd:function(h,j,g,i,k){h[h.length]=this.endGroup},getRows:function(){if(!this.enableGrouping){return Ext.grid.GroupingView.superclass.getRows.call(this)}var j=[];var l,o=this.getGroups();for(var m=0,i=o.length;m<i;m++){l=o[m].childNodes[1].childNodes;for(var n=0,g=l.length;n<g;n++){j[j.length]=l[n]}}return j},updateGroupWidths:function(){if(!this.enableGrouping||!this.hasRows()){return}var i=Math.max(this.cm.getTotalWidth(),this.el.dom.offsetWidth-this.scrollOffset)+"px";var e=this.getGroups();for(var h=0,g=e.length;h<g;h++){e[h].firstChild.style.width=i}},onColumnWidthUpdated:function(g,e,d){Ext.grid.GroupingView.superclass.onColumnWidthUpdated.call(this,g,e,d);this.updateGroupWidths()},onAllColumnWidthsUpdated:function(d,c){Ext.grid.GroupingView.superclass.onAllColumnWidthsUpdated.call(this,d,c);this.updateGroupWidths()},onColumnHiddenUpdated:function(d,g,e){Ext.grid.GroupingView.superclass.onColumnHiddenUpdated.call(this,d,g,e);this.updateGroupWidths()},onLayout:function(){this.updateGroupWidths()},onBeforeRowSelect:function(h,i){if(!this.enableGrouping){return}var e=this.getRow(i);if(e&&!e.offsetParent){var g=this.findGroup(e);this.toggleGroup(g,true)}}});Ext.grid.GroupingView.GROUP_ID=1000;;;/*
 * Ext JS Library 3.0.0
 * Copyright(c) 2006-2009 Ext JS, LLC
 * licensing@extjs.com
 * http://www.extjs.com/license
 */
Ext.ux.StatusBar=Ext.extend(Ext.Toolbar,{cls:"x-statusbar",busyIconCls:"x-status-busy",busyText:"Loading...",autoClear:5000,activeThreadId:0,initComponent:function(){if(this.statusAlign=="right"){this.cls+=" x-status-right"}Ext.ux.StatusBar.superclass.initComponent.call(this)},afterRender:function(){Ext.ux.StatusBar.superclass.afterRender.call(this);var a=this.statusAlign=="right";this.statusEl=new Ext.Toolbar.TextItem({cls:"x-status-text "+(this.iconCls||this.defaultIconCls||""),text:this.text||this.defaultText||""});if(a){this.add("->");this.add(this.statusEl)}else{this.insert(0,this.statusEl);this.insert(1,"->")}},setStatus:function(d){d=d||{};if(typeof d=="string"){d={text:d}}if(d.text!==undefined){this.setText(d.text)}if(d.iconCls!==undefined){this.setIcon(d.iconCls)}if(d.clear){var e=d.clear,b=this.autoClear,a={useDefaults:true,anim:true};if(typeof e=="object"){e=Ext.applyIf(e,a);if(e.wait){b=e.wait}}else{if(typeof e=="number"){b=e;e=a}else{if(typeof e=="boolean"){e=a}}}e.threadId=this.activeThreadId;this.clearStatus.defer(b,this,[e])}return this},clearStatus:function(c){c=c||{};if(c.threadId&&c.threadId!==this.activeThreadId){return this}var b=c.useDefaults?this.defaultText:"",a=c.useDefaults?(this.defaultIconCls?this.defaultIconCls:""):"";if(c.anim){this.statusEl.fadeOut({remove:false,useDisplay:true,scope:this,callback:function(){this.setStatus({text:b,iconCls:a});this.statusEl.show()}})}else{this.statusEl.hide();this.setStatus({text:b,iconCls:a});this.statusEl.show()}return this},setText:function(a){this.activeThreadId++;this.text=a||"";if(this.rendered){this.statusEl.setText(this.text)}return this},getText:function(){return this.text},setIcon:function(a){this.activeThreadId++;a=a||"";if(this.rendered){if(this.currIconCls){this.statusEl.removeClass(this.currIconCls);this.currIconCls=null}if(a.length>0){this.statusEl.addClass(a);this.currIconCls=a}}else{this.currIconCls=a}return this},showBusy:function(a){if(typeof a=="string"){a={text:a}}a=Ext.applyIf(a||{},{text:this.busyText,iconCls:this.busyIconCls});return this.setStatus(a)}});Ext.reg("statusbar",Ext.ux.StatusBar);;;/*
 * Ext JS Library 3.0.0
 * Copyright(c) 2006-2009 Ext JS, LLC
 * licensing@extjs.com
 * http://www.extjs.com/license
 */
Ext.ns("Ext.ux.grid");Ext.ux.grid.RowEditor=Ext.extend(Ext.Panel,{floating:true,shadow:false,layout:"hbox",cls:"x-small-editor",buttonAlign:"center",baseCls:"x-row-editor",elements:"header,footer,body",frameWidth:5,buttonPad:3,clicksToEdit:"auto",monitorValid:true,focusDelay:250,errorSummary:true,defaults:{normalWidth:true},initComponent:function(){Ext.ux.grid.RowEditor.superclass.initComponent.call(this);this.addEvents("beforeedit","validateedit","afteredit")},init:function(a){this.grid=a;this.ownerCt=a;if(this.clicksToEdit===2){a.on("rowdblclick",this.onRowDblClick,this)}else{a.on("rowclick",this.onRowClick,this);if(Ext.isIE){a.on("rowdblclick",this.onRowDblClick,this)}}a.getStore().on("remove",function(){this.stopEditing(false)},this);a.on({scope:this,keydown:this.onGridKey,columnresize:this.verifyLayout,columnmove:this.refreshFields,reconfigure:this.refreshFields,destroy:this.destroy,bodyscroll:{buffer:250,fn:this.positionButtons}});a.getColumnModel().on("hiddenchange",this.verifyLayout,this,{delay:1});a.getView().on("refresh",this.stopEditing.createDelegate(this,[]))},refreshFields:function(){this.initFields();this.verifyLayout()},isDirty:function(){var a;this.items.each(function(b){if(String(this.values[b.id])!==String(b.getValue())){a=true;return false}},this);return a},startEditing:function(k,p){if(this.editing&&this.isDirty()){this.showTooltip("You need to commit or cancel your changes");return}this.editing=true;if(typeof k=="object"){k=this.grid.getStore().indexOf(k)}if(this.fireEvent("beforeedit",this,k)!==false){var e=this.grid,l=e.getView();var o=l.getRow(k);var c=e.store.getAt(k);this.record=c;this.rowIndex=k;this.values={};if(!this.rendered){this.render(l.getEditorParent())}var m=Ext.fly(o).getWidth();this.setSize(m);if(!this.initialized){this.initFields()}var n=e.getColumnModel(),d=this.items.items,j,a;for(var b=0,h=n.getColumnCount();b<h;b++){a=this.preEditValue(c,n.getDataIndex(b));j=d[b];j.setValue(a);this.values[j.id]=a||""}this.verifyLayout(true);if(!this.isVisible()){this.setPagePosition(Ext.fly(o).getXY())}else{this.el.setXY(Ext.fly(o).getXY(),{duration:0.15})}if(!this.isVisible()){this.show().doLayout()}if(p!==false){this.doFocus.defer(this.focusDelay,this)}}},stopEditing:function(n){this.editing=false;if(!this.isVisible()){return}if(n===false||!this.isValid()){this.hide();return}var h={},b=this.record,j=false;var m=this.grid.colModel,f=this.items.items;for(var e=0,g=m.getColumnCount();e<g;e++){if(!m.isHidden(e)){var c=m.getDataIndex(e);if(!Ext.isEmpty(c)){var a=b.data[c];var l=this.postEditValue(f[e].getValue(),a,b,c);if(String(a)!==String(l)){h[c]=l;j=true}}}}if(j&&this.fireEvent("validateedit",this,h,b,this.rowIndex)!==false){b.beginEdit();for(var d in h){if(h.hasOwnProperty(d)){b.set(d,h[d])}}b.endEdit();this.fireEvent("afteredit",this,h,b,this.rowIndex)}this.hide()},verifyLayout:function(e){if(this.el&&(this.isVisible()||e===true)){var g=this.grid.getView().getRow(this.rowIndex);this.setSize(Ext.fly(g).getWidth(),Ext.isIE?Ext.fly(g).getHeight()+(Ext.isBorderBox?9:0):undefined);var c=this.grid.colModel,b=this.items.items;for(var d=0,a=c.getColumnCount();d<a;d++){if(!c.isHidden(d)){var f=0;if(d===0){f+=0}if(d===(a-1)){f+=3}else{f+=1}b[d].show();b[d].setWidth(c.getColumnWidth(d)-f)}else{b[d].hide()}}this.doLayout();this.positionButtons()}},slideHide:function(){this.hide()},initFields:function(){var b=this.grid.getColumnModel(),f=Ext.layout.ContainerLayout.prototype.parseMargins;this.removeAll(false);for(var e=0,a=b.getColumnCount();e<a;e++){var g=b.getColumnAt(e);var d=g.getEditor();if(!d){d=g.displayEditor||new Ext.form.DisplayField()}if(e==0){d.margins=f("0 1 2 1")}else{if(e==a-1){d.margins=f("0 0 2 1")}else{d.margins=f("0 1 2")}}d.setWidth(b.getColumnWidth(e));d.column=g;if(d.ownerCt!==this){d.on("focus",this.ensureVisible,this);d.on("specialkey",this.onKey,this)}this.insert(e,d)}this.initialized=true},onKey:function(a,b){if(b.getKey()===b.ENTER){this.stopEditing(true);b.stopPropagation()}},onGridKey:function(c){if(c.getKey()===c.ENTER&&!this.isVisible()){var b=this.grid.getSelectionModel().getSelected();if(b){var a=this.grid.store.indexOf(b);this.startEditing(a);c.stopPropagation()}}},ensureVisible:function(a){if(this.isVisible()){this.grid.getView().ensureVisible(this.rowIndex,this.grid.colModel.getIndexById(a.column.id),true)}},onRowClick:function(b,d,c){if(this.clicksToEdit=="auto"){var a=this.lastClickIndex;this.lastClickIndex=d;if(a!=d&&!this.isVisible()){return}}this.startEditing(d,false);this.doFocus.defer(this.focusDelay,this,[c.getPoint()])},onRowDblClick:function(a,c,b){this.startEditing(c,false);this.doFocus.defer(this.focusDelay,this,[b.getPoint()])},onRender:function(){Ext.ux.grid.RowEditor.superclass.onRender.apply(this,arguments);this.el.swallowEvent(["keydown","keyup","keypress"]);this.btns=new Ext.Panel({baseCls:"x-plain",cls:"x-btns",elements:"body",layout:"table",width:(this.minButtonWidth*2)+(this.frameWidth*2)+(this.buttonPad*4),items:[{ref:"saveBtn",itemId:"saveBtn",xtype:"button",text:this.saveText||"Save",width:this.minButtonWidth,handler:this.stopEditing.createDelegate(this,[true])},{xtype:"button",text:this.cancelText||"Cancel",width:this.minButtonWidth,handler:this.stopEditing.createDelegate(this,[false])}]});this.btns.render(this.bwrap)},afterRender:function(){Ext.ux.grid.RowEditor.superclass.afterRender.apply(this,arguments);this.positionButtons();if(this.monitorValid){this.startMonitoring()}},onShow:function(){if(this.monitorValid){this.startMonitoring()}Ext.ux.grid.RowEditor.superclass.onShow.apply(this,arguments)},onHide:function(){Ext.ux.grid.RowEditor.superclass.onHide.apply(this,arguments);this.stopMonitoring();this.grid.getView().focusRow(this.rowIndex)},positionButtons:function(){if(this.btns){var d=this.el.dom.clientHeight;var b=this.grid.getView();var a=b.scroller.dom.scrollLeft;var c=b.mainBody.getWidth();var e=this.btns.getWidth();this.btns.el.shift({left:(c/2)-(e/2)+a,top:d-2,stopFx:true,duration:0.2})}},preEditValue:function(a,c){var b=a.data[c];return this.autoEncode&&typeof b==="string"?Ext.util.Format.htmlDecode(b):b},postEditValue:function(c,a,b,d){return this.autoEncode&&typeof c=="string"?Ext.util.Format.htmlEncode(c):c},doFocus:function(f){if(this.isVisible()){var d=0;if(f){d=this.getTargetColumnIndex(f)}var b=this.grid.getColumnModel();for(var e=d||0,a=b.getColumnCount();e<a;e++){var g=b.getColumnAt(e);if(!g.hidden&&g.getEditor()){g.getEditor().focus();break}}}},getTargetColumnIndex:function(k){var a=this.grid,j=a.view;var h=k.left;var f=a.colModel.config;var b=0,d=false;for(var e=f.length,g;g=f[b];b++){if(!g.hidden){if(Ext.fly(j.getHeaderCell(b)).getRegion().right>=h){d=b;break}}}return d},startMonitoring:function(){if(!this.bound&&this.monitorValid){this.bound=true;Ext.TaskMgr.start({run:this.bindHandler,interval:this.monitorPoll||200,scope:this})}},stopMonitoring:function(){this.bound=false;if(this.tooltip){this.tooltip.hide()}},isValid:function(){var a=true;this.items.each(function(b){if(!b.isValid(true)){a=false;return false}});return a},bindHandler:function(){if(!this.bound){return false}var a=this.isValid();if(!a&&this.errorSummary){this.showTooltip(this.getErrorText().join(""))}this.btns.saveBtn.setDisabled(!a);this.fireEvent("validation",this,a)},showTooltip:function(b){var a=this.tooltip;if(!a){a=this.tooltip=new Ext.ToolTip({maxWidth:600,cls:"errorTip",width:300,title:"Errors",autoHide:false,anchor:"left",anchorToTarget:true,mouseOffset:[40,0]})}a.initTarget(this.items.last().getEl());if(!a.rendered){a.show();a.hide()}a.body.update(b);a.doAutoWidth();a.show()},getErrorText:function(){var a=["<ul>"];this.items.each(function(b){if(!b.isValid(true)){a.push("<li>",b.activeError,"</li>")}});a.push("</ul>");return a}});Ext.preg("roweditor",Ext.ux.grid.RowEditor);Ext.override(Ext.form.Field,{markInvalid:function(c){if(!this.rendered||this.preventMark){return}c=c||this.invalidText;var a=this.getMessageHandler();if(a){a.mark(this,c)}else{if(this.msgTarget){this.el.addClass(this.invalidClass);var b=Ext.getDom(this.msgTarget);if(b){b.innerHTML=c;b.style.display=this.msgDisplay}}}this.activeError=c;this.fireEvent("invalid",this,c)}});Ext.override(Ext.ToolTip,{doAutoWidth:function(){var a=this.body.getTextWidth();if(this.title){a=Math.max(a,this.header.child("span").getTextWidth(this.title))}a+=this.getFrameWidth()+(this.closable?20:0)+this.body.getPadding("lr")+20;this.setWidth(a.constrain(this.minWidth,this.maxWidth));if(Ext.isIE7&&!this.repainted){this.el.repaint();this.repainted=true}}});;;/*
 * Ext JS Library 3.0.0
 * Copyright(c) 2006-2009 Ext JS, LLC
 * licensing@extjs.com
 * http://www.extjs.com/license
 */
Ext.ns("Ext.ux.grid");Ext.ux.grid.RowExpander=Ext.extend(Ext.util.Observable,{expandOnEnter:true,expandOnDblClick:true,header:"",width:20,sortable:false,fixed:true,menuDisabled:true,dataIndex:"",id:"expander",lazyRender:true,enableCaching:true,constructor:function(a){Ext.apply(this,a);this.addEvents({beforeexpand:true,expand:true,beforecollapse:true,collapse:true});Ext.ux.grid.RowExpander.superclass.constructor.call(this);if(this.tpl){if(typeof this.tpl=="string"){this.tpl=new Ext.Template(this.tpl)}this.tpl.compile()}this.state={};this.bodyContent={}},getRowClass:function(a,e,d,c){d.cols=d.cols-1;var b=this.bodyContent[a.id];if(!b&&!this.lazyRender){b=this.getBodyContent(a,e)}if(b){d.body=b}return this.state[a.id]?"x-grid3-row-expanded":"x-grid3-row-collapsed"},init:function(b){this.grid=b;var a=b.getView();a.getRowClass=this.getRowClass.createDelegate(this);a.enableRowBody=true;b.on("render",this.onRender,this);b.on("destroy",this.onDestroy,this)},onRender:function(){var a=this.grid;var b=a.getView().mainBody;b.on("mousedown",this.onMouseDown,this,{delegate:".x-grid3-row-expander"});if(this.expandOnEnter){this.keyNav=new Ext.KeyNav(this.grid.getGridEl(),{enter:this.onEnter,scope:this})}if(this.expandOnDblClick){a.on("rowdblclick",this.onRowDblClick,this)}},onDestroy:function(){this.keyNav.disable();delete this.keyNav;var a=this.grid.getView().mainBody;a.un("mousedown",this.onMouseDown,this)},onRowDblClick:function(a,b,c){this.toggleRow(b)},onEnter:function(h){var f=this.grid;var j=f.getSelectionModel();var b=j.getSelections();for(var c=0,a=b.length;c<a;c++){var d=f.getStore().indexOf(b[c]);this.toggleRow(d)}},getBodyContent:function(a,b){if(!this.enableCaching){return this.tpl.apply(a.data)}var c=this.bodyContent[a.id];if(!c){c=this.tpl.apply(a.data);this.bodyContent[a.id]=c}return c},onMouseDown:function(b,a){b.stopEvent();var c=b.getTarget(".x-grid3-row");this.toggleRow(c)},renderer:function(b,c,a){c.cellAttr='rowspan="2"';return'<div class="x-grid3-row-expander">&#160;</div>'},beforeExpand:function(b,a,c){if(this.fireEvent("beforeexpand",this,b,a,c)!==false){if(this.tpl&&this.lazyRender){a.innerHTML=this.getBodyContent(b,c)}return true}else{return false}},toggleRow:function(a){if(typeof a=="number"){a=this.grid.view.getRow(a)}this[Ext.fly(a).hasClass("x-grid3-row-collapsed")?"expandRow":"collapseRow"](a)},expandRow:function(c){if(typeof c=="number"){c=this.grid.view.getRow(c)}var b=this.grid.store.getAt(c.rowIndex);var a=Ext.DomQuery.selectNode("tr:nth(2) div.x-grid3-row-body",c);if(this.beforeExpand(b,a,c.rowIndex)){this.state[b.id]=true;Ext.fly(c).replaceClass("x-grid3-row-collapsed","x-grid3-row-expanded");this.fireEvent("expand",this,b,a,c.rowIndex)}},collapseRow:function(c){if(typeof c=="number"){c=this.grid.view.getRow(c)}var b=this.grid.store.getAt(c.rowIndex);var a=Ext.fly(c).child("tr:nth(1) div.x-grid3-row-body",true);if(this.fireEvent("beforecollapse",this,b,a,c.rowIndex)!==false){this.state[b.id]=false;Ext.fly(c).replaceClass("x-grid3-row-expanded","x-grid3-row-collapsed");this.fireEvent("collapse",this,b,a,c.rowIndex)}}});Ext.preg("rowexpander",Ext.ux.grid.RowExpander);Ext.grid.RowExpander=Ext.ux.grid.RowExpander;;;CodeEditor=Ext.extend(Ext.form.Field,{onRender:function(c,a){CodeEditor.superclass.onRender.call(this,c,a);this.el.dom.style.border="0 none";this.el.dom.setAttribute("tabIndex",-1);this.el.addClass("x-hidden");if(Ext.isIE){this.el.applyStyles("margin-top:-1px;margin-bottom:-1px;")}this.wrap=this.el.wrap({cls:"x-html-editor-wrap",cn:{cls:"x-html-editor-tb"}});var b={content:"",parserfile:["tokenizejavascript.js","parsejavascript.js"],stylesheet:"codemirror/css/jscolors.css",path:"codemirror/js/",autoMatchParens:true,lineNumbers:true};this.editor=new CodeMirror(this.wrap,b);if(!this.width){var d=this.el.getSize();this.setSize(d.width,this.height||d.height)}},createIFrame:function(){var a=document.createElement("iframe");a.name=Ext.id();a.frameBorder="0";a.src=Ext.isIE?Ext.SSL_SECURE_URL:"javascript:;";this.wrap.dom.appendChild(a);this.iframe=a;this.monitorTask=Ext.TaskMgr.start({run:this.checkDesignMode,scope:this,interval:100})}});Ext.reg("codeeditor",CodeEditor);;;var JSON;if(!JSON){JSON={}}(function(){function f(n){return n<10?"0"+n:n}if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf()}}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+string+'"'}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==="object"&&typeof value.toJSON==="function"){value=value.toJSON(key)}if(typeof rep==="function"){value=rep.call(holder,key,value)}switch(typeof value){case"string":return quote(value);case"number":return isFinite(value)?String(value):"null";case"boolean":case"null":return String(value);case"object":if(!value){return"null"}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==="[object Array]"){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||"null"}v=partial.length===0?"[]":gap?"[\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"]":"["+partial.join(",")+"]";gap=mind;return v}if(rep&&typeof rep==="object"){length=rep.length;for(i=0;i<length;i+=1){if(typeof rep[i]==="string"){k=rep[i];v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}else{for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}v=partial.length===0?"{}":gap?"{\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"}":"{"+partial.join(",")+"}";gap=mind;return v}}if(typeof JSON.stringify!=="function"){JSON.stringify=function(value,replacer,space){var i;gap="";indent="";if(typeof space==="number"){for(i=0;i<space;i+=1){indent+=" "}}else{if(typeof space==="string"){indent=space}}rep=replacer;if(replacer&&typeof replacer!=="function"&&(typeof replacer!=="object"||typeof replacer.length!=="number")){throw new Error("JSON.stringify")}return str("",{"":value})}}if(typeof JSON.parse!=="function"){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==="object"){for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return reviver.call(holder,key,value)}text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){j=eval("("+text+")");return typeof reviver==="function"?walk({"":j},""):j}throw new SyntaxError("JSON.parse")}}}());;;function skipcache(){return"?rnd="+parseInt(Math.random()*1000000)}function Id(a){return document.getElementById(a)}String.prototype.replaceAll=function(b,a){return this.split(b).join(a)};function SafeEscape(a){if(typeof a=="string"){a=a.replace(/</g,"&lt;").replace(/>/g,"&gt;")}return a}var nDeep=-1;function toSpace(d){var c="";var a="       ";for(var b=0;b<d;b++){c+=a}return c}function toSource(c){switch(typeof c){case"function":return c.toString();case"string":return'"'+c.replaceAll('"','\\"')+'"';case"object":var d="";if(c==null){return"null"}if(c instanceof Array){for(var b=0,a=c.length;b<a;b++){d+=", "+toSource(c[b])}if(d.length>0){d=d.substring(1)}return"[ "+d+" ]"}nDeep++;for(var b in c){d+=",\n"+toSpace(nDeep)+b+" : "+toSource(c[b])}nDeep--;return"{ "+(d.length>0?d.substring(1):d)+"\n"+toSpace(nDeep)+"}"}return c}function toSourceData(c){switch(typeof c){case"function":return c.toString();case"string":return c.replaceAll('"','\\"');case"object":var d="";if(c==null){return"null"}if(c instanceof Array){for(var b=0,a=c.length;b<a;b++){d+=", "+toSource(c[b])}if(d.length>0){d=d.substring(1)}return"[ "+d+" ]"}nDeep++;for(var b in c){d+=",\n"+toSpace(nDeep)+b+" : "+toSource(c[b])}nDeep--;return"{ "+(d.length>0?d.substring(1):d)+"\n"+toSpace(nDeep)+"}"}return c}function toSpaceHtml(d){var c="";var a="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";for(var b=0;b<d;b++){c+=a}return c}function toSourceHtml(c){switch(typeof c){case"function":return SafeEscape(c.toString());case"string":return SafeEscape('"'+c.replaceAll('"','\\"')+'"');case"object":var d="";if(c==null){return"null"}if(c instanceof Array){for(var b=0,a=c.length;b<a;b++){d+=", "+toSourceHtml(c[b])}if(d.length>0){d=d.substring(1)}return"[ "+d+" ]"}nDeep++;for(var b in c){d+=",<br />"+toSpaceHtml(nDeep)+b+" : "+toSourceHtml(c[b])}nDeep--;if(nDeep==-1){return(d.length>0?d.substring(1):d)+"<br />"+toSpaceHtml(nDeep)}return"{ "+(d.length>0?d.substring(1):d)+"<br />"+toSpaceHtml(nDeep)+"}"}return c}function toJSON(c){if(window.JSON){return JSON.stringify(c)}switch(typeof c){case"function":return c.toString();case"string":return'"'+c.replaceAll('\\"','\\\\"').replaceAll('"','\\"')+'"';case"object":var d="";if(c==null){return"null"}if(c instanceof Array){for(var b=0,a=c.length;b<a;b++){d+=", "+toJSON(c[b])}if(d.length>0){d=d.substring(1)}return"[ "+d+" ]"}for(var b in c){d+=', "'+b+'" : '+toJSON(c[b])}return"{ "+(d.length>0?d.substring(1):d)+" }"}return c}function ClearBRLT(a){if(typeof a=="string"){a=a.replace(/\n/g,"")}return a}function DelayFunc(d,b,a,c){return function(){if(!a){a=[].splice.call(arguments,0)}if(!c){c=this}clearTimeout(d.to);d.to=setTimeout(function(){d.apply(c||this,a&&a.join?a:[a])},b||350)}}function SafeEscape(a){if(typeof a=="string"){a=a.replace(/</g,"&lt;").replace(/>/g,"&gt;")}return a}function XTemplate(a,d,c){var b=function(e,f){return(d[f]!=undefined)?(c?d[f]:SafeEscape(d[f])):e};return a.replace(/%\(([A-Za-z0-9_|.]*)\)/g,b)}function GetFileExt(b){var a=b.split(".");return a.length>1?a[a.length-1]:""}var Cookies={Set:function(c,e){var a=arguments,h=arguments.length,b=(h>2)?a[2]:null,g=(h>3)?a[3]:"/",d=(h>4)?a[4]:null,f=(h>5)?a[5]:false;document.cookie=c+"="+escape(e)+((b==null)?"":("; expires="+b.toGMTString()))+((g==null)?"":("; path="+g))+((d==null)?"":("; domain="+d))+((f==true)?"; secure":"")},Get:function(d){var b=d+"=",f=b.length,a=document.cookie.length,e=0,c=0;while(e<a){c=e+f;if(document.cookie.substring(e,c)==b){return Cookies._getCookieVal(c)}e=document.cookie.indexOf(" ",e)+1;if(e==0){break}}return null},Clear:function(a){if(Cookies.Get(a)){document.cookie=a+"=; expires=Thu, 01-Jan-70 00:00:01 GMT"}},_getCookieVal:function(b){var a=document.cookie.indexOf(";",b);if(a==-1){a=document.cookie.length}return unescape(document.cookie.substring(b,a))}};function Include(c,f){var e=document,b=e.getElementsByTagName("head")[0],a=e.createElement("script");a.type="text/javascript";a.onload=a.onreadystatechange=a.onerror=function(){var d=this;if(!d.loaded&&(!d.readyState||d.readyState=="loaded"||d.readyState=="complete")){d.loaded=1;d.onerror=d.onload=d.onreadystatechange=null;setTimeout(function(){f()},100)}};a.src=c;b.appendChild(a)}var isReadyInited=0,safariTimer,isReady=window.isReady,readyHndlr=[];function onReady(a){if(isReady){a()}else{readyHndlr.push(a);initOnReady()}}function ready(){if(isReady){return}isReady=1;for(var b=0,a=readyHndlr.length;b<a;b++){readyHndlr[b]()}readyHndlr=null}function addEvent(c,a,b){if(c.attachEvent){c.attachEvent("on"+a,b)}else{c.addEventListener(a,b,false)}}function initOnReady(){if(isReadyInited){return}isReadyInited=1;if(oBrowser.bIsMozilla||oBrowser.bIsOpera){addEvent(document,"DOMContentLoaded",ready)}else{if(oBrowser.bIsMsie){(function(){try{document.documentElement.doScroll("left")}catch(a){setTimeout(arguments.callee,50);return}ready()})()}else{if(oBrowser.bIsSafari){safariTimer=setInterval(function(){if(document.readyState=="loaded"||document.readyState=="complete"){clearInterval(safariTimer);safariTimer=null;ready()}},10)}}}addEvent(window,"load",ready)};;;var sAgent=navigator.userAgent.toLowerCase();oBrowser={bIsOpera:/opera/.test(sAgent),bIsSafari:/safari/.test(sAgent),bIsMsie:/msie/.test(sAgent)&&!/opera/.test(sAgent),bIsMozilla:/mozilla/.test(sAgent)&&!/(compatible|webkit)/.test(sAgent)};var GAPPID="1dd8d191d38fff45e62564fcf67fdcd6";var GThemeName;var GSCG=true;var oActResp=null;var sSolutionAppid;var GLang,sLocalName="HLocalEN";var GAllowPHP=false;var GSession;var GParams;var GAPI=(function(){var aParams=location.href.split("?");var oParams={},sKey,sValue;if(aParams&&aParams.length>1){aParams=aParams[1].split("&");for(var i=0;i<aParams.length;i++){sKey=aParams[i].split("=")[0];sValue=aParams[i].split("=")[1];oParams[sKey]=sValue}}GParams=oParams;GAllowPHP=oParams.php;var sResp=oParams.response;try{if(sResp){oActResp=eval("("+decodeURIComponent(sResp)+")")}}catch(e){}GLang=oParams.lang;if(!GLang){GLang=Cookies.Get("GLang")}else{Cookies.Set("GLang",GLang)}var n=navigator,sLanguage=((n.language||n.browserLanguage)+"").toLowerCase();if(GLang=="en"){sLocalName="HLocalEN"}else{if(GLang=="ru"){sLocalName="HLocalRU"}else{if(sLanguage.indexOf("en")!=-1){GLang="en";sLocalName="HLocalEN"}else{if(sLanguage.indexOf("ru")!=-1){GLang="ru";sLocalName="HLocalRU"}}}}GThemeName=oParams.theme;if(!GThemeName){GThemeName=Cookies.Get("GThemeName");if(!GThemeName){GThemeName="dark";Cookies.Set("GThemeName",GThemeName)}}else{Cookies.Set("GThemeName",GThemeName)}switch(GThemeName){case"gray":Ext.util.CSS.swapStyleSheet("","code-default.css");Ext.util.CSS.swapStyleSheet("","ext/resources/css/xtheme-gray.css");break;case"dark":Ext.util.CSS.swapStyleSheet("","code-dark.css");Ext.util.CSS.swapStyleSheet("","ext/resources/css/xtheme-access.css");break;case"blue":Ext.util.CSS.swapStyleSheet("","code-default.css");Ext.util.CSS.swapStyleSheet("","ext/resources/css/xtheme-blue.css");break;default:Ext.util.CSS.swapStyleSheet("","code-default.css");Ext.util.CSS.swapStyleSheet("","ext/resources/css/xtheme-gray.css");GThemeName="gray"}sSolutionAppid=oParams.solution||null;var sPlatformPath=oParams.server||"http://app.hivext.com/1.0/";var sPlatformPathApp=oParams.server||"http://app.hivext.com/1.0/";var oServicePath={"Users.Registration":"users/registration/cross/","Users.Authentication":"users/authentication/cross/","Users.Account":"users/account/cross/","Data.Base":"data/base/cross/","Development.Applications":"development/applications/cross/","Development.Scripting":"development/scripting/cross/","Security.AccessControl":"security/accesscontrol/cross/","Utils.Batch":"utils/batch/cross/"};this.Uri=function(sName){return oServicePath[sName]};this.Method=function(sName,sMethod){return this.Uri(sName)+sMethod.toLowerCase()};this.GetPlatformPath=function(){return sPlatformPath};this.GetPlatformPathApp=function(){return sPlatformPathApp};return this})();;var bIsIE=(navigator.userAgent.toLowerCase().indexOf("msie")!=-1)?true:false;function GenId(){return"ID"+parseInt(Math.random()*1000000)}function Get(a){return typeof a=="string"?document.getElementById(a):a}function AddTo(d,c){var a=c?Get(c):document.body;var b=document.createElement("div");b.innerHTML=d.join?d.join(""):d;while(b.childNodes.length>0){a.appendChild(b.childNodes[0])}return a}function Remove(d){d=d instanceof Array?d:[d];for(var c=0,a=d.length;c<a;c++){var b=Get(d[c]);if(b&&b.parentNode){b.parentNode.removeChild(b)}}}function HNamespace(){}HNamespace.Define=function(f,d){if(!f){return}var b=f.split(".");var e,c=window;for(var a=0;a<b.length;a++){e=b[a];if(c[e]){c=c[e]}else{c[e]=(a==b.length-1)?(d?d:{}):{};c=c[e];c.__globalName__="";c.__localName__=e}}};function GInstanceOf(b,a){while(b!=null){if(b==a.prototype){return true}b=b.__proto__}return false}function GSafeDelete(a){if(!a){return}if(a.destruct){a.destruct()}delete a}function GBind(a,b){return function(){return b.apply(a,arguments)}}function GCache(a,b){if(!b){a+="?"+Math.floor(Math.random()*1000)}return a}HNamespace.Define("HHyper",{sInternalName:"Hyper",sMajorVer:"",sMinorVer:""});function IndexOf(a,d){var c=a.length;var b=Number(arguments[2])||0;b=(b<0)?Math.ceil(b):Math.floor(b);if(b<0){b+=c}for(;b<c;b++){if(b in a&&a[b]===d){return b}}return -1}HNamespace.Define("HClass",{aHive:[],GetClassDef:function(a){return this.aHive[a]},Native:function(a){a.bIsNative=true},Define:function(a,b){function c(){var f=[];function e(g){if(!g.aClassSuper){return}var k,h;for(var j=0;j<g.aClassSuper.length;j++){k=g.aClassSuper[j];h=k.prototype;if(h.construct){f.push(h.construct)}e(k)}return}e(c);for(var d=f.length-1;d>=0;d--){f[d].apply(this)}if(this.construct){this.construct.apply(this,arguments)}return this}c.sClassName=a;c.aClassSuper=[];c.bIsNative=false;c.isProperty=function(d){return(this.prototype[d]==true)};c.AddProperty=function(e,d){this.prototype[e]=d};c.RemoveProperty=function(d){if(!this.isProperty(d)){return}delete this.prototype[d]};c.Extend=function(){if(!arguments){return}for(var d=0;d<arguments.length;d++){this.aClassSuper.push(arguments[d])}this.prototype=new arguments[0];return this};c.Props=function(e){for(var d in e){this.AddProperty(d,e[d])}return this};c.Static=function(e){for(var d in e){this[d]=e[d]}return this};if(b){if(b.extend){c.Extend(b.extend)}if(b["static"]){c.Static(b["static"])}if(b.props){c.Props(b.props)}}this.aHive[a]=c;HNamespace.Define(a,c);return c}});HClass.Define("HCore.Singleton",{});HClass.Define("HCore.Object",{extend:Object,"static":{aObjectHeap:[],ConstructObject:function(a){var b=HClass.GetClassDef(a);var c=null;if(b){if(arguments.length==1){c=new b}else{c=new b(arguments.splice(0,1))}if(c){HCore.Object.aObjectHeap.push(c)}else{}}else{}return c},RegisterObject:function(b,a){},DestructObject:function(a){}},props:{InstanceOf:function(a){return GInstanceOf(this,a)},SafeDelete:function(){GSafeDelete(this)},Clone:function(d){var a,c=new HCore.Object;if(d){for(var b=0;b<d.length;b++){a=d[b];if(this[a]){c[a]=this[a]}}}else{for(a in this){c[a]=this[a]}}return c},MethodReference:function(a){if(!this[a]){return false}return GBind(this,this[a])},Bind:function(b,a){this[b]=GBind(this,a)}}});HClass.Define("HCore.OutputDevice",{extend:HCore.Object,props:{Log:function(){}}});HClass.Define("HCore.ErrorOutputDevice",{extend:HCore.OutputDevice,props:{Error:function(a){}}});HClass.Define("HCore.AlertErrorOutputDevice",{extend:HCore.ErrorOutputDevice,props:{Error:function(a){alert("Error: "+a)}}});HCore.oErrorOutputDevice=new HCore.AlertErrorOutputDevice;HClass.Define("HCore.Event",{extend:HCore.Object,props:{Add:function(){},Remove:function(){}}});HNamespace.Define("HNet",{Protocols:HNamespace.Define("HNet.Protocols",{HTTP:1,FTP:2,FILE:3}),HTTPStatusCode:HNamespace.Define("HNet.HTTPStatusCode",{S_OK:200}),Connect:HClass.Define("HNet.Connect",{extend:HCore.Object,"static":{ExtractProtocolFromUrl:function(a){},HttpErrorHandler:function(a){switch(a){case HNet.HTTPStatusCode.S_NotFound:break}}},props:{nCurrentProtocol:null,construct:function(){this.nCurrentProtocol=HNet.Protocols.HTTP}}}),IframeRequest:HClass.Define("HNet.IframeRequest",{extend:HNet.Connect,"static":{aIframeObjects:[],CreateObject:function(){},GetObject:function(){}}}),ScriptRequest:HClass.Define("HNet.ScriptRequest",{extend:HNet.Connect,"static":{Response:{},CreateObject:function(){var a=document.createElement("script");a.type="text/javascript";a.sid=GenId();return a},GetObject:function(){return this.CreateObject()}},props:{oScript:null,isActive:false,construct:function(){},Get:function(c,e){var b=this,d=HNet.ScriptRequest.GetObject();this.oScript=d;d.process=true;d.callback=e;var a="cb=HNet.ScriptRequest.Response."+d.sid;if(c.indexOf("?")==-1){d.src=c+"?"+a}else{if(c.match(/\?[\w\d]+/)){d.src=c+"&"+a}else{d.src=c+a}}HNet.ScriptRequest.Response[d.sid]=function(f){d.success=true;d.process=false;d.callback(f)};d.onerror=d.onload=d.onreadystatechange=function(){if(!this.loaded&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){this.loaded=1;this.onerror=this.onload=this.onreadystatechange=null;if(this.process){}else{}Remove(this);delete b.oScript;delete HNet.ScriptRequest.Response[this.sid];b.isActive=false}};document.getElementsByTagName("head")[0].appendChild(d);this.isActive=true},Abort:function(){}}}),WNTransport:HClass.Define("HNet.WNTransport",{extend:HNet.Connect,"static":{sBlankUrl:"about:blank",aFrameOnLoad:[],CreateObject:function(){},GetObject:function(){return this.CreateObject()},GetData:function(b){if(b.bAbort){return}var c=this.aFrameOnLoad[b.id];if(c){try{c(b.contentWindow.name)}catch(a){}delete this.aFrameOnLoad[b.id]}setTimeout(function(){Remove(b)},0)},OnLoad:function(c){var a=c.contentWindow;try{if(!c.nState&&(a.location==HNet.WNTransport.sBlankUrl||a.location=="javascript:true")){return}}catch(b){}if(c.nState){return this.GetData(c)}else{a.location=HNet.WNTransport.sBlankUrl}c.nState=1}},props:{oFrame:null,sFrameName:"",oFrameContainer:null,sUrl:"",sMethod:"",fnCallback:null,construct:function(){},Open:function(a,b,c){this.sMethod=a;this.sUrl=b;this.fnCallback=c},Send:function(i){var e=this.sMethod;var a=this.sUrl;var d="WNTransportIFrame_"+GenId();var j=document;function h(l){return'<iframe style="display:none" onload="HNet.WNTransport.OnLoad(this)" src="javascript:true" id="'+l+'" name="'+l+'"></iframe>'}var k=AddTo(h(d)).lastChild;HNet.WNTransport.aFrameOnLoad[d]=this.fnCallback;this.oFrame=k;if(e.match(/GET/i)){k.src=this.sUrl;if(k.contentWindow){k.contentWindow.location.replace(a)}}else{if(e.match(/POST/i)){var g=null;if(i){if(i.nodeType){g=i}else{g=document.createElement("form");var f;for(var c in i){var b=i[c];if(b.type&&b.type=="file"){f=b;if(f.parentNode){b=b.cloneNode(this);b.onchange=f.onchange;f.parentNode.replaceChild(b,f)}f.name=c}else{f=document.createElement("textarea");f.name=c;f.value=b}g.appendChild(f);document.body.appendChild(g)}}if(g){g.method="post";g.action=a;g.target=d;g.style.display="none";document.body.appendChild(g);g.submit();Remove(g)}}}else{throw new Error("Method "+e+" not supported with the HNet.WNTransport.")}}},Get:function(a,b){this.Open("GET",a,b);this.Send(null)},Post:function(b,a,c){this.Open("POST",b,c);this.Send(a)},Abort:function(){var a=this.oFrame;a.bAbort=true;a.src="javascript:true";setTimeout(function(){Remove(a)},0)}}})});HNamespace.Define("HSchema",{Types:HClass.Define("HSchema.Types",{})});HNamespace.Define("HWebService",{Client:HClass.Define("HWebService.Client",{"static":{FindCallback:function(b){var c=null;for(var a=0;a<b.length;a++){if(typeof b[a]=="function"){c=b[a];break}}return c}},props:{sLocation:"",construct:function(){},ConstructParams:function(e,a){var b={};if(e.length>0){if(typeof e[0]=="object"){b=e[0];for(d in b){if(!a[d]){delete b[d]}else{}}}else{var c=0;for(var d in a){b[d]=e[c];c++}}}return b},ConstructUrl:function(){},ConstructRequest:function(){},ConstructResponse:function(){},Call:function(b,a){}}}),Provider:HClass.Define("HWebService.Provider",{ConstructService:function(a){}})});HNamespace.Define("HRest",{Client:HClass.Define("HRest.Client",{extend:HWebService.Client,props:{sBindType:"rest",aOperationLocation:null,construct:function(){},ConstructUrl:function(a){return this.sLocation+(this.aOperationLocation[a]?this.aOperationLocation[a]:"")},ConstructRequest:function(f,a){var d="",e="";if(f.length>0){if(typeof f[0]=="object"&&f[0]!=null&&f[0]!=undefined){oParams=f[0];for(c in oParams){if(c=="params"){d+=e+oParams[c];e="&"}else{if(a[c]){d+=e+c+"="+encodeURIComponent(oParams[c]);e="&"}}}}else{var b=0;for(var c in a){if(typeof f[b]=="function"){break}if(f[b]){d+=e+c+"="+encodeURIComponent(f[b]);e="&"}b++}}}return d},ConstructResponse:function(sResponse,oOutput){var oResponse={};oResponse=eval("("+sResponse+")");return oResponse},Call:function(c,d){var b=this.ConstructUrl(c);var a=this.ConstructRequest(d);var e=HWebService.Client.FindCallback(d)}}})});;;HNamespace.Define("Users",{RegistrationService:HClass.Define("Users.RegistrationService",{extend:HWebService.Provider,props:{construct:function(){},ConstructClient:function(){var a=new this.RegistrationPortType;a.oServiceBind=new this.RegistrationBinding;return a},RegistrationPort:HClass.Define("RegistrationPort",{extend:HRest.Client,props:{sNamespace:"http://api.hivext.ru/1.0/users/registration/cross/",sLocation:"http://api.hivext.ru/1.0/users/registration/cross/",construct:function(){}}}),RegistrationBinding:HClass.Define("RegistrationBinding",{extend:RegistrationPort,props:{aOperationLocation:{Activate:"activate",CreateAccount:"createaccount",CheckEmailExist:"checkemailexist",CheckEmailRegistration:"checkemailregistration",ResendInvitation:"resendinvitation"},construct:function(){}}}),RegistrationPortType:HClass.Define("RegistrationPortType",{props:{oServiceBind:null,construct:function(){},ActivateInput:{appid:"string",key:"string",redirect:"string"},ActivateOutput:{result:"int",error:"string"},CreateAccountInput:{appid:"string",email:"string",password:"string",name:"string",checkEmail:"boolean",welcome:"string"},CreateAccountOutput:{result:"int",error:"string"},CheckEmailExistInput:{appid:"string",email:"string"},CheckEmailExistOutput:{result:"int",error:"string"},CheckEmailRegistrationInput:{appid:"string",email:"string"},CheckEmailRegistrationOutput:{result:"int",error:"string"},ResendInvitationInput:{appid:"string",email:"string",welcome:"string"},ResendInvitationOutput:{result:"int",error:"string"},Activate:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : Activate : binding not found")}var a=d.ConstructUrl("Activate");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.ActivateInput);var b=this.ActivateOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},CreateAccount:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : CreateAccount : binding not found")}var a=d.ConstructUrl("CreateAccount");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.CreateAccountInput);var b=this.CreateAccountOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},CheckEmailExist:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : CheckEmailExist : binding not found")}var a=d.ConstructUrl("CheckEmailExist");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.CheckEmailExistInput);var b=this.CheckEmailExistOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},CheckEmailRegistration:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : CheckEmailRegistration : binding not found")}var a=d.ConstructUrl("CheckEmailRegistration");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.CheckEmailRegistrationInput);var b=this.CheckEmailRegistrationOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},ResendInvitation:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ResendInvitation : binding not found")}var b=d.ConstructUrl("ResendInvitation");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.ResendInvitationInput);var a=this.ResendInvitationOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})}}})}})});Users.Registration=(new Users.RegistrationService).ConstructClient();;;HNamespace.Define("Users",{AuthenticationService:HClass.Define("Users.AuthenticationService",{extend:HWebService.Provider,props:{construct:function(){},ConstructClient:function(){var a=new this.AuthenticationPortType;a.oServiceBind=new this.AuthenticationBinding;return a},AuthenticationPort:HClass.Define("AuthenticationPort",{extend:HRest.Client,props:{sNamespace:"http://api.hivext.ru/1.0/users/authentication/cross/",sLocation:"http://api.hivext.ru/1.0/users/authentication/cross/",construct:function(){}}}),AuthenticationBinding:HClass.Define("AuthenticationBinding",{extend:AuthenticationPort,props:{aOperationLocation:{Signin:"signin",Signout:"signout",CheckSign:"checksign",ChangeSession:"changesession",GetDeviceSignature:"getdevicesignature"},construct:function(){}}}),AuthenticationPortType:HClass.Define("AuthenticationPortType",{props:{oServiceBind:null,construct:function(){},SigninInput:{appid:"string",login:"string",password:"string"},SigninOutput:{result:"int",error:"string",session:"string",uid:"int",name:"string"},SignoutInput:{appid:"string",session:"string"},SignoutOutput:{result:"int",error:"string"},CheckSignInput:{appid:"string",session:"string"},CheckSignOutput:{result:"int",error:"string",uid:"int",name:"string"},ChangeSessionInput:{appid:"string",session:"string"},ChangeSessionOutput:{result:"int",error:"string",session:"string"},GetDeviceSignatureInput:{appid:"string"},GetDeviceSignatureOutput:{result:"int",error:"string",signature:"string"},ShareSessionInput:{appid:"string",session:"string",targetAppid:"string"},ShareSessionOutput:{result:"int",error:"string"},Signin:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : Signin : binding not found")}var b=d.ConstructUrl("Signin");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.SigninInput);var a=this.SigninOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},Signout:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : Signout : binding not found")}var b=d.ConstructUrl("Signout");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.SignoutInput);var a=this.SignoutOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},CheckSign:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : CheckSign : binding not found")}var b=d.ConstructUrl("CheckSign");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.CheckSignInput);var a=this.CheckSignOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},ChangeSession:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ChangeSession : binding not found")}var b=d.ConstructUrl("ChangeSession");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.ChangeSessionInput);var a=this.ChangeSessionOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetDeviceSignature:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetDeviceSignature : binding not found")}var b=d.ConstructUrl("GetDeviceSignature");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetDeviceSignatureInput);var a=this.GetDeviceSignatureOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},ShareSession:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ShareSession : binding not found")}var a=d.ConstructUrl("ShareSession");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.ShareSessionInput);var b=this.ShareSessionOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})}}})}})});Users.Authentication=(new Users.AuthenticationService).ConstructClient();;;HNamespace.Define("Users",{AccountService:HClass.Define("Users.AccountService",{extend:HWebService.Provider,props:{construct:function(){},ConstructClient:function(){var a=new this.AccountPortType;a.oServiceBind=new this.AccountBinding;return a},AccountPort:HClass.Define("AccountPort",{extend:HRest.Client,props:{sNamespace:"http://api.hivext.ru/1.0/users/account/cross/",sLocation:"http://api.hivext.ru/1.0/users/account/cross/",construct:function(){}}}),AccountBinding:HClass.Define("AccountBinding",{extend:AccountPort,props:{aOperationLocation:{ChangeEmail:"changeemail",ChangePassword:"changepassword",ChangeName:"changename",GetUserInfo:"getuserinfo",RecoverPassword:"recoverpassword"},construct:function(){}}}),AccountPortType:HClass.Define("AccountPortType",{props:{oServiceBind:null,construct:function(){},ChangeEmailInput:{appid:"string",session:"string",password:"string",email:"string"},ChangeEmailOutput:{result:"int",error:"string"},ChangePasswordInput:{appid:"string",session:"string",oldPassword:"string",newPassword:"string"},ChangePasswordOutput:{result:"int",error:"string"},ChangeNameInput:{appid:"string",session:"string",password:"string",name:"string"},ChangeNameOutput:{result:"int",error:"string"},GetUserInfoInput:{appid:"string",session:"string"},GetUserInfoOutput:{result:"int",error:"string",uid:"",email:"string",name:"string"},RecoverPasswordInput:{appid:"string",email:"string"},RecoverPasswordOutput:{result:"int",error:"string"},ChangeEmail:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ChangeEmail : binding not found")}var b=d.ConstructUrl("ChangeEmail");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.ChangeEmailInput);var a=this.ChangeEmailOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},ChangePassword:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ChangePassword : binding not found")}var b=d.ConstructUrl("ChangePassword");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.ChangePasswordInput);var a=this.ChangePasswordOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},ChangeName:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ChangeName : binding not found")}var b=d.ConstructUrl("ChangeName");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.ChangeNameInput);var a=this.ChangeNameOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetUserInfo:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetUserInfo : binding not found")}var a=d.ConstructUrl("GetUserInfo");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.GetUserInfoInput);var b=this.GetUserInfoOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},RecoverPassword:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RecoverPassword : binding not found")}var b=d.ConstructUrl("RecoverPassword");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.RecoverPasswordInput);var a=this.RecoverPasswordOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})}}})}})});Users.Account=(new Users.AccountService).ConstructClient();;;HNamespace.Define("Development",{ApplicationsService:HClass.Define("Development.ApplicationsService",{extend:HWebService.Provider,props:{construct:function(){},ConstructClient:function(){var a=new this.ApplicationsPortType;a.oServiceBind=new this.ApplicationsBinding;return a},ApplicationsPort:HClass.Define("ApplicationsPort",{extend:HRest.Client,props:{sNamespace:"http://api.hivext.ru/1.0/development/applications/cross/",sLocation:"http://api.hivext.ru/1.0/development/applications/cross/",construct:function(){}}}),ApplicationsBinding:HClass.Define("ApplicationsBinding",{extend:ApplicationsPort,props:{aOperationLocation:{GenerateApp:"generateapp",DeleteApp:"deleteapp",GetApps:"getapps",ChangeAppInfo:"changeappinfo",GetApp:"getapp",SetAppPermission:"setapppermission",GetAppPermission:"getapppermission",AllowAppAccess:"allowappaccess",GetAppAccess:"getappaccess",RemoveAppAccess:"removeappaccess",CreateAppsPool:"createappspool",DeleteAppsPool:"deleteappspool",GetAppsPools:"getappspools",AddAppToPool:"addapptopool",RemoveAppFromPool:"removeappfrompool",RebuildApp:"rebuildapp",ExportAppPersistance:"exportapppersistance",ExportAppResources:"exportappresources",ImportAppPersistance:"importapppersistance",ImportAppResources:"importappresources",CloneApp:"cloneapp",CreateSolution:"createsolution",DeleteSolution:"deletesolution",GetSolution:"getsolution",GetSolutions:"getsolutions",FindSolutions:"findsolutions",ChangeSolutionInfo:"changesolutioninfo",GetAppHosts:"getapphosts"},construct:function(){}}}),ApplicationsPortType:HClass.Define("ApplicationsPortType",{props:{oServiceBind:null,aTWN:null,aTScript:null,construct:function(){},GenerateAppInput:{appid:"string",session:"string",name:"string",description:"string",domain:"string",config:"string"},GenerateAppOutput:{result:"int",error:"string",appid:"string",date:"int",status:"int"},DeleteAppInput:{appid:"string",session:"string",password:"string",targetAppid:"string"},DeleteAppOutput:{result:"int",error:"string"},GetAppsInput:{appid:"string",session:"string",targetAppid:"string"},GetAppsOutput:{result:"int",error:"string",apps:"array"},ChangeAppInfoInput:{appid:"string",session:"string",targetAppid:"string",field:"string",value:"string"},ChangeAppInfoOutput:{result:"int",error:"string"},GetAppInput:{appid:"string",session:"string",targetAppid:"string"},GetAppOutput:{result:"int",error:"string",name:"string",description:"string",domain:"string",date:"int",status:"int"},SetAppPermissionInput:{appid:"string",session:"string",targetAppid:"string",login:"int",right:"string"},SetAppPermissionOutput:{result:"int",error:"string"},GetAppPermissionInput:{appid:"string",session:"string",targetAppid:"string"},GetAppPermissionOutput:{result:"int",error:"string"},AllowAppAccessInput:{appid:"string",session:"string",targetAppid:"string",allowAppid:"string"},AllowAppAccessOutput:{result:"int",error:"string"},RemoveAppAccessInput:{appid:"string",session:"string",targetAppid:"string",allowAppid:"string"},RemoveAppAccessOutput:{result:"int",error:"string"},GetAppAccessInput:{appid:"string",session:"string",targetAppid:"string"},GetAppAccessOutput:{result:"int",error:"string"},CreateAppsPoolInput:{appid:"string",session:"string",name:"string"},CreateAppsPoolOutput:{result:"int",error:"string"},DeleteAppsPoolInput:{appid:"string",session:"string",name:"string"},DeleteAppsPoolOutput:{result:"int",error:"string"},GetAppsPoolsInput:{appid:"string",session:"string",name:"string"},GetAppsPoolsOutput:{result:"int",error:"string",pools:"array"},AddAppToPoolInput:{appid:"string",session:"string",name:"string",targetAppid:"string"},AddAppToPoolOutput:{result:"int",error:"string"},RemoveAppFromPoolInput:{appid:"string",session:"string",name:"string",targetAppid:"string"},RemoveAppFromPoolOutput:{result:"int",error:"string"},RebuildAppInput:{appid:"string",session:"string",targetAppid:"string"},RebuildAppOutput:{result:"int",error:"string"},ExportAppPersistanceInput:{appid:"string",session:"string",targetAppid:"string"},ExportAppPersistanceOutput:{result:"int",error:"string",path:"string"},ImportAppPersistanceInput:{appid:"string",session:"string",path:"string",targetAppid:"string"},ImportAppPersistanceOutput:{result:"int",error:"string"},ExportAppResourcesInput:{appid:"string",session:"string",targetAppid:"string"},ExportAppResourcesOutput:{result:"int",error:"string",path:"string"},ImportAppResourcesInput:{appid:"string",session:"string",path:"string",targetAppid:"string"},ImportAppResourcesOutput:{result:"int",error:"string"},CloneAppInput:{appid:"string",session:"string",targetAppid:"string"},CloneAppOutput:{result:"int",error:"string"},CreateSolutionInput:{appid:"string",session:"string",targetAppid:"string",clonable:"boolean"},CreateSolutionOutput:{result:"int",error:"string"},DeleteSolutionInput:{appid:"string",session:"string",targetAppid:"string"},DeleteSolutionOutput:{result:"int",error:"string"},GetSolutionInput:{appid:"string",session:"string",targetAppid:"string"},GetSolutionOutput:{result:"int",error:"string",name:"string",description:"string",domain:"string",date:"int",status:"int"},GetSolutionsInput:{appid:"string",session:"string",targetAppid:"string"},GetSolutionsOutput:{result:"int",error:"string",apps:"array"},FindSolutionsInput:{appid:"string",session:"string",keywords:"string",description:"string",from:"int",count:"int"},FindSolutionsOutput:{result:"int",error:"string",apps:"array"},ChangeSolutionInfoInput:{appid:"string",session:"string",targetAppid:"string",field:"string",value:"string"},ChangeSolutionInfoOutput:{result:"int",error:"string"},GetAppHostsInput:{appid:"string"},GetAppHostsOutput:{result:"int",error:"string"},GenerateApp:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GenerateApp : binding not found")}var b=d.ConstructUrl("GenerateApp");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GenerateAppInput);var a=this.GenerateAppOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},DeleteApp:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : DeleteApp : binding not found")}var a=d.ConstructUrl("DeleteApp");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.DeleteAppInput);var b=this.DeleteAppOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},GetApps:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetApps : binding not found")}var a=d.ConstructUrl("GetApps");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.GetAppsInput);var b=this.GetAppsOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},ChangeAppInfo:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ChangeAppInfo : binding not found")}var b=d.ConstructUrl("ChangeAppInfo");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.ChangeAppInfoInput);var a=this.ChangeAppInfoOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetApp:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetApp : binding not found")}var a=d.ConstructUrl("GetApp");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.GetAppInput);var b=this.GetAppOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},SetAppPermission:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : SetAppPermission : binding not found")}var b=d.ConstructUrl("SetAppPermission");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.SetAppPermissionInput);var a=this.SetAppPermissionOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetAppPermission:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetAppPermission : binding not found")}var b=d.ConstructUrl("GetAppPermission");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetAppPermissionInput);var a=this.GetAppPermissionOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},AllowAppAccess:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : AllowAppAccess : binding not found")}var a=d.ConstructUrl("AllowAppAccess");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.AllowAppAccessInput);var b=this.AllowAppAccessOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},CreateAppsPool:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : CreateAppsPool : binding not found")}var a=d.ConstructUrl("CreateAppsPool");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.CreateAppsPoolInput);var b=this.CreateAppsPoolOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},DeleteAppsPool:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : DeleteAppsPool : binding not found")}var b=d.ConstructUrl("DeleteAppsPool");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.DeleteAppsPoolInput);var a=this.DeleteAppsPoolOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetAppsPools:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetAppsPools : binding not found")}var b=d.ConstructUrl("GetAppsPools");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetAppsPoolsInput);var a=this.GetAppsPoolsOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},AddAppToPool:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : AddAppToPool : binding not found")}var a=d.ConstructUrl("AddAppToPool");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.AddAppToPoolInput);var b=this.AddAppToPoolOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},RemoveAppFromPool:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RemoveAppFromPool : binding not found")}var a=d.ConstructUrl("RemoveAppFromPool");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.RemoveAppFromPoolInput);var b=this.RemoveAppFromPoolOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},RebuildApp:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RebuildApp : binding not found")}var a=d.ConstructUrl("RebuildApp");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.RebuildAppInput);var b=this.RebuildAppOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},RemoveAppAccess:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RemoveAppAccess : binding not found")}var b=d.ConstructUrl("RemoveAppAccess");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.RemoveAppAccessInput);var a=this.RemoveAppAccessOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetAppAccess:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetAppAccess : binding not found")}var a=d.ConstructUrl("GetAppAccess");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.GetAppAccessInput);var b=this.GetAppAccessOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},ExportAppPersistance:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ExportAppPersistance : binding not found")}var a=d.ConstructUrl("ExportAppPersistance");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.ExportAppPersistanceInput);var b=this.ExportAppPersistanceOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},ImportAppPersistance:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ImportAppPersistance : binding not found")}var a=d.ConstructUrl("ImportAppPersistance");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.ImportAppPersistanceInput);var b=this.ImportAppPersistanceOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},ExportAppResources:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ExportAppResources : binding not found")}var a=d.ConstructUrl("ExportAppResources");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.ExportAppResourcesInput);var b=this.ExportAppResourcesOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},ImportAppResources:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ImportAppResources : binding not found")}var a=d.ConstructUrl("ImportAppResources");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.ImportAppResourcesInput);var b=this.ImportAppResourcesOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},CloneApp:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : CloneApp : binding not found")}var b=d.ConstructUrl("CloneApp");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.CloneAppInput);var a=this.CloneAppOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},CreateSolution:function(){var c=this.oServiceBind;if(!c){throw Error("Method name : CreateSolution : binding not found")}var a=c.ConstructUrl("CreateSolution");var b=HWebService.Client.FindCallback(arguments);a+="?"+c.ConstructRequest(arguments,this.CreateSolutionInput);(new HNet.ScriptRequest()).Get(a,function(d){if(b){b(d)}})},DeleteSolution:function(){var c=this.oServiceBind;if(!c){throw Error("Method name : DeleteSolution : binding not found")}var a=c.ConstructUrl("DeleteSolution");var b=HWebService.Client.FindCallback(arguments);a+="?"+c.ConstructRequest(arguments,this.DeleteSolutionInput);(new HNet.ScriptRequest()).Get(a,function(d){if(b){b(d)}})},GetSolution:function(){var c=this.oServiceBind;if(!c){throw Error("Method name : GetSolution : binding not found")}var a=c.ConstructUrl("GetSolution");var b=HWebService.Client.FindCallback(arguments);a+="?"+c.ConstructRequest(arguments,this.GetSolutionInput);(new HNet.ScriptRequest()).Get(a,function(d){if(b){b(d)}})},GetSolutions:function(){var c=this.oServiceBind;if(!c){throw Error("Method name : GetSolutions : binding not found")}var a=c.ConstructUrl("GetSolutions");var b=HWebService.Client.FindCallback(arguments);a+="?"+c.ConstructRequest(arguments,this.GetSolutionsInput);(new HNet.ScriptRequest()).Get(a,function(d){if(b){b(d)}})},FindSolutions:function(){var c=this.oServiceBind;if(!c){throw Error("Method name : FindSolutions : binding not found")}var a=c.ConstructUrl("FindSolutions");var b=HWebService.Client.FindCallback(arguments);a+="?"+c.ConstructRequest(arguments,this.FindSolutionsInput);(new HNet.ScriptRequest()).Get(a,function(d){if(b){b(d)}})},ChangeSolutionInfo:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ChangeSolutionInfo : binding not found")}var b=d.ConstructUrl("ChangeSolutionInfo");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.ChangeSolutionInfoInput);var a=this.ChangeSolutionInfoOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetAppHosts:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetAppHosts : binding not found")}var b=d.ConstructUrl("GetAppHosts");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetAppHostsInput);var a=this.GetAppHostsOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})}}})}})});Development.Applications=(new Development.ApplicationsService).ConstructClient();;;HNamespace.Define("Development",{ScriptingService:HClass.Define("Development.ScriptingService",{extend:HWebService.Provider,props:{construct:function(){},ConstructClient:function(){var a=new this.ScriptingPortType;a.oServiceBind=new this.ScriptingBinding;return a},ScriptingPort:HClass.Define("ScriptingPort",{extend:HRest.Client,props:{sNamespace:"http://api.hivext.ru/1.0/development/scripting/cross/",sLocation:"http://api.hivext.ru/1.0/development/scripting/cross/",construct:function(){}}}),ScriptingBinding:HClass.Define("ScriptingBinding",{extend:ScriptingPort,props:{aOperationLocation:{CreateScript:"createscript",DeleteScript:"deletescript",GetScripts:"getscripts",GetScript:"getscript",ChangeScript:"changescript",GetEngineInfo:"getengineinfo",Build:"build",Eval:"eval",EvalCode:"evalcode"},construct:function(){}}}),ScriptingPortType:HClass.Define("ScriptingPortType",{props:{oServiceBind:null,construct:function(){},CreateScriptInput:{appid:"string",session:"string",name:"string",type:"string",code:"string"},CreateScriptOutput:{result:"int",error:"string"},DeleteScriptInput:{appid:"string",session:"string",name:"string"},DeleteScriptOutput:{result:"int",error:"string"},GetScriptsInput:{appid:"string",session:"string",type:"string",from:"int",count:"int"},GetScriptsOutput:{result:"int",error:"string",scripts:"array"},GetScriptInput:{appid:"string",session:"string",name:"string"},GetScriptOutput:{result:"int",error:"string"},ChangeScriptInput:{appid:"string",session:"string",name:"string",field:"string",value:"string"},ChangeScriptOutput:{result:"int",error:"string"},GetEngineInfoInput:{appid:"string",session:"string",type:"string"},GetEngineInfoOutput:{result:"int",error:"string"},BuildInput:{appid:"string",session:"string",script:"string"},BuildOutput:{result:"int",error:"string"},EvalInput:{appid:"string",session:"string",script:"string",params:"string"},EvalOutput:{result:"int",error:"string"},EvalCodeInput:{appid:"string",session:"string",code:"string",type:"string",params:"string"},EvalCodeOutput:{result:"int",error:"string"},CreateScript:function(){var e=this.oServiceBind;if(!e){throw Error("Method name : CreateScript : binding not found")}var b=e.ConstructUrl("CreateScript");var d=HWebService.Client.FindCallback(arguments);var a=e.ConstructParams(arguments,this.CreateScriptInput);var c=this.CreateScriptOutput;(new HNet.WNTransport()).Post(b,a,function(f){var g=e.ConstructResponse(f,c);if(d){d(g)}})},DeleteScript:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : DeleteScript : binding not found")}var a=d.ConstructUrl("DeleteScript");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.DeleteScriptInput);var b=this.DeleteScriptOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},GetScripts:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetScripts : binding not found")}var b=d.ConstructUrl("GetScripts");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetScriptsInput);var a=this.GetScriptsOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetScript:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetScript : binding not found")}var b=d.ConstructUrl("GetScript");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetScriptInput);var a=this.GetScriptOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},ChangeScript:function(){var e=this.oServiceBind;if(!e){throw Error("Method name : ChangeScript : binding not found")}var c=e.ConstructUrl("ChangeScript");var d=HWebService.Client.FindCallback(arguments);var a=e.ConstructParams(arguments,this.ChangeScriptInput);var b=this.ChangeScriptOutput;(new HNet.WNTransport()).Post(c,a,function(f){var g=e.ConstructResponse(f,b);if(d){d(g)}})},GetEngineInfo:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetEngineInfo : binding not found")}var a=d.ConstructUrl("GetEngineInfo");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.GetEngineInfoInput);var b=this.GetEngineInfoOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},Build:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : Build : binding not found")}var b=d.ConstructUrl("Build");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.BuildInput);var a=this.BuildOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},Eval:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : Eval : binding not found")}var b=d.ConstructUrl("Eval");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.EvalInput);var a=this.EvalOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},EvalCode:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : EvalCode : binding not found")}var a=d.ConstructUrl("EvalCode");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.EvalCodeInput);var b=this.EvalCodeOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})}}})}})});Development.Scripting=(new Development.ScriptingService).ConstructClient();;;HNamespace.Define("Data",{BaseService:HClass.Define("Data.BaseService",{extend:HWebService.Provider,props:{construct:function(){},ConstructClient:function(){var a=new this.BasePortType;a.oServiceBind=new this.BaseBinding;return a},BasePort:HClass.Define("BasePort",{extend:HRest.Client,props:{sNamespace:"http://api.hivext.ru/1.0/data/base/cross/",sLocation:"http://api.hivext.ru/1.0/data/base/cross/",construct:function(){}}}),BaseBinding:HClass.Define("BaseBinding",{extend:BasePort,props:{aOperationLocation:{DefineType:"definetype",UndefineType:"undefinetype",RenameType:"renametype",AddField:"addfield",RemoveField:"removefield",RenameField:"renamefield",GetType:"gettype",GetTypes:"gettypes",GetTypesCount:"gettypescount",SetUniqueFields:"setuniquefields",GetUniqueFields:"getuniquefields",CreateObject:"createobject",CreateObjects:"createobjects",DeleteObject:"deleteobject",DeleteObjectsByCriteria:"deleteobjectsbycriteria",GetObject:"getobject",GetObjects:"getobjects",GetObjectsByCriteria:"getobjectsbycriteria",GetObjectsCount:"getobjectscount",SetObject:"setobject",SetObjects:"setobjects",SetProperty:"setproperty",GetProperty:"getproperty"},construct:function(){}}}),BasePortType:HClass.Define("BasePortType",{props:{oServiceBind:null,construct:function(){},DefineTypeInput:{appid:"string",session:"string",type:"string",fields:"string",unique:"string"},DefineTypeOutput:{result:"int",error:"string"},UndefineTypeInput:{appid:"string",session:"string",type:"string"},UndefineTypeOutput:{result:"int",error:"string"},RenameTypeInput:{appid:"string",session:"string",oldType:"string",newType:"string"},RenameTypeOutput:{result:"int",error:"string"},AddFieldInput:{appid:"string",session:"string",type:"string",field:"string",fieldType:"string"},AddFieldOutput:{result:"int",error:"string"},RemoveFieldInput:{appid:"string",session:"string",type:"string",field:"string"},RemoveFieldOutput:{result:"int",error:"string"},RenameFieldInput:{appid:"string",session:"string",type:"string",oldField:"string",newField:"string"},RenameFieldOutput:{result:"int",error:"string"},SetUniqueFieldsInput:{appid:"string",session:"string",type:"string",unique:"string"},SetUniqueFieldsOutput:{result:"int",error:"string"},GetUniqueFieldsInput:{appid:"string",session:"string",type:"string"},GetUniqueFieldsOutput:{result:"int",error:"string",unique:"string"},GetTypesInput:{appid:"string",session:"string",from:"int",count:"int"},GetTypesOutput:{result:"int",error:"string",types:"string"},GetTypesCountInput:{appid:"string",session:"string"},GetTypesCountOutput:{result:"int",error:"string",count:"int"},GetTypeInput:{appid:"string",session:"string",type:"string"},GetTypeOutput:{result:"int",error:"string",type:"string"},CreateObjectInput:{appid:"string",session:"string",type:"string",data:"string"},CreateObjectOutput:{result:"int",error:"string",id:"int"},CreateObjectsInput:{appid:"string",session:"string",type:"string",data:"string"},CreateObjectsOutput:{result:"int",error:"string"},DeleteObjectInput:{appid:"string",session:"string",type:"string",id:"int"},DeleteObjectOutput:{result:"int",error:"string"},GetObjectInput:{appid:"string",session:"string",type:"string",id:"int",join:"string"},GetObjectOutput:{result:"int",error:"string",object:"string"},GetObjectsInput:{appid:"string",session:"string",type:"string",from:"int",count:"int",join:"string"},GetObjectsOutput:{result:"int",error:"string",objects:"string"},GetObjectsByCriteriaInput:{appid:"string",session:"string",type:"string",criteria:"string",from:"int",count:"int",join:"string",projection:"string"},GetObjectsByCriteriaOutput:{result:"int",error:"string",objects:"string"},SetPropertyInput:{appid:"string",session:"string",type:"string",id:"int",property:"string",value:"string"},SetPropertyOutput:{result:"int",error:"string"},GetPropertyInput:{appid:"string",session:"string",type:"string",id:"int",property:"string",join:"string"},GetPropertyOutput:{result:"int",error:"string",value:"string"},GetObjectsCountInput:{appid:"string",session:"string",type:"string",criteria:"string"},GetObjectsCountOutput:{result:"int",error:"string",count:"int"},SetObjectInput:{appid:"string",session:"string",type:"string",id:"string",data:"string"},SetObjectOutput:{result:"int",error:"string"},SetObjectsInput:{appid:"string",session:"string",type:"string",data:"string"},SetObjectsOutput:{result:"int",error:"string"},DeleteObjectsByCriteriaInput:{appid:"string",session:"string",type:"string",criteria:"string"},DeleteObjectsByCriteriaOutput:{result:"int",error:"string",count:"int"},DefineType:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : DefineType : binding not found")}var b=d.ConstructUrl("DefineType");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.DefineTypeInput);var a=this.DefineTypeOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},UndefineType:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : UndefineType : binding not found")}var a=d.ConstructUrl("UndefineType");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.UndefineTypeInput);var b=this.UndefineTypeOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},RenameType:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RenameType : binding not found")}var a=d.ConstructUrl("RenameType");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.RenameTypeInput);var b=this.RenameTypeOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},AddField:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : AddField : binding not found")}var b=d.ConstructUrl("AddField");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.AddFieldInput);var a=this.AddFieldOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},RemoveField:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RemoveField : binding not found")}var a=d.ConstructUrl("RemoveField");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.RemoveFieldInput);var b=this.RemoveFieldOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},SetUniqueFields:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : SetUniqueFields : binding not found")}var a=d.ConstructUrl("SetUniqueFields");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.SetUniqueFieldsInput);var b=this.SetUniqueFieldsOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},GetUniqueFields:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetUniqueFields : binding not found")}var b=d.ConstructUrl("GetUniqueFields");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetUniqueFieldsInput);var a=this.GetUniqueFieldsOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetTypes:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetTypes : binding not found")}var a=d.ConstructUrl("GetTypes");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.GetTypesInput);var b=this.GetTypesOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},GetTypesCount:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetTypesCount : binding not found")}var b=d.ConstructUrl("GetTypesCount");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetTypesCountInput);var a=this.GetTypesCountOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetType:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetType : binding not found")}var b=d.ConstructUrl("GetType");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetTypeInput);var a=this.GetTypeOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},CreateObject:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : CreateObject : binding not found")}var b=d.ConstructUrl("CreateObject");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.CreateObjectInput);var a=this.CreateObjectOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},CreateObjects:function(){var e=this.oServiceBind;if(!e){throw Error("Method name : CreateObjects : binding not found")}var c=e.ConstructUrl("CreateObjects");var d=HWebService.Client.FindCallback(arguments);var a=e.ConstructParams(arguments,this.CreateObjectsInput);var b=this.CreateObjectsOutput;(new HNet.WNTransport()).Post(c,a,function(f){var g=e.ConstructResponse(f,b);if(d){d(g)}})},DeleteObject:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : DeleteObject : binding not found")}var b=d.ConstructUrl("DeleteObject");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.DeleteObjectInput);var a=this.DeleteObjectOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetObject:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetObject : binding not found")}var a=d.ConstructUrl("GetObject");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.GetObjectInput);var b=this.GetObjectOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},GetObjects:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetObjects : binding not found")}var b=d.ConstructUrl("GetObjects");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetObjectsInput);var a=this.GetObjectsOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},SetProperty:function(){var e=this.oServiceBind;if(!e){throw Error("Method name : SetProperty : binding not found")}var b=e.ConstructUrl("SetProperty");var d=HWebService.Client.FindCallback(arguments);var a=e.ConstructParams(arguments,this.SetPropertyInput);var c=this.SetPropertyOutput;(new HNet.WNTransport()).Post(b,a,function(f){var g=e.ConstructResponse(f,c);if(d){d(g)}})},GetProperty:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetProperty : binding not found")}var b=d.ConstructUrl("GetProperty");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetPropertyInput);var a=this.GetPropertyOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetObjectsCount:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetObjectsCount : binding not found")}var b=d.ConstructUrl("GetObjectsCount");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetObjectsCountInput);var a=this.GetObjectsCountOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},SetObject:function(){var e=this.oServiceBind;if(!e){throw Error("Method name : SetObject : binding not found")}var b=e.ConstructUrl("SetObject");var d=HWebService.Client.FindCallback(arguments);var a=e.ConstructParams(arguments,this.SetObjectInput);var c=this.SetObjectOutput;(new HNet.WNTransport()).Post(b,a,function(f){var g=e.ConstructResponse(f,c);if(d){d(g)}})},SetObjects:function(){var e=this.oServiceBind;if(!e){throw Error("Method name : SetObjects : binding not found")}var b=e.ConstructUrl("SetObjects");var d=HWebService.Client.FindCallback(arguments);var a=e.ConstructParams(arguments,this.SetObjectsInput);var c=this.SetObjectsOutput;(new HNet.WNTransport()).Post(b,a,function(f){var g=e.ConstructResponse(f,c);if(d){d(g)}})},GetObjectsByCriteria:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetObjectsByCriteria : binding not found")}var b=d.ConstructUrl("GetObjectsByCriteria");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetObjectsByCriteriaInput);var a=this.GetObjectsByCriteriaOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},RenameField:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RenameField : binding not found")}var a=d.ConstructUrl("RenameField");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.RenameFieldInput);var b=this.RenameFieldOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},DeleteObjectsByCriteria:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : DeleteObjectsByCriteria : binding not found")}var b=d.ConstructUrl("DeleteObjectsByCriteria");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.DeleteObjectsByCriteriaInput);var a=this.DeleteObjectsByCriteriaOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})}}})}})});Data.Base=(new Data.BaseService).ConstructClient();;;HNamespace.Define("Security",{AccessControlService:HClass.Define("Security.AccessControlService",{extend:HWebService.Provider,props:{construct:function(){},ConstructClient:function(){var a=new this.AccessControlPortType;a.oServiceBind=new this.AccessControlBinding;return a},AccessControlPort:HClass.Define("AccessControlPort",{extend:HRest.Client,props:{sNamespace:"http://api.hivext.ru/1.0/security/accesscontrol/cross/",sLocation:"http://api.hivext.ru/1.0/security/accesscontrol/cross/",construct:function(){}}}),AccessControlBinding:HClass.Define("AccessControlBinding",{extend:AccessControlPort,props:{aOperationLocation:{CreateRole:"createrole",DeleteRole:"deleterole",GetRoles:"getroles",AddPolicy:"addpolicy",RemovePolicy:"removepolicy",GetPolicy:"getpolicy",ApplyRole:"applyrole",RemoveRole:"removerole",GetRolesBySubject:"getrolesbysubject",GetSubjectsByRole:"getsubjectsbyrole",GetRolesByObject:"getrolesbyobject",GetObjectsByRole:"getobjectsbyrole",SetRights:"setrights",GetRights:"getrights",GetRightsBySubject:"getrightsbysubject",GetRightsByObject:"getrightsbyobject",RemoveRights:"removerights",RemoveRightsBySubject:"removerightsbysubject",RemoveRightsByObject:"removerightsbyobject",CheckRights:"checkrights"},construct:function(){}}}),AccessControlPortType:HClass.Define("AccessControlPortType",{props:{oServiceBind:null,construct:function(){},CreateRoleInput:{appid:"string",session:"string",role:"string"},CreateRoleOutput:{result:"int",error:"string"},DeleteRoleInput:{appid:"string",session:"string",role:"string"},DeleteRoleOutput:{result:"int",error:"string"},GetRolesInput:{appid:"string",session:"string"},GetRolesOutput:{result:"int",error:"string",roles:"array"},AddPolicyInput:{appid:"string",session:"string",role:"string",object:"string",rights:"string"},AddPolicyOutput:{result:"int",error:"string"},RemovePolicyInput:{appid:"string",session:"string",role:"string",object:"string"},RemovePolicyOutput:{result:"int",error:"string"},GetPolicyInput:{appid:"string",session:"string",role:"string",object:"string"},GetPolicyOutput:{result:"int",error:"string"},ApplyRoleInput:{appid:"string",session:"string",role:"string",subject:"string"},ApplyRoleOutput:{result:"int",error:"string"},RemoveRoleInput:{appid:"string",session:"string",role:"string",subject:"string"},RemoveRoleOutput:{result:"int",error:"string"},GetRolesBySubjectInput:{appid:"string",session:"string",subject:"string"},GetRolesBySubjectOutput:{result:"int",error:"string",roles:"array"},GetSubjectsByRoleInput:{appid:"string",session:"string",role:"string"},GetSubjectsByRoleOutput:{result:"int",error:"string",subjects:"array"},GetRolesByObjectInput:{appid:"string",session:"string",object:"string"},GetRolesByObjectOutput:{result:"int",error:"string",roles:"array"},GetObjectsByRoleInput:{appid:"string",session:"string",role:"string"},GetObjectsByRoleOutput:{result:"int",error:"string",objects:"array"},SetRightsInput:{appid:"string",session:"string",subject:"string",object:"string",rights:"string"},SetRightsOutput:{result:"int",error:"string"},GetRightsInput:{appid:"string",session:"string",subject:"string",object:"string"},GetRightsOutput:{result:"int",error:"string",rights:"string"},GetRightsBySubjectInput:{appid:"string",session:"string",subject:"string"},GetRightsBySubjectOutput:{result:"int",error:"string",rights:"string"},GetRightsByObjectInput:{appid:"string",session:"string",object:"string"},GetRightsByObjectOutput:{result:"int",error:"string",rights:"string"},RemoveRightsInput:{appid:"string",session:"string",subject:"string",object:"string"},RemoveRightsOutput:{result:"int",error:"string"},RemoveRightsBySubjectInput:{appid:"string",session:"string",subject:"string"},RemoveRightsBySubjectOutput:{result:"int",error:"string"},RemoveRightsByObjectInput:{appid:"string",session:"string",object:"string"},RemoveRightsByObjectOutput:{result:"int",error:"string"},CheckRightsInput:{appid:"string",session:"string",subject:"string",object:"string",rights:"string"},CheckRightsOutput:{result:"int",error:"string",right:"boolean"},CreateRole:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : CreateRole : binding not found")}var b=d.ConstructUrl("CreateRole");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.CreateRoleInput);var a=this.CreateRoleOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},DeleteRole:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : DeleteRole : binding not found")}var b=d.ConstructUrl("DeleteRole");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.DeleteRoleInput);var a=this.DeleteRoleOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetRoles:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetRoles : binding not found")}var a=d.ConstructUrl("GetRoles");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.GetRolesInput);var b=this.GetRolesOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},AddPolicy:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : AddPolicy : binding not found")}var b=d.ConstructUrl("AddPolicy");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.AddPolicyInput);var a=this.AddPolicyOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},RemovePolicy:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RemovePolicy : binding not found")}var a=d.ConstructUrl("RemovePolicy");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.RemovePolicyInput);var b=this.RemovePolicyOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},GetPolicy:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetPolicy : binding not found")}var b=d.ConstructUrl("GetPolicy");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetPolicyInput);var a=this.GetPolicyOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},ApplyRole:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : ApplyRole : binding not found")}var a=d.ConstructUrl("ApplyRole");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.ApplyRoleInput);var b=this.ApplyRoleOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},RemoveRole:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RemoveRole : binding not found")}var b=d.ConstructUrl("RemoveRole");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.RemoveRoleInput);var a=this.RemoveRoleOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetRolesBySubject:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetRolesBySubject : binding not found")}var b=d.ConstructUrl("GetRolesBySubject");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetRolesBySubjectInput);var a=this.GetRolesBySubjectOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetSubjectsByRole:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetSubjectsByRole : binding not found")}var b=d.ConstructUrl("GetSubjectsByRole");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetSubjectsByRoleInput);var a=this.GetSubjectsByRoleOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetRolesByObject:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetRolesByObject : binding not found")}var b=d.ConstructUrl("GetRolesByObject");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetRolesByObjectInput);var a=this.GetRolesByObjectOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetObjectsByRole:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetObjectsByRole : binding not found")}var b=d.ConstructUrl("GetObjectsByRole");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetObjectsByRoleInput);var a=this.GetObjectsByRoleOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},SetRights:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : SetRights : binding not found")}var a=d.ConstructUrl("SetRights");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.SetRightsInput);var b=this.SetRightsOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},RemoveRights:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RemoveRights : binding not found")}var b=d.ConstructUrl("RemoveRights");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.RemoveRightsInput);var a=this.RemoveRightsOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetRights:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetRights : binding not found")}var a=d.ConstructUrl("GetRights");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.GetRightsInput);var b=this.GetRightsOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},GetRightsBySubject:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetRightsBySubject : binding not found")}var a=d.ConstructUrl("GetRightsBySubject");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.GetRightsBySubjectInput);var b=this.GetRightsBySubjectOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},GetRightsByObject:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetRightsByObject : binding not found")}var b=d.ConstructUrl("GetRightsByObject");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetRightsByObjectInput);var a=this.GetRightsByObjectOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},RemoveRightsBySubject:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RemoveRightsBySubject : binding not found")}var b=d.ConstructUrl("RemoveRightsBySubject");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.RemoveRightsBySubjectInput);var a=this.RemoveRightsBySubjectOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},RemoveRightsByObject:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RemoveRightsByObject : binding not found")}var b=d.ConstructUrl("RemoveRightsByObject");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.RemoveRightsByObjectInput);var a=this.RemoveRightsByObjectOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},CheckRights:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : CheckRights : binding not found")}var a=d.ConstructUrl("CheckRights");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.CheckRightsInput);var b=this.CheckRightsOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})}}})}})});Security.AccessControl=(new Security.AccessControlService).ConstructClient();;;HNamespace.Define("Storage",{UploaderService:HClass.Define("Storage.UploaderService",{extend:HWebService.Provider,props:{construct:function(){},ConstructClient:function(){var a=new this.UploaderPortType;a.oServiceBind=new this.UploaderBinding;return a},UploaderPort:HClass.Define("UploaderPort",{extend:HRest.Client,props:{sNamespace:"http://api.hivext.ru/1.0/storage/uploader/cross/",sLocation:"http://api.hivext.ru/1.0/storage/uploader/cross/",construct:function(){}}}),UploaderBinding:HClass.Define("UploaderBinding",{extend:UploaderPort,props:{aOperationLocation:{Upload:"upload",Progress:"progress",Abort:"abort"},construct:function(){}}}),UploaderPortType:HClass.Define("UploaderPortType",{props:{oServiceBind:null,aTWN:null,aTScript:null,construct:function(){this.aTWN=[];this.aTScript=[]},UploadInput:{appid:"string",fid:"string",file:"file"},UploadOutput:{result:"int",error:"string",file:"string"},ProgressInput:{appid:"string",fid:"string"},ProgressOutput:{result:"int",error:"string",fid:"string",current:"int",total:"int",time:"int",speed:"int"},AbortInput:{fid:"string"},Upload:function(){var k=this.oServiceBind;if(!k){throw Error("Method name : Upload : binding not found")}var b=k.ConstructUrl("Upload");var e=HWebService.Client.FindCallback(arguments);var i=k.ConstructParams(arguments,this.UploadInput);var c=document.createElement("form");c.encoding=c.enctype="multipart/form-data";var h;for(var a in i){var d=i[a];if(d.type&&d.type=="file"){h=d;if(h.parentNode){d=d.cloneNode(this);d.onchange=h.onchange;h.parentNode.replaceChild(d,h)}h.name=a}else{h=document.createElement("input");h.name=a;h.value=d}c.appendChild(h)}var g=this.UploadOutput;var f=this,j=new HNet.WNTransport();this.aTWN[i.fid+""]=j;j.Post(b,c,function(l){delete f.aTWN[i.fid+""];var m=k.ConstructResponse(l,g);if(e){e(m)}})},Progress:function(){var g=this.oServiceBind;if(!g){throw Error("Method name : Progress : binding not found")}var d=g.ConstructUrl("Progress");var f=HWebService.Client.FindCallback(arguments);var a=g.ConstructParams(arguments,this.ProgressInput);var b=g.ConstructRequest(arguments,this.ProgressInput);d+="?"+b;var c=this,e=new HNet.ScriptRequest();this.aTScript[a.fid+""]=e;e.Get(d,function(h){delete c.aTScript[a.fid+""];if(f){f(h)}})},Abort:function(){var c=this.oServiceBind;if(!c){throw Error("Method name : Abort : binding not found")}var b=HWebService.Client.FindCallback(arguments);var a=c.ConstructParams(arguments,this.AbortInput);if(this.aTWN[a.fid+""]){this.aTWN[a.fid+""].Abort();delete this.aTWN[a.fid+""]}if(this.aTScript[a.fid+""]){this.aTScript[a.fid+""].Abort();delete this.aTScript[a.fid+""]}}}})}})});Storage.Uploader=(new Storage.UploaderService).ConstructClient();;;var GBatchHttpSwitcher=false;HNamespace.Define("Utils",{BatchService:HClass.Define("Utils.BatchService",{extend:HWebService.Provider,props:{construct:function(){},ConstructClient:function(){var a=new this.BatchPortType;a.oServiceBind=new this.BatchBinding;return a},BatchPort:HClass.Define("BatchPort",{extend:HRest.Client,props:{sNamespace:"http://api.hivext.ru/1.0/utils/batch/cross/",sLocation:"http://api.hivext.ru/1.0/utils/batch/cross/",construct:function(){}}}),BatchBinding:HClass.Define("BatchBinding",{extend:BatchPort,props:{aOperationLocation:{Call:"call"},construct:function(){}}}),BatchPortType:HClass.Define("BatchPortType",{props:{oServiceBind:null,construct:function(){},CallInput:{appid:"string",request:"string",sync:"boolean"},CallOutput:{result:"int",error:"string",response:"string"},Call:function(){var f=this.oServiceBind;if(!f){throw Error("Method name : Call : binding not found")}var d=f.ConstructUrl("Call");var e=HWebService.Client.FindCallback(arguments);if(GBatchHttpSwitcher){d+="?"+f.ConstructRequest(arguments,this.CallInput);var c=this.CallInput;(new HNet.ScriptRequest()).Get(d,function(g){if(e){e(g)}})}else{var b=f.ConstructParams(arguments,this.CallInput);var a=this.CallOutput;(new HNet.WNTransport()).Post(d,b,function(g){var h=f.ConstructResponse(g,a);if(e){e(h)}})}}}})}})});Utils.Batch=(new Utils.BatchService).ConstructClient();;;HNamespace.Define("Utils",{SchedulerService:HClass.Define("Utils.SchedulerService",{extend:HWebService.Provider,props:{construct:function(){},ConstructClient:function(){var a=new this.SchedulerPortType;a.oServiceBind=new this.SchedulerBinding;return a},SchedulerPort:HClass.Define("SchedulerPort",{extend:HRest.Client,props:{sNamespace:"http://api.hivext.ru/1.0/utils/scheduler/cross/",sLocation:"http://api.hivext.ru/1.0/utils/scheduler/cross/",construct:function(){}}}),SchedulerBinding:HClass.Define("SchedulerBinding",{extend:SchedulerPort,props:{aOperationLocation:{AddTask:"addtask",GetTask:"gettask",GetTasks:"gettasks",RemoveTask:"removetask",RemoveTasks:"removetasks"},construct:function(){}}}),SchedulerPortType:HClass.Define("SchedulerPortType",{props:{oServiceBind:null,construct:function(){},AddTaskInput:{appid:"string",session:"string",script:"string",trigger:"string",description:"string",params:"string"},AddTaskOutput:{result:"int",error:"string"},GetTaskInput:{appid:"string",session:"string",id:"string"},GetTaskOutput:{result:"int",error:"string"},GetTasksInput:{appid:"string",session:"string"},GetTasksOutput:{result:"int",error:"string"},RemoveTaskInput:{appid:"string",session:"string",id:"string"},RemoveTaskOutput:{result:"int",error:"string"},RemoveTasksInput:{appid:"string",session:"string"},RemoveTasksOutput:{result:"int",error:"string"},AddTask:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : AddTask : binding not found")}var b=d.ConstructUrl("AddTask");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.AddTaskInput);var a=this.AddTaskOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetTask:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetTask : binding not found")}var b=d.ConstructUrl("GetTask");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetTaskInput);var a=this.GetTaskOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},GetTasks:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : GetTasks : binding not found")}var b=d.ConstructUrl("GetTasks");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.GetTasksInput);var a=this.GetTasksOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})},RemoveTask:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RemoveTask : binding not found")}var a=d.ConstructUrl("RemoveTask");var c=HWebService.Client.FindCallback(arguments);a+="?"+d.ConstructRequest(arguments,this.RemoveTaskInput);var b=this.RemoveTaskOutput;(new HNet.ScriptRequest()).Get(a,function(e){if(c){c(e)}})},RemoveTasks:function(){var d=this.oServiceBind;if(!d){throw Error("Method name : RemoveTasks : binding not found")}var b=d.ConstructUrl("RemoveTasks");var c=HWebService.Client.FindCallback(arguments);b+="?"+d.ConstructRequest(arguments,this.RemoveTasksInput);var a=this.RemoveTasksOutput;(new HNet.ScriptRequest()).Get(b,function(e){if(c){c(e)}})}}})}})});Utils.Scheduler=(new Utils.SchedulerService).ConstructClient();;;var HttpRequest={get:function(b,f,h){b+="?charset="+(document.charset||document.characterSet);var c=true,d="sid"+parseInt(Math.random()*1000000),e="cb=HttpRequest.callback."+d,g=document.createElement("script");g.type="text/javascript";g.charset="utf-8";if(f){if(typeof f=="string"){b+="&"+f}else{var i="";b+="&";for(var a in f){b+=i+a+"="+f[a];i="&"}}}if(b.indexOf("?")==-1){g.src=b+"?"+e}else{if(b.match(/\?[\w\d]+/)){g.src=b+"&"+e}else{g.src=b+e}}HttpRequest.callback[d]=function(j){c=false;h(j)};g.onerror=g.onload=g.onreadystatechange=function(){if(!this.loaded&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){this.loaded=1;this.onerror=this.onload=this.onreadystatechange=null;if(c){h(false)}else{}this.parentNode.removeChild(this);delete g;delete HttpRequest.callback[d]}};if(document.getElementsByTagName("head").length){document.getElementsByTagName("head")[0].appendChild(g)}else{document.appendChild(g)}},post:function(b,f,l){b+="?charset="+(document.charset||document.characterSet);function h(n){var m=document.body;var o=document.createElement("div");o.innerHTML=n.join?n.join(""):n;while(o.childNodes.length>0){m.appendChild(o.childNodes[0])}return m.lastChild}var c,i,k=document,e="fid"+parseInt(Math.random()*1000000),g='<iframe style="display:none" onload="HttpRequest._onLoad(this)" src="javascript:true" id="'+e+'" name="'+e+'"></iframe>';var d=h(g);HttpRequest.callback[e]=l;if(f){if(f.nodeType){c=f}else{c=document.createElement("form");for(var a in f){var j=f[a];i=document.createElement("textarea");i.name=a;i.value=j;c.appendChild(i)}}if(c){c.method="post";c.action=b;c.target=e;c.style.display="none";document.body.appendChild(c);c.submit();c.parentNode.removeChild(c)}}else{d.src=b;if(d.contentWindow){d.contentWindow.location.replace(b)}}},formPost:function(a,b){this.post(a.action,a,b)},callback:{},_getData:function(frame){if(frame.abort){return}var callback=HttpRequest.callback[frame.id];if(callback){try{callback(eval("("+frame.contentWindow.name+")"))}catch(ex){}delete HttpRequest.callback[frame.id]}setTimeout(function(){frame.parentNode.removeChild(frame)},0)},_onLoad:function(c){var d="about:blank",b=c.contentWindow;try{if(!c.state&&(b.location==d||b.location=="javascript:true")){return}}catch(a){}if(c.state){return this._getData(c)}else{b.location=d}c.state=1}};function FormatParams(a){if(a.nodeType){var c=a;a={};function b(f){for(var d=0;d<f.childNodes.length;d++){var e=f.childNodes[d];if(e.childNodes&&e.childNodes.length){b(e)}if(e.name&&e.value){a[e.name]=e.value}}}b(c)}if(a.password){a.password="**************"}if(a.oldPassword){a.oldPassword="**************"}if(a.newPassword){a.newPassword="**************"}return toSourceHtml(a)}function FormatBatch(sUrl,oParams,oResponse){if(sUrl.indexOf("batch/cross/call")!=-1){var oRequest=eval("("+oParams.request+")");oResponse=oResponse.response;for(var i=0;i<oRequest.methods.length;i++){oParams=oRequest.global;for(sUrl in oRequest.methods[i]){Ext.apply(oParams,oRequest.methods[i][sUrl]);if(oRequest.alias&&oRequest.alias[sUrl]){sUrl=oRequest.alias[sUrl]}}GOutPlatform.AddRecord({method:"BATCH",address:sUrl,time:oResponse[i].debug&&oResponse[i].debug.time?oResponse[i].debug.time:"-",cpu:oResponse[i].debug&&oResponse[i].debug.cpu&&oResponse[i].debug.cpu.time?oResponse[i].debug.cpu.time:"-",result:oResponse[i].result,error:oResponse[i].error||"Success",params:FormatParams(oParams),out:FormatParams(oResponse[i])})}}}var HTransport=(function(){var d={};d[GAPPID]=GAPI.GetPlatformPath();function c(e){var f={sPlatformLocation:"",sServiceLocation:""};e.replace(/(.*\/[\d.]*\/)(.*)/i,function(){f={sPlatformLocation:arguments[1],sServiceLocation:arguments[2]}});return f}function b(f,e,h){var g=e.indexOf("https://")==0||e.indexOf("http://")==0?e:f+e;return h(g)}function a(e,g,f){var h=GAPI.GetPlatformPath()+"development/applications/cross/getapphosts";if(d[g]){return b(d[g],e,f)}HttpRequest.get(h,{appid:g},function(i){if(i.result==0){d[g]="http://"+i.optimal.domain+i.optimal.context;b(d[g],e,f)}})}this.Get=function(f,e,g){a(f,e.appid,function(h){HttpRequest.get(h,e,function(i){GOutPlatform.AddRecord({method:"GET",address:h,time:i.debug?i.debug.time:"",cpu:i.debug?i.debug.cpu.time:"",result:i.result,error:i.error||"Success",params:FormatParams(e),out:FormatParams(i)});FormatBatch(h,e,i);g(i)})})};this.Post=function(f,e,g){a(f,e.appid,function(h){HttpRequest.post(h,e,function(i){GOutPlatform.AddRecord({method:"POST",address:h,time:i.debug?i.debug.time:"",cpu:i.debug?i.debug.cpu.time:"",result:i.result,error:i.error||"Success",params:FormatParams(e),out:FormatParams(i)});FormatBatch(h,e,i);g(i)})})};this.PostForm=function(h,g){var f=h.find("name","appid")[0].getValue();var e=Id(h.formId).cloneNode(true);if(h.url.indexOf("generateapp")!=-1){HttpRequest.post(h.url,e,function(i){GOutPlatform.AddRecord({method:"POST",address:h.url,time:i.debug?i.debug.time:"",cpu:i.debug?i.debug.cpu.time:"",result:i.result,error:i.error||"Success",params:FormatParams(e),out:FormatParams(i)});g(i)})}else{a(h.url,f,function(i){HttpRequest.post(i,e,function(j){GOutPlatform.AddRecord({method:"POST",address:i,time:j.debug?j.debug.time:"",cpu:j.debug?j.debug.cpu.time:"",result:j.result,error:j.error||"Success",params:FormatParams(e),out:FormatParams(j)});g(j)})})}};return this})();;;function GetFileName(a){var b=a.split("/");return b[b.length-1]}function GetFilePath(a){var b=a.split("/");if(b.length==1){return""}b.splice(b.length-1,1);return b.join("/")}var HUser=(function(){var c,a=0;var b="";this.SetSession=function(d){d=d};this.GetSession=function(){return c};this.GetUid=function(){return a};this.GetName=function(){return b};this.SignupDialog=function(f){var e=new Ext.FormPanel({standardSubmit:true,formId:"oSignupForm",baseCls:"x-plain",url:GAPI.Uri("Users.Registration")+"createaccount",monitorValid:true,defaultType:"textfield",autoHeight:true,items:[{fieldLabel:GLocal.LT_Signup_Label_Email,name:"email",vtype:"email",allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,vtypeText:GLocal.LT_Common_Text_EmailField,anchor:"100%"},{fieldLabel:GLocal.LT_Signup_Label_Password,name:"password",inputType:"password",allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,anchor:"100%"},{fieldLabel:GLocal.LT_Signup_Label_Name,name:"name",anchor:"100%"},{xtype:"combo",mode:"local",emptyText:"Язык программирования",triggerAction:"all",forceSelection:true,editable:false,name:"reg-language",displayField:"name",valueField:"value",anchor:"100%",store:new Ext.data.JsonStore({fields:["name","value"],data:[{name:"PHP",value:"php"},{name:"Java",value:"java"},{name:"Javascript",value:"javascript"}]})},{xtype:"label",text:GLocal.LT_Signup_Label_Info},{xtype:"hidden",name:"appid",value:GHiveIDE.GetAppid()},{xtype:"hidden",name:"welcome",value:"http://ide.hivext.ru/"+(sSolutionAppid?"?solution="+sSolutionAppid:"")}],buttonAlign:"right",buttons:[{text:GLocal.LT_Common_Button_Cancel,height:26,handler:function(){d.close()}},{text:GLocal.LT_Signup_Button_CreateAccount,iconCls:"icon-accept",height:26,formBind:true,handler:function(){GOut.Wait(GLocal.LT_Process_Label_Register);HTransport.PostForm(e,function(g){GOut.Hide();if(g.result==0){d.close();c=g.session;a=g.uid||0;var h=e.find("name","email")[0].getValue();GOut.Notify(XTemplate(GLocal.LT_Notify_Label_CreateAccount,{sEmailUrl:"http://www."+h.split("@")[1]}))}else{GOut.Error("Error",g)}})}}]});var d=new Ext.Window({title:GLocal.LT_Signup_Title_Dialog,iconCls:"icon-create-account",width:380,layout:"fit",plain:true,modal:true,resizable:false,bodyStyle:"padding:5px;",items:e});d.show()};this.SigninDialog=function(h){var g=new Ext.FormPanel({formId:"oSigninForm",baseCls:"x-plain",layout:"absolute",url:GAPI.Uri("Users.Authentication")+"signin",monitorValid:true,defaultType:"textfield",items:[{x:0,y:5,xtype:"label",text:GLocal.LT_Signin_Label_Email},{x:70,y:0,name:"email",vtype:"email",allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,vtypeText:GLocal.LT_Common_Text_EmailField,anchor:"100%",listeners:{specialkey:function(j,i){if(i.getKey()==i.ENTER){if(!GSCG){d()}else{e()}}}}},{x:0,y:35,xtype:"label",text:GLocal.LT_Signin_Label_Password},{x:70,y:30,name:"password",inputType:"password",allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,anchor:"100%",listeners:{specialkey:function(j,i){if(i.getKey()==i.ENTER){if(!GSCG){d()}else{e()}}}}},{x:0,y:60,xtype:"label",text:GLocal.LT_Signin_Label_Info},{xtype:"hidden",name:"appid",value:GHiveIDE.GetAppid()}],buttonAlign:"right",buttons:[{text:GLocal.LT_Common_Button_Cancel,height:26,handler:function(){f.close()}},{text:GLocal.LT_Signin_Button_Enter,iconCls:"icon-accept",height:26,handler:function(){if(!GSCG){d()}else{e()}}}]});var f=new Ext.Window({title:GLocal.LT_Signin_Title_Dialog,iconCls:"icon-login",width:350,height:180,layout:"fit",plain:true,modal:true,resizable:false,bodyStyle:"padding:5px;",items:g});f.show();function d(){HttpRequest.get(GAPI.Method("Development.Scripting","Eval"),{appid:"790547cce6fd9eb2c9e6cc33f95235ea",script:"checkgroup",email:g.find("name","email")[0].getValue()},function(l){if(l.result==0){l=l.response;if(l&&l.result==0&&l.groups){var j=false;for(var k=0;k<l.groups.length;k++){if(l.groups[k].toLowerCase()=="tester"||l.groups[k].toLowerCase()=="admin"){j=true}}if(j){e()}else{GOut.Error("Error",{result:10001,error:"Access denied"})}}else{if(l){GOut.Error("Error",l)}}}else{GOut.Error("Error",l)}})}function e(){var j=g.find("name","email")[0].getValue();var i=g.find("name","password")[0].getValue();HTransport.PostForm(g,function(k){if(k.result==0){f.close();c=k.session;a=k.uid||0;b=k.name!=undefined?k.name:(k.email||"");h(k)}else{GOut.Error("Error",k)}})}};this.ChangePasswordDialog=function(e){var d=new Ext.FormPanel({standardSubmit:true,formId:"oChangePassword",baseCls:"x-plain",layout:"absolute",url:GAPI.Method("Users.Account","ChangePassword"),monitorValid:true,defaultType:"textfield",items:[{x:0,y:5,xtype:"label",text:GLocal.LT_ChangePassword_Label_OldPassword},{x:100,y:0,name:"oldPassword",inputType:"password",allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,anchor:"100%"},{x:0,y:35,xtype:"label",text:GLocal.LT_ChangePassword_Label_NewPassword},{x:100,y:30,name:"newPassword",inputType:"password",allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,anchor:"100%"},{xtype:"hidden",name:"appid",value:GHiveIDE.GetAppid()},{xtype:"hidden",name:"session",value:HUser.GetSession()}],buttonAlign:"right",buttons:[{text:GLocal.LT_Common_Button_Cancel,height:26,handler:function(){f.close()}},{text:GLocal.LT_ChangePassword_Button_Change,iconCls:"icon-accept",height:26,formBind:true,handler:function(){HTransport.PostForm(d,function(g){if(g.result==0){f.close();c=g.session;HUser.SetSession(c);HApplications.ReallowSession();a=g.uid||0;e(g)}else{GOut.Error("Error",g)}})}}]});var f=new Ext.Window({title:GLocal.LT_ChangePassword_Title_Dialog,width:320,height:145,layout:"fit",plain:true,modal:true,resizable:false,bodyStyle:"padding:5px;",items:d});f.show()};this.CheckSession=function(d,f,e){GOut.Wait(GLocal.LT_Process_Label_CheckSign);HTransport.Get(GAPI.Method("Users.Authentication","CheckSign"),{appid:GHiveIDE.GetAppid(),session:d},function(g){GOut.Hide();if(g.result==0||g.result==702){c=g.session||d;a=g.uid||0;b=g.name?g.name:g.email;if(f){f(g)}}else{if(e){e()}}})};this.SignoutDialog=this.EndSession=function(d){GOut.Wait(GLocal.LT_Process_Label_Signout);HTransport.Get(GAPI.Method("Users.Authentication","Signout"),{appid:GHiveIDE.GetAppid(),session:c},function(e){GOut.Hide();if(e.result==0){window.name="";c="";a=0;if(d){d(e)}}})};return this})();var HApplications=(function(){var b={};var a={};var f;var c={},d={},e={};this.SetApp=function(h){b[h.appid]=h};this.GetApp=function(h){return b[h]};this.ClearApp=function(h){delete b[h]};this.SetType=function(i,h){c[i][h.name]=h};this.GetType=function(i,h){return c[i][h]};this.GetTypes=function(h){return c[h]};this.SetTypeField=function(k,j,h,i){return c[k][j][h]=i};this.GetTypeField=function(j,i,h){return c[j][i][h]};this.SetScript=function(i,h){d[i][h.name]=h};this.GetScript=function(i,h){return d[i][h]};this.GetScripts=function(h){return d[h]};this.SetScriptCode=function(j,i,h){d[j][i].code=h};this.GetScriptAnnotations=function(i,h){return d[i][h].annotations};this.SetScriptAnnotations=function(j,i,h){d[j][i].annotations=h};this.GetFile=function(i,h){return e[i][h]};this.ClearSessions=function(){a={}};this.ReallowSession=function(){for(sTargetAppid in a){a[sTargetAppid]=false;HApplications.AllowSession(sTargetAppid)}};this.AllowSession=function(h,i){if(a[h]){return i()}HTransport.Get(GAPI.Uri("Development.Applications")+"allowappaccess",{appid:GHiveIDE.GetAppid(),session:HUser.GetSession(),targetAppid:h,allowAppid:GHiveIDE.GetAppid()},function(j){if(j.result==0){a[h]=true}if(i){i(j)}})};this.AppsView=function(h){GOut.Wait(GLocal.LT_Process_Label_GetApps);HTransport.Get(GAPI.Uri("Development.Applications")+"getapps",{appid:GHiveIDE.GetAppid(),session:HUser.GetSession()},function(l){if(l.result==0){for(var k=0;k<l.apps.length;k++){var j=l.apps[k];if(j.env){continue}SetApp(j);if(!c[j.appid]){c[j.appid]={}}if(!d[j.appid]){d[j.appid]={}}if(h){h(j)}}}else{}GOut.Hide()})};var g=function(h,i,j){HApplications.AllowSession(i,function(k){HTransport.Get(h,{appid:i,session:HUser.GetSession()},function(l){if(j){j(l)}})})};this.ScriptsView=function(h,i){g(GAPI.Uri("Development.Scripting")+"getscripts",h,function(k){if(k.scripts){for(var j=0;j<k.scripts.length;j++){k.scripts[j].name=k.scripts[j].name.replace(/\./g,"/");d[h][k.scripts[j].name]=k.scripts[j]}}i(k)})};this.RolesView=function(h,i){g(GAPI.Uri("Security.AccessControl")+"getroles",h,function(j){i(j)})};this.TypesView=function(h,i){g(GAPI.Uri("Data.Base")+"gettypes",h,function(k){if(k.types){for(var o=0;o<k.types.length;o++){var n=k.types[o];n.aObjectsColumns=[];var m=[],q=n.fields,s={xtype:"textarea"};for(var l in q){m.push([l,q[l]]);var p={header:l,sortable:true,dataIndex:l,renderer:SafeEscape,width:l=="id"?50:null};var r=q[l];if(r.indexOf("map")!=-1){p.xtype="";p.editor={xtype:"textarea"}}else{if(r=="bool"||r=="boolean"){Ext.util.Format.comboRenderer=function(t){return function(v){var u=t.findRecord(t.valueField,v);return u?u.get(t.displayField):t.valueNotFoundText}};var j=new Ext.form.ComboBox({typeAhead:true,triggerAction:"all",lazyRender:true,mode:"local",readOnly:true,store:new Ext.data.ArrayStore({id:0,fields:["myId","displayText"],data:[["false","false"],["true","true"]]}),valueField:"myId",displayField:"displayText"});p.xtype="";p.editor=j}else{if(l!="id"&&r!="user"&&r!="signature"){p.xtype="";p.editor={xtype:"textarea"}}}}n.aObjectsColumns.push(p)}n.oFieldStore=new HStore([{name:"name"},{name:"type"}]);n.oFieldStore.LoadData(m);n.oObjectsStore=new HObjectsStore(h,n);c[h][n.name]=n}}i(k)})};this.GetType=function(i,j){var h={};if(c[i]){h=c[i][j]}return h};this.AppsClear=function(){};this.GenerateApp=function(j,h,i){GOut.Wait(GLocal.LT_Process_Label_GenerateApp);j.url=h+"development/applications/cross/generateapp";HTransport.PostForm(j,function(l){if(l.result==0){var k={id:l.id,appid:l.appid,hosting:l.hosting||{},name:j.find("name","name")[0].getValue(),description:j.find("name","description")[0].getValue(),domain:j.find("name","domain")[0].getValue()};SetApp(k);c[k.appid]={};d[k.appid]={};i(k)}else{if(l.result==3){GOut.Notify(GLocal.LT_Notify_Label_NeedAppName)}else{GOut.Error("Error",l)}}GOut.Hide()})};this.CloneApp=function(h,i){GOut.Wait(GLocal.LT_Process_Label_Clone);HTransport.Get(GAPI.Uri("Development.Applications")+"cloneapp",{appid:h,session:HUser.GetSession(),targetAppid:h},function(j){if(j.result==0){SetApp(j);c[j.appid]={};d[j.appid]={};i(j)}else{GOut.Error("Error",j)}GOut.Hide()})};this.ChangeApp=function(h,j){var k=GetApp(h.appid);if(!k){return}var i=GAPI.Uri("Development.Applications")+"changeappinfo";if(h.name!=k.name){GOut.Wait(GLocal.LT_Process_Label_Saving);HTransport.Get(i,{appid:GHiveIDE.GetAppid(),session:HUser.GetSession(),targetAppid:h.appid,field:"name",value:h.name},function(l){if(l.result==0){GOut.Hide()}else{GOut.Error("Error",l)}})}if(h.description!=k.description){GOut.Wait(GLocal.LT_Process_Label_Saving);HTransport.Get(i,{appid:GHiveIDE.GetAppid(),session:HUser.GetSession(),targetAppid:h.appid,field:"description",value:h.description},function(l){if(l.result==0){GOut.Hide()}else{GOut.Error("Error",l)}})}if(h.keywords!=k.keywords){GOut.Wait(GLocal.LT_Process_Label_Saving);HTransport.Get(i,{appid:GHiveIDE.GetAppid(),session:HUser.GetSession(),targetAppid:h.appid,field:"keywords",value:h.keywords},function(l){if(l.result==0){GOut.Hide()}else{GOut.Error("Error",l)}})}if(h.domain!=k.domain){GOut.Wait(GLocal.LT_Process_Label_Saving);HTransport.Get(i,{appid:GHiveIDE.GetAppid(),session:HUser.GetSession(),targetAppid:h.appid,field:"domain",value:h.domain},function(l){if(l.result==0){GOut.Hide()}else{GOut.Error("Error",l)}})}SetApp(h);j()};this.DeleteApp=function(k,j){var h=k.find("name","password")[0].getValue();if(!h){GOut.Notify(GLocal.LT_Notify_Label_NeedPassword);return}GOut.Wait(GLocal.LT_Process_Label_DeleteApp);k.url=GAPI.Uri("Development.Applications")+"deleteapp";var i=k.find("name","targetAppid")[0].getValue();HTransport.PostForm(k,function(l){if(l.result==0){ClearApp(i);if(j){j(i)}}else{GOut.Error("Error",l)}GOut.Hide()})};this.RebuildApp=function(h,i){GOut.Wait(GLocal.LT_Process_Label_RebuildApp);HTransport.Get(GAPI.Uri("Development.Applications")+"rebuildapp",{appid:h,session:HUser.GetSession(),targetAppid:h},function(j){if(j.result==0){if(i){i(j)}}else{GOut.Error("Error",j)}GOut.Hide()})};this.AddField=function(l,m,j,i,k,h){HTransport.Get(GAPI.Uri("Data.Base")+"addfield",{appid:l,session:HUser.GetSession(),type:m,field:j,fieldType:i},function(n){if(n.result==0){if(k){k(n)}}else{GOut.Error("Error",n);if(h){h(n)}}})};this.RenameField=function(j,l,h,k,i){HTransport.Get(GAPI.Uri("Data.Base")+"renamefield",{appid:j,session:HUser.GetSession(),type:l,oldField:h,newField:k},function(m){if(i){i(m)}})};this.RemoveField=function(j,k,h,i){GOut.Wait(XTemplate(GLocal.LT_Process_Label_RemoveField,{sName:h}));HTransport.Get(GAPI.Uri("Data.Base")+"removefield",{appid:j,session:HUser.GetSession(),type:k,field:h},function(l){if(l.result==0||l.result==99){if(i){i(l)}GOut.Hide()}else{GOut.Error("Error",l)}})};this.DefineType=function(j,h,i){GOut.Wait(XTemplate(GLocal.LT_Process_Label_DefineType,{sName:h.name}));HTransport.Get(GAPI.Uri("Data.Base")+"definetype",{appid:j,session:HUser.GetSession(),type:h.name},function(k){if(k.result==0){h.fields={id:"int"};c[j][h.name]=h;if(i){i(k)}GOut.Hide()}else{GOut.Error("Error",k)}})};this.RenameType=function(j,h,k,i){HTransport.Get(GAPI.Uri("Data.Base")+"renametype",{appid:j,session:HUser.GetSession(),oldType:h,newType:k},function(l){if(l.result==0){if(c[j][h]){c[j][k]=c[j][h];delete c[j][h]}if(i){i(l)}}else{GOut.Error("Error",l)}})};this.UndefineType=function(j,h,i){GOut.Wait(XTemplate(GLocal.LT_Process_Label_UndefineType,{sName:h}));HTransport.Get(GAPI.Uri("Data.Base")+"undefinetype",{appid:j,session:HUser.GetSession(),type:h},function(k){if(k.result==0){delete c[j][h];if(i){i(k)}GOut.Hide()}else{GOut.Error("Error",k)}})};this.CreateObject=function(j,h,i){HTransport.Get(GAPI.Uri("Data.Base")+"createobject",{appid:j,session:HUser.GetSession(),type:h},function(k){if(k.result==0){if(i){i(k)}}else{GOut.Error("Error",k)}})};this.DeleteObjects=function(k,i,h,j){HTransport.Get(GAPI.Uri("Data.Base")+"deleteobjectsbycriteria",{appid:k,session:HUser.GetSession(),type:i,criteria:h},function(l){if(l.result==0){if(j){j(l)}}else{GOut.Error("Error",l)}})};this.CreateRole=function(j,h,i){HTransport.Get(GAPI.Uri("Security.AccessControl")+"createrole",{appid:j,session:HUser.GetSession(),role:h},function(k){if(k.result==0){if(i){i(k)}}else{GOut.Error("Error",k)}})};this.DeleteRole=function(j,h,i){HTransport.Get(GAPI.Uri("Security.AccessControl")+"deleterole",{appid:j,session:HUser.GetSession(),role:h},function(k){if(k.result==0){if(i){i(k)}}else{GOut.Error("Error",k)}})};this.CreateScript=function(k,i,l,h,j){GOut.Wait(XTemplate(GLocal.LT_Process_Label_Creating,{sName:i}));HTransport.Post(GAPI.Uri("Development.Scripting")+"createscript",{appid:k,session:HUser.GetSession(),name:i,type:l,code:h?h:""},function(m){if(m.result==0){d[k][i]={name:i,type:l,code:h};if(j){j()}GOut.Hide()}else{GOut.Error("Error",m)}})};this.SaveScript=function(k,i,h,l,j){if(h=="name"&&i==l){if(j){j()}return}HTransport.Post(GAPI.Uri("Development.Scripting")+"changescript",{appid:k,session:HUser.GetSession(),name:i,field:h,value:l},function(m){if(m.result==0){var n=d[k][i];if(n){n[h]=l;if(h=="name"&&i!=l){d[k][i]=null;d[k][l]=n}}}else{GOut.Error("Error",m)}if(j){j(m)}})};this.DeleteScript=function(j,h,i){GOut.Wait(XTemplate(GLocal.LT_Process_Label_Removing,{sName:h}));HTransport.Get(GAPI.Uri("Development.Scripting")+"deletescript",{appid:j,session:HUser.GetSession(),name:h},function(k){if(k.result==0){if(i){i(k)}GOut.Hide()}else{GOut.Error("Error",k)}})};this.Execute=function(p,n,h,o){var m={appid:p,session:HUser.GetSession(),script:n};if(typeof(h)=="object"){for(var l in h){m[l]=h[l]}}else{if(typeof(h)=="string"){if(h.indexOf("=")!=-1){var k=h.split("&");for(var j=0;j<k.length;j++){m[k[j].split("=")[0]]=k[j].split("=")[1]}}}}HTransport.Post(GAPI.Uri("Development.Scripting")+"eval",m,function(i){if(o){o(i)}})};this.Compile=function(j,h,i){HTransport.Get(GAPI.Uri("Development.Scripting")+"build",{appid:j,session:HUser.GetSession(),script:h},function(k){if(i){i(k)}})};this.GetFiles=function(j,h,i){HApplications.AllowSession(j,function(k){HTransport.Get("io/file/cross/getlist",{appid:j,session:HUser.GetSession(),path:h},function(l){if(l&&l.result==0){i(l)}else{GOut.Error("Error",l)}})})};this.CreateFile=function(k,h,j,i){HApplications.AllowSession(k,function(l){HTransport.Get("io/file/cross/create",{appid:k,session:HUser.GetSession(),path:h,isdir:j},function(m){if(m&&m.result==0){if(!e[k]){e[k]={}}e[k][h]={name:GetFileName(h),code:""};i(m)}else{GOut.Error("Error",m)}})})};this.ReadFile=function(j,h,i){HApplications.AllowSession(j,function(k){if(!e[j]){e[j]={}}if(e[j][h]){i(e[j][h])}else{HApplications.AllowSession(j,function(l){HTransport.Get("io/file/cross/read",{appid:j,session:HUser.GetSession(),path:h},function(m){if(m&&m.result==0){e[j][h]={name:GetFileName(h),code:m.body};i(m)}else{GOut.Error("Error",m)}})})}})};this.WriteFile=function(k,h,i,j){HApplications.AllowSession(k,function(l){HTransport.Post("io/file/cross/write",{appid:k,session:HUser.GetSession(),path:h,body:i},function(m){if(m&&m.result==0){if(!e[k]){e[k]={}}e[k][h]={name:GetFileName(h),code:i};j(m)}else{GOut.Error("Error",m)}})})};this.RenameFile=function(k,i,h,j){HApplications.AllowSession(k,function(l){HTransport.Get("io/file/cross/rename",{appid:k,session:HUser.GetSession(),oldPath:i,newPath:h},function(m){if(m&&m.result==0){if(!e[k]){e[k]={}}if(e[k][i]){e[k][h]=e[k][i];e[k][h].name=GetFileName(h);delete e[k][i]}j(m)}else{GOut.Error("Error",m)}})})};this.DeleteFile=function(j,h,i){HApplications.AllowSession(j,function(k){HTransport.Get("io/file/cross/delete",{appid:j,session:HUser.GetSession(),path:h},function(l){if(l&&l.result==0){if(!e[j]){e[j]={}}delete e[j][h];i(l)}else{GOut.Error("Error",l)}})})};return this})();;;var nObjectLimit=50;function AllowedFileExt(b){var a=b.split(".");if(a.length>1&&a[0]==""){return false}return true}function ShortName(b,a){var c=b.split("/");return c[c.length-1]}function GetExtIconClass(c){var b,a=GetFileExt(c);switch(a){case"htm":case"html":case"xhtml":b="icon-resources-html";break;case"css":b="icon-resources-css";break;case"txt":b="icon-resources-txt";break;case"wsdl":case"xml":case"js":b="icon-resources-script";break;case"ssjs":case"javascript":b="icon-script-ssjs";break;case"java":b="icon-script-java";break;case"php":b="icon-script-php";break;case"ejs":b="icon-script-ejs";break;case"gif":case"png":case"jpg":case"jpeg":b="icon-resources-image";break;case"swf":b="icon-resources-swf";break;default:b="icon-resources-default";break}return b}var GOut=(function(){var a=0;this.Wait=function(d){a++;Ext.MessageBox.show({msg:d,icon:Ext.MessageBox.INFO,width:600,wait:true,waitConfig:{interval:200}})};this.Error=function(f,g){f=GLocal[f]||f;if(g){if(g.result&&g.result!=0){var e=GLocal["LT_E_Platform_"+g.result];f=e||g.error}}b(f,g);var d=f+"<hr />Result = "+g.result+"<br />Message = "+g.error;c(d,true)};this.Notify=function(d){d=GLocal[d]||d;c(d,false)};this.Hide=function(){if(a==0){return}a--;if(a==0){Ext.MessageBox.hide()}};var c=function(e,d){if(a){a=0;Ext.MessageBox.hide()}Ext.MessageBox.show({title:d?GLocal.LT_Common_Text_Error:GLocal.LT_Common_Text_Notify,icon:d?Ext.MessageBox.ERROR:Ext.MessageBox.INFO,msg:e,width:480,buttons:Ext.MessageBox.OK})};var b=function(d,e){var f={}};return this})();function HStore(b){var c=1;var a=Ext.data.Record.create(b);var d=new Ext.data.Store({reader:new Ext.data.ArrayReader({idIndex:0},b),listeners:{write:function(f,e,g){alert(f+"  "+e)}}});this.GetStore=function(){return d};this.AddRecord=function(f){f.number=c;var e=new d.recordType(f,++c);d.insert(0,e)};this.LoadData=function(e){d.loadData(e)};this.Find=function(e,g){var f=d.find(e,g);if(f){return d.getAt(f)}return false};this.Clear=function(){d.removeAll()}}function FieldDefault(a,b){if(a.indexOf("map")!=-1){b=ClearBRLT(b||"{}")}else{if(a.indexOf("list")!=-1||a.indexOf("set")!=-1){b=ClearBRLT(b||"[]")}else{if(a.indexOf("string")!=-1||a=="text"||a=="mtext"){b=b||""}else{if(a=="int"||a=="integer"){b=parseInt(b)||0}else{if(a=="float"||a=="double"){b=parseFloat(b)||0}else{if(a=="bool"||a=="boolean"){b=b||"false"}else{if(a=="user"||a=="signature"){b=b||0}else{if(a=="time"||a=="date"||a=="datetime"||a=="timestamp"||a=="year"||a=="millisec"){b=b||""}else{if(!b){b="null"}if(b=="null"){b="null"}}}}}}}}}return b}function ReconfigColumns(d){d.aObjectsColumns=[];for(sFieldName in d.fields){var c={header:sFieldName,sortable:true,dataIndex:sFieldName,renderer:SafeEscape,width:sFieldName=="id"?50:null};var a=d.fields[sFieldName];if(a.indexOf("map")!=-1){c.xtype="";c.editor={xtype:"textarea"}}else{if(a=="bool"||a=="boolean"){Ext.util.Format.comboRenderer=function(e){return function(g){var f=e.findRecord(e.valueField,g);return f?f.get(e.displayField):e.valueNotFoundText}};var b=new Ext.form.ComboBox({typeAhead:true,triggerAction:"all",lazyRender:true,mode:"local",readOnly:true,store:new Ext.data.ArrayStore({id:0,fields:["myId","displayText"],data:[["false","false"],["true","true"]]}),valueField:"myId",displayField:"displayText"});c.xtype="";c.editor=b}else{if(sFieldName!="id"&&a!="user"&&a!="signature"){c.xtype="";c.editor={xtype:"textarea"}}}}d.aObjectsColumns.push(c)}}function HObjectsStore(g,f){var a=[];for(var c=0;c<f.aObjectsColumns.length;c++){var e=f.aObjectsColumns[c].header;var b={name:e};a.push(b)}var d=new Ext.data.JsonStore({root:"objects",totalProperty:"count",idProperty:"id",remoteSort:true,fields:a,baseParams:{type:f.name},proxy:new Ext.data.DirectProxy({directFn:function(j,m,i){var h,k="%(criteria) order by %(sort) %(dir)";if(!j.criteria){j.criteria="id is not null"}if(j.sort&&j.dir){h=XTemplate(k,j,true)}else{h=j.criteria}var l={appid:g,request:toJSON({version:"1.0",global:{appid:g,session:HUser.GetSession(),type:j.type,criteria:h},methods:[{"Data.Base.GetObjectsCount":{}},{"Data.Base.GetObjectsByCriteria":{from:j.start,count:j.limit}}]}),sync:true};HTransport.Get(GAPI.Method("Utils.Batch","Call"),l,function(p){if(p.result==0){if(p.response[0].result==0&&p.response[1].result==0){for(var o=0;o<p.response[1].objects.length;o++){for(var n in p.response[1].objects[o]){p.response[1].objects[o][n]=toSourceData(p.response[1].objects[o][n])}}m.apply(i,[{count:p.response[0].count,objects:p.response[1].objects},{status:1}])}else{m.apply(i,[{count:0,objects:[]},{status:1}])}}else{m.apply(i,[{count:0,objects:[]},{status:1}])}})}}),listeners:{update:function(l,k,j){if(j==Ext.data.Record.EDIT){if(k.modified){var m={};for(var h in k.modified){var i=f.fields[h]+"";m[h]=FieldDefault(i,k.data[h])}HTransport.Post(GAPI.Method("Data.Base","SetObject"),{appid:g,session:HUser.GetSession(),type:f.name,id:k.data.id,data:toJSON(m)},function(n){if(n.result==0){k.commit()}})}}}}});this.GetStore=function(){return d}}var GOutPlatform=new HStore([{name:"number",type:"int"},{name:"method"},{name:"address"},{name:"time",type:"int"},{name:"cpu",type:"float"},{name:"result",type:"int"},{name:"error"},{name:"params"},{name:"out"}]);var oServicePanel=(function(){function b(h){var m=[];var j=h.split(".")[0];var k=h.split(".")[1];var i=window[j][k];if(i){var g=i.oServiceBind.aOperationLocation;if(g){for(var l in g){var n={text:l,iconCls:"icon-service-method",children:[]};var f=i[l+"Input"];if(f){for(var d in f){n.children.push({text:d+" : "+f[d],iconCls:"icon-param-in",leaf:true})}}var e=i[l+"Output"];if(e){for(var d in e){n.children.push({text:d+" : "+e[d],iconCls:"icon-param-out",leaf:true})}}m.push(n)}}}return m}var c=new Ext.tree.AsyncTreeNode({id:"service-root",expanded:true,children:[{text:"Users",iconCls:"icon-service",children:[{id:"Users.Registration",text:"Registration",iconCls:"icon-service"},{id:"Users.Authentication",text:"Authentication",iconCls:"icon-service"},{id:"Users.Account",text:"Account",iconCls:"icon-service"}]},{text:"Data",iconCls:"icon-service",children:[{id:"Data.Base",text:"Base",iconCls:"icon-service"}]},{text:"Storage",iconCls:"icon-service",children:[{id:"Storage.Uploader",text:"Uploader",iconCls:"icon-service"}]},{text:"Security",iconCls:"icon-service",children:[{id:"Security.AccessControl",text:"AccessControl",iconCls:"icon-service"}]},{text:"Development",iconCls:"icon-service",children:[{id:"Development.Applications",text:"Applications",iconCls:"icon-service"},{id:"Development.Scripting",text:"Scripting"}]},{text:"Utils",iconCls:"icon-service",children:[{id:"Utils.Batch",text:"Batch",iconCls:"icon-service"},{id:"Utils.Scheduler",text:"Scheduler",iconCls:"icon-service"}]}]});var a=new Ext.tree.TreePanel({id:"service-panel",region:"center",autoScroll:true,containerScroll:false,border:false,rootVisible:false,lines:true,singleExpand:false,useArrows:false,animate:true,loader:new Ext.tree.TreeLoader({directFn:function(e,f){if(!e||e=="service-root"){return}var d=b(e);f(d,{status:1})}}),root:c});return a})();var HMainUI=(function(){var k,g,o,a,h,p,i,n,c,f,b;var e={Clear:function(){var r=p.getRootNode();var q,s=r.firstChild;while(s){q=s.nextSibling;s.remove();s=q}},FindNodeByPath:function(r,q){var s=q.split("/");var t=null;function u(v){if(v){if(q==e.GetPath(v)){t=v}if(v.hasChildNodes()){v.eachChild(u)}}}u(r);return t},GetPath:function(r){var q=[];while(r&&r.parentNode){q.splice(0,0,r.attributes.sPath);r=r.parentNode}return q.join("/")},CreateNodes:function(s,r,q){var x,u=r.split("/");sSubPath=u[0]+"/"+u[1],oPrevNode=e.FindNodeByPath(s,sSubPath),bFirst=true;var w={},v;for(var t=2;t<u.length;t++){sSubPath+="/"+u[t];x=e.FindNodeByPath(oPrevNode,sSubPath);if(x&&!x.leaf&&t!=u.length-1){oPrevNode=x}else{if(t==u.length-1){w={id:u[t],text:u[t],leaf:true,loaded:true};Ext.apply(w,q)}else{w={id:u[t],text:u[t],iconCls:"icon-service",leaf:false,loaded:true}}oPrevNode=oPrevNode.appendChild(w)}}return oPrevNode},RemoveNodes:function(s,r){var v=e.FindNodeByPath(s,r),q;if(v){var u=r.split("/");for(var t=2;t<u.length;t++){q=v.parentNode;if(q.childNodes.length>1){v.remove();break}v.remove();v=q}}},SelectedNode:function(){return p.getSelectionModel().getSelectedNode()},NodeAction:function(B,A,u,x){var E;if(B=="TA_AddApp"){var D=x;E=p.getRootNode().appendChild({id:A,text:u,iconCls:"icon-application"+(D?"-"+D.toLowerCase():""),allowDrop:false,draggable:false,editable:false});return E}var w=e.FindNodeByPath(p.getRootNode(),A);if(!w){return}switch(B){case"TA_RemoveApp":p.getRootNode().removeChild(w);break;case"TA_RenameApp":w.setText(u);break;case"TA_AddType":var y=e.FindNodeByPath(w,A+"/type");if(y&&y.isLoaded()){y.appendChild({id:u,text:u,iconCls:"icon-type-table",leaf:true})}break;case"TA_RemoveType":var y=e.FindNodeByPath(w,A+"/type/"+u);if(y){y.remove()}break;case"TA_RenameType":if(u==x){return}var y=e.FindNodeByPath(w,A+"/type/"+u);if(y){y.setText(x)}break;case"TA_AddScript":var z=GetExtIconClass("."+u.split(":")[1]||"javascript");u=u.split(":")[0];u=u.replace(/\./g,"/");e.CreateNodes(w,A+"/script/"+u,{attributes:{iconCls:z},iconCls:z,allowDrop:false,draggable:false,editable:false});break;case"TA_RemoveScript":e.RemoveNodes(w,A+"/script/"+u);break;case"TA_RenameScript":if(u==x){return}var E=e.FindNodeByPath(w,A+"/script/"+u);var C={iconCls:E.attributes.iconCls,allowDrop:false,draggable:false,editable:false};u=u.replace(/\./g,"/");x=x.replace(/\./g,"/");e.RemoveNodes(w,A+"/script/"+u);e.CreateNodes(w,A+"/script/"+x,C);break;case"TA_AddFile":var s=GetFilePath(u);var t=e.FindNodeByPath(w,A+"/files"+(s?"/"+s:""));if(t&&t.isLoaded()){t.appendChild({id:GetFileName(u),text:GetFileName(u),iconCls:GetExtIconClass(u),leaf:true})}break;case"TA_RemoveFile":var t=e.FindNodeByPath(w,A+"/files/"+u);if(t){t.remove()}break;case"TA_RenameFile":if(u==x){return}var t=e.FindNodeByPath(w,A+"/files/"+u);var r=t.parentNode;if(t&&r){r.replaceChild({id:GetFileName(x),text:GetFileName(x),iconCls:GetExtIconClass(x),leaf:true},t);r.expand()}break;case"TA_AddFolder":var s=GetFilePath(u);var q=e.FindNodeByPath(w,A+"/files"+(s?"/"+s:""));if(q&&q.isLoaded()){q.appendChild({id:GetFileName(u),text:GetFileName(u),iconCls:"icon-folder",leaf:false})}break;case"TA_AddRole":var v=e.FindNodeByPath(w,A+"/role");if(v&&v.isLoaded()){v.appendChild({id:u,text:u,iconCls:"icon-role",leaf:true})}break;case"TA_RemoveRole":var v=e.FindNodeByPath(w,A+"/role/"+u);if(v){v.remove()}break}}};var d={oTabsId:{},oTabs:{},Add:function(t,u,r){t=t||"";r=r||"";sMainType=u.split(":")[0];var s;if(sMainType!="runscript"){s=o.findById(d.oTabsId[t+"-"+sMainType+"-"+r+"-panel"])}else{s=n.findById(d.oTabsId[t+"-"+sMainType+"-"+r+"-panel"])}if(!s){var q={title:r+(HApplications.GetApp(t)?" ["+HApplications.GetApp(t).name+"]":""),closable:true,autoScroll:true};switch(sMainType){case"appcreate":q.title=GLocal.LT_NewApp_Label_Create;q.iconCls="icon-application-add";q.items=d.AppTab.NewApp();q=new Ext.Panel({title:GLocal.LT_NewApp_Label_Create,iconCls:"icon-application-add",closable:true,layout:"fit",items:d.AppTab.NewApp()});break;case"solutioncreate":q=d.AppTab.SolutionApp();break;case"appconfig":q.iconCls="icon-application-edit";q.items=d.AppTab.EditApp(t);break;break;case"type":case"addtype":q=d.TypeTab(t,u,r);break;case"role":case"addrole":q=d.RoleTab(t,u,r);break;case"script":case"addscript":q=d.ScriptTab(t,u,r);break;case"runscript":q=d.RunTab(t,u,r);break;case"files":case"addfile":q=d.ScriptTab(t,u,r);break}if(sMainType!="runscript"){s=o.add(q);o.doLayout()}else{s=n.add(q)}if(s){d.oTabs[t+"-"+sMainType+"-"+r+"-panel"]=s;d.oTabsId[t+"-"+sMainType+"-"+r+"-panel"]=s.getId()}}return s},Activate:function(q){o.activate(q)},Close:function(t,u,r){var s,q=u.split(":")[0];if(q!="runscript"){s=o.findById(d.oTabsId[t+"-"+q+"-"+r+"-panel"]);if(s){o.remove(s)}}else{s=n.findById(d.oTabsId[t+"-"+q+"-"+r+"-panel"]);if(s){n.remove(s)}}if(s){delete d.oTabs[t+"-"+q+"-"+r+"-panel"];delete d.oTabsId[t+"-"+q+"-"+r+"-panel"]}},CloseActive:function(q){o.remove(o.getActiveTab())},ChangeTab:function(t,s,v,q,r,u){sMainType=v.split(":")[0];if(!t){t=d.oTabs[s+"-"+sMainType+"-"+r+"-panel"]}if(!t){return}delete d.oTabs[s+"-"+sMainType+"-"+r+"-panel"];delete d.oTabsId[s+"-"+sMainType+"-"+r+"-panel"];d.oTabs[s+"-"+q+"-"+u+"-panel"]=t;d.oTabsId[s+"-"+q+"-"+u+"-panel"]=t.getId();t.setTitle((v=="addscript"||v=="script"?u:GetFileName(u))+(HApplications.GetApp(s)?" ["+HApplications.GetApp(s).name+"]":""));if(t.oScriptNameField){t.oScriptNameField.setValue(v=="addscript"||v=="script"?u:GetFileName(u))}t.sCurrentName=u;if(v=="files"&&t.oScriptNameField){t.setIconClass(GetExtIconClass(u))}},CloseByAppid:function(s){var r;for(var q in d.oTabs){r=d.oTabs[q];if(r&&q.indexOf(s)!=-1&&q.indexOf("runscript")==-1){o.remove(r);delete d.oTabs[q];delete d.oTabsId[q]}if(r&&q.indexOf(s)!=-1&&q.indexOf("runscript")!=-1){n.remove(r);delete d.oTabs[q];delete d.oTabsId[q]}}},CloseAll:function(){var r;for(var q in d.oTabs){r=d.oTabs[q];if(r&&q.indexOf("runscript")==-1){o.remove(r)}if(r&&q.indexOf("runscript")!=-1){n.remove(r)}}d.oTabs={};d.oTabsId={}},AppTab:{NewApp:function(){var s=new Ext.form.FormPanel({xtype:"form",formId:"generateapp-form",border:false,defaults:{msgTarget:"side"},monitorValid:true,labelAlign:"top",padding:32,items:[{layout:"column",border:false,items:[{columnWidth:0.5,layout:"form",defaultType:"textarea",padding:16,border:false,items:[{xtype:"hidden",name:"appid",value:GHiveIDE.GetAppid()},{xtype:"hidden",name:"session",value:HUser.GetSession()},{xtype:"hidden",name:"config",value:""},{xtype:"label",text:GLocal.LT_NewApp_Label_Name,style:{fontSize:"14px"}},{xtype:"textfield",name:"name",allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,anchor:"100%",listeners:{render:function(t){t.focus()}}},{xtype:"label",text:GLocal.LT_NewApp_Label_Keywords},{name:"keywords",anchor:"100%",height:32},{xtype:"label",text:GLocal.LT_NewApp_Label_Domain},{name:"domain",anchor:"100%",height:32}]},{columnWidth:0.5,layout:"form",defaultType:"textarea",padding:16,border:false,items:[{xtype:"label",text:GLocal.LT_NewApp_Label_Description,style:{fontSize:"14px"}},{name:"description",anchor:"100%",height:203}]}]}]});var q=function(w){if(!s.find("name","name")[0].getValue()){GOut.Notify(GLocal.LT_Notify_Label_NeedAppName);return}var t=Ext.getCmp("card-wizard-panel").getLayout();var u=t.activeItem.id.split("card-")[1];var v=parseInt(u,10)+w;Ext.getCmp("card-prev").setDisabled(v==0);Ext.getCmp("card-next").setDisabled(v==1);Ext.getCmp("wizard-create-app").setDisabled(v!=1);t.setActiveItem(v)};var r={id:"card-wizard-panel",layout:"card",activeItem:0,defaults:{border:false},bbar:[{id:"card-prev",iconCls:"icon-arrow_left",text:GLocal.LT_Common_Text_NextStep,scale:"medium",handler:q.createDelegate(this,[-1]),disabled:true},{id:"card-next",iconCls:"icon-arrow_right",text:GLocal.LT_Common_Text_PrevStep,scale:"medium",iconAlign:"right",handler:q.createDelegate(this,[1])},"-",{id:"wizard-create-app",scale:"medium",text:GLocal.LT_NewApp_Button_Create,iconCls:"icon-accept",handler:function(){var t={db_engine:Ext.getCmp("db_engine").getValue(),diff_db:Ext.getCmp("diff_db").getValue(),use_access_control:Ext.getCmp("use_access_control").getValue(),use_cache_table_meta:Ext.getCmp("use_cache_table_meta").getValue(),log_access_actions:Ext.getCmp("log_access_actions").getValue(),show_sys_types:Ext.getCmp("show_sys_types").getValue()};var v=Ext.getCmp("config-ext").getValue();if(v){v=v.replace(/\s/g,"");var w=v.split(",");for(var u=0;u<w.length;u++){sk=w[u].split(":");if(sk[0]&&sk[1]){t[sk[0]]=sk[1]}}}s.find("name","config")[0].setValue(toJSON(t));var x=Ext.getCmp("datacenter").getValue();HApplications.GenerateApp(s,x,function(y){HApplications.AllowSession(y.appid,function(){});var A=e.NodeAction("TA_AddApp",y.appid,y.name);if(A){A.expand()}d.CloseActive();var z=d.Add(y.appid,"appconfig",GLocal.LT_EditApp_Label_Settings);d.Activate(z)})},disabled:true}],items:[{id:"card-0",title:GLocal.LT_NewApp_Title_Step1,autoScroll:true,items:s},{xtype:"form",id:"card-1",autoScroll:true,padding:32,title:GLocal.LT_NewApp_Title_Step2,border:false,labelAlign:"top",items:[{xtype:"fieldset",title:"Выбор датацентра",autoHeight:true,defaultType:"textfield",collapsible:true,collapsed:true,padding:16,items:[{xtype:"combo",id:"datacenter",fieldLabel:"Размещение приложения",typeAhead:true,mode:"local",editable:false,triggerAction:"all",selectOnFocus:true,store:new Ext.data.ArrayStore({id:0,fields:["id","name"],data:[[GAPI.GetPlatformPathApp(),"de-hezner"]]}),valueField:"id",displayField:"name",value:GAPI.GetPlatformPathApp()}]},{xtype:"fieldset",title:GLocal.LT_NewApp_Group_DataBase,autoHeight:true,collapsible:true,collapsed:true,items:[{layout:"column",border:false,items:[{columnWidth:0.5,layout:"form",defaultType:"textarea",padding:16,border:false,items:[new Ext.form.ComboBox({id:"db_engine",fieldLabel:GLocal.LT_NewApp_Combo_DBEngine,typeAhead:true,mode:"local",editable:false,triggerAction:"all",selectOnFocus:true,store:new Ext.data.ArrayStore({id:0,fields:["id","displayText"],data:[["InnoDB","InnoDB"],["MyISAM","MyISAM"]]}),valueField:"id",displayField:"displayText",value:"InnoDB"}),new Ext.form.ComboBox({fieldLabel:GLocal.LT_NewApp_Combo_UseCache,id:"use_cache_table_meta",typeAhead:true,mode:"local",editable:false,triggerAction:"all",selectOnFocus:true,store:new Ext.data.ArrayStore({id:0,fields:["id","displayText"],data:[["true",GLocal.LT_Common_Text_Enable],["false",GLocal.LT_Common_Text_Disable]]}),valueField:"id",displayField:"displayText",value:"true"})]},{columnWidth:0.5,layout:"form",defaultType:"textarea",padding:16,border:false,items:[new Ext.form.ComboBox({fieldLabel:GLocal.LT_NewApp_Combo_DiffDB,id:"diff_db",typeAhead:true,mode:"local",editable:false,triggerAction:"all",selectOnFocus:true,store:new Ext.data.ArrayStore({id:0,fields:["id","displayText"],data:[["true",GLocal.LT_NewApp_Combo_DiffDB_True],["false",GLocal.LT_NewApp_Combo_DiffDB_False]]}),valueField:"id",displayField:"displayText",value:"true"}),new Ext.form.ComboBox({fieldLabel:GLocal.LT_NewApp_Combo_ShowSysTypes,id:"show_sys_types",typeAhead:true,mode:"local",editable:false,triggerAction:"all",selectOnFocus:true,store:new Ext.data.ArrayStore({id:0,fields:["id","displayText"],data:[["true",GLocal.LT_Common_Text_Yes],["false",GLocal.LT_Common_Text_No]]}),valueField:"id",displayField:"displayText",value:"false"})]}]}]},{xtype:"fieldset",title:GLocal.LT_NewApp_Group_Safe,autoHeight:true,collapsible:true,collapsed:true,items:[{layout:"column",border:false,items:[{columnWidth:0.5,layout:"form",defaultType:"textarea",padding:16,border:false,items:[new Ext.form.ComboBox({fieldLabel:GLocal.LT_NewApp_Combo_UseAccessControl,id:"use_access_control",typeAhead:true,mode:"local",editable:false,triggerAction:"all",selectOnFocus:true,store:new Ext.data.ArrayStore({id:0,fields:["id","displayText"],data:[["true",GLocal.LT_Common_Text_Enable],["false",GLocal.LT_Common_Text_Disable]]}),valueField:"id",displayField:"displayText",value:"true"})]},{columnWidth:0.5,layout:"form",defaultType:"textarea",padding:16,border:false,items:[new Ext.form.ComboBox({fieldLabel:GLocal.LT_NewApp_Combo_LogAccess,id:"log_access_actions",typeAhead:true,mode:"local",editable:false,triggerAction:"all",selectOnFocus:true,store:new Ext.data.ArrayStore({id:0,fields:["id","displayText"],data:[["true",GLocal.LT_Common_Text_Yes],["false",GLocal.LT_Common_Text_No]]}),valueField:"id",displayField:"displayText",value:"true"})]}]}]},{xtype:"fieldset",title:"Дополнительно",autoHeight:true,collapsible:true,collapsed:true,items:[{xtype:"textarea",id:"config-ext",anchor:"100%",height:80,emptyText:"key1 : val1,\nkey2 : val2,\n..."}]}]}]};return[r]},SolutionApp:function(){function q(t){HMainUI.CloneSolution(t.appid,t)}var s=new SolutionChooser({closable:true,layout:"border"});var r=s.show(q);return r},EditApp:function(z){var t=HApplications.GetApp(z);if(!t){return}var v=new Ext.form.FormPanel({border:false,defaults:{msgTarget:"side"},defaultType:"textfield",labelPad:-100,width:500,monitorValid:true,items:[{xtype:"label",text:GLocal.LT_EditApp_Label_Name,style:{fontSize:"12px"}},{name:"name",allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,value:t.name,anchor:"100%"},{xtype:"label",text:GLocal.LT_EditApp_Label_Description,style:{fontSize:"12px"}},{xtype:"textarea",height:120,value:t.description,name:"description",anchor:"100%"},{xtype:"label",text:GLocal.LT_EditApp_Label_Keywords,style:{fontSize:"12px"}},{xtype:"textarea",height:50,value:t.keywords,name:"keywords",anchor:"100%"},{xtype:"label",text:GLocal.LT_EditApp_Label_Domain,style:{fontSize:"12px"}},{xtype:"textarea",name:"domain",value:t.domain,anchor:"100%",height:50}],buttons:[{text:GLocal.LT_EditApp_Button_Save,iconCls:"icon-accept",height:32,formBind:true,handler:function(){var B={appid:z,name:v.find("name","name")[0].getValue(),description:v.find("name","description")[0].getValue(),keywords:v.find("name","keywords")[0].getValue(),domain:v.find("name","domain")[0].getValue()};HApplications.ChangeApp(B,function(){e.NodeAction("TA_RenameApp",B.appid,B.name)})}}]});var w={xtype:"fieldset",title:GLocal.LT_EditApp_Title_Common,collapsible:true,collapsed:true,bodyStyle:"padding:16px 18px 10px 32px;",items:v};var s=new Ext.form.FormPanel({border:false,formId:z+"-deleteapp-form",defaults:{msgTarget:"side"},defaultType:"textfield",labelPad:-100,width:500,monitorValid:true,items:[{xtype:"hidden",name:"appid",value:GHiveIDE.GetAppid()},{xtype:"hidden",name:"session",value:HUser.GetSession()},{xtype:"hidden",name:"targetAppid",value:z},{xtype:"label",text:GLocal.LT_EditApp_Label_Delete,style:{fontSize:"12px"}},{name:"password",allowBlank:false,inputType:"password",anchor:"100%"}],buttons:[{text:GLocal.LT_EditApp_Button_Delete,iconCls:"icon-delete",height:32,formBind:true,handler:function(C,B){HApplications.DeleteApp(s,function(){e.NodeAction("TA_RemoveApp",t.appid,t.name);d.CloseByAppid(t.appid)})}}]});var A={xtype:"fieldset",title:GLocal.LT_EditApp_Title_Delete,iconCls:"icon-application-delete",collapsible:true,collapsed:true,bodyStyle:"padding:16px 18px 10px 32px;",items:s};var x={xtype:"fieldset",title:GLocal.LT_EditApp_Title_Info,iconCls:"icon-application-link",collapsible:true,formId:z+"-infoapp-form",bodyStyle:"padding:16px 18px 10px 32px;",defaultType:"textfield",labelAlign:"top",items:[{fieldLabel:GLocal.LT_EditApp_Label_Appid,value:z,width:"500",readOnly:true},{fieldLabel:GLocal.LT_EditApp_Label_Address,value:"http://"+t.hosting.domain,width:"500",readOnly:true}]};var u={xtype:"fieldset",title:GLocal.LT_EditApp_Title_FTP,collapsible:true,collapsed:true,formId:z+"-ftp-form",bodyStyle:"padding:16px 18px 10px 32px;",defaultType:"textfield",labelAlign:"top",items:[{fieldLabel:GLocal.LT_EditApp_Label_FTPHost,value:"ftp://"+t.hosting.ftp.host+"/",width:"500",readOnly:true},{fieldLabel:GLocal.LT_EditApp_Label_FTPUser,value:t.hosting.ftp.user,width:"500",readOnly:true},{fieldLabel:GLocal.LT_EditApp_Label_FTPPassword,value:GLocal.LT_EditApp_Value_FTPPassword,width:"500",readOnly:true}]};var y={xtype:"fieldset",title:GLocal.LT_EditApp_Title_HTTP,collapsible:true,collapsed:true,formId:z+"-http-form",bodyStyle:"padding:16px 18px 10px 32px;",defaultType:"textfield",labelAlign:"top",items:[{fieldLabel:GLocal.LT_EditApp_Label_HTTP,value:"http://"+t.hosting.domain+"/",width:"500",readOnly:true}]};var q=new Ext.form.FormPanel({border:false,defaults:{msgTarget:"side"},defaultType:"textfield",labelPad:-100,width:500,monitorValid:true,items:[{xtype:"label",text:"Domains",style:{fontSize:"12px"}},{xtype:"textarea",height:120,name:"domain",allowBlank:false,blankText:"Add domain separated by commas",value:"",anchor:"100%"}],buttons:[{text:"Save domains",height:32,formBind:true,handler:function(){var B={appid:z,domain:v.find("name","domain")[0].getValue()}}}]});var r={xtype:"fieldset",title:"Domains binding",collapsible:true,collapsed:true,disabled:true,bodyStyle:"padding:16px 18px 10px 32px;",items:q};return[{xtype:"panel",region:"center",bodyStyle:"padding:32px 48px 48px 48px;",border:false,tbar:[{text:GLocal.LT_AppTree_Node_Run,scale:"large",iconCls:"icon-application-go-32",handler:function(){var B="http://"+t.hosting.domain+"/";window.open(B,z)}}],items:[x,w,u,y,A]}]}},TypeTab:function(D,A,u){var K=HApplications.GetType(D,u);if(!K){K={fields:{id:"int"},oFieldStore:new HStore([{name:"name"},{name:"type"}]),aObjectsColumns:[{header:"id",sortable:true,dataIndex:"id"}]};K.oFieldStore.LoadData([["id","int"]]);K.oObjectsStore=new HObjectsStore(D,K)}var v=1,J=K.oObjectsStore.GetStore();var y=new Ext.grid.ColumnModel({defaults:{sortable:true},columns:[{header:GLocal.LT_EditField_Column_Name,sortable:true,dataIndex:"name",renderer:SafeEscape,editor:new Ext.form.TextField({allowBlank:false})},{header:GLocal.LT_EditField_Column_Type,sortable:true,dataIndex:"type",renderer:SafeEscape}]});function I(N){var O=new Ext.grid.ColumnModel({defaults:{sortable:true},columns:N});return O}var M=new Ext.ux.grid.RowEditor({saveText:GLocal.LT_Common_Button_Apply,cancelText:GLocal.LT_Common_Button_Cancel});function q(Q){var P=Q.text||"string";var N=H.getStore().recordType;var O=new N({name:"",type:P});H.stopEditing();H.store.insert(0,O);H.startEditing(0,0)}var w=new Ext.form.NumberField({allowDecimals:false,allowNegative:false,minValue:1,maxValue:10240,width:200});var z=new Ext.form.TextField({width:200});var H=new Ext.grid.EditorGridPanel({title:GLocal.LT_EditType_Title_Fields,iconCls:"icon-field",cm:y,border:false,viewConfig:{forceFit:true},store:K.oFieldStore.GetStore(),stripeRows:true,tbar:[{text:GLocal.LT_EditType_Button_AddField,iconCls:"icon-field-add",menu:{items:[{text:GLocal.LT_EditType_Label_BaseType,menu:{items:[{text:"byte",handler:q},{text:"short",handler:q},"-",{text:"boolean",handler:q},{text:"int",handler:q},{text:"float",handler:q},{text:"double",handler:q},{text:"long",handler:q},"-",{text:"char",handler:q},{text:"text",handler:q},{text:"mtext",handler:q},{text:"string",handler:q},{text:"string(128)",handler:q},{text:"string(256)",handler:q},{text:"string(512)",handler:q},{text:"string(1024)",handler:q},{text:"string(N)",menu:{items:[{xtype:"label",text:GLocal.LT_EditType_Label_StringN},w,{text:GLocal.LT_Common_Button_Add,iconCls:"icon-add",handler:function(){var O=parseInt(w.getValue());w.setValue("");if(!O||O<1||O>10240){return}q({text:"string("+O+")"})}}]}},"-",{text:"list&lt;string&gt;",handler:q},{text:"set&lt;string&gt;",handler:q},{text:"map&lt;string, string&gt;",handler:q}]}},{text:GLocal.LT_EditType_Label_DateTime,menu:{items:[{text:"date",handler:q},{text:"time",handler:q},{text:"datetime",handler:q},{text:"millisec",handler:q}]}},{text:GLocal.LT_EditType_Label_SpecialType,menu:{items:[{text:"user",handler:q},{text:"signature",handler:q}]}},{text:GLocal.LT_EditType_Label_OtherType,menu:{items:[{xtype:"label",text:GLocal.LT_EditType_Label_TypeName},z,{text:GLocal.LT_Common_Button_Add,iconCls:"icon-add",handler:function(){var N=z.getValue();z.setValue("");if(!N){return}q({text:N})}}]}}]}},{text:GLocal.LT_EditType_Button_RemoveField,iconCls:"icon-field-delete",handler:function(){var O=H.getSelectionModel().getSelectedCell();if(O&&O.length){var N=H.store.getAt(O[0]);if(N.get("name")){Ext.MessageBox.show({width:350,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal.LT_EditType_Confirm_DeleteField,{sName:N.get("name")}),buttons:Ext.MessageBox.YESNO,fn:function(P){if(P=="yes"){HApplications.RemoveField(D,u,N.get("name"),function(){H.store.removeAt(O[0]);for(var Q=0;Q<K.aObjectsColumns.length;Q++){if(K.aObjectsColumns[Q].header==N.get("name")){delete K.fields[N.get("name")];ReconfigColumns(K);K.oObjectsStore=new HObjectsStore(D,K);J=K.oObjectsStore.GetStore();var R=new Ext.grid.ColumnModel({columns:K.aObjectsColumns});r.reconfigure(J,R);C.bindStore(J,true);J.load({params:{start:0,limit:nObjectLimit}});r.getView().refresh();break}}})}},icon:Ext.MessageBox.QUESTION})}else{H.store.removeAt(O[0])}}}}],listeners:{afteredit:function(N){var P=N.record;if(N.originalValue==""){if(N.value){HApplications.AddField(D,u,N.value,P.get("type"),function(){P.commit();var R=N.value;var T=P.get("type");K.fields[R]=T;ReconfigColumns(K);K.oObjectsStore=new HObjectsStore(D,K);J=K.oObjectsStore.GetStore();var S=new Ext.grid.ColumnModel({columns:K.aObjectsColumns});r.reconfigure(J,S);C.bindStore(J,true);J.load({params:{start:0,limit:nObjectLimit}})},function(R){H.store.remove(P)})}else{H.store.remove(P)}}else{if(N.value!=N.originalValue){if(N.value){if(N.field=="name"){var O=N.originalValue,Q=N.value;HApplications.RenameField(D,u,O,Q,function(S){if(S.result==0){delete K.fields[O];var T=P.get("type");K.fields[Q]=T;ReconfigColumns(K);K.oObjectsStore=new HObjectsStore(D,K);J=K.oObjectsStore.GetStore();var R=new Ext.grid.ColumnModel({columns:K.aObjectsColumns});r.reconfigure(J,R);C.bindStore(J,true);J.load({params:{start:0,limit:nObjectLimit}})}else{P.set("name",O)}P.commit()})}else{if(N.field=="type"){}}}else{P.set("name",N.originalValue)}}}}}});var L=new Ext.form.FormPanel({border:false,defaultType:"textfield",bodyStyle:"padding:10px 22px 0px 10px;",labelAlign:"top",items:[{fieldLabel:GLocal.LT_EditType_Label_TypeName,name:"name",allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,value:(A=="addtype"?"":u),width:"100%",listeners:{render:function(N){N.focus()}}}],buttons:[{text:GLocal.LT_Common_Button_Apply,iconCls:"icon-type-save",handler:function(){var N=L.find("name","name")[0].getValue();if(A=="addtype"&&N){K.name=N;HApplications.DefineType(D,K,function(){e.NodeAction("TA_AddType",D,N);d.ChangeTab(G,D,"addtype","type",u,N);A="type";u=N;r.enable();B.getLayout().setActiveItem(1)})}else{if(u!=N){HApplications.RenameType(D,u,N,function(){e.NodeAction("TA_RenameType",D,u,N);d.ChangeTab(G,D,"type","type",u,N);K.name=N;u=N})}}}}]});var E=new Ext.form.FormPanel({border:false,bodyStyle:"padding:10px;",items:[{xtype:"label",text:GLocal.LT_EditType_Label_DeleteType}],buttons:[{text:GLocal.LT_EditType_Button_DeleteType,iconCls:"icon-type-delete",height:24,handler:function(){Ext.MessageBox.show({width:350,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal.LT_EditType_Confirm_DeleteType,{sName:u}),buttons:Ext.MessageBox.YESNO,fn:function(N){if(N=="yes"){HApplications.UndefineType(D,u,function(){d.Close(D,A,u);e.NodeAction("TA_RemoveType",D,u)})}},icon:Ext.MessageBox.QUESTION})}}]});var F=true,s="";var C=new Ext.PagingToolbar({pageSize:nObjectLimit,store:J,displayInfo:true,beforePageText:GLocal.LT_Objects_Page_Before,afterPageText:GLocal.LT_Objects_Page_After,firstText:GLocal.LT_Objects_Page_First,prevText:GLocal.LT_Objects_Page_Prev,nextText:GLocal.LT_Objects_Page_Next,lastText:GLocal.LT_Objects_Page_Last,refreshText:GLocal.LT_Objects_Page_Refresh,displayMsg:GLocal.LT_Objects_Page_Display,emptyMsg:GLocal.LT_Objects_Page_Empty,prependButtons:true,items:[{xtype:"label",text:"HQL",style:"padding:0px 4px 0px 4px"},{xtype:"textfield",name:"hql",width:225,listeners:{specialkey:function(P,O){if(O.getKey()==O.ENTER){var N=C.find("name","hql")[0].getValue();J.setBaseParam("criteria",N);J.load({params:{start:0,limit:nObjectLimit}})}}}},"-"],listeners:{change:function(O,N){v=N.activePage},beforechange:function(){var N=C.find("name","hql")[0].getValue();J.setBaseParam("criteria",N);if(F){s=N;F=false}if(N!=s){s=N;J.load({params:{start:0,limit:nObjectLimit}});return false}}}});var x=new Ext.ux.grid.RowEditor({saveText:GLocal.LT_Common_Button_Save,cancelText:GLocal.LT_Common_Button_Cancel,listeners:{afteredit:function(O,P,N,Q){}}});ReconfigColumns(K);var r=new Ext.grid.GridPanel({title:GLocal.LT_Objects_Title_Objects,region:"center",store:J,columns:K.aObjectsColumns,stripeRows:true,bbar:C,plugins:[x],disabled:A=="addtype",tools:[{id:"refresh",on:{click:function(){r.getView().refresh()}}}],tbar:[{text:GLocal.LT_Objects_Button_AddObject,iconCls:"icon-add",handler:function(){HApplications.CreateObject(D,u,function(O){var R=J.recordType;var Q={id:O.id};for(var N in O.object){Q[N]=O.object[N]}for(var N in K.fields){if(!Q[N]){Q[N]=FieldDefault(K.fields[N])}}var P=new R(Q);x.stopEditing();J.insert(0,P);r.getView().refresh();r.getSelectionModel().selectRow(0);x.startEditing(0)})}},{ref:"../removeBtn",text:GLocal.LT_Objects_Button_RemoveObject,iconCls:"icon-delete",split:true,menu:[{text:GLocal.LT_Objects_Button_RemoveObjectByCriteria,handler:function(){var N=J.baseParams.criteria;if(N){HApplications.DeleteObjects(D,u,N,function(O){if(O.result==0){J.removeAll()}else{GOut.Error("Error",O)}})}}}],handler:function(){x.stopEditing();var P=r.getSelectionModel().getSelections();var N="",R="";for(var O=0,Q;Q=P[O];O++){N+=R+"id="+Q.get("id");R=" or "}Ext.MessageBox.show({width:350,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal[O>1?"LT_EditType_Confirm_DeleteObjects":"LT_EditType_Confirm_DeleteObject"],{sCriteria:N}),buttons:Ext.MessageBox.YESNO,fn:function(S){if(S=="yes"){HApplications.DeleteObjects(D,u,N,function(U){if(U.result==0){for(var T=0,V;V=P[T];T++){J.remove(V)}}else{GOut.Error("Error",U)}})}},icon:Ext.MessageBox.QUESTION})}}],listeners:{reconfigure:function(){x.removeAll(true);x.initFields()}}});var t=new Ext.form.FormPanel({border:false,defaults:{msgTarget:"side"},defaultType:"textarea",bodyStyle:"padding:10px 22px 0px 10px;",labelAlign:"top",items:[{fieldLabel:GLocal.LT_EditType_Title_Unique,name:"unique",allowBlank:true,width:"100%",height:80,value:K.unique?toSource(K.unique):""},],buttons:[{text:GLocal.LT_Common_Button_Apply,iconCls:"icon-type-save",handler:function(){HTransport.Get(GAPI.Method("Data.Base","SetUniqueFields"),{appid:D,session:HUser.GetSession(),type:K.name,unique:t.find("name","unique")[0].getValue()},function(N){if(N.result==0){}else{GOut.Error("Error",N)}})}}]});var B=new Ext.Panel({title:GLocal.LT_EditType_Title_Type,region:"west",layout:"accordion",collapsible:true,collapsed:A=="type",width:250,activeItem:(A=="addtype"?0:1),items:[{title:GLocal.LT_EditType_Title_Settings,border:false,items:L},H,{title:GLocal.LT_EditType_Title_Unique,iconCls:"icon-field",border:false,items:t},{title:GLocal.LT_EditType_Title_RemoveType,iconCls:"icon-type-delete",border:false,items:E}]});var G=new Ext.Panel({title:u+(HApplications.GetApp(D)?" ["+HApplications.GetApp(D).name+"]":""),iconCls:"icon-type-table",closable:true,layout:"border",bodyBorder:false,defaults:{split:true,animFloat:false,autoHide:false,useSplitTips:true},items:[B,r]});if(A=="type"){J.load({params:{start:0,limit:nObjectLimit}})}return G},RoleTab:function(A,q,u){var v,y,x;var r=new Ext.form.FormPanel({border:false,defaultType:"textfield",bodyStyle:"padding:10px 22px 0px 10px;",labelAlign:"top",items:[{fieldLabel:GLocal.LT_Role_Label_RoleName,name:"name",allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,value:(q=="addrole"?"":u),width:"100%",listeners:{render:function(D){D.focus()}}}],buttons:[{text:GLocal.LT_Common_Button_Apply,handler:function(){var D=r.find("name","name")[0].getValue();if(q=="addrole"&&D){HApplications.CreateRole(A,D,function(){e.NodeAction("TA_AddRole",A,D);d.ChangeTab(v,A,"addrole","role",u,D);q="role";u=D;y.enable();x.enable()})}else{}}}]});var w=new Ext.form.FormPanel({border:false,bodyStyle:"padding:10px;",items:[{xtype:"label",text:GLocal.LT_Role_Label_DeleteRole}],buttons:[{text:GLocal.LT_Role_Button_DeleteRole,height:24,handler:function(){Ext.MessageBox.show({width:350,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal.LT_Role_Confirm_DeleteRole,{sName:u}),buttons:Ext.MessageBox.YESNO,fn:function(D){if(D=="yes"){HApplications.DeleteRole(A,u,function(){d.Close(A,q,u);e.NodeAction("TA_RemoveRole",A,u)})}},icon:Ext.MessageBox.QUESTION})}}]});var z=new Ext.Panel({title:GLocal.LT_Role_Title_Role,region:"west",layout:"accordion",collapsible:true,collapsed:q=="role",width:220,activeItem:0,items:[{title:GLocal.LT_Role_Title_Settings,border:false,items:r},{title:GLocal.LT_Role_Title_RemoveRole,iconCls:"icon-type-delete",border:false,items:w}]});var t=new Ext.data.JsonStore({root:"policy",totalProperty:"count",idProperty:"id",fields:[{name:"object"},{name:"rights"}],baseParams:{appid:A,session:HUser.GetSession(),role:u},proxy:new Ext.data.DirectProxy({directFn:function(E,F,D){HTransport.Get(GAPI.Method("Security.AccessControl","GetPolicy"),E,function(G){if(G.result==0){F.apply(D,[{count:G.policy.length,policy:G.policy},{status:1}])}else{F.apply(D,[{count:0,policy:[]},{status:1}])}})}}),listeners:{add:function(F,E,D){},update:function(I,G,F){if(F==Ext.data.Record.EDIT){var H=G.get("object"),E=G.get("rights");if(!H&&!E){return true}if(!G.modified.object&&!G.modified.rights&&H&&E){I.each(function(J){if(J!=G&&J.get("object").toLowerCase()==H.toLowerCase()){t.remove(G);J.set("rights",E.toUpperCase());G=J}});var D={appid:A,session:HUser.GetSession(),role:u,object:H,rights:E};HTransport.Get(GAPI.Method("Security.AccessControl","AddPolicy"),D,function(J){if(J.result==0){G.set("rights",E.toUpperCase());G.commit()}})}else{if(G.modified.object&&G.modified.object!=H){var D={appid:A,session:HUser.GetSession(),role:u,object:H,rights:E};HTransport.Get(GAPI.Method("Security.AccessControl","AddPolicy"),D,function(J){if(J.result==0){D.object=G.modified.object;delete D.rights;HTransport.Get(GAPI.Method("Security.AccessControl","RemovePolicy"),D,function(K){if(K.result==0){G.set("object",H);G.commit()}})}})}if(G.modified.rights&&G.modified.rights!=E){var D={appid:A,session:HUser.GetSession(),role:u,object:H,rights:E};HTransport.Get(GAPI.Method("Security.AccessControl","AddPolicy"),D,function(J){if(J.result==0){G.set("rights",E.toUpperCase());G.commit()}})}}}}}});var s=new Ext.ux.grid.RowEditor({saveText:GLocal.LT_Common_Button_Save,cancelText:GLocal.LT_Common_Button_Cancel});y=new Ext.grid.GridPanel({title:GLocal.LT_Role_Title_Policy,region:"center",store:t,plugins:[s],columns:[{header:GLocal.LT_Role_Column_Object,sortable:true,dataIndex:"object",renderer:SafeEscape,editor:{xtype:"textarea"}},{header:GLocal.LT_Role_Column_Policy,sortable:true,dataIndex:"rights",renderer:SafeEscape,editor:{xtype:"textarea"}}],stripeRows:true,viewConfig:{forceFit:true},disabled:q=="addrole",tbar:[{text:GLocal.LT_Role_Button_AddPolicy,iconCls:"icon-add",handler:function(){var E=t.recordType,D=new E({});s.stopEditing();t.insert(0,D);y.getView().refresh();y.getSelectionModel().selectRow(0);s.startEditing(0)}},{text:GLocal.LT_Role_Button_RemovePolicy,iconCls:"icon-delete",handler:function(){var D={appid:A,session:HUser.GetSession(),role:u};var F=y.getSelectionModel().getSelections();for(var E=0,G;G=F[E];E++){t.remove(G);D.object=G.get("object");if(D.object){HTransport.Get(GAPI.Method("Security.AccessControl","RemovePolicy"),D,function(H){if(H.result==0){}})}}}}]});var C=new Ext.data.JsonStore({root:"subjects",totalProperty:"count",idProperty:"id",fields:[{name:"subject"}],baseParams:{appid:A,session:HUser.GetSession(),role:u},proxy:new Ext.data.DirectProxy({directFn:function(E,F,D){HTransport.Get(GAPI.Method("Security.AccessControl","GetSubjectsByRole"),E,function(I){if(I.result==0){var H=[];for(var G=0;G<I.subjects.length;G++){H.push({subject:I.subjects[G]})}F.apply(D,[{count:I.subjects.length,subjects:H},{status:1}])}else{F.apply(D,[{count:0,subjects:[]},{status:1}])}})}}),listeners:{update:function(H,G,F){if(F==Ext.data.Record.EDIT){var E=G.get("subject");if(!E){return true}var D={appid:A,session:HUser.GetSession(),role:u,subject:E};HTransport.Get(GAPI.Method("Security.AccessControl","ApplyRole"),D,function(I){if(I.result==0){G.commit()}})}}}});var B=new Ext.ux.grid.RowEditor({saveText:GLocal.LT_Common_Button_Save,cancelText:GLocal.LT_Common_Button_Cancel});x=new Ext.grid.GridPanel({title:GLocal.LT_Role_Title_Apply,region:"east",width:300,store:C,plugins:[B],columns:[{header:GLocal.LT_Role_Column_Subject,sortable:true,dataIndex:"subject",renderer:SafeEscape,editor:{xtype:"textarea"}}],stripeRows:true,viewConfig:{forceFit:true},disabled:q=="addrole",tbar:[{xtype:"button",text:GLocal.LT_Role_Button_ApplyRole,iconCls:"icon-add",handler:function(){var E=C.recordType,D=new E({});B.stopEditing();C.insert(0,D);x.getView().refresh();x.getSelectionModel().selectRow(0);B.startEditing(0)}},{xtype:"button",text:GLocal.LT_Role_Button_RemoveRole,iconCls:"icon-delete",handler:function(){var D={appid:A,session:HUser.GetSession(),role:u};var F=x.getSelectionModel().getSelections();for(var E=0,G;G=F[E];E++){C.remove(G);D.subject=G.get("subject");if(D.subject){HTransport.Get(GAPI.Method("Security.AccessControl","RemoveRole"),D,function(H){if(H.result==0){}})}}}}]});v=new Ext.Panel({title:u+(HApplications.GetApp(A)?" ["+HApplications.GetApp(A).name+"]":""),iconCls:"icon-role",closable:true,layout:"border",bodyBorder:false,defaults:{split:true,animFloat:false,autoHide:false,useSplitTips:true},items:[z,y,x]});if(q=="role"){t.load();C.load()}return v},nNewScriptCount:1,nNewFileCount:1,__getParser:function(r){var q="codemirror/css/";switch(GThemeName){case"blue":case"gray":q="codemirror/css/";break;case"dark":q="codemirror/css-dark/";break}switch(r){case"java":return{aFile:["tokenizejava.js","parsejava.js"],aStyle:q+"javacolors.css"+skipcache(),bLines:true};case"ejs":case"js":case"javascript":return{aFile:["tokenizejavascript.js","parsejavascript.js"],aStyle:q+"jscolors.css",bLines:true};case"php":return{aFile:["parsexml.js","parsecss.js","tokenizejavascript.js","parsejavascript.js","tokenizephp.js"+skipcache(),"parsephp.js","parsephphtmlmixed.js"],aStyle:[q+"xmlcolors.css",q+"jscolors.css",q+"csscolors.css",q+"phpcolors.css"+skipcache()],bLines:true};case"htm":case"html":case"xhtml":return{aFile:["parsexml.js","parsecss.js","tokenizejavascript.js","parsejavascript.js","parsehtmlmixed.js"],aStyle:[q+"xmlcolors.css",q+"jscolors.css",q+"csscolors.css"],bLines:true};case"css":return{aFile:"parsecss.js",aStyle:q+"csscolors.css",bLines:true};case"xml":return{aFile:"parsexml.js",aStyle:q+"xmlcolors.css",bLines:true};case"doc":case"txt":return{aFile:"parsedummy.js",aStyle:q+"docs.css",bLines:false};default:return{aFile:"parsedummy.js",aStyle:q+"default.css",bLines:false}}},__defaultCode:function(q){if(q=="php"){return"<?php\n\n\n?>"}else{return""}},ScriptTab:function(C,y,t){var q=0;var u,A;var F=y.split(":")[0];var R=y.split(":")[1]||"js";var z=y.split(":")[2]||"";var K,G={name:t,type:R,code:d.__defaultCode(R)};if(F=="script"){G=HApplications.GetScript(C,t)}if(F=="files"){G=HApplications.GetFile(C,t)}if(G.type){R=G.type}var J=new Ext.Toolbar.TextItem(XTemplate(GLocal.LT_Script_Label_Lines,{nCount:0}));var x=new Ext.Toolbar.TextItem(XTemplate(GLocal.LT_Script_Label_Size,{nCount:0}));var O=new Ext.ux.StatusBar({height:"22px",items:[J," ",x]});function s(){var S=K.getCode(),U=S.length?S.length:0,T=S.split("\n").length;Ext.fly(J.getEl()).update(XTemplate(GLocal.LT_Script_Label_Lines,{nCount:T}));Ext.fly(x.getEl()).update(XTemplate(GLocal.LT_Script_Label_Size,{nCount:(U/1024).toFixed(2)}))}function H(){if(F=="addscript"||F=="addfile"){return}O.showBusy(GLocal.LT_Process_Label_Saving);r(0,function(v){O.setStatus({iconCls:v.result==0?"x-status-saved":"x-status-error-saved",text:XTemplate(GLocal[v.result==0?"LT_Notify_Label_AutoSaved":"LT_Error_Label_AutoSaved"],{sTime:new Date().format("g:i:s A")})})})}var L=new Ext.form.TextField({fieldLabel:GLocal.LT_Common_Label_Name,allowBlank:false,blankText:GLocal.LT_Common_Text_RequiredField,width:"100%",value:F=="addscript"||F=="script"?t:GetFileName(t),listeners:{render:function(v){v.focus()}}});if(typeof G.annotations=="object"){var N="",P,E;for(var w in G.annotations){P=G.annotations[w];N+="@"+w;if(typeof P=="object"&&P.value&&P.value.length){E="";N+="(";for(var B=0;B<P.value.length;B++){N+=E+"'"+P.value[B]+"'";E=", "}N+=")"}N+="\n"}G.annotations=N}var Q=new Ext.form.TextArea({fieldLabel:GLocal.LT_Script_Menu_Anno,width:"100%",height:150,value:G.annotations,listeners:{render:function(v){v.focus()}}});var D=[{title:GLocal.LT_Common_Label_CommonSettings,items:{xtype:"form",border:false,defaultType:"textfield",bodyStyle:"padding:10px 22px 0px 10px;",labelAlign:"top",items:L,buttons:[{text:GLocal.LT_Common_Button_Save,iconCls:"icon-script-save",handler:function(){var v=F;r(0,function(){if(v=="addscript"||v=="addfile"){u.oSettingsMenu.toggle(false);A.collapse(false)}})}}]}}];D.push({title:"Удалить",bodyStyle:"padding:10px 22px 0px 10px;",items:[{xtype:"button",text:GLocal.LT_Script_Button_Remove,iconCls:"icon-script-delete",handler:function(){t=u.sCurrentName;Ext.MessageBox.show({width:350,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal.LT_Script_Confirm_DeleteScript,{sName:t}),buttons:Ext.MessageBox.YESNO,fn:function(v){if(v=="yes"){if(F=="script"){HApplications.DeleteScript(C,t,function(){d.Close(C,F,t);d.Close(C,"runscript",t);e.NodeAction("TA_RemoveScript",C,t)})}if(F=="files"){HApplications.DeleteFile(C,t,function(){d.Close(C,F,t);e.NodeAction("TA_RemoveFile",C,t)})}}},icon:Ext.MessageBox.QUESTION})}}]});A=new Ext.Panel({region:"west",layout:"accordion",animCollapse:false,collapsed:F=="script"||F=="files",width:220,border:false,activeItem:0,items:D});u=new Ext.Panel({sCurrentName:t,oScriptNameField:L,title:ShortName(F=="addscript"||F=="script"?t:GetFileName(t))+(HApplications.GetApp(C)?" ["+HApplications.GetApp(C).name+"]":""),iconCls:F=="addfile"||F=="files"?GetExtIconClass(t):GetExtIconClass("."+G.type),closable:true,layout:"border",bodyBorder:false,bbar:O,tbar:[{text:GLocal.LT_Script_Button_Settings,iconCls:"icon-script-gear",ref:"../oSettingsMenu",enableToggle:true,pressed:F=="addscript"||F=="addfile",listeners:{toggle:function(S,v){if(v){A.expand(false)}else{A.collapse(false)}}}},"-",{xtype:"button",iconCls:"icon-script-save",handler:function(){r(0)}},"-",{xtype:"button",iconCls:"icon-undo",handler:function(){K.undo()}},{xtype:"button",iconCls:"icon-redo",handler:function(){K.redo()}},"-",{xtype:"textfield",width:200,ref:"../FindField",listeners:{specialkey:function(S,v){if(v.getKey()==v.ENTER){I()}}}},{xtype:"label",text:"на",style:"padding:0px 4px 0px 4px",ref:"../ReplaceToText",hidden:true},{xtype:"textfield",width:150,ref:"../ReplaceToField",hidden:true,listeners:{specialkey:function(S,v){if(v.getKey()==v.ENTER){I()}}}},{text:GLocal.LT_Script_Button_Find,iconCls:"icon-find",split:true,ref:"../FindBtn",menu:{items:[{text:GLocal.LT_Script_Button_Find,value:"find",checked:true,group:"find",checkHandler:function(){u.FindBtn.setText(GLocal.LT_Script_Button_Find);u.FindField.setWidth(200);u.ReplaceToText.setVisible(false);u.ReplaceToField.setVisible(false);q=0}},{text:GLocal.LT_Script_Button_Replace,value:"replace",checked:false,group:"find",checkHandler:function(){u.FindBtn.setText(GLocal.LT_Script_Button_Replace);u.FindField.setWidth(150);u.ReplaceToText.setVisible(true);u.ReplaceToField.setVisible(true);q=1}},{text:GLocal.LT_Script_Button_ToLine,value:"line",checked:false,group:"find",checkHandler:function(){u.FindBtn.setText(GLocal.LT_Script_Button_ToLine);u.FindField.setWidth(50);u.ReplaceToText.setVisible(false);u.ReplaceToField.setVisible(false);q=2}}]},handler:I},R=="java"||R=="js"||R=="javascript"?{text:"Make beauty",handler:function(){var v=K.getCode();v=js_beautify(v,{indent_size:4,indent_char:" ",preserve_newlines:true,braces_on_own_line:false,keep_array_indentation:false,space_after_anon_function:true});K.setCode(v,true)}}:"","-",F=="addscript"||F=="script"?{text:GLocal.LT_Script_Button_Compile,iconCls:"icon-script-compile",handler:function(){t=u.sCurrentName;r(2)}}:"",F=="addscript"||F=="script"?{text:GLocal.LT_Script_Button_Execute,iconCls:"icon-script-go",split:true,menu:{items:[{text:GLocal.LT_Script_Button_ExecuteInWindow,iconCls:"icon-application-go",handler:function(){t=u.sCurrentName;r(0,function(){var S=HApplications.GetApp(C);if(!S){return}var v="http://"+S.hosting.domain+"/"+t;window.open(v,C)})}}]},handler:function(){r(1)}}:{text:GLocal.LT_Script_Button_Execute,iconCls:"icon-application-go",handler:function(){t=u.sCurrentName;r(0,function(){var S=HApplications.GetApp(C);if(!S){return}var T=t.split("public_html/")[1]||t;var v="http://"+S.hosting.domain+"/"+T;window.open(v,C)})}}],defaults:{split:true,animFloat:false,autoHide:false,useSplitTips:true},items:[A,{region:"center",items:{xtype:"textarea",id:C+"-"+t+"-codearea",name:"code",hidden:true,listeners:{render:function(){t=u.sCurrentName;var S;if(F=="addscript"||F=="script"){S=G.type}if(F=="addfile"||F=="files"){S=GetFileExt(t)}var v=d.__getParser(S);K=CodeMirror.fromTextArea(C+"-"+t+"-codearea",{content:G.code,parserfile:v.aFile,stylesheet:v.aStyle,path:"codemirror/js/",indentUnit:4,disableSpellcheck:true,autoMatchParens:true,lineNumbers:v.bLines,width:"100%",height:"100%",saveFunction:function(){r(0)},initCallback:function(){if(F=="script"){HApplications.GetScript(C,t).code=K.getCode()}if(F=="files"){HApplications.GetFile(C,t).code=K.getCode()}s()},onChange:DelayFunc(function(){s()},2500)})}}}}],listeners:{activate:function(S){var v=u.sCurrentName;var T=d.oTabs[C+"-runscript-"+v+"-panel"];if(T){n.activate(T)}},beforeclose:function(U){if(F=="addscript"){return true}if(F=="addfile"){return true}var T=u.sCurrentName;var S=K.getCode();var v;if(F=="script"){v=HApplications.GetScript(C,T).code}if(F=="files"){v=HApplications.GetFile(C,T).code}if(v!=S){Ext.MessageBox.show({title:GLocal.LT_Script_Title_SaveChanges,msg:GLocal.LT_Script_Message_SaveChanges,width:500,buttons:Ext.MessageBox.YESNOCANCEL,fn:function(V){if(V=="yes"){r(0);d.Close(C,F,T);d.Close(C,"runscript",T)}else{if(V=="no"){d.Close(C,F,T);d.Close(C,"runscript",T)}}},icon:Ext.MessageBox.QUESTION});return false}},close:function(){var v=u.sCurrentName;d.Close(C,"runscript",v)},resize:function(v){}}});function r(W,X){var V=u.sCurrentName,Y=L.getValue();Y=Y.replace(/\./g,"/");if(F=="addfile"||F=="files"){var U=GetFilePath(V);Y=U?U+"/"+GetFileName(L.getValue()):GetFileName(L.getValue())}var T=G.type;var S=K.getCode();if(F=="addscript"){HApplications.CreateScript(C,Y,T,S,function(Z){e.NodeAction("TA_AddScript",C,Y+":"+T);d.ChangeTab(u,C,"addscript","script",V,Y);F="script";V=Y;if(W==1){j(C,V)}if(W==2){l(C,V)}if(X){X(Z)}})}else{if(F=="script"){var v=HApplications.GetScript(C,V).code;if(Y!=V){HApplications.SaveScript(C,V,"name",Y,function(){e.NodeAction("TA_RenameScript",C,V,Y);d.ChangeTab(u,C,"script","script",V,Y);d.ChangeTab(null,C,"runscript","runscript",V,Y);V=Y;if(v!=S){HApplications.SaveScript(C,V,"code",S,function(Z){if(W==1){j(C,V)}if(W==2){l(C,V)}if(X){X(Z)}})}else{if(W==1){j(C,V)}if(W==2){l(C,V)}if(X){X({result:0})}}})}else{if(v!=S){HApplications.SaveScript(C,V,"code",S,function(Z){if(W==1){j(C,V)}if(W==2){l(C,V)}if(X){X(Z)}})}else{if(W==1){j(C,V)}if(W==2){l(C,V)}if(X){X({result:0})}}}}else{if(F=="addfile"){HApplications.WriteFile(C,Y,S,function(Z){e.NodeAction("TA_AddFile",C,Y);d.ChangeTab(u,C,"addfile","files",V,Y);F="files";V=Y;if(X){X(Z)}})}else{if(F=="files"){var v=HApplications.GetFile(C,V).code;if(Y!=V){HApplications.RenameFile(C,V,Y,function(){e.NodeAction("TA_RenameFile",C,V,Y);d.ChangeTab(u,C,"files","files",V,Y);V=Y;if(v!=S){HApplications.WriteFile(C,V,S,function(Z){if(X){X(Z)}})}else{if(X){X({result:0})}}})}else{if(v!=S){HApplications.WriteFile(C,V,S,function(Z){if(X){X(Z)}})}else{if(X){X({result:0})}}}}}}}}function I(){if(q==0){var T=u.FindField.getValue();if(!T){return}var W=true;var v=K.getSearchCursor(T,W);W=false;function V(){if(v.findNext()){v.select();Ext.MessageBox.confirm(GLocal.LT_Common_Text_Confirm,GLocal.LT_Script_Message_FindNext,function(Y){if(Y=="yes"){V()}})}}V()}else{if(q==1){var U=u.FindField.getValue();var S=u.ReplaceToField.getValue();if(!U&&!S){return}var v=K.getSearchCursor(U,false);while(v.findNext()){v.replace(S)}}else{if(q==2){var X=parseInt(u.FindField.getValue());if(X&&!isNaN(Number(X))){K.jumpToLine(Number(X))}}}}}function M(v,S){if(S){G.type=v.value;HApplications.SaveScript(C,t,"type",G.type,function(){e.NodeAction("TA_RenameScript",C,t,t);d.ChangeTab(u,C,"files","files",t,t)})}}return u},RunTab:function(w,x,u){var r=HApplications.GetApp(w);var s=new Ext.form.TextArea({name:"response",readOnly:true,width:"100%",height:"100%"});var v=true,t=Ext.get(document.createElement("iframe"));t.set({name:"responseiframe",width:"100%",height:"100%",style:"display:none;"});var q=new Ext.Panel({sCurrentName:u,title:ShortName(u)+(HApplications.GetApp(w)?" ["+HApplications.GetApp(w).name+"]":""),iconCls:"icon-application-terminal",closable:true,layout:"fit",bodyBorder:false,border:false,tbar:[{xtype:"label",text:GLocal.LT_Run_Title_Parameters,style:"padding:0px 4px 0px 4px"},{xtype:"textfield",width:250,ref:"../Params"},"-",{text:GLocal.LT_Common_Text_Refresh,iconCls:"icon-arrow-refresh",handler:function(){u=q.sCurrentName;j(w,u);if(!v){t.set({src:"http://"+r.hosting.domain+"/"+u})}}},"-",{text:"IFrame",iconCls:"run-in-iframe",ref:"../oIframeButton",enableToggle:true,listeners:{toggle:function(z,y){if(y){u=q.sCurrentName;if(v){t.set({src:"http://"+r.hosting.domain+"/"+u});v=false}t.show();s.hide()}else{s.show();t.hide()}}}}],items:[s,t]});return q}};function j(w,u){var v=d.Add(w,"runscript",u);n.activate(v);var r=v.Params.getValue();var s=v.find("name","response")[0];if(s){s.setValue(GLocal.LT_Run_Text_InProcess)}HApplications.Execute(w,u,r,function(z){var y=toSource(z);var x=y.substring(3,y.length-2);if(s){s.setValue(x)}});var t=v.find("name","response_iframe")[0];if(t){var q=HApplications.GetApp(w);t.set({src:"http://"+q.hosting.domain+"/"+u});alert("http://"+q.hosting.domain+"/"+u)}}function l(s,r){var q="| "+GLocal.LT_Script_Text_Compile+" "+r+"\n+----------------------------------------------------------------------------+\n";b.setValue(q);f.enable();n.activate(f);HApplications.Compile(s,r,function(t){if(t.result==0){q+="| "+GLocal.LT_Script_Text_NoErrors}else{q+="| "+GLocal.LT_Script_Text_ErrorCode+t.result+"\n| "+GLocal.LT_Script_Text_Error+t.error+(t.line?"\n| "+GLocal.LT_Script_Text_ErrorLine+t.line:"")}b.setValue(q)})}this.Construct=function(){o=new Ext.TabPanel({id:"content-panel",region:"center",activeTab:0,split:true,border:true,enableTabScroll:true,deferredRender:false,items:[{id:"start-panel",title:GLocal.LT_Tab_Title_Start,iconCls:"icon-start",layout:"fit",bodyStyle:"padding:25px",contentEl:"start-div",autoScroll:true,closable:true}]});var w=new Ext.ux.grid.RowExpander({tpl:new Ext.Template("<div style='padding:8px;padding-left:12px;'><b>IN</b>{params}<br /><b>OUT</b>{out}</div>")});b=new Ext.form.TextArea({readOnly:true,ctCls:"compile-text"});f=new Ext.Panel({title:GLocal.LT_Message_Title_Compile,iconCls:"icon-script-compile",layout:"fit",border:false,bodyBorder:false,items:b,disabled:true});function s(y,x){if(y>0){x.css="result-not-null"}return y}n=new Ext.TabPanel({region:"center",margins:"5 5 5 0",tabPosition:"bottom",activeTab:0,border:false,enableTabScroll:true,items:[{id:"services-panel",title:GLocal.LT_Tab_Title_Services,iconCls:"icon-service-out",xtype:"grid",layout:"fit",border:false,plugins:w,store:GOutPlatform.GetStore(),columns:[w,{header:"#",width:32,sortable:true,dataIndex:"number"},{header:GLocal.LT_Services_Column_Method,width:50,sortable:true,dataIndex:"method"},{id:"address",header:GLocal.LT_Services_Column_Address,width:300,sortable:true,dataIndex:"address"},{header:GLocal.LT_Services_Column_Time,width:80,sortable:true,dataIndex:"time"},{header:GLocal.LT_Services_Column_CpuTime,width:80,sortable:true,dataIndex:"cpu"},{header:GLocal.LT_Services_Column_Result,width:80,sortable:true,renderer:s,dataIndex:"result"},{header:GLocal.LT_Services_Column_Error,width:120,sortable:true,dataIndex:"error"}],stripeRows:true,autoExpandColumn:"address"},f]});c={id:"messages-panel",title:GLocal.LT_Panel_Title_Messages,iconCls:"icon-report",layout:"fit",region:"south",collapsible:true,collapsed:true,split:true,height:200,enableTabScroll:true,items:n,tools:[{id:"clear",title:GLocal.LT_Message_Tools_Clear,on:{click:function(){GOutPlatform.Clear()}}}]};h=new Ext.tree.AsyncTreeNode({id:"root",allowDrop:false});function t(z){var x=e.GetPath(z);var y=x.split("/");return{sPath:x,sAppid:y[0],sType:y[1],sName:y[2]}}function q(y,B){var B=B||p.getSelectionModel().getSelectedNode();if(B){if(B.leaf){B=B.parentNode}var A=t(B).sAppid;var x="NewScript"+d.nNewScriptCount;var z=d.Add(A,"addscript:"+y,x);d.Activate(z);d.nNewScriptCount++}}function r(A,D){var D=D||p.getSelectionModel().getSelectedNode();if(D){if(D.leaf){D=D.parentNode}var x=D.getPath();var C=t(D).sAppid;var y="";if(x.indexOf("/files")!=-1){y=x.split(C+"/files/")[1]||""}var z=(y?y+"/":"")+"NewFile"+d.nNewFileCount+"."+A;var B=d.Add(C,"addfile:"+A+":"+y,z);d.Activate(B);d.nNewFileCount++}}function u(A,C){var C=C||p.getSelectionModel().getSelectedNode();if(C){if(C.leaf){C=C.parentNode}var x=C.getPath();var B=t(C).sAppid;var y=x.split(B+"/files/")[1]||"";var z=y?y+"/"+A:A;HApplications.CreateFile(B,z,true,function(D){if(D.result==0){e.NodeAction("TA_AddFolder",B,z)}})}}var v=new Ext.form.TextField({width:150});p=new Ext.tree.TreePanel({id:"tree-panel",region:"center",split:true,autoScroll:true,containerScroll:false,border:false,rootVisible:false,lines:true,singleExpand:false,useArrows:false,animate:false,enableDD:true,tbar:[{text:GLocal.LT_AppTree_Node_AddItem,iconCls:"icon-script-add",disabled:true,menu:{items:[{text:GLocal.LT_AppTree_Node_AddScript,iconCls:"icon-folder-script",menu:{items:[{text:"Javascript (SSJS)",value:"javascript",iconCls:GetExtIconClass(".javascript"),handler:function(x){q(x.value)}},{text:"Java",value:"java",iconCls:GetExtIconClass(".java"),handler:function(x){q(x.value)}},{text:"PHP",value:"php",iconCls:GetExtIconClass(".php"),handler:function(x){q(x.value)}},"-",{text:"EJS",value:"ejs",iconCls:GetExtIconClass(".ejs"),handler:function(x){q(x.value)}}]}},{text:GLocal.LT_AppTree_Node_AddType,iconCls:"icon-folder-type",handler:function(){var B=p.getSelectionModel().getSelectedNode();if(B){if(B.leaf){B=B.parentNode}var x=B.getPath();var y=x.split("/");var A=y[2];var z=d.Add(A,"addtype",GLocal.LT_AppTree_Node_NewType);d.Activate(z)}}},{text:GLocal.LT_AppTree_Node_AddResource,iconCls:"icon-resources",menu:{items:[{text:GLocal.LT_AppTree_Node_AddFolder,iconCls:"icon-folder-add",menu:{items:[{xtype:"label",text:GLocal.LT_AppTree_Label_FolderName},v,{text:GLocal.LT_Common_Button_Add,iconCls:"icon-add",handler:function(){var x=v.getValue();v.setValue("");if(!x){return}u(x)}}]}},"-",{text:"html",value:"html",iconCls:GetExtIconClass(".html"),handler:function(x){r(x.value)}},{text:"xhtml",value:"xhtml",iconCls:GetExtIconClass(".xhtml"),handler:function(x){r(x.value)}},{text:"css",value:"css",iconCls:GetExtIconClass(".css"),handler:function(x){r(x.value)}},{text:"js",value:"js",iconCls:GetExtIconClass(".js"),handler:function(x){r(x.value)}},{text:"xml",value:"xml",iconCls:GetExtIconClass(".xml"),handler:function(x){r(x.value)}},{text:"txt",value:"txt",iconCls:GetExtIconClass(".txt"),handler:function(x){r(x.value)}}]}},{text:GLocal.LT_AppTree_Node_AddRole,handler:function(){var B=p.getSelectionModel().getSelectedNode();if(B){if(B.leaf){B=B.parentNode}var x=B.getPath();var y=x.split("/");var A=y[2];var z=d.Add(A,"addrole",GLocal.LT_AppTree_Node_NewRole);d.Activate(z)}}}]}}],loader:new Ext.tree.TreeLoader({listeners:{beforeload:function(x,y){this.baseParams.oNode=y;this.paramsAsHash=true}},directFn:function(y,C,G){var D=[];var H=t(C.oNode);var z=H.sPath;var F=H.sAppid;var x=H.sType;var A=H.sName;if(!F){return}if(F&&!x){D.push({nSort:1,attributes:{nSort:1,sName:"appconfig"},id:"appconfig",text:GLocal.LT_AppTree_Node_Settings,iconCls:"icon-application-edit",leaf:true,allowDrop:false,draggable:false,editable:false});D.push({nSort:2,attributes:{nSort:2,sName:"script"},id:"script",text:GLocal.LT_AppTree_Node_Scripts,iconCls:"icon-folder-script",draggable:false,allowDrop:false,editable:false});D.push({nSort:3,attributes:{nSort:3,sName:"type"},id:"type",text:GLocal.LT_AppTree_Node_DataModel,iconCls:"icon-folder-type",draggable:false,allowDrop:false,editable:false});D.push({nSort:4,attributes:{nSort:4,sName:"files"},id:"files",text:GLocal.LT_AppTree_Node_Resources,iconCls:"icon-resources",draggable:false,editable:false});D.push({nSort:5,attributes:{nSort:5,sName:"role"},id:"role",text:"Роли",iconCls:"icon-roles",draggable:false,editable:false});G(D,{status:1})}var B=e.FindNodeByPath(p.getRootNode(),F);if(F&&x=="script"&&!A){HApplications.ScriptsView(F,function(J){if(J.scripts){for(var I=0;I<J.scripts.length;I++){var K=J.scripts[I].name;var L=J.scripts[I].type;e.CreateNodes(B,F+"/script/"+K,{attributes:{iconCls:GetExtIconClass("."+L)},iconCls:GetExtIconClass("."+L),allowDrop:false,draggable:false,editable:false})}}G(D,{status:1})})}else{if(F&&x=="type"){HApplications.TypesView(F,function(J){var I=HApplications.GetTypes(F);for(var L in I){if(L=="script"){continue}var K=e.CreateNodes(B,F+"/type/"+L,{leaf:true,iconCls:"icon-type-table",allowDrop:false,draggable:false,editable:false})}G(D,{status:1})})}else{if(z.indexOf(F+"/files")!=-1){var E=z.split("/files/")[1]||"";HApplications.GetFiles(F,E,function(K){if(K&&K.files){var I=K.files;for(var J=0;J<I.length;J++){if(I[J].isdir){D.push({id:I[J].name,text:I[J].name,iconCls:"icon-service",leaf:false,allowDrop:true,editable:false})}}for(var J=0;J<I.length;J++){if(!I[J].isdir&&AllowedFileExt(I[J].name)){D.push({id:I[J].name,text:I[J].name,iconCls:GetExtIconClass(I[J].name),leaf:true,allowDrop:false,editable:false})}}G(D,{status:1})}else{G(D,{status:1})}})}else{if(F&&x=="role"){HApplications.RolesView(F,function(J){if(J.result==0){for(var I=0;I<J.roles.length;I++){D.push({id:J.roles[I],text:J.roles[I],iconCls:"icon-role",leaf:true,allowDrop:false,editable:false})}G(D,{status:1})}else{G(D,{status:1})}})}else{return}}}}}}),root:h});new Ext.tree.TreeSorter(p,{folderSort:true,dir:"asc"});p.on("contextmenu",function(J,I){if(J){J.select();p.getTopToolbar().enable()}var M=t(J);var B=M.sPath,H=M.sAppid,y=M.sType,C=M.sName;var L=I.getXY();if(!J.contextMenu){if(H&&!y){var G=new Array([{text:GLocal.LT_AppTree_Node_Run,iconCls:"icon-application-go",handler:function(){var N=XTemplate(GLocal.LT_Script_URL_Address,{sAppid:H});window.open(N,H)}},"-",{text:GLocal.LT_AppTree_Node_Settings,iconCls:"icon-application-edit",handler:function(O){var N=d.Add(H,"appconfig",O.text);d.Activate(N)}},"-",{text:GLocal.LT_AppTree_Node_Clone,handler:function(){Ext.MessageBox.show({width:350,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal.LT_App_Confirm_Clone,{sName:J.text}),buttons:Ext.MessageBox.YESNO,fn:function(N){if(N=="yes"){HUser.CloneApp(H,function(O){HApplications.AllowSession(O.appid,function(){});var Q=e.NodeAction("TA_AddApp",O.appid,O.name);if(Q){Q.expand()}var P=d.Add(O.appid,"appconfig",GLocal.LT_EditApp_Label_Settings);d.Activate(P)})}},icon:Ext.MessageBox.QUESTION})}}]);J.contextMenu=new Ext.menu.Menu({items:G})}if(y=="script"){var z=new Array([{text:GLocal.LT_AppTree_Node_AddScript,iconCls:"icon-folder-script",menu:{items:[{text:"Javascript (SSJS)",iconCls:GetExtIconClass(".javascript"),handler:function(){q("javascript",J)}},{text:"Java",iconCls:GetExtIconClass(".java"),handler:function(){q("java",J)}},{text:"PHP",iconCls:GetExtIconClass(".php"),handler:function(){q("php",J)}},"-",{text:"EJS",iconCls:GetExtIconClass(".ejs"),handler:function(){q("ejs",J)}}]}}]);if(C){var K=B.split("/script/")[1]||"";if(J.leaf){z.push("-");z.push({text:GLocal.LT_Script_Button_Remove,iconCls:"icon-script-delete",handler:function(){Ext.MessageBox.show({width:350,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal.LT_Script_Confirm_DeleteScript,{sName:K}),buttons:Ext.MessageBox.YESNO,fn:function(N){if(N=="yes"){HApplications.DeleteScript(H,K,function(){d.Close(H,"script",K);d.Close(H,"runscript",K);e.NodeAction("TA_RemoveScript",H,K)})}},icon:Ext.MessageBox.QUESTION})}})}}J.contextMenu=new Ext.menu.Menu({items:z})}if(y=="type"){var D=new Array([{text:GLocal.LT_AppTree_Node_AddType,iconCls:"icon-folder-type",handler:function(){var N=d.Add(H,"addtype",GLocal.LT_AppTree_Node_NewType);d.Activate(N)}}]);if(C){D.push("-");D.push({text:GLocal.LT_EditType_Button_DeleteType,iconCls:"icon-type-delete",handler:function(){Ext.MessageBox.show({width:350,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal.LT_EditType_Confirm_DeleteType,{sName:C}),buttons:Ext.MessageBox.YESNO,fn:function(N){if(N=="yes"){HApplications.UndefineType(H,C,function(){d.Close(H,"type",C);e.NodeAction("TA_RemoveType",H,C)})}},icon:Ext.MessageBox.QUESTION})}})}J.contextMenu=new Ext.menu.Menu({items:D})}if(y=="files"){var E=new Ext.form.TextField({width:150});var A=new Array([{text:XTemplate(GLocal.LT_File_Button_Add,{sName:C||GLocal.LT_AppTree_Node_Resources}),iconCls:"icon-resources",menu:{items:[{text:GLocal.LT_AppTree_Node_AddFolder,iconCls:"icon-folder-add",menu:{items:[{xtype:"label",text:GLocal.LT_AppTree_Label_FolderName},E,{text:GLocal.LT_Common_Button_Add,iconCls:"icon-add",handler:function(){var N=E.getValue();E.setValue("");if(!N){return}u(N)}}]}},"-",{text:"html",iconCls:GetExtIconClass(".html"),handler:function(){r("html",J)}},{text:"xhtml",iconCls:GetExtIconClass(".xhtml"),handler:function(){r("xhtml",J)}},{text:"css",iconCls:GetExtIconClass(".css"),handler:function(){r("css",J)}},{text:"js",iconCls:GetExtIconClass(".js"),handler:function(){r("js",J)}},{text:"xml",iconCls:GetExtIconClass(".xml"),handler:function(){r("xml",J)}},{text:"txt",iconCls:GetExtIconClass(".txt"),handler:function(){r("txt",J)}}]}}]);if(C){var F=B.split("/files/")[1]||"";A.push("-");A.push({text:GLocal[J.leaf?"LT_File_Button_Remove":"LT_File_Button_RemoveFolder"],iconCls:J.leaf?"icon-script-delete":"icon-folder-delete",handler:function(){Ext.MessageBox.show({width:350,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal[J.leaf?"LT_File_Confirm_Remove":"LT_File_Confirm_RemoveFolder"],{sName:GetFileName(F)}),buttons:Ext.MessageBox.YESNO,fn:function(N){if(N=="yes"){HApplications.DeleteFile(H,F,function(){d.Close(H,"files",F);e.NodeAction("TA_RemoveFile",H,F)})}},icon:Ext.MessageBox.QUESTION})}})}J.contextMenu=new Ext.menu.Menu({items:A})}if(y=="role"){var x=new Array([{text:GLocal.LT_AppTree_Node_AddRole,handler:function(){var N=d.Add(H,"addrole",GLocal.LT_AppTree_Node_NewRole);d.Activate(N)}}]);if(C){x.push("-");x.push({text:GLocal.LT_Role_Button_DeleteRole,handler:function(){Ext.MessageBox.show({width:350,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal.LT_Role_Confirm_DeleteRole,{sName:C}),buttons:Ext.MessageBox.YESNO,fn:function(N){if(N=="yes"){HApplications.DeleteRole(H,C,function(){d.Close(H,y,C);e.NodeAction("TA_RemoveRole",H,C)})}},icon:Ext.MessageBox.QUESTION})}})}J.contextMenu=new Ext.menu.Menu({items:x})}}if(J.contextMenu){J.contextMenu.showAt(L)}});p.on("beforeappend",function(x,y,z){if(!z.attributes.sPath){z.attributes.sPath=z.id;z.setId("node_"+parseInt(Math.random()*1000000))}});p.on("click",function(D){if(D){p.getTopToolbar().enable()}var F=t(D);var z=F.sPath,C=F.sAppid,x=F.sType,A=F.sName;HApplications.AllowSession(C,function(){});if(D.leaf){if(!o.getActiveTab()||o.getActiveTab().title!=D.text){var y;if(x=="script"){var E=z.split("/script/")[1]||"";y=d.Add(C,x,E);d.Activate(y)}else{if(x=="files"){var B=z.split("/files/")[1]||"";HApplications.ReadFile(C,B,function(G){y=d.Add(C,x,B);d.Activate(y)})}else{y=d.Add(C,x,D.text);d.Activate(y)}}}}});p.on("startdrag",function(x,y){y.attributes.oldPath=t(y).sPath});p.on("nodedragover",function(z){if(z.target&&z.dropNode&&!z.target.isLeaf()){var y=t(z.target).sAppid;var x=t(z.dropNode).sAppid;if(y==x){return true}}return false});p.on("nodedrop",function(D){if(D.target&&D.dropNode&&!D.target.isLeaf()){var C=t(D.target).sAppid;var E=t(D.target).sType;var x=t(D.dropNode).sAppid;var z=t(D.dropNode).sType;if(C==x&&E=="files"&&z=="files"){var y=t(D.target).sPath.split("/files/")[1]||"";var A=D.dropNode.attributes.oldPath.split("/files/")[1]||"";var B=GetFileName(A);y+=y?"/"+B:B;if(y!=A){HApplications.RenameFile(C,A,y,function(F){if(F.result==0){d.ChangeTab(null,C,"files","files",A,y);return true}})}}return false}});i={id:"details-panel",title:GLocal.LT_Nav_Title_Extern,region:"south",bodyStyle:"padding-bottom:15px;background:#eee;",autoScroll:true,split:true,collapsible:true,collapsed:true,height:120,html:"<p class='details-info'>"+GLocal.LT_Nav_Content_Extern+"</p>"};a={layout:"accordion",region:"center",split:true,border:false,items:[{title:GLocal.LT_Nav_Title_Apps,iconCls:"icon-application-cascade",layout:"border",tools:[{id:"refresh",on:{click:function(){e.Clear();HApplications.AppsView(function(x){e.NodeAction("TA_AddApp",x.appid,x.name,x.right)})}}}],items:p},{title:GLocal.LT_Nav_Title_Services,iconCls:"icon-application-services",layout:"border",items:oServicePanel}]};g=new Ext.menu.Menu({id:"FileMenu",style:{overflow:"visible"},items:[{id:"MI_File_Signin",text:GLocal.LT_Menu_File_Signin,iconCls:"icon-login",handler:m},{id:"MI_File_Signup",text:GLocal.LT_Menu_File_Signup,iconCls:"icon-create-account",handler:m},"-",{id:"MI_File_ChangePassword",text:GLocal.LT_Menu_File_ChagePassword,handler:function(){HUser.ChangePasswordDialog()}},"-",{id:"MI_File_CreateApp",text:GLocal.LT_Menu_File_CreateApp,iconCls:"icon-application-add",handler:m,disabled:true},{id:"MI_File_SolutionApp",text:GLocal.LT_Menu_File_Solutions,iconCls:"icon-solutions",handler:m,disabled:true},"-",{id:"MI_File_Signout",text:GLocal.LT_Menu_File_Signout,iconCls:"icon-logout",handler:m,disabled:true}]});k=new Ext.Viewport({layout:"border",title:"Hive IDE",items:[{id:"Main_Toolbar",xtype:"toolbar",region:"north",height:27,items:[{text:GLocal.LT_Menu_File,iconCls:"icon-menu-file",menu:g},{text:GLocal.LT_Menu_Settings,menu:{items:[{text:GLocal.LT_Menu_Settings_Language==GLocal.LT_Menu_Settings_LanguageNative?GLocal.LT_Menu_Settings_LanguageNative:GLocal.LT_Menu_Settings_LanguageNative+" / "+GLocal.LT_Menu_Settings_Language,menu:{items:[{text:"En",href:"?lang=en",group:"lang",checked:GLang=="en"},{text:"Ru",href:"?lang=ru",group:"lang",checked:GLang=="ru"}]}},{text:GLocal.LT_Menu_Settings_Theme,menu:{items:[{text:"Blue",href:"?theme=blue",group:"theme",checked:GThemeName=="blue"},{text:"Gray",href:"?theme=gray",group:"theme",checked:GThemeName=="gray"},"-",{text:"Dark",href:"?theme=dark",group:"theme",checked:GThemeName=="dark"}]}}]}},{text:GLocal.LT_Menu_Help,iconCls:"icon-menu-help",menu:{defaults:{hrefTarget:"_replace"},items:[{text:GLocal.LT_Menu_Help_Docs,iconCls:"icon-help",menu:{defaults:{hrefTarget:"_replace",iconCls:"icon-help-open"},items:[{text:GLocal.LT_Menu_Docs_WebServices,href:GLocal.URL_Docs+GLocal.URL_Docs_WebServices},"-",{text:GLocal.LT_Menu_Docs_Registration,href:GLocal.URL_Docs+GLocal.URL_Docs_Registration},{text:GLocal.LT_Menu_Docs_Authentication,href:GLocal.URL_Docs+GLocal.URL_Docs_Authentication},{text:GLocal.LT_Menu_Docs_Account,href:GLocal.URL_Docs+GLocal.URL_Docs_Account},{text:GLocal.LT_Menu_Docs_Structure,href:GLocal.URL_Docs+GLocal.URL_Docs_Structure},{text:GLocal.LT_Menu_Docs_AccessControl,href:GLocal.URL_Docs+GLocal.URL_Docs_AccessControl},{text:GLocal.LT_Menu_Docs_Storage,href:GLocal.URL_Docs+GLocal.URL_Docs_Storage},"-",{text:GLocal.LT_Menu_Docs_Applications,href:GLocal.URL_Docs+GLocal.URL_Docs_Applications},{text:GLocal.LT_Menu_Docs_Scripting,href:GLocal.URL_Docs+GLocal.URL_Docs_Scripting},{text:GLocal.LT_Menu_Docs_Batch,href:GLocal.URL_Docs+GLocal.URL_Docs_Batch},{text:GLocal.LT_Menu_Docs_Scheduler,href:GLocal.URL_Docs+GLocal.URL_Docs_Scheduler}]}},{text:GLocal.LT_Menu_Help_Examples,menu:{items:[{text:"Javascript",menu:{defaults:{hrefTarget:"_replace"},items:[{text:GLocal.LT_Menu_Javascript_Common,href:GLocal.URL_Docs+"Javascript.Scripting_Local_API"},{text:GLocal.LT_Menu_Javascript_DataBase,href:GLocal.URL_Docs+"Javascript.Scripting_Data_Base"},{text:GLocal.LT_Menu_Javascript_Template,href:GLocal.URL_Docs+"Javascript.Scripting_Template"}]}},{text:"Java",menu:{defaults:{hrefTarget:"_replace"},items:[{text:GLocal.LT_Menu_Java_Common,href:GLocal.URL_Docs+"Java.Scripting_Local_API"},{text:GLocal.LT_Menu_Java_DataBase,href:GLocal.URL_Docs+"Java.Scripting_Data_Base"},{text:GLocal.LT_Menu_Java_Template,href:GLocal.URL_Docs+"Java.Scripting_Template"}]}}]}},"-",{text:GLocal.LT_Menu_Help_APIConsole,iconCls:"icon-api-console",href:GLocal.URL_APIConsole},"-",{text:GLocal.LT_Menu_Help_Community,iconCls:"icon-community",href:GLocal.URL_Community},{text:GLocal.LT_Menu_Help_Twitter,iconCls:"icon-twitter",href:"http://twitter.com/hivetech"}]}},"->",{id:"MI_Toolbar_Username",xtype:"label",text:"",hidden:true}," ",{id:"MI_Toolbar_Signout",text:GLocal.LT_Menu_Toolbar_Signout,iconCls:"icon-logout",handler:m,hidden:true}]},{title:GLocal.LT_Nav_Title,layout:"border",id:"layout-browser",region:"west",border:false,collapsible:true,collapsed:true,split:true,width:250,minSize:100,maxSize:500,items:[a,i],ref:"oNavigation"},{layout:"border",region:"center",split:true,border:false,items:[o,c]}],renderTo:Ext.getBody()})};function m(q){switch(q.id){case"MI_File_Signup":HUser.SignupDialog(function(){});break;case"MI_File_Signin":HUser.SigninDialog(function(){HMainUI.SetMode(1)});break;case"MI_File_Signout":case"MI_Toolbar_Signout":GOutPlatform.Clear();HUser.SignoutDialog(function(){HMainUI.SetMode(0)});break;case"MI_File_CreateApp":d.Activate(d.Add("null","appcreate"));break;case"MI_File_SolutionApp":d.Activate(d.Add("null","solutioncreate"));break}}this.SetMode=function(q){if(q==0){Id("actions-guest").style.display="";Id("actions-developer").style.display="none";Ext.getCmp("MI_File_Signin").enable();Ext.getCmp("MI_File_ChangePassword").disable();Ext.getCmp("MI_File_CreateApp").disable();Ext.getCmp("MI_File_SolutionApp").disable();Ext.getCmp("MI_File_Signout").disable();Ext.getCmp("MI_Toolbar_Username").hide();Ext.getCmp("MI_Toolbar_Username").setText("");Ext.getCmp("MI_Toolbar_Signout").hide();Ext.getCmp("layout-browser").collapse(false);Ext.getCmp("messages-panel").collapse(false);e.Clear();d.CloseAll();n.activate("services-panel");b.setValue("");f.disable()}else{Id("actions-guest").style.display="none";Id("actions-developer").style.display="";Ext.getCmp("MI_File_Signin").disable();Ext.getCmp("MI_File_ChangePassword").enable();Ext.getCmp("MI_File_CreateApp").enable();Ext.getCmp("MI_File_SolutionApp").enable();Ext.getCmp("MI_File_Signout").enable();Ext.getCmp("MI_Toolbar_Username").setText(HUser.GetName());Ext.getCmp("MI_Toolbar_Username").show();Ext.getCmp("MI_Toolbar_Signout").show();Ext.getCmp("layout-browser").expand(false);Ext.getCmp("messages-panel").expand(false);if(sSolutionAppid){HUser.CloneApp(sSolutionAppid,function(r){HApplications.AllowSession(r.appid,function(){});var t=e.NodeAction("TA_AddApp",r.appid,r.name);if(t){t.expand()}var s=d.Add(r.appid,"appconfig",GLocal.LT_EditApp_Label_Settings);d.Activate(s);HApplications.AppsView(function(u){if(r.appid!=u.appid){e.NodeAction("TA_AddApp",u.appid,u.name,u.right)}})})}else{HApplications.AppsView(function(r){e.NodeAction("TA_AddApp",r.appid,r.name,r.right)})}}};this.CreateNewApp=function(){d.Activate(d.Add("null","appcreate"))};this.CreateSolutionApp=function(){d.Activate(d.Add("null","solutioncreate"))};this.CloneSolution=function(s,q){function r(t){Ext.MessageBox.show({width:500,title:GLocal.LT_Common_Text_Confirm,msg:XTemplate(GLocal.LT_App_Confirm_Clone,{sName:t.name}),buttons:Ext.MessageBox.YESNO,fn:function(u){if(u=="yes"){HUser.CloneApp(t.appid,function(v){HApplications.AllowSession(v.appid,function(){});var x=e.NodeAction("TA_AddApp",v.appid,v.name);if(x){x.expand()}var w=d.Add(v.appid,"appconfig",GLocal.LT_EditApp_Label_Settings);d.Activate(w)})}},icon:Ext.MessageBox.QUESTION})}if(!q){GOut.Wait(XTemplate(GLocal.LT_Process_Label_GetSolution,{sAppid:s}));HTransport.Get(GAPI.Method("Development.Applications","GetSolution"),{appid:s,session:HUser.GetSession(),targetAppid:s},function(t){GOut.Hide();if(t.result==0&&t.app){r(t.app)}else{GOut.Error("Error",t)}})}else{r(q)}};return this})();;;var GHiveIDE=(function(a){this.GetAppid=function(){return a};this.Init=function(){HMainUI.Construct();function d(){if(oActResp&&oActResp.result!=0){oActResp.error=oActResp.error.split("%20").join(" ");GOut.Error("Error",oActResp)}}function c(e){HUser.CheckSession(e,function(){var f=HUser.GetUid();HMainUI.SetMode(f);d()},function(){d()})}var b=oActResp?oActResp.session:null;if(!b){b=window.name||null}c(b)};return this})(GAPPID);;;var SolutionChooser=function(a){this.config=a};SolutionChooser.prototype={lookup:{},show:function(c){if(!this.panel){this.initTemplates();this.store=new Ext.data.JsonStore({root:"solutions",baseParams:{appid:GAPPID,session:HUser.GetSession()},fields:["app","clonable"],proxy:new Ext.data.DirectProxy({directFn:function(e,f,d){HTransport.Get(GAPI.Method("Development.Applications","FindSolutions"),e,function(g){if(g.result==0){f.apply(d,[{count:g.solutions.length,solutions:g.solutions},{status:1}])}else{f.apply(d,[{count:0,solutions:[]},{status:1}])}})}}),listeners:{load:{fn:function(){this.view.select(0)},scope:this,single:true}}});this.store.load();var b=function(d){d.app.shortName=d.app.name.ellipse(15);d.app.description=d.app.description||GLocal.LT_Solutions_Text_NoDescription;d.app.keywords=d.app.keywords||GLocal.LT_Solutions_Text_NoKeywords;d.app.icon="images/"+(d.clonable?"solution2.png":"solution.png");if(d.app.keywords.indexOf("facebook")!=-1){d.app.icon="images/plugin-facebook.png"}if(d.app.keywords.indexOf("vkontakte")!=-1){d.app.icon="images/plugin-vkontakte.png"}if(d.app.keywords.indexOf("php")!=-1){d.app.icon="images/php-samples.png"}if(d.app.keywords.indexOf("touch")!=-1){d.app.icon="images/touch-screen-128.png"}this.lookup[d.app.appid]=d.app;return d.app};this.view=new Ext.DataView({tpl:this.thumbTemplate,singleSelect:true,overClass:"x-view-over",itemSelector:"div.thumb-wrap",emptyText:"<div style='padding:10px;'>"+GLocal.LT_Solutions_Text_NotFound+"</div>",store:this.store,listeners:{selectionchange:{fn:this.showDetails,scope:this,buffer:100},loadexception:{fn:this.onLoadException,scope:this},beforeselect:{fn:function(d){return d.store.getRange().length>0}}},prepareData:b.createDelegate(this)});var a={title:GLocal.LT_Solutions_Title_Tab,id:"img-chooser-dlg",iconCls:"icon-solutions",bodyBorder:false,border:false,items:[{id:"img-chooser-view",region:"center",autoScroll:true,items:this.view,tbar:[{text:GLocal.LT_Solutions_Text_Find},{xtype:"textfield",id:"filter",selectOnFocus:true,width:200,listeners:{render:{fn:function(){Ext.getCmp("filter").getEl().on("keyup",function(){this.filter()},this,{buffer:500})},scope:this}}}]},{id:"img-detail-panel",region:"east",autoScroll:true,split:true,width:"50%",minWidth:300,maxWidth:500,disabled:true,bbar:[{text:GLocal.LT_Solutions_Button_RunPopup,iconCls:"icon-solution-run",scale:"large",listeners:{click:{fn:this.doRun,scope:this}}},{id:"clone-app",text:GLocal.LT_Solutions_Button_Clone,iconCls:"icon-solution-add",scale:"large",listeners:{click:{fn:this.doCallback,scope:this}}}]}]};Ext.apply(a,this.config);this.panel=new Ext.Panel(a)}this.reset();this.callback=c;return this.panel},initTemplates:function(){this.thumbTemplate=new Ext.XTemplate('<tpl for=".">','<div class="thumb-wrap" id="{appid}">','<div class="thumb"><img src="{icon}" title="{name}"></div>',"<span>{shortName}</span></div>","</tpl>");this.thumbTemplate.compile();this.detailsTemplate=new Ext.XTemplate('<div class="details">','<tpl for=".">','<img src="{icon}"><div class="details-info">',"<b>"+GLocal.LT_Solutions_Text_Title+"</b>","<span>{name}</span>","<b>"+GLocal.LT_Solutions_Text_Description+"</b>","<span>{description}</span>","<b>"+GLocal.LT_Solutions_Text_Keywords+"</b>","<span>{keywords}</span>","<b>APPID: </b>","<span>{appid}</span>","<b>"+GLocal.LT_Solutions_Text_Date+"</b>","<span>{date}</span>","</tpl>","</div>");this.detailsTemplate.compile()},showDetails:function(){var b=this.view.getSelectedNodes();var c=Ext.getCmp("img-detail-panel").body;if(b&&b.length>0){Ext.getCmp("img-detail-panel").enable();b=b[0];var a=this.lookup[b.id];c.hide();this.detailsTemplate.overwrite(c,a);c.slideIn("l",{stopFx:true,duration:0.2});if(a.clonable){Ext.getCmp("clone-app").show()}else{Ext.getCmp("clone-app").hide()}}else{Ext.getCmp("img-detail-panel").disable();c.update("")}},filter:function(){var a=Ext.getCmp("filter");this.view.store.setBaseParam("keywords",a.getValue());this.view.store.load();this.view.select(0)},reset:function(){if(this.panel.rendered){Ext.getCmp("filter").reset();this.view.getEl().dom.scrollTop=0}this.view.store.clearFilter();this.view.select(0)},doCallback:function(){var b=this.view.getSelectedNodes()[0];var d=this.callback;var c=this.lookup;if(b&&d){var a=c[b.id];if(a){d(a)}}},doRun:function(){var c=this.view.getSelectedNodes()[0];var e=this.callback;var d=this.lookup;if(c&&e){var b=d[c.id];var a=XTemplate(GLocal.LT_Script_URL_Address,{sAppid:b.appid});window.open(a,b.appid)}},onLoadException:function(a,b){this.view.getEl().update('<div style="padding:10px;">'+GLocal.LT_Solutions_Text_LoadingError+"</div>")}};String.prototype.ellipse=function(a){if(this.length>a){return this.substr(0,a-3)+"..."}return this};;;var sStartPageTemplate='<div style="float:left;" ><img src="images/hivext_sota_embryo_mini_2.png?1" /></div><div style="margin-left:120px;font-size:16px;color:#777"><div>%(LT_Start_Welcome)</div><div id="actions-guest" style="display:none"><ul><li><a href="javascript:;" onclick="HUser.SignupDialog(function() {});">%(LT_Start_CreateAccount)</a></li><li><a href="javascript:;" onclick="HUser.SigninDialog(function() { HMainUI.SetMode(1); });">%(LT_Start_Signin)</a></li></ul></div><div id="actions-developer" style="display:none"><ul><li><a href="javascript:;" onclick="HMainUI.CreateNewApp();">%(LT_Start_CreateApplication)</a></li><li><a href="javascript:;" onclick="HMainUI.CreateSolutionApp();">%(LT_Start_SolutionsStore)</a></li></ul><br /><br /><div>%(LT_Start_Examples)</div><br /><ul><li><a style="font-size:16px;" target="_replace" href="http://doc.hivext.ru/index.php/%D0%9D%D0%B0%D1%87%D0%B8%D0%BD%D0%B0%D0%B5%D0%BC_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D1%83">Туториал создание нового приложения, деплой кода и ресурсов</a></li><li><a style="font-size:16px;" href="javascript:;" onclick="HMainUI.CloneSolution(%(LT_Start_JavaAppid));">%(LT_Start_JavaExamples)</a></li><li><a style="font-size:16px;" href="javascript:;" onclick="HMainUI.CloneSolution(%(LT_Start_JavascriptAppid));">%(LT_Start_JavascriptExamples)</a></li></ul></div></div>';Ext.onReady(function(){Include(sLocalName+".js"+skipcache(),function(){Id("start-div").innerHTML=XTemplate(sStartPageTemplate,GLocal,true);Ext.MessageBox.buttonText.yes=GLocal.LT_Common_Button_Yes;Ext.MessageBox.buttonText.no=GLocal.LT_Common_Button_No;Ext.MessageBox.buttonText.cancel=GLocal.LT_Common_Button_Cancel;Ext.QuickTips.init();GHiveIDE.Init();var a=document.getElementById("loader-splash");if(a){a.style.display="none"}})});;
/*
Copyright by Hivext Technology http://www.hivext.com, 2008-2011
Optimized by Duris (i) http://www.duris.ru
*/
