/* Copyright (c) 2006-2007, Marketo, Inc. All rights reserved. */

/* ========== firebug/firebug.js ============ */

if(!("console"in window)||!("firebug"in console)){(function()
{window.console={log:function()
{logFormatted(arguments,"");},debug:function()
{logFormatted(arguments,"debug");},info:function()
{logFormatted(arguments,"info");},warn:function()
{logFormatted(arguments,"warning");},error:function()
{logFormatted(arguments,"error");},assert:function(truth,message)
{if(!truth)
{var args=[];for(var i=1;i<arguments.length;++i)
args.push(arguments[i]);logFormatted(args.length?args:["Assertion Failure"],"error");throw message?message:"Assertion Failure";}},dir:function(object)
{var html=[];var pairs=[];for(var name in object)
{try
{pairs.push([name,object[name]]);}
catch(exc)
{}}
pairs.sort(function(a,b){return a[0]<b[0]?-1:1;});html.push('<table>');for(var i=0;i<pairs.length;++i)
{var name=pairs[i][0],value=pairs[i][1];html.push('<tr>','<td class="propertyNameCell"><span class="propertyName">',escapeHTML(name),'</span></td>','<td><span class="propertyValue">');appendObject(value,html);html.push('</span></td></tr>');}
html.push('</table>');logRow(html,"dir");},dirxml:function(node)
{var html=[];appendNode(node,html);logRow(html,"dirxml");},group:function()
{logRow(arguments,"group",pushGroup);},groupEnd:function()
{logRow(arguments,"",popGroup);},time:function(name)
{timeMap[name]=(new Date()).getTime();},timeEnd:function(name)
{if(name in timeMap)
{var delta=(new Date()).getTime()-timeMap[name];logFormatted([name+":",delta+"ms"]);delete timeMap[name];}},count:function()
{this.warn(["count() not supported."]);},trace:function()
{this.warn(["trace() not supported."]);},profile:function()
{this.warn(["profile() not supported."]);},profileEnd:function()
{},clear:function()
{consoleBody.innerHTML="";},open:function()
{toggleConsole(true);},close:function()
{if(frameVisible)
toggleConsole();}};var consoleFrame=null;var consoleBody=null;var commandLine=null;var frameVisible=false;var messageQueue=[];var groupStack=[];var timeMap={};var clPrefix=">>> ";var isFirefox=navigator.userAgent.indexOf("Firefox")!=-1;var isIE=navigator.userAgent.indexOf("MSIE")!=-1;var isOpera=navigator.userAgent.indexOf("Opera")!=-1;var isSafari=navigator.userAgent.indexOf("AppleWebKit")!=-1;function toggleConsole(forceOpen)
{frameVisible=forceOpen||!frameVisible;if(consoleFrame)
consoleFrame.style.visibility=frameVisible?"visible":"hidden";else
waitForBody();}
function focusCommandLine()
{toggleConsole(true);if(commandLine)
commandLine.focus();}
function waitForBody()
{if(document.body)
createFrame();else
setTimeout(waitForBody,200);}
function createFrame()
{if(consoleFrame)
return;window.onFirebugReady=function(doc)
{window.onFirebugReady=null;var toolbar=doc.getElementById("toolbar");toolbar.onmousedown=onSplitterMouseDown;commandLine=doc.getElementById("commandLine");addEvent(commandLine,"keydown",onCommandLineKeyDown);addEvent(doc,isIE||isSafari?"keydown":"keypress",onKeyDown);consoleBody=doc.getElementById("log");layout();flush();}
var baseURL=getFirebugURL();consoleFrame=document.createElement("iframe");consoleFrame.setAttribute("src",baseURL+"/firebug.html");consoleFrame.setAttribute("frameBorder","0");consoleFrame.style.visibility=(frameVisible?"visible":"hidden");consoleFrame.style.zIndex="2147483647";consoleFrame.style.position="fixed";consoleFrame.style.width="100%";consoleFrame.style.left="0";consoleFrame.style.bottom="0";consoleFrame.style.height="200px";document.body.appendChild(consoleFrame);}
function getFirebugURL()
{var scripts=document.getElementsByTagName("script");for(var i=0;i<scripts.length;++i)
{if(scripts[i].src.indexOf("firebug.js")!=-1)
{var lastSlash=scripts[i].src.lastIndexOf("/");return scripts[i].src.substr(0,lastSlash);}}}
function evalCommandLine()
{var text=commandLine.value;commandLine.value="";logRow([clPrefix,text],"command");var value;try
{value=eval(text);}
catch(exc)
{}
console.log(value);}
function layout()
{var toolbar=consoleBody.ownerDocument.getElementById("toolbar");var height=consoleFrame.offsetHeight-(toolbar.offsetHeight+commandLine.offsetHeight);consoleBody.style.top=toolbar.offsetHeight+"px";consoleBody.style.height=height+"px";commandLine.style.top=(consoleFrame.offsetHeight-commandLine.offsetHeight)+"px";}
function logRow(message,className,handler)
{if(consoleBody)
writeMessage(message,className,handler);else
{messageQueue.push([message,className,handler]);waitForBody();}}
function flush()
{var queue=messageQueue;messageQueue=[];for(var i=0;i<queue.length;++i)
writeMessage(queue[i][0],queue[i][1],queue[i][2]);}
function writeMessage(message,className,handler)
{var isScrolledToBottom=consoleBody.scrollTop+consoleBody.offsetHeight>=consoleBody.scrollHeight;if(!handler)
handler=writeRow;handler(message,className);if(isScrolledToBottom)
consoleBody.scrollTop=consoleBody.scrollHeight-consoleBody.offsetHeight;}
function appendRow(row)
{var container=groupStack.length?groupStack[groupStack.length-1]:consoleBody;container.appendChild(row);}
function writeRow(message,className)
{var row=consoleBody.ownerDocument.createElement("div");row.className="logRow"+(className?" logRow-"+className:"");row.innerHTML=message.join("");appendRow(row);}
function pushGroup(message,className)
{logFormatted(message,className);var groupRow=consoleBody.ownerDocument.createElement("div");groupRow.className="logGroup";var groupRowBox=consoleBody.ownerDocument.createElement("div");groupRowBox.className="logGroupBox";groupRow.appendChild(groupRowBox);appendRow(groupRowBox);groupStack.push(groupRowBox);}
function popGroup()
{groupStack.pop();}
function logFormatted(objects,className)
{var html=[];var format=objects[0];var objIndex=0;if(typeof(format)!="string")
{format="";objIndex=-1;}
var parts=parseFormat(format);for(var i=0;i<parts.length;++i)
{var part=parts[i];if(part&&typeof(part)=="object")
{var object=objects[++objIndex];part.appender(object,html);}
else
appendText(part,html);}
for(var i=objIndex+1;i<objects.length;++i)
{appendText(" ",html);var object=objects[i];if(typeof(object)=="string")
appendText(object,html);else
appendObject(object,html);}
logRow(html,className);}
function parseFormat(format)
{var parts=[];var reg=/((^%|[^\\]%)(\d+)?(\.)([a-zA-Z]))|((^%|[^\\]%)([a-zA-Z]))/;var appenderMap={s:appendText,d:appendInteger,i:appendInteger,f:appendFloat};for(var m=reg.exec(format);m;m=reg.exec(format))
{var type=m[8]?m[8]:m[5];var appender=type in appenderMap?appenderMap[type]:appendObject;var precision=m[3]?parseInt(m[3]):(m[4]=="."?-1:0);parts.push(format.substr(0,m[0][0]=="%"?m.index:m.index+1));parts.push({appender:appender,precision:precision});format=format.substr(m.index+m[0].length);}
parts.push(format);return parts;}
function escapeHTML(value)
{function replaceChars(ch)
{switch(ch)
{case"<":return"&lt;";case">":return"&gt;";case"&":return"&amp;";case"'":return"&#39;";case'"':return"&quot;";}
return"?";};return String(value).replace(/[<>&"']/g,replaceChars);}
function objectToString(object)
{try
{return object+"";}
catch(exc)
{return null;}}
function appendText(object,html)
{html.push(escapeHTML(objectToString(object)));}
function appendNull(object,html)
{html.push('<span class="objectBox-null">',escapeHTML(objectToString(object)),'</span>');}
function appendString(object,html)
{html.push('<span class="objectBox-string">&quot;',escapeHTML(objectToString(object)),'&quot;</span>');}
function appendInteger(object,html)
{html.push('<span class="objectBox-number">',escapeHTML(objectToString(object)),'</span>');}
function appendFloat(object,html)
{html.push('<span class="objectBox-number">',escapeHTML(objectToString(object)),'</span>');}
function appendFunction(object,html)
{var reName=/function ?(.*?)\(/;var m=reName.exec(objectToString(object));var name=m?m[1]:"function";html.push('<span class="objectBox-function">',escapeHTML(name),'()</span>');}
function appendObject(object,html)
{try
{if(object==undefined)
appendNull("undefined",html);else if(object==null)
appendNull("null",html);else if(typeof object=="string")
appendString(object,html);else if(typeof object=="number")
appendInteger(object,html);else if(typeof object=="function")
appendFunction(object,html);else if(object.nodeType==1)
appendSelector(object,html);else if(typeof object=="object")
appendObjectFormatted(object,html);else
appendText(object,html);}
catch(exc)
{}}
function appendObjectFormatted(object,html)
{var text=objectToString(object);var reObject=/\[object (.*?)\]/;var m=reObject.exec(text);html.push('<span class="objectBox-object">',m?m[1]:text,'</span>')}
function appendSelector(object,html)
{html.push('<span class="objectBox-selector">');html.push('<span class="selectorTag">',escapeHTML(object.nodeName.toLowerCase()),'</span>');if(object.id)
html.push('<span class="selectorId">#',escapeHTML(object.id),'</span>');if(object.className)
html.push('<span class="selectorClass">.',escapeHTML(object.className),'</span>');html.push('</span>');}
function appendNode(node,html)
{if(node.nodeType==1)
{html.push('<div class="objectBox-element">','&lt;<span class="nodeTag">',node.nodeName.toLowerCase(),'</span>');for(var i=0;i<node.attributes.length;++i)
{var attr=node.attributes[i];if(!attr.specified)
continue;html.push('&nbsp;<span class="nodeName">',attr.nodeName.toLowerCase(),'</span>=&quot;<span class="nodeValue">',escapeHTML(attr.nodeValue),'</span>&quot;')}
if(node.firstChild)
{html.push('&gt;</div><div class="nodeChildren">');for(var child=node.firstChild;child;child=child.nextSibling)
appendNode(child,html);html.push('</div><div class="objectBox-element">&lt;/<span class="nodeTag">',node.nodeName.toLowerCase(),'&gt;</span></div>');}
else
html.push('/&gt;</div>');}
else if(node.nodeType==3)
{html.push('<div class="nodeText">',escapeHTML(node.nodeValue),'</div>');}}
function addEvent(object,name,handler)
{if(document.all)
object.attachEvent("on"+name,handler);else
object.addEventListener(name,handler,false);}
function removeEvent(object,name,handler)
{if(document.all)
object.detachEvent("on"+name,handler);else
object.removeEventListener(name,handler,false);}
function cancelEvent(event)
{if(document.all)
event.cancelBubble=true;else
event.stopPropagation();}
function onError(msg,href,lineNo)
{var html=[];var lastSlash=href.lastIndexOf("/");var fileName=lastSlash==-1?href:href.substr(lastSlash+1);html.push('<span class="errorMessage">',msg,'</span>','<div class="objectBox-sourceLink">',fileName,' (line ',lineNo,')</div>');logRow(html,"error");};function onKeyDown(event)
{if(event.keyCode==123)
toggleConsole();else if((event.keyCode==108||event.keyCode==76)&&event.shiftKey&&(event.metaKey||event.ctrlKey))
focusCommandLine();else
return;cancelEvent(event);}
function onSplitterMouseDown(event)
{if(isSafari||isOpera)
return;addEvent(document,"mousemove",onSplitterMouseMove);addEvent(document,"mouseup",onSplitterMouseUp);for(var i=0;i<frames.length;++i)
{addEvent(frames[i].document,"mousemove",onSplitterMouseMove);addEvent(frames[i].document,"mouseup",onSplitterMouseUp);}}
function onSplitterMouseMove(event)
{var win=document.all?event.srcElement.ownerDocument.parentWindow:event.target.ownerDocument.defaultView;var clientY=event.clientY;if(win!=win.parent)
clientY+=win.frameElement?win.frameElement.offsetTop:0;var height=consoleFrame.offsetTop+consoleFrame.clientHeight;var y=height-clientY;consoleFrame.style.height=y+"px";layout();}
function onSplitterMouseUp(event)
{removeEvent(document,"mousemove",onSplitterMouseMove);removeEvent(document,"mouseup",onSplitterMouseUp);for(var i=0;i<frames.length;++i)
{removeEvent(frames[i].document,"mousemove",onSplitterMouseMove);removeEvent(frames[i].document,"mouseup",onSplitterMouseUp);}}
function onCommandLineKeyDown(event)
{if(event.keyCode==13)
evalCommandLine();else if(event.keyCode==27)
commandLine.value="";}
window.onerror=onError;addEvent(document,isIE||isSafari?"keydown":"keypress",onKeyDown);if(document.documentElement.getAttribute("debug")=="true")
toggleConsole(true);})();}
/* ========== mktCommon.js ============ */

function isAlien(a){return isObject(a)&&typeof a.constructor!='function';}
function isArray(a){return isObject(a)&&a.constructor==Array;}
function isBoolean(a){return typeof a=='boolean';}
function isEmpty(o){var i,v;if(isObject(o)){for(i in o){v=o[i];if(isUndefined(v)&&isFunction(v)){return false;}}}
return true;}
function isFunction(a){return typeof a=='function';}
function isNull(a){return typeof a=='object'&&!a;}
function isNumber(a){return typeof a=='number'&&isFinite(a);}
function isObject(a){return(a&&typeof a=='object')||isFunction(a);}
function isString(a){return typeof a=='string';}
function isUndefined(a){return typeof a=='undefined';}
function isDefined(a){return!isUndefined(a);}
function isEmptyString(a){return isString(a)&&a.length==0;}
function isNonEmptyString(a){return isString(a)&&(a!=null)&&(a.length>0);}
function isDOMElement(a){return(isObject(a)&&isDefined(a.tagName));}
function hasValue(a){return(isDefined(a)&&!isNull(a));}
if(!Array.prototype.indexOf){Array.prototype.indexOf=function(item,startIndex){var len=this.length;if(startIndex==null)
startIndex=0;else if(startIndex<0){startIndex+=len;if(startIndex<0)
startIndex=0;}
for(var i=startIndex;i<len;i++){var val=this[i]||this.charAt&&this.charAt(i);if(val==item)
return i;}
return-1;};}
if(!Array.prototype.lastIndexOf){Array.prototype.lastIndexOf=function(item,startIndex){var len=this.length;if(startIndex==null||startIndex>=len)
startIndex=len-1;else if(startIndex<0)
startIndex+=len;for(var i=startIndex;i>=0;i--){var val=this[i]||this.charAt&&this.charAt(i);if(val==item)
return i;}
return-1;};}
if(!Array.prototype.forEach){Array.prototype.forEach=function(func,thisVal){var len=this.length;for(var i=0;i<len;i++)
func.call(thisVal,this[i]||this.charAt&&this.charAt(i),i,this);};}
if(!Array.prototype.map){Array.prototype.map=function(func,thisVal){var len=this.length;var ret=new Array(len);for(var i=0;i<len;i++)
ret[i]=func.call(thisVal,this[i]||this.charAt&&this.charAt(i),i,this);return ret;};}
if(!Array.prototype.filter){Array.prototype.filter=function(func,thisVal){var len=this.length;var ret=new Array();for(var i=0;i<len;i++){var val=this[i]||this.charAt&&this.charAt(i);if(func.call(thisVal,val,i,this))
ret[ret.length]=val;}
return ret;};}
if(!Array.prototype.every){Array.prototype.every=function(func,thisVal){var len=this.length;for(var i=0;i<len;i++)
if(!func.call(thisVal,this[i]||this.charAt&&this.charAt(i),i,this))
return false;return true;};}
if(!Array.prototype.some){Array.prototype.some=function(func,thisVal){var len=this.length;for(var i=0;i<len;i++)
if(func.call(thisVal,this[i]||this.charAt&&this.charAt(i),i,this))
return true;return false;};}
(function(){var images=['/images/icons32/about.png','/images/icons48/about.png','/images/icons32/excel.gif','/images/icons48/band_aid.png','/images/icons48/plug_lan.png','/images/icons48/error.png','/images/icons32/sign_stop.png','/images/icons48/sign_stop.png','/images/icons16/refresh.png','/images/marketo/tabs/tab-strip-large-bg.gif'];for(var i=0;i<images.length;i++){var img=new Image();img.src=images[i];}})();
/* ========== mktAppJS.js ============ */

var MktAppJS={genDocInfo:{},ender:null}
MktAppJS.activatecampaignCanvas1=function(panel){if(isDefined(MktPage.canvasHook.alertMgr)&&MktPage.canvasHook.alertMgr!=null){var alertMgr=MktPage.canvasHook.alertMgr;if(isDefined(MktPage.appVars.alertItems)&&MktPage.appVars.alertItems.length>0){alertMgr.clearAll();alertMgr.addAlerts();alertMgr.showAllAlerts();alertMgr.showPostit(Ext.query("div.mktNote",$('campaignCanvas1'))[0]);}}
return true;}
MktAppJS.activateprogramCanvasDetail1=function(panel){MktMainNav.loadPE({});MktSession.lastSelExpNode=null;return false;}
MktAppJS.activatelandingPagesHome=function(panel){MktTree.selectNode('lpgTree',1);MktSession.lastSelLpgNode=1;return true;}
MktAppJS.activatelandingCanvasLP=function(panel){MktTree.selectNode('lpgTree',2);MktSession.lastSelLpgNode=2;return true;}
MktAppJS.activatelandingLPDetail=function(panel){var selNode='lpg_'+panel.config.cHData;MktTree.selectNode('lpgTree',selNode);MktSession.lastSelLpgNode=selNode;return true;}
MktAppJS.activatelandingCanvasFO=function(panel){MktTree.selectNode('lpgTree',4);MktSession.lastSelLpgNode=4;return true;}
MktAppJS.activatelandingFODetail=function(panel){var selNode='lpf_'+panel.config.cHData;MktTree.selectNode('lpgTree',selNode);MktSession.lastSelLpgNode=selNode;return true;}
MktAppJS.activatelandingCanvasIM=function(panel){MktTree.selectNode('lpgTree',5);MktSession.lastSelLpgNode=5;return true;}
MktAppJS.activatelandingIMDetail=function(panel){var selNode='lpi_'+panel.config.cHData;MktTree.selectNode('lpgTree',selNode);MktSession.lastSelLpgNode=selNode;return true;}
MktAppJS.activatelandingCanvasTM=function(panel){MktTree.selectNode('lpgTree',3);MktSession.lastSelLpgNode=3;return true;}
MktAppJS.activatelandingTMDetail=function(panel){var selNode='lpt_'+panel.config.cHData;MktTree.selectNode('lpgTree',selNode);MktSession.lastSelLpgNode=selNode;return true;}
MktAppJS.activatelandingCanvasEM=function(panel){MktTree.selectNode('lpgTree',4);MktSession.lastSelLpgNode=4;return true;}
MktAppJS.activatelandingEMDetail=function(panel){var selNode='lpe_'+panel.config.cHData;MktTree.selectNode('lpgTree',selNode);MktSession.lastSelLpgNode=selNode;return true;}
MktAppJS.activateemailTemplates=function(panel){}
MktAppJS.activateEMTemplateDetail=function(panel){}
MktAppJS.activatelandingCanvasObject=function(panel){return true;}
MktAppJS.activateallCreativeHome=function(pane){return true;}
MktAppJS.activateallAssetsHome=function(pane){return true;}
MktAppJS.mpsCStrackAPButtons=function(status){Element.hide('mpsCSFauxButton');if(status==4){Element.show('mpsCSPauseButton');Element.hide('mpsCSActivateButton');}else{Element.show('mpsCSActivateButton');Element.hide('mpsCSPauseButton');MElement.disabled('mpsCSActivateButton',(status!=5));}}
MktAppJS.mpsCSremoveProtoId=function(node){if(isDefined(node.id))node.id=node.id.slice(1);if(isDefined(node.name))node.name=node.name.slice(1);if(node.childNodes!=null){for(var i=0;i<node.childNodes.length;i++){MktAppJS.mpsCSremoveProtoId(node.childNodes.item(i));}}}
MktAppJS.cdsCScalToolsDisabled=function(calId,tf){$(calId+'MDY').disabled=tf;var cp=$(calId+'CP');if(tf){cp.src="/images/icons/table_sql_view-off24.gif";Element.addClassName(cp,"mktClickDisabled");}else{cp.src="/images/icons/table_sql_view24.gif";Element.removeClassName(cp,"mktClickDisabled");}}
MktAppJS.pdbPEBudgetDisabled=function(mtf){var baseId='pdbPEBudget';$(baseId+'Amount').disabled=mtf;$(baseId+'Unit').disabled=mtf;$(baseId+'DurSet').disabled=mtf;$(baseId+'DurOng').disabled=mtf;$(baseId+'StartMDY').disabled=mtf;MElement.textDisabled($(baseId+'TxBegin'),mtf);var scp=$(baseId+'StartCP');if(mtf){scp.src="/images/icons/table_sql_view-off24.gif";Element.addClassName(scp,"mktClickDisabled");}else{scp.src="/images/icons/table_sql_view24.gif";Element.removeClassName(scp,"mktClickDisabled");}
MElement.textDisabled($(baseId+'TxOng'),mtf);MElement.textDisabled($(baseId+'TxEnd'),mtf);var dtf=$(baseId+'DurOng').checked||mtf;$(baseId+'EndMDY').disabled=dtf;var ecp=$(baseId+'EndCP');if(dtf){ecp.src="/images/icons/table_sql_view-off24.gif";Element.addClassName(ecp,"mktClickDisabled");}else{ecp.src="/images/icons/table_sql_view24.gif";Element.removeClassName(ecp,"mktClickDisabled");}}
MktAppJS.pdbPETrackUnit=function(elem){elem=$(elem);var baseId='pdbPEBudget';var set=elem.options[elem.selectedIndex].value;if($(baseId+'Set').checked){if(set=='t'){$(baseId+'DurOng').checked=false;$(baseId+'DurSet').checked=true;MktAppJS.pdbPEBudgetDisabled(false);$(baseId+'DurOng').disabled=true;MElement.textDisabled($(baseId+'TxOng'),true);}else{$(baseId+'DurOng').disabled=false;MElement.textDisabled($(baseId+'TxOng'),false);}}}
MktAppJS.cdbCSBudUnitChanged=function(elem){}
MktAppJS.cdbCSBudSetUpdate=function(){Element.hide($('cdbCSBudErr1'));Element.hide($('cdbCSBudErr2'));Element.hide($('cdbCSBudErr3'));Element.hide($('cdbCSBudErr4'));Element.hide($('cdbCSBudErr5'));selElem=$('cdbCSBudUnit');var ba=$('cdbCSBudAmount').value;if(isNaN(ba)){Element.show($('cdbCSBudErr2'));return;}
if(ba==0){Element.show($('cdbCSBudErr2'));return;}
var set=selElem.options[selElem.selectedIndex].value;if(set=='d'){var ta=Math.ceil(ba*MktPage.appVars.adShowDays);}else if(set=='m'){var ta=ba;}else if(set=='q'){var ta=Math.ceil(ba/3);}else if(set=='t'){if(MktPage.appVars.ScheduleInited){if(!MktPage.appVars.endSpecDate){Element.show($('cdbCSBudErr4'));return;}
if(MktPage.appVars.topicActive){var sd=new Date();}else{var sd=new Date(MktPage.appVars.actDate);}
var ed=new Date(MktPage.appVars.endDate);var interval=ed.getTime()-sd.getTime();var days=interval/(1000*60*60*24);days=Math.max(days,1);var bad=ba/days;var ta=Math.ceil(bad*30.5);}else{Element.show($('cdbCSBudErr1'));return;}}
if(isNaN(MktPage.appVars.topBudMonth))MktPage.appVars.topBudMonth=0;if(MktPage.appVars.progBudEnforced){if(ta>(Number(MktPage.appVars.progAvMonth)+Number(MktPage.appVars.topBudMonth))){Element.show($('cdbCSBudErr3'));return;}
var bav=(Number(MktPage.appVars.progAvMonth)+Number(MktPage.appVars.topBudMonth))-Number(ta);MktPage.appVars.progAvMonth=bav;MktPage.appVars.topBudMonth=ta;$('cdbCSBudAv').innerHTML='$'+MktAppJS.addCommas(bav)+' / month';}
var thisbud='$'+MktAppJS.addCommas(ta)+' / month';$('cdbCSBudThis').innerHTML=thisbud;MktPage.appVars.cdbCSBudPval=ba;MktPage.appVars.cdbCSBudPunit=set;Element.hide($('cdbCSBudComp'));this.disabled(false);}
MktAppJS.dashClickHandler=function(e,obj){MktPage.activatePanel(obj.panel);}
MktAppJS.dashSetText=function(dashItemEl,text){var diEl=getEl(dashItemEl);if(diEl!=null&&diEl.dom!=null){var diNs=diEl.getNextSibling();if(diNs!=null){diNs.innerHTML=text;}}}
MktAppJS.dashSetUsedByList=function(dashListEl,list){var listEl=Ext.get(dashListEl);if(listEl){while(listEl.dom.firstChild){listEl.dom.removeChild(listEl.dom.firstChild);}
var ul=list.length==0?ul=document.createTextNode("none"):ul=document.createElement('ul');for(var i=0;i<list.length;i++){var li=document.createElement('li');var aEx=new Ext.Element(document.createElement('a'));aEx.on('click',function(){MktDlManager.loadDl(this.navInfo);}.createDelegate(list[i]));aEx.applyStyles("cursor:pointer; text-decoration: underline;");var icon=new Ext.Element(document.createElement('div'));if(list[i].navInfo&&list[i].navInfo.subType){var subType=list[i].navInfo.subType;var iconCls=MktAppJS.componentIcons[subType]||'';icon.addClass('mki16 '+iconCls);aEx.dom.appendChild(icon.dom);}
var name=list[i].lpName||list[i].name;var txt=document.createTextNode(name);aEx.dom.appendChild(txt);li.appendChild(aEx.dom);ul.appendChild(li);};listEl.dom.appendChild(ul);}};MktAppJS.componentIcons={'broken':'mkiDelete2','page':'mkiWebpage','email':'mkiMail2','report':'mkiChartArea','template':'mkiWindow','emailTemplate':'mkiWindow','smartlist':'mkiDocumentNew','smartcampaign':'mkiLightbulbOn'};MktAppJS.dashSetUsesItem=function(dashItemEl,item){var itemEl=Ext.get(dashItemEl);if(itemEl){while(itemEl.dom.firstChild){itemEl.dom.removeChild(itemEl.dom.firstChild);}
aEx=new Ext.Element(document.createElement('a'));aEx.on('click',function(){MktDlManager.loadDl(this.navInfo);}.createDelegate(item));aEx.applyStyles("cursor:pointer; text-decoration: underline;");var icon=new Ext.Element(document.createElement('div'));var subType=item.navInfo.subType;var iconCls=MktAppJS.componentIcons[subType]||'';icon.addClass('mki16 '+iconCls);aEx.dom.appendChild(icon.dom);var name=item.lpName||item.name;var txt=document.createTextNode(name);aEx.dom.appendChild(txt);itemEl.dom.appendChild(aEx.dom);}};MktAppJS.cdhTrackInitedDisplays=function(){MktCanvasPanel.flagById('campaignCanvasDetailBudget',!MktPage.appVars.BudgetInited);MktCanvasPanel.flagById('campaignCanvasDetailSchedule',!MktPage.appVars.ScheduleInited);MktCanvasPanel.flagById('campaignCanvasDetailTargets',!MktPage.appVars.TargetsInited);}
MktAppJS.agdhTrackInitedDisplays=function(){MktCanvasPanel.flagById('adGroupCanvasEditSettings',!MktPage.appVars.defaultsInited);}
MktAppJS.addCommas=function(nStr){nStr+='';var x=nStr.split('.');var x1=x[0];var x2=x.length>1?'.'+x[1]:'';var rgx=/(\d+)(\d{3})/;while(rgx.test(x1)){x1=x1.replace(rgx,'$1'+','+'$2');}
return x1+x2;}
MktAppJS.valAndSubmitProgBudgetSave=function(progId,theForm){Element.hide($('pdbPEBudErr1'));Element.hide($('pdbPEBudErr2'));if($('pdbPEBudgetSet').checked){selElem=$('pdbPEBudgetUnit');var ba=$('pdbPEBudgetAmount').value;if(isNaN(ba)){Element.show($('pdbPEBudErr1'));return false;}
if(ba==0){Element.show($('pdbPEBudErr1'));return false;}
var set=selElem.options[selElem.selectedIndex].value;if(set=='d'){var pa=Math.ceil(ba*30.5);}else if(set=='m'){var pa=ba;}else if(set=='q'){var pa=Math.ceil(ba/3);}else if(set=='t'){var pa=9999;}
if(pa<MktPage.appVars.budTopCommitted){Element.show($('pdbPEBudErr2'));return false;}}
MktSession.ajaxRequest('/explorer/editProgramBudgetSubmit?programId='
+MktPage.appVars.programId,{serializeForm:'pdbPanelForm',containerId:'pdbOuter'});return true;}
MktAppJS.populateSelectBox=function(box,optList){var box=$(box);for(var ix=0;ix<optList.length;ix++){box.options[box.options.length]=new Option(optList[ix].text,optList[ix].id);}}
MktAppJS.clearSelectBox=function(box){var box=$(box);box.options.length=0;}
MktAppJS.moveSelectedBoxElementsSorted=function(fromBox,toBox){fromBox=$(fromBox);toBox=$(toBox);for(var no=0;no<fromBox.options.length;no++){if(fromBox.options[no].selected){fromBox.options[no].selected=false;toBox.options[toBox.options.length]=new Option(fromBox.options[no].text,fromBox.options[no].value);for(var no2=no;no2<(fromBox.options.length-1);no2++){fromBox.options[no2].value=fromBox.options[no2+1].value;fromBox.options[no2].text=fromBox.options[no2+1].text;fromBox.options[no2].selected=fromBox.options[no2+1].selected;}
no=no-1;fromBox.options.length=fromBox.options.length-1;}}
var tmpTextArray=new Array();for(var no=0;no<fromBox.options.length;no++){tmpTextArray.push(fromBox.options[no].text+'___'+fromBox.options[no].value);}
tmpTextArray.sort();var tmpTextArray2=new Array();for(var no=0;no<toBox.options.length;no++){tmpTextArray2.push(toBox.options[no].text+'___'+toBox.options[no].value);}
tmpTextArray2.sort();for(var no=0;no<tmpTextArray.length;no++){var items=tmpTextArray[no].split('___');fromBox.options[no]=new Option(items[0],items[1]);}
for(var no=0;no<tmpTextArray2.length;no++){var items=tmpTextArray2[no].split('___');toBox.options[no]=new Option(items[0],items[1]);}}
MktAppJS.cdtCSLangPickerDisabled=function(tf){MElement.textDisabled('cdtCSTxLangAv',tf);MElement.textDisabled('cdtCSTxLangSel',tf);MElement.disabled('cdtCSLangAdd',tf);MElement.disabled('cdtCSLangRem',tf);$('cdtCSLangFrom').disabled=tf;$('cdtCSLangTo').disabled=tf;}
MktAppJS.cdtCSTrackNetworks=function(){var spanTag=Ext.get('cdtCSNetPartnerSpan');var targetErr=Ext.get('cdtCSTargetErr1');var netPartner=Ext.get('cdtCSNetPartner').dom;if($('cdtCSNetSearch')){if($('cdtCSNetSearch').checked){spanTag.show();$('cdtCSNetPartner').disabled=false;}else{spanTag.hide();netPartner.disabled=true;netPartner.checked=false;}
if($('cdtCSNetSearch').checked||$('cdtCSNetContent').checked){targetErr.removeClass('mktFieldError')
MElement.disabled('cdtCSTargetSave',false);}else{targetErr.addClass('mktFieldError');MElement.disabled('cdtCSTargetSave',true);}}}
MktAppJS.cdtCSMoreTerrs=function(){if($('cdtCSTerrMore')){if($('cdtCSTerrMore').checked){MktAppJS.clearSelectBox('cdtCSTerrFrom');MktAppJS.populateSelectBox('cdtCSTerrFrom',MktPage.appVars.tcountries.availableAll);}else{MktAppJS.clearSelectBox('cdtCSTerrFrom');MktAppJS.populateSelectBox('cdtCSTerrFrom',MktPage.appVars.tcountries.available);}}}
MktAppJS.cdtCSTrackGeo=function(sb){var geoPaneCountriesEl=getEl('cdtCSGeoPane2');geoPaneCountriesEl.setVisibilityMode(Element.DISPLAY);var geoPaneRegionsEl=getEl('cdtCSGeoPane3');geoPaneRegionsEl.setVisibilityMode(Element.DISPLAY);var geoPaneMetrosEl=getEl('cdtCSGeoPane4');geoPaneMetrosEl.setVisibilityMode(Element.DISPLAY);var geoPaneCitiesEl=getEl('cdtCSGeoPane5');geoPaneCitiesEl.setVisibilityMode(Element.DISPLAY);var regionSelEl=getEl('cdtCSRegionSel');if(sb.value=='a'){geoPaneCountriesEl.setDisplayed(false);geoPaneRegionsEl.setDisplayed(false);geoPaneMetrosEl.setDisplayed(false);geoPaneCitiesEl.setDisplayed(false);regionSelEl.setDisplayed(false);}else if(sb.value=='c'){geoPaneCountriesEl.setDisplayed(true);geoPaneRegionsEl.setDisplayed(false);geoPaneMetrosEl.setDisplayed(false);geoPaneCitiesEl.setDisplayed(false);regionSelEl.setDisplayed(false);}else if(sb.value=='r'){geoPaneCountriesEl.setDisplayed(false);geoPaneRegionsEl.setDisplayed(true);geoPaneMetrosEl.setDisplayed(MktPage.appVars.regionSelected.toUpperCase()=='US');geoPaneCitiesEl.setDisplayed(true);regionSelEl.setDisplayed(true);MktAppJS.cdtCSSetSelectedRegion(MktPage.appVars.regionSelected);}}
MktAppJS.cdtCSSetSelectedRegion=function(selected){var rs=getEl('cdtCSRegionSel');if(rs){for(var ix=0;ix<rs.dom.options.length;ix++){if(selected.toUpperCase()==rs.dom.options[ix].value.toUpperCase()){rs.dom.options[ix].selected=true;break;}}}}
MktAppJS.cdtCSTrackRegion=function(sb){var errMsg2=Ext.get('cdtCSTargetErr2');errMsg2.removeClass('mktFieldError');var cdtGeoErrEl=getEl('cdtGeoErr');var geoPaneMetrosEl=getEl('cdtCSGeoPane4');geoPaneMetrosEl.setVisibilityMode(Element.DISPLAY);var selRegion=sb.value.toUpperCase();if(selRegion!=MktPage.appVars.regionSelected.toLowerCase()){MktAppJS.clearSelectBox('cdtCSRegionFrom');MktAppJS.clearSelectBox('cdtCSRegionTo');MktAppJS.clearSelectBox('cdtCSMetroFrom');MktAppJS.clearSelectBox('cdtCSMetroTo');MktAppJS.populateSelectBox('cdtCSRegionFrom',[{id:0,text:"Please wait..."}]);MktAppJS.populateSelectBox('cdtCSMetroFrom',[{id:0,text:"Please wait..."}]);geoPaneMetrosEl.setDisplayed(selRegion=='US');MktSession.clockCursor(true);MktSession.ajaxRequest('progSearch/refreshRegionsRequest',{serializeParms:{selRegion:selRegion},onMySuccess:MktAppJS.cdtRefreshRegionsDone});}}
MktAppJS.cdtRefreshRegionsDone=function(){MktAppJS.clearSelectBox('cdtCSRegionFrom');MktAppJS.clearSelectBox('cdtCSMetroFrom');MktAppJS.populateSelectBox('cdtCSRegionFrom',MktPage.appVars.tregions.available);MktAppJS.populateSelectBox('cdtCSMetroFrom',MktPage.appVars.tmetros.available);MktAppJS.cdtCSSetSelectedRegion(MktPage.appVars.regionSelected);MktSession.clockCursor(false);}
MktAppJS.cdtCSTrackLang=function(sb){var targetErr3=Ext.get('cdtCSTargetErr3');targetErr3.removeClass('mktFieldError');var langPane=Ext.get('cdtCSLangPicker');langPane.setVisibilityMode(Ext.Element.DISPLAY);if(sb.value=='a'){MktAppJS.cdtCSLangPickerDisabled();langPane.hide();}else{MktAppJS.cdtCSLangPickerDisabled(false);langPane.show();}}
MktAppJS.valAndSubmitCSTargetSave=function(){var haveErrors=false;var errMsg1=Ext.get('cdtCSTargetErr1');var errMsg2=Ext.get('cdtCSTargetErr2');var errMsg3=Ext.get('cdtCSTargetErr3');errMsg1.removeClass('mktFieldError');errMsg2.removeClass('mktFieldError');errMsg3.removeClass('mktFieldError');var searchCB=Ext.get('cdtCSNetSearch');var pSrchCB=Ext.get('cdtCSNetContent');var spanTag=Ext.get('cdtCSNetPartnerSpan');var netPartner=Ext.get('cdtCSNetPartner').dom;if(!searchCB.dom.checked){errMsg1.addClass('mktFieldError');MElement.disabled('cdtCSTargetSave',true);netPartner.disabled=true;netPartner.checked=false;haveErrors=true;}
if($('cdtCSNetSearch').checked||$('cdtCSNetContent').checked){errMsg1.removeClass('mktFieldError')
MElement.disabled('cdtCSTargetSave',false);}else{errMsg1.addClass('mktFieldError');MElement.disabled('cdtCSTargetSave',true);}
var parms={topicId:MktPage.appVars.topicId};var geoSB=getEl('cdtCSGeoPaneSel');var cdtGeoErrEl=getEl('cdtGeoErr');if(geoSB.dom.value=='c'){var toTerr=getEl('cdtCSTerrTo');if(toTerr.dom.options.length==0){haveErrors=true;cdtGeoErrEl.dom.innerHTML="You must select at least one country for this targeting option";errMsg2.addClass('mktFieldError');}else{var toTerrs=[];for(var ix=0;ix<toTerr.dom.options.length;ix++){toTerrs.push(toTerr.dom.options[ix].value);}
parms.cdtCSTargetTerrs=toTerrs.join(',');}}else if(geoSB.dom.value=='r'){var toRegion=getEl('cdtCSRegionTo');var toMetro=getEl('cdtCSMetroTo');var regionSB=getEl('cdtCSRegionSel');var selRegion=regionSB.dom.value.toUpperCase();parms.cdtCSSelRegion=selRegion;var nrSels=0;var toRegions=[];for(var ix=0;ix<toRegion.dom.options.length;ix++){toRegions.push(toRegion.dom.options[ix].value);nrSels++;}
parms.cdtCSTargetRegions=toRegions.join(',');var toMetros=[];for(var ix=0;ix<toMetro.dom.options.length;ix++){toMetros.push(toMetro.dom.options[ix].value);nrSels++;}
parms.cdtCSTargetMetros=toMetros.join(',');var toCities=[];for(var ix=0;ix<MktPage.appVars.tcities.selected.length;ix++){toCities.push(MktPage.appVars.tcities.selected[ix].id);nrSels++;}
parms.cdtCSTargetCities=toCities.join(';');if(nrSels==0){haveErrors=true;if(selRegion=='US'){cdtGeoErrEl.dom.innerHTML="You must select at least one region, metro area, or city for this targeting option";}else{cdtGeoErrEl.dom.innerHTML="You must select at least one region or city for this targeting option";}
errMsg2.addClass('mktFieldError');}}
var langSB=Ext.get('cdtCSLangPaneSel');if(langSB.dom.value=='s'){var toLang=Ext.get('cdtCSLangTo');if(toLang.dom.options.length==0){errMsg3.addClass('mktFieldError');haveErrors=true;}else{var toLangs=[];for(var ix=0;ix<toLang.dom.options.length;ix++){toLangs.push(toLang.dom.options[ix].value);}
parms.cdtCSTargetLangs=toLangs.join(',');}}
if(haveErrors){return;}
MktSession.clockCursor(true);MktSession.ajaxRequest('progSearch/editTargetsRS',{serializeForm:'cdtPanelForm',serializeParms:parms,containerId:'cdtOuter'});}
MktAppJS.phcDriveCreateProgramModalBtn=function(animEl,e){MktAppJS.phcDriveCreateProgramModal(animEl);}
MktAppJS.phcDriveCreateProgramModal=function(animEl){var mp=new MktModalForm({renderer:function(el,unused){Ext.DomHelper.append(el,'<div id="mexProgramEditForm">'+'  <form id="mexSubmitForm" action="#" onsubmit="return false;">'+'    <h2><div class="mktModalInFormMessage"></div></h2>'+'    <!-- General Form table -->'+'    <table border="0" cellpadding="0" cellspacing="0" class="mktForm2">'+'      <tr class="mktRequired">'+'        <td class="mktForm2Label">Program Name:</td>'+'        <td class="mktForm2Field">'+'          <input type="text" class="mktMedium" id="text" name="text" tabindex="1" value="" title="Program Name" maxlength="240" style="width: 95%" />'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'      <tr>'+'        <td class="mktForm2Label">Description:</td>'+'        <td class="mktForm2Field">'+'          <textarea id="desc" class="mktLong95" name="desc" tabindex="2" title="description" rows="4"></textarea>'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'    </table>'+'  </form>'+'</div>');},title:'New Program',serializeForm:'mexSubmitForm',ajopts:{serializeParms:{}},okButtonTitle:'Create',width:655,height:350});mp.show(animEl,MktAppJS.phcSubmitCreateProgramModal);}
MktAppJS.phcSubmitCreateProgramModal=function(mf){MktSession.ajaxRequest('/explorer/createProgramFolder',{serializeForm:'mexSubmitForm',onMySuccess:MktMa.newProgramFolderDone.createDelegate({fromModal:true})});return false;}
MktAppJS.phcDriveConfirmDeleteModal=function(compId,pName,animEl){MktMessage.confirmDelete('Delete Program?',"Are you sure you want to delete <b>"+pName+"</b>?",function(){MktAppJS.phcSubmitDeleteProgram(compId);},animEl);}
MktAppJS.phcSubmitDeleteProgram=function(compId){MktSession.clockCursor(true);MktSession.ajaxRequest('explorer/deleteProgramRequest?compId='+compId,{onMySuccess:MktAppJS.phcSubmitDeleteProgramDone});return true;}
MktAppJS.phcSubmitDeleteProgramDone=function(){var pNode=MktPage.appVars.deletedProgramNodeId;if(pNode){MktExplorer.removeNode(MktPage.appVars.deletedProgramNodeId);delete MktPage.appVars.deletedProgramNodeId;}}
MktAppJS.loadSmartCampaignMembership=function(compId,nodeId){var appVars=MktPage.appVars;if(compId==undefined){compId=MktPage.appVars.campaignSmartListId||appVars.smartCampaignId;}
if(compId==null){return;}
var config={type:'LeadDb',canvasId:'xyz',compType:'Smart List',compSubtype:'Smart Campaign',compId:compId};if(nodeId==undefined){nodeId=appVars.nodeId||null;}
if(nodeId){config.nodeId=nodeId;}
MktDlManager.loadDl(config);}
MktAppJS.chcDriveCreateSmartCampaignModalBtn=function(btn){MktAppJS.chcDriveCreateSmartCampaignModal(this.button);}
MktAppJS.chcDriveCreateSmartCampaignModal=function(animEl,programName,cloneScId){var url='smartcampaigns/createCampaignRequest';var parms={};var title="";var buttonName="";if(isDefined(cloneScId)){title='Clone Smart Campaign';buttonName='Clone';parms.cloneScId=cloneScId;}else{title='New Smart Campaign';buttonName='Create';if(isDefined(MktPage.appVars.programId)){url+='?programId='+MktPage.appVars.programId;}
if(isUndefined(programName)){parms.programName=MktPage.appVars.topicName;}else{parms.programName=programName;}}
var mp=new MktModalForm({url:url,title:title,ajopts:{serializeParms:parms},okButtonTitle:buttonName,width:655,height:350});mp.show(animEl,MktAppJS.chcSubmitCreateSmartCampaignModal);}
MktAppJS.chcSubmitCreateSmartCampaignModal=function(mf){var msg;if(isDefined(mf.ajopts.serializeParms.cloneScId)){msg="Cloning smart campaign";}else{msg="Creating smart campaign";}
MktSession.ajaxRequest('smartcampaigns/createCampaignSubmit',{serializeForm:'mpsSubmitForm'});return false;}
MktAppJS.chcEditQualificationModal=function(smartCampaignId,animEl){var url='smartcampaigns/editSmartCampaignExclusionRS?smartCampaignId='+smartCampaignId;var mp=new MktModalForm({url:url,title:'Edit Qualification Rules',okButtonTitle:'Save',width:400,height:250});mp.show(animEl,function(){MktSession.clockCursor(true);MktSession.ajaxRequest('smartcampaigns/editSmartCampaignExclusion',{serializeForm:'smcEditExclusionSubmitForm',onMySuccess:MktAppJS.chcEditQualificationSuccess});return true;});};smcHome=null;programSummary=null;MktAppJS.chcEditQualificationSuccess=function(animEl){if(MktPage.appVars.smartCampaignExclusionSaved!='saved'){Ext.MessageBox.alert('Marketo',MktPage.appVars.smartCampaignExclusionResult);delete MktPage.appVars.smartCampaignExclusionResult;}
delete MktPage.appVars.smartCampaignExclusionSaved;if(smcHome&&smcHome.summaryGrid){smcHome.summaryGrid.store.load();}
else if(programSummary&&programSummary.manager){programSummary.manager.reloadPanelByCompId(MktPage.appVars.smartCampaignExclusionSmartCampaignId);}
else{console.debug('no summary to reload?');}
var schedulePanel='campaignCanvasDetailSchedule';if(MktCanvas.isActiveTab(schedulePanel)){MktCanvas.setActiveTab(schedulePanel);}}
MktAppJS.chcDriveCreateEmailCampaignModal=function(animEl,leadDbSmartListId){var url='smartcampaigns/createEmailCampaignRequest';var addedProgId=false;if(isDefined(MktPage.appVars.programId)){url+='?programId='+MktPage.appVars.programId;addedProgId=true;}
if(isDefined(leadDbSmartListId)){url+=(addedProgId?'&':'?')+'leadDbSlId='+leadDbSmartListId;}
var mf=new MktModalForm({url:url,title:'New Email Campaign',okButtonTitle:'Next >',width:655,height:330});var pickSmartListBackBtn=mf.addClientButton('< Back',MktAppJS.chcCreateEmailGoBackNameIt);mf.hideButton(pickSmartListBackBtn);var pickEmailBackBtn=mf.addClientButton('< Back',MktAppJS.chcCreateEmailGoBackPickSmartList);mf.hideButton(pickEmailBackBtn);mf.extension={leadDbSlId:leadDbSmartListId};mf.show(animEl,MktAppJS.chcCreateEmailCheckCampaignName.createDelegate(mf));}
MktAppJS.chcCreateEmailCheckCampaignName=function(){delete MktPage.appVars.scNameAvailError;parms={programId:$('smcTEProgram').value,name:$('smcTEName').value};MktSession.ajaxRequest('smartcampaigns/checkSmartCampaignNameAvail',{serializeParms:parms,onMySuccess:MktAppJS.chcCreateEmailPickSmartList.createDelegate(this)});}
MktAppJS.chcCreateEmailPickSmartList=function(){if(!isDefined(MktPage.appVars.scNameAvailError)){MktModalForm.clearMessage();$('p.pslTEProgram').value=$('smcTEProgram').value;$('p.pslTEName').value=$('smcTEName').value;$('p.pslTEDescr').value=$('smcTEDescr').value;this.extension.ecname=$('smcTEName').value;var detailConfig={staticForm:'p.pslPickSmartListForm'};this.setButtonText(1,'Next >');this.showButton(2);this.hideButton(3);var doFn=MktAppJS.chcCreateEmailPickEmail.createDelegate(this);this.newContent(detailConfig,doFn);}}
MktAppJS.chcCreateEmailPickEmail=function(){MktModalForm.clearMessage();$('p.pemTEProgram').value=$('pslTEProgram').value;$('p.pemTEName').value=$('pslTEName').value;$('p.pemTEDescr').value=$('pslTEDescr').value;if($('pslSLOptionPickLater').checked){$('p.pemSLOption').value=$('pslSLOptionPickLater').value;}
else if($('pslSLOptionCopyExisting').checked){$('p.pemSLOption').value=$('pslSLOptionCopyExisting').value;$('p.pemCopySl').value=$('pslCopySl').value;}
else{$('p.pemSLOption').value=$('pslSLOptionRef').value;$('p.pemRefSl').value=$('pslRefSl').value;}
var detailConfig={staticForm:'p.pemPickEmailForm'};this.setButtonText(1,'Create');this.hideButton(2);this.showButton(3);var doFn=MktAppJS.chcDriveCreateEmailCampaign.createDelegate(this);this.newContent(detailConfig,doFn);}
MktAppJS.chcDriveCreateEmailCampaign=function(){MktSession.ajaxRequest('smartcampaigns/createEmailCampaignSubmit',{serializeForm:'pemSubmitPickEmailForm',onMySuccess:MktAppJS.chcEmailCampaignCreated.createDelegate(this)});MktCanvas.mask();return true;}
MktAppJS.chcEmailCampaignCreated=function(){return true;}
MktAppJS.chcCreateEmailGoBackNameIt=function(mf){MktModalForm.clearMessage();var url='smartcampaigns/createEmailCampaignRequest';var addedProgId=false;if(isDefined(MktPage.appVars.programId)){url+='?programId='+MktPage.appVars.programId;addedProgId=true;}
if(isDefined(this.extension.leadDbSlId)){url+=(addedProgId?'&':'?')+'leadDbSlId='+this.extension.leadDbSlId;}
var detailConfig={url:url};this.setButtonText(1,'Next >');this.hideButton(2);this.hideButton(3);var doFn=MktAppJS.chcCreateEmailPickSmartList;this.newContent(detailConfig,doFn);return false;}
MktAppJS.chcCreateEmailGoBackPickSmartList=function(mf){MktModalForm.clearMessage();$('p.pslTEProgram').value=$('pemTEProgram').value;$('p.pslTEName').value=$('pemTEName').value;$('p.pslTEDescr').value=$('pemTEDescr').value;if($('pemSLOption').value=='picklater'){$('p.pslSLOptionPickLater').checked=true;$('p.pslSLOptionCopyExisting').checked=false;$('p.pslSLOptionRef').checked=false;}
else if($('pemSLOption').value=='copy'){$('p.pslSLOptionPickLater').checked=false;$('p.pslSLOptionCopyExisting').checked=true;$('p.pslSLOptionRef').checked=false;$('p.pslCopySl').value=$('pemCopySl').value;}
else{$('p.pslSLOptionPickLater').checked=false;$('p.pslSLOptionCopyExisting').checked=false;$('p.pslSLOptionRef').checked=true;$('p.pslRefSl').value=$('pemRefSl').value;}
var detailConfig={staticForm:'p.pslSubmitPickSmartListForm'};this.setButtonText(1,'Next >');this.showButton(2);this.hideButton(3);var doFn=MktAppJS.chcCreateEmailPickEmail;this.newContent(detailConfig,doFn);}
MktAppJS.ldbDriveCreateSmartListModal=function(animEl,parentId,cloneFromId,cloneFromName,compSubtype){if(isDefined(cloneFromId)){var cloneHtml='<tr>'+'  <td class="mktForm2Label">Clone From:</td>'+'  <td class="mktForm2Field">'+cloneFromName+'    <div class="message"></div>'+'  </td>'+'</tr>';var cloneInputHtml='<input type="hidden" id="ldbCloneFromId" name="ldbCloneFromId" value="" />'+'<input type="hidden" id="ldbCompSubtype" name="ldbCompSubtype" value="" />';}
var mp=new MktModalForm({renderer:function(el,unused){Ext.DomHelper.append(el,'<div id="ldbCreateSmartListForm">'+'  <form id="ldbCreateSmartListSubmitForm" onsubmit="return false;">'+'    <h2><div class="mktModalInFormMessage"></div></h2>'+'    <!-- General Form table -->'+'    <table border="0" cellpadding="0" cellspacing="0" class="mktForm2">'+(cloneHtml||'')+'      <tr class="mktRequired">'+'        <td class="mktForm2Label">List Name:</td>'+'        <td class="mktForm2Field">'+'          <input class="mktMedium" type="text" tabindex="1" id="ldbListName" name="ldbListName" value="" maxsize="240" />'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'      <tr>'+'        <td class="mktForm2Label">Description:</td>'+'        <td class="mktForm2Field">'+'          <textarea class="mktLong95" id="ldbListDescr" name="ldbListDescr" tabindex="2" title="description" rows="4"></textarea>'+'          <input type="hidden" id="ldbParentId" name="ldbParentId" value="" />'+(cloneInputHtml||'')+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'    </table>'+'  </form>'+'</div>');},title:'New Smart List',okButtonTitle:'Create',width:550,height:300});mp.show(animEl,function(){Ext.MessageBox.show;if(isDefined(parentId)){var el=Ext.query('#ldbParentId','ldbCreateListForm')[0];if(isDefined(el)){el.value=parentId;}}
if(isDefined(cloneFromId)){var el=Ext.query('#ldbCloneFromId','ldbCreateListForm')[0];if(isDefined(el)){el.value=cloneFromId;}
var el=Ext.query('#ldbCompSubtype','ldbCreateListForm')[0];if(isDefined(el)){el.value=compSubtype;}}
MktSession.ajaxRequest('leadDatabase/createSmartList',{serializeForm:'ldbCreateSmartListSubmitForm'});return true;});}
MktAppJS.atxDriveCreateReportModalBtn=function(btn){MktAppJS.atxDriveCreateReportModal(this.button);}
MktAppJS.atxDriveCreateReportModal=function(animEl,atxReportCloneFrom){var url='analytics/createReportRequest';var parms={};var title="";var buttonName="";if(isDefined(atxReportCloneFrom)){title='Clone Report';buttonName='Clone';parms.atxReportCloneFrom=atxReportCloneFrom;}else{title='New Report';buttonName='Create';}
var mp=new MktModalForm({url:url,title:title,ajopts:{serializeParms:parms},okButtonTitle:buttonName,width:655,height:350});mp.show(animEl,MktAppJS.atxSubmitCreateReportModal);}
MktAppJS.atxSubmitCreateReportModal=function(mf){var msg;if(isDefined(mf.ajopts.serializeParms.atxReportCloneFrom)){msg="Cloning report";}else{msg="Creating report";}
MktSession.ajaxRequest('analytics/createReportSubmit',{serializeForm:'atxSubmitForm'});return false;}
MktAppJS.atxDriveCreateSubscriptionModalBtn=function(btn){MktAppJS.atxDriveCreateSubscriptionModal(this.button);}
MktAppJS.atxDriveCreateSubscriptionModal=function(animEl,atxReportCloneFrom){var url='analytics/createSubscriptionRequest';var params={};var title="New Subscription";var buttonName="Create";if(isDefined(atxReportCloneFrom)){params.atxReportCloneFrom=atxReportCloneFrom;}
var mp=new MktModalForm({url:url,title:title,ajopts:{serializeParms:params},okButtonTitle:buttonName,width:655,height:350});mp.show(animEl,MktAppJS.atxSubmitCreateSubscriptionModal);}
MktAppJS.atxSubmitCreateSubscriptionModal=function(mf){MktSession.ajaxRequest('analytics/createSubscriptionSubmit',{serializeForm:'atxSubmitForm',onMySuccess:MktAppJS.atxCreateSubscriptionSuccess});return false;}
MktAppJS.atxCreateSubscriptionSuccess=function(){MktCanvas.setActiveTab('atxCanvasSubscriptions');}
MktAppJS.cadDriveEditAccountDetailsModal=function(animEl,context){var mp=new MktModalForm({staticForm:'p.cadAccountDetailsForm',title:'Account Details',okButtonTitle:'Save',width:560,height:220});mp.on('load',function(){$('cadFirstName').value=context.firstName;$('cadLastName').value=context.lastName;$('cadEmail').value=context.email;},context,true);mp.show(animEl,MktAppJS.cadSubmitEditAccountDetailsModal);}
MktAppJS.cadSubmitEditAccountDetailsModal=function(mf){MktSession.ajaxRequest('/custAdmin/accountDetailsSubmit',{serializeForm:'cadSubmitForm',containerId:'caadOuter'});return false;}
MktAppJS.cadDriveChangePasswordModal=function(animEl){var mp=new MktModalForm({staticForm:'p.cadChangePasswordForm',title:'Change Password',okButtonTitle:'Save',width:560,height:295});mp.show(animEl,MktAppJS.cadSubmitChangePasswordModal);}
MktAppJS.cadSubmitChangePasswordModal=function(mf){MktSession.ajaxRequest('/custAdmin/changePasswordSubmit',{serializeForm:'cadSubmitForm'});return false;}
MktAppJS.cadDriveEditBillingDetailsModal=function(animEl,context){var mp=new MktModalForm({staticForm:'p.cadBillingDetailsForm',title:context.isSignup?'Choose Subscription Plan':'Billing Details',okButtonTitle:'Save',width:710,height:context.isSignup?675:635});mp.on('load',function(){$('cadFirstName').value=context.firstName;$('cadLastName').value=context.lastName;$('cadAddress1').value=context.address1;$('cadAddress2').value=context.address2;$('cadCity').value=context.city;$('cadState').value=context.state;$('cadZip').value=context.zip;$('cadPhone').value=context.phone;$('cadEmail').value=context.email;if(context.isSignup){var ccDisabled='';}
else{var ccDisabled='disabled';}
var ccType=$('cadCCType');ccType.value=context.ccType;ccType.disabled=ccDisabled;var ccExpMonth=$('cadCCExpMonth');ccExpMonth.value=context.ccExpMonth;ccExpMonth.disabled=ccDisabled;var ccExpYear=$('cadCCExpYear');ccExpYear.value=context.ccExpYear;ccExpYear.disabled=ccDisabled;var ccNum=$('cadCCNum');ccNum.value=context.ccNum;ccNum.disabled=ccDisabled;var ccCode=$('cadCCCode');ccCode.disabled=ccDisabled;getEl('cadChangeCC').on('click',function(evt,el){var form=getEl('cadBillingDetailsForm');var checkBoxOn=el.dom.checked;if(checkBoxOn){ccType.disabled='';ccExpMonth.disabled='';ccExpYear.disabled='';ccNum.disabled='';ccCode.disabled='';}
else{ccType.disabled='disabled';ccExpMonth.disabled='disabled';ccExpYear.disabled='disabled';ccNum.disabled='disabled';ccCode.disabled='disabled';}
Ext.query('tr.ccFields',form.dom).forEach(function(el,ix,a){if(checkBoxOn){Ext.fly(el).removeClass('mktDisabled');Ext.fly(el).addClass('mktRequired');}
else{Ext.fly(el).removeClass('mktRequired');Ext.fly(el).addClass('mktDisabled');}});});},context,true);mp.show(animEl,MktAppJS.cadSubmitEditBillingDetailsModal);}
MktAppJS.cadSubmitEditBillingDetailsModal=function(mf){MktSession.ajaxRequest('/custAdmin/billingDetailsSubmit',{serializeForm:'cadSubmitForm',containerId:'casdPanelInner',onMySuccess:MktAppJS.cadEditBillingDetailsDone});MktCanvas.mask();return true;}
MktAppJS.cadEditBillingDetailsDone=function(){if(isDefined(MktPage.appVars.showUsersTab)){if(MktPage.appVars.showUsersTab==1){MktCanvasPanel.unhideTab('cadCanvasUsers');}else{MktCanvasPanel.hideTab('cadCanvasUsers');}
delete MktPage.appVars.showUsersTab;}
if(isDefined(MktPage.appVars.forceRestart)&&MktPage.appVars.forceRestart==1){MktAppJS.cadForceRestart();delete MktPage.appVars.forceRestart;}}
MktAppJS.cadDriveEndSubscriptionModal=function(animEl){var mp=new MktModalForm({staticForm:'p.cadEndSubForm',title:'End Subscription',okButtonTitle:'End Subscription',cancelButtonTitle:'Stay with Marketo',width:560,height:290});mp.show(animEl,MktAppJS.cadSubmitEndSubscriptionModal);}
MktAppJS.cadSubmitEndSubscriptionModal=function(mf){MktSession.ajaxRequest('/custAdmin/endSubscriptionSubmit',{serializeForm:'cadSubmitForm',containerId:'casdPanelInner'});return false;}
MktAppJS.cadDriveChangePlanModal=function(animEl){var mp=new MktModalForm({staticForm:'p.cadChangePlanForm',title:'Change Subscription Plans',okButtonTitle:'Change',width:670,height:370,requiredChecker:MktAppJS.cadVerifyChangePlanModal,extension:{ppcCode:MktPage.appVars.ppcCode,lpCode:MktPage.appVars.lpCode}});mp.show(animEl,MktAppJS.cadSubmitChangePlanModal);}
MktAppJS.cadVerifyChangePlanModal=function(){var fmEls=this.innerEl.getChildrenByTagName('form');if(fmEls.length==0)return true;this.validateErrors=0;var rfs=Ext.query('tr.mktRequired',fmEls[0].dom);var sels=Ext.query('select',rfs[0]);this.extension.sels=sels;if(sels[0].value==this.extension.ppcCode&&sels[1].value==this.extension.lpCode){this.validateErrors++;var valMessage='Please change your selected plan(s) or click Cancel to exit';}else if(sels[0].value=='none'&&sels[1].value=='lpnone'){this.validateErrors++;var valMessage='Please select one or more plans; use End Subscription if you wish to cancel all plans';}
if(this.validateErrors>0){Ext.fly(rfs[0]).addClass('mktFieldError');this.extension.sel0changeFn=Ext.EventManager.on(sels[0],'change',MktAppJS.cadVCPMChange,this,true);this.extension.sel1changeFn=Ext.EventManager.on(sels[1],'change',MktAppJS.cadVCPMChange,this,true);MktModalForm.clearMessage();MktModalForm.setMessageError(valMessage);return false;}else{return true;}}
MktAppJS.cadDriveChangeTimezoneModal=function(animEl){var mp=new MktModalForm({staticForm:'p.cadChangeTimezoneSubmitForm',title:'Change Time Zone',okButtonTitle:'Change',width:390,height:170});mp.on('load',function(){if(MktPage.appVars.newTimezone){var el=Ext.query("option[value='"+MktPage.appVars.newTimezone+"']",'timezone')[0];if(el){el.selected=true;}}});mp.show(animEl,MktAppJS.cadSubmitChangeTimezoneModal);}
MktAppJS.cadSubmitChangeTimezoneModal=function(mf){MktSession.ajaxRequest('/custAdmin/changeTimezoneSubmit',{serializeForm:'cadChangeTimezoneSubmitForm',onMySuccess:MktAppJS.cadSubmitChangeTimezoneDone});MktCanvas.mask();return true;}
MktAppJS.cadSubmitChangeTimezoneDone=function(){var cTzResult=MktPage.appVars.changeTimezoneResults;if(isDefined(cTzResult)){if(cTzResult=='success'){var el=Ext.getDom('timezoneText');var nTz=MktPage.appVars.newTimezoneDisplay;if(isDefined(el)){el.innerHTML=nTz;}}else{var errMsg=MktPage.appVars.changeTimezoneErrMsg;if(isDefined(errMsg)){Ext.MessageBox.alert('Marketo',errMsg);delete errorMsg;}}
delete cTzResult;}
MktCanvas.unmask();};MktAppJS.cadVCPMChange=function(e,a,b,c){var eTarget=e.getTarget();var eRow=e.findTarget('mktRequired','tr');Ext.fly(eRow).removeClass('mktFieldError');Ext.EventManager.removeListener(this.extension.sels[0],'change',this.extension.sel0changeFn);Ext.EventManager.removeListener(this.extension.sels[1],'change',this.extension.sel1changeFn);this.validateErrors--;if(this.validateErrors==0){MktModalForm.clearMessage();}}
MktAppJS.cadSubmitChangePlanModal=function(mf){MktSession.ajaxRequest('/custAdmin/changePlanSubmit',{serializeForm:'cadSubmitForm',containerId:'casdPanelInner',onMySuccess:MktAppJS.cadSubmitChangePlanDone});MktCanvas.mask();return true;}
MktAppJS.cadSubmitChangePlanDone=function(){if(isDefined(MktPage.appVars.showUsersTab)){if(MktPage.appVars.showUsersTab==1){MktCanvasPanel.unhideTab('cadCanvasUsers');}else{MktCanvasPanel.hideTab('cadCanvasUsers');}
delete MktPage.appVars.showUsersTab;}
if(isDefined(MktPage.appVars.forceRestart)&&MktPage.appVars.forceRestart==1){MktAppJS.cadForceRestart();delete MktPage.appVars.forceRestart;}}
MktAppJS.cadForceRestart=function(){Ext.MessageBox.show({title:'Subscription Plans Changed',msg:'We must restart your session for your plan changes to take effect',closable:false,buttons:{ok:'Restart Session'},fn:MktAppJS.cadForceRestartOK});}
MktAppJS.cadForceRestartOK=function(){MktPage.preventNavAway(false);window.location.replace(MktSession.getUrlPrefix());}
MktAppJS.expDriveCreateProtypeFormModal=function(animEl){var mp=new MktModalForm({url:'/explorer/createProtoFormRequest',title:'Prototype Modal Form',okButtonTitle:'Submit',width:655,height:350});mp.show(animEl,MktAppJS.expSubmitCreatePrototypeFormModal);}
MktAppJS.expSubmitCreatePrototypeFormModal=function(mf){alert("Submit success");return false;}
var mktAlertBridge={}
mktAlertBridge.loadVerifyAccount=function(){MktMainNav.loadHome({firstLoad:1});}
mktAlertBridge.loadAccountSettings=function(){MktMainNav.loadCustAdmin({setActivePanel:'cadCanvasMyAccount'});}
mktAlertBridge.loadSubscription=function(){MktMainNav.loadCustAdmin({setActivePanel:'cadCanvasSubscription'});}
mktAlertBridge.loadSfdcSettings=function(){MktMainNav.loadCustAdmin({setActivePanel:'cadCanvasIntegration'});}
mktAlertBridge.loadCampaignBudget=function(tid){MktPage.activatePanel('campaignCanvasDetailBudget');}
mktAlertBridge.loadCampaignSchedule=function(tid){MktPage.activatePanel('campaignCanvasDetailSchedule');}
mktAlertBridge.loadCampaignTargeting=function(tid){MktPage.activatePanel('campaignCanvasDetailTargets');}
mktAlertBridge.loadCampaignFlow=function(tid){MktPage.activatePanel('campaignCanvasDetailFlow');}
mktAlertBridge.loadCampaignSmartlist=function(tid){MktPage.activatePanel('campaignCanvasDetailSmartlist');}
mktAlertBridge.loadLandingPage=function(){MktMainNav.loadLanding({lpgType:'page'});}
mktAlertBridge.loadLpForm=function(){MktMainNav.loadLanding({lpgType:'form'});}
mktTurnOffGBO=function(pfx,callback){this.pfx=pfx;this.offGBOBtn=getEl(pfx+'OffGBO');if(this.offGBOBtn)
this.offGBOBtn.mon('click',this.onOffBtnClicked,this,true);this.afterGBOOffMsg=getEl(pfx+'AfterGBOOff');this.beforeGBOOffMsg=getEl(pfx+'BeforeGBOOff');if(this.afterGBOOffMsg)
this.afterGBOOffMsg.setVisibilityMode(Ext.Element.DISPLAY);if(this.beforeGBOOffMsg)
this.beforeGBOOffMsg.setVisibilityMode(Ext.Element.DISPLAY);this.useBoValue=false;if(isDefined(callback)&&callback!=null){this.switchedCallBack=callback;}};mktTurnOffGBO.prototype={onSwitchClickedCallback:function(){this.dialog.close();MktSession.clockCursor(false);if(MktPage.appVars.switched){this.beforeGBOOffMsg.hide();this.afterGBOOffMsg.show();}
if(typeof this.switchedCallBack=='function'){this.switchedCallBack(this);}},chooseUseBoValue:function(){this.useBoValue=true;},chooseUsePrevious:function(){this.useBoValue=false;},onSwitchClicked:function(){MktSession.clockCursor(true);MktSession.ajaxRequest('bidding/turnOffGBO',{serializeParms:{topicId:MktPage.appVars.topicId,useBoValue:this.useBoValue},containerId:'adGroupCanvasBids',onMySuccess:this.onSwitchClickedCallback.createDelegate(this)});},setupDialogListener:function(){getEl('cpbRdUseBOValue').mon('click',this.chooseUseBoValue,this,true);getEl('cpbRdUsePrevious').mon('click',this.chooseUsePrevious,this,true);},onOffBtnClicked:function(btn){this.dialog=new MktModalForm({staticForm:'p.cpbTurnOffGBOForm',title:'Switch to Maximum Cost Bidding',okButtonTitle:'Switch',width:450,height:250});this.dialog.on('okclick',this.onSwitchClicked,this,true);this.dialog.show(this.offGBOBtn.dom);this.dialog.on('load',this.setupDialogListener,this,true);}};mktAdScheduleGrid=function(){this.hourGrid=getEl('cdaHourGrid');this.hourGrid.mon('click',this.onBlockClicked,this,true);this.hourGrid.mon('mouseover',this.onBlockMouseOver,this,true);this.hourGrid.setVisibilityMode(Ext.Element.DISPLAY);this.minuteGrid=getEl('cdaMinuteGrid');this.minuteGrid.mon('click',this.onBlockClicked,this,true);this.minuteGrid.mon('mouseover',this.onBlockMouseOver,this,true);this.minuteGrid.setVisibilityMode(Ext.Element.DISPLAY);this.clockMode24=getEl('cdaClockMode24');getEl('cdaSwitchTo24').mon('click',this.switchTo24Hour,this,true);this.clockMode24.setVisibilityMode(Ext.Element.DISPLAY);this.clockMode12=getEl('cdaClockMode12');getEl('cdaSwitchTo12').mon('click',this.switchTo12Hour,this,true);this.clockMode12.setVisibilityMode(Ext.Element.DISPLAY);getEl('cdaSwitchTo1H').mon('click',this.switchTo1HourInterval,this,true);getEl('cdaSwitchTo15M').mon('click',this.switchTo15MInterval,this,true);this.intervalMode15M=getEl('cdaIntervalMode15M');this.intervalMode15M.setVisibilityMode(Ext.Element.DISPLAY);this.intervalMode1H=getEl('cdaIntervalMode1H');this.intervalMode1H.setVisibilityMode(Ext.Element.DISPLAY);getEl('cdaEditBtn').mon('click',this.onEditClicked,this,true);this.saveBtn=new mktButton('cdaSaveBtn',this.onSaveClicked,this);this.saveBtn.disabled(true);getEl('cdaCancelBtn').mon('click',this.onCancelClicked,this,true);this.viewBtns=getEl('cdaViewBtns');this.editBtns=getEl('cdaEditBtns');this.viewBtns.setVisibilityMode(Ext.Element.DISPLAY);this.editBtns.setVisibilityMode(Ext.Element.DISPLAY);for(var i=1;i<=7;++i){getEl('cdaPause'+i).mon('click',this.onPauseDayClicked,this,true);}
for(var i=1;i<=24;++i){getEl('cdaPH'+i).mon('click',this.onPauseHourClicked,this,true);}
for(var i=1;i<=6;++i){getEl('cdaP4H'+i).mon('click',this.onPauseHourClicked,this,true);}
this.hourBlocks=[];for(var i=1;i<=168;++i){this.hourBlocks[i]=getEl('cdaHB'+i);}
this.minBlocks=[];for(var i=1;i<=672;++i){this.minBlocks[i]=getEl('cdaMB'+i);}
this.dataModel=new Array(672);this.allDayStatus=new Array(7);this.allHourStatus=new Array(24);this.hourInterval=MktPage.appVars.show1HourIntervalPref;this.timeMode12Hour=MktPage.appVars.show12HourClockPref;this.adsToArray(MktPage.appVars.adScheduling,this.dataModel);this.init(this.dataModel);this.editMode=false;this.panelContent=getEl("cdaPanelContent");};mktAdScheduleGrid.prototype={WEEKDAYS:['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'],BLOCKSTATUS:['RUNNING','PAUSED','PARTIAL'],getDataIndexFromTime:function(day,hour,minute){var index=day*24*4;index+=hour*4;index+=Math.floor(minute/15);return index;},getTimeFromDataIndex:function(index){var day=Math.floor(index/96);var time=index%96;var hour=Math.floor(time/4);var minute=(time%4)*15;return{'day':day,'hour':hour,'minute':minute};},getDataIndexFromId:function(id){var re=null;if(this.hourInterval){re=/cdaHB(\d+)/;}else{re=/cdaMB(\d+)/;}
var idArray=id.match(re);var numberId=null;if(idArray!==null){numberId=parseInt(idArray[1]);}
if(numberId!=null){var dataIndex=numberId-1;if(this.hourInterval){return dataIndex*4;}else{return dataIndex;}}
return null;},getIdFromDataIndex:function(dataIndex){if(this.hourInterval){var id=Math.floor(i/4);return'cdaHB'+id;}else{return'cdaMB'+id;}},getTimeFromId:function(id){var dataIndex=this.getDataIndexFromId(id);if(dataIndex!==null){return this.getTimeFromDataIndex(dataIndex);}
return null;},getTimeStr:function(day,hour,minute){var dayStr=this.WEEKDAYS[day];var minStr;if(minute<10){minStr='0'+minute;}else{minStr=''+minute;}
if(this.timeMode12Hour){var hourStr;var amPm='';if(hour==0){hourStr='Midnight 0';amPm='am'}else if(hour==12){hourStr='Noon 12';amPm='pm'}else if(hour<12){hourStr=''+hour;amPm='am';}else{hourStr=""+hour-12;amPm='pm';}
return dayStr+" "+hourStr+':'+minStr+' '+amPm;}else{return dayStr+" "+hour+':'+minStr;}},adsToArray:function(ads,data){var i;var j;if(ads['status']=='Enabled'){for(i=0;i<672;++i){data[i]=false;}
var intervals=ads['intervals'];for(i=0;i<intervals.length;++i){var aInterval=intervals[i];var day=this.WEEKDAYS.indexOf(aInterval['day']);var startHour=parseInt(aInterval['startHour']);var startMin=parseInt(aInterval['startMinute']);var endHour=parseInt(aInterval['endHour']);if(endHour==0){endHour=24;}
var endMin=parseInt(aInterval['endMinute']);var startIndex=this.getDataIndexFromTime(day,startHour,startMin);var endIndex=this.getDataIndexFromTime(day,endHour,endMin);for(j=startIndex;j<endIndex;++j){data[j]=true;}}}else{for(i=0;i<672;++i){data[i]=true;}}},arrayToAds:function(data,ads){var intervals={};intervals['intervals']=[];var len=0;var aInterval={};var openInterval=false;var index=0;var enabled=false;for(var i=0;i<7;++i){for(var j=0;j<96;++j,++index){if(!data[index])
enabled=true;if(data[index]&&!openInterval){var time=this.getTimeFromDataIndex(index);aInterval={};aInterval['day']=this.WEEKDAYS[time['day']];aInterval['startHour']=''+time['hour'];aInterval['startMinute']=''+time['minute'];openInterval=true;}else if(!data[index]&&openInterval){var time=this.getTimeFromDataIndex(index);aInterval['endHour']=''+time['hour'];aInterval['endMinute']=''+time['minute'];openInterval=false;len=intervals['intervals'].length;intervals['intervals'][len]=aInterval;}}
if(openInterval){aInterval['endHour']=0;aInterval['endMinute']=0;openInterval=false;len=intervals['intervals'].length;intervals['intervals'][len]=aInterval;}}
if(enabled){ads['status']='Enabled';ads['intervals']=intervals['intervals'];}else{ads['status']='Disabled';}},init:function(data){for(i=0;i<7;++i){this.allDayStatus[i]=false;}
for(i=0;i<data.length;++i){if(data[i]){this.allDayStatus[Math.floor(i/96)]=true;}}
for(i=0;i<24;++i){this.allHourStatus[i]=false;}
for(i=0;i<data.length;++i){if(data[i]){this.allHourStatus[Math.floor((i%96)/4)]=true;}}},setHourBlockClass:function(elmt,blockstatus){var index=this.BLOCKSTATUS.indexOf(blockstatus);if(index==0){elmt.removeClass(['mktDisabledHourBlock','mktPartialHourBlock']);elmt.addClass('mktHourBlock');}else if(index==1){elmt.removeClass(['mktHourBlock','mktPartialHourBlock']);elmt.addClass('mktDisabledHourBlock');}else if(index==2){elmt.removeClass(['mktHourBlock','mktDisabledHourBlock']);elmt.addClass('mktPartialHourBlock');}},load:function(data){var i;if(data==null)data=this.dataModel;if(this.hourInterval){for(i=0;i<data.length;i+=4){var index=Math.floor(i/4)+1;if(data[i]&&data[i+1]&&data[i+2]&&data[i+3]){this.setHourBlockClass(this.hourBlocks[index],'RUNNING');}else if(data[i]||data[i+1]||data[i+2]||data[i+3]){this.setHourBlockClass(this.hourBlocks[index],'PARTIAL');}else{this.setHourBlockClass(this.hourBlocks[index],'PAUSED');}}}else{for(i=0;i<data.length;++i){if(data[i]){this.minBlocks[i+1].replaceClass('mktDisabledMinuteBlock','mktMinuteBlock');}else{this.minBlocks[i+1].replaceClass('mktMinuteBlock','mktDisabledMinuteBlock');;}}}
this.init(data);},getDataToSave:function(){var ads={};this.arrayToAds(this.dataModel,ads);return ads;},onPauseHourClicked:function(e){if(!this.editMode)return;var target=e.getTarget();var pauseElmt=getEl(target);var indexArray=null;var hour=null;var i;if(this.hourInterval){indexArray=pauseElmt.dom.id.match(/cdaP4H(\d+)/);if(indexArray==null){e.stopEvent();return;}
hour=(parseInt(indexArray[1])-1)*4;var hourStatus=false;for(i=0;i<4;++i){if(this.allHourStatus[hour+i]){hourStatus=true;break;}}
hourStatus=!hourStatus;for(i=0;i<4;++i){this.allHourStatus[hour+i]=hourStatus;}}else{indexArray=pauseElmt.dom.id.match(/cdaPH(\d+)/);hour=parseInt(indexArray[1])-1;this.allHourStatus[hour]=!this.allHourStatus[hour];hourStatus=this.allHourStatus[hour];}
if(this.hourInterval){for(k=0;k<4;++k){var index=(hour+k)*4;for(i=0;i<7;++i,index+=96){for(j=0;j<4;++j){this.dataModel[index+j]=hourStatus;}}}}else{var index=hour*4;for(i=0;i<7;++i,index+=96){for(j=0;j<4;++j){this.dataModel[index+j]=hourStatus;}}}
var numBlock=0;if(this.hourInterval){numBlock=24;}else{numBlock=96;}
var j;var startIndex;if(this.hourInterval){startIndex=hour;}else{startIndex=4*hour;}
for(j=0;j<4;++j,++startIndex){var step=0;for(i=0;i<7;++i,step+=numBlock){var newIndex=startIndex+step+1;var elmt;if(this.hourInterval){elmt=this.hourBlocks[newIndex];if(hourStatus){this.setHourBlockClass(elmt,'RUNNING');}else{this.setHourBlockClass(elmt,'PAUSED');}}else{elmt=this.minBlocks[newIndex];if(hourStatus){elmt.replaceClass('mktDisabledMinuteBlock','mktMinuteBlock');}else{elmt.replaceClass('mktMinuteBlock','mktDisabledMinuteBlock');;}}}}
this.saveBtn.disabled(false);e.stopEvent();},onPauseDayClicked:function(e){if(!this.editMode)return;var target=e.getTarget();var pauseElmt=getEl(target);var indexArray=pauseElmt.dom.id.match(/cdaPause(\d+)/);var day=parseInt(indexArray[1])-1;this.allDayStatus[day]=!this.allDayStatus[day];var dataIndex=this.getDataIndexFromTime(day,0,0);var i;var dayStatus=this.allDayStatus[day];for(i=0;i<96;++i){this.dataModel[dataIndex+i]=dayStatus;}
var numBlock=0;if(this.hourInterval){numBlock=24;}else{numBlock=96;}
var startIndex=day*numBlock;for(var i=1;i<=numBlock;++i){var newIndex=startIndex+i;var elmt;if(this.hourInterval){elmt=this.hourBlocks[newIndex];if(dayStatus){this.setHourBlockClass(elmt,'RUNNING');}else{this.setHourBlockClass(elmt,'PAUSED');}}else{elmt=this.minBlocks[newIndex];if(dayStatus){elmt.replaceClass('mktDisabledMinuteBlock','mktMinuteBlock');}else{elmt.replaceClass('mktMinuteBlock','mktDisabledMinuteBlock');}}}
this.saveBtn.disabled(false);e.stopEvent();},switchTo1HourInterval:function(){this.hourInterval=true;this.load();this.refreshHeader();this.minuteGrid.hide();this.hourGrid.show();this.intervalMode15M.hide();this.intervalMode1H.show();MktSession.ajaxRequest('progSearch/saveSchedulePref',{serializeParms:{show1HourIntervalPref:true}});},switchTo15MInterval:function(){this.hourInterval=false;this.load();this.refreshHeader();this.hourGrid.hide();this.minuteGrid.show();this.intervalMode15M.show();this.intervalMode1H.hide();MktSession.ajaxRequest('progSearch/saveSchedulePref',{serializeParms:{show1HourIntervalPref:false}});},refreshHeader:function(){if(this.timeMode12Hour){this.switchTo12Hour();}else{this.switchTo24Hour();}},switchTo12Hour:function(){this.timeMode12Hour=true;if(this.hourInterval){getEl('cdaP4H1').update('Midnight');getEl('cdaP4H2').update('4:00am');getEl('cdaP4H3').update('8:00am');getEl('cdaP4H4').update('Noon');getEl('cdaP4H5').update('4:00pm');getEl('cdaP4H6').update('8:00pm');}else{getEl('cdaPH1').update('Midnight');getEl('cdaPH2').update('1:00am');getEl('cdaPH3').update('2:00am');getEl('cdaPH4').update('3:00am');getEl('cdaPH5').update('4:00am');getEl('cdaPH6').update('5:00am');getEl('cdaPH7').update('6:00am');getEl('cdaPH8').update('7:00am');getEl('cdaPH9').update('8:00am');getEl('cdaPH10').update('9:00am');getEl('cdaPH11').update('10:00am');getEl('cdaPH12').update('11:00am');getEl('cdaPH13').update('Noon');getEl('cdaPH14').update('1:00pm');getEl('cdaPH15').update('2:00pm');getEl('cdaPH16').update('3:00pm');getEl('cdaPH17').update('4:00pm');getEl('cdaPH18').update('5:00pm');getEl('cdaPH19').update('6:00pm');getEl('cdaPH20').update('7:00pm');getEl('cdaPH21').update('8:00pm');getEl('cdaPH22').update('9:00pm');getEl('cdaPH23').update('10:00pm');getEl('cdaPH24').update('11:00pm');}
this.clockMode24.hide();this.clockMode12.show();MktSession.ajaxRequest('progSearch/saveSchedulePref',{serializeParms:{show12HourClockPref:true}});},switchTo24Hour:function(){this.timeMode12Hour=false;if(this.hourInterval){getEl('cdaP4H1').update('0:00');getEl('cdaP4H2').update('4:00');getEl('cdaP4H3').update('8:00');getEl('cdaP4H4').update('12:00');getEl('cdaP4H5').update('16:00');getEl('cdaP4H6').update('20:00');}else{getEl('cdaPH1').update('0:00');getEl('cdaPH2').update('1:00');getEl('cdaPH3').update('2:00');getEl('cdaPH4').update('3:00');getEl('cdaPH5').update('4:00');getEl('cdaPH6').update('5:00');getEl('cdaPH7').update('6:00');getEl('cdaPH8').update('7:00');getEl('cdaPH9').update('8:00');getEl('cdaPH10').update('9:00');getEl('cdaPH11').update('10:00');getEl('cdaPH12').update('11:00');getEl('cdaPH13').update('12:00');getEl('cdaPH14').update('13:00');getEl('cdaPH15').update('14:00');getEl('cdaPH16').update('15:00');getEl('cdaPH17').update('16:00');getEl('cdaPH18').update('17:00');getEl('cdaPH19').update('18:00');getEl('cdaPH20').update('19:00');getEl('cdaPH21').update('20:00');getEl('cdaPH22').update('21:00');getEl('cdaPH23').update('22:00');getEl('cdaPH24').update('23:00');}
this.clockMode12.hide();this.clockMode24.show();MktSession.ajaxRequest('progSearch/saveSchedulePref',{serializeParms:{show12HourClockPref:false}});},onEditClicked:function(){this.viewBtns.hide();this.editBtns.show();this.editMode=true;this.panelContent.replaceClass("mktPanelShowing","mktPanelEditing");},onCancelClicked:function(){MktSession.clockCursor(true);this.adsToArray(MktPage.appVars.adScheduling,this.dataModel);this.load();this.saveBtn.disabled(true);this.viewBtns.show();this.editBtns.hide();this.editMode=false;this.panelContent.replaceClass("mktPanelEditing","mktPanelShowing");MktSession.clockCursor(false);},onSaveClicked:function(){var ads=this.getDataToSave();MktSession.clockCursor(true);MktSession.ajaxRequest('progSearch/saveAdScheduling',{serializeParms:{topicId:MktPage.appVars.topicId,adScheduling:Ext.encode(ads)},onMySuccess:this.onSaveDone.createDelegate(this,[ads])});MktCanvas.mask();return true;},onSaveDone:function(ads){this.saveBtn.disabled(true);MktPage.appVars.adScheduling=ads;MktSession.clockCursor(false);this.viewBtns.show();this.editBtns.hide();this.editMode=false;this.panelContent.replaceClass("mktPanelEditing","mktPanelShowing");},getBlockFromTarget:function(target){var block=null;var className='mktHourBlock';var disabledClassName='mktDisabledHourBlock';var partialClassName='mktPartialHourBlock';if(!this.hourInterval){className='mktMinuteBlock';disabledClassName='mktDisabledMinuteBlock';}
if(target&&(Ext.fly(target).hasClass(className)||Ext.fly(target).hasClass(disabledClassName)||Ext.fly(target).hasClass(partialClassName))){block=getEl(target);}
return block;},onBlockClicked:function(e){if(!this.editMode)return false;blockClicked=this.getBlockFromTarget(e.getTarget());if(blockClicked){var dataIndex=this.getDataIndexFromId(blockClicked.dom.id);if(dataIndex!=null){if(this.dataModel[dataIndex]){if(this.hourInterval){this.setHourBlockClass(blockClicked,'PAUSED');}else{blockClicked.replaceClass("mktMinuteBlock","mktDisabledMinuteBlock");}}else{if(this.hourInterval){this.setHourBlockClass(blockClicked,'RUNNING');}else{blockClicked.replaceClass("mktDisabledMinuteBlock","mktMinuteBlock");}}
if(this.hourInterval){for(var i=0;i<4;++i){this.dataModel[dataIndex+i]=!this.dataModel[dataIndex+i];}}else{this.dataModel[dataIndex]=!this.dataModel[dataIndex];}}
this.saveBtn.disabled(false);}
return false;},onBlockMouseOver:function(e){var block=this.getBlockFromTarget(e.getTarget());if(block){var time=this.getTimeFromId(block.dom.id);block.dom.title=this.getTimeStr(time['day'],time['hour'],time['minute']);}
return false;}};mktTurnOffAdsMultiplier=function(pfx){this.pfx=pfx;this.offMultiplierBtn=getEl(pfx+'OffMultiplier');if(this.offMultiplierBtn)
this.offMultiplierBtn.mon('click',this.onOffBtnClicked,this,true);this.afterMultiplierOffMsg=getEl(pfx+'AfterMultiplierOff');this.beforeMultiplierOffMsg=getEl(pfx+'BeforeMultiplierOff');if(this.afterMultiplierOffMsg)
this.afterMultiplierOffMsg.setVisibilityMode(Ext.Element.DISPLAY);if(this.beforeMultiplierOffMsg)
this.beforeMultiplierOffMsg.setVisibilityMode(Ext.Element.DISPLAY);};mktTurnOffAdsMultiplier.prototype={onSwitchClickedCallback:function(){MktSession.clockCursor(false);if(MktPage.appVars.multiplierOff){this.beforeMultiplierOffMsg.hide();this.afterMultiplierOffMsg.show();}},onOffBtnClicked:function(btn){MktSession.clockCursor(true);MktSession.ajaxRequest('bidding/turnOffMultiplier',{serializeParms:{topicId:MktPage.appVars.topicId},onMySuccess:this.onSwitchClickedCallback.createDelegate(this)});}};
/* ========== mktGuide.js ============ */

function mktGuideManager(config){this.config={};Ext.apply(this.config,config||{});this.cacheIds=[];this.cacheTexts=[];this.cacheSize=4;this.curPanel=null;var rthtml='<div id="" class="gimLink"><a href="{2}" class="{1}" {3}>{0}</a></div>';var rttmpl=new Ext.Template(rthtml);rttmpl.compile();this.rttmpl=rttmpl;getEl('gidHome').on('click',this.showBase,this,true);return this;}
mktGuideManager.prototype.loadNewPanel=function(panelId){var cText=this.checkCache(panelId);if(cText){this.updateGuide(cText);}else{MktSession.ajaxRequest('guide/getPanel',{serializeParms:{panelId:panelId},onMySuccess:this.newPanelLoaded.createDelegate(this)});}
this.curPanel=panelId;}
mktGuideManager.prototype.newPanelLoaded=function(){var text=MktPage.appVars.panelText;if(MktPage.sfEnvironment=='dev'&&!MktPage.appVars.panelTextExists){text+=": "+this.curPanel;}
this.updateGuide(text);this.updateCache(MktPage.appVars.panelText);}
mktGuideManager.prototype.checkCache=function(panelId){if(MktPage.sfEnvironment=='dev')return null;var cix=this.cacheIds.indexOf(panelId);if(cix<0)return null;return this.cacheTexts[cix];}
mktGuideManager.prototype.updateCache=function(text){if(MktPage.sfEnvironment=='dev')return null;if(this.cacheIds.length==this.cacheSize){this.cacheTexts.shift();this.cacheIds.shift();}
this.cacheTexts.push(text);this.cacheIds.push(this.curPanel);}
mktGuideManager.prototype.updateGuide=function(text){this.linkCount=0;this.links=[];var re=/<a (.*?)>(.*?)<\/a>/g;var ttext=text.replace(re,this.decodeLinks.createDelegate(this))
this.baseText=ttext;this.showBase();this.renderRelated();}
mktGuideManager.prototype.decodeLinks=function(str,m1,m2){var re=/(.*?)="(.*?)"/g;re.lastIndex=0;var mr;var name=null;var label=null;var link=null;while((mr=re.exec(m1))!=null){var attrib=MktUtil.trim(mr[1]);if(attrib=='href'){link=this.formatLink(mr[2],m2);var page=mr[2];}else if(attrib=='name'){name=mr[2];}else if(attrib=='label'){label=mr[2];}else{throw"Unknown attribute "+mr[1]+" in panelhelp text link";}}
if(link!=null){if(label!=null){this.links.push({name:'external',label:label,page:page});}
return link;}else{if(name!=null){var found=false;for(var ix=0;ix<this.links.length;ix++){if(this.links[ix].name==name){this.links[ix].label=label;this.links[ix].text=m2;found=true;break;}}
if(!found){this.links.push({name:name,label:label,text:m2});}}else if(label!=null){this.links.push({name:'anonymous',label:label,text:m2});}
return'';}}
mktGuideManager.prototype.formatLink=function(linker,linkText){if(linker.charAt(0)=="#"){var rv='<a href="#" onclick="MktPage.guideManager.showLink('+this.linkCount+');return false;">'+linkText+'</a>';this.links.push({name:linker.slice(1)});this.linkCount++;}else{if(linkText.length>0){var urlPrefix=MktSession.getUrlPrefix();var rv='<a class="gimExternalLink" href="'+urlPrefix+'/wiki/'+linker+'" target="MarketoWiki">'+linkText+'</a>';}else{var rv='';}}
return rv;}
mktGuideManager.prototype.showLink=function(idx){$('gidMainText').innerHTML=this.links[idx].text;}
mktGuideManager.prototype.renderRelated=function(){var rtEl=getEl('gidRelatedLinks');rtEl.dom.innerHTML='';for(var ix=0;ix<this.links.length;ix++){if(this.links[ix].name=='external'){var classVal='gimExternalLink';var urlPrefix=MktSession.getUrlPrefix();var href=urlPrefix+'/wiki/'+this.links[ix].page;var xtra='target="MarketoWiki"';}else{var classVal='gimInternalLink';var href='#';var xtra=' onclick="MktPage.guideManager.showLink('+ix+');return false;"';}
this.rttmpl.append(rtEl.dom,[this.links[ix].label,classVal,href,xtra]);}}
mktGuideManager.prototype.showBase=function(){$('gidMainText').innerHTML=this.baseText;}
mktGuideManager.editPageSubmit=function(){MktSession.ajaxRequest('guide/editPageSubmit',{serializeForm:'gidPickEntryForm',targetActivePanel:true,onMySuccess:mktGuideManager.showForEdit});}
mktGuideManager.showForEdit=function(){var showText=MktPage.appVars.pageText;$('gidHelpText').value=showText;}
mktGuideManager.savePage=function(){var pText=$('gidHelpText').value;var pTextEnc=encodeURIComponent(pText);var pId=$('gidEditingId').value;MktSession.ajaxRequest('guide/savePageSubmit',{serializeParms:{gidEditingId:pId,gidHelpText:pTextEnc},targetActivePanel:true});}
/* ========== ../ext-2.0/adapter/ext/ext-base-debug.js ============ */

Ext={version:"2.2.1"};window["undefined"]=window["undefined"];Ext.apply=function(d,e,b){if(b){Ext.apply(d,b)}if(d&&e&&typeof e=="object"){for(var a in e){d[a]=e[a]}}return d};(function(){var idSeed=0;var ua=navigator.userAgent.toLowerCase();var isStrict=document.compatMode=="CSS1Compat",isOpera=ua.indexOf("opera")>-1,isChrome=ua.indexOf("chrome")>-1,isSafari=!isChrome&&(/webkit|khtml/).test(ua),isSafari3=isSafari&&ua.indexOf("webkit/5")!=-1,isIE=!isOpera&&ua.indexOf("msie")>-1,isIE7=!isOpera&&ua.indexOf("msie 7")>-1,isIE8=!isOpera&&ua.indexOf("msie 8")>-1,isGecko=!isSafari&&!isChrome&&ua.indexOf("gecko")>-1,isGecko3=isGecko&&ua.indexOf("rv:1.9")>-1,isBorderBox=isIE&&!isStrict,isWindows=(ua.indexOf("windows")!=-1||ua.indexOf("win32")!=-1),isMac=(ua.indexOf("macintosh")!=-1||ua.indexOf("mac os x")!=-1),isAir=(ua.indexOf("adobeair")!=-1),isLinux=(ua.indexOf("linux")!=-1),isSecure=window.location.href.toLowerCase().indexOf("https")===0;if(isIE&&!isIE7){try{document.execCommand("BackgroundImageCache",false,true)}catch(e){}}Ext.apply(Ext,{isStrict:isStrict,isSecure:isSecure,isReady:false,enableGarbageCollector:true,enableListenerCollection:false,SSL_SECURE_URL:"javascript:false",BLANK_IMAGE_URL:"http://extjs.com/s.gif",emptyFn:function(){},applyIf:function(o,c){if(o&&c){for(var p in c){if(typeof o[p]=="undefined"){o[p]=c[p]}}}return o},addBehaviors:function(o){if(!Ext.isReady){Ext.onReady(function(){Ext.addBehaviors(o)});return}var cache={};for(var b in o){var parts=b.split("@");if(parts[1]){var s=parts[0];if(!cache[s]){cache[s]=Ext.select(s)}cache[s].on(parts[1],o[b])}}cache=null},id:function(el,prefix){prefix=prefix||"ext-gen";el=Ext.getDom(el);var id=prefix+(++idSeed);return el?(el.id?el.id:(el.id=id)):id},extend:function(){var io=function(o){for(var m in o){this[m]=o[m]}};var oc=Object.prototype.constructor;return function(sb,sp,overrides){if(typeof sp=="object"){overrides=sp;sp=sb;sb=overrides.constructor!=oc?overrides.constructor:function(){sp.apply(this,arguments)}}var F=function(){},sbp,spp=sp.prototype;F.prototype=spp;sbp=sb.prototype=new F();sbp.constructor=sb;sb.superclass=spp;if(spp.constructor==oc){spp.constructor=sp}sb.override=function(o){Ext.override(sb,o)};sbp.override=io;Ext.override(sb,overrides);sb.extend=function(o){Ext.extend(sb,o)};return sb}}(),override:function(origclass,overrides){if(overrides){var p=origclass.prototype;for(var method in overrides){p[method]=overrides[method]}if(Ext.isIE&&overrides.toString!=origclass.toString){p.toString=overrides.toString}}},namespace:function(){var a=arguments,o=null,i,j,d,rt;for(i=0;i<a.length;++i){d=a[i].split(".");rt=d[0];eval("if (typeof "+rt+' == "undefined"){'+rt+" = {};} o = "+rt+";");for(j=1;j<d.length;++j){o[d[j]]=o[d[j]]||{};o=o[d[j]]}}},urlEncode:function(o){if(!o){return""}var buf=[];for(var key in o){var ov=o[key],k=encodeURIComponent(key);var type=typeof ov;if(type=="undefined"){buf.push(k,"=&")}else{if(type!="function"&&type!="object"){buf.push(k,"=",encodeURIComponent(ov),"&")}else{if(Ext.isDate(ov)){var s=Ext.encode(ov).replace(/"/g,"");buf.push(k,"=",s,"&")}else{if(Ext.isArray(ov)){if(ov.length){for(var i=0,len=ov.length;i<len;i++){buf.push(k,"=",encodeURIComponent(ov[i]===undefined?"":ov[i]),"&")}}else{buf.push(k,"=&")}}}}}}buf.pop();return buf.join("")},urlDecode:function(string,overwrite){if(!string||!string.length){return{}}var obj={};var pairs=string.split("&");var pair,name,value;for(var i=0,len=pairs.length;i<len;i++){pair=pairs[i].split("=");name=decodeURIComponent(pair[0]);value=decodeURIComponent(pair[1]);if(overwrite!==true){if(typeof obj[name]=="undefined"){obj[name]=value}else{if(typeof obj[name]=="string"){obj[name]=[obj[name]];obj[name].push(value)}else{obj[name].push(value)}}}else{obj[name]=value}}return obj},each:function(array,fn,scope){if(typeof array.length=="undefined"||typeof array=="string"){array=[array]}for(var i=0,len=array.length;i<len;i++){if(fn.call(scope||array[i],array[i],i,array)===false){return i}}},combine:function(){var as=arguments,l=as.length,r=[];for(var i=0;i<l;i++){var a=as[i];if(Ext.isArray(a)){r=r.concat(a)}else{if(a.length!==undefined&&!a.substr){r=r.concat(Array.prototype.slice.call(a,0))}else{r.push(a)}}}return r},escapeRe:function(s){return s.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},callback:function(cb,scope,args,delay){if(typeof cb=="function"){if(delay){cb.defer(delay,scope,args||[])}else{cb.apply(scope,args||[])}}},getDom:function(el){if(!el||!document){return null}return el.dom?el.dom:(typeof el=="string"?document.getElementById(el):el)},getDoc:function(){return Ext.get(document)},getBody:function(){return Ext.get(document.body||document.documentElement)},getCmp:function(id){return Ext.ComponentMgr.get(id)},num:function(v,defaultValue){if(typeof v!="number"||isNaN(v)){return defaultValue}return v},destroy:function(){for(var i=0,a=arguments,len=a.length;i<len;i++){var as=a[i];if(as){if(typeof as.destroy=="function"){as.destroy()}else{if(as.dom){as.removeAllListeners();as.remove()}}}}},removeNode:isIE?function(){var d;return function(n){if(n&&n.tagName!="BODY"){d=d||document.createElement("div");d.appendChild(n);d.innerHTML=""}}}():function(n){if(n&&n.parentNode&&n.tagName!="BODY"){n.parentNode.removeChild(n)}},type:function(o){if(o===undefined||o===null){return false}if(o.htmlElement){return"element"}var t=typeof o;if(t=="object"&&o.nodeName){switch(o.nodeType){case 1:return"element";case 3:return(/\S/).test(o.nodeValue)?"textnode":"whitespace"}}if(t=="object"||t=="function"){switch(o.constructor){case Array:return"array";case RegExp:return"regexp";case Date:return"date"}if(typeof o.length=="number"&&typeof o.item=="function"){return"nodelist"}}return t},isEmpty:function(v,allowBlank){return v===null||v===undefined||(!allowBlank?v==="":false)},value:function(v,defaultValue,allowBlank){return Ext.isEmpty(v,allowBlank)?defaultValue:v},isArray:function(v){return v&&typeof v.length=="number"&&typeof v.splice=="function"},isDate:function(v){return v&&typeof v.getFullYear=="function"},isOpera:isOpera,isChrome:isChrome,isSafari:isSafari,isSafari3:isSafari3,isSafari2:isSafari&&!isSafari3,isIE:isIE,isIE6:isIE&&!isIE7&&!isIE8,isIE7:isIE7,isIE8:isIE8,isGecko:isGecko,isGecko2:isGecko&&!isGecko3,isGecko3:isGecko3,isBorderBox:isBorderBox,isLinux:isLinux,isWindows:isWindows,isMac:isMac,isAir:isAir,useShims:((isIE&&!isIE7)||(isMac&&isGecko&&!isGecko3))});Ext.ns=Ext.namespace})();Ext.ns("Ext","Ext.util","Ext.grid","Ext.dd","Ext.tree","Ext.data","Ext.form","Ext.menu","Ext.state","Ext.lib","Ext.layout","Ext.app","Ext.ux");Ext.apply(Function.prototype,{createCallback:function(){var a=arguments;var b=this;return function(){return b.apply(window,a)}},createDelegate:function(c,b,a){var d=this;return function(){var f=b||arguments;if(a===true){f=Array.prototype.slice.call(arguments,0);f=f.concat(b)}else{if(typeof a=="number"){f=Array.prototype.slice.call(arguments,0);var e=[a,0].concat(b);Array.prototype.splice.apply(f,e)}}return d.apply(c||window,f)}},defer:function(c,e,b,a){var d=this.createDelegate(e,b,a);if(c){return setTimeout(d,c)}d();return 0},createSequence:function(b,a){if(typeof b!="function"){return this}var c=this;return function(){var d=c.apply(this||window,arguments);b.apply(a||this||window,arguments);return d}},createInterceptor:function(b,a){if(typeof b!="function"){return this}var c=this;return function(){b.target=this;b.method=c;if(b.apply(a||this||window,arguments)===false){return}return c.apply(this||window,arguments)}}});Ext.applyIf(String,{escape:function(a){return a.replace(/('|\\)/g,"\\$1")},leftPad:function(d,b,c){var a=new String(d);if(!c){c=" "}while(a.length<b){a=c+a}return a.toString()},format:function(b){var a=Array.prototype.slice.call(arguments,1);return b.replace(/\{(\d+)\}/g,function(c,d){return a[d]})}});String.prototype.toggle=function(b,a){return this==b?a:b};String.prototype.trim=function(){var a=/^\s+|\s+$/g;return function(){return this.replace(a,"")}}();Ext.applyIf(Number.prototype,{constrain:function(b,a){return Math.min(Math.max(this,b),a)}});Ext.applyIf(Array.prototype,{indexOf:function(c){for(var b=0,a=this.length;b<a;b++){if(this[b]==c){return b}}return-1},remove:function(b){var a=this.indexOf(b);if(a!=-1){this.splice(a,1)}return this}});Date.prototype.getElapsed=function(a){return Math.abs((a||new Date()).getTime()-this.getTime())};(function(){var b;Ext.lib.Dom={getViewWidth:function(e){return e?this.getDocumentWidth():this.getViewportWidth()},getViewHeight:function(e){return e?this.getDocumentHeight():this.getViewportHeight()},getDocumentHeight:function(){var e=(document.compatMode!="CSS1Compat")?document.body.scrollHeight:document.documentElement.scrollHeight;return Math.max(e,this.getViewportHeight())},getDocumentWidth:function(){var e=(document.compatMode!="CSS1Compat")?document.body.scrollWidth:document.documentElement.scrollWidth;return Math.max(e,this.getViewportWidth())},getViewportHeight:function(){if(Ext.isIE){return Ext.isStrict?document.documentElement.clientHeight:document.body.clientHeight}else{return self.innerHeight}},getViewportWidth:function(){if(Ext.isIE){return Ext.isStrict?document.documentElement.clientWidth:document.body.clientWidth}else{return self.innerWidth}},isAncestor:function(f,g){f=Ext.getDom(f);g=Ext.getDom(g);if(!f||!g){return false}if(f.contains&&!Ext.isSafari){return f.contains(g)}else{if(f.compareDocumentPosition){return!!(f.compareDocumentPosition(g)&16)}else{var e=g.parentNode;while(e){if(e==f){return true}else{if(!e.tagName||e.tagName.toUpperCase()=="HTML"){return false}}e=e.parentNode}return false}}},getRegion:function(e){return Ext.lib.Region.getRegion(e)},getY:function(e){return this.getXY(e)[1]},getX:function(e){return this.getXY(e)[0]},getXY:function(g){var f,k,m,n,j=(document.body||document.documentElement);g=Ext.getDom(g);if(g==j){return[0,0]}if(g.getBoundingClientRect){m=g.getBoundingClientRect();n=c(document).getScroll();return[m.left+n.left,m.top+n.top]}var o=0,l=0;f=g;var e=c(g).getStyle("position")=="absolute";while(f){o+=f.offsetLeft;l+=f.offsetTop;if(!e&&c(f).getStyle("position")=="absolute"){e=true}if(Ext.isGecko){k=c(f);var q=parseInt(k.getStyle("borderTopWidth"),10)||0;var h=parseInt(k.getStyle("borderLeftWidth"),10)||0;o+=h;l+=q;if(f!=g&&k.getStyle("overflow")!="visible"){o+=h;l+=q}}f=f.offsetParent}if(Ext.isSafari&&e){o-=j.offsetLeft;l-=j.offsetTop}if(Ext.isGecko&&!e){var i=c(j);o+=parseInt(i.getStyle("borderLeftWidth"),10)||0;l+=parseInt(i.getStyle("borderTopWidth"),10)||0}f=g.parentNode;while(f&&f!=j){if(!Ext.isOpera||(f.tagName!="TR"&&c(f).getStyle("display")!="inline")){o-=f.scrollLeft;l-=f.scrollTop}f=f.parentNode}return[o,l]},setXY:function(e,f){e=Ext.fly(e,"_setXY");e.position();var g=e.translatePoints(f);if(f[0]!==false){e.dom.style.left=g.left+"px"}if(f[1]!==false){e.dom.style.top=g.top+"px"}},setX:function(f,e){this.setXY(f,[e,false])},setY:function(e,f){this.setXY(e,[false,f])}};Ext.lib.Event=function(){var f=false;var g=[];var k=[];var i=0;var h=[];var e=0;var j=null;return{POLL_RETRYS:200,POLL_INTERVAL:20,EL:0,TYPE:1,FN:2,WFN:3,OBJ:3,ADJ_SCOPE:4,_interval:null,startInterval:function(){if(!this._interval){var l=this;var m=function(){l._tryPreloadAttach()};this._interval=setInterval(m,this.POLL_INTERVAL)}},onAvailable:function(n,l,o,m){h.push({id:n,fn:l,obj:o,override:m,checkReady:false});i=this.POLL_RETRYS;this.startInterval()},addListener:function(q,m,p){q=Ext.getDom(q);if(!q||!p){return false}if("unload"==m){k[k.length]=[q,m,p];return true}var o=function(r){return typeof Ext!="undefined"?p(Ext.lib.Event.getEvent(r)):false};var l=[q,m,p,o];var n=g.length;g[n]=l;this.doAdd(q,m,o,false);return true},removeListener:function(s,o,r){var q,n;s=Ext.getDom(s);if(!r){return this.purgeElement(s,false,o)}if("unload"==o){for(q=0,n=k.length;q<n;q++){var m=k[q];if(m&&m[0]==s&&m[1]==o&&m[2]==r){k.splice(q,1);return true}}return false}var l=null;var p=arguments[3];if("undefined"==typeof p){p=this._getCacheIndex(s,o,r)}if(p>=0){l=g[p]}if(!s||!l){return false}this.doRemove(s,o,l[this.WFN],false);delete g[p][this.WFN];delete g[p][this.FN];g.splice(p,1);return true},getTarget:function(n,m){n=n.browserEvent||n;var l=n.target||n.srcElement;return this.resolveTextNode(l)},resolveTextNode:function(l){if(Ext.isSafari&&l&&3==l.nodeType){return l.parentNode}else{return l}},getPageX:function(m){m=m.browserEvent||m;var l=m.pageX;if(!l&&0!==l){l=m.clientX||0;if(Ext.isIE){l+=this.getScroll()[1]}}return l},getPageY:function(l){l=l.browserEvent||l;var m=l.pageY;if(!m&&0!==m){m=l.clientY||0;if(Ext.isIE){m+=this.getScroll()[0]}}return m},getXY:function(l){l=l.browserEvent||l;return[this.getPageX(l),this.getPageY(l)]},getRelatedTarget:function(m){m=m.browserEvent||m;var l=m.relatedTarget;if(!l){if(m.type=="mouseout"){l=m.toElement}else{if(m.type=="mouseover"){l=m.fromElement}}}return this.resolveTextNode(l)},getTime:function(n){n=n.browserEvent||n;if(!n.time){var m=new Date().getTime();try{n.time=m}catch(l){this.lastError=l;return m}}return n.time},stopEvent:function(l){this.stopPropagation(l);this.preventDefault(l)},stopPropagation:function(l){l=l.browserEvent||l;if(l.stopPropagation){l.stopPropagation()}else{l.cancelBubble=true}},preventDefault:function(l){l=l.browserEvent||l;if(l.preventDefault){l.preventDefault()}else{l.returnValue=false}},getEvent:function(m){var l=m||window.event;if(!l){var n=this.getEvent.caller;while(n){l=n.arguments[0];if(l&&Event==l.constructor){break}n=n.caller}}return l},getCharCode:function(l){l=l.browserEvent||l;return l.charCode||l.keyCode||0},_getCacheIndex:function(q,n,p){for(var o=0,m=g.length;o<m;++o){var l=g[o];if(l&&l[this.FN]==p&&l[this.EL]==q&&l[this.TYPE]==n){return o}}return-1},elCache:{},getEl:function(l){return document.getElementById(l)},clearCache:function(){},_load:function(m){f=true;var l=Ext.lib.Event;if(Ext.isIE){l.doRemove(window,"load",l._load)}},_tryPreloadAttach:function(){if(this.locked){return false}this.locked=true;var r=!f;if(!r){r=(i>0)}var q=[];for(var m=0,l=h.length;m<l;++m){var p=h[m];if(p){var o=this.getEl(p.id);if(o){if(!p.checkReady||f||o.nextSibling||(document&&document.body)){var n=o;if(p.override){if(p.override===true){n=p.obj}else{n=p.override}}p.fn.call(n,p.obj);h[m]=null}}else{q.push(p)}}}i=(q.length===0)?0:i-1;if(r){this.startInterval()}else{clearInterval(this._interval);this._interval=null}this.locked=false;return true},purgeElement:function(q,r,o){var s=this.getListeners(q,o);if(s){for(var p=0,m=s.length;p<m;++p){var n=s[p];this.removeListener(q,n.type,n.fn)}}if(r&&q&&q.childNodes){for(p=0,m=q.childNodes.length;p<m;++p){this.purgeElement(q.childNodes[p],r,o)}}},getListeners:function(n,s){var q=[],m;if(!s){m=[g,k]}else{if(s=="unload"){m=[k]}else{m=[g]}}for(var p=0;p<m.length;++p){var u=m[p];if(u&&u.length>0){for(var r=0,t=u.length;r<t;++r){var o=u[r];if(o&&o[this.EL]===n&&(!s||s===o[this.TYPE])){q.push({type:o[this.TYPE],fn:o[this.FN],obj:o[this.OBJ],adjust:o[this.ADJ_SCOPE],index:r})}}}}return(q.length)?q:null},_unload:function(t){var s=Ext.lib.Event,q,p,n,m,o;for(q=0,m=k.length;q<m;++q){n=k[q];if(n){var r=window;if(n[s.ADJ_SCOPE]){if(n[s.ADJ_SCOPE]===true){r=n[s.OBJ]}else{r=n[s.ADJ_SCOPE]}}n[s.FN].call(r,s.getEvent(t),n[s.OBJ]);k[q]=null;n=null;r=null}}k=null;if(g&&g.length>0){p=g.length;while(p){o=p-1;n=g[o];if(n){s.removeListener(n[s.EL],n[s.TYPE],n[s.FN],o)}p=p-1}n=null;s.clearCache()}s.doRemove(window,"unload",s._unload)},getScroll:function(){var l=document.documentElement,m=document.body;if(l&&(l.scrollTop||l.scrollLeft)){return[l.scrollTop,l.scrollLeft]}else{if(m){return[m.scrollTop,m.scrollLeft]}else{return[0,0]}}},doAdd:function(){if(window.addEventListener){return function(o,m,n,l){o.addEventListener(m,n,(l))}}else{if(window.attachEvent){return function(o,m,n,l){o.attachEvent("on"+m,n)}}else{return function(){}}}}(),doRemove:function(){if(window.removeEventListener){return function(o,m,n,l){o.removeEventListener(m,n,(l))}}else{if(window.detachEvent){return function(n,l,m){n.detachEvent("on"+l,m)}}else{return function(){}}}}()}}();var d=Ext.lib.Event;d.on=d.addListener;d.un=d.removeListener;if(document&&document.body){d._load()}else{d.doAdd(window,"load",d._load)}d.doAdd(window,"unload",d._unload);d._tryPreloadAttach();Ext.lib.Ajax={request:function(l,j,e,k,f){if(f){var g=f.headers;if(g){for(var i in g){if(g.hasOwnProperty(i)){this.initHeader(i,g[i],false)}}}if(f.xmlData){if(!g||!g["Content-Type"]){this.initHeader("Content-Type","text/xml",false)}l=(l?l:(f.method?f.method:"POST"));k=f.xmlData}else{if(f.jsonData){if(!g||!g["Content-Type"]){this.initHeader("Content-Type","application/json",false)}l=(l?l:(f.method?f.method:"POST"));k=typeof f.jsonData=="object"?Ext.encode(f.jsonData):f.jsonData}}}return this.asyncRequest(l,j,e,k)},serializeForm:function(f){if(typeof f=="string"){f=(document.getElementById(f)||document.forms[f])}var g,e,h,l,m="",o=false;for(var n=0;n<f.elements.length;n++){g=f.elements[n];l=f.elements[n].disabled;e=f.elements[n].name;h=f.elements[n].value;if(!l&&e){switch(g.type){case"select-one":case"select-multiple":for(var k=0;k<g.options.length;k++){if(g.options[k].selected){if(Ext.isIE){m+=encodeURIComponent(e)+"="+encodeURIComponent(g.options[k].attributes.value.specified?g.options[k].value:g.options[k].text)+"&"}else{m+=encodeURIComponent(e)+"="+encodeURIComponent(g.options[k].hasAttribute("value")?g.options[k].value:g.options[k].text)+"&"}}}break;case"radio":case"checkbox":if(g.checked){m+=encodeURIComponent(e)+"="+encodeURIComponent(h)+"&"}break;case"file":case undefined:case"reset":case"button":break;case"submit":if(o==false){m+=encodeURIComponent(e)+"="+encodeURIComponent(h)+"&";o=true}break;default:m+=encodeURIComponent(e)+"="+encodeURIComponent(h)+"&";break}}}m=m.substr(0,m.length-1);return m},headers:{},hasHeaders:false,useDefaultHeader:true,defaultPostHeader:"application/x-www-form-urlencoded; charset=UTF-8",useDefaultXhrHeader:true,defaultXhrHeader:"XMLHttpRequest",hasDefaultHeaders:true,defaultHeaders:{},poll:{},timeout:{},pollInterval:50,transactionId:0,setProgId:function(e){this.activeX.unshift(e)},setDefaultPostHeader:function(e){this.useDefaultHeader=e},setDefaultXhrHeader:function(e){this.useDefaultXhrHeader=e},setPollingInterval:function(e){if(typeof e=="number"&&isFinite(e)){this.pollInterval=e}},createXhrObject:function(k){var j,f;try{f=new XMLHttpRequest();j={conn:f,tId:k}}catch(h){for(var g=0;g<this.activeX.length;++g){try{f=new ActiveXObject(this.activeX[g]);j={conn:f,tId:k};break}catch(h){}}}finally{return j}},getConnectionObject:function(){var g;var h=this.transactionId;try{g=this.createXhrObject(h);if(g){this.transactionId++}}catch(f){}finally{return g}},asyncRequest:function(i,f,h,e){var g=this.getConnectionObject();if(!g){return null}else{g.conn.open(i,f,true);if(this.useDefaultXhrHeader){if(!this.defaultHeaders["X-Requested-With"]){this.initHeader("X-Requested-With",this.defaultXhrHeader,true)}}if(e&&this.useDefaultHeader&&(!this.hasHeaders||!this.headers["Content-Type"])){this.initHeader("Content-Type",this.defaultPostHeader)}if(this.hasDefaultHeaders||this.hasHeaders){this.setHeader(g)}this.handleReadyState(g,h);g.conn.send(e||null);return g}},handleReadyState:function(f,g){var e=this;if(g&&g.timeout){this.timeout[f.tId]=window.setTimeout(function(){e.abort(f,g,true)},g.timeout)}this.poll[f.tId]=window.setInterval(function(){if(f.conn&&f.conn.readyState==4){window.clearInterval(e.poll[f.tId]);delete e.poll[f.tId];if(g&&g.timeout){window.clearTimeout(e.timeout[f.tId]);delete e.timeout[f.tId]}e.handleTransactionResponse(f,g)}},this.pollInterval)},handleTransactionResponse:function(j,k,f){if(!k){this.releaseObject(j);return}var h,g;try{if(j.conn.status!==undefined&&j.conn.status!=0){h=j.conn.status}else{h=13030}}catch(i){h=13030}if((h>=200&&h<300)||(Ext.isIE&&h==1223)){g=this.createResponseObject(j,k.argument);if(k.success){if(!k.scope){k.success(g)}else{k.success.apply(k.scope,[g])}}}else{switch(h){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:g=this.createExceptionObject(j.tId,k.argument,(f?f:false));if(k.failure){if(!k.scope){k.failure(g)}else{k.failure.apply(k.scope,[g])}}break;default:g=this.createResponseObject(j,k.argument);if(k.failure){if(!k.scope){k.failure(g)}else{k.failure.apply(k.scope,[g])}}}}this.releaseObject(j);g=null},createResponseObject:function(f,m){var j={};var p={};try{var h=f.conn.getAllResponseHeaders();var l=h.split("\n");for(var k=0;k<l.length;k++){var g=l[k].indexOf(":");if(g!=-1){p[l[k].substring(0,g)]=l[k].substring(g+2)}}}catch(n){}j.tId=f.tId;j.status=f.conn.status;j.statusText=f.conn.statusText;j.getResponseHeader=p;j.getAllResponseHeaders=h;j.responseText=f.conn.responseText;j.responseXML=f.conn.responseXML;if(typeof m!==undefined){j.argument=m}return j},createExceptionObject:function(l,h,e){var j=0;var k="communication failure";var g=-1;var f="transaction aborted";var i={};i.tId=l;if(e){i.status=g;i.statusText=f}else{i.status=j;i.statusText=k}if(h){i.argument=h}return i},initHeader:function(e,h,g){var f=(g)?this.defaultHeaders:this.headers;if(f[e]===undefined){f[e]=h}else{f[e]=h+","+f[e]}if(g){this.hasDefaultHeaders=true}else{this.hasHeaders=true}},setHeader:function(e){if(this.hasDefaultHeaders){for(var f in this.defaultHeaders){if(this.defaultHeaders.hasOwnProperty(f)){e.conn.setRequestHeader(f,this.defaultHeaders[f])}}}if(this.hasHeaders){for(var f in this.headers){if(this.headers.hasOwnProperty(f)){e.conn.setRequestHeader(f,this.headers[f])}}this.headers={};this.hasHeaders=false}},resetDefaultHeaders:function(){delete this.defaultHeaders;this.defaultHeaders={};this.hasDefaultHeaders=false},abort:function(f,g,e){if(this.isCallInProgress(f)){f.conn.abort();window.clearInterval(this.poll[f.tId]);delete this.poll[f.tId];if(e){delete this.timeout[f.tId]}this.handleTransactionResponse(f,g,true);return true}else{return false}},isCallInProgress:function(e){if(e.conn){return e.conn.readyState!=4&&e.conn.readyState!=0}else{return false}},releaseObject:function(e){e.conn=null;e=null},activeX:["MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"]};Ext.lib.Region=function(g,h,e,f){this.top=g;this[1]=g;this.right=h;this.bottom=e;this.left=f;this[0]=f};Ext.lib.Region.prototype={contains:function(e){return(e.left>=this.left&&e.right<=this.right&&e.top>=this.top&&e.bottom<=this.bottom)},getArea:function(){return((this.bottom-this.top)*(this.right-this.left))},intersect:function(i){var g=Math.max(this.top,i.top);var h=Math.min(this.right,i.right);var e=Math.min(this.bottom,i.bottom);var f=Math.max(this.left,i.left);if(e>=g&&h>=f){return new Ext.lib.Region(g,h,e,f)}else{return null}},union:function(i){var g=Math.min(this.top,i.top);var h=Math.max(this.right,i.right);var e=Math.max(this.bottom,i.bottom);var f=Math.min(this.left,i.left);return new Ext.lib.Region(g,h,e,f)},constrainTo:function(e){this.top=this.top.constrain(e.top,e.bottom);this.bottom=this.bottom.constrain(e.top,e.bottom);this.left=this.left.constrain(e.left,e.right);this.right=this.right.constrain(e.left,e.right);return this},adjust:function(g,f,e,h){this.top+=g;this.left+=f;this.right+=h;this.bottom+=e;return this}};Ext.lib.Region.getRegion=function(h){var j=Ext.lib.Dom.getXY(h);var g=j[1];var i=j[0]+h.offsetWidth;var e=j[1]+h.offsetHeight;var f=j[0];return new Ext.lib.Region(g,i,e,f)};Ext.lib.Point=function(e,f){if(Ext.isArray(e)){f=e[1];e=e[0]}this.x=this.right=this.left=this[0]=e;this.y=this.top=this.bottom=this[1]=f};Ext.lib.Point.prototype=new Ext.lib.Region();Ext.lib.Anim={scroll:function(h,f,i,j,e,g){return this.run(h,f,i,j,e,g,Ext.lib.Scroll)},motion:function(h,f,i,j,e,g){return this.run(h,f,i,j,e,g,Ext.lib.Motion)},color:function(h,f,i,j,e,g){return this.run(h,f,i,j,e,g,Ext.lib.ColorAnim)},run:function(i,f,k,l,e,h,g){g=g||Ext.lib.AnimBase;if(typeof l=="string"){l=Ext.lib.Easing[l]}var j=new g(i,f,k,l);j.animateX(function(){Ext.callback(e,h)});return j}};function c(e){if(!b){b=new Ext.Element.Flyweight()}b.dom=e;return b}if(Ext.isIE){function a(){var e=Function.prototype;delete e.createSequence;delete e.defer;delete e.createDelegate;delete e.createCallback;delete e.createInterceptor;window.detachEvent("onunload",a)}window.attachEvent("onunload",a)}Ext.lib.AnimBase=function(f,e,g,h){if(f){this.init(f,e,g,h)}};Ext.lib.AnimBase.prototype={toString:function(){var e=this.getEl();var f=e.id||e.tagName;return("Anim "+f)},patterns:{noNegatives:/width|height|opacity|padding/i,offsetAttribute:/^((width|height)|(top|left))$/,defaultUnit:/width|height|top$|bottom$|left$|right$/i,offsetUnit:/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i},doMethod:function(e,g,f){return this.method(this.currentFrame,g,f-g,this.totalFrames)},setAttribute:function(e,g,f){if(this.patterns.noNegatives.test(e)){g=(g>0)?g:0}Ext.fly(this.getEl(),"_anim").setStyle(e,g+f)},getAttribute:function(e){var g=this.getEl();var i=c(g).getStyle(e);if(i!=="auto"&&!this.patterns.offsetUnit.test(i)){return parseFloat(i)}var f=this.patterns.offsetAttribute.exec(e)||[];var j=!!(f[3]);var h=!!(f[2]);if(h||(c(g).getStyle("position")=="absolute"&&j)){i=g["offset"+f[0].charAt(0).toUpperCase()+f[0].substr(1)]}else{i=0}return i},getDefaultUnit:function(e){if(this.patterns.defaultUnit.test(e)){return"px"}return""},animateX:function(h,e){var g=function(){this.onComplete.removeListener(g);if(typeof h=="function"){h.call(e||this,this)}};this.onComplete.addListener(g,this);this.animate()},setRuntimeAttribute:function(f){var l;var g;var h=this.attributes;this.runtimeAttributes[f]={};var k=function(i){return(typeof i!=="undefined")};if(!k(h[f]["to"])&&!k(h[f]["by"])){return false}l=(k(h[f]["from"]))?h[f]["from"]:this.getAttribute(f);if(k(h[f]["to"])){g=h[f]["to"]}else{if(k(h[f]["by"])){if(l.constructor==Array){g=[];for(var j=0,e=l.length;j<e;++j){g[j]=l[j]+h[f]["by"][j]}}else{g=l+h[f]["by"]}}}this.runtimeAttributes[f].start=l;this.runtimeAttributes[f].end=g;this.runtimeAttributes[f].unit=(k(h[f].unit))?h[f]["unit"]:this.getDefaultUnit(f)},init:function(g,l,k,e){var f=false;var h=null;var j=0;g=Ext.getDom(g);this.attributes=l||{};this.duration=k||1;this.method=e||Ext.lib.Easing.easeNone;this.useSeconds=true;this.currentFrame=0;this.totalFrames=Ext.lib.AnimMgr.fps;this.getEl=function(){return g};this.isAnimated=function(){return f};this.getStartTime=function(){return h};this.runtimeAttributes={};this.animate=function(){if(this.isAnimated()){return false}this.currentFrame=0;this.totalFrames=(this.useSeconds)?Math.ceil(Ext.lib.AnimMgr.fps*this.duration):this.duration;Ext.lib.AnimMgr.registerElement(this)};this.stop=function(o){if(o){this.currentFrame=this.totalFrames;this._onTween.fire()}Ext.lib.AnimMgr.stop(this)};var n=function(){this.onStart.fire();this.runtimeAttributes={};for(var o in this.attributes){this.setRuntimeAttribute(o)}f=true;j=0;h=new Date()};var m=function(){var q={duration:new Date()-this.getStartTime(),currentFrame:this.currentFrame};q.toString=function(){return("duration: "+q.duration+", currentFrame: "+q.currentFrame)};this.onTween.fire(q);var p=this.runtimeAttributes;for(var o in p){this.setAttribute(o,this.doMethod(o,p[o].start,p[o].end),p[o].unit)}j+=1};var i=function(){var o=(new Date()-h)/1000;var p={duration:o,frames:j,fps:j/o};p.toString=function(){return("duration: "+p.duration+", frames: "+p.frames+", fps: "+p.fps)};f=false;j=0;this.onComplete.fire(p)};this._onStart=new Ext.util.Event(this);this.onStart=new Ext.util.Event(this);this.onTween=new Ext.util.Event(this);this._onTween=new Ext.util.Event(this);this.onComplete=new Ext.util.Event(this);this._onComplete=new Ext.util.Event(this);this._onStart.addListener(n);this._onTween.addListener(m);this._onComplete.addListener(i)}};Ext.lib.AnimMgr=new function(){var g=null;var f=[];var e=0;this.fps=1000;this.delay=1;this.registerElement=function(j){f[f.length]=j;e+=1;j._onStart.fire();this.start()};this.unRegister=function(k,j){k._onComplete.fire();j=j||i(k);if(j!=-1){f.splice(j,1)}e-=1;if(e<=0){this.stop()}};this.start=function(){if(g===null){g=setInterval(this.run,this.delay)}};this.stop=function(l){if(!l){clearInterval(g);for(var k=0,j=f.length;k<j;++k){if(f[0].isAnimated()){this.unRegister(f[0],0)}}f=[];g=null;e=0}else{this.unRegister(l)}};this.run=function(){for(var l=0,j=f.length;l<j;++l){var k=f[l];if(!k||!k.isAnimated()){continue}if(k.currentFrame<k.totalFrames||k.totalFrames===null){k.currentFrame+=1;if(k.useSeconds){h(k)}k._onTween.fire()}else{Ext.lib.AnimMgr.stop(k,l)}}};var i=function(l){for(var k=0,j=f.length;k<j;++k){if(f[k]==l){return k}}return-1};var h=function(k){var n=k.totalFrames;var m=k.currentFrame;var l=(k.currentFrame*k.duration*1000/k.totalFrames);var j=(new Date()-k.getStartTime());var o=0;if(j<k.duration*1000){o=Math.round((j/l-1)*k.currentFrame)}else{o=n-(m+1)}if(o>0&&isFinite(o)){if(k.currentFrame+o>=n){o=n-(m+1)}k.currentFrame+=o}}};Ext.lib.Bezier=new function(){this.getPosition=function(k,h){var l=k.length;var g=[];for(var f=0;f<l;++f){g[f]=[k[f][0],k[f][1]]}for(var e=1;e<l;++e){for(f=0;f<l-e;++f){g[f][0]=(1-h)*g[f][0]+h*g[parseInt(f+1,10)][0];g[f][1]=(1-h)*g[f][1]+h*g[parseInt(f+1,10)][1]}}return[g[0][0],g[0][1]]}};(function(){Ext.lib.ColorAnim=function(i,h,j,k){Ext.lib.ColorAnim.superclass.constructor.call(this,i,h,j,k)};Ext.extend(Ext.lib.ColorAnim,Ext.lib.AnimBase);var f=Ext.lib;var g=f.ColorAnim.superclass;var e=f.ColorAnim.prototype;e.toString=function(){var h=this.getEl();var i=h.id||h.tagName;return("ColorAnim "+i)};e.patterns.color=/color$/i;e.patterns.rgb=/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i;e.patterns.hex=/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i;e.patterns.hex3=/^#?([0-9A-F]{1})([0-9A-F]{1})([0-9A-F]{1})$/i;e.patterns.transparent=/^transparent|rgba\(0, 0, 0, 0\)$/;e.parseColor=function(h){if(h.length==3){return h}var i=this.patterns.hex.exec(h);if(i&&i.length==4){return[parseInt(i[1],16),parseInt(i[2],16),parseInt(i[3],16)]}i=this.patterns.rgb.exec(h);if(i&&i.length==4){return[parseInt(i[1],10),parseInt(i[2],10),parseInt(i[3],10)]}i=this.patterns.hex3.exec(h);if(i&&i.length==4){return[parseInt(i[1]+i[1],16),parseInt(i[2]+i[2],16),parseInt(i[3]+i[3],16)]}return null};e.getAttribute=function(h){var j=this.getEl();if(this.patterns.color.test(h)){var k=c(j).getStyle(h);if(this.patterns.transparent.test(k)){var i=j.parentNode;k=c(i).getStyle(h);while(i&&this.patterns.transparent.test(k)){i=i.parentNode;k=c(i).getStyle(h);if(i.tagName.toUpperCase()=="HTML"){k="#fff"}}}}else{k=g.getAttribute.call(this,h)}return k};e.doMethod=function(j,n,k){var m;if(this.patterns.color.test(j)){m=[];for(var l=0,h=n.length;l<h;++l){m[l]=g.doMethod.call(this,j,n[l],k[l])}m="rgb("+Math.floor(m[0])+","+Math.floor(m[1])+","+Math.floor(m[2])+")"}else{m=g.doMethod.call(this,j,n,k)}return m};e.setRuntimeAttribute=function(j){g.setRuntimeAttribute.call(this,j);if(this.patterns.color.test(j)){var l=this.attributes;var n=this.parseColor(this.runtimeAttributes[j].start);var k=this.parseColor(this.runtimeAttributes[j].end);if(typeof l[j]["to"]==="undefined"&&typeof l[j]["by"]!=="undefined"){k=this.parseColor(l[j].by);for(var m=0,h=n.length;m<h;++m){k[m]=n[m]+k[m]}}this.runtimeAttributes[j].start=n;this.runtimeAttributes[j].end=k}}})();Ext.lib.Easing={easeNone:function(f,e,h,g){return h*f/g+e},easeIn:function(f,e,h,g){return h*(f/=g)*f+e},easeOut:function(f,e,h,g){return-h*(f/=g)*(f-2)+e},easeBoth:function(f,e,h,g){if((f/=g/2)<1){return h/2*f*f+e}return-h/2*((--f)*(f-2)-1)+e},easeInStrong:function(f,e,h,g){return h*(f/=g)*f*f*f+e},easeOutStrong:function(f,e,h,g){return-h*((f=f/g-1)*f*f*f-1)+e},easeBothStrong:function(f,e,h,g){if((f/=g/2)<1){return h/2*f*f*f*f+e}return-h/2*((f-=2)*f*f*f-2)+e},elasticIn:function(g,e,k,j,f,i){if(g==0){return e}if((g/=j)==1){return e+k}if(!i){i=j*0.3}if(!f||f<Math.abs(k)){f=k;var h=i/4}else{var h=i/(2*Math.PI)*Math.asin(k/f)}return-(f*Math.pow(2,10*(g-=1))*Math.sin((g*j-h)*(2*Math.PI)/i))+e},elasticOut:function(g,e,k,j,f,i){if(g==0){return e}if((g/=j)==1){return e+k}if(!i){i=j*0.3}if(!f||f<Math.abs(k)){f=k;var h=i/4}else{var h=i/(2*Math.PI)*Math.asin(k/f)}return f*Math.pow(2,-10*g)*Math.sin((g*j-h)*(2*Math.PI)/i)+k+e},elasticBoth:function(g,e,k,j,f,i){if(g==0){return e}if((g/=j/2)==2){return e+k}if(!i){i=j*(0.3*1.5)}if(!f||f<Math.abs(k)){f=k;var h=i/4}else{var h=i/(2*Math.PI)*Math.asin(k/f)}if(g<1){return-0.5*(f*Math.pow(2,10*(g-=1))*Math.sin((g*j-h)*(2*Math.PI)/i))+e}return f*Math.pow(2,-10*(g-=1))*Math.sin((g*j-h)*(2*Math.PI)/i)*0.5+k+e},backIn:function(f,e,i,h,g){if(typeof g=="undefined"){g=1.70158}return i*(f/=h)*f*((g+1)*f-g)+e},backOut:function(f,e,i,h,g){if(typeof g=="undefined"){g=1.70158}return i*((f=f/h-1)*f*((g+1)*f+g)+1)+e},backBoth:function(f,e,i,h,g){if(typeof g=="undefined"){g=1.70158}if((f/=h/2)<1){return i/2*(f*f*(((g*=(1.525))+1)*f-g))+e}return i/2*((f-=2)*f*(((g*=(1.525))+1)*f+g)+2)+e},bounceIn:function(f,e,h,g){return h-Ext.lib.Easing.bounceOut(g-f,0,h,g)+e},bounceOut:function(f,e,h,g){if((f/=g)<(1/2.75)){return h*(7.5625*f*f)+e}else{if(f<(2/2.75)){return h*(7.5625*(f-=(1.5/2.75))*f+0.75)+e}else{if(f<(2.5/2.75)){return h*(7.5625*(f-=(2.25/2.75))*f+0.9375)+e}}}return h*(7.5625*(f-=(2.625/2.75))*f+0.984375)+e},bounceBoth:function(f,e,h,g){if(f<g/2){return Ext.lib.Easing.bounceIn(f*2,0,h,g)*0.5+e}return Ext.lib.Easing.bounceOut(f*2-g,0,h,g)*0.5+h*0.5+e}};(function(){Ext.lib.Motion=function(k,j,l,m){if(k){Ext.lib.Motion.superclass.constructor.call(this,k,j,l,m)}};Ext.extend(Ext.lib.Motion,Ext.lib.ColorAnim);var h=Ext.lib;var i=h.Motion.superclass;var f=h.Motion.prototype;f.toString=function(){var j=this.getEl();var k=j.id||j.tagName;return("Motion "+k)};f.patterns.points=/^points$/i;f.setAttribute=function(j,l,k){if(this.patterns.points.test(j)){k=k||"px";i.setAttribute.call(this,"left",l[0],k);i.setAttribute.call(this,"top",l[1],k)}else{i.setAttribute.call(this,j,l,k)}};f.getAttribute=function(j){if(this.patterns.points.test(j)){var k=[i.getAttribute.call(this,"left"),i.getAttribute.call(this,"top")]}else{k=i.getAttribute.call(this,j)}return k};f.doMethod=function(j,n,k){var m=null;if(this.patterns.points.test(j)){var l=this.method(this.currentFrame,0,100,this.totalFrames)/100;m=h.Bezier.getPosition(this.runtimeAttributes[j],l)}else{m=i.doMethod.call(this,j,n,k)}return m};f.setRuntimeAttribute=function(s){if(this.patterns.points.test(s)){var k=this.getEl();var m=this.attributes;var j;var o=m.points["control"]||[];var l;var p,r;if(o.length>0&&!Ext.isArray(o[0])){o=[o]}else{var n=[];for(p=0,r=o.length;p<r;++p){n[p]=o[p]}o=n}Ext.fly(k,"_anim").position();if(g(m.points["from"])){Ext.lib.Dom.setXY(k,m.points["from"])}else{Ext.lib.Dom.setXY(k,Ext.lib.Dom.getXY(k))}j=this.getAttribute("points");if(g(m.points["to"])){l=e.call(this,m.points["to"],j);var q=Ext.lib.Dom.getXY(this.getEl());for(p=0,r=o.length;p<r;++p){o[p]=e.call(this,o[p],j)}}else{if(g(m.points["by"])){l=[j[0]+m.points["by"][0],j[1]+m.points["by"][1]];for(p=0,r=o.length;p<r;++p){o[p]=[j[0]+o[p][0],j[1]+o[p][1]]}}}this.runtimeAttributes[s]=[j];if(o.length>0){this.runtimeAttributes[s]=this.runtimeAttributes[s].concat(o)}this.runtimeAttributes[s][this.runtimeAttributes[s].length]=l}else{i.setRuntimeAttribute.call(this,s)}};var e=function(j,l){var k=Ext.lib.Dom.getXY(this.getEl());j=[j[0]-k[0]+l[0],j[1]-k[1]+l[1]];return j};var g=function(j){return(typeof j!=="undefined")}})();(function(){Ext.lib.Scroll=function(i,h,j,k){if(i){Ext.lib.Scroll.superclass.constructor.call(this,i,h,j,k)}};Ext.extend(Ext.lib.Scroll,Ext.lib.ColorAnim);var f=Ext.lib;var g=f.Scroll.superclass;var e=f.Scroll.prototype;e.toString=function(){var h=this.getEl();var i=h.id||h.tagName;return("Scroll "+i)};e.doMethod=function(h,k,i){var j=null;if(h=="scroll"){j=[this.method(this.currentFrame,k[0],i[0]-k[0],this.totalFrames),this.method(this.currentFrame,k[1],i[1]-k[1],this.totalFrames)]}else{j=g.doMethod.call(this,h,k,i)}return j};e.getAttribute=function(h){var j=null;var i=this.getEl();if(h=="scroll"){j=[i.scrollLeft,i.scrollTop]}else{j=g.getAttribute.call(this,h)}return j};e.setAttribute=function(h,k,j){var i=this.getEl();if(h=="scroll"){i.scrollLeft=k[0];i.scrollTop=k[1]}else{g.setAttribute.call(this,h,k,j)}}})()})();
/* ========== ../ext-2.0/ext-all-debug.js ============ */

Ext.DomHelper=function(){var tempTableEl=null;var emptyTags=/^(?:br|frame|hr|img|input|link|meta|range|spacer|wbr|area|param|col)$/i;var tableRe=/^table|tbody|tr|td$/i;var createHtml=function(o){if(typeof o=='string'){return o;}
var b="";if(Ext.isArray(o)){for(var i=0,l=o.length;i<l;i++){b+=createHtml(o[i]);}
return b;}
if(!o.tag){o.tag="div";}
b+="<"+o.tag;for(var attr in o){if(attr=="tag"||attr=="children"||attr=="cn"||attr=="html"||typeof o[attr]=="function")continue;if(attr=="style"){var s=o["style"];if(typeof s=="function"){s=s.call();}
if(typeof s=="string"){b+=' style="'+s+'"';}else if(typeof s=="object"){b+=' style="';for(var key in s){if(typeof s[key]!="function"){b+=key+":"+s[key]+";";}}
b+='"';}}else{if(attr=="cls"){b+=' class="'+o["cls"]+'"';}else if(attr=="htmlFor"){b+=' for="'+o["htmlFor"]+'"';}else{b+=" "+attr+'="'+o[attr]+'"';}}}
if(emptyTags.test(o.tag)){b+="/>";}else{b+=">";var cn=o.children||o.cn;if(cn){b+=createHtml(cn);}else if(o.html){b+=o.html;}
b+="</"+o.tag+">";}
return b;};var createDom=function(o,parentNode){var el;if(Ext.isArray(o)){el=document.createDocumentFragment();for(var i=0,l=o.length;i<l;i++){createDom(o[i],el);}}else if(typeof o=="string"){el=document.createTextNode(o);}else{el=document.createElement(o.tag||'div');var useSet=!!el.setAttribute;for(var attr in o){if(attr=="tag"||attr=="children"||attr=="cn"||attr=="html"||attr=="style"||typeof o[attr]=="function")continue;if(attr=="cls"){el.className=o["cls"];}else{if(useSet)el.setAttribute(attr,o[attr]);else el[attr]=o[attr];}}
Ext.DomHelper.applyStyles(el,o.style);var cn=o.children||o.cn;if(cn){createDom(cn,el);}else if(o.html){el.innerHTML=o.html;}}
if(parentNode){parentNode.appendChild(el);}
return el;};var ieTable=function(depth,s,h,e){tempTableEl.innerHTML=[s,h,e].join('');var i=-1,el=tempTableEl;while(++i<depth){el=el.firstChild;}
return el;};var ts='<table>',te='</table>',tbs=ts+'<tbody>',tbe='</tbody>'+te,trs=tbs+'<tr>',tre='</tr>'+tbe;var insertIntoTable=function(tag,where,el,html){if(!tempTableEl){tempTableEl=document.createElement('div');}
var node;var before=null;if(tag=='td'){if(where=='afterbegin'||where=='beforeend'){return;}
if(where=='beforebegin'){before=el;el=el.parentNode;}else{before=el.nextSibling;el=el.parentNode;}
node=ieTable(4,trs,html,tre);}
else if(tag=='tr'){if(where=='beforebegin'){before=el;el=el.parentNode;node=ieTable(3,tbs,html,tbe);}else if(where=='afterend'){before=el.nextSibling;el=el.parentNode;node=ieTable(3,tbs,html,tbe);}else{if(where=='afterbegin'){before=el.firstChild;}
node=ieTable(4,trs,html,tre);}}else if(tag=='tbody'){if(where=='beforebegin'){before=el;el=el.parentNode;node=ieTable(2,ts,html,te);}else if(where=='afterend'){before=el.nextSibling;el=el.parentNode;node=ieTable(2,ts,html,te);}else{if(where=='afterbegin'){before=el.firstChild;}
node=ieTable(3,tbs,html,tbe);}}else{if(where=='beforebegin'||where=='afterend'){return;}
if(where=='afterbegin'){before=el.firstChild;}
node=ieTable(2,ts,html,te);}
el.insertBefore(node,before);return node;};return{useDom:false,markup:function(o){return createHtml(o);},applyStyles:function(el,styles){if(styles){el=Ext.fly(el);if(typeof styles=="string"){var re=/\s?([a-z\-]*)\:\s?([^;]*);?/gi;var matches;while((matches=re.exec(styles))!=null){el.setStyle(matches[1],matches[2]);}}else if(typeof styles=="object"){for(var style in styles){el.setStyle(style,styles[style]);}}else if(typeof styles=="function"){Ext.DomHelper.applyStyles(el,styles.call());}}},insertHtml:function(where,el,html){where=where.toLowerCase();if(el.insertAdjacentHTML){if(tableRe.test(el.tagName)){var rs;if(rs=insertIntoTable(el.tagName.toLowerCase(),where,el,html)){return rs;}}
switch(where){case"beforebegin":el.insertAdjacentHTML('BeforeBegin',html);return el.previousSibling;case"afterbegin":el.insertAdjacentHTML('AfterBegin',html);return el.firstChild;case"beforeend":el.insertAdjacentHTML('BeforeEnd',html);return el.lastChild;case"afterend":el.insertAdjacentHTML('AfterEnd',html);return el.nextSibling;}
throw'Illegal insertion point -> "'+where+'"';}
var range=el.ownerDocument.createRange();var frag;switch(where){case"beforebegin":range.setStartBefore(el);frag=range.createContextualFragment(html);el.parentNode.insertBefore(frag,el);return el.previousSibling;case"afterbegin":if(el.firstChild){range.setStartBefore(el.firstChild);frag=range.createContextualFragment(html);el.insertBefore(frag,el.firstChild);return el.firstChild;}else{el.innerHTML=html;return el.firstChild;}
case"beforeend":if(el.lastChild){range.setStartAfter(el.lastChild);frag=range.createContextualFragment(html);el.appendChild(frag);return el.lastChild;}else{el.innerHTML=html;return el.lastChild;}
case"afterend":range.setStartAfter(el);frag=range.createContextualFragment(html);el.parentNode.insertBefore(frag,el.nextSibling);return el.nextSibling;}
throw'Illegal insertion point -> "'+where+'"';},insertBefore:function(el,o,returnElement){return this.doInsert(el,o,returnElement,"beforeBegin");},insertAfter:function(el,o,returnElement){return this.doInsert(el,o,returnElement,"afterEnd","nextSibling");},insertFirst:function(el,o,returnElement){return this.doInsert(el,o,returnElement,"afterBegin","firstChild");},doInsert:function(el,o,returnElement,pos,sibling){el=Ext.getDom(el);var newNode;if(this.useDom){newNode=createDom(o,null);(sibling==="firstChild"?el:el.parentNode).insertBefore(newNode,sibling?el[sibling]:el);}else{var html=createHtml(o);newNode=this.insertHtml(pos,el,html);}
return returnElement?Ext.get(newNode,true):newNode;},append:function(el,o,returnElement){el=Ext.getDom(el);var newNode;if(this.useDom){newNode=createDom(o,null);el.appendChild(newNode);}else{var html=createHtml(o);newNode=this.insertHtml("beforeEnd",el,html);}
return returnElement?Ext.get(newNode,true):newNode;},overwrite:function(el,o,returnElement){el=Ext.getDom(el);el.innerHTML=createHtml(o);return returnElement?Ext.get(el.firstChild,true):el.firstChild;},createTemplate:function(o){var html=createHtml(o);return new Ext.Template(html);}};}();Ext.Template=function(html){var a=arguments;if(Ext.isArray(html)){html=html.join("");}else if(a.length>1){var buf=[];for(var i=0,len=a.length;i<len;i++){if(typeof a[i]=='object'){Ext.apply(this,a[i]);}else{buf[buf.length]=a[i];}}
html=buf.join('');}
this.html=html;if(this.compiled){this.compile();}};Ext.Template.prototype={applyTemplate:function(values){if(this.compiled){return this.compiled(values);}
var useF=this.disableFormats!==true;var fm=Ext.util.Format,tpl=this;var fn=function(m,name,format,args){if(format&&useF){if(format.substr(0,5)=="this."){return tpl.call(format.substr(5),values[name],values);}else{if(args){var re=/^\s*['"](.*)["']\s*$/;args=args.split(',');for(var i=0,len=args.length;i<len;i++){args[i]=args[i].replace(re,"$1");}
args=[values[name]].concat(args);}else{args=[values[name]];}
return fm[format].apply(fm,args);}}else{return values[name]!==undefined?values[name]:"";}};return this.html.replace(this.re,fn);},set:function(html,compile){this.html=html;this.compiled=null;if(compile){this.compile();}
return this;},disableFormats:false,re:/\{([\w-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g,compile:function(){var fm=Ext.util.Format;var useF=this.disableFormats!==true;var sep=Ext.isGecko?"+":",";var fn=function(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+"'";};var body;if(Ext.isGecko){body="this.compiled = function(values){ return '"+
this.html.replace(/\\/g,'\\\\').replace(/(\r\n|\n)/g,'\\n').replace(/'/g,"\\'").replace(this.re,fn)+"';};";}else{body=["this.compiled = function(values){ return ['"];body.push(this.html.replace(/\\/g,'\\\\').replace(/(\r\n|\n)/g,'\\n').replace(/'/g,"\\'").replace(this.re,fn));body.push("'].join('');};");body=body.join('');}
eval(body);return this;},call:function(fnName,value,allValues){return this[fnName](value,allValues);},insertFirst:function(el,values,returnElement){return this.doInsert('afterBegin',el,values,returnElement);},insertBefore:function(el,values,returnElement){return this.doInsert('beforeBegin',el,values,returnElement);},insertAfter:function(el,values,returnElement){return this.doInsert('afterEnd',el,values,returnElement);},append:function(el,values,returnElement){return this.doInsert('beforeEnd',el,values,returnElement);},doInsert:function(where,el,values,returnEl){el=Ext.getDom(el);var newNode=Ext.DomHelper.insertHtml(where,el,this.applyTemplate(values));return returnEl?Ext.get(newNode,true):newNode;},overwrite:function(el,values,returnElement){el=Ext.getDom(el);el.innerHTML=this.applyTemplate(values);return returnElement?Ext.get(el.firstChild,true):el.firstChild;}};Ext.Template.prototype.apply=Ext.Template.prototype.applyTemplate;Ext.DomHelper.Template=Ext.Template;Ext.Template.from=function(el,config){el=Ext.getDom(el);return new Ext.Template(el.value||el.innerHTML,config||'');};Ext.DomQuery=function(){var cache={},simpleCache={},valueCache={};var nonSpace=/\S/;var trimRe=/^\s+|\s+$/g;var tplRe=/\{(\d+)\}/g;var modeRe=/^(\s?[\/>+~]\s?|\s|$)/;var tagTokenRe=/^(#)?([\w-\*]+)/;var nthRe=/(\d*)n\+?(\d*)/,nthRe2=/\D/;function child(p,index){var i=0;var 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;while(n){var nx=n.nextSibling;if(n.nodeType==3&&!nonSpace.test(n.nodeValue)){d.removeChild(n);}else{n.nodeIndex=++ni;}
n=nx;}
return this;};function byClassName(c,a,v){if(!v){return c;}
var r=[],ri=-1,cn;for(var i=0,ci;ci=c[i];i++){if((' '+ci.className+' ').indexOf(v)!=-1){r[++ri]=ci;}}
return r;};function attrValue(n,attr){if(!n.tagName&&typeof n.length!="undefined"){n=n[0];}
if(!n){return null;}
if(attr=="for"){return n.htmlFor;}
if(attr=="class"||attr=="className"){return n.className;}
return n.getAttribute(attr)||n[attr];};function getNodes(ns,mode,tagName){var result=[],ri=-1,cs;if(!ns){return result;}
tagName=tagName||"*";if(typeof ns.getElementsByTagName!="undefined"){ns=[ns];}
if(!mode){for(var i=0,ni;ni=ns[i];i++){cs=ni.getElementsByTagName(tagName);for(var j=0,ci;ci=cs[j];j++){result[++ri]=ci;}}}else if(mode=="/"||mode==">"){var utag=tagName.toUpperCase();for(var i=0,ni,cn;ni=ns[i];i++){cn=ni.children||ni.childNodes;for(var j=0,cj;cj=cn[j];j++){if(cj.nodeName==utag||cj.nodeName==tagName||tagName=='*'){result[++ri]=cj;}}}}else if(mode=="+"){var utag=tagName.toUpperCase();for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&n.nodeType!=1);if(n&&(n.nodeName==utag||n.nodeName==tagName||tagName=='*')){result[++ri]=n;}}}else if(mode=="~"){for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&(n.nodeType!=1||(tagName=='*'||n.tagName.toLowerCase()!=tagName)));if(n){result[++ri]=n;}}}
return result;};function concat(a,b){if(b.slice){return a.concat(b);}
for(var i=0,l=b.length;i<l;i++){a[a.length]=b[i];}
return a;}
function byTag(cs,tagName){if(cs.tagName||cs==document){cs=[cs];}
if(!tagName){return cs;}
var r=[],ri=-1;tagName=tagName.toLowerCase();for(var i=0,ci;ci=cs[i];i++){if(ci.nodeType==1&&ci.tagName.toLowerCase()==tagName){r[++ri]=ci;}}
return r;};function byId(cs,attr,id){if(cs.tagName||cs==document){cs=[cs];}
if(!id){return cs;}
var r=[],ri=-1;for(var i=0,ci;ci=cs[i];i++){if(ci&&ci.id==id){r[++ri]=ci;return r;}}
return r;};function byAttribute(cs,attr,value,op,custom){var r=[],ri=-1,st=custom=="{";var f=Ext.DomQuery.operators[op];for(var i=0,ci;ci=cs[i];i++){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);};var isIE=window.ActiveXObject?true:false;eval("var batch = 30803;");var key=30803;function nodupIEXml(cs){var d=++key;cs[0].setAttribute("_nodup",d);var 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;for(var i=0,len=c1.length;i<len;i++){c1[i].setAttribute("_qdiff",d);}
var r=[];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;if(!len1){return c2;}
if(isIE&&c1[0].selectSingleNode){return quickDiffIEXml(c1,c2);}
var d=++key;for(var i=0;i<len1;i++){c1[i]._qdiff=d;}
var r=[];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"];var q=path,mode,lq;var tk=Ext.DomQuery.matchers;var tklen=tk.length;var mm;var 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(",");var 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);n=n[0]?n[0]:n;var 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);var 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;var m=nthRe.exec(a=="even"&&"2n"||a=="odd"&&"2n+1"||!nthRe2.test(a)&&"n+"+a||a);var 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('|');var 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;var 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;var 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;var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=prev(ci);if(n&&is(n,ss)){r[++ri]=ci;}}
return r;}}};}();Ext.query=Ext.DomQuery.select;Ext.util.Observable=function(){if(this.listeners){this.on(this.listeners);delete this.listeners;}};Ext.util.Observable.prototype={fireEvent:function(){if(this.eventsSuspended!==true){var ce=this.events[arguments[0].toLowerCase()];if(typeof ce=="object"){return ce.fire.apply(ce,Array.prototype.slice.call(arguments,1));}}
return true;},filterOptRe:/^(?:scope|delay|buffer|single)$/,addListener:function(eventName,fn,scope,o){if(typeof eventName=="object"){o=eventName;for(var e in o){if(this.filterOptRe.test(e)){continue;}
if(typeof o[e]=="function"){this.addListener(e,o[e],o.scope,o);}else{this.addListener(e,o[e].fn,o[e].scope,o[e]);}}
return;}
o=(!o||typeof o=="boolean")?{}:o;eventName=eventName.toLowerCase();var ce=this.events[eventName]||true;if(typeof ce=="boolean"){ce=new Ext.util.Event(this,eventName);this.events[eventName]=ce;}
ce.addListener(fn,scope,o);},removeListener:function(eventName,fn,scope){var ce=this.events[eventName.toLowerCase()];if(typeof ce=="object"){ce.removeListener(fn,scope);}},purgeListeners:function(){for(var evt in this.events){if(typeof this.events[evt]=="object"){this.events[evt].clearListeners();}}},relayEvents:function(o,events){var createHandler=function(ename){return function(){return this.fireEvent.apply(this,Ext.combine(ename,Array.prototype.slice.call(arguments,0)));};};for(var i=0,len=events.length;i<len;i++){var ename=events[i];if(!this.events[ename]){this.events[ename]=true;};o.on(ename,createHandler(ename),this);}},addEvents:function(o){if(!this.events){this.events={};}
if(typeof o=='string'){for(var i=0,a=arguments,v;v=a[i];i++){if(!this.events[a[i]]){this.events[a[i]]=true;}}}else{Ext.applyIf(this.events,o);}},hasListener:function(eventName){var e=this.events[eventName];return typeof e=="object"&&e.listeners.length>0;},suspendEvents:function(){this.eventsSuspended=true;},resumeEvents:function(){this.eventsSuspended=false;},getMethodEvent:function(method){if(!this.methodEvents){this.methodEvents={};}
var e=this.methodEvents[method];if(!e){e={};this.methodEvents[method]=e;e.originalFn=this[method];e.methodName=method;e.before=[];e.after=[];var returnValue,v,cancel;var obj=this;var makeCall=function(fn,scope,args){if((v=fn.apply(scope||obj,args))!==undefined){if(typeof v==='object'){if(v.returnValue!==undefined){returnValue=v.returnValue;}else{returnValue=v;}
if(v.cancel===true){cancel=true;}}else if(v===false){cancel=true;}else{returnValue=v;}}}
this[method]=function(){returnValue=v=undefined;cancel=false;var args=Array.prototype.slice.call(arguments,0);for(var i=0,len=e.before.length;i<len;i++){makeCall(e.before[i].fn,e.before[i].scope,args);if(cancel){return returnValue;}}
if((v=e.originalFn.apply(obj,args))!==undefined){returnValue=v;}
for(var i=0,len=e.after.length;i<len;i++){makeCall(e.after[i].fn,e.after[i].scope,args);if(cancel){return returnValue;}}
return returnValue;};}
return e;},beforeMethod:function(method,fn,scope){var e=this.getMethodEvent(method);e.before.push({fn:fn,scope:scope});},afterMethod:function(method,fn,scope){var e=this.getMethodEvent(method);e.after.push({fn:fn,scope:scope});},removeMethodListener:function(method,fn,scope){var e=this.getMethodEvent(method);for(var i=0,len=e.before.length;i<len;i++){if(e.before[i].fn==fn&&e.before[i].scope==scope){e.before.splice(i,1);return;}}
for(var i=0,len=e.after.length;i<len;i++){if(e.after[i].fn==fn&&e.after[i].scope==scope){e.after.splice(i,1);return;}}}};Ext.util.Observable.prototype.on=Ext.util.Observable.prototype.addListener;Ext.util.Observable.prototype.un=Ext.util.Observable.prototype.removeListener;Ext.util.Observable.capture=function(o,fn,scope){o.fireEvent=o.fireEvent.createInterceptor(fn,scope);};Ext.util.Observable.releaseCapture=function(o){o.fireEvent=Ext.util.Observable.prototype.fireEvent;};(function(){var createBuffered=function(h,o,scope){var task=new Ext.util.DelayedTask();return function(){task.delay(o.buffer,h,scope,Array.prototype.slice.call(arguments,0));};};var createSingle=function(h,e,fn,scope){return function(){e.removeListener(fn,scope);return h.apply(scope,arguments);};};var createDelayed=function(h,o,scope){return function(){var args=Array.prototype.slice.call(arguments,0);setTimeout(function(){h.apply(scope,args);},o.delay||10);};};Ext.util.Event=function(obj,name){this.name=name;this.obj=obj;this.listeners=[];};Ext.util.Event.prototype={addListener:function(fn,scope,options){scope=scope||this.obj;if(!this.isListening(fn,scope)){var l=this.createListener(fn,scope,options);if(!this.firing){this.listeners.push(l);}else{this.listeners=this.listeners.slice(0);this.listeners.push(l);}}},createListener:function(fn,scope,o){o=o||{};scope=scope||this.obj;var l={fn:fn,scope:scope,options:o};var h=fn;if(o.delay){h=createDelayed(h,o,scope);}
if(o.single){h=createSingle(h,this,fn,scope);}
if(o.buffer){h=createBuffered(h,o,scope);}
l.fireFn=h;return l;},findListener:function(fn,scope){scope=scope||this.obj;var ls=this.listeners;for(var i=0,len=ls.length;i<len;i++){var l=ls[i];if(l.fn==fn&&l.scope==scope){return i;}}
return-1;},isListening:function(fn,scope){return this.findListener(fn,scope)!=-1;},removeListener:function(fn,scope){var index;if((index=this.findListener(fn,scope))!=-1){if(!this.firing){this.listeners.splice(index,1);}else{this.listeners=this.listeners.slice(0);this.listeners.splice(index,1);}
return true;}
return false;},clearListeners:function(){this.listeners=[];},fire:function(){var ls=this.listeners,scope,len=ls.length;if(len>0){this.firing=true;var args=Array.prototype.slice.call(arguments,0);for(var i=0;i<len;i++){var l=ls[i];if(l.fireFn.apply(l.scope||this.obj||window,arguments)===false){this.firing=false;return false;}}
this.firing=false;}
return true;}};})();Ext.EventManager=function(){var docReadyEvent,docReadyProcId,docReadyState=false;var resizeEvent,resizeTask,textEvent,textSize;var E=Ext.lib.Event;var D=Ext.lib.Dom;var xname='Ex'+'t';var elHash={};var addListener=function(el,ename,fn,wrap,scope){var id=Ext.id(el);if(!elHash[id]){elHash[id]={};}
var es=elHash[id];if(!es[ename]){es[ename]=[];}
var ls=es[ename];ls.push({id:id,ename:ename,fn:fn,wrap:wrap,scope:scope});E.on(el,ename,wrap);if(ename=="mousewheel"&&el.addEventListener){el.addEventListener("DOMMouseScroll",wrap,false);E.on(window,'unload',function(){el.removeEventListener("DOMMouseScroll",wrap,false);});}
if(ename=="mousedown"&&el==document){Ext.EventManager.stoppedMouseDownEvent.addListener(wrap);}}
var removeListener=function(el,ename,fn,scope){el=Ext.getDom(el);var id=Ext.id(el),es=elHash[id],wrap;if(es){var ls=es[ename],l;if(ls){for(var i=0,len=ls.length;i<len;i++){l=ls[i];if(l.fn==fn&&(!scope||l.scope==scope)){wrap=l.wrap;E.un(el,ename,wrap);ls.splice(i,1);break;}}}}
if(ename=="mousewheel"&&el.addEventListener&&wrap){el.removeEventListener("DOMMouseScroll",wrap,false);}
if(ename=="mousedown"&&el==document&&wrap){Ext.EventManager.stoppedMouseDownEvent.removeListener(wrap);}}
var removeAll=function(el){el=Ext.getDom(el);var id=Ext.id(el),es=elHash[id],ls;if(es){for(var ename in es){if(es.hasOwnProperty(ename)){ls=es[ename];for(var i=0,len=ls.length;i<len;i++){E.un(el,ename,ls[i].wrap);ls[i]=null;}}
es[ename]=null;}
delete elHash[id];}}
var fireDocReady=function(){if(!docReadyState){docReadyState=true;Ext.isReady=true;if(docReadyProcId){clearInterval(docReadyProcId);}
if(Ext.isGecko||Ext.isOpera){document.removeEventListener("DOMContentLoaded",fireDocReady,false);}
if(Ext.isIE){var defer=document.getElementById("ie-deferred-loader");if(defer){defer.onreadystatechange=null;defer.parentNode.removeChild(defer);}}
if(docReadyEvent){docReadyEvent.fire();docReadyEvent.clearListeners();}}};var initDocReady=function(){docReadyEvent=new Ext.util.Event();if(Ext.isGecko||Ext.isOpera){document.addEventListener("DOMContentLoaded",fireDocReady,false);}else if(Ext.isIE){document.write("<s"+'cript id="ie-deferred-loader" defer="defer" src="/'+'/:"></s'+"cript>");var defer=document.getElementById("ie-deferred-loader");defer.onreadystatechange=function(){if(this.readyState=="complete"){fireDocReady();}};}else if(Ext.isSafari){docReadyProcId=setInterval(function(){var rs=document.readyState;if(rs=="complete"){fireDocReady();}},10);}
E.on(window,"load",fireDocReady);};var createBuffered=function(h,o){var task=new Ext.util.DelayedTask(h);return function(e){e=new Ext.EventObjectImpl(e);task.delay(o.buffer,h,null,[e]);};};var createSingle=function(h,el,ename,fn,scope){return function(e){Ext.EventManager.removeListener(el,ename,fn,scope);h(e);};};var createDelayed=function(h,o){return function(e){e=new Ext.EventObjectImpl(e);setTimeout(function(){h(e);},o.delay||10);};};var listen=function(element,ename,opt,fn,scope){var o=(!opt||typeof opt=="boolean")?{}:opt;fn=fn||o.fn;scope=scope||o.scope;var el=Ext.getDom(element);if(!el){throw"Error listening for \""+ename+'\". Element "'+element+'" doesn\'t exist.';}
var h=function(e){if(!window[xname]){return;}
e=Ext.EventObject.setEvent(e);var t;if(o.delegate){t=e.getTarget(o.delegate,el);if(!t){return;}}else{t=e.target;}
if(o.stopEvent===true){e.stopEvent();}
if(o.preventDefault===true){e.preventDefault();}
if(o.stopPropagation===true){e.stopPropagation();}
if(o.normalized===false){e=e.browserEvent;}
fn.call(scope||el,e,t,o);};if(o.delay){h=createDelayed(h,o);}
if(o.single){h=createSingle(h,el,ename,fn,scope);}
if(o.buffer){h=createBuffered(h,o);}
addListener(el,ename,fn,h,scope);return h;};var propRe=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;var pub={addListener:function(element,eventName,fn,scope,options){if(typeof eventName=="object"){var o=eventName;for(var e in o){if(propRe.test(e)){continue;}
if(typeof o[e]=="function"){listen(element,e,o,o[e],o.scope);}else{listen(element,e,o[e]);}}
return;}
return listen(element,eventName,options,fn,scope);},removeListener:function(element,eventName,fn,scope){return removeListener(element,eventName,fn,scope);},removeAll:function(element){return removeAll(element);},onDocumentReady:function(fn,scope,options){if(docReadyState){docReadyEvent.addListener(fn,scope,options);docReadyEvent.fire();docReadyEvent.clearListeners();return;}
if(!docReadyEvent){initDocReady();}
options=options||{};if(!options.delay){options.delay=1;}
docReadyEvent.addListener(fn,scope,options);},doResizeEvent:function(){resizeEvent.fire(D.getViewWidth(),D.getViewHeight());},onWindowResize:function(fn,scope,options){if(!resizeEvent){resizeEvent=new Ext.util.Event();resizeTask=new Ext.util.DelayedTask(this.doResizeEvent);E.on(window,"resize",this.fireWindowResize,this);}
resizeEvent.addListener(fn,scope,options);},fireWindowResize:function(){if(resizeEvent){if((Ext.isIE||Ext.isAir)&&resizeTask){resizeTask.delay(50);}else{resizeEvent.fire(D.getViewWidth(),D.getViewHeight());}}},onTextResize:function(fn,scope,options){if(!textEvent){textEvent=new Ext.util.Event();var textEl=new Ext.Element(document.createElement('div'));textEl.dom.className='x-text-resize';textEl.dom.innerHTML='X';textEl.appendTo(document.body);textSize=textEl.dom.offsetHeight;setInterval(function(){if(textEl.dom.offsetHeight!=textSize){textEvent.fire(textSize,textSize=textEl.dom.offsetHeight);}},this.textResizeInterval);}
textEvent.addListener(fn,scope,options);},removeResizeListener:function(fn,scope){if(resizeEvent){resizeEvent.removeListener(fn,scope);}},fireResize:function(){if(resizeEvent){resizeEvent.fire(D.getViewWidth(),D.getViewHeight());}},ieDeferSrc:false,textResizeInterval:50};pub.on=pub.addListener;pub.un=pub.removeListener;pub.stoppedMouseDownEvent=new Ext.util.Event();return pub;}();Ext.onReady=Ext.EventManager.onDocumentReady;(function(){var initExtCss=function(){var bd=document.body||document.getElementsByTagName('body')[0];if(!bd){return false;}
var cls=[' ',Ext.isIE?"ext-ie "+(Ext.isIE6?'ext-ie6':(Ext.isIE7?'ext-ie7':'ext-ie8')):Ext.isGecko?"ext-gecko "+(Ext.isGecko2?'ext-gecko2':'ext-gecko3'):Ext.isOpera?"ext-opera":Ext.isSafari?"ext-safari":Ext.isChrome?"ext-chrome":""];if(Ext.isMac){cls.push("ext-mac");}
if(Ext.isLinux){cls.push("ext-linux");}
if(Ext.isBorderBox){cls.push('ext-border-box');}
if(Ext.isStrict){var p=bd.parentNode;if(p){p.className+=' ext-strict';}}
bd.className+=cls.join(' ');return true;}
if(!initExtCss()){Ext.onReady(initExtCss);}})();Ext.EventObject=function(){var E=Ext.lib.Event;var safariKeys={3:13,63234:37,63235:39,63232:38,63233:40,63276:33,63277:34,63272:46,63273:36,63275:35};var btnMap=Ext.isIE?{1:0,4:1,2:2}:(Ext.isSafari?{1:0,2:1,3:2}:{0:0,1:1,2:2});Ext.EventObjectImpl=function(e){if(e){this.setEvent(e.browserEvent||e);}};Ext.EventObjectImpl.prototype={browserEvent:null,button:-1,shiftKey:false,ctrlKey:false,altKey:false,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,setEvent:function(e){if(e==this||(e&&e.browserEvent)){return e;}
this.browserEvent=e;if(e){this.button=e.button?btnMap[e.button]:(e.which?e.which-1:-1);if(e.type=='click'&&this.button==-1){this.button=0;}
this.type=e.type;this.shiftKey=e.shiftKey;this.ctrlKey=e.ctrlKey||e.metaKey;this.altKey=e.altKey;this.keyCode=e.keyCode;this.charCode=e.charCode;this.target=E.getTarget(e);this.xy=E.getXY(e);}else{this.button=-1;this.shiftKey=false;this.ctrlKey=false;this.altKey=false;this.keyCode=0;this.charCode=0;this.target=null;this.xy=[0,0];}
return this;},stopEvent:function(){if(this.browserEvent){if(this.browserEvent.type=='mousedown'){Ext.EventManager.stoppedMouseDownEvent.fire(this);}
E.stopEvent(this.browserEvent);}},preventDefault:function(){if(this.browserEvent){E.preventDefault(this.browserEvent);}},isNavKeyPress:function(){var k=this.keyCode;k=Ext.isSafari?(safariKeys[k]||k):k;return(k>=33&&k<=40)||k==this.RETURN||k==this.TAB||k==this.ESC;},isSpecialKey:function(){var k=this.keyCode;return(this.type=='keypress'&&this.ctrlKey)||k==9||k==13||k==40||k==27||(k==16)||(k==17)||(k>=18&&k<=20)||(k>=33&&k<=35)||(k>=36&&k<=39)||(k>=44&&k<=45);},stopPropagation:function(){if(this.browserEvent){if(this.browserEvent.type=='mousedown'){Ext.EventManager.stoppedMouseDownEvent.fire(this);}
E.stopPropagation(this.browserEvent);}},getCharCode:function(){return this.charCode||this.keyCode;},getKey:function(){var k=this.keyCode||this.charCode;return Ext.isSafari?(safariKeys[k]||k):k;},getPageX:function(){return this.xy[0];},getPageY:function(){return this.xy[1];},getTime:function(){if(this.browserEvent){return E.getTime(this.browserEvent);}
return null;},getXY:function(){return this.xy;},getTarget:function(selector,maxDepth,returnEl){return selector?Ext.fly(this.target).findParent(selector,maxDepth,returnEl):(returnEl?Ext.get(this.target):this.target);},getRelatedTarget:function(){if(this.browserEvent){return E.getRelatedTarget(this.browserEvent);}
return null;},getWheelDelta:function(){var e=this.browserEvent;var delta=0;if(e.wheelDelta){delta=e.wheelDelta/120;}else if(e.detail){delta=-e.detail/3;}
return delta;},hasModifier:function(){return((this.ctrlKey||this.altKey)||this.shiftKey)?true:false;},within:function(el,related,allowEl){var t=this[related?"getRelatedTarget":"getTarget"]();return t&&((allowEl?(t===Ext.getDom(el)):false)||Ext.fly(el).contains(t));},getPoint:function(){return new Ext.lib.Point(this.xy[0],this.xy[1]);}};return new Ext.EventObjectImpl();}();(function(){var D=Ext.lib.Dom;var E=Ext.lib.Event;var A=Ext.lib.Anim;var propCache={};var camelRe=/(-[a-z])/gi;var camelFn=function(m,a){return a.charAt(1).toUpperCase();};var view=document.defaultView;Ext.Element=function(element,forceNew){var dom=typeof element=="string"?document.getElementById(element):element;if(!dom){return null;}
var id=dom.id;if(forceNew!==true&&id&&Ext.Element.cache[id]){return Ext.Element.cache[id];}
this.dom=dom;this.id=id||Ext.id(dom);};var El=Ext.Element;El.prototype={originalDisplay:"",visibilityMode:1,defaultUnit:"px",setVisibilityMode:function(visMode){this.visibilityMode=visMode;return this;},enableDisplayMode:function(display){this.setVisibilityMode(El.DISPLAY);if(typeof display!="undefined")this.originalDisplay=display;return this;},findParent:function(simpleSelector,maxDepth,returnEl){var p=this.dom,b=document.body,depth=0,dq=Ext.DomQuery,stopEl;maxDepth=maxDepth||50;if(typeof maxDepth!="number"){stopEl=Ext.getDom(maxDepth);maxDepth=10;}
while(p&&p.nodeType==1&&depth<maxDepth&&p!=b&&p!=stopEl){if(dq.is(p,simpleSelector)){return returnEl?Ext.get(p):p;}
depth++;p=p.parentNode;}
return null;},findParentNode:function(simpleSelector,maxDepth,returnEl){var p=Ext.fly(this.dom.parentNode,'_internal');return p?p.findParent(simpleSelector,maxDepth,returnEl):null;},up:function(simpleSelector,maxDepth){return this.findParentNode(simpleSelector,maxDepth,true);},is:function(simpleSelector){return Ext.DomQuery.is(this.dom,simpleSelector);},animate:function(args,duration,onComplete,easing,animType){this.anim(args,{duration:duration,callback:onComplete,easing:easing},animType);return this;},anim:function(args,opt,animType,defaultDur,defaultEase,cb){animType=animType||'run';opt=opt||{};var anim=Ext.lib.Anim[animType](this.dom,args,(opt.duration||defaultDur)||.35,(opt.easing||defaultEase)||'easeOut',function(){Ext.callback(cb,this);Ext.callback(opt.callback,opt.scope||this,[this,opt]);},this);opt.anim=anim;return anim;},preanim:function(a,i){return!a[i]?false:(typeof a[i]=="object"?a[i]:{duration:a[i+1],callback:a[i+2],easing:a[i+3]});},clean:function(forceReclean){if(this.isCleaned&&forceReclean!==true){return this;}
var ns=/\S/;var d=this.dom,n=d.firstChild,ni=-1;while(n){var nx=n.nextSibling;if(n.nodeType==3&&!ns.test(n.nodeValue)){d.removeChild(n);}else{n.nodeIndex=++ni;}
n=nx;}
this.isCleaned=true;return this;},scrollIntoView:function(container,hscroll){var c=Ext.getDom(container)||Ext.getBody().dom;var el=this.dom;var o=this.getOffsetsTo(c),l=o[0]+c.scrollLeft,t=o[1]+c.scrollTop,b=t+el.offsetHeight,r=l+el.offsetWidth;var ch=c.clientHeight;var ct=parseInt(c.scrollTop,10);var cl=parseInt(c.scrollLeft,10);var cb=ct+ch;var cr=cl+c.clientWidth;if(el.offsetHeight>ch||t<ct){c.scrollTop=t;}else if(b>cb){c.scrollTop=b-ch;}
c.scrollTop=c.scrollTop;if(hscroll!==false){if(el.offsetWidth>c.clientWidth||l<cl){c.scrollLeft=l;}else if(r>cr){c.scrollLeft=r-c.clientWidth;}
c.scrollLeft=c.scrollLeft;}
return this;},scrollChildIntoView:function(child,hscroll){Ext.fly(child,'_scrollChildIntoView').scrollIntoView(this,hscroll);},autoHeight:function(animate,duration,onComplete,easing){var oldHeight=this.getHeight();this.clip();this.setHeight(1);setTimeout(function(){var height=parseInt(this.dom.scrollHeight,10);if(!animate){this.setHeight(height);this.unclip();if(typeof onComplete=="function"){onComplete();}}else{this.setHeight(oldHeight);this.setHeight(height,animate,duration,function(){this.unclip();if(typeof onComplete=="function")onComplete();}.createDelegate(this),easing);}}.createDelegate(this),0);return this;},contains:function(el){if(!el){return false;}
return D.isAncestor(this.dom,el.dom?el.dom:el);},isVisible:function(deep){var vis=!(this.getStyle("visibility")=="hidden"||this.getStyle("display")=="none");if(deep!==true||!vis){return vis;}
var p=this.dom.parentNode;while(p&&p.tagName.toLowerCase()!="body"){if(!Ext.fly(p,'_isVisible').isVisible()){return false;}
p=p.parentNode;}
return true;},select:function(selector,unique){return El.select(selector,unique,this.dom);},query:function(selector){return Ext.DomQuery.select(selector,this.dom);},child:function(selector,returnDom){var n=Ext.DomQuery.selectNode(selector,this.dom);return returnDom?n:Ext.get(n);},down:function(selector,returnDom){var n=Ext.DomQuery.selectNode(" > "+selector,this.dom);return returnDom?n:Ext.get(n);},initDD:function(group,config,overrides){var dd=new Ext.dd.DD(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides);},initDDProxy:function(group,config,overrides){var dd=new Ext.dd.DDProxy(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides);},initDDTarget:function(group,config,overrides){var dd=new Ext.dd.DDTarget(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides);},setVisible:function(visible,animate){if(!animate||!A){if(this.visibilityMode==El.DISPLAY){this.setDisplayed(visible);}else{this.fixDisplay();this.dom.style.visibility=visible?"visible":"hidden";}}else{var dom=this.dom;var visMode=this.visibilityMode;if(visible){this.setOpacity(.01);this.setVisible(true);}
this.anim({opacity:{to:(visible?1:0)}},this.preanim(arguments,1),null,.35,'easeIn',function(){if(!visible){if(visMode==El.DISPLAY){dom.style.display="none";}else{dom.style.visibility="hidden";}
Ext.get(dom).setOpacity(1);}});}
return this;},isDisplayed:function(){return this.getStyle("display")!="none";},toggle:function(animate){this.setVisible(!this.isVisible(),this.preanim(arguments,0));return this;},setDisplayed:function(value){if(typeof value=="boolean"){value=value?this.originalDisplay:"none";}
this.setStyle("display",value);return this;},focus:function(){try{this.dom.focus();}catch(e){}
return this;},blur:function(){try{this.dom.blur();}catch(e){}
return this;},addClass:function(className){if(Ext.isArray(className)){for(var i=0,len=className.length;i<len;i++){this.addClass(className[i]);}}else{if(className&&!this.hasClass(className)){this.dom.className=this.dom.className+" "+className;}}
return this;},radioClass:function(className){var siblings=this.dom.parentNode.childNodes;for(var i=0;i<siblings.length;i++){var s=siblings[i];if(s.nodeType==1){Ext.get(s).removeClass(className);}}
this.addClass(className);return this;},removeClass:function(className){if(!className||!this.dom.className){return this;}
if(Ext.isArray(className)){for(var i=0,len=className.length;i<len;i++){this.removeClass(className[i]);}}else{if(this.hasClass(className)){var re=this.classReCache[className];if(!re){re=new RegExp('(?:^|\\s+)'+className+'(?:\\s+|$)',"g");this.classReCache[className]=re;}
this.dom.className=this.dom.className.replace(re," ");}}
return this;},classReCache:{},toggleClass:function(className){if(this.hasClass(className)){this.removeClass(className);}else{this.addClass(className);}
return this;},hasClass:function(className){return className&&(' '+this.dom.className+' ').indexOf(' '+className+' ')!=-1;},replaceClass:function(oldClassName,newClassName){this.removeClass(oldClassName);this.addClass(newClassName);return this;},getStyles:function(){var a=arguments,len=a.length,r={};for(var i=0;i<len;i++){r[a[i]]=this.getStyle(a[i]);}
return r;},getStyle:function(){return view&&view.getComputedStyle?function(prop){var el=this.dom,v,cs,camel;if(prop=='float'){prop="cssFloat";}
if(v=el.style[prop]){return v;}
if(cs=view.getComputedStyle(el,"")){if(!(camel=propCache[prop])){camel=propCache[prop]=prop.replace(camelRe,camelFn);}
return cs[camel];}
return null;}:function(prop){var el=this.dom,v,cs,camel;if(prop=='opacity'){if(typeof el.style.filter=='string'){var m=el.style.filter.match(/alpha\(opacity=(.*)\)/i);if(m){var fv=parseFloat(m[1]);if(!isNaN(fv)){return fv?fv/100:0;}}}
return 1;}else if(prop=='float'){prop="styleFloat";}
if(!(camel=propCache[prop])){camel=propCache[prop]=prop.replace(camelRe,camelFn);}
if(v=el.style[camel]){return v;}
if(cs=el.currentStyle){return cs[camel];}
return null;};}(),setStyle:function(prop,value){if(typeof prop=="string"){var camel;if(!(camel=propCache[prop])){camel=propCache[prop]=prop.replace(camelRe,camelFn);}
if(camel=='opacity'){this.setOpacity(value);}else{this.dom.style[camel]=value;}}else{for(var style in prop){if(typeof prop[style]!="function"){this.setStyle(style,prop[style]);}}}
return this;},applyStyles:function(style){Ext.DomHelper.applyStyles(this.dom,style);return this;},getX:function(){return D.getX(this.dom);},getY:function(){return D.getY(this.dom);},getXY:function(){return D.getXY(this.dom);},getOffsetsTo:function(el){var o=this.getXY();var e=Ext.fly(el,'_internal').getXY();return[o[0]-e[0],o[1]-e[1]];},setX:function(x,animate){if(!animate||!A){D.setX(this.dom,x);}else{this.setXY([x,this.getY()],this.preanim(arguments,1));}
return this;},setY:function(y,animate){if(!animate||!A){D.setY(this.dom,y);}else{this.setXY([this.getX(),y],this.preanim(arguments,1));}
return this;},setLeft:function(left){this.setStyle("left",this.addUnits(left));return this;},setTop:function(top){this.setStyle("top",this.addUnits(top));return this;},setRight:function(right){this.setStyle("right",this.addUnits(right));return this;},setBottom:function(bottom){this.setStyle("bottom",this.addUnits(bottom));return this;},setXY:function(pos,animate){if(!animate||!A){D.setXY(this.dom,pos);}else{this.anim({points:{to:pos}},this.preanim(arguments,1),'motion');}
return this;},setLocation:function(x,y,animate){this.setXY([x,y],this.preanim(arguments,2));return this;},moveTo:function(x,y,animate){this.setXY([x,y],this.preanim(arguments,2));return this;},getRegion:function(){return D.getRegion(this.dom);},getHeight:function(contentHeight){var h=this.dom.offsetHeight||0;h=contentHeight!==true?h:h-this.getBorderWidth("tb")-this.getPadding("tb");return h<0?0:h;},getWidth:function(contentWidth){var w=this.dom.offsetWidth||0;w=contentWidth!==true?w:w-this.getBorderWidth("lr")-this.getPadding("lr");return w<0?0:w;},getComputedHeight:function(){var h=Math.max(this.dom.offsetHeight,this.dom.clientHeight);if(!h){h=parseInt(this.getStyle('height'),10)||0;if(!this.isBorderBox()){h+=this.getFrameWidth('tb');}}
return h;},getComputedWidth:function(){var w=Math.max(this.dom.offsetWidth,this.dom.clientWidth);if(!w){w=parseInt(this.getStyle('width'),10)||0;if(!this.isBorderBox()){w+=this.getFrameWidth('lr');}}
return w;},getSize:function(contentSize){return{width:this.getWidth(contentSize),height:this.getHeight(contentSize)};},getStyleSize:function(){var w,h,d=this.dom,s=d.style;if(s.width&&s.width!='auto'){w=parseInt(s.width,10);if(Ext.isBorderBox){w-=this.getFrameWidth('lr');}}
if(s.height&&s.height!='auto'){h=parseInt(s.height,10);if(Ext.isBorderBox){h-=this.getFrameWidth('tb');}}
return{width:w||this.getWidth(true),height:h||this.getHeight(true)};},getViewSize:function(){var d=this.dom,doc=document,aw=0,ah=0;if(d==doc||d==doc.body){return{width:D.getViewWidth(),height:D.getViewHeight()};}else{return{width:d.clientWidth,height:d.clientHeight};}},getValue:function(asNumber){return asNumber?parseInt(this.dom.value,10):this.dom.value;},adjustWidth:function(width){if(typeof width=="number"){if(this.autoBoxAdjust&&!this.isBorderBox()){width-=(this.getBorderWidth("lr")+this.getPadding("lr"));}
if(width<0){width=0;}}
return width;},adjustHeight:function(height){if(typeof height=="number"){if(this.autoBoxAdjust&&!this.isBorderBox()){height-=(this.getBorderWidth("tb")+this.getPadding("tb"));}
if(height<0){height=0;}}
return height;},setWidth:function(width,animate){width=this.adjustWidth(width);if(!animate||!A){this.dom.style.width=this.addUnits(width);}else{this.anim({width:{to:width}},this.preanim(arguments,1));}
return this;},setHeight:function(height,animate){height=this.adjustHeight(height);if(!animate||!A){this.dom.style.height=this.addUnits(height);}else{this.anim({height:{to:height}},this.preanim(arguments,1));}
return this;},setSize:function(width,height,animate){if(typeof width=="object"){height=width.height;width=width.width;}
width=this.adjustWidth(width);height=this.adjustHeight(height);if(!animate||!A){this.dom.style.width=this.addUnits(width);this.dom.style.height=this.addUnits(height);}else{this.anim({width:{to:width},height:{to:height}},this.preanim(arguments,2));}
return this;},setBounds:function(x,y,width,height,animate){if(!animate||!A){this.setSize(width,height);this.setLocation(x,y);}else{width=this.adjustWidth(width);height=this.adjustHeight(height);this.anim({points:{to:[x,y]},width:{to:width},height:{to:height}},this.preanim(arguments,4),'motion');}
return this;},setRegion:function(region,animate){this.setBounds(region.left,region.top,region.right-region.left,region.bottom-region.top,this.preanim(arguments,1));return this;},addListener:function(eventName,fn,scope,options){Ext.EventManager.on(this.dom,eventName,fn,scope||this,options);},removeListener:function(eventName,fn,scope){Ext.EventManager.removeListener(this.dom,eventName,fn,scope||this);return this;},removeAllListeners:function(){Ext.EventManager.removeAll(this.dom);return this;},relayEvent:function(eventName,observable){this.on(eventName,function(e){observable.fireEvent(eventName,e);});},setOpacity:function(opacity,animate){if(!animate||!A){var s=this.dom.style;if(Ext.isIE){s.zoom=1;s.filter=(s.filter||'').replace(/alpha\([^\)]*\)/gi,"")+
(opacity==1?"":" alpha(opacity="+opacity*100+")");}else{s.opacity=opacity;}}else{this.anim({opacity:{to:opacity}},this.preanim(arguments,1),null,.35,'easeIn');}
return this;},getLeft:function(local){if(!local){return this.getX();}else{return parseInt(this.getStyle("left"),10)||0;}},getRight:function(local){if(!local){return this.getX()+this.getWidth();}else{return(this.getLeft(true)+this.getWidth())||0;}},getTop:function(local){if(!local){return this.getY();}else{return parseInt(this.getStyle("top"),10)||0;}},getBottom:function(local){if(!local){return this.getY()+this.getHeight();}else{return(this.getTop(true)+this.getHeight())||0;}},position:function(pos,zIndex,x,y){if(!pos){if(this.getStyle('position')=='static'){this.setStyle('position','relative');}}else{this.setStyle("position",pos);}
if(zIndex){this.setStyle("z-index",zIndex);}
if(x!==undefined&&y!==undefined){this.setXY([x,y]);}else if(x!==undefined){this.setX(x);}else if(y!==undefined){this.setY(y);}},clearPositioning:function(value){value=value||'';this.setStyle({"left":value,"right":value,"top":value,"bottom":value,"z-index":"","position":"static"});return this;},getPositioning:function(){var l=this.getStyle("left");var t=this.getStyle("top");return{"position":this.getStyle("position"),"left":l,"right":l?"":this.getStyle("right"),"top":t,"bottom":t?"":this.getStyle("bottom"),"z-index":this.getStyle("z-index")};},getBorderWidth:function(side){return this.addStyles(side,El.borders);},getPadding:function(side){return this.addStyles(side,El.paddings);},setPositioning:function(pc){this.applyStyles(pc);if(pc.right=="auto"){this.dom.style.right="";}
if(pc.bottom=="auto"){this.dom.style.bottom="";}
return this;},fixDisplay:function(){if(this.getStyle("display")=="none"){this.setStyle("visibility","hidden");this.setStyle("display",this.originalDisplay);if(this.getStyle("display")=="none"){this.setStyle("display","block");}}},setOverflow:function(v){if(v=='auto'&&Ext.isMac&&Ext.isGecko2){this.dom.style.overflow='hidden';(function(){this.dom.style.overflow='auto';}).defer(1,this);}else{this.dom.style.overflow=v;}},setLeftTop:function(left,top){this.dom.style.left=this.addUnits(left);this.dom.style.top=this.addUnits(top);return this;},move:function(direction,distance,animate){var xy=this.getXY();direction=direction.toLowerCase();switch(direction){case"l":case"left":this.moveTo(xy[0]-distance,xy[1],this.preanim(arguments,2));break;case"r":case"right":this.moveTo(xy[0]+distance,xy[1],this.preanim(arguments,2));break;case"t":case"top":case"up":this.moveTo(xy[0],xy[1]-distance,this.preanim(arguments,2));break;case"b":case"bottom":case"down":this.moveTo(xy[0],xy[1]+distance,this.preanim(arguments,2));break;}
return this;},clip:function(){if(!this.isClipped){this.isClipped=true;this.originalClip={"o":this.getStyle("overflow"),"x":this.getStyle("overflow-x"),"y":this.getStyle("overflow-y")};this.setStyle("overflow","hidden");this.setStyle("overflow-x","hidden");this.setStyle("overflow-y","hidden");}
return this;},unclip:function(){if(this.isClipped){this.isClipped=false;var o=this.originalClip;if(o.o){this.setStyle("overflow",o.o);}
if(o.x){this.setStyle("overflow-x",o.x);}
if(o.y){this.setStyle("overflow-y",o.y);}}
return this;},getAnchorXY:function(anchor,local,s){var w,h,vp=false;if(!s){var d=this.dom;if(d==document.body||d==document){vp=true;w=D.getViewWidth();h=D.getViewHeight();}else{w=this.getWidth();h=this.getHeight();}}else{w=s.width;h=s.height;}
var x=0,y=0,r=Math.round;switch((anchor||"tl").toLowerCase()){case"c":x=r(w*.5);y=r(h*.5);break;case"t":x=r(w*.5);y=0;break;case"l":x=0;y=r(h*.5);break;case"r":x=w;y=r(h*.5);break;case"b":x=r(w*.5);y=h;break;case"tl":x=0;y=0;break;case"bl":x=0;y=h;break;case"br":x=w;y=h;break;case"tr":x=w;y=0;break;}
if(local===true){return[x,y];}
if(vp){var sc=this.getScroll();return[x+sc.left,y+sc.top];}
var o=this.getXY();return[x+o[0],y+o[1]];},getAlignToXY:function(el,p,o){el=Ext.get(el);if(!el||!el.dom){throw"Element.alignToXY with an element that doesn't exist";}
var d=this.dom;var c=false;var p1="",p2="";o=o||[0,0];if(!p){p="tl-bl";}else if(p=="?"){p="tl-bl?";}else if(p.indexOf("-")==-1){p="tl-"+p;}
p=p.toLowerCase();var m=p.match(/^([a-z]+)-([a-z]+)(\?)?$/);if(!m){throw"Element.alignTo with an invalid alignment "+p;}
p1=m[1];p2=m[2];c=!!m[3];var a1=this.getAnchorXY(p1,true);var a2=el.getAnchorXY(p2,false);var x=a2[0]-a1[0]+o[0];var y=a2[1]-a1[1]+o[1];if(c){var w=this.getWidth(),h=this.getHeight(),r=el.getRegion();var dw=D.getViewWidth()-5,dh=D.getViewHeight()-5;var p1y=p1.charAt(0),p1x=p1.charAt(p1.length-1);var p2y=p2.charAt(0),p2x=p2.charAt(p2.length-1);var swapY=((p1y=="t"&&p2y=="b")||(p1y=="b"&&p2y=="t"));var swapX=((p1x=="r"&&p2x=="l")||(p1x=="l"&&p2x=="r"));var doc=document;var scrollX=(doc.documentElement.scrollLeft||doc.body.scrollLeft||0)+5;var scrollY=(doc.documentElement.scrollTop||doc.body.scrollTop||0)+5;if((x+w)>dw+scrollX){x=swapX?r.left-w:dw+scrollX-w;}
if(x<scrollX){x=swapX?r.right:scrollX;}
if((y+h)>dh+scrollY){y=swapY?r.top-h:dh+scrollY-h;}
if(y<scrollY){y=swapY?r.bottom:scrollY;}}
return[x,y];},getConstrainToXY:function(){var os={top:0,left:0,bottom:0,right:0};return function(el,local,offsets,proposedXY){el=Ext.get(el);offsets=offsets?Ext.applyIf(offsets,os):os;var vw,vh,vx=0,vy=0;if(el.dom==document.body||el.dom==document){vw=Ext.lib.Dom.getViewWidth();vh=Ext.lib.Dom.getViewHeight();}else{vw=el.dom.clientWidth;vh=el.dom.clientHeight;if(!local){var vxy=el.getXY();vx=vxy[0];vy=vxy[1];}}
var s=el.getScroll();vx+=offsets.left+s.left;vy+=offsets.top+s.top;vw-=offsets.right;vh-=offsets.bottom;var vr=vx+vw;var vb=vy+vh;var xy=proposedXY||(!local?this.getXY():[this.getLeft(true),this.getTop(true)]);var x=xy[0],y=xy[1];var w=this.dom.offsetWidth,h=this.dom.offsetHeight;var moved=false;if((x+w)>vr){x=vr-w;moved=true;}
if((y+h)>vb){y=vb-h;moved=true;}
if(x<vx){x=vx;moved=true;}
if(y<vy){y=vy;moved=true;}
return moved?[x,y]:false;};}(),adjustForConstraints:function(xy,parent,offsets){return this.getConstrainToXY(parent||document,false,offsets,xy)||xy;},alignTo:function(element,position,offsets,animate){var xy=this.getAlignToXY(element,position,offsets);this.setXY(xy,this.preanim(arguments,3));return this;},anchorTo:function(el,alignment,offsets,animate,monitorScroll,callback){var action=function(){this.alignTo(el,alignment,offsets,animate);Ext.callback(callback,this);};Ext.EventManager.onWindowResize(action,this);var tm=typeof monitorScroll;if(tm!='undefined'){Ext.EventManager.on(window,'scroll',action,this,{buffer:tm=='number'?monitorScroll:50});}
action.call(this);return this;},clearOpacity:function(){if(window.ActiveXObject){if(typeof this.dom.style.filter=='string'&&(/alpha/i).test(this.dom.style.filter)){this.dom.style.filter="";}}else{this.dom.style.opacity="";this.dom.style["-moz-opacity"]="";this.dom.style["-khtml-opacity"]="";}
return this;},hide:function(animate){this.setVisible(false,this.preanim(arguments,0));return this;},show:function(animate){this.setVisible(true,this.preanim(arguments,0));return this;},addUnits:function(size){return Ext.Element.addUnits(size,this.defaultUnit);},update:function(html,loadScripts,callback){if(typeof html=="undefined"){html="";}
if(loadScripts!==true){this.dom.innerHTML=html;if(typeof callback=="function"){callback();}
return this;}
var id=Ext.id();var dom=this.dom;html+='<span id="'+id+'"></span>';E.onAvailable(id,function(){var hd=document.getElementsByTagName("head")[0];var re=/(?:<script([^>]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig;var srcRe=/\ssrc=([\'\"])(.*?)\1/i;var typeRe=/\stype=([\'\"])(.*?)\1/i;var match;while(match=re.exec(html)){var attrs=match[1];var srcMatch=attrs?attrs.match(srcRe):false;if(srcMatch&&srcMatch[2]){var s=document.createElement("script");s.src=srcMatch[2];var 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]);}}}
var el=document.getElementById(id);if(el){Ext.removeNode(el);}
if(typeof callback=="function"){callback();}});dom.innerHTML=html.replace(/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,"");return this;},load:function(){var um=this.getUpdater();um.update.apply(um,arguments);return this;},getUpdater:function(){if(!this.updateManager){this.updateManager=new Ext.Updater(this);}
return this.updateManager;},unselectable:function(){this.dom.unselectable="on";this.swallowEvent("selectstart",true);this.applyStyles("-moz-user-select:none;-khtml-user-select:none;");this.addClass("x-unselectable");return this;},getCenterXY:function(){return this.getAlignToXY(document,'c-c');},center:function(centerIn){this.alignTo(centerIn||document,'c-c');return this;},isBorderBox:function(){return noBoxAdjust[this.dom.tagName.toLowerCase()]||Ext.isBorderBox;},getBox:function(contentBox,local){var xy;if(!local){xy=this.getXY();}else{var left=parseInt(this.getStyle("left"),10)||0;var top=parseInt(this.getStyle("top"),10)||0;xy=[left,top];}
var el=this.dom,w=el.offsetWidth,h=el.offsetHeight,bx;if(!contentBox){bx={x:xy[0],y:xy[1],0:xy[0],1:xy[1],width:w,height:h};}else{var l=this.getBorderWidth("l")+this.getPadding("l");var r=this.getBorderWidth("r")+this.getPadding("r");var t=this.getBorderWidth("t")+this.getPadding("t");var b=this.getBorderWidth("b")+this.getPadding("b");bx={x:xy[0]+l,y:xy[1]+t,0:xy[0]+l,1:xy[1]+t,width:w-(l+r),height:h-(t+b)};}
bx.right=bx.x+bx.width;bx.bottom=bx.y+bx.height;return bx;},getFrameWidth:function(sides,onlyContentBox){return onlyContentBox&&Ext.isBorderBox?0:(this.getPadding(sides)+this.getBorderWidth(sides));},setBox:function(box,adjust,animate){var w=box.width,h=box.height;if((adjust&&!this.autoBoxAdjust)&&!this.isBorderBox()){w-=(this.getBorderWidth("lr")+this.getPadding("lr"));h-=(this.getBorderWidth("tb")+this.getPadding("tb"));}
this.setBounds(box.x,box.y,w,h,this.preanim(arguments,2));return this;},repaint:function(){var dom=this.dom;this.addClass("x-repaint");setTimeout(function(){Ext.get(dom).removeClass("x-repaint");},1);return this;},getMargins:function(side){if(!side){return{top:parseInt(this.getStyle("margin-top"),10)||0,left:parseInt(this.getStyle("margin-left"),10)||0,bottom:parseInt(this.getStyle("margin-bottom"),10)||0,right:parseInt(this.getStyle("margin-right"),10)||0};}else{return this.addStyles(side,El.margins);}},addStyles:function(sides,styles){var val=0,v,w;for(var i=0,len=sides.length;i<len;i++){v=this.getStyle(styles[sides.charAt(i)]);if(v){w=parseInt(v,10);if(w){val+=(w>=0?w:-1*w);}}}
return val;},createProxy:function(config,renderTo,matchBox){config=typeof config=="object"?config:{tag:"div",cls:config};var proxy;if(renderTo){proxy=Ext.DomHelper.append(renderTo,config,true);}else{proxy=Ext.DomHelper.insertBefore(this.dom,config,true);}
if(matchBox){proxy.setBox(this.getBox());}
return proxy;},mask:function(msg,msgCls){if(this.getStyle("position")=="static"){this.addClass("x-masked-relative");}
if(this._maskMsg){this._maskMsg.remove();}
if(this._mask){this._mask.remove();}
this._mask=Ext.DomHelper.append(this.dom,{cls:"ext-el-mask"},true);this.addClass("x-masked");this._mask.setDisplayed(true);if(typeof msg=='string'){this._maskMsg=Ext.DomHelper.append(this.dom,{cls:"ext-el-mask-msg",cn:{tag:'div'}},true);var mm=this._maskMsg;mm.dom.className=msgCls?"ext-el-mask-msg "+msgCls:"ext-el-mask-msg";mm.dom.firstChild.innerHTML=msg;mm.setDisplayed(true);mm.center(this);}
if(Ext.isIE&&!(Ext.isIE7&&Ext.isStrict)&&this.getStyle('height')=='auto'){this._mask.setSize(this.getWidth(),this.getHeight());}
return this._mask;},unmask:function(){if(this._mask){if(this._maskMsg){this._maskMsg.remove();delete this._maskMsg;}
this._mask.remove();delete this._mask;}
this.removeClass(["x-masked","x-masked-relative"]);},isMasked:function(){return this._mask&&this._mask.isVisible();},createShim:function(){var el=document.createElement('iframe');el.frameBorder='0';el.className='ext-shim';if(Ext.isIE&&Ext.isSecure){el.src=Ext.SSL_SECURE_URL;}
var shim=Ext.get(this.dom.parentNode.insertBefore(el,this.dom));shim.autoBoxAdjust=false;return shim;},remove:function(){Ext.removeNode(this.dom);delete El.cache[this.dom.id];},hover:function(overFn,outFn,scope){var preOverFn=function(e){if(!e.within(this,true)){overFn.apply(scope||this,arguments);}};var preOutFn=function(e){if(!e.within(this,true)){outFn.apply(scope||this,arguments);}};this.on("mouseover",preOverFn,this.dom);this.on("mouseout",preOutFn,this.dom);return this;},addClassOnOver:function(className){this.hover(function(){Ext.fly(this,'_internal').addClass(className);},function(){Ext.fly(this,'_internal').removeClass(className);});return this;},addClassOnFocus:function(className){this.on("focus",function(){Ext.fly(this,'_internal').addClass(className);},this.dom);this.on("blur",function(){Ext.fly(this,'_internal').removeClass(className);},this.dom);return this;},addClassOnClick:function(className){var dom=this.dom;this.on("mousedown",function(){Ext.fly(dom,'_internal').addClass(className);var d=Ext.getDoc();var fn=function(){Ext.fly(dom,'_internal').removeClass(className);d.removeListener("mouseup",fn);};d.on("mouseup",fn);});return this;},swallowEvent:function(eventName,preventDefault){var fn=function(e){e.stopPropagation();if(preventDefault){e.preventDefault();}};if(Ext.isArray(eventName)){for(var i=0,len=eventName.length;i<len;i++){this.on(eventName[i],fn);}
return this;}
this.on(eventName,fn);return this;},parent:function(selector,returnDom){return this.matchNode('parentNode','parentNode',selector,returnDom);},next:function(selector,returnDom){return this.matchNode('nextSibling','nextSibling',selector,returnDom);},prev:function(selector,returnDom){return this.matchNode('previousSibling','previousSibling',selector,returnDom);},first:function(selector,returnDom){return this.matchNode('nextSibling','firstChild',selector,returnDom);},last:function(selector,returnDom){return this.matchNode('previousSibling','lastChild',selector,returnDom);},matchNode:function(dir,start,selector,returnDom){var n=this.dom[start];while(n){if(n.nodeType==1&&(!selector||Ext.DomQuery.is(n,selector))){return!returnDom?Ext.get(n):n;}
n=n[dir];}
return null;},appendChild:function(el){el=Ext.get(el);el.appendTo(this);return this;},createChild:function(config,insertBefore,returnDom){config=config||{tag:'div'};if(insertBefore){return Ext.DomHelper.insertBefore(insertBefore,config,returnDom!==true);}
return Ext.DomHelper[!this.dom.firstChild?'overwrite':'append'](this.dom,config,returnDom!==true);},appendTo:function(el){el=Ext.getDom(el);el.appendChild(this.dom);return this;},insertBefore:function(el){el=Ext.getDom(el);el.parentNode.insertBefore(this.dom,el);return this;},insertAfter:function(el){el=Ext.getDom(el);el.parentNode.insertBefore(this.dom,el.nextSibling);return this;},insertFirst:function(el,returnDom){el=el||{};if(typeof el=='object'&&!el.nodeType&&!el.dom){return this.createChild(el,this.dom.firstChild,returnDom);}else{el=Ext.getDom(el);this.dom.insertBefore(el,this.dom.firstChild);return!returnDom?Ext.get(el):el;}},insertSibling:function(el,where,returnDom){var rt;if(Ext.isArray(el)){for(var i=0,len=el.length;i<len;i++){rt=this.insertSibling(el[i],where,returnDom);}
return rt;}
where=where?where.toLowerCase():'before';el=el||{};var refNode=where=='before'?this.dom:this.dom.nextSibling;if(typeof el=='object'&&!el.nodeType&&!el.dom){if(where=='after'&&!this.dom.nextSibling){rt=Ext.DomHelper.append(this.dom.parentNode,el,!returnDom);}else{rt=Ext.DomHelper[where=='after'?'insertAfter':'insertBefore'](this.dom,el,!returnDom);}}else{rt=this.dom.parentNode.insertBefore(Ext.getDom(el),refNode);if(!returnDom){rt=Ext.get(rt);}}
return rt;},wrap:function(config,returnDom){if(!config){config={tag:"div"};}
var newEl=Ext.DomHelper.insertBefore(this.dom,config,!returnDom);newEl.dom?newEl.dom.appendChild(this.dom):newEl.appendChild(this.dom);return newEl;},replace:function(el){el=Ext.get(el);this.insertBefore(el);el.remove();return this;},replaceWith:function(el){if(typeof el=='object'&&!el.nodeType&&!el.dom){el=this.insertSibling(el,'before');}else{el=Ext.getDom(el);this.dom.parentNode.insertBefore(el,this.dom);}
El.uncache(this.id);Ext.removeNode(this.dom);this.dom=el;this.id=Ext.id(el);El.cache[this.id]=this;return this;},insertHtml:function(where,html,returnEl){var el=Ext.DomHelper.insertHtml(where,this.dom,html);return returnEl?Ext.get(el):el;},set:function(o,useSet){var el=this.dom;useSet=typeof useSet=='undefined'?(el.setAttribute?true:false):useSet;for(var attr in o){if(attr=="style"||typeof o[attr]=="function")continue;if(attr=="cls"){el.className=o["cls"];}else if(o.hasOwnProperty(attr)){if(useSet)el.setAttribute(attr,o[attr]);else el[attr]=o[attr];}}
if(o.style){Ext.DomHelper.applyStyles(el,o.style);}
return this;},addKeyListener:function(key,fn,scope){var config;if(typeof key!="object"||Ext.isArray(key)){config={key:key,fn:fn,scope:scope};}else{config={key:key.key,shift:key.shift,ctrl:key.ctrl,alt:key.alt,fn:fn,scope:scope};}
return new Ext.KeyMap(this,config);},addKeyMap:function(config){return new Ext.KeyMap(this,config);},isScrollable:function(){var dom=this.dom;return dom.scrollHeight>dom.clientHeight||dom.scrollWidth>dom.clientWidth;},scrollTo:function(side,value,animate){var prop=side.toLowerCase()=="left"?"scrollLeft":"scrollTop";if(!animate||!A){this.dom[prop]=value;}else{var to=prop=="scrollLeft"?[value,this.dom.scrollTop]:[this.dom.scrollLeft,value];this.anim({scroll:{"to":to}},this.preanim(arguments,2),'scroll');}
return this;},scroll:function(direction,distance,animate){if(!this.isScrollable()){return;}
var el=this.dom;var l=el.scrollLeft,t=el.scrollTop;var w=el.scrollWidth,h=el.scrollHeight;var cw=el.clientWidth,ch=el.clientHeight;direction=direction.toLowerCase();var scrolled=false;var a=this.preanim(arguments,2);switch(direction){case"l":case"left":if(w-l>cw){var v=Math.min(l+distance,w-cw);this.scrollTo("left",v,a);scrolled=true;}
break;case"r":case"right":if(l>0){var v=Math.max(l-distance,0);this.scrollTo("left",v,a);scrolled=true;}
break;case"t":case"top":case"up":if(t>0){var v=Math.max(t-distance,0);this.scrollTo("top",v,a);scrolled=true;}
break;case"b":case"bottom":case"down":if(h-t>ch){var v=Math.min(t+distance,h-ch);this.scrollTo("top",v,a);scrolled=true;}
break;}
return scrolled;},translatePoints:function(x,y){if(typeof x=='object'||Ext.isArray(x)){y=x[1];x=x[0];}
var p=this.getStyle('position');var o=this.getXY();var l=parseInt(this.getStyle('left'),10);var t=parseInt(this.getStyle('top'),10);if(isNaN(l)){l=(p=="relative")?0:this.dom.offsetLeft;}
if(isNaN(t)){t=(p=="relative")?0:this.dom.offsetTop;}
return{left:(x-o[0]+l),top:(y-o[1]+t)};},getScroll:function(){var d=this.dom,doc=document;if(d==doc||d==doc.body){var l,t;if(Ext.isIE&&Ext.isStrict){l=doc.documentElement.scrollLeft||(doc.body.scrollLeft||0);t=doc.documentElement.scrollTop||(doc.body.scrollTop||0);}else{l=window.pageXOffset||(doc.body.scrollLeft||0);t=window.pageYOffset||(doc.body.scrollTop||0);}
return{left:l,top:t};}else{return{left:d.scrollLeft,top:d.scrollTop};}},getColor:function(attr,defaultValue,prefix){var v=this.getStyle(attr);if(!v||v=="transparent"||v=="inherit"){return defaultValue;}
var color=typeof prefix=="undefined"?"#":prefix;if(v.substr(0,4)=="rgb("){var rvs=v.slice(4,v.length-1).split(",");for(var i=0;i<3;i++){var h=parseInt(rvs[i]);var s=h.toString(16);if(h<16){s="0"+s;}
color+=s;}}else{if(v.substr(0,1)=="#"){if(v.length==4){for(var i=1;i<4;i++){var c=v.charAt(i);color+=c+c;}}else if(v.length==7){color+=v.substr(1);}}}
return(color.length>5?color.toLowerCase():defaultValue);},boxWrap:function(cls){cls=cls||'x-box';var el=Ext.get(this.insertHtml('beforeBegin',String.format('<div class="{0}">'+El.boxMarkup+'</div>',cls)));el.child('.'+cls+'-mc').dom.appendChild(this.dom);return el;},getAttributeNS:Ext.isIE?function(ns,name){var d=this.dom;var type=typeof d[ns+":"+name];if(type!='undefined'&&type!='unknown'){return d[ns+":"+name];}
return d[name];}:function(ns,name){var d=this.dom;return d.getAttributeNS(ns,name)||d.getAttribute(ns+":"+name)||d.getAttribute(name)||d[name];},getTextWidth:function(text,min,max){return(Ext.util.TextMetrics.measure(this.dom,Ext.value(text,this.dom.innerHTML,true)).width).constrain(min||0,max||1000000);}};var ep=El.prototype;ep.on=ep.addListener;ep.mon=ep.addListener;ep.getUpdateManager=ep.getUpdater;ep.un=ep.removeListener;ep.autoBoxAdjust=true;El.unitPattern=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i;El.addUnits=function(v,defaultUnit){if(v===""||v=="auto"){return v;}
if(v===undefined){return'';}
if(typeof v=="number"||!El.unitPattern.test(v)){return v+(defaultUnit||'px');}
return v;};El.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>';El.VISIBILITY=1;El.DISPLAY=2;El.borders={l:"border-left-width",r:"border-right-width",t:"border-top-width",b:"border-bottom-width"};El.paddings={l:"padding-left",r:"padding-right",t:"padding-top",b:"padding-bottom"};El.margins={l:"margin-left",r:"margin-right",t:"margin-top",b:"margin-bottom"};El.cache={};var docEl;El.get=function(el){var ex,elm,id;if(!el){return null;}
if(typeof el=="string"){if(!(elm=document.getElementById(el))){return null;}
if(ex=El.cache[el]){ex.dom=elm;}else{ex=El.cache[el]=new El(elm);}
return ex;}else if(el.tagName){if(!(id=el.id)){id=Ext.id(el);}
if(ex=El.cache[id]){ex.dom=el;}else{ex=El.cache[id]=new El(el);}
return ex;}else if(el instanceof El){if(el!=docEl){el.dom=document.getElementById(el.id)||el.dom;El.cache[el.id]=el;}
return el;}else if(el.isComposite){return el;}else if(Ext.isArray(el)){return El.select(el);}else if(el==document){if(!docEl){var f=function(){};f.prototype=El.prototype;docEl=new f();docEl.dom=document;}
return docEl;}
return null;};El.uncache=function(el){for(var i=0,a=arguments,len=a.length;i<len;i++){if(a[i]){delete El.cache[a[i].id||a[i]];}}};El.garbageCollect=function(){if(!Ext.enableGarbageCollector){clearInterval(El.collectorThread);return;}
for(var eid in El.cache){var el=El.cache[eid],d=el.dom;if(!d||!d.parentNode||(!d.offsetParent&&!document.getElementById(eid))){delete El.cache[eid];if(d&&Ext.enableListenerCollection){Ext.EventManager.removeAll(d);}}}}
El.collectorThreadId=setInterval(El.garbageCollect,30000);var flyFn=function(){};flyFn.prototype=El.prototype;var _cls=new flyFn();El.Flyweight=function(dom){this.dom=dom;};El.Flyweight.prototype=_cls;El.Flyweight.prototype.isFlyweight=true;El._flyweights={};El.fly=function(el,named){named=named||'_global';el=Ext.getDom(el);if(!el){return null;}
if(!El._flyweights[named]){El._flyweights[named]=new El.Flyweight();}
El._flyweights[named].dom=el;return El._flyweights[named];};Ext.get=El.get;Ext.fly=El.fly;var noBoxAdjust=Ext.isStrict?{select:1}:{input:1,select:1,textarea:1};if(Ext.isIE||Ext.isGecko){noBoxAdjust['button']=1;}
Ext.EventManager.on(window,'unload',function(){delete El.cache;delete El._flyweights;});})();Ext.enableFx=true;Ext.Fx={slideIn:function(anchor,o){var el=this.getFxEl();o=o||{};el.queueFx(o,function(){anchor=anchor||"t";this.fixDisplay();var r=this.getFxRestore();var b=this.getBox();this.setSize(b);var wrap=this.fxWrap(r.pos,o,"hidden");var st=this.dom.style;st.visibility="visible";st.position="absolute";var after=function(){el.fxUnwrap(wrap,r.pos,o);st.width=r.width;st.height=r.height;el.afterFx(o);};var a,pt={to:[b.x,b.y]},bw={to:b.width},bh={to:b.height};switch(anchor.toLowerCase()){case"t":wrap.setSize(b.width,0);st.left=st.bottom="0";a={height:bh};break;case"l":wrap.setSize(0,b.height);st.right=st.top="0";a={width:bw};break;case"r":wrap.setSize(0,b.height);wrap.setX(b.right);st.left=st.top="0";a={width:bw,points:pt};break;case"b":wrap.setSize(b.width,0);wrap.setY(b.bottom);st.left=st.top="0";a={height:bh,points:pt};break;case"tl":wrap.setSize(0,0);st.right=st.bottom="0";a={width:bw,height:bh};break;case"bl":wrap.setSize(0,0);wrap.setY(b.y+b.height);st.right=st.top="0";a={width:bw,height:bh,points:pt};break;case"br":wrap.setSize(0,0);wrap.setXY([b.right,b.bottom]);st.left=st.top="0";a={width:bw,height:bh,points:pt};break;case"tr":wrap.setSize(0,0);wrap.setX(b.x+b.width);st.left=st.bottom="0";a={width:bw,height:bh,points:pt};break;}
this.dom.style.visibility="visible";wrap.show();arguments.callee.anim=wrap.fxanim(a,o,'motion',.5,'easeOut',after);});return this;},slideOut:function(anchor,o){var el=this.getFxEl();o=o||{};el.queueFx(o,function(){anchor=anchor||"t";var r=this.getFxRestore();var b=this.getBox();this.setSize(b);var wrap=this.fxWrap(r.pos,o,"visible");var st=this.dom.style;st.visibility="visible";st.position="absolute";wrap.setSize(b);var after=function(){if(o.useDisplay){el.setDisplayed(false);}else{el.hide();}
el.fxUnwrap(wrap,r.pos,o);st.width=r.width;st.height=r.height;el.afterFx(o);};var a,zero={to:0};switch(anchor.toLowerCase()){case"t":st.left=st.bottom="0";a={height:zero};break;case"l":st.right=st.top="0";a={width:zero};break;case"r":st.left=st.top="0";a={width:zero,points:{to:[b.right,b.y]}};break;case"b":st.left=st.top="0";a={height:zero,points:{to:[b.x,b.bottom]}};break;case"tl":st.right=st.bottom="0";a={width:zero,height:zero};break;case"bl":st.right=st.top="0";a={width:zero,height:zero,points:{to:[b.x,b.bottom]}};break;case"br":st.left=st.top="0";a={width:zero,height:zero,points:{to:[b.x+b.width,b.bottom]}};break;case"tr":st.left=st.bottom="0";a={width:zero,height:zero,points:{to:[b.right,b.y]}};break;}
arguments.callee.anim=wrap.fxanim(a,o,'motion',.5,"easeOut",after);});return this;},puff:function(o){var el=this.getFxEl();o=o||{};el.queueFx(o,function(){this.clearOpacity();this.show();var r=this.getFxRestore();var st=this.dom.style;var after=function(){if(o.useDisplay){el.setDisplayed(false);}else{el.hide();}
el.clearOpacity();el.setPositioning(r.pos);st.width=r.width;st.height=r.height;st.fontSize='';el.afterFx(o);};var width=this.getWidth();var height=this.getHeight();arguments.callee.anim=this.fxanim({width:{to:this.adjustWidth(width*2)},height:{to:this.adjustHeight(height*2)},points:{by:[-(width*.5),-(height*.5)]},opacity:{to:0},fontSize:{to:200,unit:"%"}},o,'motion',.5,"easeOut",after);});return this;},switchOff:function(o){var el=this.getFxEl();o=o||{};el.queueFx(o,function(){this.clearOpacity();this.clip();var r=this.getFxRestore();var st=this.dom.style;var after=function(){if(o.useDisplay){el.setDisplayed(false);}else{el.hide();}
el.clearOpacity();el.setPositioning(r.pos);st.width=r.width;st.height=r.height;el.afterFx(o);};this.fxanim({opacity:{to:0.3}},null,null,.1,null,function(){this.clearOpacity();(function(){this.fxanim({height:{to:1},points:{by:[0,this.getHeight()*.5]}},o,'motion',0.3,'easeIn',after);}).defer(100,this);});});return this;},highlight:function(color,o){var el=this.getFxEl();o=o||{};el.queueFx(o,function(){color=color||"ffff9c";var attr=o.attr||"backgroundColor";this.clearOpacity();this.show();var origColor=this.getColor(attr);var restoreColor=this.dom.style[attr];var endColor=(o.endColor||origColor)||"ffffff";var after=function(){el.dom.style[attr]=restoreColor;el.afterFx(o);};var a={};a[attr]={from:color,to:endColor};arguments.callee.anim=this.fxanim(a,o,'color',1,'easeIn',after);});return this;},frame:function(color,count,o){var el=this.getFxEl();o=o||{};el.queueFx(o,function(){color=color||"#C3DAF9";if(color.length==6){color="#"+color;}
count=count||1;var duration=o.duration||1;this.show();var b=this.getBox();var animFn=function(){var proxy=Ext.getBody().createChild({style:{visbility:"hidden",position:"absolute","z-index":"35000",border:"0px solid "+color}});var scale=Ext.isBorderBox?2:1;proxy.animate({top:{from:b.y,to:b.y-20},left:{from:b.x,to:b.x-20},borderWidth:{from:0,to:10},opacity:{from:1,to:0},height:{from:b.height,to:(b.height+(20*scale))},width:{from:b.width,to:(b.width+(20*scale))}},duration,function(){proxy.remove();if(--count>0){animFn();}else{el.afterFx(o);}});};animFn.call(this);});return this;},pause:function(seconds){var el=this.getFxEl();var o={};el.queueFx(o,function(){setTimeout(function(){el.afterFx(o);},seconds*1000);});return this;},fadeIn:function(o){var el=this.getFxEl();o=o||{};el.queueFx(o,function(){this.setOpacity(0);this.fixDisplay();this.dom.style.visibility='visible';var to=o.endOpacity||1;arguments.callee.anim=this.fxanim({opacity:{to:to}},o,null,.5,"easeOut",function(){if(to==1){this.clearOpacity();}
el.afterFx(o);});});return this;},fadeOut:function(o){var el=this.getFxEl();o=o||{};el.queueFx(o,function(){var to=o.endOpacity||0;arguments.callee.anim=this.fxanim({opacity:{to:to}},o,null,.5,"easeOut",function(){if(to===0){if(this.visibilityMode==Ext.Element.DISPLAY||o.useDisplay){this.dom.style.display="none";}else{this.dom.style.visibility="hidden";}
this.clearOpacity();}
el.afterFx(o);});});return this;},scale:function(w,h,o){this.shift(Ext.apply({},o,{width:w,height:h}));return this;},shift:function(o){var el=this.getFxEl();o=o||{};el.queueFx(o,function(){var a={},w=o.width,h=o.height,x=o.x,y=o.y,op=o.opacity;if(w!==undefined){a.width={to:this.adjustWidth(w)};}
if(h!==undefined){a.height={to:this.adjustHeight(h)};}
if(o.left!==undefined){a.left={to:o.left};}
if(o.top!==undefined){a.top={to:o.top};}
if(o.right!==undefined){a.right={to:o.right};}
if(o.bottom!==undefined){a.bottom={to:o.bottom};}
if(x!==undefined||y!==undefined){a.points={to:[x!==undefined?x:this.getX(),y!==undefined?y:this.getY()]};}
if(op!==undefined){a.opacity={to:op};}
if(o.xy!==undefined){a.points={to:o.xy};}
arguments.callee.anim=this.fxanim(a,o,'motion',.35,"easeOut",function(){el.afterFx(o);});});return this;},ghost:function(anchor,o){var el=this.getFxEl();o=o||{};el.queueFx(o,function(){anchor=anchor||"b";var r=this.getFxRestore();var w=this.getWidth(),h=this.getHeight();var st=this.dom.style;var after=function(){if(o.useDisplay){el.setDisplayed(false);}else{el.hide();}
el.clearOpacity();el.setPositioning(r.pos);st.width=r.width;st.height=r.height;el.afterFx(o);};var a={opacity:{to:0},points:{}},pt=a.points;switch(anchor.toLowerCase()){case"t":pt.by=[0,-h];break;case"l":pt.by=[-w,0];break;case"r":pt.by=[w,0];break;case"b":pt.by=[0,h];break;case"tl":pt.by=[-w,-h];break;case"bl":pt.by=[-w,h];break;case"br":pt.by=[w,h];break;case"tr":pt.by=[w,-h];break;}
arguments.callee.anim=this.fxanim(a,o,'motion',.5,"easeOut",after);});return this;},syncFx:function(){this.fxDefaults=Ext.apply(this.fxDefaults||{},{block:false,concurrent:true,stopFx:false});return this;},sequenceFx:function(){this.fxDefaults=Ext.apply(this.fxDefaults||{},{block:false,concurrent:false,stopFx:false});return this;},nextFx:function(){var ef=this.fxQueue[0];if(ef){ef.call(this);}},hasActiveFx:function(){return this.fxQueue&&this.fxQueue[0];},stopFx:function(){if(this.hasActiveFx()){var cur=this.fxQueue[0];if(cur&&cur.anim&&cur.anim.isAnimated()){this.fxQueue=[cur];cur.anim.stop(true);}}
return this;},beforeFx:function(o){if(this.hasActiveFx()&&!o.concurrent){if(o.stopFx){this.stopFx();return true;}
return false;}
return true;},hasFxBlock:function(){var q=this.fxQueue;return q&&q[0]&&q[0].block;},queueFx:function(o,fn){if(!this.fxQueue){this.fxQueue=[];}
if(!this.hasFxBlock()){Ext.applyIf(o,this.fxDefaults);if(!o.concurrent){var run=this.beforeFx(o);fn.block=o.block;this.fxQueue.push(fn);if(run){this.nextFx();}}else{fn.call(this);}}
return this;},fxWrap:function(pos,o,vis){var wrap;if(!o.wrap||!(wrap=Ext.get(o.wrap))){var wrapXY;if(o.fixPosition){wrapXY=this.getXY();}
var div=document.createElement("div");div.style.visibility=vis;wrap=Ext.get(this.dom.parentNode.insertBefore(div,this.dom));wrap.setPositioning(pos);if(wrap.getStyle("position")=="static"){wrap.position("relative");}
this.clearPositioning('auto');wrap.clip();wrap.dom.appendChild(this.dom);if(wrapXY){wrap.setXY(wrapXY);}}
return wrap;},fxUnwrap:function(wrap,pos,o){this.clearPositioning();this.setPositioning(pos);if(!o.wrap){wrap.dom.parentNode.insertBefore(this.dom,wrap.dom);wrap.remove();}},getFxRestore:function(){var st=this.dom.style;return{pos:this.getPositioning(),width:st.width,height:st.height};},afterFx:function(o){if(o.afterStyle){this.applyStyles(o.afterStyle);}
if(o.afterCls){this.addClass(o.afterCls);}
if(o.remove===true){this.remove();}
Ext.callback(o.callback,o.scope,[this]);if(!o.concurrent){this.fxQueue.shift();this.nextFx();}},getFxEl:function(){return Ext.get(this.dom);},fxanim:function(args,opt,animType,defaultDur,defaultEase,cb){animType=animType||'run';opt=opt||{};var anim=Ext.lib.Anim[animType](this.dom,args,(opt.duration||defaultDur)||.35,(opt.easing||defaultEase)||'easeOut',function(){Ext.callback(cb,this);},this);opt.anim=anim;return anim;}};Ext.Fx.resize=Ext.Fx.scale;Ext.apply(Ext.Element.prototype,Ext.Fx);Ext.CompositeElement=function(els){this.elements=[];this.addElements(els);};Ext.CompositeElement.prototype={isComposite:true,addElements:function(els){if(!els)return this;if(typeof els=="string"){els=Ext.Element.selectorFunction(els);}
var yels=this.elements;var index=yels.length-1;for(var i=0,len=els.length;i<len;i++){yels[++index]=Ext.get(els[i]);}
return this;},fill:function(els){this.elements=[];this.add(els);return this;},filter:function(selector){var els=[];this.each(function(el){if(el.is(selector)){els[els.length]=el.dom;}});this.fill(els);return this;},invoke:function(fn,args){var els=this.elements;for(var i=0,len=els.length;i<len;i++){Ext.Element.prototype[fn].apply(els[i],args);}
return this;},add:function(els){if(typeof els=="string"){this.addElements(Ext.Element.selectorFunction(els));}else if(els.length!==undefined){this.addElements(els);}else{this.addElements([els]);}
return this;},each:function(fn,scope){var els=this.elements;for(var i=0,len=els.length;i<len;i++){if(fn.call(scope||els[i],els[i],this,i)===false){break;}}
return this;},item:function(index){return this.elements[index]||null;},first:function(){return this.item(0);},last:function(){return this.item(this.elements.length-1);},getCount:function(){return this.elements.length;},contains:function(el){return this.indexOf(el)!==-1;},indexOf:function(el){return this.elements.indexOf(Ext.get(el));},removeElement:function(el,removeDom){if(Ext.isArray(el)){for(var i=0,len=el.length;i<len;i++){this.removeElement(el[i]);}
return this;}
var index=typeof el=='number'?el:this.indexOf(el);if(index!==-1&&this.elements[index]){if(removeDom){var d=this.elements[index];if(d.dom){d.remove();}else{Ext.removeNode(d);}}
this.elements.splice(index,1);}
return this;},replaceElement:function(el,replacement,domReplace){var index=typeof el=='number'?el:this.indexOf(el);if(index!==-1){if(domReplace){this.elements[index].replaceWith(replacement);}else{this.elements.splice(index,1,Ext.get(replacement))}}
return this;},clear:function(){this.elements=[];}};(function(){Ext.CompositeElement.createCall=function(proto,fnName){if(!proto[fnName]){proto[fnName]=function(){return this.invoke(fnName,arguments);};}};for(var fnName in Ext.Element.prototype){if(typeof Ext.Element.prototype[fnName]=="function"){Ext.CompositeElement.createCall(Ext.CompositeElement.prototype,fnName);}};})();Ext.CompositeElementLite=function(els){Ext.CompositeElementLite.superclass.constructor.call(this,els);this.el=new Ext.Element.Flyweight();};Ext.extend(Ext.CompositeElementLite,Ext.CompositeElement,{addElements:function(els){if(els){if(Ext.isArray(els)){this.elements=this.elements.concat(els);}else{var yels=this.elements;var index=yels.length-1;for(var i=0,len=els.length;i<len;i++){yels[++index]=els[i];}}}
return this;},invoke:function(fn,args){var els=this.elements;var el=this.el;for(var i=0,len=els.length;i<len;i++){el.dom=els[i];Ext.Element.prototype[fn].apply(el,args);}
return this;},item:function(index){if(!this.elements[index]){return null;}
this.el.dom=this.elements[index];return this.el;},addListener:function(eventName,handler,scope,opt){var els=this.elements;for(var i=0,len=els.length;i<len;i++){Ext.EventManager.on(els[i],eventName,handler,scope||els[i],opt);}
return this;},each:function(fn,scope){var els=this.elements;var el=this.el;for(var i=0,len=els.length;i<len;i++){el.dom=els[i];if(fn.call(scope||el,el,this,i)===false){break;}}
return this;},indexOf:function(el){return this.elements.indexOf(Ext.getDom(el));},replaceElement:function(el,replacement,domReplace){var index=typeof el=='number'?el:this.indexOf(el);if(index!==-1){replacement=Ext.getDom(replacement);if(domReplace){var d=this.elements[index];d.parentNode.insertBefore(replacement,d);Ext.removeNode(d);}
this.elements.splice(index,1,replacement);}
return this;}});Ext.CompositeElementLite.prototype.on=Ext.CompositeElementLite.prototype.addListener;if(Ext.DomQuery){Ext.Element.selectorFunction=Ext.DomQuery.select;}
Ext.Element.select=function(selector,unique,root){var els;if(typeof selector=="string"){els=Ext.Element.selectorFunction(selector,root);}else if(selector.length!==undefined){els=selector;}else{throw"Invalid selector";}
if(unique===true){return new Ext.CompositeElement(els);}else{return new Ext.CompositeElementLite(els);}};Ext.select=Ext.Element.select;Ext.data.Connection=function(config){Ext.apply(this,config);this.addEvents("beforerequest","requestcomplete","requestexception");Ext.data.Connection.superclass.constructor.call(this);};Ext.extend(Ext.data.Connection,Ext.util.Observable,{timeout:30000,autoAbort:false,disableCaching:true,disableCachingParam:'_dc',request:function(o){if(this.fireEvent("beforerequest",this,o)!==false){var p=o.params;if(typeof p=="function"){p=p.call(o.scope||window,o);}
if(typeof p=="object"){p=Ext.urlEncode(p);}
if(this.extraParams){var extras=Ext.urlEncode(this.extraParams);p=p?(p+'&'+extras):extras;}
var url=o.url||this.url;if(typeof url=='function'){url=url.call(o.scope||window,o);}
if(o.form){var form=Ext.getDom(o.form);url=url||form.action;var enctype=form.getAttribute("enctype");if(o.isUpload||(enctype&&enctype.toLowerCase()=='multipart/form-data')){return this.doFormUpload(o,p,url);}
var f=Ext.lib.Ajax.serializeForm(form);p=p?(p+'&'+f):f;}
var hs=o.headers;if(this.defaultHeaders){hs=Ext.apply(hs||{},this.defaultHeaders);if(!o.headers){o.headers=hs;}}
var cb={success:this.handleResponse,failure:this.handleFailure,scope:this,argument:{options:o},timeout:o.timeout||this.timeout};var method=o.method||this.method||((p||o.xmlData||o.jsonData)?"POST":"GET");if(method=='GET'&&(this.disableCaching&&o.disableCaching!==false)||o.disableCaching===true){var dcp=o.disableCachingParam||this.disableCachingParam;url+=(url.indexOf('?')!=-1?'&':'?')+dcp+'='+(new Date().getTime());}
if(typeof o.autoAbort=='boolean'){if(o.autoAbort){this.abort();}}else if(this.autoAbort!==false){this.abort();}
if((method=='GET'||o.xmlData||o.jsonData)&&p){url+=(url.indexOf('?')!=-1?'&':'?')+p;p='';}
this.transId=Ext.lib.Ajax.request(method,url,cb,p,o);return this.transId;}else{Ext.callback(o.callback,o.scope,[o,null,null]);return null;}},isLoading:function(transId){if(transId){return Ext.lib.Ajax.isCallInProgress(transId);}else{return this.transId?true:false;}},abort:function(transId){if(transId||this.isLoading()){Ext.lib.Ajax.abort(transId||this.transId);}},handleResponse:function(response){this.transId=false;var options=response.argument.options;response.argument=options?options.argument:null;this.fireEvent("requestcomplete",this,response,options);Ext.callback(options.success,options.scope,[response,options]);Ext.callback(options.callback,options.scope,[options,true,response]);},handleFailure:function(response,e){this.transId=false;var options=response.argument.options;response.argument=options?options.argument:null;this.fireEvent("requestexception",this,response,options,e);Ext.callback(options.failure,options.scope,[response,options]);Ext.callback(options.callback,options.scope,[options,false,response]);},doFormUpload:function(o,ps,url){var id=Ext.id();var frame=document.createElement('iframe');frame.id=id;frame.name=id;frame.className='x-hidden';if(Ext.isIE){frame.src=Ext.SSL_SECURE_URL;}
document.body.appendChild(frame);if(Ext.isIE){document.frames[id].name=id;}
var form=Ext.getDom(o.form);form.target=id;form.method='POST';form.enctype=form.encoding='multipart/form-data';if(url){form.action=url;}
var hiddens,hd;if(ps){hiddens=[];ps=Ext.urlDecode(ps,false);for(var k in ps){if(ps.hasOwnProperty(k)){hd=document.createElement('input');hd.type='hidden';hd.name=k;hd.value=ps[k];form.appendChild(hd);hiddens.push(hd);}}}
function cb(){var r={responseText:'',responseXML:null};r.argument=o?o.argument:null;try{var doc;if(Ext.isIE){doc=frame.contentWindow.document;}else{doc=(frame.contentDocument||window.frames[id].document);}
if(doc&&doc.body){r.responseText=doc.body.innerHTML;}
if(doc&&doc.XMLDocument){r.responseXML=doc.XMLDocument;}else{r.responseXML=doc;}}
catch(e){}
Ext.EventManager.removeListener(frame,'load',cb,this);this.fireEvent("requestcomplete",this,r,o);Ext.callback(o.success,o.scope,[r,o]);Ext.callback(o.callback,o.scope,[o,true,r]);setTimeout(function(){Ext.removeNode(frame);},100);}
Ext.EventManager.on(frame,'load',cb,this);form.submit();if(hiddens){for(var i=0,len=hiddens.length;i<len;i++){Ext.removeNode(hiddens[i]);}}}});Ext.Ajax=new Ext.data.Connection({autoAbort:false,serializeForm:function(form){return Ext.lib.Ajax.serializeForm(form);}});Ext.Updater=Ext.extend(Ext.util.Observable,{constructor:function(el,forceNew){el=Ext.get(el);if(!forceNew&&el.updateManager){return el.updateManager;}
this.el=el;this.defaultUrl=null;this.addEvents("beforeupdate","update","failure");var d=Ext.Updater.defaults;this.sslBlankUrl=d.sslBlankUrl;this.disableCaching=d.disableCaching;this.indicatorText=d.indicatorText;this.showLoadIndicator=d.showLoadIndicator;this.timeout=d.timeout;this.loadScripts=d.loadScripts;this.transaction=null;this.refreshDelegate=this.refresh.createDelegate(this);this.updateDelegate=this.update.createDelegate(this);this.formUpdateDelegate=this.formUpdate.createDelegate(this);if(!this.renderer){this.renderer=this.getDefaultRenderer();}
Ext.Updater.superclass.constructor.call(this);},getDefaultRenderer:function(){return new Ext.Updater.BasicRenderer();},getEl:function(){return this.el;},update:function(url,params,callback,discardUrl){if(this.fireEvent("beforeupdate",this.el,url,params)!==false){var cfg,callerScope;if(typeof url=="object"){cfg=url;url=cfg.url;params=params||cfg.params;callback=callback||cfg.callback;discardUrl=discardUrl||cfg.discardUrl;callerScope=cfg.scope;if(typeof cfg.nocache!="undefined"){this.disableCaching=cfg.nocache;};if(typeof cfg.text!="undefined"){this.indicatorText='<div class="loading-indicator">'+cfg.text+"</div>";};if(typeof cfg.scripts!="undefined"){this.loadScripts=cfg.scripts;};if(typeof cfg.timeout!="undefined"){this.timeout=cfg.timeout;};}
this.showLoading();if(!discardUrl){this.defaultUrl=url;}
if(typeof url=="function"){url=url.call(this);}
var o=Ext.apply({},{url:url,params:(typeof params=="function"&&callerScope)?params.createDelegate(callerScope):params,success:this.processSuccess,failure:this.processFailure,scope:this,callback:undefined,timeout:(this.timeout*1000),disableCaching:this.disableCaching,argument:{"options":cfg,"url":url,"form":null,"callback":callback,"scope":callerScope||window,"params":params}},cfg);this.transaction=Ext.Ajax.request(o);}},formUpdate:function(form,url,reset,callback){if(this.fireEvent("beforeupdate",this.el,form,url)!==false){if(typeof url=="function"){url=url.call(this);}
form=Ext.getDom(form)
this.transaction=Ext.Ajax.request({form:form,url:url,success:this.processSuccess,failure:this.processFailure,scope:this,timeout:(this.timeout*1000),argument:{"url":url,"form":form,"callback":callback,"reset":reset}});this.showLoading.defer(1,this);}},refresh:function(callback){if(this.defaultUrl==null){return;}
this.update(this.defaultUrl,null,callback,true);},startAutoRefresh:function(interval,url,params,callback,refreshNow){if(refreshNow){this.update(url||this.defaultUrl,params,callback,true);}
if(this.autoRefreshProcId){clearInterval(this.autoRefreshProcId);}
this.autoRefreshProcId=setInterval(this.update.createDelegate(this,[url||this.defaultUrl,params,callback,true]),interval*1000);},stopAutoRefresh:function(){if(this.autoRefreshProcId){clearInterval(this.autoRefreshProcId);delete this.autoRefreshProcId;}},isAutoRefreshing:function(){return this.autoRefreshProcId?true:false;},showLoading:function(){if(this.showLoadIndicator){this.el.update(this.indicatorText);}},processSuccess:function(response){this.transaction=null;if(response.argument.form&&response.argument.reset){try{response.argument.form.reset();}catch(e){}}
if(this.loadScripts){this.renderer.render(this.el,response,this,this.updateComplete.createDelegate(this,[response]));}else{this.renderer.render(this.el,response,this);this.updateComplete(response);}},updateComplete:function(response){this.fireEvent("update",this.el,response);if(typeof response.argument.callback=="function"){response.argument.callback.call(response.argument.scope,this.el,true,response,response.argument.options);}},processFailure:function(response){this.transaction=null;this.fireEvent("failure",this.el,response);if(typeof response.argument.callback=="function"){response.argument.callback.call(response.argument.scope,this.el,false,response,response.argument.options);}},setRenderer:function(renderer){this.renderer=renderer;},getRenderer:function(){return this.renderer;},setDefaultUrl:function(defaultUrl){this.defaultUrl=defaultUrl;},abort:function(){if(this.transaction){Ext.Ajax.abort(this.transaction);}},isUpdating:function(){if(this.transaction){return Ext.Ajax.isLoading(this.transaction);}
return false;}});Ext.Updater.defaults={timeout:30,loadScripts:false,sslBlankUrl:(Ext.SSL_SECURE_URL||"javascript:false"),disableCaching:false,showLoadIndicator:true,indicatorText:'<div class="loading-indicator">Loading...</div>'};Ext.Updater.updateElement=function(el,url,params,options){var um=Ext.get(el).getUpdater();Ext.apply(um,options);um.update(url,params,options?options.callback:null);};Ext.Updater.BasicRenderer=function(){};Ext.Updater.BasicRenderer.prototype={render:function(el,response,updateManager,callback){el.update(response.responseText,updateManager.loadScripts,callback);}};Ext.UpdateManager=Ext.Updater;(function(){function xf(format){var args=Array.prototype.slice.call(arguments,1);return format.replace(/\{(\d+)\}/g,function(m,i){return args[i];});}
Date.formatCodeToRegex=function(character,currentGroup){var p=Date.parseCodes[character];if(p){p=Ext.type(p)=='function'?p():p;Date.parseCodes[character]=p;}
return p?Ext.applyIf({c:p.c?xf(p.c,currentGroup||"{0}"):p.c},p):{g:0,c:null,s:Ext.escapeRe(character)}}
var $f=Date.formatCodeToRegex;Ext.apply(Date,{parseFunctions:{count:0},parseRegexes:[],formatFunctions:{count:0},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],y2kYear:50,MILLI:"ms",SECOND:"s",MINUTE:"mi",HOUR:"h",DAY:"d",MONTH:"mo",YEAR:"y",dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNumbers:{Jan:0,Feb:1,Mar:2,Apr:3,May:4,Jun:5,Jul:6,Aug:7,Sep:8,Oct:9,Nov:10,Dec:11},getShortMonthName:function(month){return Date.monthNames[month].substring(0,3);},getShortDayName:function(day){return Date.dayNames[day].substring(0,3);},getMonthNumber:function(name){return Date.monthNumbers[name.substring(0,1).toUpperCase()+name.substring(1,3).toLowerCase()];},formatCodes:{d:"String.leftPad(this.getDate(), 2, '0')",D:"Date.getShortDayName(this.getDay())",j:"this.getDate()",l:"Date.dayNames[this.getDay()]",N:"(this.getDay() ? this.getDay() : 7)",S:"this.getSuffix()",w:"this.getDay()",z:"this.getDayOfYear()",W:"String.leftPad(this.getWeekOfYear(), 2, '0')",F:"Date.monthNames[this.getMonth()]",m:"String.leftPad(this.getMonth() + 1, 2, '0')",M:"Date.getShortMonthName(this.getMonth())",n:"(this.getMonth() + 1)",t:"this.getDaysInMonth()",L:"(this.isLeapYear() ? 1 : 0)",o:"(this.getFullYear() + (this.getWeekOfYear() == 1 && this.getMonth() > 0 ? +1 : (this.getWeekOfYear() >= 52 && this.getMonth() < 11 ? -1 : 0)))",Y:"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 c="Y-m-dTH:i:sP",code=[],i=0,l=c.length;i<l;++i){var e=c.charAt(i);code.push(e=="T"?"'T'":Date.getFormatCode(e));}
return code.join(" + ");},U:"Math.round(this.getTime() / 1000)"},parseDate:function(input,format){var p=Date.parseFunctions;if(p[format]==null){Date.createParser(format);}
var func=p[format];return Date[func](input);},getFormatCode:function(character){var f=Date.formatCodes[character];if(f){f=Ext.type(f)=='function'?f():f;Date.formatCodes[character]=f;}
return f||("'"+String.escape(character)+"'");},createNewFormat:function(format){var funcName="format"+Date.formatFunctions.count++,code="Date.prototype."+funcName+" = function(){return ",special=false,ch='';Date.formatFunctions[format]=funcName;for(var i=0;i<format.length;++i){ch=format.charAt(i);if(!special&&ch=="\\"){special=true;}
else if(special){special=false;code+="'"+String.escape(ch)+"' + ";}
else{code+=Date.getFormatCode(ch)+" + ";}}
eval(code.substring(0,code.length-3)+";}");},createParser:function(){var code=["Date.{0} = function(input){","var y, m, d, h = 0, i = 0, s = 0, ms = 0, o, z, u, v;","input = String(input);","d = new Date();","y = d.getFullYear();","m = d.getMonth();","d = d.getDate();","var results = input.match(Date.parseRegexes[{1}]);","if(results && results.length > 0){","{2}","if(u){","v = new Date(u * 1000);","}else if (y >= 0 && m >= 0 && d > 0 && h >= 0 && i >= 0 && s >= 0 && ms >= 0){","v = new Date(y, m, d, h, i, s, ms);","}else if (y >= 0 && m >= 0 && d > 0 && h >= 0 && i >= 0 && s >= 0){","v = new Date(y, m, d, h, i, s);","}else if (y >= 0 && m >= 0 && d > 0 && h >= 0 && i >= 0){","v = new Date(y, m, d, h, i);","}else if (y >= 0 && m >= 0 && d > 0 && h >= 0){","v = new Date(y, m, d, h);","}else if (y >= 0 && m >= 0 && d > 0){","v = new Date(y, m, d);","}else if (y >= 0 && m >= 0){","v = new Date(y, m);","}else if (y >= 0){","v = new Date(y);","}","}","return (v && (z != null || o != null))?"
+" (Ext.type(z) == 'number' ? v.add(Date.SECOND, -v.getTimezoneOffset() * 60 - z) :"
+" v.add(Date.MINUTE, -v.getTimezoneOffset() + (sn == '+'? -1 : 1) * (hr * 60 + mn))) : v;","}"].join('\n');return function(format){var funcName="parse"+Date.parseFunctions.count++,regexNum=Date.parseRegexes.length,currentGroup=1,calc="",regex="",special=false,ch="";Date.parseFunctions[format]=funcName;for(var i=0;i<format.length;++i){ch=format.charAt(i);if(!special&&ch=="\\"){special=true;}
else if(special){special=false;regex+=String.escape(ch);}
else{var obj=$f(ch,currentGroup);currentGroup+=obj.g;regex+=obj.s;if(obj.g&&obj.c){calc+=obj.c;}}}
Date.parseRegexes[regexNum]=new RegExp("^"+regex+"$","i");eval(xf(code,funcName,regexNum,calc));}}(),parseCodes:{d:{g:1,c:"d = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},j:{g:1,c:"d = parseInt(results[{0}], 10);\n",s:"(\\d{1,2})"},D:function(){for(var a=[],i=0;i<7;a.push(Date.getShortDayName(i)),++i);return{g:0,c:null,s:"(?:"+a.join("|")+")"}},l:function(){return{g:0,c:null,s:"(?:"+Date.dayNames.join("|")+")"}},N:{g:0,c:null,s:"[1-7]"},S:{g:0,c:null,s:"(?:st|nd|rd|th)"},w:{g:0,c:null,s:"[0-6]"},z:{g:0,c:null,s:"(?:\\d{1,3})"},W:{g:0,c:null,s:"(?:\\d{2})"},F:function(){return{g:1,c:"m = parseInt(Date.getMonthNumber(results[{0}]), 10);\n",s:"("+Date.monthNames.join("|")+")"}},M:function(){for(var a=[],i=0;i<12;a.push(Date.getShortMonthName(i)),++i);return Ext.applyIf({s:"("+a.join("|")+")"},$f("F"));},m:{g:1,c:"m = parseInt(results[{0}], 10) - 1;\n",s:"(\\d{2})"},n:{g:1,c:"m = parseInt(results[{0}], 10) - 1;\n",s:"(\\d{1,2})"},t:{g:0,c:null,s:"(?:\\d{2})"},L:{g:0,c:null,s:"(?:1|0)"},o:function(){return $f("Y");},Y:{g:1,c:"y = parseInt(results[{0}], 10);\n",s:"(\\d{4})"},y:{g:1,c:"var ty = parseInt(results[{0}], 10);\n"
+"y = ty > Date.y2kYear ? 1900 + ty : 2000 + ty;\n",s:"(\\d{1,2})"},a:{g:1,c:"if (results[{0}] == 'am') {\n"
+"if (h == 12) { h = 0; }\n"
+"} else { if (h < 12) { h += 12; }}",s:"(am|pm)"},A:{g:1,c:"if (results[{0}] == 'AM') {\n"
+"if (h == 12) { h = 0; }\n"
+"} else { if (h < 12) { h += 12; }}",s:"(AM|PM)"},g:function(){return $f("G");},G:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(\\d{1,2})"},h:function(){return $f("H");},H:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},i:{g:1,c:"i = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},s:{g:1,c:"s = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},u:{g:1,c:"ms = results[{0}]; ms = parseInt(ms, 10)/Math.pow(10, ms.length - 3);\n",s:"(\\d+)"},O:{g:1,c:["o = results[{0}];","var sn = o.substring(0,1);","var hr = o.substring(1,3)*1 + Math.floor(o.substring(3,5) / 60);","var 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);","var hr = o.substring(1,3)*1 + Math.floor(o.substring(4,6) / 60);","var 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:"z = results[{0}] * 1;\n"
+"z = (-43200 <= z && z <= 50400)? z : null;\n",s:"([+\-]?\\d{1,5})"},c:function(){var calc=[],arr=[$f("Y",1),$f("m",2),$f("d",3),$f("h",4),$f("i",5),$f("s",6),{c:"ms = (results[7] || '.0').substring(1); ms = parseInt(ms, 10)/Math.pow(10, ms.length - 3);\n"},{c:["if(results[9] == 'Z'){","z = 0;","}else{",$f("P",9).c,"}"].join('\n')}];for(var i=0,l=arr.length;i<l;++i){calc.push(arr[i].c);}
return{g:1,c:calc.join(""),s:arr[0].s+"-"+arr[1].s+"-"+arr[2].s+"T"+arr[3].s+":"+arr[4].s+":"+arr[5].s
+"((\.|,)\\d+)?"
+"(Z|([+\-]\\d{2}:\\d{2}))"}},U:{g:1,c:"u = parseInt(results[{0}], 10);\n",s:"(-?\\d+)"}}});}());Ext.apply(Date.prototype,{dateFormat:function(format){if(Date.formatFunctions[format]==null){Date.createNewFormat(format);}
var func=Date.formatFunctions[format];return this[func]();},getTimezone:function(){return this.toString().replace(/^.* (?:\((.*)\)|([A-Z]{1,4})(?:[\-+][0-9]{4})?(?: -?\d+)?)$/,"$1$2").replace(/[^A-Z]/g,"");},getGMTOffset:function(colon){return(this.getTimezoneOffset()>0?"-":"+")
+String.leftPad(Math.floor(Math.abs(this.getTimezoneOffset())/60),2,"0")
+(colon?":":"")
+String.leftPad(Math.abs(this.getTimezoneOffset()%60),2,"0");},getDayOfYear:function(){var num=0;Date.daysInMonth[1]=this.isLeapYear()?29:28;for(var i=0;i<this.getMonth();++i){num+=Date.daysInMonth[i];}
return num+this.getDate()-1;},getWeekOfYear:function(){var ms1d=864e5,ms7d=7*ms1d;return function(){var DC3=Date.UTC(this.getFullYear(),this.getMonth(),this.getDate()+3)/ms1d,AWN=Math.floor(DC3/7),Wyr=new Date(AWN*ms7d).getUTCFullYear();return AWN-Math.floor(Date.UTC(Wyr,0,7)/ms7d)+1;}}(),isLeapYear:function(){var year=this.getFullYear();return!!((year&3)==0&&(year%100||(year%400==0&&year)));},getFirstDayOfMonth:function(){var day=(this.getDay()-(this.getDate()-1))%7;return(day<0)?(day+7):day;},getLastDayOfMonth:function(){var day=(this.getDay()+(Date.daysInMonth[this.getMonth()]-this.getDate()))%7;return(day<0)?(day+7):day;},getFirstDateOfMonth:function(){return new Date(this.getFullYear(),this.getMonth(),1);},getLastDateOfMonth:function(){return new Date(this.getFullYear(),this.getMonth(),this.getDaysInMonth());},getDaysInMonth:function(){Date.daysInMonth[1]=this.isLeapYear()?29:28;return Date.daysInMonth[this.getMonth()];},getSuffix:function(){switch(this.getDate()){case 1:case 21:case 31:return"st";case 2:case 22:return"nd";case 3:case 23:return"rd";default:return"th";}},clone:function(){return new Date(this.getTime());},clearTime:function(clone){if(clone){return this.clone().clearTime();}
this.setHours(0);this.setMinutes(0);this.setSeconds(0);this.setMilliseconds(0);return this;},add:function(interval,value){var d=this.clone();if(!interval||value===0)return d;switch(interval.toLowerCase()){case Date.MILLI:d.setMilliseconds(this.getMilliseconds()+value);break;case Date.SECOND:d.setSeconds(this.getSeconds()+value);break;case Date.MINUTE:d.setMinutes(this.getMinutes()+value);break;case Date.HOUR:d.setHours(this.getHours()+value);break;case Date.DAY:d.setDate(this.getDate()+value);break;case Date.MONTH:var day=this.getDate();if(day>28){day=Math.min(day,this.getFirstDateOfMonth().add('mo',value).getLastDateOfMonth().getDate());}
d.setDate(day);d.setMonth(this.getMonth()+value);break;case Date.YEAR:d.setFullYear(this.getFullYear()+value);break;}
return d;},between:function(start,end){var t=this.getTime();return start.getTime()<=t&&t<=end.getTime();}});Date.prototype.format=Date.prototype.dateFormat;if(Ext.isSafari){Date.brokenSetMonth=Date.prototype.setMonth;Date.prototype.setMonth=function(num){if(num<=-1){var n=Math.ceil(-num);var back_year=Math.ceil(n/12);var month=(n%12)?12-n%12:0;this.setFullYear(this.getFullYear()-back_year);return Date.brokenSetMonth.call(this,month);}else{return Date.brokenSetMonth.apply(this,arguments);}};}
Ext.util.DelayedTask=function(fn,scope,args){var id=null,d,t;var call=function(){var now=new Date().getTime();if(now-t>=d){clearInterval(id);id=null;fn.apply(scope,args||[]);}};this.delay=function(delay,newFn,newScope,newArgs){if(id&&delay!=d){this.cancel();}
d=delay;t=new Date().getTime();fn=newFn||fn;scope=newScope||scope;args=newArgs||args;if(!id){id=setInterval(call,d);}};this.cancel=function(){if(id){clearInterval(id);id=null;}};};Ext.util.TaskRunner=function(interval){interval=interval||10;var tasks=[],removeQueue=[];var id=0;var running=false;var stopThread=function(){running=false;clearInterval(id);id=0;};var startThread=function(){if(!running){running=true;id=setInterval(runTasks,interval);}};var removeTask=function(t){removeQueue.push(t);if(t.onStop){t.onStop.apply(t.scope||t);}};var runTasks=function(){if(removeQueue.length>0){for(var i=0,len=removeQueue.length;i<len;i++){tasks.remove(removeQueue[i]);}
removeQueue=[];if(tasks.length<1){stopThread();return;}}
var now=new Date().getTime();for(var i=0,len=tasks.length;i<len;++i){var t=tasks[i];var itime=now-t.taskRunTime;if(t.interval<=itime){var rt=t.run.apply(t.scope||t,t.args||[++t.taskRunCount]);t.taskRunTime=now;if(rt===false||t.taskRunCount===t.repeat){removeTask(t);return;}}
if(t.duration&&t.duration<=(now-t.taskStartTime)){removeTask(t);}}};this.start=function(task){tasks.push(task);task.taskStartTime=new Date().getTime();task.taskRunTime=0;task.taskRunCount=0;startThread();return task;};this.stop=function(task){removeTask(task);return task;};this.stopAll=function(){stopThread();for(var i=0,len=tasks.length;i<len;i++){if(tasks[i].onStop){tasks[i].onStop();}}
tasks=[];removeQueue=[];};};Ext.TaskMgr=new Ext.util.TaskRunner();Ext.util.MixedCollection=function(allowFunctions,keyFn){this.items=[];this.map={};this.keys=[];this.length=0;this.addEvents("clear","add","replace","remove","sort");this.allowFunctions=allowFunctions===true;if(keyFn){this.getKey=keyFn;}
Ext.util.MixedCollection.superclass.constructor.call(this);};Ext.extend(Ext.util.MixedCollection,Ext.util.Observable,{allowFunctions:false,add:function(key,o){if(arguments.length==1){o=arguments[0];key=this.getKey(o);}
if(typeof key=="undefined"||key===null){this.length++;this.items.push(o);this.keys.push(null);}else{var old=this.map[key];if(old){return this.replace(key,o);}
this.length++;this.items.push(o);this.map[key]=o;this.keys.push(key);}
this.fireEvent("add",this.length-1,o,key);return o;},getKey:function(o){return o.id;},replace:function(key,o){if(arguments.length==1){o=arguments[0];key=this.getKey(o);}
var old=this.item(key);if(typeof key=="undefined"||key===null||typeof old=="undefined"){return this.add(key,o);}
var index=this.indexOfKey(key);this.items[index]=o;this.map[key]=o;this.fireEvent("replace",key,old,o);return o;},addAll:function(objs){if(arguments.length>1||Ext.isArray(objs)){var args=arguments.length>1?arguments:objs;for(var i=0,len=args.length;i<len;i++){this.add(args[i]);}}else{for(var key in objs){if(this.allowFunctions||typeof objs[key]!="function"){this.add(key,objs[key]);}}}},each:function(fn,scope){var items=[].concat(this.items);for(var i=0,len=items.length;i<len;i++){if(fn.call(scope||items[i],items[i],i,len)===false){break;}}},eachKey:function(fn,scope){for(var i=0,len=this.keys.length;i<len;i++){fn.call(scope||window,this.keys[i],this.items[i],i,len);}},find:function(fn,scope){for(var i=0,len=this.items.length;i<len;i++){if(fn.call(scope||window,this.items[i],this.keys[i])){return this.items[i];}}
return null;},insert:function(index,key,o){if(arguments.length==2){o=arguments[1];key=this.getKey(o);}
if(index>=this.length){return this.add(key,o);}
this.length++;this.items.splice(index,0,o);if(typeof key!="undefined"&&key!=null){this.map[key]=o;}
this.keys.splice(index,0,key);this.fireEvent("add",index,o,key);return o;},remove:function(o){return this.removeAt(this.indexOf(o));},removeAt:function(index){if(index<this.length&&index>=0){this.length--;var o=this.items[index];this.items.splice(index,1);var key=this.keys[index];if(typeof key!="undefined"){delete this.map[key];}
this.keys.splice(index,1);this.fireEvent("remove",o,key);return o;}
return false;},removeKey:function(key){return this.removeAt(this.indexOfKey(key));},getCount:function(){return this.length;},indexOf:function(o){return this.items.indexOf(o);},indexOfKey:function(key){return this.keys.indexOf(key);},item:function(key){var item=typeof this.map[key]!="undefined"?this.map[key]:this.items[key];return typeof item!='function'||this.allowFunctions?item:null;},itemAt:function(index){return this.items[index];},key:function(key){return this.map[key];},contains:function(o){return this.indexOf(o)!=-1;},containsKey:function(key){return typeof this.map[key]!="undefined";},clear:function(){this.length=0;this.items=[];this.keys=[];this.map={};this.fireEvent("clear");},first:function(){return this.items[0];},last:function(){return this.items[this.length-1];},_sort:function(property,dir,fn){var dsc=String(dir).toUpperCase()=="DESC"?-1:1;fn=fn||function(a,b){return a-b;};var c=[],k=this.keys,items=this.items;for(var i=0,len=items.length;i<len;i++){c[c.length]={key:k[i],value:items[i],index:i};}
c.sort(function(a,b){var v=fn(a[property],b[property])*dsc;if(v==0){v=(a.index<b.index?-1:1);}
return v;});for(var i=0,len=c.length;i<len;i++){items[i]=c[i].value;k[i]=c[i].key;}
this.fireEvent("sort",this);},sort:function(dir,fn){this._sort("value",dir,fn);},keySort:function(dir,fn){this._sort("key",dir,fn||function(a,b){var v1=String(a).toUpperCase(),v2=String(b).toUpperCase();return v1>v2?1:(v1<v2?-1:0);});},getRange:function(start,end){var items=this.items;if(items.length<1){return[];}
start=start||0;end=Math.min(typeof end=="undefined"?this.length-1:end,this.length-1);var r=[];if(start<=end){for(var i=start;i<=end;i++){r[r.length]=items[i];}}else{for(var i=start;i>=end;i--){r[r.length]=items[i];}}
return r;},filter:function(property,value,anyMatch,caseSensitive){if(Ext.isEmpty(value,false)){return this.clone();}
value=this.createValueMatcher(value,anyMatch,caseSensitive);return this.filterBy(function(o){return o&&value.test(o[property]);});},filterBy:function(fn,scope){var r=new Ext.util.MixedCollection();r.getKey=this.getKey;var k=this.keys,it=this.items;for(var i=0,len=it.length;i<len;i++){if(fn.call(scope||this,it[i],k[i])){r.add(k[i],it[i]);}}
return r;},findIndex:function(property,value,start,anyMatch,caseSensitive){if(Ext.isEmpty(value,false)){return-1;}
value=this.createValueMatcher(value,anyMatch,caseSensitive);return this.findIndexBy(function(o){return o&&value.test(o[property]);},null,start);},findIndexBy:function(fn,scope,start){var k=this.keys,it=this.items;for(var i=(start||0),len=it.length;i<len;i++){if(fn.call(scope||this,it[i],k[i])){return i;}}
if(typeof start=='number'&&start>0){for(var i=0;i<start;i++){if(fn.call(scope||this,it[i],k[i])){return i;}}}
return-1;},createValueMatcher:function(value,anyMatch,caseSensitive){if(!value.exec){value=String(value);value=new RegExp((anyMatch===true?'':'^')+Ext.escapeRe(value),caseSensitive?'':'i');}
return value;},clone:function(){var r=new Ext.util.MixedCollection();var k=this.keys,it=this.items;for(var i=0,len=it.length;i<len;i++){r.add(k[i],it[i]);}
r.getKey=this.getKey;return r;}});Ext.util.MixedCollection.prototype.get=Ext.util.MixedCollection.prototype.item;Ext.util.JSON=new(function(){var useHasOwn=!!{}.hasOwnProperty;var pad=function(n){return n<10?"0"+n:n;};var m={"\b":'\\b',"\t":'\\t',"\n":'\\n',"\f":'\\f',"\r":'\\r','"':'\\"',"\\":'\\\\'};var encodeString=function(s){if(/["\\\x00-\x1f]/.test(s)){return'"'+s.replace(/([\x00-\x1f\\"])/g,function(a,b){var c=m[b];if(c){return c;}
c=b.charCodeAt();return"\\u00"+
Math.floor(c/16).toString(16)+
(c%16).toString(16);})+'"';}
return'"'+s+'"';};var encodeArray=function(o){var a=["["],b,i,l=o.length,v;for(i=0;i<l;i+=1){v=o[i];switch(typeof v){case"undefined":case"function":case"unknown":break;default:if(b){a.push(',');}
a.push(v===null?"null":Ext.util.JSON.encode(v));b=true;}}
a.push("]");return a.join("");};this.encodeDate=function(o){return'"'+o.getFullYear()+"-"+
pad(o.getMonth()+1)+"-"+
pad(o.getDate())+"T"+
pad(o.getHours())+":"+
pad(o.getMinutes())+":"+
pad(o.getSeconds())+'"';};this.encode=function(o){if(typeof o=="undefined"||o===null){return"null";}else if(Ext.isArray(o)){return encodeArray(o);}else if(Ext.isDate(o)){return Ext.util.JSON.encodeDate(o);}else if(typeof o=="string"){return encodeString(o);}else if(typeof o=="number"){return isFinite(o)?String(o):"null";}else if(typeof o=="boolean"){return String(o);}else{var a=["{"],b,i,v;for(i in o){if(!useHasOwn||o.hasOwnProperty(i)){v=o[i];switch(typeof v){case"undefined":case"function":case"unknown":break;default:if(b){a.push(',');}
a.push(this.encode(i),":",v===null?"null":this.encode(v));b=true;}}}
a.push("}");return a.join("");}};this.decode=function(json){return eval("("+json+')');};})();Ext.encode=Ext.util.JSON.encode;Ext.decode=Ext.util.JSON.decode;Ext.util.Format=function(){var trimRe=/^\s+|\s+$/g;return{ellipsis:function(value,len){if(value&&value.length>len){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);}}(),nl2br:function(v){return v===undefined||v===null?'':v.replace(/\n/g,'<br/>');}};}();Ext.XTemplate=function(){Ext.XTemplate.superclass.constructor.apply(this,arguments);var s=this.html;s=['<tpl>',s,'</tpl>'].join('');var re=/<tpl\b[^>]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>/;var nameRe=/^<tpl\b[^>]*?for="(.*?)"/;var ifRe=/^<tpl\b[^>]*?if="(.*?)"/;var execRe=/^<tpl\b[^>]*?exec="(.*?)"/;var m,id=0;var tpls=[];while(m=s.match(re)){var m2=m[0].match(nameRe);var m3=m[0].match(ifRe);var m4=m[0].match(execRe);var exp=null,fn=null,exec=null;var name=m2&&m2[1]?m2[1]:'';if(m3){exp=m3&&m3[1]?m3[1]:null;if(exp){fn=new Function('values','parent','xindex','xcount','with(values){ return '+(Ext.util.Format.htmlDecode(exp))+'; }');}}
if(m4){exp=m4&&m4[1]?m4[1]:null;if(exp){exec=new Function('values','parent','xindex','xcount','with(values){ '+(Ext.util.Format.htmlDecode(exp))+'; }');}}
if(name){switch(name){case'.':name=new Function('values','parent','with(values){ return values; }');break;case'..':name=new Function('values','parent','with(values){ return parent; }');break;default:name=new Function('values','parent','with(values){ return '+name+'; }');}}
tpls.push({id:id,target:name,exec:exec,test:fn,body:m[1]||''});s=s.replace(m[0],'{xtpl'+id+'}');++id;}
for(var i=tpls.length-1;i>=0;--i){this.compileTpl(tpls[i]);}
this.master=tpls[tpls.length-1];this.tpls=tpls;};Ext.extend(Ext.XTemplate,Ext.Template,{re:/\{([\w-\.\#]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?(\s?[\+\-\*\\]\s?[\d\.\+\-\*\\\(\)]+)?\}/g,codeRe:/\{\[((?:\\\]|.|\n)*?)\]\}/g,applySubTemplate:function(id,values,parent,xindex,xcount){var t=this.tpls[id];if(t.test&&!t.test.call(this,values,parent,xindex,xcount)){return'';}
if(t.exec&&t.exec.call(this,values,parent,xindex,xcount)){return'';}
var vs=t.target?t.target.call(this,values,parent):values;parent=t.target?values:parent;if(t.target&&Ext.isArray(vs)){var buf=[];for(var i=0,len=vs.length;i<len;i++){buf[buf.length]=t.compiled.call(this,vs[i],parent,i+1,len);}
return buf.join('');}
return t.compiled.call(this,vs,parent,xindex,xcount);},compileTpl:function(tpl){var fm=Ext.util.Format;var useF=this.disableFormats!==true;var sep=Ext.isGecko?"+":",";var fn=function(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+"'";};var codeFn=function(m,code){return"'"+sep+'('+code+')'+sep+"'";};var body;if(Ext.isGecko){body="tpl.compiled = function(values, parent, xindex, xcount){ return '"+
tpl.body.replace(/(\r\n|\n)/g,'\\n').replace(/'/g,"\\'").replace(this.re,fn).replace(this.codeRe,codeFn)+"';};";}else{body=["tpl.compiled = function(values, parent, xindex, xcount){ return ['"];body.push(tpl.body.replace(/(\r\n|\n)/g,'\\n').replace(/'/g,"\\'").replace(this.re,fn).replace(this.codeRe,codeFn));body.push("'].join('');};");body=body.join('');}
eval(body);return this;},applyTemplate:function(values){return this.master.compiled.call(this,values,{},1,1);},compile:function(){return this;}});Ext.XTemplate.prototype.apply=Ext.XTemplate.prototype.applyTemplate;Ext.XTemplate.from=function(el){el=Ext.getDom(el);return new Ext.XTemplate(el.value||el.innerHTML);};Ext.util.CSS=function(){var rules=null;var doc=document;var camelRe=/(-[a-z])/gi;var camelFn=function(m,a){return a.charAt(1).toUpperCase();};return{createStyleSheet:function(cssText,id){var ss;var head=doc.getElementsByTagName("head")[0];var rules=doc.createElement("style");rules.setAttribute("type","text/css");if(id){rules.setAttribute("id",id);}
if(Ext.isIE){head.appendChild(rules);ss=rules.styleSheet;ss.cssText=cssText;}else{try{rules.appendChild(doc.createTextNode(cssText));}catch(e){rules.cssText=cssText;}
head.appendChild(rules);ss=rules.styleSheet?rules.styleSheet:(rules.sheet||doc.styleSheets[doc.styleSheets.length-1]);}
this.cacheStyleSheet(ss);return ss;},removeStyleSheet:function(id){var existing=doc.getElementById(id);if(existing){existing.parentNode.removeChild(existing);}},swapStyleSheet:function(id,url){this.removeStyleSheet(id);var ss=doc.createElement("link");ss.setAttribute("rel","stylesheet");ss.setAttribute("type","text/css");ss.setAttribute("id",id);ss.setAttribute("href",url);doc.getElementsByTagName("head")[0].appendChild(ss);},refreshCache:function(){return this.getRules(true);},cacheStyleSheet:function(ss){if(!rules){rules={};}
try{var ssRules=ss.cssRules||ss.rules;for(var j=ssRules.length-1;j>=0;--j){rules[ssRules[j].selectorText]=ssRules[j];}}catch(e){}},getRules:function(refreshCache){if(rules==null||refreshCache){rules={};var ds=doc.styleSheets;for(var i=0,len=ds.length;i<len;i++){try{this.cacheStyleSheet(ds[i]);}catch(e){}}}
return rules;},getRule:function(selector,refreshCache){var rs=this.getRules(refreshCache);if(!Ext.isArray(selector)){return rs[selector];}
for(var i=0;i<selector.length;i++){if(rs[selector[i]]){return rs[selector[i]];}}
return null;},updateRule:function(selector,property,value){if(!Ext.isArray(selector)){var rule=this.getRule(selector);if(rule){rule.style[property.replace(camelRe,camelFn)]=value;return true;}}else{for(var i=0;i<selector.length;i++){if(this.updateRule(selector[i],property,value)){return true;}}}
return false;}};}();Ext.util.ClickRepeater=function(el,config)
{this.el=Ext.get(el);this.el.unselectable();Ext.apply(this,config);this.addEvents("mousedown","click","mouseup");this.el.on("mousedown",this.handleMouseDown,this);if(this.preventDefault||this.stopDefault){this.el.on("click",function(e){if(this.preventDefault){e.preventDefault();}
if(this.stopDefault){e.stopEvent();}},this);}
if(this.handler){this.on("click",this.handler,this.scope||this);}
Ext.util.ClickRepeater.superclass.constructor.call(this);};Ext.extend(Ext.util.ClickRepeater,Ext.util.Observable,{interval:20,delay:250,preventDefault:true,stopDefault:false,timer:0,destroy:function(){Ext.destroy(this.el);this.purgeListeners();},handleMouseDown:function(){clearTimeout(this.timer);this.el.blur();if(this.pressClass){this.el.addClass(this.pressClass);}
this.mousedownTime=new Date();Ext.getDoc().on("mouseup",this.handleMouseUp,this);this.el.on("mouseout",this.handleMouseOut,this);this.fireEvent("mousedown",this);this.fireEvent("click",this);if(this.accelerate){this.delay=400;}
this.timer=this.click.defer(this.delay||this.interval,this);},click:function(){this.fireEvent("click",this);this.timer=this.click.defer(this.accelerate?this.easeOutExpo(this.mousedownTime.getElapsed(),400,-390,12000):this.interval,this);},easeOutExpo:function(t,b,c,d){return(t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b;},handleMouseOut:function(){clearTimeout(this.timer);if(this.pressClass){this.el.removeClass(this.pressClass);}
this.el.on("mouseover",this.handleMouseReturn,this);},handleMouseReturn:function(){this.el.un("mouseover",this.handleMouseReturn,this);if(this.pressClass){this.el.addClass(this.pressClass);}
this.click();},handleMouseUp:function(){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(el,config){this.el=Ext.get(el);Ext.apply(this,config);if(!this.disabled){this.disabled=true;this.enable();}};Ext.KeyNav.prototype={disabled:false,defaultEventAction:"stopEvent",forceKeyDown:false,prepareEvent:function(e){var k=e.getKey();var h=this.keyToHandler[k];if(Ext.isSafari2&&h&&k>=37&&k<=40){e.stopEvent();}},relay:function(e){var k=e.getKey();var h=this.keyToHandler[k];if(h&&this[h]){if(this.doRelay(e,this[h],h)!==true){e[this.defaultEventAction]();}}},doRelay:function(e,h,hname){return h.call(this.scope||this,e);},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.forceKeyDown||Ext.isIE||Ext.isSafari3||Ext.isAir){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.forceKeyDown||Ext.isIE||Ext.isSafari3||Ext.isAir){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;}}};Ext.KeyMap=function(el,config,eventName){this.el=Ext.get(el);this.eventName=eventName||"keydown";this.bindings=[];if(config){this.addBinding(config);}
this.enable();};Ext.KeyMap.prototype={stopEvent:false,addBinding:function(config){if(Ext.isArray(config)){for(var i=0,len=config.length;i<len;i++){this.addBinding(config[i]);}
return;}
var keyCode=config.key,shift=config.shift,ctrl=config.ctrl,alt=config.alt,fn=config.fn||config.handler,scope=config.scope;if(config.stopEvent){this.stopEvent=config.stopEvent;}
if(typeof keyCode=="string"){var ks=[];var keyString=keyCode.toUpperCase();for(var j=0,len=keyString.length;j<len;j++){ks.push(keyString.charCodeAt(j));}
keyCode=ks;}
var keyArray=Ext.isArray(keyCode);var handler=function(e){if((!shift||e.shiftKey)&&(!ctrl||e.ctrlKey)&&(!alt||e.altKey)){var k=e.getKey();if(keyArray){for(var i=0,len=keyCode.length;i<len;i++){if(keyCode[i]==k){if(this.stopEvent){e.stopEvent();}
fn.call(scope||window,k,e);return;}}}else{if(k==keyCode){if(this.stopEvent){e.stopEvent();}
fn.call(scope||window,k,e);}}}};this.bindings.push(handler);},on:function(key,fn,scope){var keyCode,shift,ctrl,alt;if(typeof key=="object"&&!Ext.isArray(key)){keyCode=key.key;shift=key.shift;ctrl=key.ctrl;alt=key.alt;}else{keyCode=key;}
this.addBinding({key:keyCode,shift:shift,ctrl:ctrl,alt:alt,fn:fn,scope:scope})},handleKeyDown:function(e){if(this.enabled){var b=this.bindings;for(var i=0,len=b.length;i<len;i++){b[i].call(this,e);}}},isEnabled:function(){return this.enabled;},enable:function(){if(!this.enabled){this.el.on(this.eventName,this.handleKeyDown,this);this.enabled=true;}},disable:function(){if(this.enabled){this.el.removeListener(this.eventName,this.handleKeyDown,this);this.enabled=false;}}};Ext.util.TextMetrics=function(){var shared;return{measure:function(el,text,fixedWidth){if(!shared){shared=Ext.util.TextMetrics.Instance(el,fixedWidth);}
shared.bind(el);shared.setFixedWidth(fixedWidth||'auto');return shared.getSize(text);},createInstance:function(el,fixedWidth){return Ext.util.TextMetrics.Instance(el,fixedWidth);}};}();Ext.util.TextMetrics.Instance=function(bindTo,fixedWidth){var ml=new Ext.Element(document.createElement('div'));document.body.appendChild(ml.dom);ml.position('absolute');ml.setLeftTop(-1000,-1000);ml.hide();if(fixedWidth){ml.setWidth(fixedWidth);}
var instance={getSize:function(text){ml.update(text);var s=ml.getSize();ml.update('');return s;},bind:function(el){ml.setStyle(Ext.fly(el).getStyles('font-size','font-style','font-weight','font-family','line-height','text-transform','letter-spacing'));},setFixedWidth:function(width){ml.setWidth(width);},getWidth:function(text){ml.dom.style.width='auto';return this.getSize(text).width;},getHeight:function(text){return this.getSize(text).height;}};instance.bind(bindTo);return instance;};Ext.Element.measureText=Ext.util.TextMetrics.measure;(function(){var Event=Ext.EventManager;var Dom=Ext.lib.Dom;Ext.dd.DragDrop=function(id,sGroup,config){if(id){this.init(id,sGroup,config);}};Ext.dd.DragDrop.prototype={id:null,config:null,dragElId:null,handleElId:null,invalidHandleTypes:null,invalidHandleIds:null,invalidHandleClasses:null,startPageX:0,startPageY:0,groups:null,locked:false,lock:function(){this.locked=true;},moveOnly:false,unlock:function(){this.locked=false;},isTarget:true,padding:null,_domRef:null,__ygDragDrop:true,constrainX:false,constrainY:false,minX:0,maxX:0,minY:0,maxY:0,maintainOffset:false,xTicks:null,yTicks:null,primaryButtonOnly:true,available:false,hasOuterHandles:false,b4StartDrag:function(x,y){},startDrag:function(x,y){},b4Drag:function(e){},onDrag:function(e){},onDragEnter:function(e,id){},b4DragOver:function(e){},onDragOver:function(e,id){},b4DragOut:function(e){},onDragOut:function(e,id){},b4DragDrop:function(e){},onDragDrop:function(e,id){},onInvalidDrop:function(e){},b4EndDrag:function(e){},endDrag:function(e){},b4MouseDown:function(e){},onMouseDown:function(e){},onMouseUp:function(e){},onAvailable:function(){},defaultPadding:{left:0,right:0,top:0,bottom:0},constrainTo:function(constrainTo,pad,inContent){if(typeof pad=="number"){pad={left:pad,right:pad,top:pad,bottom:pad};}
pad=pad||this.defaultPadding;var b=Ext.get(this.getEl()).getBox();var ce=Ext.get(constrainTo);var s=ce.getScroll();var c,cd=ce.dom;if(cd==document.body){c={x:s.left,y:s.top,width:Ext.lib.Dom.getViewWidth(),height:Ext.lib.Dom.getViewHeight()};}else{var xy=ce.getXY();c={x:xy[0]+s.left,y:xy[1]+s.top,width:cd.clientWidth,height:cd.clientHeight};}
var topSpace=b.y-c.y;var leftSpace=b.x-c.x;this.resetConstraints();this.setXConstraint(leftSpace-(pad.left||0),c.width-leftSpace-b.width-(pad.right||0),this.xTickSize);this.setYConstraint(topSpace-(pad.top||0),c.height-topSpace-b.height-(pad.bottom||0),this.yTickSize);},getEl:function(){if(!this._domRef){this._domRef=Ext.getDom(this.id);}
return this._domRef;},getDragEl:function(){return Ext.getDom(this.dragElId);},init:function(id,sGroup,config){this.initTarget(id,sGroup,config);Event.on(this.id,"mousedown",this.handleMouseDown,this);},initTarget:function(id,sGroup,config){this.config=config||{};this.DDM=Ext.dd.DDM;this.groups={};if(typeof id!=="string"){id=Ext.id(id);}
this.id=id;this.addToGroup((sGroup)?sGroup:"default");this.handleElId=id;this.setDragElId(id);this.invalidHandleTypes={A:"A"};this.invalidHandleIds={};this.invalidHandleClasses=[];this.applyConfig();this.handleOnAvailable();},applyConfig:function(){this.padding=this.config.padding||[0,0,0,0];this.isTarget=(this.config.isTarget!==false);this.maintainOffset=(this.config.maintainOffset);this.primaryButtonOnly=(this.config.primaryButtonOnly!==false);},handleOnAvailable:function(){this.available=true;this.resetConstraints();this.onAvailable();},setPadding:function(iTop,iRight,iBot,iLeft){if(!iRight&&0!==iRight){this.padding=[iTop,iTop,iTop,iTop];}else if(!iBot&&0!==iBot){this.padding=[iTop,iRight,iTop,iRight];}else{this.padding=[iTop,iRight,iBot,iLeft];}},setInitPosition:function(diffX,diffY){var el=this.getEl();if(!this.DDM.verifyEl(el)){return;}
var dx=diffX||0;var dy=diffY||0;var p=Dom.getXY(el);this.initPageX=p[0]-dx;this.initPageY=p[1]-dy;this.lastPageX=p[0];this.lastPageY=p[1];this.setStartPosition(p);},setStartPosition:function(pos){var p=pos||Dom.getXY(this.getEl());this.deltaSetXY=null;this.startPageX=p[0];this.startPageY=p[1];},addToGroup:function(sGroup){this.groups[sGroup]=true;this.DDM.regDragDrop(this,sGroup);},removeFromGroup:function(sGroup){if(this.groups[sGroup]){delete this.groups[sGroup];}
this.DDM.removeDDFromGroup(this,sGroup);},setDragElId:function(id){this.dragElId=id;},setHandleElId:function(id){if(typeof id!=="string"){id=Ext.id(id);}
this.handleElId=id;this.DDM.regHandle(this.id,id);},setOuterHandleElId:function(id){if(typeof id!=="string"){id=Ext.id(id);}
Event.on(id,"mousedown",this.handleMouseDown,this);this.setHandleElId(id);this.hasOuterHandles=true;},unreg:function(){Event.un(this.id,"mousedown",this.handleMouseDown);this._domRef=null;this.DDM._remove(this);},destroy:function(){this.unreg();},isLocked:function(){return(this.DDM.isLocked()||this.locked);},handleMouseDown:function(e,oDD){if(this.primaryButtonOnly&&e.button!=0){return;}
if(this.isLocked()){return;}
this.DDM.refreshCache(this.groups);var pt=new Ext.lib.Point(Ext.lib.Event.getPageX(e),Ext.lib.Event.getPageY(e));if(!this.hasOuterHandles&&!this.DDM.isOverTarget(pt,this)){}else{if(this.clickValidator(e)){this.setStartPosition();this.b4MouseDown(e);this.onMouseDown(e);this.DDM.handleMouseDown(e,this);this.DDM.stopEvent(e);}else{}}},clickValidator:function(e){var target=e.getTarget();return(this.isValidHandleChild(target)&&(this.id==this.handleElId||this.DDM.handleWasClicked(target,this.id)));},addInvalidHandleType:function(tagName){var type=tagName.toUpperCase();this.invalidHandleTypes[type]=type;},addInvalidHandleId:function(id){if(typeof id!=="string"){id=Ext.id(id);}
this.invalidHandleIds[id]=id;},addInvalidHandleClass:function(cssClass){this.invalidHandleClasses.push(cssClass);},removeInvalidHandleType:function(tagName){var type=tagName.toUpperCase();delete this.invalidHandleTypes[type];},removeInvalidHandleId:function(id){if(typeof id!=="string"){id=Ext.id(id);}
delete this.invalidHandleIds[id];},removeInvalidHandleClass:function(cssClass){for(var i=0,len=this.invalidHandleClasses.length;i<len;++i){if(this.invalidHandleClasses[i]==cssClass){delete this.invalidHandleClasses[i];}}},isValidHandleChild:function(node){var valid=true;var nodeName;try{nodeName=node.nodeName.toUpperCase();}catch(e){nodeName=node.nodeName;}
valid=valid&&!this.invalidHandleTypes[nodeName];valid=valid&&!this.invalidHandleIds[node.id];for(var i=0,len=this.invalidHandleClasses.length;valid&&i<len;++i){valid=!Ext.fly(node).hasClass(this.invalidHandleClasses[i]);}
return valid;},setXTicks:function(iStartX,iTickSize){this.xTicks=[];this.xTickSize=iTickSize;var tickMap={};for(var i=this.initPageX;i>=this.minX;i=i-iTickSize){if(!tickMap[i]){this.xTicks[this.xTicks.length]=i;tickMap[i]=true;}}
for(i=this.initPageX;i<=this.maxX;i=i+iTickSize){if(!tickMap[i]){this.xTicks[this.xTicks.length]=i;tickMap[i]=true;}}
this.xTicks.sort(this.DDM.numericSort);},setYTicks:function(iStartY,iTickSize){this.yTicks=[];this.yTickSize=iTickSize;var tickMap={};for(var i=this.initPageY;i>=this.minY;i=i-iTickSize){if(!tickMap[i]){this.yTicks[this.yTicks.length]=i;tickMap[i]=true;}}
for(i=this.initPageY;i<=this.maxY;i=i+iTickSize){if(!tickMap[i]){this.yTicks[this.yTicks.length]=i;tickMap[i]=true;}}
this.yTicks.sort(this.DDM.numericSort);},setXConstraint:function(iLeft,iRight,iTickSize){this.leftConstraint=iLeft;this.rightConstraint=iRight;this.minX=this.initPageX-iLeft;this.maxX=this.initPageX+iRight;if(iTickSize){this.setXTicks(this.initPageX,iTickSize);}
this.constrainX=true;},clearConstraints:function(){this.constrainX=false;this.constrainY=false;this.clearTicks();},clearTicks:function(){this.xTicks=null;this.yTicks=null;this.xTickSize=0;this.yTickSize=0;},setYConstraint:function(iUp,iDown,iTickSize){this.topConstraint=iUp;this.bottomConstraint=iDown;this.minY=this.initPageY-iUp;this.maxY=this.initPageY+iDown;if(iTickSize){this.setYTicks(this.initPageY,iTickSize);}
this.constrainY=true;},resetConstraints:function(){if(this.initPageX||this.initPageX===0){var dx=(this.maintainOffset)?this.lastPageX-this.initPageX:0;var dy=(this.maintainOffset)?this.lastPageY-this.initPageY:0;this.setInitPosition(dx,dy);}else{this.setInitPosition();}
if(this.constrainX){this.setXConstraint(this.leftConstraint,this.rightConstraint,this.xTickSize);}
if(this.constrainY){this.setYConstraint(this.topConstraint,this.bottomConstraint,this.yTickSize);}},getTick:function(val,tickArray){if(!tickArray){return val;}else if(tickArray[0]>=val){return tickArray[0];}else{for(var i=0,len=tickArray.length;i<len;++i){var next=i+1;if(tickArray[next]&&tickArray[next]>=val){var diff1=val-tickArray[i];var diff2=tickArray[next]-val;return(diff2>diff1)?tickArray[i]:tickArray[next];}}
return tickArray[tickArray.length-1];}},toString:function(){return("DragDrop "+this.id);}};})();if(!Ext.dd.DragDropMgr){Ext.dd.DragDropMgr=function(){var Event=Ext.EventManager;return{ids:{},handleIds:{},dragCurrent:null,dragOvers:{},deltaX:0,deltaY:0,preventDefault:true,stopPropagation:true,initialized:false,locked:false,init:function(){this.initialized=true;},POINT:0,INTERSECT:1,mode:0,_execOnAll:function(sMethod,args){for(var i in this.ids){for(var j in this.ids[i]){var oDD=this.ids[i][j];if(!this.isTypeOfDD(oDD)){continue;}
oDD[sMethod].apply(oDD,args);}}},_onLoad:function(){this.init();Event.on(document,"mouseup",this.handleMouseUp,this,true);Event.on(document,"mousemove",this.handleMouseMove,this,true);Event.on(window,"unload",this._onUnload,this,true);Event.on(window,"resize",this._onResize,this,true);},_onResize:function(e){this._execOnAll("resetConstraints",[]);},lock:function(){this.locked=true;},unlock:function(){this.locked=false;},isLocked:function(){return this.locked;},locationCache:{},useCache:true,clickPixelThresh:3,clickTimeThresh:350,dragThreshMet:false,clickTimeout:null,startX:0,startY:0,regDragDrop:function(oDD,sGroup){if(!this.initialized){this.init();}
if(!this.ids[sGroup]){this.ids[sGroup]={};}
this.ids[sGroup][oDD.id]=oDD;},removeDDFromGroup:function(oDD,sGroup){if(!this.ids[sGroup]){this.ids[sGroup]={};}
var obj=this.ids[sGroup];if(obj&&obj[oDD.id]){delete obj[oDD.id];}},_remove:function(oDD){for(var g in oDD.groups){if(g&&this.ids[g]&&this.ids[g][oDD.id]){delete this.ids[g][oDD.id];}}
delete this.handleIds[oDD.id];},regHandle:function(sDDId,sHandleId){if(!this.handleIds[sDDId]){this.handleIds[sDDId]={};}
this.handleIds[sDDId][sHandleId]=sHandleId;},isDragDrop:function(id){return(this.getDDById(id))?true:false;},getRelated:function(p_oDD,bTargetsOnly){var oDDs=[];for(var i in p_oDD.groups){for(j in this.ids[i]){var dd=this.ids[i][j];if(!this.isTypeOfDD(dd)){continue;}
if(!bTargetsOnly||dd.isTarget){oDDs[oDDs.length]=dd;}}}
return oDDs;},isLegalTarget:function(oDD,oTargetDD){var targets=this.getRelated(oDD,true);for(var i=0,len=targets.length;i<len;++i){if(targets[i].id==oTargetDD.id){return true;}}
return false;},isTypeOfDD:function(oDD){return(oDD&&oDD.__ygDragDrop);},isHandle:function(sDDId,sHandleId){return(this.handleIds[sDDId]&&this.handleIds[sDDId][sHandleId]);},getDDById:function(id){for(var i in this.ids){if(this.ids[i][id]){return this.ids[i][id];}}
return null;},handleMouseDown:function(e,oDD){if(Ext.QuickTips){Ext.QuickTips.disable();}
if(this.dragCurrent){this.handleMouseUp(e);}
this.currentTarget=e.getTarget();this.dragCurrent=oDD;var el=oDD.getEl();this.startX=e.getPageX();this.startY=e.getPageY();this.deltaX=this.startX-el.offsetLeft;this.deltaY=this.startY-el.offsetTop;this.dragThreshMet=false;this.clickTimeout=setTimeout(function(){var DDM=Ext.dd.DDM;DDM.startDrag(DDM.startX,DDM.startY);},this.clickTimeThresh);},startDrag:function(x,y){clearTimeout(this.clickTimeout);if(this.dragCurrent){this.dragCurrent.b4StartDrag(x,y);this.dragCurrent.startDrag(x,y);}
this.dragThreshMet=true;},handleMouseUp:function(e){if(Ext.QuickTips){Ext.QuickTips.enable();}
if(!this.dragCurrent){return;}
clearTimeout(this.clickTimeout);if(this.dragThreshMet){this.fireEvents(e,true);}else{}
this.stopDrag(e);this.stopEvent(e);},stopEvent:function(e){if(this.stopPropagation){e.stopPropagation();}
if(this.preventDefault){e.preventDefault();}},stopDrag:function(e){if(this.dragCurrent){if(this.dragThreshMet){this.dragCurrent.b4EndDrag(e);this.dragCurrent.endDrag(e);}
this.dragCurrent.onMouseUp(e);}
this.dragCurrent=null;this.dragOvers={};},handleMouseMove:function(e){if(!this.dragCurrent){return true;}
if(Ext.isIE&&(e.button!==0&&e.button!==1&&e.button!==2)){this.stopEvent(e);return this.handleMouseUp(e);}
if(!this.dragThreshMet){var diffX=Math.abs(this.startX-e.getPageX());var diffY=Math.abs(this.startY-e.getPageY());if(diffX>this.clickPixelThresh||diffY>this.clickPixelThresh){this.startDrag(this.startX,this.startY);}}
if(this.dragThreshMet){this.dragCurrent.b4Drag(e);this.dragCurrent.onDrag(e);if(!this.dragCurrent.moveOnly){this.fireEvents(e,false);}}
this.stopEvent(e);return true;},fireEvents:function(e,isDrop){var dc=this.dragCurrent;if(!dc||dc.isLocked()){return;}
var pt=e.getPoint();var oldOvers=[];var outEvts=[];var overEvts=[];var dropEvts=[];var enterEvts=[];for(var i in this.dragOvers){var ddo=this.dragOvers[i];if(!this.isTypeOfDD(ddo)){continue;}
if(!this.isOverTarget(pt,ddo,this.mode)){outEvts.push(ddo);}
oldOvers[i]=true;delete this.dragOvers[i];}
for(var sGroup in dc.groups){if("string"!=typeof sGroup){continue;}
for(i in this.ids[sGroup]){var oDD=this.ids[sGroup][i];if(!this.isTypeOfDD(oDD)){continue;}
if(oDD.isTarget&&!oDD.isLocked()&&oDD!=dc){if(this.isOverTarget(pt,oDD,this.mode)){if(isDrop){dropEvts.push(oDD);}else{if(!oldOvers[oDD.id]){enterEvts.push(oDD);}else{overEvts.push(oDD);}
this.dragOvers[oDD.id]=oDD;}}}}}
if(this.mode){if(outEvts.length){dc.b4DragOut(e,outEvts);dc.onDragOut(e,outEvts);}
if(enterEvts.length){dc.onDragEnter(e,enterEvts);}
if(overEvts.length){dc.b4DragOver(e,overEvts);dc.onDragOver(e,overEvts);}
if(dropEvts.length){dc.b4DragDrop(e,dropEvts);dc.onDragDrop(e,dropEvts);}}else{var len=0;for(i=0,len=outEvts.length;i<len;++i){dc.b4DragOut(e,outEvts[i].id);dc.onDragOut(e,outEvts[i].id);}
for(i=0,len=enterEvts.length;i<len;++i){dc.onDragEnter(e,enterEvts[i].id);}
for(i=0,len=overEvts.length;i<len;++i){dc.b4DragOver(e,overEvts[i].id);dc.onDragOver(e,overEvts[i].id);}
for(i=0,len=dropEvts.length;i<len;++i){dc.b4DragDrop(e,dropEvts[i].id);dc.onDragDrop(e,dropEvts[i].id);}}
if(isDrop&&!dropEvts.length){dc.onInvalidDrop(e);}},getBestMatch:function(dds){var winner=null;var len=dds.length;if(len==1){winner=dds[0];}else{for(var i=0;i<len;++i){var dd=dds[i];if(dd.cursorIsOver){winner=dd;break;}else{if(!winner||winner.overlap.getArea()<dd.overlap.getArea()){winner=dd;}}}}
return winner;},refreshCache:function(groups){for(var sGroup in groups){if("string"!=typeof sGroup){continue;}
for(var i in this.ids[sGroup]){var oDD=this.ids[sGroup][i];if(this.isTypeOfDD(oDD)){var loc=this.getLocation(oDD);if(loc){this.locationCache[oDD.id]=loc;}else{delete this.locationCache[oDD.id];}}}}},verifyEl:function(el){if(el){var parent;if(Ext.isIE){try{parent=el.offsetParent;}catch(e){}}else{parent=el.offsetParent;}
if(parent){return true;}}
return false;},getLocation:function(oDD){if(!this.isTypeOfDD(oDD)){return null;}
var el=oDD.getEl(),pos,x1,x2,y1,y2,t,r,b,l;try{pos=Ext.lib.Dom.getXY(el);}catch(e){}
if(!pos){return null;}
x1=pos[0];x2=x1+el.offsetWidth;y1=pos[1];y2=y1+el.offsetHeight;t=y1-oDD.padding[0];r=x2+oDD.padding[1];b=y2+oDD.padding[2];l=x1-oDD.padding[3];return new Ext.lib.Region(t,r,b,l);},isOverTarget:function(pt,oTarget,intersect){var loc=this.locationCache[oTarget.id];if(!loc||!this.useCache){loc=this.getLocation(oTarget);this.locationCache[oTarget.id]=loc;}
if(!loc){return false;}
oTarget.cursorIsOver=loc.contains(pt);var dc=this.dragCurrent;if(!dc||!dc.getTargetCoord||(!intersect&&!dc.constrainX&&!dc.constrainY)){return oTarget.cursorIsOver;}
oTarget.overlap=null;var pos=dc.getTargetCoord(pt.x,pt.y);var el=dc.getDragEl();var curRegion=new Ext.lib.Region(pos.y,pos.x+el.offsetWidth,pos.y+el.offsetHeight,pos.x);var overlap=curRegion.intersect(loc);if(overlap){oTarget.overlap=overlap;return(intersect)?true:oTarget.cursorIsOver;}else{return false;}},_onUnload:function(e,me){Ext.dd.DragDropMgr.unregAll();},unregAll:function(){if(this.dragCurrent){this.stopDrag();this.dragCurrent=null;}
this._execOnAll("unreg",[]);for(var i in this.elementCache){delete this.elementCache[i];}
this.elementCache={};this.ids={};},elementCache:{},getElWrapper:function(id){var oWrapper=this.elementCache[id];if(!oWrapper||!oWrapper.el){oWrapper=this.elementCache[id]=new this.ElementWrapper(Ext.getDom(id));}
return oWrapper;},getElement:function(id){return Ext.getDom(id);},getCss:function(id){var el=Ext.getDom(id);return(el)?el.style:null;},ElementWrapper:function(el){this.el=el||null;this.id=this.el&&el.id;this.css=this.el&&el.style;},getPosX:function(el){return Ext.lib.Dom.getX(el);},getPosY:function(el){return Ext.lib.Dom.getY(el);},swapNode:function(n1,n2){if(n1.swapNode){n1.swapNode(n2);}else{var p=n2.parentNode;var s=n2.nextSibling;if(s==n1){p.insertBefore(n1,n2);}else if(n2==n1.nextSibling){p.insertBefore(n2,n1);}else{n1.parentNode.replaceChild(n2,n1);p.insertBefore(n1,s);}}},getScroll:function(){var t,l,dde=document.documentElement,db=document.body;if(dde&&(dde.scrollTop||dde.scrollLeft)){t=dde.scrollTop;l=dde.scrollLeft;}else if(db){t=db.scrollTop;l=db.scrollLeft;}else{}
return{top:t,left:l};},getStyle:function(el,styleProp){return Ext.fly(el).getStyle(styleProp);},getScrollTop:function(){return this.getScroll().top;},getScrollLeft:function(){return this.getScroll().left;},moveToEl:function(moveEl,targetEl){var aCoord=Ext.lib.Dom.getXY(targetEl);Ext.lib.Dom.setXY(moveEl,aCoord);},numericSort:function(a,b){return(a-b);},_timeoutCount:0,_addListeners:function(){var DDM=Ext.dd.DDM;if(Ext.lib.Event&&document){DDM._onLoad();}else{if(DDM._timeoutCount>2000){}else{setTimeout(DDM._addListeners,10);if(document&&document.body){DDM._timeoutCount+=1;}}}},handleWasClicked:function(node,id){if(this.isHandle(id,node.id)){return true;}else{var p=node.parentNode;while(p){if(this.isHandle(id,p.id)){return true;}else{p=p.parentNode;}}}
return false;}};}();Ext.dd.DDM=Ext.dd.DragDropMgr;Ext.dd.DDM._addListeners();}
Ext.dd.DD=function(id,sGroup,config){if(id){this.init(id,sGroup,config);}};Ext.extend(Ext.dd.DD,Ext.dd.DragDrop,{scroll:true,autoOffset:function(iPageX,iPageY){var x=iPageX-this.startPageX;var y=iPageY-this.startPageY;this.setDelta(x,y);},setDelta:function(iDeltaX,iDeltaY){this.deltaX=iDeltaX;this.deltaY=iDeltaY;},setDragElPos:function(iPageX,iPageY){var el=this.getDragEl();this.alignElWithMouse(el,iPageX,iPageY);},alignElWithMouse:function(el,iPageX,iPageY){var oCoord=this.getTargetCoord(iPageX,iPageY);var fly=el.dom?el:Ext.fly(el,'_dd');if(!this.deltaSetXY){var aCoord=[oCoord.x,oCoord.y];fly.setXY(aCoord);var newLeft=fly.getLeft(true);var newTop=fly.getTop(true);this.deltaSetXY=[newLeft-oCoord.x,newTop-oCoord.y];}else{fly.setLeftTop(oCoord.x+this.deltaSetXY[0],oCoord.y+this.deltaSetXY[1]);}
this.cachePosition(oCoord.x,oCoord.y);this.autoScroll(oCoord.x,oCoord.y,el.offsetHeight,el.offsetWidth);return oCoord;},cachePosition:function(iPageX,iPageY){if(iPageX){this.lastPageX=iPageX;this.lastPageY=iPageY;}else{var aCoord=Ext.lib.Dom.getXY(this.getEl());this.lastPageX=aCoord[0];this.lastPageY=aCoord[1];}},autoScroll:function(x,y,h,w){if(this.scroll){var clientH=Ext.lib.Dom.getViewHeight();var clientW=Ext.lib.Dom.getViewWidth();var st=this.DDM.getScrollTop();var sl=this.DDM.getScrollLeft();var bot=h+y;var right=w+x;var toBot=(clientH+st-y-this.deltaY);var toRight=(clientW+sl-x-this.deltaX);var thresh=40;var scrAmt=(document.all)?80:30;if(bot>clientH&&toBot<thresh){window.scrollTo(sl,st+scrAmt);}
if(y<st&&st>0&&y-st<thresh){window.scrollTo(sl,st-scrAmt);}
if(right>clientW&&toRight<thresh){window.scrollTo(sl+scrAmt,st);}
if(x<sl&&sl>0&&x-sl<thresh){window.scrollTo(sl-scrAmt,st);}}},getTargetCoord:function(iPageX,iPageY){var x=iPageX-this.deltaX;var y=iPageY-this.deltaY;if(this.constrainX){if(x<this.minX){x=this.minX;}
if(x>this.maxX){x=this.maxX;}}
if(this.constrainY){if(y<this.minY){y=this.minY;}
if(y>this.maxY){y=this.maxY;}}
x=this.getTick(x,this.xTicks);y=this.getTick(y,this.yTicks);return{x:x,y:y};},applyConfig:function(){Ext.dd.DD.superclass.applyConfig.call(this);this.scroll=(this.config.scroll!==false);},b4MouseDown:function(e){this.autoOffset(e.getPageX(),e.getPageY());},b4Drag:function(e){this.setDragElPos(e.getPageX(),e.getPageY());},toString:function(){return("DD "+this.id);}});Ext.dd.DDProxy=function(id,sGroup,config){if(id){this.init(id,sGroup,config);this.initFrame();}};Ext.dd.DDProxy.dragElId="ygddfdiv";Ext.extend(Ext.dd.DDProxy,Ext.dd.DD,{resizeFrame:true,centerFrame:false,createFrame:function(){var self=this;var body=document.body;if(!body||!body.firstChild){setTimeout(function(){self.createFrame();},50);return;}
var div=this.getDragEl();if(!div){div=document.createElement("div");div.id=this.dragElId;var s=div.style;s.position="absolute";s.visibility="hidden";s.cursor="move";s.border="2px solid #aaa";s.zIndex=999;body.insertBefore(div,body.firstChild);}},initFrame:function(){this.createFrame();},applyConfig:function(){Ext.dd.DDProxy.superclass.applyConfig.call(this);this.resizeFrame=(this.config.resizeFrame!==false);this.centerFrame=(this.config.centerFrame);this.setDragElId(this.config.dragElId||Ext.dd.DDProxy.dragElId);},showFrame:function(iPageX,iPageY){var el=this.getEl();var dragEl=this.getDragEl();var s=dragEl.style;this._resizeProxy();if(this.centerFrame){this.setDelta(Math.round(parseInt(s.width,10)/2),Math.round(parseInt(s.height,10)/2));}
this.setDragElPos(iPageX,iPageY);Ext.fly(dragEl).show();},_resizeProxy:function(){if(this.resizeFrame){var el=this.getEl();Ext.fly(this.getDragEl()).setSize(el.offsetWidth,el.offsetHeight);}},b4MouseDown:function(e){var x=e.getPageX();var y=e.getPageY();this.autoOffset(x,y);this.setDragElPos(x,y);},b4StartDrag:function(x,y){this.showFrame(x,y);},b4EndDrag:function(e){Ext.fly(this.getDragEl()).hide();},endDrag:function(e){var lel=this.getEl();var del=this.getDragEl();del.style.visibility="";this.beforeMove();lel.style.visibility="hidden";Ext.dd.DDM.moveToEl(lel,del);del.style.visibility="hidden";lel.style.visibility="";this.afterDrag();},beforeMove:function(){},afterDrag:function(){},toString:function(){return("DDProxy "+this.id);}});Ext.dd.DDTarget=function(id,sGroup,config){if(id){this.initTarget(id,sGroup,config);}};Ext.extend(Ext.dd.DDTarget,Ext.dd.DragDrop,{toString:function(){return("DDTarget "+this.id);}});Ext.dd.DragTracker=function(config){Ext.apply(this,config);this.addEvents('mousedown','mouseup','mousemove','dragstart','dragend','drag');this.dragRegion=new Ext.lib.Region(0,0,0,0);if(this.el){this.initEl(this.el);}}
Ext.extend(Ext.dd.DragTracker,Ext.util.Observable,{active:false,tolerance:5,autoStart:false,initEl:function(el){this.el=Ext.get(el);el.on('mousedown',this.onMouseDown,this,this.delegate?{delegate:this.delegate}:undefined);},destroy:function(){this.el.un('mousedown',this.onMouseDown,this);},onMouseDown:function(e,target){if(this.fireEvent('mousedown',this,e)!==false&&this.onBeforeStart(e)!==false){this.startXY=this.lastXY=e.getXY();this.dragTarget=this.delegate?target:this.el.dom;e.preventDefault();var doc=Ext.getDoc();doc.on('mouseup',this.onMouseUp,this);doc.on('mousemove',this.onMouseMove,this);doc.on('selectstart',this.stopSelect,this);if(this.autoStart){this.timer=this.triggerStart.defer(this.autoStart===true?1000:this.autoStart,this);}}},onMouseMove:function(e,target){e.preventDefault();var xy=e.getXY(),s=this.startXY;this.lastXY=xy;if(!this.active){if(Math.abs(s[0]-xy[0])>this.tolerance||Math.abs(s[1]-xy[1])>this.tolerance){this.triggerStart();}else{return;}}
this.fireEvent('mousemove',this,e);this.onDrag(e);this.fireEvent('drag',this,e);},onMouseUp:function(e){var doc=Ext.getDoc();doc.un('mousemove',this.onMouseMove,this);doc.un('mouseup',this.onMouseUp,this);doc.un('selectstart',this.stopSelect,this);e.preventDefault();this.clearStart();this.active=false;delete this.elRegion;this.fireEvent('mouseup',this,e);this.onEnd(e);this.fireEvent('dragend',this,e);},triggerStart:function(isTimer){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(e){e.stopEvent();return false;},onBeforeStart:function(e){},onStart:function(xy){},onDrag:function(e){},onEnd:function(e){},getDragTarget:function(){return this.dragTarget;},getDragCt:function(){return this.el;},getXY:function(constrain){return constrain?this.constrainModes[constrain].call(this,this.lastXY):this.lastXY;},getOffset:function(constrain){var xy=this.getXY(constrain);var s=this.startXY;return[s[0]-xy[0],s[1]-xy[1]];},constrainModes:{'point':function(xy){if(!this.elRegion){this.elRegion=this.getDragCt().getRegion();}
var dr=this.dragRegion;dr.left=xy[0];dr.top=xy[1];dr.right=xy[0];dr.bottom=xy[1];dr.constrainTo(this.elRegion);return[dr.left,dr.top];}}});Ext.dd.ScrollManager=function(){var ddm=Ext.dd.DragDropMgr;var els={};var dragEl=null;var proc={};var onStop=function(e){dragEl=null;clearProc();};var triggerRefresh=function(){if(ddm.dragCurrent){ddm.refreshCache(ddm.dragCurrent.groups);}};var doScroll=function(){if(ddm.dragCurrent){var dds=Ext.dd.ScrollManager;var inc=proc.el.ddScrollConfig?proc.el.ddScrollConfig.increment:dds.increment;if(!dds.animate){if(proc.el.scroll(proc.dir,inc)){triggerRefresh();}}else{proc.el.scroll(proc.dir,inc,true,dds.animDuration,triggerRefresh);}}};var clearProc=function(){if(proc.id){clearInterval(proc.id);}
proc.id=0;proc.el=null;proc.dir="";};var startProc=function(el,dir){clearProc();proc.el=el;proc.dir=dir;var freq=(el.ddScrollConfig&&el.ddScrollConfig.frequency)?el.ddScrollConfig.frequency:Ext.dd.ScrollManager.frequency;proc.id=setInterval(doScroll,freq);};var onFire=function(e,isDrop){if(isDrop||!ddm.dragCurrent){return;}
var dds=Ext.dd.ScrollManager;if(!dragEl||dragEl!=ddm.dragCurrent){dragEl=ddm.dragCurrent;dds.refreshCache();}
var xy=Ext.lib.Event.getXY(e);var pt=new Ext.lib.Point(xy[0],xy[1]);for(var id in els){var el=els[id],r=el._region;var c=el.ddScrollConfig?el.ddScrollConfig:dds;if(r&&r.contains(pt)&&el.isScrollable()){if(r.bottom-pt.y<=c.vthresh){if(proc.el!=el){startProc(el,"down");}
return;}else if(r.right-pt.x<=c.hthresh){if(proc.el!=el){startProc(el,"left");}
return;}else if(pt.y-r.top<=c.vthresh){if(proc.el!=el){startProc(el,"up");}
return;}else if(pt.x-r.left<=c.hthresh){if(proc.el!=el){startProc(el,"right");}
return;}}}
clearProc();};ddm.fireEvents=ddm.fireEvents.createSequence(onFire,ddm);ddm.stopDrag=ddm.stopDrag.createSequence(onStop,ddm);return{register:function(el){if(Ext.isArray(el)){for(var i=0,len=el.length;i<len;i++){this.register(el[i]);}}else{el=Ext.get(el);els[el.id]=el;}},unregister:function(el){if(Ext.isArray(el)){for(var i=0,len=el.length;i<len;i++){this.unregister(el[i]);}}else{el=Ext.get(el);delete els[el.id];}},vthresh:25,hthresh:25,increment:100,frequency:500,animate:true,animDuration:.4,refreshCache:function(){for(var id in els){if(typeof els[id]=='object'){els[id]._region=els[id].getRegion();}}}};}();Ext.dd.Registry=function(){var elements={};var handles={};var autoIdSeed=0;var getId=function(el,autogen){if(typeof el=="string"){return el;}
var id=el.id;if(!id&&autogen!==false){id="extdd-"+(++autoIdSeed);el.id=id;}
return id;};return{register:function(el,data){data=data||{};if(typeof el=="string"){el=document.getElementById(el);}
data.ddel=el;elements[getId(el)]=data;if(data.isHandle!==false){handles[data.ddel.id]=data;}
if(data.handles){var hs=data.handles;for(var i=0,len=hs.length;i<len;i++){handles[getId(hs[i])]=data;}}},unregister:function(el){var id=getId(el,false);var data=elements[id];if(data){delete elements[id];if(data.handles){var hs=data.handles;for(var i=0,len=hs.length;i<len;i++){delete handles[getId(hs[i],false)];}}}},getHandle:function(id){if(typeof id!="string"){id=id.id;}
return handles[id];},getHandleFromEvent:function(e){var t=Ext.lib.Event.getTarget(e);return t?handles[t.id]:null;},getTarget:function(id){if(typeof id!="string"){id=id.id;}
return elements[id];},getTargetFromEvent:function(e){var t=Ext.lib.Event.getTarget(e);return t?elements[t.id]||handles[t.id]:null;}};}();Ext.dd.StatusProxy=function(config){Ext.apply(this,config);this.id=this.id||Ext.id();this.el=new Ext.Layer({dh:{id:this.id,tag:"div",cls:"x-dd-drag-proxy "+this.dropNotAllowed,children:[{tag:"div",cls:"x-dd-drop-icon"},{tag:"div",cls:"x-dd-drag-ghost"}]},shadow:!config||config.shadow!==false});this.ghost=Ext.get(this.el.dom.childNodes[1]);this.dropStatus=this.dropNotAllowed;};Ext.dd.StatusProxy.prototype={dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",setStatus:function(cssClass){cssClass=cssClass||this.dropNotAllowed;if(this.dropStatus!=cssClass){this.el.replaceClass(this.dropStatus,cssClass);this.dropStatus=cssClass;}},reset:function(clearGhost){this.el.dom.className="x-dd-drag-proxy "+this.dropNotAllowed;this.dropStatus=this.dropNotAllowed;if(clearGhost){this.ghost.update("");}},update:function(html){if(typeof html=="string"){this.ghost.update(html);}else{this.ghost.update("");html.style.margin="0";this.ghost.dom.appendChild(html);}
var el=this.ghost.dom.firstChild;if(el){Ext.fly(el).setStyle(Ext.isIE?'styleFloat':'cssFloat','none');}},getEl:function(){return this.el;},getGhost:function(){return this.ghost;},hide:function(clear){this.el.hide();if(clear){this.reset(true);}},stop:function(){if(this.anim&&this.anim.isAnimated&&this.anim.isAnimated()){this.anim.stop();}},show:function(){this.el.show();},sync:function(){this.el.sync();},repair:function(xy,callback,scope){this.callback=callback;this.scope=scope;if(xy&&this.animRepair!==false){this.el.addClass("x-dd-drag-repair");this.el.hideUnders(true);this.anim=this.el.shift({duration:this.repairDuration||.5,easing:'easeOut',xy:xy,stopFx:true,callback:this.afterRepair,scope:this});}else{this.afterRepair();}},afterRepair:function(){this.hide(true);if(typeof this.callback=="function"){this.callback.call(this.scope||this);}
this.callback=null;this.scope=null;}};Ext.dd.DragSource=function(el,config){this.el=Ext.get(el);if(!this.dragData){this.dragData={};}
Ext.apply(this,config);if(!this.proxy){this.proxy=new Ext.dd.StatusProxy();}
Ext.dd.DragSource.superclass.constructor.call(this,this.el.dom,this.ddGroup||this.group,{dragElId:this.proxy.id,resizeFrame:false,isTarget:false,scroll:this.scroll===true});this.dragging=false;};Ext.extend(Ext.dd.DragSource,Ext.dd.DDProxy,{dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",getDragData:function(e){return this.dragData;},onDragEnter:function(e,id){var target=Ext.dd.DragDropMgr.getDDById(id);this.cachedTarget=target;if(this.beforeDragEnter(target,e,id)!==false){if(target.isNotifyTarget){var status=target.notifyEnter(this,e,this.dragData);this.proxy.setStatus(status);}else{this.proxy.setStatus(this.dropAllowed);}
if(this.afterDragEnter){this.afterDragEnter(target,e,id);}}},beforeDragEnter:function(target,e,id){return true;},alignElWithMouse:function(){Ext.dd.DragSource.superclass.alignElWithMouse.apply(this,arguments);this.proxy.sync();},onDragOver:function(e,id){var target=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(id);if(this.beforeDragOver(target,e,id)!==false){if(target.isNotifyTarget){var status=target.notifyOver(this,e,this.dragData);this.proxy.setStatus(status);}
if(this.afterDragOver){this.afterDragOver(target,e,id);}}},beforeDragOver:function(target,e,id){return true;},onDragOut:function(e,id){var target=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(id);if(this.beforeDragOut(target,e,id)!==false){if(target.isNotifyTarget){target.notifyOut(this,e,this.dragData);}
this.proxy.reset();if(this.afterDragOut){this.afterDragOut(target,e,id);}}
this.cachedTarget=null;},beforeDragOut:function(target,e,id){return true;},onDragDrop:function(e,id){var target=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(id);if(this.beforeDragDrop(target,e,id)!==false){if(target.isNotifyTarget){if(target.notifyDrop(this,e,this.dragData)){this.onValidDrop(target,e,id);}else{this.onInvalidDrop(target,e,id);}}else{this.onValidDrop(target,e,id);}
if(this.afterDragDrop){this.afterDragDrop(target,e,id);}}
delete this.cachedTarget;},beforeDragDrop:function(target,e,id){return true;},onValidDrop:function(target,e,id){this.hideProxy();if(this.afterValidDrop){this.afterValidDrop(target,e,id);}},getRepairXY:function(e,data){return this.el.getXY();},onInvalidDrop:function(target,e,id){this.beforeInvalidDrop(target,e,id);if(this.cachedTarget){if(this.cachedTarget.isNotifyTarget){this.cachedTarget.notifyOut(this,e,this.dragData);}
this.cacheTarget=null;}
this.proxy.repair(this.getRepairXY(e,this.dragData),this.afterRepair,this);if(this.afterInvalidDrop){this.afterInvalidDrop(e,id);}},afterRepair:function(){if(Ext.enableFx){this.el.highlight(this.hlColor||"c3daf9");}
this.dragging=false;},beforeInvalidDrop:function(target,e,id){return true;},handleMouseDown:function(e){if(this.dragging){return;}
var data=this.getDragData(e);if(data&&this.onBeforeDrag(data,e)!==false){this.dragData=data;this.proxy.stop();Ext.dd.DragSource.superclass.handleMouseDown.apply(this,arguments);}},onBeforeDrag:function(data,e){return true;},onStartDrag:Ext.emptyFn,startDrag:function(x,y){this.proxy.reset();this.dragging=true;this.proxy.update("");this.onInitDrag(x,y);this.proxy.show();},onInitDrag:function(x,y){var clone=this.el.dom.cloneNode(true);clone.id=Ext.id();this.proxy.update(clone);this.onStartDrag(x,y);return true;},getProxy:function(){return this.proxy;},hideProxy:function(){this.proxy.hide();this.proxy.reset(true);this.dragging=false;},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups);},b4EndDrag:function(e){},endDrag:function(e){this.onEndDrag(this.dragData,e);},onEndDrag:function(data,e){},autoOffset:function(x,y){this.setDelta(-12,-20);}});Ext.dd.DropTarget=function(el,config){this.el=Ext.get(el);Ext.apply(this,config);if(this.containerScroll){Ext.dd.ScrollManager.register(this.el);}
Ext.dd.DropTarget.superclass.constructor.call(this,this.el.dom,this.ddGroup||this.group,{isTarget:true});};Ext.extend(Ext.dd.DropTarget,Ext.dd.DDTarget,{dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",isTarget:true,isNotifyTarget:true,notifyEnter:function(dd,e,data){if(this.overClass){this.el.addClass(this.overClass);}
return this.dropAllowed;},notifyOver:function(dd,e,data){return this.dropAllowed;},notifyOut:function(dd,e,data){if(this.overClass){this.el.removeClass(this.overClass);}},notifyDrop:function(dd,e,data){return false;}});Ext.dd.DragZone=function(el,config){Ext.dd.DragZone.superclass.constructor.call(this,el,config);if(this.containerScroll){Ext.dd.ScrollManager.register(this.el);}};Ext.extend(Ext.dd.DragZone,Ext.dd.DragSource,{getDragData:function(e){return Ext.dd.Registry.getHandleFromEvent(e);},onInitDrag:function(x,y){this.proxy.update(this.dragData.ddel.cloneNode(true));this.onStartDrag(x,y);return true;},afterRepair:function(){if(Ext.enableFx){Ext.Element.fly(this.dragData.ddel).highlight(this.hlColor||"c3daf9");}
this.dragging=false;},getRepairXY:function(e){return Ext.Element.fly(this.dragData.ddel).getXY();}});Ext.dd.DropZone=function(el,config){Ext.dd.DropZone.superclass.constructor.call(this,el,config);};Ext.extend(Ext.dd.DropZone,Ext.dd.DropTarget,{getTargetFromEvent:function(e){return Ext.dd.Registry.getTargetFromEvent(e);},onNodeEnter:function(n,dd,e,data){},onNodeOver:function(n,dd,e,data){return this.dropAllowed;},onNodeOut:function(n,dd,e,data){},onNodeDrop:function(n,dd,e,data){return false;},onContainerOver:function(dd,e,data){return this.dropNotAllowed;},onContainerDrop:function(dd,e,data){return false;},notifyEnter:function(dd,e,data){return this.dropNotAllowed;},notifyOver:function(dd,e,data){var n=this.getTargetFromEvent(e);if(!n){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,dd,e,data);this.lastOverNode=null;}
return this.onContainerOver(dd,e,data);}
if(this.lastOverNode!=n){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,dd,e,data);}
this.onNodeEnter(n,dd,e,data);this.lastOverNode=n;}
return this.onNodeOver(n,dd,e,data);},notifyOut:function(dd,e,data){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,dd,e,data);this.lastOverNode=null;}},notifyDrop:function(dd,e,data){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,dd,e,data);this.lastOverNode=null;}
var n=this.getTargetFromEvent(e);return n?this.onNodeDrop(n,dd,e,data):this.onContainerDrop(dd,e,data);},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups);}});Ext.data.SortTypes={none:function(s){return s;},stripTagsRE:/<\/?[^>]+>/gi,asText:function(s){return String(s).replace(this.stripTagsRE,"");},asUCText:function(s){return String(s).toUpperCase().replace(this.stripTagsRE,"");},asUCString:function(s){return String(s).toUpperCase();},asDate:function(s){if(!s){return 0;}
if(Ext.isDate(s)){return s.getTime();}
return Date.parse(String(s));},asFloat:function(s){var val=parseFloat(String(s).replace(/,/g,""));if(isNaN(val))val=0;return val;},asInt:function(s){var val=parseInt(String(s).replace(/,/g,""));if(isNaN(val))val=0;return val;}};Ext.data.Record=function(data,id){this.id=(id||id===0)?id:++Ext.data.Record.AUTO_ID;this.data=data;};Ext.data.Record.create=function(o){var f=Ext.extend(Ext.data.Record,{});var p=f.prototype;p.fields=new Ext.util.MixedCollection(false,function(field){return field.name;});for(var i=0,len=o.length;i<len;i++){p.fields.add(new Ext.data.Field(o[i]));}
f.getField=function(name){return p.fields.get(name);};return f;};Ext.data.Record.AUTO_ID=1000;Ext.data.Record.EDIT='edit';Ext.data.Record.REJECT='reject';Ext.data.Record.COMMIT='commit';Ext.data.Record.prototype={dirty:false,editing:false,error:null,modified:null,join:function(store){this.store=store;},set:function(name,value){if(String(this.data[name])==String(value)){return;}
this.dirty=true;if(!this.modified){this.modified={};}
if(typeof this.modified[name]=='undefined'){this.modified[name]=this.data[name];}
this.data[name]=value;if(!this.editing&&this.store){this.store.afterEdit(this);}},get:function(name){return this.data[name];},beginEdit:function(){this.editing=true;this.modified={};},cancelEdit:function(){this.editing=false;delete this.modified;},endEdit:function(){this.editing=false;if(this.dirty&&this.store){this.store.afterEdit(this);}},reject:function(silent){var m=this.modified;for(var n in m){if(typeof m[n]!="function"){this.data[n]=m[n];}}
this.dirty=false;delete this.modified;this.editing=false;if(this.store&&silent!==true){this.store.afterReject(this);}},commit:function(silent){this.dirty=false;delete this.modified;this.editing=false;if(this.store&&silent!==true){this.store.afterCommit(this);}},getChanges:function(){var m=this.modified,cs={};for(var n in m){if(m.hasOwnProperty(n)){cs[n]=this.data[n];}}
return cs;},hasError:function(){return this.error!=null;},clearError:function(){this.error=null;},copy:function(newId){return new this.constructor(Ext.apply({},this.data),newId||this.id);},isModified:function(fieldName){return!!(this.modified&&this.modified.hasOwnProperty(fieldName));}};Ext.StoreMgr=Ext.apply(new Ext.util.MixedCollection(),{register:function(){for(var i=0,s;s=arguments[i];i++){this.add(s);}},unregister:function(){for(var i=0,s;s=arguments[i];i++){this.remove(this.lookup(s));}},lookup:function(id){return typeof id=="object"?id:this.get(id);},getKey:function(o){return o.storeId||o.id;}});Ext.data.Store=function(config){this.data=new Ext.util.MixedCollection(false);this.data.getKey=function(o){return o.id;};this.baseParams={};this.paramNames={"start":"start","limit":"limit","sort":"sort","dir":"dir"};if(config&&config.data){this.inlineData=config.data;delete config.data;}
Ext.apply(this,config);if(this.url&&!this.proxy){this.proxy=new Ext.data.HttpProxy({url:this.url});}
if(this.reader){if(!this.recordType){this.recordType=this.reader.recordType;}
if(this.reader.onMetaChange){this.reader.onMetaChange=this.onMetaChange.createDelegate(this);}}
if(this.recordType){this.fields=this.recordType.prototype.fields;}
this.modified=[];this.addEvents('datachanged','metachange','add','remove','update','clear','beforeload','load','loadexception');if(this.proxy){this.relayEvents(this.proxy,["loadexception"]);}
this.sortToggle={};if(this.sortInfo){this.setDefaultSort(this.sortInfo.field,this.sortInfo.direction);}
Ext.data.Store.superclass.constructor.call(this);if(this.storeId||this.id){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,{remoteSort:false,pruneModifiedRecords:false,lastOptions:null,destroy:function(){if(this.storeId||this.id){Ext.StoreMgr.unregister(this);}
this.data=null;this.purgeListeners();},add:function(records){records=[].concat(records);if(records.length<1){return;}
for(var i=0,len=records.length;i<len;i++){records[i].join(this);}
var index=this.data.length;this.data.addAll(records);if(this.snapshot){this.snapshot.addAll(records);}
this.fireEvent("add",this,records,index);},addSorted:function(record){var index=this.findInsertIndex(record);this.insert(index,record);},remove:function(record){var index=this.data.indexOf(record);this.data.removeAt(index);if(this.pruneModifiedRecords){this.modified.remove(record);}
if(this.snapshot){this.snapshot.remove(record);}
this.fireEvent("remove",this,record,index);},removeAt:function(index){this.remove(this.getAt(index));},removeAll:function(){this.data.clear();if(this.snapshot){this.snapshot.clear();}
if(this.pruneModifiedRecords){this.modified=[];}
this.fireEvent("clear",this);},insert:function(index,records){records=[].concat(records);for(var i=0,len=records.length;i<len;i++){this.data.insert(index,records[i]);records[i].join(this);}
this.fireEvent("add",this,records,index);},indexOf:function(record){return this.data.indexOf(record);},indexOfId:function(id){return this.data.indexOfKey(id);},getById:function(id){return this.data.key(id);},getAt:function(index){return this.data.itemAt(index);},getRange:function(start,end){return this.data.getRange(start,end);},storeOptions:function(o){o=Ext.apply({},o);delete o.callback;delete o.scope;this.lastOptions=o;},load:function(options){options=options||{};if(this.fireEvent("beforeload",this,options)!==false){this.storeOptions(options);var p=Ext.apply(options.params||{},this.baseParams);if(this.sortInfo&&this.remoteSort){var pn=this.paramNames;p[pn["sort"]]=this.sortInfo.field;p[pn["dir"]]=this.sortInfo.direction;}
this.proxy.load(p,this.reader,this.loadRecords,this,options);return true;}else{return false;}},reload:function(options){this.load(Ext.applyIf(options||{},this.lastOptions));},loadRecords:function(o,options,success){if(!o||success===false){if(success!==false){this.fireEvent("load",this,[],options);}
if(options.callback){options.callback.call(options.scope||this,[],options,false);}
return;}
var r=o.records,t=o.totalRecords||r.length;if(!options||options.add!==true){if(this.pruneModifiedRecords){this.modified=[];}
for(var i=0,len=r.length;i<len;i++){r[i].join(this);}
if(this.snapshot){this.data=this.snapshot;delete this.snapshot;}
this.data.clear();this.data.addAll(r);this.totalLength=t;this.applySort();this.fireEvent("datachanged",this);}else{this.totalLength=Math.max(t,this.data.length+r.length);this.add(r);}
this.fireEvent("load",this,r,options);if(options.callback){options.callback.call(options.scope||this,r,options,true);}},loadData:function(o,append){var r=this.reader.readRecords(o);this.loadRecords(r,{add:append},true);},getCount:function(){return this.data.length||0;},getTotalCount:function(){return this.totalLength||0;},getSortState:function(){return this.sortInfo;},applySort:function(){if(this.sortInfo&&!this.remoteSort){var s=this.sortInfo,f=s.field;this.sortData(f,s.direction);}},sortData:function(f,direction){direction=direction||'ASC';var st=this.fields.get(f).sortType;var fn=function(r1,r2){var v1=st(r1.data[f]),v2=st(r2.data[f]);return v1>v2?1:(v1<v2?-1:0);};this.data.sort(direction,fn);if(this.snapshot&&this.snapshot!=this.data){this.snapshot.sort(direction,fn);}},setDefaultSort:function(field,dir){dir=dir?dir.toUpperCase():"ASC";this.sortInfo={field:field,direction:dir};this.sortToggle[field]=dir;},sort:function(fieldName,dir){var f=this.fields.get(fieldName);if(!f){return false;}
if(!dir){if(this.sortInfo&&this.sortInfo.field==f.name){dir=(this.sortToggle[f.name]||"ASC").toggle("ASC","DESC");}else{dir=f.sortDir;}}
var st=(this.sortToggle)?this.sortToggle[f.name]:null;var si=(this.sortInfo)?this.sortInfo:null;this.sortToggle[f.name]=dir;this.sortInfo={field:f.name,direction:dir};if(!this.remoteSort){this.applySort();this.fireEvent("datachanged",this);}else{if(!this.load(this.lastOptions)){if(st){this.sortToggle[f.name]=st;}
if(si){this.sortInfo=si;}}}},each:function(fn,scope){this.data.each(fn,scope);},getModifiedRecords:function(){return this.modified;},createFilterFn:function(property,value,anyMatch,caseSensitive){if(Ext.isEmpty(value,false)){return false;}
value=this.data.createValueMatcher(value,anyMatch,caseSensitive);return function(r){return value.test(r.data[property]);};},sum:function(property,start,end){var rs=this.data.items,v=0;start=start||0;end=(end||end===0)?end:rs.length-1;for(var i=start;i<=end;i++){v+=(rs[i].data[property]||0);}
return v;},filter:function(property,value,anyMatch,caseSensitive){var fn=this.createFilterFn(property,value,anyMatch,caseSensitive);return fn?this.filterBy(fn):this.clearFilter();},filterBy:function(fn,scope){this.snapshot=this.snapshot||this.data;this.data=this.queryBy(fn,scope||this);this.fireEvent("datachanged",this);},query:function(property,value,anyMatch,caseSensitive){var fn=this.createFilterFn(property,value,anyMatch,caseSensitive);return fn?this.queryBy(fn):this.data.clone();},queryBy:function(fn,scope){var data=this.snapshot||this.data;return data.filterBy(fn,scope||this);},find:function(property,value,start,anyMatch,caseSensitive){var fn=this.createFilterFn(property,value,anyMatch,caseSensitive);return fn?this.data.findIndexBy(fn,null,start):-1;},findBy:function(fn,scope,start){return this.data.findIndexBy(fn,scope,start);},collect:function(dataIndex,allowNull,bypassFilter){var d=(bypassFilter===true&&this.snapshot)?this.snapshot.items:this.data.items;var v,sv,r=[],l={};for(var i=0,len=d.length;i<len;i++){v=d[i].data[dataIndex];sv=String(v);if((allowNull||!Ext.isEmpty(v))&&!l[sv]){l[sv]=true;r[r.length]=v;}}
return r;},clearFilter:function(suppressEvent){if(this.isFiltered()){this.data=this.snapshot;delete this.snapshot;if(suppressEvent!==true){this.fireEvent("datachanged",this);}}},isFiltered:function(){return this.snapshot&&this.snapshot!=this.data;},afterEdit:function(record){if(this.modified.indexOf(record)==-1){this.modified.push(record);}
this.fireEvent("update",this,record,Ext.data.Record.EDIT);},afterReject:function(record){this.modified.remove(record);this.fireEvent("update",this,record,Ext.data.Record.REJECT);},afterCommit:function(record){this.modified.remove(record);this.fireEvent("update",this,record,Ext.data.Record.COMMIT);},commitChanges:function(){var m=this.modified.slice(0);this.modified=[];for(var i=0,len=m.length;i<len;i++){m[i].commit();}},rejectChanges:function(){var m=this.modified.slice(0);this.modified=[];for(var i=0,len=m.length;i<len;i++){m[i].reject();}},onMetaChange:function(meta,rtype,o){this.recordType=rtype;this.fields=rtype.prototype.fields;delete this.snapshot;this.sortInfo=meta.sortInfo;this.modified=[];this.fireEvent('metachange',this,this.reader.meta);},findInsertIndex:function(record){this.suspendEvents();var data=this.data.clone();this.data.add(record);this.applySort();var index=this.data.indexOf(record);this.data=data;this.resumeEvents();return index;}});Ext.data.SimpleStore=function(config){Ext.data.SimpleStore.superclass.constructor.call(this,Ext.apply(config,{reader:new Ext.data.ArrayReader({id:config.id},Ext.data.Record.create(config.fields))}));};Ext.extend(Ext.data.SimpleStore,Ext.data.Store,{loadData:function(data,append){if(this.expandData===true){var r=[];for(var i=0,len=data.length;i<len;i++){r[r.length]=[data[i]];}
data=r;}
Ext.data.SimpleStore.superclass.loadData.call(this,data,append);}});Ext.data.JsonStore=function(c){Ext.data.JsonStore.superclass.constructor.call(this,Ext.apply(c,{proxy:c.proxy||(!c.data?new Ext.data.HttpProxy({url:c.url}):undefined),reader:new Ext.data.JsonReader(c,c.fields)}));};Ext.extend(Ext.data.JsonStore,Ext.data.Store);Ext.data.Field=function(config){if(typeof config=="string"){config={name:config};}
Ext.apply(this,config);if(!this.type){this.type="auto";}
var st=Ext.data.SortTypes;if(typeof this.sortType=="string"){this.sortType=st[this.sortType];}
if(!this.sortType){switch(this.type){case"string":this.sortType=st.asUCString;break;case"date":this.sortType=st.asDate;break;default:this.sortType=st.none;}}
var stripRe=/[\$,%]/g;if(!this.convert){var cv,dateFormat=this.dateFormat;switch(this.type){case"":case"auto":case undefined:cv=function(v){return v;};break;case"string":cv=function(v){return(v===undefined||v===null)?'':String(v);};break;case"int":cv=function(v){return v!==undefined&&v!==null&&v!==''?parseInt(String(v).replace(stripRe,""),10):'';};break;case"float":cv=function(v){return v!==undefined&&v!==null&&v!==''?parseFloat(String(v).replace(stripRe,""),10):'';};break;case"bool":case"boolean":cv=function(v){return v===true||v==="true"||v==1;};break;case"date":cv=function(v){if(!v){return'';}
if(Ext.isDate(v)){return v;}
if(dateFormat){if(dateFormat=="timestamp"){return new Date(v*1000);}
if(dateFormat=="time"){return new Date(parseInt(v,10));}
return Date.parseDate(v,dateFormat);}
var parsed=Date.parse(v);return parsed?new Date(parsed):null;};break;}
this.convert=cv;}};Ext.data.Field.prototype={dateFormat:null,defaultValue:"",mapping:null,sortType:null,sortDir:"ASC"};Ext.data.DataReader=function(meta,recordType){this.meta=meta;this.recordType=Ext.isArray(recordType)?Ext.data.Record.create(recordType):recordType;};Ext.data.DataReader.prototype={};Ext.data.DataProxy=function(){this.addEvents('beforeload','load');Ext.data.DataProxy.superclass.constructor.call(this);};Ext.extend(Ext.data.DataProxy,Ext.util.Observable);Ext.data.MemoryProxy=function(data){Ext.data.MemoryProxy.superclass.constructor.call(this);this.data=data;};Ext.extend(Ext.data.MemoryProxy,Ext.data.DataProxy,{load:function(params,reader,callback,scope,arg){params=params||{};var result;try{result=reader.readRecords(this.data);}catch(e){this.fireEvent("loadexception",this,arg,null,e);callback.call(scope,null,arg,false);return;}
callback.call(scope,result,arg,true);},update:function(params,records){}});Ext.data.HttpProxy=function(conn){Ext.data.HttpProxy.superclass.constructor.call(this);this.conn=conn;this.useAjax=!conn||!conn.events;};Ext.extend(Ext.data.HttpProxy,Ext.data.DataProxy,{getConnection:function(){return this.useAjax?Ext.Ajax:this.conn;},load:function(params,reader,callback,scope,arg){if(this.fireEvent("beforeload",this,params)!==false){var o={params:params||{},request:{callback:callback,scope:scope,arg:arg},reader:reader,callback:this.loadResponse,scope:this};if(this.useAjax){Ext.applyIf(o,this.conn);if(this.activeRequest){Ext.Ajax.abort(this.activeRequest);}
this.activeRequest=Ext.Ajax.request(o);}else{this.conn.request(o);}}else{callback.call(scope||this,null,arg,false);}},loadResponse:function(o,success,response){delete this.activeRequest;if(!success){this.fireEvent("loadexception",this,o,response);o.request.callback.call(o.request.scope,null,o.request.arg,false);return;}
var result;try{result=o.reader.read(response);}catch(e){this.fireEvent("loadexception",this,o,response,e);o.request.callback.call(o.request.scope,null,o.request.arg,false);return;}
this.fireEvent("load",this,o,o.request.arg);o.request.callback.call(o.request.scope,result,o.request.arg,true);},update:function(dataSet){},updateResponse:function(dataSet){}});Ext.data.ScriptTagProxy=function(config){Ext.data.ScriptTagProxy.superclass.constructor.call(this);Ext.apply(this,config);this.head=document.getElementsByTagName("head")[0];};Ext.data.ScriptTagProxy.TRANS_ID=1000;Ext.extend(Ext.data.ScriptTagProxy,Ext.data.DataProxy,{timeout:30000,callbackParam:"callback",nocache:true,load:function(params,reader,callback,scope,arg){if(this.fireEvent("beforeload",this,params)!==false){var p=Ext.urlEncode(Ext.apply(params,this.extraParams));var url=this.url;url+=(url.indexOf("?")!=-1?"&":"?")+p;if(this.nocache){url+="&_dc="+(new Date().getTime());}
var transId=++Ext.data.ScriptTagProxy.TRANS_ID;var trans={id:transId,cb:"stcCallback"+transId,scriptId:"stcScript"+transId,params:params,arg:arg,url:url,callback:callback,scope:scope,reader:reader};var conn=this;window[trans.cb]=function(o){conn.handleResponse(o,trans);};url+=String.format("&{0}={1}",this.callbackParam,trans.cb);if(this.autoAbort!==false){this.abort();}
trans.timeoutId=this.handleFailure.defer(this.timeout,this,[trans]);var script=document.createElement("script");script.setAttribute("src",url);script.setAttribute("type","text/javascript");script.setAttribute("id",trans.scriptId);this.head.appendChild(script);this.trans=trans;}else{callback.call(scope||this,null,arg,false);}},isLoading:function(){return this.trans?true:false;},abort:function(){if(this.isLoading()){this.destroyTrans(this.trans);}},destroyTrans:function(trans,isLoaded){this.head.removeChild(document.getElementById(trans.scriptId));clearTimeout(trans.timeoutId);if(isLoaded){window[trans.cb]=undefined;try{delete window[trans.cb];}catch(e){}}else{window[trans.cb]=function(){window[trans.cb]=undefined;try{delete window[trans.cb];}catch(e){}};}},handleResponse:function(o,trans){this.trans=false;this.destroyTrans(trans,true);var result;try{result=trans.reader.readRecords(o);}catch(e){this.fireEvent("loadexception",this,o,trans.arg,e);trans.callback.call(trans.scope||window,null,trans.arg,false);return;}
this.fireEvent("load",this,o,trans.arg);trans.callback.call(trans.scope||window,result,trans.arg,true);},handleFailure:function(trans){this.trans=false;this.destroyTrans(trans,false);this.fireEvent("loadexception",this,null,trans.arg);trans.callback.call(trans.scope||window,null,trans.arg,false);}});Ext.data.JsonReader=function(meta,recordType){meta=meta||{};Ext.data.JsonReader.superclass.constructor.call(this,meta,recordType||meta.fields);};Ext.extend(Ext.data.JsonReader,Ext.data.DataReader,{read:function(response){var json=response.responseText;var o=eval("("+json+")");if(!o){throw{message:"JsonReader.read: Json object not found"};}
return this.readRecords(o);},onMetaChange:function(meta,recordType,o){},simpleAccess:function(obj,subsc){return obj[subsc];},getJsonAccessor:function(){var re=/[\[\.]/;return function(expr){try{return(re.test(expr))?new Function("obj","return obj."+expr):function(obj){return obj[expr];};}catch(e){}
return Ext.emptyFn;};}(),readRecords:function(o){this.jsonData=o;if(o.metaData){delete this.ef;this.meta=o.metaData;this.recordType=Ext.data.Record.create(o.metaData.fields);this.onMetaChange(this.meta,this.recordType,o);}
var s=this.meta,Record=this.recordType,f=Record.prototype.fields,fi=f.items,fl=f.length;if(!this.ef){if(s.totalProperty){this.getTotal=this.getJsonAccessor(s.totalProperty);}
if(s.successProperty){this.getSuccess=this.getJsonAccessor(s.successProperty);}
this.getRoot=s.root?this.getJsonAccessor(s.root):function(p){return p;};if(s.id){var g=this.getJsonAccessor(s.id);this.getId=function(rec){var r=g(rec);return(r===undefined||r==="")?null:r;};}else{this.getId=function(){return null;};}
this.ef=[];for(var i=0;i<fl;i++){f=fi[i];var map=(f.mapping!==undefined&&f.mapping!==null)?f.mapping:f.name;this.ef[i]=this.getJsonAccessor(map);}}
var root=this.getRoot(o),c=root.length,totalRecords=c,success=true;if(s.totalProperty){var v=parseInt(this.getTotal(o),10);if(!isNaN(v)){totalRecords=v;}}
if(s.successProperty){var v=this.getSuccess(o);if(v===false||v==='false'){success=false;}}
var records=[];for(var i=0;i<c;i++){var n=root[i];var values={};var id=this.getId(n);for(var j=0;j<fl;j++){f=fi[j];var v=this.ef[j](n);values[f.name]=f.convert((v!==undefined)?v:f.defaultValue,n);}
var record=new Record(values,id);record.json=n;records[i]=record;}
return{success:success,records:records,totalRecords:totalRecords};}});Ext.data.XmlReader=function(meta,recordType){meta=meta||{};Ext.data.XmlReader.superclass.constructor.call(this,meta,recordType||meta.fields);};Ext.extend(Ext.data.XmlReader,Ext.data.DataReader,{read:function(response){var doc=response.responseXML;if(!doc){throw{message:"XmlReader.read: XML Document not available"};}
return this.readRecords(doc);},readRecords:function(doc){this.xmlData=doc;var root=doc.documentElement||doc;var q=Ext.DomQuery;var recordType=this.recordType,fields=recordType.prototype.fields;var sid=this.meta.id;var totalRecords=0,success=true;if(this.meta.totalRecords){totalRecords=q.selectNumber(this.meta.totalRecords,root,0);}
if(this.meta.success){var sv=q.selectValue(this.meta.success,root,true);success=sv!==false&&sv!=='false';}
var records=[];var ns=q.select(this.meta.record,root);for(var i=0,len=ns.length;i<len;i++){var n=ns[i];var values={};var id=sid?q.selectValue(sid,n):undefined;for(var j=0,jlen=fields.length;j<jlen;j++){var f=fields.items[j];var v=q.selectValue(f.mapping||f.name,n,f.defaultValue);v=f.convert(v,n);values[f.name]=v;}
var record=new recordType(values,id);record.node=n;records[records.length]=record;}
return{success:success,records:records,totalRecords:totalRecords||records.length};}});Ext.data.ArrayReader=Ext.extend(Ext.data.JsonReader,{readRecords:function(o){var sid=this.meta?this.meta.id:null;var recordType=this.recordType,fields=recordType.prototype.fields;var records=[];var root=o;for(var i=0;i<root.length;i++){var n=root[i];var values={};var id=((sid||sid===0)&&n[sid]!==undefined&&n[sid]!==""?n[sid]:null);for(var j=0,jlen=fields.length;j<jlen;j++){var f=fields.items[j];var k=f.mapping!==undefined&&f.mapping!==null?f.mapping:j;var v=n[k]!==undefined?n[k]:f.defaultValue;v=f.convert(v,n);values[f.name]=v;}
var record=new recordType(values,id);record.json=n;records[records.length]=record;}
return{records:records,totalRecords:records.length};}});Ext.data.Tree=function(root){this.nodeHash={};this.root=null;if(root){this.setRootNode(root);}
this.addEvents("append","remove","move","insert","beforeappend","beforeremove","beforemove","beforeinsert");Ext.data.Tree.superclass.constructor.call(this);};Ext.extend(Ext.data.Tree,Ext.util.Observable,{pathSeparator:"/",proxyNodeEvent:function(){return this.fireEvent.apply(this,arguments);},getRootNode:function(){return this.root;},setRootNode:function(node){this.root=node;node.ownerTree=this;node.isRoot=true;this.registerNode(node);return node;},getNodeById:function(id){return this.nodeHash[id];},registerNode:function(node){this.nodeHash[node.id]=node;},unregisterNode:function(node){delete this.nodeHash[node.id];},toString:function(){return"[Tree"+(this.id?" "+this.id:"")+"]";}});Ext.data.Node=function(attributes){this.attributes=attributes||{};this.leaf=this.attributes.leaf;this.id=this.attributes.id;if(!this.id){this.id=Ext.id(null,"ynode-");this.attributes.id=this.id;}
this.childNodes=[];if(!this.childNodes.indexOf){this.childNodes.indexOf=function(o){for(var i=0,len=this.length;i<len;i++){if(this[i]==o)return i;}
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(evtName){if(Ext.data.Node.superclass.fireEvent.apply(this,arguments)===false){return false;}
var ot=this.getOwnerTree();if(ot){if(ot.proxyNodeEvent.apply(ot,arguments)===false){return false;}}
return true;},isLeaf:function(){return this.leaf===true;},setFirstChild:function(node){this.firstChild=node;},setLastChild:function(node){this.lastChild=node;},isLast:function(){return(!this.parentNode?true:this.parentNode.lastChild==this);},isFirst:function(){return(!this.parentNode?true:this.parentNode.firstChild==this);},hasChildNodes:function(){return!this.isLeaf()&&this.childNodes.length>0;},isExpandable:function(){return this.attributes.expandable||this.hasChildNodes();},appendChild:function(node){var multi=false;if(Ext.isArray(node)){multi=node;}else if(arguments.length>1){multi=arguments;}
if(multi){for(var i=0,len=multi.length;i<len;i++){this.appendChild(multi[i]);}}else{if(this.fireEvent("beforeappend",this.ownerTree,this,node)===false){return false;}
var index=this.childNodes.length;var oldParent=node.parentNode;if(oldParent){if(node.fireEvent("beforemove",node.getOwnerTree(),node,oldParent,this,index)===false){return false;}
oldParent.removeChild(node);}
index=this.childNodes.length;if(index==0){this.setFirstChild(node);}
this.childNodes.push(node);node.parentNode=this;var ps=this.childNodes[index-1];if(ps){node.previousSibling=ps;ps.nextSibling=node;}else{node.previousSibling=null;}
node.nextSibling=null;this.setLastChild(node);node.setOwnerTree(this.getOwnerTree());this.fireEvent("append",this.ownerTree,this,node,index);if(oldParent){node.fireEvent("move",this.ownerTree,node,oldParent,this,index);}
return node;}},removeChild:function(node){var index=this.childNodes.indexOf(node);if(index==-1){return false;}
if(this.fireEvent("beforeremove",this.ownerTree,this,node)===false){return false;}
this.childNodes.splice(index,1);if(node.previousSibling){node.previousSibling.nextSibling=node.nextSibling;}
if(node.nextSibling){node.nextSibling.previousSibling=node.previousSibling;}
if(this.firstChild==node){this.setFirstChild(node.nextSibling);}
if(this.lastChild==node){this.setLastChild(node.previousSibling);}
node.setOwnerTree(null);node.parentNode=null;node.previousSibling=null;node.nextSibling=null;this.fireEvent("remove",this.ownerTree,this,node);return node;},insertBefore:function(node,refNode){if(!refNode){return this.appendChild(node);}
if(node==refNode){return false;}
if(this.fireEvent("beforeinsert",this.ownerTree,this,node,refNode)===false){return false;}
var index=this.childNodes.indexOf(refNode);var oldParent=node.parentNode;var refIndex=index;if(oldParent==this&&this.childNodes.indexOf(node)<index){refIndex--;}
if(oldParent){if(node.fireEvent("beforemove",node.getOwnerTree(),node,oldParent,this,index,refNode)===false){return false;}
oldParent.removeChild(node);}
if(refIndex==0){this.setFirstChild(node);}
this.childNodes.splice(refIndex,0,node);node.parentNode=this;var ps=this.childNodes[refIndex-1];if(ps){node.previousSibling=ps;ps.nextSibling=node;}else{node.previousSibling=null;}
node.nextSibling=refNode;refNode.previousSibling=node;node.setOwnerTree(this.getOwnerTree());this.fireEvent("insert",this.ownerTree,this,node,refNode);if(oldParent){node.fireEvent("move",this.ownerTree,node,oldParent,this,refIndex,refNode);}
return node;},remove:function(){this.parentNode.removeChild(this);return this;},item:function(index){return this.childNodes[index];},replaceChild:function(newChild,oldChild){var s=oldChild?oldChild.nextSibling:null;this.removeChild(oldChild);this.insertBefore(newChild,s);return oldChild;},indexOf:function(child){return this.childNodes.indexOf(child);},getOwnerTree:function(){if(!this.ownerTree){var p=this;while(p){if(p.ownerTree){this.ownerTree=p.ownerTree;break;}
p=p.parentNode;}}
return this.ownerTree;},getDepth:function(){var depth=0;var p=this;while(p.parentNode){++depth;p=p.parentNode;}
return depth;},setOwnerTree:function(tree){if(tree!=this.ownerTree){if(this.ownerTree){this.ownerTree.unregisterNode(this);}
this.ownerTree=tree;var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].setOwnerTree(tree);}
if(tree){tree.registerNode(this);}}},getPath:function(attr){attr=attr||"id";var p=this.parentNode;var b=[this.attributes[attr]];while(p){b.unshift(p.attributes[attr]);p=p.parentNode;}
var sep=this.getOwnerTree().pathSeparator;return sep+b.join(sep);},bubble:function(fn,scope,args){var p=this;while(p){if(fn.apply(scope||p,args||[p])===false){break;}
p=p.parentNode;}},cascade:function(fn,scope,args){if(fn.apply(scope||this,args||[this])!==false){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].cascade(fn,scope,args);}}},eachChild:function(fn,scope,args){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){if(fn.apply(scope||this,args||[cs[i]])===false){break;}}},findChild:function(attribute,value){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){if(cs[i].attributes[attribute]==value){return cs[i];}}
return null;},findChildBy:function(fn,scope){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){if(fn.call(scope||cs[i],cs[i])===true){return cs[i];}}
return null;},sort:function(fn,scope){var cs=this.childNodes;var len=cs.length;if(len>0){var sortFn=scope?function(){fn.apply(scope,arguments);}:fn;cs.sort(sortFn);for(var i=0;i<len;i++){var n=cs[i];n.previousSibling=cs[i-1];n.nextSibling=cs[i+1];if(i==0){this.setFirstChild(n);}
if(i==len-1){this.setLastChild(n);}}}},contains:function(node){return node.isAncestor(this);},isAncestor:function(node){var p=this.parentNode;while(p){if(p==node){return true;}
p=p.parentNode;}
return false;},toString:function(){return"[Node"+(this.id?" "+this.id:"")+"]";}});Ext.data.GroupingStore=Ext.extend(Ext.data.Store,{remoteGroup:false,groupOnSort:false,clearGrouping:function(){this.groupField=false;if(this.remoteGroup){if(this.baseParams){delete this.baseParams.groupBy;}
this.reload();}else{this.applySort();this.fireEvent('datachanged',this);}},groupBy:function(field,forceRegroup){if(this.groupField==field&&!forceRegroup){return;}
this.groupField=field;if(this.remoteGroup){if(!this.baseParams){this.baseParams={};}
this.baseParams['groupBy']=field;}
if(this.groupOnSort){this.sort(field);return;}
if(this.remoteGroup){this.reload();}else{var si=this.sortInfo||{};if(si.field!=field){this.applySort();}else{this.sortData(field);}
this.fireEvent('datachanged',this);}},applySort:function(){Ext.data.GroupingStore.superclass.applySort.call(this);if(!this.groupOnSort&&!this.remoteGroup){var gs=this.getGroupState();if(gs&&gs!=this.sortInfo.field){this.sortData(this.groupField);}}},applyGrouping:function(alwaysFireChange){if(this.groupField!==false){this.groupBy(this.groupField,true);return true;}else{if(alwaysFireChange===true){this.fireEvent('datachanged',this);}
return false;}},getGroupState:function(){return this.groupOnSort&&this.groupField!==false?(this.sortInfo?this.sortInfo.field:undefined):this.groupField;}});Ext.ComponentMgr=function(){var all=new Ext.util.MixedCollection();var types={};return{register:function(c){all.add(c);},unregister:function(c){all.remove(c);},get:function(id){return all.get(id);},onAvailable:function(id,fn,scope){all.on("add",function(index,o){if(o.id==id){fn.call(scope||o,o);all.un("add",fn,scope);}});},all:all,registerType:function(xtype,cls){types[xtype]=cls;cls.xtype=xtype;},create:function(config,defaultType){return new types[config.xtype||defaultType](config);}};}();Ext.reg=Ext.ComponentMgr.registerType;Ext.Component=function(config){config=config||{};if(config.initialConfig){if(config.isAction){this.baseAction=config;}
config=config.initialConfig;}else if(config.tagName||config.dom||typeof config=="string"){config={applyTo:config,id:config.id||config};}
this.initialConfig=config;Ext.apply(this,config);this.addEvents('disable','enable','beforeshow','show','beforehide','hide','beforerender','render','beforedestroy','destroy','beforestaterestore','staterestore','beforestatesave','statesave');this.getId();Ext.ComponentMgr.register(this);Ext.Component.superclass.constructor.call(this);if(this.baseAction){this.baseAction.addComponent(this);}
this.initComponent();if(this.plugins){if(Ext.isArray(this.plugins)){for(var i=0,len=this.plugins.length;i<len;i++){this.plugins[i]=this.initPlugin(this.plugins[i]);}}else{this.plugins=this.initPlugin(this.plugins);}}
if(this.stateful!==false){this.initState(config);}
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,{disabledClass:"x-item-disabled",allowDomMove:true,autoShow:false,hideMode:'display',hideParent:false,hidden:false,disabled:false,rendered:false,ctype:"Ext.Component",actionMode:"el",getActionEl:function(){return this[this.actionMode];},initPlugin:function(p){p.init(this);return p;},initComponent:Ext.emptyFn,render:function(container,position){if(!this.rendered&&this.fireEvent("beforerender",this)!==false){if(!container&&this.el){this.el=Ext.get(this.el);container=this.el.dom.parentNode;this.allowDomMove=false;}
this.container=Ext.get(container);if(this.ctCls){this.container.addClass(this.ctCls);}
this.rendered=true;if(position!==undefined){if(typeof position=='number'){position=this.container.dom.childNodes[position];}else{position=Ext.getDom(position);}}
this.onRender(this.container,position||null);if(this.autoShow){this.el.removeClass(['x-hidden','x-hide-'+this.hideMode]);}
if(this.cls){this.el.addClass(this.cls);delete this.cls;}
if(this.style){this.el.applyStyles(this.style);delete this.style;}
if(this.overCls){this.el.addClassOnOver(this.overCls);}
this.fireEvent("render",this);this.afterRender(this.container);if(this.hidden){this.hide();}
if(this.disabled){this.disable();}
if(this.stateful!==false){this.initStateEvents();}}
return this;},initState:function(config){if(Ext.state.Manager){var id=this.getStateId();if(id){var state=Ext.state.Manager.get(id);if(state){if(this.fireEvent('beforestaterestore',this,state)!==false){this.applyState(state);this.fireEvent('staterestore',this,state);}}}}},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 i=0,e;e=this.stateEvents[i];i++){this.on(e,this.saveState,this,{delay:100});}}},applyState:function(state,config){if(state){Ext.apply(this,state);}},getState:function(){return null;},saveState:function(){if(Ext.state.Manager){var id=this.getStateId();if(id){var state=this.getState();if(this.fireEvent('beforestatesave',this,state)!==false){Ext.state.Manager.set(id,state);this.fireEvent('statesave',this,state);}}}},applyToMarkup:function(el){this.allowDomMove=false;this.el=Ext.get(el);this.render(this.el.dom.parentNode);},addClass:function(cls){if(this.el){this.el.addClass(cls);}else{this.cls=this.cls?this.cls+' '+cls:cls;}},removeClass:function(cls){if(this.el){this.el.removeClass(cls);}else if(this.cls){this.cls=this.cls.split(' ').remove(cls).join(' ');}},onRender:function(ct,position){if(this.autoEl){if(typeof this.autoEl=='string'){this.el=document.createElement(this.autoEl);}else{var div=document.createElement('div');Ext.DomHelper.overwrite(div,this.autoEl);this.el=div.firstChild;}
if(!this.el.id){this.el.id=this.getId();}}
if(this.el){this.el=Ext.get(this.el);if(this.allowDomMove!==false){ct.dom.insertBefore(this.el.dom,position);}}},getAutoCreate:function(){var cfg=typeof this.autoCreate=="object"?this.autoCreate:Ext.apply({},this.defaultAutoCreate);if(this.id&&!cfg.id){cfg.id=this.id;}
return cfg;},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.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(selectText,delay){if(delay){this.focus.defer(typeof delay=='number'?delay:10,this,[selectText,false]);return;}
if(this.rendered){this.el.focus();if(selectText===true){this.el.dom.select();}}
return this;},blur:function(){if(this.rendered){this.el.blur();}
return this;},disable:function(){if(this.rendered){this.onDisable();}
this.disabled=true;this.fireEvent("disable",this);return this;},onDisable:function(){this.getActionEl().addClass(this.disabledClass);this.el.dom.disabled=true;},enable:function(){if(this.rendered){this.onEnable();}
this.disabled=false;this.fireEvent("enable",this);return this;},onEnable:function(){this.getActionEl().removeClass(this.disabledClass);this.el.dom.disabled=false;},setDisabled:function(disabled){this[disabled?"disable":"enable"]();},show:function(){if(this.fireEvent("beforeshow",this)!==false){this.hidden=false;if(this.autoRender){this.render(typeof this.autoRender=='boolean'?Ext.getBody():this.autoRender);}
if(this.rendered){this.onShow();}
this.fireEvent("show",this);}
return this;},onShow:function(){if(this.hideParent){this.container.removeClass('x-hide-'+this.hideMode);}else{this.getActionEl().removeClass('x-hide-'+this.hideMode);}},hide:function(){if(this.fireEvent("beforehide",this)!==false){this.hidden=true;if(this.rendered){this.onHide();}
this.fireEvent("hide",this);}
return this;},onHide:function(){if(this.hideParent){this.container.addClass('x-hide-'+this.hideMode);}else{this.getActionEl().addClass('x-hide-'+this.hideMode);}},setVisible:function(visible){if(visible){this.show();}else{this.hide();}
return this;},isVisible:function(){return this.rendered&&this.getActionEl().isVisible();},cloneConfig:function(overrides){overrides=overrides||{};var id=overrides.id||Ext.id();var cfg=Ext.applyIf(overrides,this.initialConfig);cfg.id=id;return new this.constructor(cfg);},getXType:function(){return this.constructor.xtype;},isXType:function(xtype,shallow){if(typeof xtype=='function'){xtype=xtype.xtype;}else if(typeof xtype=='object'){xtype=xtype.constructor.xtype;}
return!shallow?('/'+this.getXTypes()+'/').indexOf('/'+xtype+'/')!=-1:this.constructor.xtype==xtype;},getXTypes:function(){var tc=this.constructor;if(!tc.xtypes){var c=[],sc=this;while(sc&&sc.constructor.xtype){c.unshift(sc.constructor.xtype);sc=sc.constructor.superclass;}
tc.xtypeChain=c;tc.xtypes=c.join('/');}
return tc.xtypes;},findParentBy:function(fn){for(var p=this.ownerCt;(p!=null)&&!fn(p,this);p=p.ownerCt);return p||null;},findParentByType:function(xtype){return typeof xtype=='function'?this.findParentBy(function(p){return p.constructor===xtype;}):this.findParentBy(function(p){return p.constructor.xtype===xtype;});},mon:function(item,ename,fn,scope,opt){if(!this.mons){this.mons=[];this.on('beforedestroy',function(){for(var i=0,len=this.mons.length;i<len;i++){var m=this.mons[i];m.item.un(m.ename,m.fn,m.scope);}},this);}
this.mons.push({item:item,ename:ename,fn:fn,scope:scope});item.on(ename,fn,scope,opt);}});Ext.reg('component',Ext.Component);Ext.Action=function(config){this.initialConfig=config;this.items=[];}
Ext.Action.prototype={isAction:true,setText:function(text){this.initialConfig.text=text;this.callEach('setText',[text]);},getText:function(){return this.initialConfig.text;},setIconClass:function(cls){this.initialConfig.iconCls=cls;this.callEach('setIconClass',[cls]);},getIconClass:function(){return this.initialConfig.iconCls;},setDisabled:function(v){this.initialConfig.disabled=v;this.callEach('setDisabled',[v]);},enable:function(){this.setDisabled(false);},disable:function(){this.setDisabled(true);},isDisabled:function(){return this.initialConfig.disabled;},setHidden:function(v){this.initialConfig.hidden=v;this.callEach('setVisible',[!v]);},show:function(){this.setHidden(false);},hide:function(){this.setHidden(true);},isHidden:function(){return this.initialConfig.hidden;},setHandler:function(fn,scope){this.initialConfig.handler=fn;this.initialConfig.scope=scope;this.callEach('setHandler',[fn,scope]);},each:function(fn,scope){Ext.each(this.items,fn,scope);},callEach:function(fnName,args){var cs=this.items;for(var i=0,len=cs.length;i<len;i++){cs[i][fnName].apply(cs[i],args);}},addComponent:function(comp){this.items.push(comp);comp.on('destroy',this.removeComponent,this);},removeComponent:function(comp){this.items.remove(comp);},execute:function(){this.initialConfig.handler.apply(this.initialConfig.scope||window,arguments);}};(function(){Ext.Layer=function(config,existingEl){config=config||{};var dh=Ext.DomHelper;var cp=config.parentEl,pel=cp?Ext.getDom(cp):document.body;if(existingEl){this.dom=Ext.getDom(existingEl);}
if(!this.dom){var o=config.dh||{tag:"div",cls:"x-layer"};this.dom=dh.append(pel,o);}
if(config.cls){this.addClass(config.cls);}
this.constrain=config.constrain!==false;this.visibilityMode=Ext.Element.VISIBILITY;if(config.id){this.id=this.dom.id=config.id;}else{this.id=Ext.id(this.dom);}
this.zindex=config.zindex||this.getZIndex();this.position("absolute",this.zindex);if(config.shadow){this.shadowOffset=config.shadowOffset||4;this.shadow=new Ext.Shadow({offset:this.shadowOffset,mode:config.shadow});}else{this.shadowOffset=0;}
this.useShim=config.shim!==false&&Ext.useShims;this.useDisplay=config.useDisplay;this.hide();};var supr=Ext.Element.prototype;var shims=[];Ext.extend(Ext.Layer,Ext.Element,{getZIndex:function(){return this.zindex||parseInt(this.getStyle("z-index"),10)||11000;},getShim:function(){if(!this.useShim){return null;}
if(this.shim){return this.shim;}
var shim=shims.shift();if(!shim){shim=this.createShim();shim.enableDisplayMode('block');shim.dom.style.display='none';shim.dom.style.visibility='visible';}
var pn=this.dom.parentNode;if(shim.dom.parentNode!=pn){pn.insertBefore(shim.dom,this.dom);}
shim.setStyle('z-index',this.getZIndex()-2);this.shim=shim;return shim;},hideShim:function(){if(this.shim){this.shim.setDisplayed(false);shims.push(this.shim);delete this.shim;}},disableShadow:function(){if(this.shadow){this.shadowDisabled=true;this.shadow.hide();this.lastShadowOffset=this.shadowOffset;this.shadowOffset=0;}},enableShadow:function(show){if(this.shadow){this.shadowDisabled=false;this.shadowOffset=this.lastShadowOffset;delete this.lastShadowOffset;if(show){this.sync(true);}}},sync:function(doShow){var sw=this.shadow;if(!this.updating&&this.isVisible()&&(sw||this.useShim)){var sh=this.getShim();var w=this.getWidth(),h=this.getHeight();var l=this.getLeft(true),t=this.getTop(true);if(sw&&!this.shadowDisabled){if(doShow&&!sw.isVisible()){sw.show(this);}else{sw.realign(l,t,w,h);}
if(sh){if(doShow){sh.show();}
var a=sw.adjusts,s=sh.dom.style;s.left=(Math.min(l,l+a.l))+"px";s.top=(Math.min(t,t+a.t))+"px";s.width=(w+a.w)+"px";s.height=(h+a.h)+"px";}}else if(sh){if(doShow){sh.show();}
sh.setSize(w,h);sh.setLeftTop(l,t);}}},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(negOffset){if(this.shadow){this.shadow.hide();}
this.hideShim();},constrainXY:function(){if(this.constrain){var vw=Ext.lib.Dom.getViewWidth(),vh=Ext.lib.Dom.getViewHeight();var s=Ext.getDoc().getScroll();var xy=this.getXY();var x=xy[0],y=xy[1];var w=this.dom.offsetWidth+this.shadowOffset,h=this.dom.offsetHeight+this.shadowOffset;var moved=false;if((x+w)>vw+s.left){x=vw-w-this.shadowOffset;moved=true;}
if((y+h)>vh+s.top){y=vh-h-this.shadowOffset;moved=true;}
if(x<s.left){x=s.left;moved=true;}
if(y<s.top){y=s.top;moved=true;}
if(moved){if(this.avoidY){var ay=this.avoidY;if(y<=ay&&(y+h)>=ay){y=ay-h-5;}}
xy=[x,y];this.storeXY(xy);supr.setXY.call(this,xy);this.sync();}}},isVisible:function(){return this.visible;},showAction:function(){this.visible=true;if(this.useDisplay===true){this.setDisplayed("");}else if(this.lastXY){supr.setXY.call(this,this.lastXY);}else if(this.lastLT){supr.setLeftTop.call(this,this.lastLT[0],this.lastLT[1]);}},hideAction:function(){this.visible=false;if(this.useDisplay===true){this.setDisplayed(false);}else{this.setLeftTop(-10000,-10000);}},setVisible:function(v,a,d,c,e){if(v){this.showAction();}
if(a&&v){var cb=function(){this.sync(true);if(c){c();}}.createDelegate(this);supr.setVisible.call(this,true,true,d,cb,e);}else{if(!v){this.hideUnders(true);}
var cb=c;if(a){cb=function(){this.hideAction();if(c){c();}}.createDelegate(this);}
supr.setVisible.call(this,v,a,d,cb,e);if(v){this.sync(true);}else if(!a){this.hideAction();}}},storeXY:function(xy){delete this.lastLT;this.lastXY=xy;},storeLeftTop:function(left,top){delete this.lastXY;this.lastLT=[left,top];},beforeFx:function(){this.beforeAction();return Ext.Layer.superclass.beforeFx.apply(this,arguments);},afterFx:function(){Ext.Layer.superclass.afterFx.apply(this,arguments);this.sync(this.isVisible());},beforeAction:function(){if(!this.updating&&this.shadow){this.shadow.hide();}},setLeft:function(left){this.storeLeftTop(left,this.getTop(true));supr.setLeft.apply(this,arguments);this.sync();},setTop:function(top){this.storeLeftTop(this.getLeft(true),top);supr.setTop.apply(this,arguments);this.sync();},setLeftTop:function(left,top){this.storeLeftTop(left,top);supr.setLeftTop.apply(this,arguments);this.sync();},setXY:function(xy,a,d,c,e){this.fixDisplay();this.beforeAction();this.storeXY(xy);var cb=this.createCB(c);supr.setXY.call(this,xy,a,d,cb,e);if(!a){cb();}},createCB:function(c){var el=this;return function(){el.constrainXY();el.sync(true);if(c){c();}};},setX:function(x,a,d,c,e){this.setXY([x,this.getY()],a,d,c,e);},setY:function(y,a,d,c,e){this.setXY([this.getX(),y],a,d,c,e);},setSize:function(w,h,a,d,c,e){this.beforeAction();var cb=this.createCB(c);supr.setSize.call(this,w,h,a,d,cb,e);if(!a){cb();}},setWidth:function(w,a,d,c,e){this.beforeAction();var cb=this.createCB(c);supr.setWidth.call(this,w,a,d,cb,e);if(!a){cb();}},setHeight:function(h,a,d,c,e){this.beforeAction();var cb=this.createCB(c);supr.setHeight.call(this,h,a,d,cb,e);if(!a){cb();}},setBounds:function(x,y,w,h,a,d,c,e){this.beforeAction();var cb=this.createCB(c);if(!a){this.storeXY([x,y]);supr.setXY.call(this,[x,y]);supr.setSize.call(this,w,h,a,d,cb,e);cb();}else{supr.setBounds.call(this,x,y,w,h,a,d,cb,e);}
return this;},setZIndex:function(zindex){this.zindex=zindex;this.setStyle("z-index",zindex+2);if(this.shadow){this.shadow.setZIndex(zindex+1);}
if(this.shim){this.shim.setStyle("z-index",zindex);}}});})();Ext.Shadow=function(config){Ext.apply(this,config);if(typeof this.mode!="string"){this.mode=this.defaultMode;}
var o=this.offset,a={h:0};var rad=Math.floor(this.offset/2);switch(this.mode.toLowerCase()){case"drop":a.w=0;a.l=a.t=o;a.t-=1;if(Ext.isIE){a.l-=this.offset+rad;a.t-=this.offset+rad;a.w-=rad;a.h-=rad;a.t+=1;}
break;case"sides":a.w=(o*2);a.l=-o;a.t=o-1;if(Ext.isIE){a.l-=(this.offset-rad);a.t-=this.offset+rad;a.l+=1;a.w-=(this.offset-rad)*2;a.w-=rad+1;a.h-=1;}
break;case"frame":a.w=a.h=(o*2);a.l=a.t=-o;a.t+=1;a.h-=2;if(Ext.isIE){a.l-=(this.offset-rad);a.t-=(this.offset-rad);a.l+=1;a.w-=(this.offset+rad+1);a.h-=(this.offset+rad);a.h+=1;}
break;};this.adjusts=a;};Ext.Shadow.prototype={offset:4,defaultMode:"drop",show:function(target){target=Ext.get(target);if(!this.el){this.el=Ext.Shadow.Pool.pull();if(this.el.dom.nextSibling!=target.dom){this.el.insertBefore(target);}}
this.el.setStyle("z-index",this.zIndex||parseInt(target.getStyle("z-index"),10)-1);if(Ext.isIE){this.el.dom.style.filter="progid:DXImageTransform.Microsoft.alpha(opacity=50) progid:DXImageTransform.Microsoft.Blur(pixelradius="+(this.offset)+")";}
this.realign(target.getLeft(true),target.getTop(true),target.getWidth(),target.getHeight());this.el.dom.style.display="block";},isVisible:function(){return this.el?true:false;},realign:function(l,t,w,h){if(!this.el){return;}
var a=this.adjusts,d=this.el.dom,s=d.style;var iea=0;s.left=(l+a.l)+"px";s.top=(t+a.t)+"px";var sw=(w+a.w),sh=(h+a.h),sws=sw+"px",shs=sh+"px";if(s.width!=sws||s.height!=shs){s.width=sws;s.height=shs;if(!Ext.isIE){var cn=d.childNodes;var sww=Math.max(0,(sw-12))+"px";cn[0].childNodes[1].style.width=sww;cn[1].childNodes[1].style.width=sww;cn[2].childNodes[1].style.width=sww;cn[1].style.height=Math.max(0,(sh-12))+"px";}}},hide:function(){if(this.el){this.el.dom.style.display="none";Ext.Shadow.Pool.push(this.el);delete this.el;}},setZIndex:function(z){this.zIndex=z;if(this.el){this.el.setStyle("z-index",z);}}};Ext.Shadow.Pool=function(){var p=[];var markup=Ext.isIE?'<div class="x-ie-shadow"></div>':'<div class="x-shadow"><div class="xst"><div class="xstl"></div><div class="xstc"></div><div class="xstr"></div></div><div class="xsc"><div class="xsml"></div><div class="xsmc"></div><div class="xsmr"></div></div><div class="xsb"><div class="xsbl"></div><div class="xsbc"></div><div class="xsbr"></div></div></div>';return{pull:function(){var sh=p.shift();if(!sh){sh=Ext.get(Ext.DomHelper.insertHtml("beforeBegin",document.body.firstChild,markup));sh.autoBoxAdjust=false;}
return sh;},push:function(sh){p.push(sh);}};}();Ext.BoxComponent=Ext.extend(Ext.Component,{initComponent:function(){Ext.BoxComponent.superclass.initComponent.call(this);this.addEvents('resize','move');},boxReady:false,deferHeight:false,setSize:function(w,h){if(typeof w=='object'){h=w.height;w=w.width;}
if(!this.boxReady){this.width=w;this.height=h;return this;}
if(this.lastSize&&this.lastSize.width==w&&this.lastSize.height==h){return this;}
this.lastSize={width:w,height:h};var adj=this.adjustSize(w,h);var aw=adj.width,ah=adj.height;if(aw!==undefined||ah!==undefined){var rz=this.getResizeEl();if(!this.deferHeight&&aw!==undefined&&ah!==undefined){rz.setSize(aw,ah);}else if(!this.deferHeight&&ah!==undefined){rz.setHeight(ah);}else if(aw!==undefined){rz.setWidth(aw);}
this.onResize(aw,ah,w,h);this.fireEvent('resize',this,aw,ah,w,h);}
return this;},setWidth:function(width){return this.setSize(width);},setHeight:function(height){return this.setSize(undefined,height);},getSize:function(){return this.el.getSize();},getPosition:function(local){if(local===true){return[this.el.getLeft(true),this.el.getTop(true)];}
return this.xy||this.el.getXY();},getBox:function(local){var s=this.el.getSize();if(local===true){s.x=this.el.getLeft(true);s.y=this.el.getTop(true);}else{var xy=this.xy||this.el.getXY();s.x=xy[0];s.y=xy[1];}
return s;},updateBox:function(box){this.setSize(box.width,box.height);this.setPagePosition(box.x,box.y);return this;},getResizeEl:function(){return this.resizeEl||this.el;},getPositionEl:function(){return this.positionEl||this.el;},setPosition:function(x,y){if(x&&typeof x[1]=='number'){y=x[1];x=x[0];}
this.x=x;this.y=y;if(!this.boxReady){return this;}
var adj=this.adjustPosition(x,y);var ax=adj.x,ay=adj.y;var el=this.getPositionEl();if(ax!==undefined||ay!==undefined){if(ax!==undefined&&ay!==undefined){el.setLeftTop(ax,ay);}else if(ax!==undefined){el.setLeft(ax);}else if(ay!==undefined){el.setTop(ay);}
this.onPosition(ax,ay);this.fireEvent('move',this,ax,ay);}
return this;},setPagePosition:function(x,y){if(x&&typeof x[1]=='number'){y=x[1];x=x[0];}
this.pageX=x;this.pageY=y;if(!this.boxReady){return;}
if(x===undefined||y===undefined){return;}
var p=this.el.translatePoints(x,y);this.setPosition(p.left,p.top);return this;},onRender:function(ct,position){Ext.BoxComponent.superclass.onRender.call(this,ct,position);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.el.getWidth(),this.autoHeight?undefined:this.el.getHeight());return this;},onResize:function(adjWidth,adjHeight,rawWidth,rawHeight){},onPosition:function(x,y){},adjustSize:function(w,h){if(this.autoWidth){w='auto';}
if(this.autoHeight){h='auto';}
return{width:w,height:h};},adjustPosition:function(x,y){return{x:x,y:y};}});Ext.reg('box',Ext.BoxComponent);Ext.SplitBar=function(dragElement,resizingElement,orientation,placement,existingProxy){this.el=Ext.get(dragElement,true);this.el.dom.unselectable="on";this.resizingEl=Ext.get(resizingElement,true);this.orientation=orientation||Ext.SplitBar.HORIZONTAL;this.minSize=0;this.maxSize=2000;this.animate=false;this.useShim=false;this.shim=null;if(!existingProxy){this.proxy=Ext.SplitBar.createProxy(this.orientation);}else{this.proxy=Ext.get(existingProxy).dom;}
this.dd=new Ext.dd.DDProxy(this.el.dom.id,"XSplitBars",{dragElId:this.proxy.id});this.dd.b4StartDrag=this.onStartProxyDrag.createDelegate(this);this.dd.endDrag=this.onEndProxyDrag.createDelegate(this);this.dragSpecs={};this.adapter=new Ext.SplitBar.BasicLayoutAdapter();this.adapter.init(this);if(this.orientation==Ext.SplitBar.HORIZONTAL){this.placement=placement||(this.el.getX()>this.resizingEl.getX()?Ext.SplitBar.LEFT:Ext.SplitBar.RIGHT);this.el.addClass("x-splitbar-h");}else{this.placement=placement||(this.el.getY()>this.resizingEl.getY()?Ext.SplitBar.TOP:Ext.SplitBar.BOTTOM);this.el.addClass("x-splitbar-v");}
this.addEvents("resize","moved","beforeresize","beforeapply");Ext.SplitBar.superclass.constructor.call(this);};Ext.extend(Ext.SplitBar,Ext.util.Observable,{onStartProxyDrag:function(x,y){this.fireEvent("beforeresize",this);this.overlay=Ext.DomHelper.append(document.body,{cls:"x-drag-overlay",html:"&#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 size=this.adapter.getElementSize(this);this.activeMinSize=this.getMinimumSize();this.activeMaxSize=this.getMaximumSize();var c1=size-this.activeMinSize;var c2=Math.max(this.activeMaxSize-size,0);if(this.orientation==Ext.SplitBar.HORIZONTAL){this.dd.resetConstraints();this.dd.setXConstraint(this.placement==Ext.SplitBar.LEFT?c1:c2,this.placement==Ext.SplitBar.LEFT?c2:c1);this.dd.setYConstraint(0,0);}else{this.dd.resetConstraints();this.dd.setXConstraint(0,0);this.dd.setYConstraint(this.placement==Ext.SplitBar.TOP?c1:c2,this.placement==Ext.SplitBar.TOP?c2:c1);}
this.dragSpecs.startSize=size;this.dragSpecs.startPoint=[x,y];Ext.dd.DDProxy.prototype.b4StartDrag.call(this.dd,x,y);},onEndProxyDrag:function(e){Ext.get(this.proxy).setDisplayed(false);var endPoint=Ext.lib.Event.getXY(e);if(this.overlay){Ext.destroy(this.overlay);delete this.overlay;}
var newSize;if(this.orientation==Ext.SplitBar.HORIZONTAL){newSize=this.dragSpecs.startSize+
(this.placement==Ext.SplitBar.LEFT?endPoint[0]-this.dragSpecs.startPoint[0]:this.dragSpecs.startPoint[0]-endPoint[0]);}else{newSize=this.dragSpecs.startSize+
(this.placement==Ext.SplitBar.TOP?endPoint[1]-this.dragSpecs.startPoint[1]:this.dragSpecs.startPoint[1]-endPoint[1]);}
newSize=Math.min(Math.max(newSize,this.activeMinSize),this.activeMaxSize);if(newSize!=this.dragSpecs.startSize){if(this.fireEvent('beforeapply',this,newSize)!==false){this.adapter.setElementSize(this,newSize);this.fireEvent("moved",this,newSize);this.fireEvent("resize",this,newSize);}}},getAdapter:function(){return this.adapter;},setAdapter:function(adapter){this.adapter=adapter;this.adapter.init(this);},getMinimumSize:function(){return this.minSize;},setMinimumSize:function(minSize){this.minSize=minSize;},getMaximumSize:function(){return this.maxSize;},setMaximumSize:function(maxSize){this.maxSize=maxSize;},setCurrentSize:function(size){var oldAnimate=this.animate;this.animate=false;this.adapter.setElementSize(this,size);this.animate=oldAnimate;},destroy:function(removeEl){if(this.shim){this.shim.remove();}
this.dd.unreg();Ext.destroy(Ext.get(this.proxy));if(removeEl){this.el.remove();}}});Ext.SplitBar.createProxy=function(dir){var proxy=new Ext.Element(document.createElement("div"));proxy.unselectable();var cls='x-splitbar-proxy';proxy.addClass(cls+' '+(dir==Ext.SplitBar.HORIZONTAL?cls+'-h':cls+'-v'));document.body.appendChild(proxy.dom);return proxy.dom;};Ext.SplitBar.BasicLayoutAdapter=function(){};Ext.SplitBar.BasicLayoutAdapter.prototype={init:function(s){},getElementSize:function(s){if(s.orientation==Ext.SplitBar.HORIZONTAL){return s.resizingEl.getWidth();}else{return s.resizingEl.getHeight();}},setElementSize:function(s,newSize,onComplete){if(s.orientation==Ext.SplitBar.HORIZONTAL){if(!s.animate){s.resizingEl.setWidth(newSize);if(onComplete){onComplete(s,newSize);}}else{s.resizingEl.setWidth(newSize,true,.1,onComplete,'easeOut');}}else{if(!s.animate){s.resizingEl.setHeight(newSize);if(onComplete){onComplete(s,newSize);}}else{s.resizingEl.setHeight(newSize,true,.1,onComplete,'easeOut');}}}};Ext.SplitBar.AbsoluteLayoutAdapter=function(container){this.basic=new Ext.SplitBar.BasicLayoutAdapter();this.container=Ext.get(container);};Ext.SplitBar.AbsoluteLayoutAdapter.prototype={init:function(s){this.basic.init(s);},getElementSize:function(s){return this.basic.getElementSize(s);},setElementSize:function(s,newSize,onComplete){this.basic.setElementSize(s,newSize,this.moveSplitter.createDelegate(this,[s]));},moveSplitter:function(s){var yes=Ext.SplitBar;switch(s.placement){case yes.LEFT:s.el.setX(s.resizingEl.getRight());break;case yes.RIGHT:s.el.setStyle("right",(this.container.getWidth()-s.resizingEl.getLeft())+"px");break;case yes.TOP:s.el.setY(s.resizingEl.getBottom());break;case yes.BOTTOM:s.el.setY(s.resizingEl.getTop()-s.el.getHeight());break;}}};Ext.SplitBar.VERTICAL=1;Ext.SplitBar.HORIZONTAL=2;Ext.SplitBar.LEFT=1;Ext.SplitBar.RIGHT=2;Ext.SplitBar.TOP=3;Ext.SplitBar.BOTTOM=4;Ext.Container=Ext.extend(Ext.BoxComponent,{autoDestroy:true,defaultType:'panel',initComponent:function(){Ext.Container.superclass.initComponent.call(this);this.addEvents('afterlayout','beforeadd','beforeremove','add','remove');var items=this.items;if(items){delete this.items;if(Ext.isArray(items)&&items.length>0){this.add.apply(this,items);}else{this.add(items);}}},initItems:function(){if(!this.items){this.items=new Ext.util.MixedCollection(false,this.getComponentId);this.getLayout();}},setLayout:function(layout){if(this.layout&&this.layout!=layout){this.layout.setContainer(null);}
this.initItems();this.layout=layout;layout.setContainer(this);},render:function(){Ext.Container.superclass.render.apply(this,arguments);if(this.layout){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 item=this.activeItem;delete this.activeItem;this.layout.setActiveItem(item);return;}}
if(!this.ownerCt){this.doLayout();}
if(this.monitorResize===true){Ext.EventManager.onWindowResize(this.doLayout,this,[false]);}},getLayoutTarget:function(){return this.el;},getComponentId:function(comp){return comp.itemId||comp.id;},add:function(comp){if(!this.items){this.initItems();}
var a=arguments,len=a.length;if(len>1){for(var i=0;i<len;i++){this.add(a[i]);}
return;}
var c=this.lookupComponent(this.applyDefaults(comp));var pos=this.items.length;if(this.fireEvent('beforeadd',this,c,pos)!==false&&this.onBeforeAdd(c)!==false){this.items.add(c);c.ownerCt=this;this.fireEvent('add',this,c,pos);}
return c;},insert:function(index,comp){if(!this.items){this.initItems();}
var a=arguments,len=a.length;if(len>2){for(var i=len-1;i>=1;--i){this.insert(index,a[i]);}
return;}
var c=this.lookupComponent(this.applyDefaults(comp));if(c.ownerCt==this&&this.items.indexOf(c)<index){--index;}
if(this.fireEvent('beforeadd',this,c,index)!==false&&this.onBeforeAdd(c)!==false){this.items.insert(index,c);c.ownerCt=this;this.fireEvent('add',this,c,index);}
return c;},applyDefaults:function(c){if(this.defaults){if(typeof c=='string'){c=Ext.ComponentMgr.get(c);Ext.apply(c,this.defaults);}else if(!c.events){Ext.applyIf(c,this.defaults);}else{Ext.apply(c,this.defaults);}}
return c;},onBeforeAdd:function(item){if(item.ownerCt){item.ownerCt.remove(item,false);}
if(this.hideBorders===true){item.border=(item.border===true);}},remove:function(comp,autoDestroy){var c=this.getComponent(comp);if(c&&this.fireEvent('beforeremove',this,c)!==false){this.items.remove(c);delete c.ownerCt;if(autoDestroy===true||(autoDestroy!==false&&this.autoDestroy)){c.destroy();}
if(this.layout&&this.layout.activeItem==c){delete this.layout.activeItem;}
this.fireEvent('remove',this,c);}
return c;},removeAll:function(autoDestroy){var item,items=[];while((item=this.items.last())){items.unshift(this.remove(item,autoDestroy));}
return items;},getComponent:function(comp){if(typeof comp=='object'){return comp;}
return this.items.get(comp);},lookupComponent:function(comp){if(typeof comp=='string'){return Ext.ComponentMgr.get(comp);}else if(!comp.events){return this.createComponent(comp);}
return comp;},createComponent:function(config){return Ext.ComponentMgr.create(config,this.defaultType);},doLayout:function(shallow){if(this.rendered&&this.layout){this.layout.layout();}
if(shallow!==false&&this.items){var cs=this.items.items;for(var i=0,len=cs.length;i<len;i++){var c=cs[i];if(c.doLayout){c.doLayout();}}}},getLayout:function(){if(!this.layout){var layout=new Ext.layout.ContainerLayout(this.layoutConfig);this.setLayout(layout);}
return this.layout;},beforeDestroy:function(){if(this.items){Ext.destroy.apply(Ext,this.items.items);}
if(this.monitorResize){Ext.EventManager.removeResizeListener(this.doLayout,this);}
if(this.layout&&this.layout.destroy){this.layout.destroy();}
Ext.Container.superclass.beforeDestroy.call(this);},bubble:function(fn,scope,args){var p=this;while(p){if(fn.apply(scope||p,args||[p])===false){break;}
p=p.ownerCt;}},cascade:function(fn,scope,args){if(fn.apply(scope||this,args||[this])!==false){if(this.items){var cs=this.items.items;for(var i=0,len=cs.length;i<len;i++){if(cs[i].cascade){cs[i].cascade(fn,scope,args);}else{fn.apply(scope||cs[i],args||[cs[i]]);}}}}},findById:function(id){var m,ct=this;this.cascade(function(c){if(ct!=c&&c.id===id){m=c;return false;}});return m||null;},findByType:function(xtype,shallow){return this.findBy(function(c){return c.isXType(xtype,shallow);});},find:function(prop,value){return this.findBy(function(c){return c[prop]===value;});},findBy:function(fn,scope){var m=[],ct=this;this.cascade(function(c){if(ct!=c&&fn.call(scope||c,c,ct)===true){m.push(c);}});return m;}});Ext.Container.LAYOUTS={};Ext.reg('container',Ext.Container);Ext.layout.ContainerLayout=function(config){Ext.apply(this,config);};Ext.layout.ContainerLayout.prototype={monitorResize:false,activeItem:null,layout:function(){var target=this.container.getLayoutTarget();this.onLayout(this.container,target);this.container.fireEvent('afterlayout',this.container,this);},onLayout:function(ct,target){this.renderAll(ct,target);},isValidParent:function(c,target){var el=c.getPositionEl?c.getPositionEl():c.getEl();return el.dom.parentNode==target.dom;},renderAll:function(ct,target){var items=ct.items.items;for(var i=0,len=items.length;i<len;i++){var c=items[i];if(c&&(!c.rendered||!this.isValidParent(c,target))){this.renderItem(c,i,target);}}},renderItem:function(c,position,target){if(c&&!c.rendered){c.render(target,position);if(this.extraCls){var t=c.getPositionEl?c.getPositionEl():c;t.addClass(this.extraCls);}
if(this.renderHidden&&c!=this.activeItem){c.hide();}}else if(c&&!this.isValidParent(c,target)){if(this.extraCls){var t=c.getPositionEl?c.getPositionEl():c;t.addClass(this.extraCls);}
if(typeof position=='number'){position=target.dom.childNodes[position];}
target.dom.insertBefore(c.getEl().dom,position||null);if(this.renderHidden&&c!=this.activeItem){c.hide();}}},onResize:function(){if(this.container.collapsed){return;}
var b=this.container.bufferResize;if(b){if(!this.resizeTask){this.resizeTask=new Ext.util.DelayedTask(this.layout,this);this.resizeBuffer=typeof b=='number'?b:100;}
this.resizeTask.delay(this.resizeBuffer);}else{this.layout();}},setContainer:function(ct){if(this.monitorResize&&ct!=this.container){if(this.container){this.container.un('resize',this.onResize,this);}
if(ct){ct.on('resize',this.onResize,this);}}
this.container=ct;},parseMargins:function(v){var ms=v.split(' ');var len=ms.length;if(len==1){ms[1]=ms[0];ms[2]=ms[0];ms[3]=ms[0];}
if(len==2){ms[2]=ms[0];ms[3]=ms[1];}
return{top:parseInt(ms[0],10)||0,right:parseInt(ms[1],10)||0,bottom:parseInt(ms[2],10)||0,left:parseInt(ms[3],10)||0};},destroy:Ext.emptyFn};Ext.Container.LAYOUTS['auto']=Ext.layout.ContainerLayout;Ext.layout.FitLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,onLayout:function(ct,target){Ext.layout.FitLayout.superclass.onLayout.call(this,ct,target);if(!this.container.collapsed){this.setItemSize(this.activeItem||ct.items.itemAt(0),target.getStyleSize());}},setItemSize:function(item,size){if(item&&size.height>0){item.setSize(size);}}});Ext.Container.LAYOUTS['fit']=Ext.layout.FitLayout;Ext.layout.CardLayout=Ext.extend(Ext.layout.FitLayout,{deferredRender:false,renderHidden:true,setActiveItem:function(item){item=this.container.getComponent(item);if(this.activeItem!=item){if(this.activeItem){this.activeItem.hide();}
this.activeItem=item;item.show();this.layout();}},renderAll:function(ct,target){if(this.deferredRender){this.renderItem(this.activeItem,undefined,target);}else{Ext.layout.CardLayout.superclass.renderAll.call(this,ct,target);}}});Ext.Container.LAYOUTS['card']=Ext.layout.CardLayout;Ext.layout.AnchorLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,getAnchorViewSize:function(ct,target){return target.dom==document.body?target.getViewSize():target.getStyleSize();},onLayout:function(ct,target){Ext.layout.AnchorLayout.superclass.onLayout.call(this,ct,target);var size=this.getAnchorViewSize(ct,target);var w=size.width,h=size.height;if(w<20||h<20){return;}
var aw,ah;if(ct.anchorSize){if(typeof ct.anchorSize=='number'){aw=ct.anchorSize;}else{aw=ct.anchorSize.width;ah=ct.anchorSize.height;}}else{aw=ct.initialConfig.width;ah=ct.initialConfig.height;}
var cs=ct.items.items,len=cs.length,i,c,a,cw,ch;for(i=0;i<len;i++){c=cs[i];if(c.anchor){a=c.anchorSpec;if(!a){var vs=c.anchor.split(' ');c.anchorSpec=a={right:this.parseAnchor(vs[0],c.initialConfig.width,aw),bottom:this.parseAnchor(vs[1],c.initialConfig.height,ah)};}
cw=a.right?this.adjustWidthAnchor(a.right(w),c):undefined;ch=a.bottom?this.adjustHeightAnchor(a.bottom(h),c):undefined;if(cw||ch){c.setSize(cw||undefined,ch||undefined);}}}},parseAnchor:function(a,start,cstart){if(a&&a!='none'){var last;if(/^(r|right|b|bottom)$/i.test(a)){var diff=cstart-start;return function(v){if(v!==last){last=v;return v-diff;}}}else if(a.indexOf('%')!=-1){var ratio=parseFloat(a.replace('%',''))*.01;return function(v){if(v!==last){last=v;return Math.floor(v*ratio);}}}else{a=parseInt(a,10);if(!isNaN(a)){return function(v){if(v!==last){last=v;return v+a;}}}}}
return false;},adjustWidthAnchor:function(value,comp){return value;},adjustHeightAnchor:function(value,comp){return value;}});Ext.Container.LAYOUTS['anchor']=Ext.layout.AnchorLayout;Ext.layout.ColumnLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,extraCls:'x-column',scrollOffset:0,isValidParent:function(c,target){return(c.getPositionEl?c.getPositionEl():c.getEl()).dom.parentNode==this.innerCt.dom;},onLayout:function(ct,target){var cs=ct.items.items,len=cs.length,c,i;if(!this.innerCt){target.addClass('x-column-layout-ct');this.innerCt=target.createChild({cls:'x-column-inner'});this.innerCt.createChild({cls:'x-clear'});}
this.renderAll(ct,this.innerCt);var size=Ext.isIE&&target.dom!=Ext.getBody().dom?target.getStyleSize():target.getViewSize();if(size.width<1&&size.height<1){return;}
var w=size.width-target.getPadding('lr')-this.scrollOffset,h=size.height-target.getPadding('tb'),pw=w;this.innerCt.setWidth(w);for(i=0;i<len;i++){c=cs[i];if(!c.columnWidth){pw-=(c.getSize().width+c.getEl().getMargins('lr'));}}
pw=pw<0?0:pw;for(i=0;i<len;i++){c=cs[i];if(c.columnWidth){c.setSize(Math.floor(c.columnWidth*pw)-c.getEl().getMargins('lr'));}}}});Ext.Container.LAYOUTS['column']=Ext.layout.ColumnLayout;Ext.layout.BorderLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,rendered:false,onLayout:function(ct,target){var collapsed;if(!this.rendered){target.position();target.addClass('x-border-layout-ct');var items=ct.items.items;collapsed=[];for(var i=0,len=items.length;i<len;i++){var c=items[i];var pos=c.region;if(c.collapsed){collapsed.push(c);}
c.collapsed=false;if(!c.rendered){c.cls=c.cls?c.cls+' x-border-panel':'x-border-panel';c.render(target,i);}
this[pos]=pos!='center'&&c.split?new Ext.layout.BorderLayout.SplitRegion(this,c.initialConfig,pos):new Ext.layout.BorderLayout.Region(this,c.initialConfig,pos);this[pos].render(target,c);}
this.rendered=true;}
var size=target.getViewSize();if(size.width<20||size.height<20){if(collapsed){this.restoreCollapsed=collapsed;}
return;}else if(this.restoreCollapsed){collapsed=this.restoreCollapsed;delete this.restoreCollapsed;}
var w=size.width,h=size.height;var centerW=w,centerH=h,centerY=0,centerX=0;var n=this.north,s=this.south,west=this.west,e=this.east,c=this.center;if(!c&&Ext.layout.BorderLayout.WARN!==false){throw'No center region defined in BorderLayout '+ct.id;}
if(n&&n.isVisible()){var b=n.getSize();var m=n.getMargins();b.width=w-(m.left+m.right);b.x=m.left;b.y=m.top;centerY=b.height+b.y+m.bottom;centerH-=centerY;n.applyLayout(b);}
if(s&&s.isVisible()){var b=s.getSize();var m=s.getMargins();b.width=w-(m.left+m.right);b.x=m.left;var totalHeight=(b.height+m.top+m.bottom);b.y=h-totalHeight+m.top;centerH-=totalHeight;s.applyLayout(b);}
if(west&&west.isVisible()){var b=west.getSize();var m=west.getMargins();b.height=centerH-(m.top+m.bottom);b.x=m.left;b.y=centerY+m.top;var totalWidth=(b.width+m.left+m.right);centerX+=totalWidth;centerW-=totalWidth;west.applyLayout(b);}
if(e&&e.isVisible()){var b=e.getSize();var m=e.getMargins();b.height=centerH-(m.top+m.bottom);var totalWidth=(b.width+m.left+m.right);b.x=w-totalWidth+m.left;b.y=centerY+m.top;centerW-=totalWidth;e.applyLayout(b);}
if(c){var m=c.getMargins();var centerBox={x:centerX+m.left,y:centerY+m.top,width:centerW-(m.left+m.right),height:centerH-(m.top+m.bottom)};c.applyLayout(centerBox);}
if(collapsed){for(var i=0,len=collapsed.length;i<len;i++){collapsed[i].collapse(false);}}
if(Ext.isIE&&Ext.isStrict){target.repaint();}},destroy:function(){var r=['north','south','east','west'];for(var i=0;i<r.length;i++){var region=this[r[i]];if(region){if(region.destroy){region.destroy();}else if(region.split){region.split.destroy(true);}}}
Ext.layout.BorderLayout.superclass.destroy.call(this);}});Ext.layout.BorderLayout.Region=function(layout,config,pos){Ext.apply(this,config);this.layout=layout;this.position=pos;this.state={};if(typeof this.margins=='string'){this.margins=this.layout.parseMargins(this.margins);}
this.margins=Ext.applyIf(this.margins||{},this.defaultMargins);if(this.collapsible){if(typeof this.cmargins=='string'){this.cmargins=this.layout.parseMargins(this.cmargins);}
if(this.collapseMode=='mini'&&!this.cmargins){this.cmargins={left:0,top:0,right:0,bottom:0};}else{this.cmargins=Ext.applyIf(this.cmargins||{},pos=='north'||pos=='south'?this.defaultNSCMargins:this.defaultEWCMargins);}}};Ext.layout.BorderLayout.Region.prototype={collapsible:false,split:false,floatable:true,minWidth:50,minHeight:50,defaultMargins:{left:0,top:0,right:0,bottom:0},defaultNSCMargins:{left:5,top:5,right:5,bottom:5},defaultEWCMargins:{left:5,top:0,right:5,bottom:0},isCollapsed:false,render:function(ct,p){this.panel=p;p.el.enableDisplayMode();this.targetEl=ct;this.el=p.el;var gs=p.getState,ps=this.position;p.getState=function(){return Ext.apply(gs.call(p)||{},this.state);}.createDelegate(this);if(ps!='center'){p.allowQueuedExpand=false;p.on({beforecollapse:this.beforeCollapse,collapse:this.onCollapse,beforeexpand:this.beforeExpand,expand:this.onExpand,hide:this.onHide,show:this.onShow,scope:this});if(this.collapsible){p.collapseEl='el';p.slideAnchor=this.getSlideAnchor();}
if(p.tools&&p.tools.toggle){p.tools.toggle.addClass('x-tool-collapse-'+ps);p.tools.toggle.addClassOnOver('x-tool-collapse-'+ps+'-over');}}},getCollapsedEl:function(){if(!this.collapsedEl){if(!this.toolTemplate){var tt=new Ext.Template('<div class="x-tool x-tool-{id}">&#160;</div>');tt.disableFormats=true;tt.compile();Ext.layout.BorderLayout.Region.prototype.toolTemplate=tt;}
this.collapsedEl=this.targetEl.createChild({cls:"x-layout-collapsed x-layout-collapsed-"+this.position,id:this.panel.id+'-xcollapsed'});this.collapsedEl.enableDisplayMode('block');if(this.collapseMode=='mini'){this.collapsedEl.addClass('x-layout-cmini-'+this.position);this.miniCollapsedEl=this.collapsedEl.createChild({cls:"x-layout-mini x-layout-mini-"+this.position,html:"&#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{var t=this.toolTemplate.append(this.collapsedEl.dom,{id:'expand-'+this.position},true);t.addClassOnOver('x-tool-expand-'+this.position+'-over');t.on('click',this.onExpandClick,this,{stopEvent:true});if(this.floatable!==false){this.collapsedEl.addClassOnOver("x-layout-collapsed-over");this.collapsedEl.on("click",this.collapseClick,this);}}}
return this.collapsedEl;},onExpandClick:function(e){if(this.isSlid){this.afterSlideIn();this.panel.expand(false);}else{this.panel.expand();}},onCollapseClick:function(e){this.panel.collapse();},beforeCollapse:function(p,animate){this.lastAnim=animate;if(this.splitEl){this.splitEl.hide();}
this.getCollapsedEl().show();this.panel.el.setStyle('z-index',100);this.isCollapsed=true;this.layout.layout();},onCollapse:function(animate){this.panel.el.setStyle('z-index',1);if(this.lastAnim===false||this.panel.animCollapse===false){this.getCollapsedEl().dom.style.visibility='visible';}else{this.getCollapsedEl().slideIn(this.panel.slideAnchor,{duration:.2});}
this.state.collapsed=true;this.panel.saveState();},beforeExpand:function(animate){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',100);},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(e){if(this.isSlid){e.stopPropagation();this.slideIn();}else{e.stopPropagation();this.slideOut();}},onHide:function(){if(this.isCollapsed){this.getCollapsedEl().hide();}else if(this.splitEl){this.splitEl.hide();}},onShow:function(){if(this.isCollapsed){this.getCollapsedEl().show();}else if(this.splitEl){this.splitEl.show();}},isVisible:function(){return!this.panel.hidden;},getMargins:function(){return this.isCollapsed&&this.cmargins?this.cmargins:this.margins;},getSize:function(){return this.isCollapsed?this.getCollapsedEl().getSize():this.panel.getSize();},setPanel:function(panel){this.panel=panel;},getMinWidth:function(){return this.minWidth;},getMinHeight:function(){return this.minHeight;},applyLayoutCollapsed:function(box){var ce=this.getCollapsedEl();ce.setLeftTop(box.x,box.y);ce.setSize(box.width,box.height);},applyLayout:function(box){if(this.isCollapsed){this.applyLayoutCollapsed(box);}else{this.panel.setPosition(box.x,box.y);this.panel.setSize(box.width,box.height);}},beforeSlide:function(){this.panel.beforeEffect();},afterSlide:function(){this.panel.afterEffect();},initAutoHide:function(){if(this.autoHide!==false){if(!this.autoHideHd){var st=new Ext.util.DelayedTask(this.slideIn,this);this.autoHideHd={"mouseout":function(e){if(!e.within(this.el,true)){st.delay(500);}},"mouseover":function(e){st.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 ts=this.panel.tools;if(ts&&ts.toggle){ts.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",102);this.panel.el.replaceClass('x-panel-collapsed','x-panel-floating');if(this.animFloat!==false){this.beforeSlide();this.el.slideIn(this.getSlideAnchor(),{callback:function(){this.afterSlide();this.initAutoHide();Ext.getDoc().on("click",this.slideInIf,this);},scope:this,block:true});}else{this.initAutoHide();Ext.getDoc().on("click",this.slideInIf,this);}},afterSlideIn:function(){this.clearAutoHide();this.isSlid=false;this.clearMonitor();this.el.setStyle("z-index","");this.panel.el.replaceClass('x-panel-floating','x-panel-collapsed');this.el.dom.style.left=this.restoreLT[0];this.el.dom.style.top=this.restoreLT[1];var ts=this.panel.tools;if(ts&&ts.toggle){ts.toggle.show();}},slideIn:function(cb){if(!this.isSlid||this.el.hasActiveFx()){Ext.callback(cb);return;}
this.isSlid=false;if(this.animFloat!==false){this.beforeSlide();this.el.slideOut(this.getSlideAnchor(),{callback:function(){this.el.hide();this.afterSlide();this.afterSlideIn();Ext.callback(cb);},scope:this,block:true});}else{this.el.hide();this.afterSlideIn();}},slideInIf:function(e){if(!e.within(this.el)){this.slideIn();}},anchors:{"west":"left","east":"right","north":"top","south":"bottom"},sanchors:{"west":"l","east":"r","north":"t","south":"b"},canchors:{"west":"tl-tr","east":"tr-tl","north":"tl-bl","south":"bl-tl"},getAnchor:function(){return this.anchors[this.position];},getCollapseAnchor:function(){return this.canchors[this.position];},getSlideAnchor:function(){return this.sanchors[this.position];},getAlignAdj:function(){var cm=this.cmargins;switch(this.position){case"west":return[0,0];break;case"east":return[0,0];break;case"north":return[0,0];break;case"south":return[0,0];break;}},getExpandAdj:function(){var c=this.collapsedEl,cm=this.cmargins;switch(this.position){case"west":return[-(cm.right+c.getWidth()+cm.left),0];break;case"east":return[cm.right+c.getWidth()+cm.left,0];break;case"north":return[0,-(cm.top+cm.bottom+c.getHeight())];break;case"south":return[0,cm.top+cm.bottom+c.getHeight()];break;}}};Ext.layout.BorderLayout.SplitRegion=function(layout,config,pos){Ext.layout.BorderLayout.SplitRegion.superclass.constructor.call(this,layout,config,pos);this.applyLayout=this.applyFns[pos];};Ext.extend(Ext.layout.BorderLayout.SplitRegion,Ext.layout.BorderLayout.Region,{splitTip:"Drag to resize.",collapsibleSplitTip:"Drag to resize. Double click to hide.",useSplitTips:false,splitSettings:{north:{orientation:Ext.SplitBar.VERTICAL,placement:Ext.SplitBar.TOP,maxFn:'getVMaxSize',minProp:'minHeight',maxProp:'maxHeight'},south:{orientation:Ext.SplitBar.VERTICAL,placement:Ext.SplitBar.BOTTOM,maxFn:'getVMaxSize',minProp:'minHeight',maxProp:'maxHeight'},east:{orientation:Ext.SplitBar.HORIZONTAL,placement:Ext.SplitBar.RIGHT,maxFn:'getHMaxSize',minProp:'minWidth',maxProp:'maxWidth'},west:{orientation:Ext.SplitBar.HORIZONTAL,placement:Ext.SplitBar.LEFT,maxFn:'getHMaxSize',minProp:'minWidth',maxProp:'maxWidth'}},applyFns:{west:function(box){if(this.isCollapsed){return this.applyLayoutCollapsed(box);}
var sd=this.splitEl.dom,s=sd.style;this.panel.setPosition(box.x,box.y);var sw=sd.offsetWidth;s.left=(box.x+box.width-sw)+'px';s.top=(box.y)+'px';s.height=Math.max(0,box.height)+'px';this.panel.setSize(box.width-sw,box.height);},east:function(box){if(this.isCollapsed){return this.applyLayoutCollapsed(box);}
var sd=this.splitEl.dom,s=sd.style;var sw=sd.offsetWidth;this.panel.setPosition(box.x+sw,box.y);s.left=(box.x)+'px';s.top=(box.y)+'px';s.height=Math.max(0,box.height)+'px';this.panel.setSize(box.width-sw,box.height);},north:function(box){if(this.isCollapsed){return this.applyLayoutCollapsed(box);}
var sd=this.splitEl.dom,s=sd.style;var sh=sd.offsetHeight;this.panel.setPosition(box.x,box.y);s.left=(box.x)+'px';s.top=(box.y+box.height-sh)+'px';s.width=Math.max(0,box.width)+'px';this.panel.setSize(box.width,box.height-sh);},south:function(box){if(this.isCollapsed){return this.applyLayoutCollapsed(box);}
var sd=this.splitEl.dom,s=sd.style;var sh=sd.offsetHeight;this.panel.setPosition(box.x,box.y+sh);s.left=(box.x)+'px';s.top=(box.y)+'px';s.width=Math.max(0,box.width)+'px';this.panel.setSize(box.width,box.height-sh);}},render:function(ct,p){Ext.layout.BorderLayout.SplitRegion.superclass.render.call(this,ct,p);var ps=this.position;this.splitEl=ct.createChild({cls:"x-layout-split x-layout-split-"+ps,html:"&#160;",id:this.panel.id+'-xsplit'});if(this.collapseMode=='mini'){this.miniSplitEl=this.splitEl.createChild({cls:"x-layout-mini x-layout-mini-"+ps,html:"&#160;"});this.miniSplitEl.addClassOnOver('x-layout-mini-over');this.miniSplitEl.on('click',this.onCollapseClick,this,{stopEvent:true});}
var s=this.splitSettings[ps];this.split=new Ext.SplitBar(this.splitEl.dom,p.el,s.orientation);this.split.placement=s.placement;this.split.getMaximumSize=this[s.maxFn].createDelegate(this);this.split.minSize=this.minSize||this[s.minProp];this.split.on("beforeapply",this.onSplitMove,this);this.split.useShim=this.useShim===true;this.maxSize=this.maxSize||this[s.maxProp];if(p.hidden){this.splitEl.hide();}
if(this.useSplitTips){this.splitEl.dom.title=this.collapsible?this.collapsibleSplitTip:this.splitTip;}
if(this.collapsible){this.splitEl.on("dblclick",this.onCollapseClick,this);}},getSize:function(){if(this.isCollapsed){return this.collapsedEl.getSize();}
var s=this.panel.getSize();if(this.position=='north'||this.position=='south'){s.height+=this.splitEl.dom.offsetHeight;}else{s.width+=this.splitEl.dom.offsetWidth;}
return s;},getHMaxSize:function(){var cmax=this.maxSize||10000;var center=this.layout.center;return Math.min(cmax,(this.el.getWidth()+center.el.getWidth())-center.getMinWidth());},getVMaxSize:function(){var cmax=this.maxSize||10000;var center=this.layout.center;return Math.min(cmax,(this.el.getHeight()+center.el.getHeight())-center.getMinHeight());},onSplitMove:function(split,newSize){var s=this.panel.getSize();this.lastSplitSize=newSize;if(this.position=='north'||this.position=='south'){this.panel.setSize(s.width,newSize);this.state.height=newSize;}else{this.panel.setSize(newSize,s.height);this.state.width=newSize;}
this.layout.layout();this.panel.saveState();return false;},getSplitBar:function(){return this.split;},destroy:function(){Ext.destroy(this.miniSplitEl,this.split,this.splitEl);}});Ext.Container.LAYOUTS['border']=Ext.layout.BorderLayout;Ext.layout.FormLayout=Ext.extend(Ext.layout.AnchorLayout,{labelSeparator:':',getAnchorViewSize:function(ct,target){return(ct.body||ct.el).getStyleSize();},setContainer:function(ct){Ext.layout.FormLayout.superclass.setContainer.call(this,ct);if(ct.labelAlign){ct.addClass('x-form-label-'+ct.labelAlign);}
if(ct.hideLabels){this.labelStyle="display:none";this.elementStyle="padding-left:0;";this.labelAdjust=0;}else{this.labelSeparator=ct.labelSeparator||this.labelSeparator;ct.labelWidth=ct.labelWidth||100;if(typeof ct.labelWidth=='number'){var pad=(typeof ct.labelPad=='number'?ct.labelPad:5);this.labelAdjust=ct.labelWidth+pad;this.labelStyle="width:"+ct.labelWidth+"px;";this.elementStyle="padding-left:"+(ct.labelWidth+pad)+'px';}
if(ct.labelAlign=='top'){this.labelStyle="width:auto;";this.labelAdjust=0;this.elementStyle="padding-left:0;";}}
if(!this.fieldTpl){var t=new Ext.Template('<div class="x-form-item {5}" tabIndex="-1">','<label for="{0}" style="{2}" class="x-form-item-label">{1}{4}</label>','<div class="x-form-element" id="x-form-el-{0}" style="{3}">','</div><div class="{6}"></div>','</div>');t.disableFormats=true;t.compile();Ext.layout.FormLayout.prototype.fieldTpl=t;}},getLabelStyle:function(s){var ls='',items=[this.labelStyle,s];for(var i=0,len=items.length;i<len;++i){if(items[i]){ls+=items[i];if(ls.substr(-1,1)!=';'){ls+=';'}}}
return ls;},renderItem:function(c,position,target){if(c&&!c.rendered&&c.isFormField&&c.inputType!='hidden'){var args=[c.id,c.fieldLabel,this.getLabelStyle(c.labelStyle),this.elementStyle||'',typeof c.labelSeparator=='undefined'?this.labelSeparator:c.labelSeparator,(c.itemCls||this.container.itemCls||'')+(c.hideLabel?' x-hide-label':''),c.clearCls||'x-form-clear-left'];if(typeof position=='number'){position=target.dom.childNodes[position]||null;}
if(position){this.fieldTpl.insertBefore(position,args);}else{this.fieldTpl.append(target,args);}
c.render('x-form-el-'+c.id);}else{Ext.layout.FormLayout.superclass.renderItem.apply(this,arguments);}},adjustWidthAnchor:function(value,comp){return value-(comp.isFormField?(comp.hideLabel?0:this.labelAdjust):0);},isValidParent:function(c,target){return true;}});Ext.Container.LAYOUTS['form']=Ext.layout.FormLayout;Ext.layout.Accordion=Ext.extend(Ext.layout.FitLayout,{fill:true,autoWidth:true,titleCollapse:true,hideCollapseTool:false,collapseFirst:false,animate:false,sequence:false,activeOnTop:false,renderItem:function(c){if(this.animate===false){c.animCollapse=false;}
c.collapsible=true;if(this.autoWidth){c.autoWidth=true;}
if(this.titleCollapse){c.titleCollapse=true;}
if(this.hideCollapseTool){c.hideCollapseTool=true;}
if(this.collapseFirst!==undefined){c.collapseFirst=this.collapseFirst;}
if(!this.activeItem&&!c.collapsed){this.activeItem=c;}else if(this.activeItem){c.collapsed=true;}
Ext.layout.Accordion.superclass.renderItem.apply(this,arguments);c.header.addClass('x-accordion-hd');c.on('beforeexpand',this.beforeExpand,this);},beforeExpand:function(p,anim){var ai=this.activeItem;if(ai){if(this.sequence){delete this.activeItem;if(!ai.collapsed){ai.collapse({callback:function(){p.expand(anim||true);},scope:this});return false;}}else{ai.collapse(this.animate);}}
this.activeItem=p;if(this.activeOnTop){p.el.dom.parentNode.insertBefore(p.el.dom,p.el.dom.parentNode.firstChild);}
this.layout();},setItemSize:function(item,size){if(this.fill&&item){var items=this.container.items.items;var hh=0;for(var i=0,len=items.length;i<len;i++){var p=items[i];if(p!=item){hh+=(p.getSize().height-p.bwrap.getHeight());}}
size.height-=hh;item.setSize(size);}}});Ext.Container.LAYOUTS['accordion']=Ext.layout.Accordion;Ext.layout.TableLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:false,setContainer:function(ct){Ext.layout.TableLayout.superclass.setContainer.call(this,ct);this.currentRow=0;this.currentColumn=0;this.cells=[];},onLayout:function(ct,target){var cs=ct.items.items,len=cs.length,c,i;if(!this.table){target.addClass('x-table-layout-ct');this.table=target.createChild({tag:'table',cls:'x-table-layout',cellspacing:0,cn:{tag:'tbody'}},null,true);this.renderAll(ct,target);}},getRow:function(index){var row=this.table.tBodies[0].childNodes[index];if(!row){row=document.createElement('tr');this.table.tBodies[0].appendChild(row);}
return row;},getNextCell:function(c){var cell=this.getNextNonSpan(this.currentColumn,this.currentRow);var curCol=this.currentColumn=cell[0],curRow=this.currentRow=cell[1];for(var rowIndex=curRow;rowIndex<curRow+(c.rowspan||1);rowIndex++){if(!this.cells[rowIndex]){this.cells[rowIndex]=[];}
for(var colIndex=curCol;colIndex<curCol+(c.colspan||1);colIndex++){this.cells[rowIndex][colIndex]=true;}}
var td=document.createElement('td');if(c.cellId){td.id=c.cellId;}
var cls='x-table-layout-cell';if(c.cellCls){cls+=' '+c.cellCls;}
td.className=cls;if(c.colspan){td.colSpan=c.colspan;}
if(c.rowspan){td.rowSpan=c.rowspan;}
this.getRow(curRow).appendChild(td);return td;},getNextNonSpan:function(colIndex,rowIndex){var cols=this.columns;while((cols&&colIndex>=cols)||(this.cells[rowIndex]&&this.cells[rowIndex][colIndex])){if(cols&&colIndex>=cols){rowIndex++;colIndex=0;}else{colIndex++;}}
return[colIndex,rowIndex];},renderItem:function(c,position,target){if(c&&!c.rendered){c.render(this.getNextCell(c));if(this.extraCls){var t=c.getPositionEl?c.getPositionEl():c;t.addClass(this.extraCls);}}},isValidParent:function(c,target){return true;}});Ext.Container.LAYOUTS['table']=Ext.layout.TableLayout;Ext.layout.AbsoluteLayout=Ext.extend(Ext.layout.AnchorLayout,{extraCls:'x-abs-layout-item',isForm:false,setContainer:function(ct){Ext.layout.AbsoluteLayout.superclass.setContainer.call(this,ct);if(ct.isXType('form')){this.isForm=true;}},onLayout:function(ct,target){if(this.isForm){ct.body.position();}else{target.position();}
Ext.layout.AbsoluteLayout.superclass.onLayout.call(this,ct,target);},getAnchorViewSize:function(ct,target){return this.isForm?ct.body.getStyleSize():Ext.layout.AbsoluteLayout.superclass.getAnchorViewSize.call(this,ct,target);},isValidParent:function(c,target){return this.isForm?true:Ext.layout.AbsoluteLayout.superclass.isValidParent.call(this,c,target);},adjustWidthAnchor:function(value,comp){return value?value-comp.getPosition(true)[0]:value;},adjustHeightAnchor:function(value,comp){return value?value-comp.getPosition(true)[1]:value;}});Ext.Container.LAYOUTS['absolute']=Ext.layout.AbsoluteLayout;Ext.Viewport=Ext.extend(Ext.Container,{initComponent:function(){Ext.Viewport.superclass.initComponent.call(this);document.getElementsByTagName('html')[0].className+=' x-viewport';this.el=Ext.getBody();this.el.setHeight=Ext.emptyFn;this.el.setWidth=Ext.emptyFn;this.el.setSize=Ext.emptyFn;this.el.dom.scroll='no';this.allowDomMove=false;this.autoWidth=true;this.autoHeight=true;Ext.EventManager.onWindowResize(this.fireResize,this);this.renderTo=this.el;},fireResize:function(w,h){this.fireEvent('resize',this,w,h,w,h);}});Ext.reg('viewport',Ext.Viewport);Ext.Panel=Ext.extend(Ext.Container,{baseCls:'x-panel',collapsedCls:'x-panel-collapsed',maskDisabled:true,animCollapse:Ext.enableFx,headerAsText:true,buttonAlign:'right',collapsed:false,collapseFirst:true,minButtonWidth:75,elements:'body',toolTarget:'header',collapseEl:'bwrap',slideAnchor:'t',disabledClass:'',deferHeight:true,expandDefaults:{duration:.25},collapseDefaults:{duration:.25},initComponent:function(){Ext.Panel.superclass.initComponent.call(this);this.addEvents('bodyresize','titlechange','iconchange','collapse','expand','beforecollapse','beforeexpand','beforeclose','close','activate','deactivate');if(this.tbar){this.elements+=',tbar';if(typeof this.tbar=='object'){this.topToolbar=this.tbar;}
delete this.tbar;}
if(this.bbar){this.elements+=',bbar';if(typeof this.bbar=='object'){this.bottomToolbar=this.bbar;}
delete this.bbar;}
if(this.header===true){this.elements+=',header';delete this.header;}else if(this.title&&this.header!==false){this.elements+=',header';}
if(this.footer===true){this.elements+=',footer';delete this.footer;}
if(this.buttons){var btns=this.buttons;this.buttons=[];for(var i=0,len=btns.length;i<len;i++){if(btns[i].render){btns[i].ownerCt=this;this.buttons.push(btns[i]);}else{this.addButton(btns[i]);}}}
if(this.autoLoad){this.on('render',this.doAutoLoad,this,{delay:10});}},createElement:function(name,pnode){if(this[name]){pnode.appendChild(this[name].dom);return;}
if(name==='bwrap'||this.elements.indexOf(name)!=-1){if(this[name+'Cfg']){this[name]=Ext.fly(pnode).createChild(this[name+'Cfg']);}else{var el=document.createElement('div');el.className=this[name+'Cls'];this[name]=Ext.get(pnode.appendChild(el));}
if(this[name+'CssClass']){this[name].addClass(this[name+'CssClass']);}
if(this[name+'Style']){this[name].applyStyles(this[name+'Style']);}}},onRender:function(ct,position){Ext.Panel.superclass.onRender.call(this,ct,position);this.createClasses();if(this.el){this.el.addClass(this.baseCls);this.header=this.el.down('.'+this.headerCls);this.bwrap=this.el.down('.'+this.bwrapCls);var cp=this.bwrap?this.bwrap:this.el;this.tbar=cp.down('.'+this.tbarCls);this.body=cp.down('.'+this.bodyCls);this.bbar=cp.down('.'+this.bbarCls);this.footer=cp.down('.'+this.footerCls);this.fromMarkup=true;}else{this.el=ct.createChild({id:this.id,cls:this.baseCls},position);}
var el=this.el,d=el.dom;if(this.cls){this.el.addClass(this.cls);}
if(this.buttons){this.elements+=',footer';}
if(this.frame){el.insertHtml('afterBegin',String.format(Ext.Element.boxMarkup,this.baseCls));this.createElement('header',d.firstChild.firstChild.firstChild);this.createElement('bwrap',d);var bw=this.bwrap.dom;var ml=d.childNodes[1],bl=d.childNodes[2];bw.appendChild(ml);bw.appendChild(bl);var mc=bw.firstChild.firstChild.firstChild;this.createElement('tbar',mc);this.createElement('body',mc);this.createElement('bbar',mc);this.createElement('footer',bw.lastChild.firstChild.firstChild);if(!this.footer){this.bwrap.dom.lastChild.className+=' x-panel-nofooter';}}else{this.createElement('header',d);this.createElement('bwrap',d);var bw=this.bwrap.dom;this.createElement('tbar',bw);this.createElement('body',bw);this.createElement('bbar',bw);this.createElement('footer',bw);if(!this.header){this.body.addClass(this.bodyCls+'-noheader');if(this.tbar){this.tbar.addClass(this.tbarCls+'-noheader');}}}
if(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.header.on('click',this.toggleCollapse,this);this.header.setStyle('cursor','pointer');}}
if(this.tools){var ts=this.tools;this.tools={};this.addTool.apply(this,ts);}else{this.tools={};}
if(this.buttons&&this.buttons.length>0){var tb=this.footer.createChild({cls:'x-panel-btns-ct',cn:{cls:"x-panel-btns x-panel-btns-"+this.buttonAlign,html:'<table cellspacing="0"><tbody><tr></tr></tbody></table><div class="x-clear"></div>'}},null,true);var tr=tb.getElementsByTagName('tr')[0];for(var i=0,len=this.buttons.length;i<len;i++){var b=this.buttons[i];var td=document.createElement('td');td.className='x-panel-btn-td';b.render(tr.appendChild(td));}}
if(this.tbar&&this.topToolbar){if(Ext.isArray(this.topToolbar)){this.topToolbar=new Ext.Toolbar(this.topToolbar);}
this.topToolbar.render(this.tbar);this.topToolbar.ownerCt=this;}
if(this.bbar&&this.bottomToolbar){if(Ext.isArray(this.bottomToolbar)){this.bottomToolbar=new Ext.Toolbar(this.bottomToolbar);}
this.bottomToolbar.render(this.bbar);this.bottomToolbar.ownerCt=this;}},setIconClass:function(cls){var old=this.iconCls;this.iconCls=cls;if(this.rendered&&this.header){if(this.frame){this.header.addClass('x-panel-icon');this.header.replaceClass(old,this.iconCls);}else{var hd=this.header.dom;var img=hd.firstChild&&String(hd.firstChild.tagName).toLowerCase()=='img'?hd.firstChild:null;if(img){Ext.fly(img).replaceClass(old,this.iconCls);}else{Ext.DomHelper.insertBefore(hd.firstChild,{tag:'img',src:Ext.BLANK_IMAGE_URL,cls:'x-panel-inline-icon '+this.iconCls});}}}
this.fireEvent('iconchange',this,cls,old);},makeFloating:function(cfg){this.floating=true;this.el=new Ext.Layer(typeof cfg=='object'?cfg:{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(config,handler,scope){var bc={handler:handler,scope:scope,minWidth:this.minButtonWidth,hideParent:true};if(typeof config=="string"){bc.text=config;}else{Ext.apply(bc,config);}
var btn=new Ext.Button(bc);btn.ownerCt=this;if(!this.buttons){this.buttons=[];}
this.buttons.push(btn);return btn;},addTool:function(){if(!this[this.toolTarget]){return;}
if(!this.toolTemplate){var tt=new Ext.Template('<div class="x-tool x-tool-{id}">&#160;</div>');tt.disableFormats=true;tt.compile();Ext.Panel.prototype.toolTemplate=tt;}
for(var i=0,a=arguments,len=a.length;i<len;i++){var tc=a[i];if(!this.tools[tc.id]){var overCls='x-tool-'+tc.id+'-over';var t=this.toolTemplate.insertFirst((tc.align!=='left')?this[this.toolTarget]:this[this.toolTarget].child('span'),tc,true);this.tools[tc.id]=t;t.enableDisplayMode('block');t.on('click',this.createToolHandler(t,tc,overCls,this));if(tc.on){t.on(tc.on);}
if(tc.hidden){t.hide();}
if(tc.qtip){if(typeof tc.qtip=='object'){Ext.QuickTips.register(Ext.apply({target:t.id},tc.qtip));}else{t.dom.qtip=tc.qtip;}}
t.addClassOnOver(overCls);}}},onShow:function(){if(this.floating){return this.el.show();}
Ext.Panel.superclass.onShow.call(this);},onHide:function(){if(this.floating){return this.el.hide();}
Ext.Panel.superclass.onHide.call(this);},createToolHandler:function(t,tc,overCls,panel){return function(e){t.removeClass(overCls);e.stopEvent();if(tc.handler){tc.handler.call(tc.scope||t,e,t,panel);}};},afterRender:function(){if(this.fromMarkup&&this.height===undefined&&!this.autoHeight){this.height=this.el.getHeight();}
if(this.floating&&!this.hidden&&!this.initHidden){this.el.show();}
if(this.title){this.setTitle(this.title);}
this.setAutoScroll();if(this.html){this.body.update(typeof this.html=='object'?Ext.DomHelper.markup(this.html):this.html);delete this.html;}
if(this.contentEl){var ce=Ext.getDom(this.contentEl);Ext.fly(ce).removeClass(['x-hidden','x-hide-display']);this.body.dom.appendChild(ce);}
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 el=this.body||this.el;if(el){el.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(a,cb,scope){var o={scope:scope,block:true};if(a===true){o.callback=cb;return o;}else if(!a.callback){o.callback=cb;}else{o.callback=function(){cb.call(scope);Ext.callback(a.callback,a.scope);};}
return Ext.applyIf(o,a);},collapse:function(animate){if(this.collapsed||this.el.hasFxBlock()||this.fireEvent('beforecollapse',this,animate)===false){return;}
var doAnim=animate===true||(animate!==false&&this.animCollapse);this.beforeEffect();this.onCollapse(doAnim,animate);return this;},onCollapse:function(doAnim,animArg){if(doAnim){this[this.collapseEl].slideOut(this.slideAnchor,Ext.apply(this.createEffect(animArg||true,this.afterCollapse,this),this.collapseDefaults));}else{this[this.collapseEl].hide();this.afterCollapse();}},afterCollapse:function(){this.collapsed=true;this.el.addClass(this.collapsedCls);this.afterEffect();this.fireEvent('collapse',this);},expand:function(animate){if(!this.collapsed||this.el.hasFxBlock()||this.fireEvent('beforeexpand',this,animate)===false){return;}
var doAnim=animate===true||(animate!==false&&this.animCollapse);this.el.removeClass(this.collapsedCls);this.beforeEffect();this.onExpand(doAnim,animate);return this;},onExpand:function(doAnim,animArg){if(doAnim){this[this.collapseEl].slideIn(this.slideAnchor,Ext.apply(this.createEffect(animArg||true,this.afterExpand,this),this.expandDefaults));}else{this[this.collapseEl].show();this.afterExpand();}},afterExpand:function(){this.collapsed=false;this.afterEffect();this.fireEvent('expand',this);},toggleCollapse:function(animate){this[this.collapsed?'expand':'collapse'](animate);return this;},onDisable:function(){if(this.rendered&&this.maskDisabled){this.el.mask();}
Ext.Panel.superclass.onDisable.call(this);},onEnable:function(){if(this.rendered&&this.maskDisabled){this.el.unmask();}
Ext.Panel.superclass.onEnable.call(this);},onResize:function(w,h){if(w!==undefined||h!==undefined){if(!this.collapsed){if(typeof w=='number'){this.body.setWidth(this.adjustBodyWidth(w-this.getFrameWidth()));}else if(w=='auto'){this.body.setWidth(w);}
if(typeof h=='number'){this.body.setHeight(this.adjustBodyHeight(h-this.getFrameHeight()));}else if(h=='auto'){this.body.setHeight(h);}
if(this.disabled&&this.el._mask){this.el._mask.setSize(this.el.dom.clientWidth,this.el.getHeight());}}else{this.queuedBodySize={width:w,height:h};if(!this.queuedExpand&&this.allowQueuedExpand!==false){this.queuedExpand=true;this.on('expand',function(){delete this.queuedExpand;this.onResize(this.queuedBodySize.width,this.queuedBodySize.height);this.doLayout();},this,{single:true});}}
this.fireEvent('bodyresize',this,w,h);}
this.syncShadow();},adjustBodyHeight:function(h){return h;},adjustBodyWidth:function(w){return w;},onPosition:function(){this.syncShadow();},getFrameWidth:function(){var w=this.el.getFrameWidth('lr');if(this.frame){var l=this.bwrap.dom.firstChild;w+=(Ext.fly(l).getFrameWidth('l')+Ext.fly(l.firstChild).getFrameWidth('r'));var mc=this.bwrap.dom.firstChild.firstChild.firstChild;w+=Ext.fly(mc).getFrameWidth('lr');}
return w;},getFrameHeight:function(){var h=this.el.getFrameWidth('tb');h+=(this.tbar?this.tbar.getHeight():0)+
(this.bbar?this.bbar.getHeight():0);if(this.frame){var hd=this.el.dom.firstChild;var ft=this.bwrap.dom.lastChild;h+=(hd.offsetHeight+ft.offsetHeight);var mc=this.bwrap.dom.firstChild.firstChild.firstChild;h+=Ext.fly(mc).getFrameWidth('tb');}else{h+=(this.header?this.header.getHeight():0)+
(this.footer?this.footer.getHeight():0);}
return h;},getInnerWidth:function(){return this.getSize().width-this.getFrameWidth();},getInnerHeight:function(){return this.getSize().height-this.getFrameHeight();},syncShadow:function(){if(this.floating){this.el.sync(true);}},getLayoutTarget:function(){return this.body;},setTitle:function(title,iconCls){this.title=title;if(this.header&&this.headerAsText){this.header.child('span').update(title);}
if(iconCls){this.setIconClass(iconCls);}
this.fireEvent('titlechange',this,title);return this;},getUpdater:function(){return this.body.getUpdater();},load:function(){var um=this.body.getUpdater();um.update.apply(um,arguments);return this;},beforeDestroy:function(){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 k in this.tools){Ext.destroy(this.tools[k]);}}
if(this.buttons){for(var b in this.buttons){Ext.destroy(this.buttons[b]);}}
Ext.destroy(this.topToolbar,this.bottomToolbar);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(cls,useShim,appendTo){var el=document.createElement('div');el.className='x-panel-ghost '+(cls?cls:'');if(this.header){el.appendChild(this.el.dom.firstChild.cloneNode(true));}
Ext.fly(el.appendChild(document.createElement('ul'))).setHeight(this.bwrap.getHeight());el.style.width=this.el.dom.offsetWidth+'px';;if(!appendTo){this.container.dom.appendChild(el);}else{Ext.getDom(appendTo).appendChild(el);}
if(useShim!==false&&this.el.useShim!==false){var layer=new Ext.Layer({shadow:false,useDisplay:true,constrain:false},el);layer.show();return layer;}else{return new Ext.Element(el);}},doAutoLoad:function(){this.body.load(typeof this.autoLoad=='object'?this.autoLoad:{url:this.autoLoad});},getTool:function(id){return this.tools[id];}});Ext.reg('panel',Ext.Panel);Ext.Window=Ext.extend(Ext.Panel,{baseCls:'x-window',resizable:true,draggable:true,closable:true,constrain:false,constrainHeader:false,plain:false,minimizable:false,maximizable:false,minHeight:100,minWidth:200,expandOnShow:true,closeAction:'close',elements:'header,body',collapsible:false,initHidden:true,monitorResize:true,frame:true,floating:true,initComponent:function(){Ext.Window.superclass.initComponent.call(this);this.addEvents('resize','maximize','minimize','restore');},getState:function(){return Ext.apply(Ext.Window.superclass.getState.call(this)||{},this.getBox());},onRender:function(ct,position){Ext.Window.superclass.onRender.call(this,ct,position);if(this.plain){this.el.addClass('x-window-plain');}
this.focusEl=this.el.createChild({tag:"a",href:"#",cls:"x-dlg-focus",tabIndex:"-1",html:"&#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.mask.on('click',this.focus,this);}},initEvents:function(){Ext.Window.superclass.initEvents.call(this);if(this.animateTarget){this.setAnimateTarget(this.animateTarget);}
if(this.resizable){this.resizer=new Ext.Resizable(this.el,{minWidth:this.minWidth,minHeight:this.minHeight,handles:this.resizeHandles||"all",pinned:true,resizeElement:this.resizerAction});this.resizer.window=this;this.resizer.on("beforeresize",this.beforeResize,this);}
if(this.draggable){this.header.addClass("x-window-draggable");}
this.initTools();this.el.on("mousedown",this.toFront,this);this.manager=this.manager||Ext.WindowMgr;this.manager.register(this);this.hidden=true;if(this.maximized){this.maximized=false;this.maximize();}
if(this.closable){var km=this.getKeyMap();km.on(27,this.onEsc,this);km.disable();}},initDraggable:function(){this.dd=new Ext.Window.DD(this);},onEsc:function(){this[this.closeAction]();},beforeDestroy:function(){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.header.on('dblclick',this.toggleMaximize,this);}
if(this.closable){this.addTool({id:'close',handler:this[this.closeAction].createDelegate(this,[])});}},resizerAction:function(){var box=this.proxy.getBox();this.proxy.hide();this.window.handleResize(box);return box;},beforeResize:function(){this.resizer.minHeight=Math.max(this.minHeight,this.getFrameHeight()+40);this.resizer.minWidth=Math.max(this.minWidth,this.getFrameWidth()+40);this.resizeBox=this.el.getBox();},updateHandles:function(){if(Ext.isIE&&this.resizer){this.resizer.syncHandleHeight();this.el.repaint();}},handleResize:function(box){var rz=this.resizeBox;if(rz.x!=box.x||rz.y!=box.y){this.updateBox(box);}else{this.setSize(box);}
this.focus();this.updateHandles();this.saveState();if(this.layout){this.doLayout();}
this.fireEvent("resize",this,box.width,box.height);},focus:function(){var f=this.focusEl,db=this.defaultButton,t=typeof db;if(t!='undefined'){if(t=='number'){f=this.buttons[db];}else if(t=='string'){f=Ext.getCmp(db);}else{f=db;}}
f.focus.defer(10,f);},setAnimateTarget:function(el){el=Ext.get(el);this.animateTarget=el;},beforeShow:function(){delete this.el.lastXY;delete this.el.lastLT;if(this.x===undefined||this.y===undefined){var xy=this.el.getAlignToXY(this.container,'c-c');var pos=this.el.translatePoints(xy[0],xy[1]);this.x=this.x===undefined?pos.left:this.x;this.y=this.y===undefined?pos.top:this.y;}
this.el.setLeftTop(this.x,this.y);if(this.expandOnShow){this.expand(false);}
if(this.modal){Ext.getBody().addClass("x-body-masked");this.mask.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true));this.mask.show();}},show:function(animateTarget,cb,scope){if(!this.rendered){this.render(Ext.getBody());}
if(this.hidden===false){this.toFront();return;}
if(this.fireEvent("beforeshow",this)===false){return;}
if(cb){this.on('show',cb,scope,{single:true});}
this.hidden=false;if(animateTarget!==undefined){this.setAnimateTarget(animateTarget);}
this.beforeShow();if(this.animateTarget){this.animShow();}else{this.afterShow();}},afterShow:function(){this.proxy.hide();this.el.setStyle('display','block');this.el.show();if(this.maximized){this.fitContainer();}
if(Ext.isMac&&Ext.isGecko){this.cascade(this.setAutoScroll);}
if(this.monitorResize||this.modal||this.constrain||this.constrainHeader){Ext.EventManager.onWindowResize(this.onWindowResize,this);}
this.doConstrain();if(this.layout){this.doLayout();}
if(this.keyMap){this.keyMap.enable();}
this.toFront();this.updateHandles();this.fireEvent("show",this);},animShow:function(){this.proxy.show();this.proxy.setBox(this.animateTarget.getBox());this.proxy.setOpacity(0);var b=this.getBox(false);b.callback=this.afterShow;b.scope=this;b.duration=.25;b.easing='easeNone';b.opacity=.5;b.block=true;this.el.setStyle('display','none');this.proxy.shift(b);},hide:function(animateTarget,cb,scope){if(this.activeGhost){this.hide.defer(100,this,[animateTarget,cb,scope]);return;}
if(this.hidden||this.fireEvent("beforehide",this)===false){return;}
if(cb){this.on('hide',cb,scope,{single:true});}
this.hidden=true;if(animateTarget!==undefined){this.setAnimateTarget(animateTarget);}
if(this.animateTarget){this.animHide();}else{this.el.hide();this.afterHide();}},afterHide:function(){this.proxy.hide();if(this.monitorResize||this.modal||this.constrain||this.constrainHeader){Ext.EventManager.removeResizeListener(this.onWindowResize,this);}
if(this.modal){this.mask.hide();Ext.getBody().removeClass("x-body-masked");}
if(this.keyMap){this.keyMap.disable();}
this.fireEvent("hide",this);},animHide:function(){this.proxy.setOpacity(.5);this.proxy.show();var tb=this.getBox(false);this.proxy.setBox(tb);this.el.hide();var b=this.animateTarget.getBox();b.callback=this.afterHide;b.scope=this;b.duration=.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 force=this.mask.dom.offsetHeight;this.mask.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true));}
this.doConstrain();},doConstrain:function(){if(this.constrain||this.constrainHeader){var offsets;if(this.constrain){offsets={right:this.el.shadowOffset,left:this.el.shadowOffset,bottom:this.el.shadowOffset};}else{var s=this.getSize();offsets={right:-(s.width-100),bottom:-(s.height-25)};}
var xy=this.el.getConstrainToXY(this.container,true,offsets);if(xy){this.setPosition(xy[0],xy[1]);}}},ghost:function(cls){var ghost=this.createGhost(cls);var box=this.getBox(true);ghost.setLeftTop(box.x,box.y);ghost.setWidth(box.width);this.el.hide();this.activeGhost=ghost;return ghost;},unghost:function(show,matchPosition){if(show!==false){this.el.show();this.focus();if(Ext.isMac&&Ext.isGecko){this.cascade(this.setAutoScroll);}}
if(matchPosition!==false){this.setPosition(this.activeGhost.getLeft(true),this.activeGhost.getTop(true));}
this.activeGhost.hide();this.activeGhost.remove();delete this.activeGhost;},minimize:function(){this.fireEvent('minimize',this);},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);}},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);}},toggleMaximize:function(){this[this.maximized?'restore':'maximize']();},fitContainer:function(){var vs=this.container.getViewSize();this.setSize(vs.width,vs.height);},setZIndex:function(index){if(this.modal){this.mask.setStyle("z-index",index);}
this.el.setZIndex(++index);index+=5;if(this.resizer){this.resizer.proxy.setStyle("z-index",++index);}
this.lastZIndex=index;},alignTo:function(element,position,offsets){var xy=this.el.getAlignToXY(element,position,offsets);this.setPagePosition(xy[0],xy[1]);return this;},anchorTo:function(el,alignment,offsets,monitorScroll){if(this.doAnchor){Ext.EventManager.removeResizeListener(this.doAnchor,this);Ext.EventManager.un(window,'scroll',this.doAnchor,this);}
this.doAnchor=function(){this.alignTo(el,alignment,offsets);};Ext.EventManager.onWindowResize(this.doAnchor,this);var tm=typeof monitorScroll;if(tm!='undefined'){Ext.EventManager.on(window,'scroll',this.doAnchor,this,{buffer:tm=='number'?monitorScroll:50});}
this.doAnchor();return this;},toFront:function(e){if(this.manager.bringToFront(this)){if(!e||!e.getTarget().focus){this.focus();}}
return this;},setActive:function(active){if(active){if(!this.maximized){this.el.enableShadow(true);}
this.fireEvent('activate',this);}else{this.el.disableShadow();this.fireEvent('deactivate',this);}},toBack:function(){this.manager.sendToBack(this);return this;},center:function(){var xy=this.el.getAlignToXY(this.container,'c-c');this.setPagePosition(xy[0],xy[1]);return this;}});Ext.reg('window',Ext.Window);Ext.Window.DD=function(win){this.win=win;Ext.Window.DD.superclass.constructor.call(this,win.el.id,'WindowDD-'+win.id);this.setHandleElId(win.header.id);this.scroll=false;};Ext.extend(Ext.Window.DD,Ext.dd.DD,{moveOnly:true,headerOffsets:[100,25],startDrag:function(){var w=this.win;this.proxy=w.ghost();if(w.constrain!==false){var so=w.el.shadowOffset;this.constrainTo(w.container,{right:so,left:so,bottom:so});}else if(w.constrainHeader!==false){var s=this.proxy.getSize();this.constrainTo(w.container,{right:-(s.width-this.headerOffsets[0]),bottom:-(s.height-this.headerOffsets[1])});}},b4Drag:Ext.emptyFn,onDrag:function(e){this.alignElWithMouse(this.proxy,e.getPageX(),e.getPageY());},endDrag:function(e){this.win.unghost();this.win.saveState();}});Ext.WindowGroup=function(){var list={};var accessList=[];var front=null;var sortWindows=function(d1,d2){return(!d1._lastAccess||d1._lastAccess<d2._lastAccess)?-1:1;};var orderWindows=function(){var a=accessList,len=a.length;if(len>0){a.sort(sortWindows);var seed=a[0].manager.zseed;for(var i=0;i<len;i++){var win=a[i];if(win&&!win.hidden){win.setZIndex(seed+(i*10));}}}
activateLast();};var setActiveWin=function(win){if(win!=front){if(front){front.setActive(false);}
front=win;if(win){win.setActive(true);}}};var activateLast=function(){for(var i=accessList.length-1;i>=0;--i){if(!accessList[i].hidden){setActiveWin(accessList[i]);return;}}
setActiveWin(null);};return{zseed:9000,register:function(win){list[win.id]=win;accessList.push(win);win.on('hide',activateLast);},unregister:function(win){delete list[win.id];win.un('hide',activateLast);accessList.remove(win);},get:function(id){return typeof id=="object"?id:list[id];},bringToFront:function(win){win=this.get(win);if(win!=front){win._lastAccess=new Date().getTime();orderWindows();return true;}
return false;},sendToBack:function(win){win=this.get(win);win._lastAccess=-(new Date().getTime());orderWindows();return win;},hideAll:function(){for(var id in list){if(list[id]&&typeof list[id]!="function"&&list[id].isVisible()){list[id].hide();}}},getActive:function(){return front;},getBy:function(fn,scope){var r=[];for(var i=accessList.length-1;i>=0;--i){var win=accessList[i];if(fn.call(scope||win,win)!==false){r.push(win);}}
return r;},each:function(fn,scope){for(var id in list){if(list[id]&&typeof list[id]!="function"){if(fn.call(scope||list[id],list[id])===false){return;}}}}};};Ext.WindowMgr=new Ext.WindowGroup();Ext.dd.PanelProxy=function(panel,config){this.panel=panel;this.id=this.panel.id+'-ddproxy';Ext.apply(this,config);};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(xy,callback,scope){this.hide();if(typeof callback=="function"){callback.call(scope||this);}},moveProxy:function(parentNode,before){if(this.proxy){parentNode.insertBefore(this.proxy.dom,before);}}};Ext.Panel.DD=function(panel,cfg){this.panel=panel;this.dragData={panel:panel};this.proxy=new Ext.dd.PanelProxy(panel,cfg);Ext.Panel.DD.superclass.constructor.call(this,panel.el,cfg);var h=panel.header;if(h){this.setHandleElId(h.id);}
(h?h: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(x,y){this.proxy.show();},b4MouseDown:function(e){var x=e.getPageX();var y=e.getPageY();this.autoOffset(x,y);},onInitDrag:function(x,y){this.onStartDrag(x,y);return true;},createFrame:Ext.emptyFn,getDragEl:function(e){return this.proxy.ghost.dom;},endDrag:function(e){this.proxy.hide();this.panel.saveState();},autoOffset:function(x,y){x-=this.startPageX;y-=this.startPageY;this.setDelta(x,y);}});Ext.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(name,defaultValue){return typeof this.state[name]=="undefined"?defaultValue:this.state[name];},clear:function(name){delete this.state[name];this.fireEvent("statechange",this,name,null);},set:function(name,value){this.state[name]=value;this.fireEvent("statechange",this,name,value);},decodeValue:function(cookie){var re=/^(a|n|d|b|s|o)\:(.*)$/;var matches=re.exec(unescape(cookie));if(!matches||!matches[1])return;var type=matches[1];var v=matches[2];switch(type){case"n":return parseFloat(v);case"d":return new Date(Date.parse(v));case"b":return(v=="1");case"a":var all=[];var values=v.split("^");for(var i=0,len=values.length;i<len;i++){all.push(this.decodeValue(values[i]));}
return all;case"o":var all={};var values=v.split("^");for(var i=0,len=values.length;i<len;i++){var kv=values[i].split("=");all[kv[0]]=this.decodeValue(kv[1]);}
return all;default:return v;}},encodeValue:function(v){var enc;if(typeof v=="number"){enc="n:"+v;}else if(typeof v=="boolean"){enc="b:"+(v?"1":"0");}else if(Ext.isDate(v)){enc="d:"+v.toGMTString();}else if(Ext.isArray(v)){var flat="";for(var i=0,len=v.length;i<len;i++){flat+=this.encodeValue(v[i]);if(i!=len-1)flat+="^";}
enc="a:"+flat;}else if(typeof v=="object"){var flat="";for(var key in v){if(typeof v[key]!="function"&&v[key]!==undefined){flat+=key+"="+this.encodeValue(v[key])+"^";}}
enc="o:"+flat.substring(0,flat.length-1);}else{enc="s:"+v;}
return escape(enc);}});Ext.state.Manager=function(){var provider=new Ext.state.Provider();return{setProvider:function(stateProvider){provider=stateProvider;},get:function(key,defaultValue){return provider.get(key,defaultValue);},set:function(key,value){provider.set(key,value);},clear:function(key){provider.clear(key);},getProvider:function(){return provider;}};}();Ext.state.CookieProvider=function(config){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,config);this.state=this.readCookies();};Ext.extend(Ext.state.CookieProvider,Ext.state.Provider,{set:function(name,value){if(typeof value=="undefined"||value===null){this.clear(name);return;}
this.setCookie(name,value);Ext.state.CookieProvider.superclass.set.call(this,name,value);},clear:function(name){this.clearCookie(name);Ext.state.CookieProvider.superclass.clear.call(this,name);},readCookies:function(){var cookies={};var c=document.cookie+";";var re=/\s?(.*?)=(.*?);/g;var matches;while((matches=re.exec(c))!=null){var name=matches[1];var value=matches[2];if(name&&name.substring(0,3)=="ys-"){cookies[name.substr(3)]=this.decodeValue(value);}}
return cookies;},setCookie:function(name,value){document.cookie="ys-"+name+"="+this.encodeValue(value)+
((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(name){document.cookie="ys-"+name+"=null; expires=Thu, 01-Jan-70 00:00:01 GMT"+
((this.path==null)?"":("; path="+this.path))+
((this.domain==null)?"":("; domain="+this.domain))+
((this.secure==true)?"; secure":"");}});Ext.DataView=Ext.extend(Ext.BoxComponent,{selectedClass:"x-view-selected",emptyText:"",deferEmptyText:true,trackOver:false,last:false,initComponent:function(){Ext.DataView.superclass.initComponent.call(this);if(typeof this.tpl=="string"){this.tpl=new Ext.XTemplate(this.tpl);}
this.addEvents("beforeclick","click","mouseenter","mouseleave","containerclick","dblclick","contextmenu","selectionchange","beforeselect");this.all=new Ext.CompositeElementLite();this.selected=new Ext.CompositeElementLite();},onRender:function(){if(!this.el){this.el=document.createElement('div');this.el.id=this.id;}
Ext.DataView.superclass.onRender.apply(this,arguments);},afterRender:function(){Ext.DataView.superclass.afterRender.call(this);this.el.on({"click":this.onClick,"dblclick":this.onDblClick,"contextmenu":this.onContextMenu,scope:this});if(this.overClass||this.trackOver){this.el.on({"mouseover":this.onMouseOver,"mouseout":this.onMouseOut,scope:this});}
if(this.store){this.setStore(this.store,true);}},refresh:function(){this.clearSelections(false,true);this.el.update("");var records=this.store.getRange();if(records.length<1){if(!this.deferEmptyText||this.hasSkippedEmptyText){this.el.update(this.emptyText);}
this.hasSkippedEmptyText=true;this.all.clear();return;}
this.tpl.overwrite(this.el,this.collectData(records,0));this.all.fill(Ext.query(this.itemSelector,this.el.dom));this.updateIndexes(0);},prepareData:function(data){return data;},collectData:function(records,startIndex){var r=[];for(var i=0,len=records.length;i<len;i++){r[r.length]=this.prepareData(records[i].data,startIndex+i,records[i]);}
return r;},bufferRender:function(records){var div=document.createElement('div');this.tpl.overwrite(div,this.collectData(records));return Ext.query(this.itemSelector,div);},onUpdate:function(ds,record){var index=this.store.indexOf(record);var sel=this.isSelected(index);var original=this.all.elements[index];var node=this.bufferRender([record],index)[0];this.all.replaceElement(index,node,true);if(sel){this.selected.replaceElement(original,node);this.all.item(index).addClass(this.selectedClass);}
this.updateIndexes(index,index);},onAdd:function(ds,records,index){if(this.all.getCount()==0){this.refresh();return;}
var nodes=this.bufferRender(records,index),n,a=this.all.elements;if(index<this.all.getCount()){n=this.all.item(index).insertSibling(nodes,'before',true);a.splice.apply(a,[index,0].concat(nodes));}else{n=this.all.last().insertSibling(nodes,'after',true);a.push.apply(a,nodes);}
this.updateIndexes(index);},onRemove:function(ds,record,index){this.deselect(index);this.all.removeElement(index,true);this.updateIndexes(index);},refreshNode:function(index){this.onUpdate(this.store,this.store.getAt(index));},updateIndexes:function(startIndex,endIndex){var ns=this.all.elements;startIndex=startIndex||0;endIndex=endIndex||((endIndex===0)?0:(ns.length-1));for(var i=startIndex;i<=endIndex;i++){ns[i].viewIndex=i;}},getStore:function(){return this.store;},setStore:function(store,initial){if(!initial&&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(store){store=Ext.StoreMgr.lookup(store);store.on("beforeload",this.onBeforeLoad,this);store.on("datachanged",this.refresh,this);store.on("add",this.onAdd,this);store.on("remove",this.onRemove,this);store.on("update",this.onUpdate,this);store.on("clear",this.refresh,this);}
this.store=store;if(store){this.refresh();}},findItemFromChild:function(node){return Ext.fly(node).findParent(this.itemSelector,this.el);},onClick:function(e){var item=e.getTarget(this.itemSelector,this.el);if(item){var index=this.indexOf(item);if(this.onItemClick(item,index,e)!==false){this.fireEvent("click",this,index,item,e);}}else{if(this.fireEvent("containerclick",this,e)!==false){this.clearSelections();}}},onContextMenu:function(e){var item=e.getTarget(this.itemSelector,this.el);if(item){this.fireEvent("contextmenu",this,this.indexOf(item),item,e);}},onDblClick:function(e){var item=e.getTarget(this.itemSelector,this.el);if(item){this.fireEvent("dblclick",this,this.indexOf(item),item,e);}},onMouseOver:function(e){var item=e.getTarget(this.itemSelector,this.el);if(item&&item!==this.lastItem){this.lastItem=item;Ext.fly(item).addClass(this.overClass);this.fireEvent("mouseenter",this,this.indexOf(item),item,e);}},onMouseOut:function(e){if(this.lastItem){if(!e.within(this.lastItem,true,true)){Ext.fly(this.lastItem).removeClass(this.overClass);this.fireEvent("mouseleave",this,this.indexOf(this.lastItem),this.lastItem,e);delete this.lastItem;}}},onItemClick:function(item,index,e){if(this.fireEvent("beforeclick",this,index,item,e)===false){return false;}
if(this.multiSelect){this.doMultiSelection(item,index,e);e.preventDefault();}else if(this.singleSelect){this.doSingleSelection(item,index,e);e.preventDefault();}
return true;},doSingleSelection:function(item,index,e){if(e.ctrlKey&&this.isSelected(index)){this.deselect(index);}else{this.select(index,false);}},doMultiSelection:function(item,index,e){if(e.shiftKey&&this.last!==false){var last=this.last;this.selectRange(last,index,e.ctrlKey);this.last=last;}else{if((e.ctrlKey||this.simpleSelect)&&this.isSelected(index)){this.deselect(index);}else{this.select(index,e.ctrlKey||e.shiftKey||this.simpleSelect);}}},getSelectionCount:function(){return this.selected.getCount()},getSelectedNodes:function(){return this.selected.elements;},getSelectedIndexes:function(){var indexes=[],s=this.selected.elements;for(var i=0,len=s.length;i<len;i++){indexes.push(s[i].viewIndex);}
return indexes;},getSelectedRecords:function(){var r=[],s=this.selected.elements;for(var i=0,len=s.length;i<len;i++){r[r.length]=this.store.getAt(s[i].viewIndex);}
return r;},getRecords:function(nodes){var r=[],s=nodes;for(var i=0,len=s.length;i<len;i++){r[r.length]=this.store.getAt(s[i].viewIndex);}
return r;},getRecord:function(node){return this.store.getAt(node.viewIndex);},clearSelections:function(suppressEvent,skipUpdate){if((this.multiSelect||this.singleSelect)&&this.selected.getCount()>0){if(!skipUpdate){this.selected.removeClass(this.selectedClass);}
this.selected.clear();this.last=false;if(!suppressEvent){this.fireEvent("selectionchange",this,this.selected.elements);}}},isSelected:function(node){return this.selected.contains(this.getNode(node));},deselect:function(node){if(this.isSelected(node)){node=this.getNode(node);this.selected.removeElement(node);if(this.last==node.viewIndex){this.last=false;}
Ext.fly(node).removeClass(this.selectedClass);this.fireEvent("selectionchange",this,this.selected.elements);}},select:function(nodeInfo,keepExisting,suppressEvent){if(Ext.isArray(nodeInfo)){if(!keepExisting){this.clearSelections(true);}
for(var i=0,len=nodeInfo.length;i<len;i++){this.select(nodeInfo[i],true,true);}
if(!suppressEvent){this.fireEvent("selectionchange",this,this.selected.elements);}}else{var node=this.getNode(nodeInfo);if(!keepExisting){this.clearSelections(true);}
if(node&&!this.isSelected(node)){if(this.fireEvent("beforeselect",this,node,this.selected.elements)!==false){Ext.fly(node).addClass(this.selectedClass);this.selected.add(node);this.last=node.viewIndex;if(!suppressEvent){this.fireEvent("selectionchange",this,this.selected.elements);}}}}},selectRange:function(start,end,keepExisting){if(!keepExisting){this.clearSelections(true);}
this.select(this.getNodes(start,end),true);},getNode:function(nodeInfo){if(typeof nodeInfo=="string"){return document.getElementById(nodeInfo);}else if(typeof nodeInfo=="number"){return this.all.elements[nodeInfo];}
return nodeInfo;},getNodes:function(start,end){var ns=this.all.elements;start=start||0;end=typeof end=="undefined"?Math.max(ns.length-1,0):end;var nodes=[],i;if(start<=end){for(i=start;i<=end&&ns[i];i++){nodes.push(ns[i]);}}else{for(i=start;i>=end&&ns[i];i--){nodes.push(ns[i]);}}
return nodes;},indexOf:function(node){node=this.getNode(node);if(typeof node.viewIndex=="number"){return node.viewIndex;}
return this.all.indexOf(node);},onBeforeLoad:function(){if(this.loadingText){this.clearSelections(false,true);this.el.update('<div class="loading-indicator">'+this.loadingText+'</div>');this.all.clear();}},onDestroy:function(){Ext.DataView.superclass.onDestroy.call(this);this.setStore(null);}});Ext.reg('dataview',Ext.DataView);Ext.ColorPalette=function(config){Ext.ColorPalette.superclass.constructor.call(this,config);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(container,position){var t=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 el=document.createElement("div");el.id=this.getId();el.className=this.itemCls;t.overwrite(el,this.colors);container.dom.insertBefore(el,position);this.el=Ext.get(el);this.el.on(this.clickEvent,this.handleClick,this,{delegate:"a"});if(this.clickEvent!='click'){this.el.on('click',Ext.emptyFn,this,{delegate:"a",preventDefault:true});}},afterRender:function(){Ext.ColorPalette.superclass.afterRender.call(this);if(this.value){var s=this.value;this.value=null;this.select(s);}},handleClick:function(e,t){e.preventDefault();if(!this.disabled){var c=t.className.match(/(?:^|\s)color-(.{6})(?:\s|$)/)[1];this.select(c.toUpperCase());}},select:function(color){color=color.replace("#","");if(color!=this.value||this.allowReselect){var el=this.el;if(this.value){el.child("a.color-"+this.value).removeClass("x-color-palette-sel");}
el.child("a.color-"+color).addClass("x-color-palette-sel");this.value=color;this.fireEvent("select",this,color);}}});Ext.reg('colorpalette',Ext.ColorPalette);Ext.DatePicker=Ext.extend(Ext.Component,{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",constrainToViewport:true,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 dd=this.disabledDates;var re="(?:";for(var i=0;i<dd.length;i++){re+=dd[i];if(i!=dd.length-1)re+="|";}
this.disabledDatesRE=new RegExp(re+")");}},setDisabledDates:function(dd){if(Ext.isArray(dd)){this.disabledDates=dd;this.disabledDatesRE=null;}else{this.disabledDatesRE=dd;}
this.initDisabledDays();this.update(this.value,true);},setDisabledDays:function(dd){this.disabledDays=dd;this.update(this.value,true);},setMinDate:function(dt){this.minDate=dt;this.update(this.value,true);},setMaxDate:function(dt){this.maxDate=dt;this.update(this.value,true);},setValue:function(value){var old=this.value;this.value=value.clearTime(true);if(this.el){this.update(this.value);}},getValue:function(){return this.value;},focus:function(){if(this.el){this.update(this.activeDate);}},onRender:function(container,position){var m=['<table cellspacing="0">','<tr><td class="x-date-left"><a href="#" title="',this.prevText,'">&#160;</a></td><td class="x-date-middle" align="center"></td><td class="x-date-right"><a href="#" title="',this.nextText,'">&#160;</a></td></tr>','<tr><td colspan="3"><table class="x-date-inner" cellspacing="0"><thead><tr>'];var dn=this.dayNames;for(var i=0;i<7;i++){var d=this.startDay+i;if(d>6){d=d-7;}
m.push("<th><span>",dn[d].substr(0,1),"</span></th>");}
m[m.length]="</tr></thead><tbody><tr>";for(var i=0;i<42;i++){if(i%7==0&&i!=0){m[m.length]="</tr><tr>";}
m[m.length]='<td><a href="#" hidefocus="on" class="x-date-date" tabIndex="1"><em><span></span></em></a></td>';}
m.push('</tr></tbody></table></td></tr>',this.showToday?'<tr><td colspan="3" class="x-date-bottom" align="center"></td></tr>':'','</table><div class="x-date-mp"></div>');var el=document.createElement("div");el.className="x-date-picker";el.innerHTML=m.join("");container.dom.insertBefore(el,position);this.el=Ext.get(el);this.eventEl=Ext.get(el.firstChild);this.leftClickRpt=new Ext.util.ClickRepeater(this.el.child("td.x-date-left a"),{handler:this.showPrevMonth,scope:this,preventDefault:true,stopDefault:true});this.rightClickRpt=new Ext.util.ClickRepeater(this.el.child("td.x-date-right a"),{handler:this.showNextMonth,scope:this,preventDefault:true,stopDefault:true});this.eventEl.on("mousewheel",this.handleMouseWheel,this);this.monthPicker=this.el.down('div.x-date-mp');this.monthPicker.enableDisplayMode('block');var kn=new Ext.KeyNav(this.eventEl,{"left":function(e){e.ctrlKey?this.showPrevMonth():this.update(this.activeDate.add("d",-1));},"right":function(e){e.ctrlKey?this.showNextMonth():this.update(this.activeDate.add("d",1));},"up":function(e){e.ctrlKey?this.showNextYear():this.update(this.activeDate.add("d",-7));},"down":function(e){e.ctrlKey?this.showPrevYear():this.update(this.activeDate.add("d",7));},"pageUp":function(e){this.showNextMonth();},"pageDown":function(e){this.showPrevMonth();},"enter":function(e){e.stopPropagation();return true;},scope:this});this.eventEl.on("click",this.handleDateClick,this,{delegate:"a.x-date-date"});this.el.unselectable();this.cells=this.el.select("table.x-date-inner tbody td");this.textNodes=this.el.query("table.x-date-inner tbody span");this.mbtn=new Ext.Button({text:"&#160;",tooltip:this.monthYearText,renderTo:this.el.child("td.x-date-middle",true)});this.mbtn.on('click',this.showMonthPicker,this);this.mbtn.el.child(this.mbtn.menuClassTarget).addClass("x-btn-with-menu");if(this.showToday){this.todayKeyListener=this.eventEl.addKeyListener(Ext.EventObject.SPACE,this.selectToday,this);var today=(new Date()).dateFormat(this.format);this.todayBtn=new Ext.Button({renderTo:this.el.child("td.x-date-bottom",true),text:String.format(this.todayText,today),tooltip:String.format(this.todayTip,today),handler:this.selectToday,scope:this});}
if(Ext.isIE){this.el.repaint();}
this.update(this.value);},createMonthPicker:function(){if(!this.monthPicker.dom.firstChild){var buf=['<table border="0" cellspacing="0">'];for(var i=0;i<6;i++){buf.push('<tr><td class="x-date-mp-month"><a href="#">',this.monthNames[i].substr(0,3),'</a></td>','<td class="x-date-mp-month x-date-mp-sep"><a href="#">',this.monthNames[i+6].substr(0,3),'</a></td>',i==0?'<td class="x-date-mp-ybtn" align="center"><a class="x-date-mp-prev"></a></td><td class="x-date-mp-ybtn" align="center"><a class="x-date-mp-next"></a></td></tr>':'<td class="x-date-mp-year"><a href="#"></a></td><td class="x-date-mp-year"><a href="#"></a></td></tr>');}
buf.push('<tr class="x-date-mp-btns"><td colspan="4"><button type="button" class="x-date-mp-ok">',this.okText,'</button><button type="button" class="x-date-mp-cancel">',this.cancelText,'</button></td></tr>','</table>');this.monthPicker.update(buf.join(''));this.monthPicker.on('click',this.onMonthClick,this);this.monthPicker.on('dblclick',this.onMonthDblClick,this);this.mpMonths=this.monthPicker.select('td.x-date-mp-month');this.mpYears=this.monthPicker.select('td.x-date-mp-year');this.mpMonths.each(function(m,a,i){i+=1;if((i%2)==0){m.dom.xmonth=5+Math.round(i*.5);}else{m.dom.xmonth=Math.round((i-1)*.5);}});}},showMonthPicker:function(){this.createMonthPicker();var size=this.el.getSize();this.monthPicker.setSize(size);this.monthPicker.child('table').setSize(size);this.mpSelMonth=(this.activeDate||this.value).getMonth();this.updateMPMonth(this.mpSelMonth);this.mpSelYear=(this.activeDate||this.value).getFullYear();this.updateMPYear(this.mpSelYear);this.monthPicker.slideIn('t',{duration:.2});},updateMPYear:function(y){this.mpyear=y;var ys=this.mpYears.elements;for(var i=1;i<=10;i++){var td=ys[i-1],y2;if((i%2)==0){y2=y+Math.round(i*.5);td.firstChild.innerHTML=y2;td.xyear=y2;}else{y2=y-(5-Math.round(i*.5));td.firstChild.innerHTML=y2;td.xyear=y2;}
this.mpYears.item(i-1)[y2==this.mpSelYear?'addClass':'removeClass']('x-date-mp-sel');}},updateMPMonth:function(sm){this.mpMonths.each(function(m,a,i){m[m.dom.xmonth==sm?'addClass':'removeClass']('x-date-mp-sel');});},selectMPMonth:function(m){},onMonthClick:function(e,t){e.stopEvent();var el=new Ext.Element(t),pn;if(el.is('button.x-date-mp-cancel')){this.hideMonthPicker();}
else if(el.is('button.x-date-mp-ok')){var d=new Date(this.mpSelYear,this.mpSelMonth,(this.activeDate||this.value).getDate());if(d.getMonth()!=this.mpSelMonth){d=new Date(this.mpSelYear,this.mpSelMonth,1).getLastDateOfMonth();}
this.update(d);this.hideMonthPicker();}
else if(pn=el.up('td.x-date-mp-month',2)){this.mpMonths.removeClass('x-date-mp-sel');pn.addClass('x-date-mp-sel');this.mpSelMonth=pn.dom.xmonth;}
else if(pn=el.up('td.x-date-mp-year',2)){this.mpYears.removeClass('x-date-mp-sel');pn.addClass('x-date-mp-sel');this.mpSelYear=pn.dom.xyear;}
else if(el.is('a.x-date-mp-prev')){this.updateMPYear(this.mpyear-10);}
else if(el.is('a.x-date-mp-next')){this.updateMPYear(this.mpyear+10);}},onMonthDblClick:function(e,t){e.stopEvent();var el=new Ext.Element(t),pn;if(pn=el.up('td.x-date-mp-month',2)){this.update(new Date(this.mpSelYear,pn.dom.xmonth,(this.activeDate||this.value).getDate()));this.hideMonthPicker();}
else if(pn=el.up('td.x-date-mp-year',2)){this.update(new Date(pn.dom.xyear,this.mpSelMonth,(this.activeDate||this.value).getDate()));this.hideMonthPicker();}},hideMonthPicker:function(disableAnim){if(this.monthPicker){if(disableAnim===true){this.monthPicker.hide();}else{this.monthPicker.slideOut('t',{duration:.2});}}},showPrevMonth:function(e){this.update(this.activeDate.add("mo",-1));},showNextMonth:function(e){this.update(this.activeDate.add("mo",1));},showPrevYear:function(){this.update(this.activeDate.add("y",-1));},showNextYear:function(){this.update(this.activeDate.add("y",1));},handleMouseWheel:function(e){var delta=e.getWheelDelta();if(delta>0){this.showPrevMonth();e.stopEvent();}else if(delta<0){this.showNextMonth();e.stopEvent();}},handleDateClick:function(e,t){e.stopEvent();if(t.dateValue&&!Ext.fly(t.parentNode).hasClass("x-date-disabled")){this.setValue(new Date(t.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(date,forceRefresh){var vd=this.activeDate;this.activeDate=date;if(!forceRefresh&&vd&&this.el){var t=date.getTime();if(vd.getMonth()==date.getMonth()&&vd.getFullYear()==date.getFullYear()){this.cells.removeClass("x-date-selected");this.cells.each(function(c){if(c.dom.firstChild.dateValue==t){c.addClass("x-date-selected");setTimeout(function(){try{c.dom.firstChild.focus();}catch(e){}},50);return false;}});return;}}
var days=date.getDaysInMonth();var firstOfMonth=date.getFirstDateOfMonth();var startingPos=firstOfMonth.getDay()-this.startDay;if(startingPos<=this.startDay){startingPos+=7;}
var pm=date.add("mo",-1);var prevStart=pm.getDaysInMonth()-startingPos;var cells=this.cells.elements;var textEls=this.textNodes;days+=startingPos;var day=86400000;var d=(new Date(pm.getFullYear(),pm.getMonth(),prevStart)).clearTime();var today=new Date().clearTime().getTime();var sel=date.clearTime().getTime();var min=this.minDate?this.minDate.clearTime():Number.NEGATIVE_INFINITY;var max=this.maxDate?this.maxDate.clearTime():Number.POSITIVE_INFINITY;var ddMatch=this.disabledDatesRE;var ddText=this.disabledDatesText;var ddays=this.disabledDays?this.disabledDays.join(""):false;var ddaysText=this.disabledDaysText;var format=this.format;if(this.showToday){var td=new Date().clearTime();var disable=(td<min||td>max||(ddMatch&&format&&ddMatch.test(td.dateFormat(format)))||(ddays&&ddays.indexOf(td.getDay())!=-1));this.todayBtn.setDisabled(disable);this.todayKeyListener[disable?'disable':'enable']();}
var setCellClass=function(cal,cell){cell.title="";var t=d.getTime();cell.firstChild.dateValue=t;if(t==today){cell.className+=" x-date-today";cell.title=cal.todayText;}
if(t==sel){cell.className+=" x-date-selected";setTimeout(function(){try{cell.firstChild.focus();}catch(e){}},50);}
if(t<min){cell.className=" x-date-disabled";cell.title=cal.minText;return;}
if(t>max){cell.className=" x-date-disabled";cell.title=cal.maxText;return;}
if(ddays){if(ddays.indexOf(d.getDay())!=-1){cell.title=ddaysText;cell.className=" x-date-disabled";}}
if(ddMatch&&format){var fvalue=d.dateFormat(format);if(ddMatch.test(fvalue)){cell.title=ddText.replace("%0",fvalue);cell.className=" x-date-disabled";}}};var i=0;for(;i<startingPos;i++){textEls[i].innerHTML=(++prevStart);d.setDate(d.getDate()+1);cells[i].className="x-date-prevday";setCellClass(this,cells[i]);}
for(;i<days;i++){var intDay=i-startingPos+1;textEls[i].innerHTML=(intDay);d.setDate(d.getDate()+1);cells[i].className="x-date-active";setCellClass(this,cells[i]);}
var extraDays=0;for(;i<42;i++){textEls[i].innerHTML=(++extraDays);d.setDate(d.getDate()+1);cells[i].className="x-date-nextday";setCellClass(this,cells[i]);}
this.mbtn.setText(this.monthNames[date.getMonth()]+" "+date.getFullYear());if(!this.internalRender){var main=this.el.dom.firstChild;var w=main.offsetWidth;this.el.setWidth(w+this.el.getBorderWidth("lr"));Ext.fly(main).setWidth(w);this.internalRender=true;if(Ext.isOpera&&!this.secondPass){main.rows[0].cells[1].style.width=(w-(main.rows[0].cells[0].offsetWidth+main.rows[0].cells[2].offsetWidth))+"px";this.secondPass=true;this.update.defer(10,this,[date]);}}},beforeDestroy:function(){if(this.rendered){Ext.destroy(this.leftClickRpt,this.rightClickRpt,this.monthPicker,this.eventEl,this.mbtn,this.todayBtn);}}});Ext.reg('datepicker',Ext.DatePicker);Ext.TabPanel=Ext.extend(Ext.Panel,{monitorResize:true,deferredRender:true,tabWidth:120,minTabWidth:30,resizeTabs:false,enableTabScroll:false,scrollIncrement:0,scrollRepeatInterval:400,scrollDuration:.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({deferredRender:this.deferredRender}));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();},render:function(){Ext.TabPanel.superclass.render.apply(this,arguments);if(this.activeTab!==undefined){var item=this.activeTab;delete this.activeTab;this.setActiveTab(item);}},onRender:function(ct,position){Ext.TabPanel.superclass.onRender.call(this,ct,position);if(this.plain){var pos=this.tabPosition=='top'?'header':'footer';this[pos].addClass('x-tab-panel-'+pos+'-plain');}
var st=this[this.stripTarget];this.stripWrap=st.createChild({cls:'x-tab-strip-wrap',cn:{tag:'ul',cls:'x-tab-strip x-tab-strip-'+this.tabPosition}});var beforeEl=(this.tabPosition=='bottom'?this.stripWrap:null);this.stripSpacer=st.createChild({cls:'x-tab-strip-spacer'},beforeEl);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 tt=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>');tt.disableFormats=true;tt.compile();Ext.TabPanel.prototype.itemTpl=tt;}
this.items.each(this.initTab,this);},afterRender:function(){Ext.TabPanel.superclass.afterRender.call(this);if(this.autoTabs){this.readTabs(false);}},initEvents:function(){Ext.TabPanel.superclass.initEvents.call(this);this.on('add',this.onAdd,this);this.on('remove',this.onRemove,this);this.strip.on('mousedown',this.onStripMouseDown,this);this.strip.on('contextmenu',this.onStripContextMenu,this);if(this.enableTabScroll){this.strip.on('mousewheel',this.onWheel,this);}},findTargets:function(e){var item=null;var itemEl=e.getTarget('li',this.strip);if(itemEl){item=this.getComponent(itemEl.id.split(this.idDelimiter)[1]);if(item.disabled){return{close:null,item:null,el:null};}}
return{close:e.getTarget('.x-tab-strip-close',this.strip),item:item,el:itemEl};},onStripMouseDown:function(e){if(e.button!=0){return;}
e.preventDefault();var t=this.findTargets(e);if(t.close){this.remove(t.item);return;}
if(t.item&&t.item!=this.activeTab){this.setActiveTab(t.item);}},onStripContextMenu:function(e){e.preventDefault();var t=this.findTargets(e);if(t.item){this.fireEvent('contextmenu',this,t.item,e);}},readTabs:function(removeExisting){if(removeExisting===true){this.items.each(function(item){this.remove(item);},this);}
var tabs=this.el.query(this.autoTabSelector);for(var i=0,len=tabs.length;i<len;i++){var tab=tabs[i];var title=tab.getAttribute('title');tab.removeAttribute('title');this.add({title:title,el:tab});}},initTab:function(item,index){var before=this.strip.dom.childNodes[index];var cls=item.closable?'x-tab-strip-closable':'';if(item.disabled){cls+=' x-item-disabled';}
if(item.iconCls){cls+=' x-tab-with-icon';}
if(item.tabCls){cls+=' '+item.tabCls;}
var p={id:this.id+this.idDelimiter+item.getItemId(),text:item.title,cls:cls,iconCls:item.iconCls||''};var el=before?this.itemTpl.insertBefore(before,p):this.itemTpl.append(this.strip,p);Ext.fly(el).addClassOnOver('x-tab-strip-over');if(item.tabTip){Ext.fly(el).child('span.x-tab-strip-text',true).qtip=item.tabTip;}
item.tabEl=el;item.on('disable',this.onItemDisabled,this);item.on('enable',this.onItemEnabled,this);item.on('titlechange',this.onItemTitleChanged,this);item.on('iconchange',this.onItemIconChanged,this);item.on('beforeshow',this.onBeforeShowItem,this);},onAdd:function(tp,item,index){this.initTab(item,index);if(this.items.getCount()==1){this.syncSize();}
this.delegateUpdates();},onBeforeAdd:function(item){var existing=item.events?(this.items.containsKey(item.getItemId())?item:null):this.items.get(item);if(existing){this.setActiveTab(item);return false;}
Ext.TabPanel.superclass.onBeforeAdd.apply(this,arguments);var es=item.elements;item.elements=es?es.replace(',header',''):es;item.border=(item.border===true);},onRemove:function(tp,item){Ext.destroy(Ext.get(this.getTabEl(item)));this.stack.remove(item);item.un('disable',this.onItemDisabled,this);item.un('enable',this.onItemEnabled,this);item.un('titlechange',this.onItemTitleChanged,this);item.un('iconchange',this.onItemIconChanged,this);item.un('beforeshow',this.onBeforeShowItem,this);if(item==this.activeTab){var next=this.stack.next();if(next){this.setActiveTab(next);}else if(this.items.getCount()>0){this.setActiveTab(0);}else{this.activeTab=null;}}
this.delegateUpdates();},onBeforeShowItem:function(item){if(item!=this.activeTab){this.setActiveTab(item);return false;}},onItemDisabled:function(item){var el=this.getTabEl(item);if(el){Ext.fly(el).addClass('x-item-disabled');}
this.stack.remove(item);},onItemEnabled:function(item){var el=this.getTabEl(item);if(el){Ext.fly(el).removeClass('x-item-disabled');}},onItemTitleChanged:function(item){var el=this.getTabEl(item);if(el){Ext.fly(el).child('span.x-tab-strip-text',true).innerHTML=item.title;}},onItemIconChanged:function(item,iconCls,oldCls){var el=this.getTabEl(item);if(el){Ext.fly(el).child('span.x-tab-strip-text').replaceClass(oldCls,iconCls);}},getTabEl:function(item){var itemId=(typeof item==='number')?this.items.items[item].getItemId():item.getItemId();return document.getElementById(this.id+this.idDelimiter+itemId);},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(item){item=this.getComponent(item);var el=this.getTabEl(item);if(el){el.style.display='none';this.delegateUpdates();}
this.stack.remove(item);},unhideTabStripItem:function(item){item=this.getComponent(item);var el=this.getTabEl(item);if(el){el.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 count=this.items.length;var ce=this.tabPosition!='bottom'?'header':'footer';var ow=this[ce].dom.offsetWidth;var aw=this[ce].dom.clientWidth;if(!this.resizeTabs||count<1||!aw){return;}
var each=Math.max(Math.min(Math.floor((aw-4)/count)-this.tabMargin,this.tabWidth),this.minTabWidth);this.lastTabWidth=each;var lis=this.stripWrap.dom.getElementsByTagName('li');for(var i=0,len=lis.length-1;i<len;i++){var li=lis[i];var inner=li.childNodes[1].firstChild.firstChild;var tw=li.offsetWidth;var iw=inner.offsetWidth;inner.style.width=(each-(tw-iw))+'px';}},adjustBodyWidth:function(w){if(this.header){this.header.setWidth(w);}
if(this.footer){this.footer.setWidth(w);}
return w;},setActiveTab:function(item){item=this.getComponent(item);if(!item||this.fireEvent('beforetabchange',this,item,this.activeTab)===false){return;}
if(!this.rendered){this.activeTab=item;return;}
if(this.activeTab!=item){if(this.activeTab){var oldEl=this.getTabEl(this.activeTab);if(oldEl){Ext.fly(oldEl).removeClass('x-tab-strip-active');}
this.activeTab.fireEvent('deactivate',this.activeTab);}
var el=this.getTabEl(item);Ext.fly(el).addClass('x-tab-strip-active');this.activeTab=item;this.stack.add(item);this.layout.setActiveItem(item);if(this.layoutOnTabChange&&item.doLayout){item.doLayout();}
if(this.scrolling){this.scrollToTab(item,this.animScroll);}
item.fireEvent('activate',item);this.fireEvent('tabchange',this,item);}},getActiveTab:function(){return this.activeTab||null;},getItem:function(item){return this.getComponent(item);},autoScrollTabs:function(){this.pos=this.tabPosition=='bottom'?this.footer:this.header;var count=this.items.length;var ow=this.pos.dom.offsetWidth;var tw=this.pos.dom.clientWidth;var wrap=this.stripWrap;var wd=wrap.dom;var cw=wd.offsetWidth;var pos=this.getScrollPos();var l=this.edge.getOffsetsTo(this.stripWrap)[0]+pos;if(!this.enableTabScroll||count<1||cw<20){return;}
if(l<=tw){wd.scrollLeft=0;wrap.setWidth(tw);if(this.scrolling){this.scrolling=false;this.pos.removeClass('x-tab-scrolling');this.scrollLeft.hide();this.scrollRight.hide();if(Ext.isAir||Ext.isSafari){wd.style.marginLeft='';wd.style.marginRight='';}}}else{if(!this.scrolling){this.pos.addClass('x-tab-scrolling');if(Ext.isAir||Ext.isSafari){wd.style.marginLeft='18px';wd.style.marginRight='18px';}}
tw-=wrap.getMargins('lr');wrap.setWidth(tw>20?tw:20);if(!this.scrolling){if(!this.scrollLeft){this.createScrollers();}else{this.scrollLeft.show();this.scrollRight.show();}}
this.scrolling=true;if(pos>(l-tw)){wd.scrollLeft=l-tw;}else{this.scrollToTab(this.activeTab,false);}
this.updateScrollButtons();}},createScrollers:function(){this.pos.addClass('x-tab-scrolling-'+this.tabPosition);var h=this.stripWrap.dom.offsetHeight;var sl=this.pos.insertFirst({cls:'x-tab-scroller-left'});sl.setHeight(h);sl.addClassOnOver('x-tab-scroller-left-over');this.leftRepeater=new Ext.util.ClickRepeater(sl,{interval:this.scrollRepeatInterval,handler:this.onScrollLeft,scope:this});this.scrollLeft=sl;var sr=this.pos.insertFirst({cls:'x-tab-scroller-right'});sr.setHeight(h);sr.addClassOnOver('x-tab-scroller-right-over');this.rightRepeater=new Ext.util.ClickRepeater(sr,{interval:this.scrollRepeatInterval,handler:this.onScrollRight,scope:this});this.scrollRight=sr;},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(item,animate){if(!item){return;}
var el=this.getTabEl(item);var pos=this.getScrollPos(),area=this.getScrollArea();var left=Ext.fly(el).getOffsetsTo(this.stripWrap)[0]+pos;var right=left+el.offsetWidth;if(left<pos){this.scrollTo(left,animate);}else if(right>(pos+area)){this.scrollTo(right-area,animate);}},scrollTo:function(pos,animate){this.stripWrap.scrollTo('left',pos,animate?this.getScrollAnim():false);if(!animate){this.updateScrollButtons();}},onWheel:function(e){var d=e.getWheelDelta()*this.wheelIncrement*-1;e.stopEvent();var pos=this.getScrollPos();var newpos=pos+d;var sw=this.getScrollWidth()-this.getScrollArea();var s=Math.max(0,Math.min(sw,newpos));if(s!=pos){this.scrollTo(s,false);}},onScrollRight:function(){var sw=this.getScrollWidth()-this.getScrollArea();var pos=this.getScrollPos();var s=Math.min(sw,pos+this.getScrollIncrement());if(s!=pos){this.scrollTo(s,this.animScroll);}},onScrollLeft:function(){var pos=this.getScrollPos();var s=Math.max(0,pos-this.getScrollIncrement());if(s!=pos){this.scrollTo(s,this.animScroll);}},updateScrollButtons:function(){var pos=this.getScrollPos();this.scrollLeft[pos==0?'addClass':'removeClass']('x-tab-scroller-left-disabled');this.scrollRight[pos>=(this.getScrollWidth()-this.getScrollArea())?'addClass':'removeClass']('x-tab-scroller-right-disabled');},beforeDestroy:function(){if(this.items){this.items.each(function(item){if(item&&item.tabEl){Ext.get(item.tabEl).removeAllListeners();item.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 items=[];return{add:function(item){items.push(item);if(items.length>10){items.shift();}},remove:function(item){var s=[];for(var i=0,len=items.length;i<len;i++){if(items[i]!=item){s.push(items[i]);}}
items=s;},next:function(){return items.pop();}};};Ext.Button=Ext.extend(Ext.Component,{hidden:false,disabled:false,pressed:false,enableToggle:false,menuAlign:"tl-bl?",type:'button',menuClassTarget:'tr',clickEvent:'click',handleMouseEvents:true,tooltipType:'qtip',buttonSelector:"button:first-child",initComponent:function(){Ext.Button.superclass.initComponent.call(this);this.addEvents("click","toggle",'mouseover','mouseout','menushow','menuhide','menutriggerover','menutriggerout');if(this.menu){this.menu=Ext.menu.MenuMgr.get(this.menu);}
if(typeof this.toggleGroup==='string'){this.enableToggle=true;}},onRender:function(ct,position){if(!this.template){if(!Ext.Button.buttonTemplate){Ext.Button.buttonTemplate=new Ext.Template('<table border="0" cellpadding="0" cellspacing="0" class="x-btn-wrap"><tbody><tr>','<td class="x-btn-left"><i>&#160;</i></td><td class="x-btn-center"><em unselectable="on"><button class="x-btn-text" type="{1}">{0}</button></em></td><td class="x-btn-right"><i>&#160;</i></td>',"</tr></tbody></table>");}
this.template=Ext.Button.buttonTemplate;}
var btn,targs=[this.text||'&#160;',this.type];if(position){btn=this.template.insertBefore(position,targs,true);}else{btn=this.template.append(ct,targs,true);}
var btnEl=btn.child(this.buttonSelector);btnEl.on('focus',this.onFocus,this);btnEl.on('blur',this.onBlur,this);this.initButtonEl(btn,btnEl);if(this.menu){this.el.child(this.menuClassTarget).addClass("x-btn-with-menu");}
Ext.ButtonToggleMgr.register(this);},initButtonEl:function(btn,btnEl){this.el=btn;btn.addClass("x-btn");if(this.id){this.el.dom.id=this.el.id=this.id;}
if(this.icon){btnEl.setStyle('background-image','url('+this.icon+')');}
if(this.iconCls){btnEl.addClass(this.iconCls);if(!this.cls){btn.addClass(this.text?'x-btn-text-icon':'x-btn-icon');}}
if(this.tabIndex!==undefined){btnEl.dom.tabIndex=this.tabIndex;}
if(this.tooltip){if(typeof this.tooltip=='object'){Ext.QuickTips.register(Ext.apply({target:btnEl.id},this.tooltip));}else{btnEl.dom[this.tooltipType]=this.tooltip;}}
if(this.pressed){this.el.addClass("x-btn-pressed");}
if(this.handleMouseEvents){btn.on("mouseover",this.onMouseOver,this);btn.on("mousedown",this.onMouseDown,this);}
if(this.menu){this.menu.on("show",this.onMenuShow,this);this.menu.on("hide",this.onMenuHide,this);}
if(this.repeat){var repeater=new Ext.util.ClickRepeater(btn,typeof this.repeat=="object"?this.repeat:{});repeater.on("click",this.onClick,this);}
btn.on(this.clickEvent,this.onClick,this);},afterRender:function(){Ext.Button.superclass.afterRender.call(this);if(Ext.isIE6){this.autoWidth.defer(1,this);}else{this.autoWidth();}},setIconClass:function(cls){if(this.el){this.el.child(this.buttonSelector).replaceClass(this.iconCls,cls);}
this.iconCls=cls;},beforeDestroy:function(){if(this.rendered){var btnEl=this.el.child(this.buttonSelector);if(btnEl){if(this.tooltip){Ext.QuickTips.unregister(btnEl);}
btnEl.removeAllListeners();}}
if(this.menu){Ext.destroy(this.menu);}},onDestroy:function(){if(this.rendered){Ext.ButtonToggleMgr.unregister(this);}},autoWidth:function(){if(this.el){this.el.setWidth("auto");if(Ext.isIE7&&Ext.isStrict){var ib=this.el.child(this.buttonSelector);if(ib&&ib.getWidth()>20){ib.clip();ib.setWidth(Ext.util.TextMetrics.measure(ib,this.text).width+ib.getFrameWidth('lr'));}}
if(this.minWidth){if(this.el.getWidth()<this.minWidth){this.el.setWidth(this.minWidth);}}}},setHandler:function(handler,scope){this.handler=handler;this.scope=scope;},setText:function(text){this.text=text;if(this.el){this.el.child("td.x-btn-center "+this.buttonSelector).update(text);}
this.autoWidth();},getText:function(){return this.text;},toggle:function(state){state=state===undefined?!this.pressed:state;if(state!=this.pressed){if(state){this.el.addClass("x-btn-pressed");this.pressed=true;this.fireEvent("toggle",this,true);}else{this.el.removeClass("x-btn-pressed");this.pressed=false;this.fireEvent("toggle",this,false);}
if(this.toggleHandler){this.toggleHandler.call(this.scope||this,this,state);}}},focus:function(){this.el.child(this.buttonSelector).focus();},onDisable:function(){if(this.el){if(!Ext.isIE6||!this.text){this.el.addClass(this.disabledClass);}
this.el.dom.disabled=true;}
this.disabled=true;},onEnable:function(){if(this.el){if(!Ext.isIE6||!this.text){this.el.removeClass(this.disabledClass);}
this.el.dom.disabled=false;}
this.disabled=false;},showMenu:function(){if(this.menu){this.menu.show(this.el,this.menuAlign);}
return this;},hideMenu:function(){if(this.menu){this.menu.hide();}
return this;},hasVisibleMenu:function(){return this.menu&&this.menu.isVisible();},onClick:function(e){if(e){e.preventDefault();}
if(e.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,e);if(this.handler){this.handler.call(this.scope||this,this,e);}}},isMenuTriggerOver:function(e,internal){return this.menu&&!internal;},isMenuTriggerOut:function(e,internal){return this.menu&&!internal;},onMouseOver:function(e){if(!this.disabled){var internal=e.within(this.el,true);if(!internal){this.el.addClass("x-btn-over");if(!this.monitoringMouseOver){Ext.getDoc().on('mouseover',this.monitorMouseOver,this);this.monitoringMouseOver=true;}
this.fireEvent('mouseover',this,e);}
if(this.isMenuTriggerOver(e,internal)){this.fireEvent('menutriggerover',this,this.menu,e);}}},monitorMouseOver:function(e){if(e.target!=this.el.dom&&!e.within(this.el)){if(this.monitoringMouseOver){Ext.getDoc().un('mouseover',this.monitorMouseOver,this);this.monitoringMouseOver=false;}
this.onMouseOut(e);}},onMouseOut:function(e){var internal=e.within(this.el)&&e.target!=this.el.dom;this.el.removeClass("x-btn-over");this.fireEvent('mouseout',this,e);if(this.isMenuTriggerOut(e,internal)){this.fireEvent('menutriggerout',this,this.menu,e);}},onFocus:function(e){if(!this.disabled){this.el.addClass("x-btn-focus");}},onBlur:function(e){this.el.removeClass("x-btn-focus");},getClickEl:function(e,isUp){return this.el;},onMouseDown:function(e){if(!this.disabled&&e.button==0){this.getClickEl(e).addClass("x-btn-click");Ext.getDoc().on('mouseup',this.onMouseUp,this);}},onMouseUp:function(e){if(e.button==0){this.getClickEl(e,true).removeClass("x-btn-click");Ext.getDoc().un('mouseup',this.onMouseUp,this);}},onMenuShow:function(e){this.ignoreNextClick=0;this.el.addClass("x-btn-menu-active");this.fireEvent('menushow',this,this.menu);},onMenuHide:function(e){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 groups={};function toggleGroup(btn,state){if(state){var g=groups[btn.toggleGroup];for(var i=0,l=g.length;i<l;i++){if(g[i]!=btn){g[i].toggle(false);}}}}
return{register:function(btn){if(!btn.toggleGroup){return;}
var g=groups[btn.toggleGroup];if(!g){g=groups[btn.toggleGroup]=[];}
g.push(btn);btn.on("toggle",toggleGroup);},unregister:function(btn){if(!btn.toggleGroup){return;}
var g=groups[btn.toggleGroup];if(g){g.remove(btn);btn.un("toggle",toggleGroup);}}};}();Ext.SplitButton=Ext.extend(Ext.Button,{arrowSelector:'button:last',initComponent:function(){Ext.SplitButton.superclass.initComponent.call(this);this.addEvents("arrowclick");},onRender:function(ct,position){var tpl=new Ext.Template('<table cellspacing="0" class="x-btn-menu-wrap x-btn"><tr><td>','<table cellspacing="0" class="x-btn-wrap x-btn-menu-text-wrap"><tbody>','<tr><td class="x-btn-left"><i>&#160;</i></td><td class="x-btn-center"><button class="x-btn-text" type="{1}">{0}</button></td></tr>',"</tbody></table></td><td>",'<table cellspacing="0" class="x-btn-wrap x-btn-menu-arrow-wrap"><tbody>','<tr><td class="x-btn-center"><button class="x-btn-menu-arrow-el" type="button">&#160;</button></td><td class="x-btn-right"><i>&#160;</i></td></tr>',"</tbody></table></td></tr></table>");var btn,targs=[this.text||'&#160;',this.type];if(position){btn=tpl.insertBefore(position,targs,true);}else{btn=tpl.append(ct,targs,true);}
var btnEl=btn.child(this.buttonSelector);this.initButtonEl(btn,btnEl);this.arrowBtnTable=btn.child("table:last");if(this.arrowTooltip){btn.child(this.arrowSelector).dom[this.tooltipType]=this.arrowTooltip;}},autoWidth:function(){if(this.el){var tbl=this.el.child("table:first");var tbl2=this.el.child("table:last");this.el.setWidth("auto");tbl.setWidth("auto");if(Ext.isIE7&&Ext.isStrict){var ib=this.el.child(this.buttonSelector);if(ib&&ib.getWidth()>20){ib.clip();ib.setWidth(Ext.util.TextMetrics.measure(ib,this.text).width+ib.getFrameWidth('lr'));}}
if(this.minWidth){if((tbl.getWidth()+tbl2.getWidth())<this.minWidth){tbl.setWidth(this.minWidth-tbl2.getWidth());}}
this.el.setWidth(tbl.getWidth()+tbl2.getWidth());}},setArrowHandler:function(handler,scope){this.arrowHandler=handler;this.scope=scope;},onClick:function(e){e.preventDefault();if(!this.disabled){if(e.getTarget(".x-btn-menu-arrow-wrap")){if(this.menu&&!this.menu.isVisible()&&!this.ignoreNextClick){this.showMenu();}
this.fireEvent("arrowclick",this,e);if(this.arrowHandler){this.arrowHandler.call(this.scope||this,this,e);}}else{if(this.enableToggle){this.toggle();}
this.fireEvent("click",this,e);if(this.handler){this.handler.call(this.scope||this,this,e);}}}},getClickEl:function(e,isUp){if(!isUp){return(this.lastClickEl=e.getTarget("table",10,true));}
return this.lastClickEl;},onDisable:function(){if(this.el){if(!Ext.isIE6){this.el.addClass("x-item-disabled");}
this.el.child(this.buttonSelector).dom.disabled=true;this.el.child(this.arrowSelector).dom.disabled=true;}
this.disabled=true;},onEnable:function(){if(this.el){if(!Ext.isIE6){this.el.removeClass("x-item-disabled");}
this.el.child(this.buttonSelector).dom.disabled=false;this.el.child(this.arrowSelector).dom.disabled=false;}
this.disabled=false;},isMenuTriggerOver:function(e){return this.menu&&e.within(this.arrowBtnTable)&&!e.within(this.arrowBtnTable,true);},isMenuTriggerOut:function(e,internal){return this.menu&&!e.within(this.arrowBtnTable);},onDestroy:function(){Ext.destroy(this.arrowBtnTable);Ext.SplitButton.superclass.onDestroy.call(this);}});Ext.MenuButton=Ext.SplitButton;Ext.reg('splitbutton',Ext.SplitButton);Ext.CycleButton=Ext.extend(Ext.SplitButton,{getItemText:function(item){if(item&&this.showText===true){var text='';if(this.prependText){text+=this.prependText;}
text+=item.text;return text;}
return undefined;},setActiveItem:function(item,suppressEvent){if(typeof item!='object'){item=this.menu.items.get(item);}
if(item){if(!this.rendered){this.text=this.getItemText(item);this.iconCls=item.iconCls;}else{var t=this.getItemText(item);if(t){this.setText(t);}
this.setIconClass(item.iconCls);}
this.activeItem=item;if(!item.checked){item.setChecked(true,true);}
if(this.forceIcon){this.setIconClass(this.forceIcon);}
if(!suppressEvent){this.fireEvent('change',this,item);}}},getActiveItem:function(){return this.activeItem;},initComponent:function(){this.addEvents("change");if(this.changeHandler){this.on('change',this.changeHandler,this.scope||this);delete this.changeHandler;}
this.itemCount=this.items.length;this.menu={cls:'x-cycle-menu',items:[]};var checked;for(var i=0,len=this.itemCount;i<len;i++){var item=this.items[i];item.group=item.group||this.id;item.itemIndex=i;item.checkHandler=this.checkHandler;item.scope=this;item.checked=item.checked||false;this.menu.items.push(item);if(item.checked){checked=item;}}
this.setActiveItem(checked,true);Ext.CycleButton.superclass.initComponent.call(this);this.on('click',this.toggleSelected,this);},checkHandler:function(item,pressed){if(pressed){this.setActiveItem(item);}},toggleSelected:function(){this.menu.render();var nextIdx,checkItem;for(var i=1;i<this.itemCount;i++){nextIdx=(this.activeItem.itemIndex+i)%this.itemCount;checkItem=this.menu.items.itemAt(nextIdx);if(!checkItem.disabled){checkItem.setChecked(true);break;}}}});Ext.reg('cycle',Ext.CycleButton);Ext.Toolbar=function(config){if(Ext.isArray(config)){config={buttons:config};}
Ext.Toolbar.superclass.constructor.call(this,config);};(function(){var T=Ext.Toolbar;Ext.extend(T,Ext.BoxComponent,{trackMenus:true,initComponent:function(){T.superclass.initComponent.call(this);if(this.items){this.buttons=this.items;}
this.items=new Ext.util.MixedCollection(false,function(o){return o.itemId||o.id||Ext.id();});},autoCreate:{cls:'x-toolbar x-small-editor',html:'<table cellspacing="0"><tr></tr></table>'},onRender:function(ct,position){this.el=ct.createChild(Ext.apply({id:this.id},this.autoCreate),position);this.tr=this.el.child("tr",true);},afterRender:function(){T.superclass.afterRender.call(this);if(this.buttons){this.add.apply(this,this.buttons);delete this.buttons;}},add:function(){var a=arguments,l=a.length;for(var i=0;i<l;i++){var el=a[i];if(el.isFormField){this.addField(el);}else if(el.render){this.addItem(el);}else if(typeof el=="string"){if(el=="separator"||el=="-"){this.addSeparator();}else if(el==" "){this.addSpacer();}else if(el=="->"){this.addFill();}else{this.addText(el);}}else if(el.tagName){this.addElement(el);}else if(typeof el=="object"){if(el.xtype){this.addField(Ext.ComponentMgr.create(el,'button'));}else{this.addButton(el);}}}},addSeparator:function(){return this.addItem(new T.Separator());},addSpacer:function(){return this.addItem(new T.Spacer());},addFill:function(){return this.addItem(new T.Fill());},addElement:function(el){return this.addItem(new T.Item(el));},addItem:function(item){var td=this.nextBlock();this.initMenuTracking(item);item.render(td);this.items.add(item);return item;},addButton:function(config){if(Ext.isArray(config)){var buttons=[];for(var i=0,len=config.length;i<len;i++){buttons.push(this.addButton(config[i]));}
return buttons;}
var b=config;if(!(config instanceof T.Button)){b=config.split?new T.SplitButton(config):new T.Button(config);}
var td=this.nextBlock();this.initMenuTracking(b);b.render(td);this.items.add(b);return b;},initMenuTracking:function(item){if(this.trackMenus&&item.menu){item.on({'menutriggerover':this.onButtonTriggerOver,'menushow':this.onButtonMenuShow,'menuhide':this.onButtonMenuHide,scope:this})}},addText:function(text){return this.addItem(new T.TextItem(text));},insertButton:function(index,item){if(Ext.isArray(item)){var buttons=[];for(var i=0,len=item.length;i<len;i++){buttons.push(this.insertButton(index+i,item[i]));}
return buttons;}
if(!(item instanceof T.Button)){item=new T.Button(item);}
var td=document.createElement("td");this.tr.insertBefore(td,this.tr.childNodes[index]);this.initMenuTracking(item);item.render(td);this.items.insert(index,item);return item;},addDom:function(config,returnEl){var td=this.nextBlock();Ext.DomHelper.overwrite(td,config);var ti=new T.Item(td.firstChild);ti.render(td);this.items.add(ti);return ti;},addField:function(field){var td=this.nextBlock();field.render(td);var ti=new T.Item(td.firstChild);ti.render(td);this.items.add(field);return ti;},nextBlock:function(){var td=document.createElement("td");this.tr.appendChild(td);return td;},onDestroy:function(){Ext.Toolbar.superclass.onDestroy.call(this);if(this.rendered){if(this.items){Ext.destroy.apply(Ext,this.items.items);}
Ext.Element.uncache(this.tr);}},onDisable:function(){this.items.each(function(item){if(item.disable){item.disable();}});},onEnable:function(){this.items.each(function(item){if(item.enable){item.enable();}});},onButtonTriggerOver:function(btn){if(this.activeMenuBtn&&this.activeMenuBtn!=btn){this.activeMenuBtn.hideMenu();btn.showMenu();this.activeMenuBtn=btn;}},onButtonMenuShow:function(btn){this.activeMenuBtn=btn;},onButtonMenuHide:function(btn){delete this.activeMenuBtn;}});Ext.reg('toolbar',Ext.Toolbar);T.Item=function(el){this.el=Ext.getDom(el);this.id=Ext.id(this.el);this.hidden=false;};T.Item.prototype={getEl:function(){return this.el;},render:function(td){this.td=td;td.appendChild(this.el);},destroy:function(){if(this.el){var el=Ext.get(this.el);Ext.destroy(el);}
Ext.removeNode(this.td);},show:function(){this.hidden=false;this.td.style.display="";},hide:function(){this.hidden=true;this.td.style.display="none";},setVisible:function(visible){if(visible){this.show();}else{this.hide();}},focus:function(){Ext.fly(this.el).focus();},disable:function(){Ext.fly(this.td).addClass("x-item-disabled");this.disabled=true;this.el.disabled=true;},enable:function(){Ext.fly(this.td).removeClass("x-item-disabled");this.disabled=false;this.el.disabled=false;}};Ext.reg('tbitem',T.Item);T.Separator=function(){var s=document.createElement("span");s.className="ytb-sep";T.Separator.superclass.constructor.call(this,s);};Ext.extend(T.Separator,T.Item,{enable:Ext.emptyFn,disable:Ext.emptyFn,focus:Ext.emptyFn});Ext.reg('tbseparator',T.Separator);T.Spacer=function(){var s=document.createElement("div");s.className="ytb-spacer";T.Spacer.superclass.constructor.call(this,s);};Ext.extend(T.Spacer,T.Item,{enable:Ext.emptyFn,disable:Ext.emptyFn,focus:Ext.emptyFn});Ext.reg('tbspacer',T.Spacer);T.Fill=Ext.extend(T.Spacer,{render:function(td){td.style.width='100%';T.Fill.superclass.render.call(this,td);}});Ext.reg('tbfill',T.Fill);T.TextItem=function(t){var s=document.createElement("span");s.className="ytb-text";s.innerHTML=t.text?t.text:t;T.TextItem.superclass.constructor.call(this,s);};Ext.extend(T.TextItem,T.Item,{enable:Ext.emptyFn,disable:Ext.emptyFn,focus:Ext.emptyFn});Ext.reg('tbtext',T.TextItem);T.Button=Ext.extend(Ext.Button,{hideParent:true,onDestroy:function(){T.Button.superclass.onDestroy.call(this);if(this.container){this.container.remove();}}});Ext.reg('tbbutton',T.Button);T.SplitButton=Ext.extend(Ext.SplitButton,{hideParent:true,onDestroy:function(){T.SplitButton.superclass.onDestroy.call(this);if(this.container){this.container.remove();}}});Ext.reg('tbsplit',T.SplitButton);T.MenuButton=T.SplitButton;})();Ext.PagingToolbar=Ext.extend(Ext.Toolbar,{pageSize:20,displayMsg:'Displaying {0} - {1} of {2}',emptyMsg:'No data to display',beforePageText:"Page",afterPageText:"of {0}",firstText:"First Page",prevText:"Previous Page",nextText:"Next Page",lastText:"Last Page",refreshText:"Refresh",paramNames:{start:'start',limit:'limit'},initComponent:function(){this.addEvents('change','beforechange');Ext.PagingToolbar.superclass.initComponent.call(this);this.cursor=0;this.bind(this.store);},onRender:function(ct,position){Ext.PagingToolbar.superclass.onRender.call(this,ct,position);this.first=this.addButton({tooltip:this.firstText,iconCls:"x-tbar-page-first",disabled:true,handler:this.onClick.createDelegate(this,["first"])});this.prev=this.addButton({tooltip:this.prevText,iconCls:"x-tbar-page-prev",disabled:true,handler:this.onClick.createDelegate(this,["prev"])});this.addSeparator();this.add(this.beforePageText);this.field=Ext.get(this.addDom({tag:"input",type:"text",size:"3",value:"1",cls:"x-tbar-page-number"}).el);this.field.on("keydown",this.onPagingKeydown,this);this.field.on("focus",function(){this.dom.select();});this.field.on("blur",this.onPagingBlur,this);this.afterTextEl=this.addText(String.format(this.afterPageText,1));this.field.setHeight(18);this.addSeparator();this.next=this.addButton({tooltip:this.nextText,iconCls:"x-tbar-page-next",disabled:true,handler:this.onClick.createDelegate(this,["next"])});this.last=this.addButton({tooltip:this.lastText,iconCls:"x-tbar-page-last",disabled:true,handler:this.onClick.createDelegate(this,["last"])});this.addSeparator();this.loading=this.addButton({tooltip:this.refreshText,iconCls:"x-tbar-loading",handler:this.onClick.createDelegate(this,["refresh"])});if(this.displayInfo){this.displayEl=Ext.fly(this.el.dom).createChild({cls:'x-paging-info'});}
if(this.dsLoaded){this.onLoad.apply(this,this.dsLoaded);}},updateInfo:function(){if(this.displayEl){var count=this.store.getCount();var msg=count==0?this.emptyMsg:String.format(this.displayMsg,this.cursor+1,this.cursor+count,this.store.getTotalCount());this.displayEl.update(msg);}},onLoad:function(store,r,o){if(!this.rendered){this.dsLoaded=[store,r,o];return;}
this.cursor=o.params?o.params[this.paramNames.start]:0;var d=this.getPageData(),ap=d.activePage,ps=d.pages;this.afterTextEl.el.innerHTML=String.format(this.afterPageText,d.pages);this.field.dom.value=ap;this.first.setDisabled(ap==1);this.prev.setDisabled(ap==1);this.next.setDisabled(ap==ps);this.last.setDisabled(ap==ps);this.loading.enable();this.updateInfo();this.fireEvent('change',this,d);},getPageData:function(){var total=this.store.getTotalCount();return{total:total,activePage:Math.ceil((this.cursor+this.pageSize)/this.pageSize),pages:total<this.pageSize?1:Math.ceil(total/this.pageSize)};},onLoadError:function(){if(!this.rendered){return;}
this.loading.enable();},readPage:function(d){var v=this.field.dom.value,pageNum;if(!v||isNaN(pageNum=parseInt(v,10))){this.field.dom.value=d.activePage;return false;}
return pageNum;},onPagingBlur:function(e){this.field.dom.value=this.getPageData().activePage;},onPagingKeydown:function(e){var k=e.getKey(),d=this.getPageData(),pageNum;if(k==e.RETURN){e.stopEvent();pageNum=this.readPage(d);if(pageNum!==false){pageNum=Math.min(Math.max(1,pageNum),d.pages)-1;this.doLoad(pageNum*this.pageSize);}}else if(k==e.HOME||k==e.END){e.stopEvent();pageNum=k==e.HOME?1:d.pages;this.field.dom.value=pageNum;}else if(k==e.UP||k==e.PAGEUP||k==e.DOWN||k==e.PAGEDOWN){e.stopEvent();if(pageNum=this.readPage(d)){var increment=e.shiftKey?10:1;if(k==e.DOWN||k==e.PAGEDOWN){increment*=-1;}
pageNum+=increment;if(pageNum>=1&pageNum<=d.pages){this.field.dom.value=pageNum;}}}},beforeLoad:function(){if(this.rendered&&this.loading){this.loading.disable();}},doLoad:function(start){var o={},pn=this.paramNames;o[pn.start]=start;o[pn.limit]=this.pageSize;if(this.fireEvent('beforechange',this,o)!==false){this.store.load({params:o});}},changePage:function(page){this.doLoad(((page-1)*this.pageSize).constrain(0,this.store.getTotalCount()));},onClick:function(which){var store=this.store;switch(which){case"first":this.doLoad(0);break;case"prev":this.doLoad(Math.max(0,this.cursor-this.pageSize));break;case"next":this.doLoad(this.cursor+this.pageSize);break;case"last":var total=store.getTotalCount();var extra=total%this.pageSize;var lastStart=extra?(total-extra):total-this.pageSize;this.doLoad(lastStart);break;case"refresh":this.doLoad(this.cursor);break;}},unbind:function(store){store=Ext.StoreMgr.lookup(store);store.un("beforeload",this.beforeLoad,this);store.un("load",this.onLoad,this);store.un("loadexception",this.onLoadError,this);this.store=undefined;},bind:function(store){store=Ext.StoreMgr.lookup(store);store.on("beforeload",this.beforeLoad,this);store.on("load",this.onLoad,this);store.on("loadexception",this.onLoadError,this);this.store=store;},onDestroy:function(){if(this.store){this.unbind(this.store);}
Ext.PagingToolbar.superclass.onDestroy.call(this);}});Ext.reg('paging',Ext.PagingToolbar);Ext.Resizable=function(el,config){this.el=Ext.get(el);if(config&&config.wrap){config.resizeChild=this.el;this.el=this.el.wrap(typeof config.wrap=="object"?config.wrap:{cls:"xresizable-wrap"});this.el.id=this.el.dom.id=config.resizeChild.id+"-rzwrap";this.el.setStyle("overflow","hidden");this.el.setPositioning(config.resizeChild.getPositioning());config.resizeChild.clearPositioning();if(!config.width||!config.height){var csize=config.resizeChild.getSize();this.el.setSize(csize.width,csize.height);}
if(config.pinned&&!config.adjustments){config.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,config);if(this.pinned){this.disableTrackOver=true;this.el.addClass("x-resizable-pinned");}
var position=this.el.getStyle("position");if(position!="absolute"&&position!="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 hs=this.handles.split(/\s*?[,;]\s*?| /);var ps=Ext.Resizable.positions;for(var i=0,len=hs.length;i<len;i++){if(hs[i]&&ps[hs[i]]){var pos=ps[hs[i]];this[pos]=new Ext.Resizable.Handle(this,pos,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 rc=this.resizeChild;var hw=this.west,he=this.east,hn=this.north,hs=this.south;if(rc&&(hw||hn)){rc.position("relative");rc.setLeft(hw?hw.el.getWidth():0);rc.setTop(hn?hn.el.getHeight():0);}
this.adjustments=[(he?-he.el.getWidth():0)+(hw?-hw.el.getWidth():0),(hn?-hn.el.getHeight():0)+(hs?-hs.el.getHeight():0)-1];}
if(this.draggable){this.dd=this.dynamic?this.el.initDD(null):this.el.initDDProxy(null,{dragElId:this.proxy.id});this.dd.setHandleElId(this.resizeChild?this.resizeChild.id:this.el.id);}
this.addEvents("beforeresize","resize");if(this.width!==null&&this.height!==null){this.resizeTo(this.width,this.height);}else{this.updateChildSize();}
if(Ext.isIE){this.el.dom.style.zoom=1;}
Ext.Resizable.superclass.constructor.call(this);};Ext.extend(Ext.Resizable,Ext.util.Observable,{resizeChild:false,adjustments:[0,0],minWidth:5,minHeight:5,maxWidth:10000,maxHeight:10000,enabled:true,animate:false,duration:.35,dynamic:false,handles:false,multiDirectional:false,disableTrackOver:false,easing:'easeOutStrong',widthIncrement:0,heightIncrement:0,pinned:false,width:null,height:null,preserveRatio:false,transparent:false,minX:0,minY:0,draggable:false,resizeTo:function(width,height){this.el.setSize(width,height);this.updateChildSize();this.fireEvent("resize",this,width,height,null);},startSizing:function(e,handle){this.fireEvent("beforeresize",this,e);if(this.enabled){if(!this.overlay){this.overlay=this.el.createProxy({tag:"div",cls:"x-resizable-overlay",html:"&#160;"},Ext.getBody());this.overlay.unselectable();this.overlay.enableDisplayMode("block");this.overlay.on("mousemove",this.onMouseMove,this);this.overlay.on("mouseup",this.onMouseUp,this);}
this.overlay.setStyle("cursor",handle.el.getStyle("cursor"));this.resizing=true;this.startBox=this.el.getBox();this.startPoint=e.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 ct=Ext.get(this.constrainTo);this.resizeRegion=ct.getRegion().adjust(ct.getFrameWidth('t'),ct.getFrameWidth('l'),-ct.getFrameWidth('b'),-ct.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(handle,e){if(this.enabled){e.stopEvent();this.activeHandle=handle;this.startSizing(e,handle);}},onMouseUp:function(e){var size=this.resizeElement();this.resizing=false;this.handleOut();this.overlay.hide();this.proxy.hide();this.fireEvent("resize",this,size.width,size.height,e);},updateChildSize:function(){if(this.resizeChild){var el=this.el;var child=this.resizeChild;var adj=this.adjustments;if(el.dom.offsetWidth){var b=el.getSize(true);child.setSize(b.width+adj[0],b.height+adj[1]);}
if(Ext.isIE){setTimeout(function(){if(el.dom.offsetWidth){var b=el.getSize(true);child.setSize(b.width+adj[0],b.height+adj[1]);}},10);}}},snap:function(value,inc,min){if(!inc||!value)return value;var newValue=value;var m=value%inc;if(m>0){if(m>(inc/2)){newValue=value+(inc-m);}else{newValue=value-m;}}
return Math.max(min,newValue);},resizeElement:function(){var box=this.proxy.getBox();if(this.updateBox){this.el.setBox(box,false,this.animate,this.duration,null,this.easing);}else{this.el.setSize(box.width,box.height,this.animate,this.duration,null,this.easing);}
this.updateChildSize();if(!this.dynamic){this.proxy.hide();}
return box;},constrain:function(v,diff,m,mx){if(v-diff<m){diff=v-m;}else if(v-diff>mx){diff=mx-v;}
return diff;},onMouseMove:function(e){if(this.enabled){try{if(this.resizeRegion&&!this.resizeRegion.contains(e.getPoint())){return;}
var curSize=this.curSize||this.startBox;var x=this.startBox.x,y=this.startBox.y;var ox=x,oy=y;var w=curSize.width,h=curSize.height;var ow=w,oh=h;var mw=this.minWidth,mh=this.minHeight;var mxw=this.maxWidth,mxh=this.maxHeight;var wi=this.widthIncrement;var hi=this.heightIncrement;var eventXY=e.getXY();var diffX=-(this.startPoint[0]-Math.max(this.minX,eventXY[0]));var diffY=-(this.startPoint[1]-Math.max(this.minY,eventXY[1]));var pos=this.activeHandle.position;switch(pos){case"east":w+=diffX;w=Math.min(Math.max(mw,w),mxw);break;case"south":h+=diffY;h=Math.min(Math.max(mh,h),mxh);break;case"southeast":w+=diffX;h+=diffY;w=Math.min(Math.max(mw,w),mxw);h=Math.min(Math.max(mh,h),mxh);break;case"north":diffY=this.constrain(h,diffY,mh,mxh);y+=diffY;h-=diffY;break;case"west":diffX=this.constrain(w,diffX,mw,mxw);x+=diffX;w-=diffX;break;case"northeast":w+=diffX;w=Math.min(Math.max(mw,w),mxw);diffY=this.constrain(h,diffY,mh,mxh);y+=diffY;h-=diffY;break;case"northwest":diffX=this.constrain(w,diffX,mw,mxw);diffY=this.constrain(h,diffY,mh,mxh);y+=diffY;h-=diffY;x+=diffX;w-=diffX;break;case"southwest":diffX=this.constrain(w,diffX,mw,mxw);h+=diffY;h=Math.min(Math.max(mh,h),mxh);x+=diffX;w-=diffX;break;}
var sw=this.snap(w,wi,mw);var sh=this.snap(h,hi,mh);if(sw!=w||sh!=h){switch(pos){case"northeast":y-=sh-h;break;case"north":y-=sh-h;break;case"southwest":x-=sw-w;break;case"west":x-=sw-w;break;case"northwest":x-=sw-w;y-=sh-h;break;}
w=sw;h=sh;}
if(this.preserveRatio){switch(pos){case"southeast":case"east":h=oh*(w/ow);h=Math.min(Math.max(mh,h),mxh);w=ow*(h/oh);break;case"south":w=ow*(h/oh);w=Math.min(Math.max(mw,w),mxw);h=oh*(w/ow);break;case"northeast":w=ow*(h/oh);w=Math.min(Math.max(mw,w),mxw);h=oh*(w/ow);break;case"north":var tw=w;w=ow*(h/oh);w=Math.min(Math.max(mw,w),mxw);h=oh*(w/ow);x+=(tw-w)/2;break;case"southwest":h=oh*(w/ow);h=Math.min(Math.max(mh,h),mxh);var tw=w;w=ow*(h/oh);x+=tw-w;break;case"west":var th=h;h=oh*(w/ow);h=Math.min(Math.max(mh,h),mxh);y+=(th-h)/2;var tw=w;w=ow*(h/oh);x+=tw-w;break;case"northwest":var tw=w;var th=h;h=oh*(w/ow);h=Math.min(Math.max(mh,h),mxh);w=ow*(h/oh);y+=th-h;x+=tw-w;break;}}
this.proxy.setBounds(x,y,w,h);if(this.dynamic){this.resizeElement();}}catch(e){}}},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(removeEl){if(this.dd){this.dd.destroy();}
if(this.overlay){Ext.destroy(this.overlay);this.overlay=null;}
Ext.destroy(this.proxy);this.proxy=null;var ps=Ext.Resizable.positions;for(var k in ps){if(typeof ps[k]!="function"&&this[ps[k]]){this[ps[k]].destroy();}}
if(removeEl){this.el.update("");Ext.destroy(this.el);this.el=null;}},syncHandleHeight:function(){var h=this.el.getHeight(true);if(this.west){this.west.el.setHeight(h);}
if(this.east){this.east.el.setHeight(h);}}});Ext.Resizable.positions={n:"north",s:"south",e:"east",w:"west",se:"southeast",sw:"southwest",nw:"northwest",ne:"northeast"};Ext.Resizable.Handle=function(rz,pos,disableTrackOver,transparent){if(!this.tpl){var tpl=Ext.DomHelper.createTemplate({tag:"div",cls:"x-resizable-handle x-resizable-handle-{0}"});tpl.compile();Ext.Resizable.Handle.prototype.tpl=tpl;}
this.position=pos;this.rz=rz;this.el=this.tpl.append(rz.el.dom,[this.position],true);this.el.unselectable();if(transparent){this.el.setOpacity(0);}
this.el.on("mousedown",this.onMouseDown,this);if(!disableTrackOver){this.el.on("mouseover",this.onMouseOver,this);this.el.on("mouseout",this.onMouseOut,this);}};Ext.Resizable.Handle.prototype={afterResize:function(rz){},onMouseDown:function(e){this.rz.onMouseDown(this,e);},onMouseOver:function(e){this.rz.handleOver(this,e);},onMouseOut:function(e){this.rz.handleOut(this,e);},destroy:function(){Ext.destroy(this.el);this.el=null;}};Ext.Editor=function(field,config){this.field=field;Ext.Editor.superclass.constructor.call(this,config);};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(ct,position){this.el=new Ext.Layer({shadow:this.shadow,cls:"x-editor",parentEl:ct,shim:this.shim,shadowOffset:4,id:this.id,constrain:this.constrain});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.field.on("specialkey",this.onSpecialKey,this);if(this.swallowKeys){this.field.el.swallowEvent(['keydown','keypress']);}
this.field.show();this.field.on("blur",this.onBlur,this);if(this.field.grow){this.field.on("autosize",this.el.sync,this.el,{delay:1});}},onSpecialKey:function(field,e){var key=e.getKey();if(this.completeOnEnter&&key==e.ENTER){e.stopEvent();this.completeEdit();}else if(this.cancelOnEsc&&key==e.ESC){this.cancelEdit();}else{this.fireEvent('specialkey',field,e);}
if(this.field.triggerBlur&&(key==e.ENTER||key==e.ESC||key==e.TAB)){this.field.triggerBlur();}},startEdit:function(el,value){if(this.editing){this.completeEdit();}
this.boundEl=Ext.get(el);var v=value!==undefined?value:this.boundEl.dom.innerHTML;if(!this.rendered){this.render(this.parentEl||document.body);}
if(this.fireEvent("beforestartedit",this,this.boundEl,v)===false){return;}
this.startValue=v;this.field.setValue(v);this.doAutoSize();this.el.alignTo(this.boundEl,this.alignment);this.editing=true;this.show();},doAutoSize:function(){if(this.autoSize){var sz=this.boundEl.getSize();switch(this.autoSize){case"width":this.setSize(sz.width,"");break;case"height":this.setSize("",sz.height);break;default:this.setSize(sz.width,sz.height);}}},setSize:function(w,h){delete this.field.lastSize;this.field.setSize(w,h);if(this.el){if(Ext.isGecko2||Ext.isOpera){this.el.setSize(w,h);}
this.el.sync();}},realign:function(){this.el.alignTo(this.boundEl,this.alignment);},completeEdit:function(remainVisible){if(!this.editing){return;}
var v=this.getValue();if(this.revertInvalid!==false&&!this.field.isValid()){v=this.startValue;this.cancelEdit(true);}
if(String(v)===String(this.startValue)&&this.ignoreNoChange){this.editing=false;this.hide();return;}
if(this.fireEvent("beforecomplete",this,v,this.startValue)!==false){this.editing=false;if(this.updateEl&&this.boundEl){this.boundEl.update(v);}
if(remainVisible!==true){this.hide();}
this.fireEvent("complete",this,v,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(remainVisible){if(this.editing){var v=this.getValue();this.setValue(this.startValue);if(remainVisible!==true){this.hide();}
this.fireEvent("canceledit",this,v,this.startValue);}},onBlur:function(){if(this.allowBlur!==true&&this.editing){this.completeEdit();}},onHide:function(){if(this.editing){this.completeEdit();return;}
this.field.blur();if(this.field.collapse){this.field.collapse();}
this.el.hide();if(this.hideEl!==false){this.boundEl.show();}},setValue:function(v){this.field.setValue(v);},getValue:function(){return this.field.getValue();},beforeDestroy:function(){Ext.destroy(this.field);this.field=null;}});Ext.reg('editor',Ext.Editor);Ext.MessageBox=function(){var dlg,opt,mask,waitTimer;var bodyEl,msgEl,textboxEl,textareaEl,progressBar,pp,iconEl,spacerEl;var buttons,activeTextEl,bwidth,iconCls='';var handleButton=function(button){if(dlg.isVisible()){dlg.hide();Ext.callback(opt.fn,opt.scope||window,[button,activeTextEl.dom.value,opt],1);}};var handleHide=function(){if(opt&&opt.cls){dlg.el.removeClass(opt.cls);}
progressBar.reset();};var handleEsc=function(d,k,e){if(opt&&opt.closable!==false){dlg.hide();}
if(e){e.stopEvent();}};var updateButtons=function(b){var width=0;if(!b){buttons["ok"].hide();buttons["cancel"].hide();buttons["yes"].hide();buttons["no"].hide();return width;}
dlg.footer.dom.style.display='';for(var k in buttons){if(typeof buttons[k]!="function"){if(b[k]){buttons[k].show();buttons[k].setText(typeof b[k]=="string"?b[k]:Ext.MessageBox.buttonText[k]);width+=buttons[k].el.getWidth()+15;}else{buttons[k].hide();}}}
return width;};return{getDialog:function(titleText){if(!dlg){dlg=new Ext.Window({autoCreate:true,title:titleText,resizable:false,constrain:true,constrainHeader:true,minimizable:false,maximizable:false,stateful:false,modal:true,shim:true,buttonAlign:"center",width:400,height:100,minHeight:80,plain:true,footer:true,closable:true,close:function(){if(opt&&opt.buttons&&opt.buttons.no&&!opt.buttons.cancel){handleButton("no");}else{handleButton("cancel");}}});buttons={};var bt=this.buttonText;buttons["ok"]=dlg.addButton(bt["ok"],handleButton.createCallback("ok"));buttons["yes"]=dlg.addButton(bt["yes"],handleButton.createCallback("yes"));buttons["no"]=dlg.addButton(bt["no"],handleButton.createCallback("no"));buttons["cancel"]=dlg.addButton(bt["cancel"],handleButton.createCallback("cancel"));buttons["ok"].hideMode=buttons["yes"].hideMode=buttons["no"].hideMode=buttons["cancel"].hideMode='offsets';dlg.render(document.body);dlg.getEl().addClass('x-window-dlg');mask=dlg.mask;bodyEl=dlg.body.createChild({html:'<div class="ext-mb-icon"></div><div class="ext-mb-content"><span class="ext-mb-text"></span><br /><div class="ext-mb-fix-cursor"><input type="text" class="ext-mb-input" /><textarea class="ext-mb-textarea"></textarea></div></div>'});iconEl=Ext.get(bodyEl.dom.firstChild);var contentEl=bodyEl.dom.childNodes[1];msgEl=Ext.get(contentEl.firstChild);textboxEl=Ext.get(contentEl.childNodes[2].firstChild);textboxEl.enableDisplayMode();textboxEl.addKeyListener([10,13],function(){if(dlg.isVisible()&&opt&&opt.buttons){if(opt.buttons.ok){handleButton("ok");}else if(opt.buttons.yes){handleButton("yes");}}});textareaEl=Ext.get(contentEl.childNodes[2].childNodes[1]);textareaEl.enableDisplayMode();progressBar=new Ext.ProgressBar({renderTo:bodyEl});bodyEl.createChild({cls:'x-clear'});}
return dlg;},updateText:function(text){if(!dlg.isVisible()&&!opt.width){dlg.setSize(this.maxWidth,100);}
msgEl.update(text||'&#160;');var iw=iconCls!=''?(iconEl.getWidth()+iconEl.getMargins('lr')):0;var mw=msgEl.getWidth()+msgEl.getMargins('lr');var fw=dlg.getFrameWidth('lr');var bw=dlg.body.getFrameWidth('lr');if(Ext.isIE&&iw>0){iw+=3;}
var w=Math.max(Math.min(opt.width||iw+mw+fw+bw,this.maxWidth),Math.max(opt.minWidth||this.minWidth,bwidth||0));if(opt.prompt===true){activeTextEl.setWidth(w-iw-fw-bw);}
if(opt.progress===true||opt.wait===true){progressBar.setSize(w-iw-fw-bw);}
if(Ext.isIE&&w==bwidth){w+=4;}
dlg.setSize(w,'auto').center();return this;},updateProgress:function(value,progressText,msg){progressBar.updateProgress(value,progressText);if(msg){this.updateText(msg);}
return this;},isVisible:function(){return dlg&&dlg.isVisible();},hide:function(){var proxy=dlg.activeGhost;if(this.isVisible()||proxy){dlg.hide();handleHide();if(proxy){proxy.hide();}}
return this;},show:function(options){if(this.isVisible()){this.hide();}
opt=options;var d=this.getDialog(opt.title||"&#160;");d.setTitle(opt.title||"&#160;");var allowClose=(opt.closable!==false&&opt.progress!==true&&opt.wait!==true);d.tools.close.setDisplayed(allowClose);activeTextEl=textboxEl;opt.prompt=opt.prompt||(opt.multiline?true:false);if(opt.prompt){if(opt.multiline){textboxEl.hide();textareaEl.show();textareaEl.setHeight(typeof opt.multiline=="number"?opt.multiline:this.defaultTextHeight);activeTextEl=textareaEl;}else{textboxEl.show();textareaEl.hide();}}else{textboxEl.hide();textareaEl.hide();}
activeTextEl.dom.value=opt.value||"";if(opt.prompt){d.focusEl=activeTextEl;}else{var bs=opt.buttons;var db=null;if(bs&&bs.ok){db=buttons["ok"];}else if(bs&&bs.yes){db=buttons["yes"];}
if(db){d.focusEl=db;}}
if(opt.iconCls){d.setIconClass(opt.iconCls);}
this.setIcon(opt.icon);bwidth=updateButtons(opt.buttons);progressBar.setVisible(opt.progress===true||opt.wait===true);this.updateProgress(0,opt.progressText);this.updateText(opt.msg);if(opt.cls){d.el.addClass(opt.cls);}
d.proxyDrag=opt.proxyDrag===true;d.modal=opt.modal!==false;d.mask=opt.modal!==false?mask:false;if(!d.isVisible()){document.body.appendChild(dlg.el.dom);d.setAnimateTarget(opt.animEl);d.show(opt.animEl);}
d.on('show',function(){if(allowClose===true){d.keyMap.enable();}else{d.keyMap.disable();}},this,{single:true});if(opt.wait===true){progressBar.wait(opt.waitConfig);}
return this;},setIcon:function(icon){if(icon&&icon!=''){iconEl.removeClass('x-hidden');iconEl.replaceClass(iconCls,icon);iconCls=icon;}else{iconEl.replaceClass(iconCls,'x-hidden');iconCls='';}
return this;},progress:function(title,msg,progressText){this.show({title:title,msg:msg,buttons:false,progress:true,closable:false,minWidth:this.minProgressWidth,progressText:progressText});return this;},wait:function(msg,title,config){this.show({title:title,msg:msg,buttons:false,closable:false,wait:true,modal:true,minWidth:this.minProgressWidth,waitConfig:config});return this;},alert:function(title,msg,fn,scope){this.show({title:title,msg:msg,buttons:this.OK,fn:fn,scope:scope});return this;},confirm:function(title,msg,fn,scope){this.show({title:title,msg:msg,buttons:this.YESNO,fn:fn,scope:scope,icon:this.QUESTION});return this;},prompt:function(title,msg,fn,scope,multiline,value){this.show({title:title,msg:msg,buttons:this.OKCANCEL,fn:fn,minWidth:250,scope:scope,prompt:true,multiline:multiline,value:value});return this;},OK:{ok:true},CANCEL:{cancel:true},OKCANCEL:{ok:true,cancel:true},YESNO:{yes:true,no:true},YESNOCANCEL:{yes:true,no:true,cancel:true},INFO:'ext-mb-info',WARNING:'ext-mb-warning',QUESTION:'ext-mb-question',ERROR:'ext-mb-error',defaultTextHeight:75,maxWidth:600,minWidth:100,minProgressWidth:250,buttonText:{ok:"OK",cancel:"Cancel",yes:"Yes",no:"No"}};}();Ext.Msg=Ext.MessageBox;Ext.Tip=Ext.extend(Ext.Panel,{minWidth:40,maxWidth:300,shadow:"sides",defaultAlign:"tl-bl?",autoRender:true,quickShowInterval:250,frame:true,hidden:true,baseCls:'x-tip',floating:{shadow:true,shim:true,useDisplay:true,constrain:false},autoHeight:true,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.hide,scope:this});}},showAt:function(xy){Ext.Tip.superclass.show.call(this);if(this.measureWidth!==false&&(!this.initialConfig||typeof this.initialConfig.width!='number')){this.doAutoWidth();}
if(this.constrainPosition){xy=this.el.adjustForConstraints(xy);}
this.setPagePosition(xy[0],xy[1]);},doAutoWidth:function(){var bw=this.body.getTextWidth();if(this.title){bw=Math.max(bw,this.header.child('span').getTextWidth(this.title));}
bw+=this.getFrameWidth()+(this.closable?20:0)+this.body.getPadding("lr");this.setWidth(bw.constrain(this.minWidth,this.maxWidth));if(Ext.isIE7&&!this.repainted){this.el.repaint();this.repainted=true;}},showBy:function(el,pos){if(!this.rendered){this.render(Ext.getBody());}
this.showAt(this.el.getAlignToXY(el,pos||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(tip,config){Ext.apply(this,config);this.tip=tip;Ext.Tip.DD.superclass.constructor.call(this,tip.el.id,'WindowDD-'+tip.id);this.setHandleElId(tip.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(e){this.tip.el.enableShadow(true);}});Ext.ToolTip=Ext.extend(Ext.Tip,{showDelay:500,hideDelay:200,dismissDelay:5000,mouseOffset:[15,18],trackMouse:false,constrainPosition:true,initComponent:function(){Ext.ToolTip.superclass.initComponent.call(this);this.lastActive=new Date();this.initTarget();},initTarget:function(){if(this.target){this.target=Ext.get(this.target);this.target.on('mouseover',this.onTargetOver,this);this.target.on('mouseout',this.onTargetOut,this);this.target.on('mousemove',this.onMouseMove,this);}},onMouseMove:function(e){this.targetXY=e.getXY();if(!this.hidden&&this.trackMouse){this.setPagePosition(this.getTargetXY());}},getTargetXY:function(){return[this.targetXY[0]+this.mouseOffset[0],this.targetXY[1]+this.mouseOffset[1]];},onTargetOver:function(e){if(this.disabled||e.within(this.target.dom,true)){return;}
this.clearTimer('hide');this.targetXY=e.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(e){if(this.disabled||e.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();Ext.ToolTip.superclass.hide.call(this);},show:function(){this.showAt(this.getTargetXY());},showAt:function(xy){this.lastActive=new Date();this.clearTimers();Ext.ToolTip.superclass.showAt.call(this,xy);if(this.dismissDelay&&this.autoHide!==false){this.dismissTimer=this.hide.defer(this.dismissDelay,this);}},clearTimer:function(name){name=name+'Timer';clearTimeout(this[name]);delete this[name];},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(e){if(this.autoHide!==false&&!e.within(this.el.dom)){this.disable();this.enable.defer(100,this);}},onDisable:function(){this.clearTimers();this.hide();},adjustPosition:function(x,y){var ay=this.targetXY[1],h=this.getSize().height;if(this.constrainPosition&&y<=ay&&(y+h)>=ay){y=ay-h-5;}
return{x:x,y:y};},onDestroy:function(){Ext.ToolTip.superclass.onDestroy.call(this);if(this.target){this.target.un('mouseover',this.onTargetOver,this);this.target.un('mouseout',this.onTargetOut,this);this.target.un('mousemove',this.onMouseMove,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"},initComponent:function(){this.target=this.target||Ext.getDoc();this.targets=this.targets||{};Ext.QuickTip.superclass.initComponent.call(this);},register:function(config){var cs=Ext.isArray(config)?config:arguments;for(var i=0,len=cs.length;i<len;i++){var c=cs[i];var target=c.target;if(target){if(Ext.isArray(target)){for(var j=0,jlen=target.length;j<jlen;j++){this.targets[Ext.id(target[j])]=c;}}else{this.targets[Ext.id(target)]=c;}}}},unregister:function(el){delete this.targets[Ext.id(el)];},onTargetOver:function(e){if(this.disabled){return;}
this.targetXY=e.getXY();var t=e.getTarget();if(!t||t.nodeType!==1||t==document||t==document.body){return;}
if(this.activeTarget&&t==this.activeTarget.el){this.clearTimer('hide');this.show();return;}
if(t&&this.targets[t.id]){this.activeTarget=this.targets[t.id];this.activeTarget.el=t;this.delayShow();return;}
var ttp,et=Ext.fly(t),cfg=this.tagConfig;var ns=cfg.namespace;if(this.interceptTitles&&t.title){ttp=t.title;t.qtip=ttp;t.removeAttribute("title");e.preventDefault();}else{ttp=t.qtip||et.getAttributeNS(ns,cfg.attribute);}
if(ttp){var autoHide=et.getAttributeNS(ns,cfg.hide);this.activeTarget={el:t,text:ttp,width:et.getAttributeNS(ns,cfg.width),autoHide:autoHide!="user"&&autoHide!=='false',title:et.getAttributeNS(ns,cfg.title),cls:et.getAttributeNS(ns,cfg.cls),align:et.getAttributeNS(ns,cfg.align)};this.delayShow();}},onTargetOut:function(e){this.clearTimer('show');if(this.autoHide!==false){this.delayHide();}},showAt:function(xy){var t=this.activeTarget;if(t){if(!this.rendered){this.render(Ext.getBody());this.activeTarget=t;}
if(t.width){this.setWidth(t.width);this.body.setWidth(this.adjustBodyWidth(t.width-this.getFrameWidth()));this.measureWidth=false;}else{this.measureWidth=true;}
this.setTitle(t.title||'');this.body.update(t.text);this.autoHide=t.autoHide;this.dismissDelay=t.dismissDelay||this.dismissDelay;if(this.lastCls){this.el.removeClass(this.lastCls);delete this.lastCls;}
if(t.cls){this.el.addClass(t.cls);this.lastCls=t.cls;}
if(t.align){xy=this.el.getAlignToXY(t.el,t.align);this.constrainPosition=false;}else{this.constrainPosition=true;}}
Ext.QuickTip.superclass.showAt.call(this,xy);},hide:function(){delete this.activeTarget;Ext.QuickTip.superclass.hide.call(this);}});Ext.QuickTips=function(){var tip,locks=[];return{init:function(autoRender){if(!tip){if(!Ext.isReady){Ext.onReady(function(){Ext.QuickTips.init(autoRender);});return;}
tip=new Ext.QuickTip({elements:'header,body'});if(autoRender!==false){tip.render(Ext.getBody());}}},enable:function(){if(tip){locks.pop();if(locks.length<1){tip.enable();}}},disable:function(){if(tip){tip.disable();}
locks.push(1);},isEnabled:function(){return tip!==undefined&&!tip.disabled;},getQuickTip:function(){return tip;},register:function(){tip.register.apply(tip,arguments);},unregister:function(){tip.unregister.apply(tip,arguments);},tips:function(){tip.register.apply(tip,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 l=this.loader;if(!l){l=new Ext.tree.TreeLoader({dataUrl:this.dataUrl});}else if(typeof l=='object'&&!l.load){l=new Ext.tree.TreeLoader(l);}
this.loader=l;this.nodeHash={};if(this.root){this.setRootNode(this.root);}
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(ename,a1,a2,a3,a4,a5,a6){if(ename=='collapse'||ename=='expand'||ename=='beforecollapse'||ename=='beforeexpand'||ename=='move'||ename=='beforemove'){ename=ename+'node';}
return this.fireEvent(ename,a1,a2,a3,a4,a5,a6);},getRootNode:function(){return this.root;},setRootNode:function(node){if(!node.render){node=this.loader.createNode(node);}
this.root=node;node.ownerTree=this;node.isRoot=true;this.registerNode(node);if(!this.rootVisible){var uiP=node.attributes.uiProvider;node.ui=uiP?new uiP(node):new Ext.tree.RootTreeNodeUI(node);}
return node;},getNodeById:function(id){return this.nodeHash[id];},registerNode:function(node){this.nodeHash[node.id]=node;},unregisterNode:function(node){delete this.nodeHash[node.id];},toString:function(){return"[Tree"+(this.id?" "+this.id:"")+"]";},restrictExpand:function(node){var p=node.parentNode;if(p){if(p.expandedChild&&p.expandedChild.parentNode==p){p.expandedChild.collapse();}
p.expandedChild=node;}},getChecked:function(a,startNode){startNode=startNode||this.root;var r=[];var f=function(){if(this.attributes.checked){r.push(!a?this:(a=='id'?this.id:this.attributes[a]));}}
startNode.cascade(f);return r;},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(path,attr,callback){attr=attr||"id";var keys=path.split(this.pathSeparator);var curNode=this.root;if(curNode.attributes[attr]!=keys[1]){if(callback){callback(false,null);}
return;}
var index=1;var f=function(){if(++index==keys.length){if(callback){callback(true,curNode);}
return;}
var c=curNode.findChild(attr,keys[index]);if(!c){if(callback){callback(false,curNode);}
return;}
curNode=c;c.expand(false,false,f);};curNode.expand(false,false,f);},selectPath:function(path,attr,callback){attr=attr||"id";var keys=path.split(this.pathSeparator);var v=keys.pop();if(keys.length>0){var f=function(success,node){if(success&&node){var n=node.findChild(attr,v);if(n){n.select();if(callback){callback(true,n);}}else if(callback){callback(false,n);}}else{if(callback){callback(false,n);}}};this.expandPath(keys.join(this.pathSeparator),attr,f);}else{this.root.select();if(callback){callback(true,this.root);}}},getTreeEl:function(){return this.body;},onRender:function(ct,position){Ext.tree.TreePanel.superclass.onRender.call(this,ct,position);this.el.addClass('x-tree');this.innerCt=this.body.createChild({tag:"ul",cls:"x-tree-root-ct "+
(this.useArrows?'x-tree-arrows':this.lines?"x-tree-lines":"x-tree-no-lines")});},initEvents:function(){Ext.tree.TreePanel.superclass.initEvents.call(this);if(this.containerScroll){Ext.dd.ScrollManager.register(this.body);}
if((this.enableDD||this.enableDrop)&&!this.dropZone){this.dropZone=new Ext.tree.TreeDropZone(this,this.dropConfig||{ddGroup:this.ddGroup||"TreeDD",appendOnly:this.ddAppendOnly===true});}
if((this.enableDD||this.enableDrag)&&!this.dragZone){this.dragZone=new Ext.tree.TreeDragZone(this,this.dragConfig||{ddGroup:this.ddGroup||"TreeDD",scroll:this.ddScroll});}
this.getSelectionModel().init(this);},afterRender:function(){Ext.tree.TreePanel.superclass.afterRender.call(this);this.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(tree){this.tree=tree;this.tree.on('render',this.initEvents,this);}
Ext.tree.TreeEventModel.prototype={initEvents:function(){var el=this.tree.getTreeEl();el.on('click',this.delegateClick,this);if(this.tree.trackMouseOver!==false){el.on('mouseover',this.delegateOver,this);el.on('mouseout',this.delegateOut,this);}
el.on('dblclick',this.delegateDblClick,this);el.on('contextmenu',this.delegateContextMenu,this);},getNode:function(e){var t;if(t=e.getTarget('.x-tree-node-el',10)){var id=Ext.fly(t,'_treeEvents').getAttributeNS('ext','tree-node-id');if(id){return this.tree.getNodeById(id);}}
return null;},getNodeTarget:function(e){var t=e.getTarget('.x-tree-node-icon',1);if(!t){t=e.getTarget('.x-tree-node-el',6);}
return t;},delegateOut:function(e,t){if(!this.beforeEvent(e)){return;}
if(e.getTarget('.x-tree-ec-icon',1)){var n=this.getNode(e);this.onIconOut(e,n);if(n==this.lastEcOver){delete this.lastEcOver;}}
if((t=this.getNodeTarget(e))&&!e.within(t,true)){this.onNodeOut(e,this.getNode(e));}},delegateOver:function(e,t){if(!this.beforeEvent(e)){return;}
if(this.lastEcOver){this.onIconOut(e,this.lastEcOver);delete this.lastEcOver;}
if(e.getTarget('.x-tree-ec-icon',1)){this.lastEcOver=this.getNode(e);this.onIconOver(e,this.lastEcOver);}
if(t=this.getNodeTarget(e)){this.onNodeOver(e,this.getNode(e));}},delegateClick:function(e,t){if(!this.beforeEvent(e)){return;}
if(e.getTarget('input[type=checkbox]',1)){this.onCheckboxClick(e,this.getNode(e));}
else if(e.getTarget('.x-tree-ec-icon',1)){this.onIconClick(e,this.getNode(e));}
else if(this.getNodeTarget(e)){this.onNodeClick(e,this.getNode(e));}},delegateDblClick:function(e,t){if(this.beforeEvent(e)&&this.getNodeTarget(e)){this.onNodeDblClick(e,this.getNode(e));}},delegateContextMenu:function(e,t){if(this.beforeEvent(e)&&this.getNodeTarget(e)){this.onNodeContextMenu(e,this.getNode(e));}},onNodeClick:function(e,node){node.ui.onClick(e);},onNodeOver:function(e,node){node.ui.onOver(e);},onNodeOut:function(e,node){node.ui.onOut(e);},onIconOver:function(e,node){node.ui.addClass('x-tree-ec-over');},onIconOut:function(e,node){node.ui.removeClass('x-tree-ec-over');},onIconClick:function(e,node){node.ui.ecClick(e);},onCheckboxClick:function(e,node){node.ui.onCheckChange(e);},onNodeDblClick:function(e,node){node.ui.onDblClick(e);},onNodeContextMenu:function(e,node){node.ui.onContextMenu(e);},beforeEvent:function(e){if(this.disabled){e.stopEvent();return false;}
return true;},disable:function(){this.disabled=true;},enable:function(){this.disabled=false;}};Ext.tree.DefaultSelectionModel=function(config){this.selNode=null;this.addEvents("selectionchange","beforeselect");Ext.apply(this,config);Ext.tree.DefaultSelectionModel.superclass.constructor.call(this);};Ext.extend(Ext.tree.DefaultSelectionModel,Ext.util.Observable,{init:function(tree){this.tree=tree;tree.getTreeEl().on("keydown",this.onKeyDown,this);tree.on("click",this.onNodeClick,this);},onNodeClick:function(node,e){this.select(node);},select:function(node){var last=this.selNode;if(last!=node&&this.fireEvent('beforeselect',this,node,last)!==false){if(last){last.ui.onSelectedChange(false);}
this.selNode=node;node.ui.onSelectedChange(true);this.fireEvent("selectionchange",this,node,last);}
return node;},unselect:function(node){if(this.selNode==node){this.clearSelections();}},clearSelections:function(){var n=this.selNode;if(n){n.ui.onSelectedChange(false);this.selNode=null;this.fireEvent("selectionchange",this,null);}
return n;},getSelectedNode:function(){return this.selNode;},isSelected:function(node){return this.selNode==node;},selectPrevious:function(){var s=this.selNode||this.lastSelNode;if(!s){return null;}
var ps=s.previousSibling;if(ps){if(!ps.isExpanded()||ps.childNodes.length<1){return this.select(ps);}else{var lc=ps.lastChild;while(lc&&lc.isExpanded()&&lc.childNodes.length>0){lc=lc.lastChild;}
return this.select(lc);}}else if(s.parentNode&&(this.tree.rootVisible||!s.parentNode.isRoot)){return this.select(s.parentNode);}
return null;},selectNext:function(){var s=this.selNode||this.lastSelNode;if(!s){return null;}
if(s.firstChild&&s.isExpanded()){return this.select(s.firstChild);}else if(s.nextSibling){return this.select(s.nextSibling);}else if(s.parentNode){var newS=null;s.parentNode.bubble(function(){if(this.nextSibling){newS=this.getOwnerTree().selModel.select(this.nextSibling);return false;}});return newS;}
return null;},onKeyDown:function(e){var s=this.selNode||this.lastSelNode;var sm=this;if(!s){return;}
var k=e.getKey();switch(k){case e.DOWN:e.stopEvent();this.selectNext();break;case e.UP:e.stopEvent();this.selectPrevious();break;case e.RIGHT:e.preventDefault();if(s.hasChildNodes()){if(!s.isExpanded()){s.expand();}else if(s.firstChild){this.select(s.firstChild,e);}}
break;case e.LEFT:e.preventDefault();if(s.hasChildNodes()&&s.isExpanded()){s.collapse();}else if(s.parentNode&&(this.tree.rootVisible||s.parentNode!=this.tree.getRootNode())){this.select(s.parentNode,e);}
break;};}});Ext.tree.MultiSelectionModel=function(config){this.selNodes=[];this.selMap={};this.addEvents("selectionchange");Ext.apply(this,config);Ext.tree.MultiSelectionModel.superclass.constructor.call(this);};Ext.extend(Ext.tree.MultiSelectionModel,Ext.util.Observable,{init:function(tree){this.tree=tree;tree.getTreeEl().on("keydown",this.onKeyDown,this);tree.on("click",this.onNodeClick,this);},onNodeClick:function(node,e){this.select(node,e,e.ctrlKey);},select:function(node,e,keepExisting){if(keepExisting!==true){this.clearSelections(true);}
if(this.isSelected(node)){this.lastSelNode=node;return node;}
this.selNodes.push(node);this.selMap[node.id]=node;this.lastSelNode=node;node.ui.onSelectedChange(true);this.fireEvent("selectionchange",this,this.selNodes);return node;},unselect:function(node){if(this.selMap[node.id]){node.ui.onSelectedChange(false);var sn=this.selNodes;var index=sn.indexOf(node);if(index!=-1){this.selNodes.splice(index,1);}
delete this.selMap[node.id];this.fireEvent("selectionchange",this,this.selNodes);}},clearSelections:function(suppressEvent){var sn=this.selNodes;if(sn.length>0){for(var i=0,len=sn.length;i<len;i++){sn[i].ui.onSelectedChange(false);}
this.selNodes=[];this.selMap={};if(suppressEvent!==true){this.fireEvent("selectionchange",this,this.selNodes);}}},isSelected:function(node){return this.selMap[node.id]?true:false;},getSelectedNodes:function(){return this.selNodes;},onKeyDown:Ext.tree.DefaultSelectionModel.prototype.onKeyDown,selectNext:Ext.tree.DefaultSelectionModel.prototype.selectNext,selectPrevious:Ext.tree.DefaultSelectionModel.prototype.selectPrevious});Ext.tree.TreeNode=function(attributes){attributes=attributes||{};if(typeof attributes=="string"){attributes={text:attributes};}
this.childrenRendered=false;this.rendered=false;Ext.tree.TreeNode.superclass.constructor.call(this,attributes);this.expanded=attributes.expanded===true;this.isTarget=attributes.isTarget!==false;this.draggable=attributes.draggable!==false&&attributes.allowDrag!==false;this.allowChildren=attributes.allowChildren!==false&&attributes.allowDrop!==false;this.text=attributes.text;this.disabled=attributes.disabled===true;this.addEvents("textchange","beforeexpand","beforecollapse","expand","disabledchange","collapse","beforeclick","click","checkchange","dblclick","contextmenu","beforechildrenrendered");var uiClass=this.attributes.uiProvider||this.defaultUI||Ext.tree.TreeNodeUI;this.ui=new uiClass(this);};Ext.extend(Ext.tree.TreeNode,Ext.data.Node,{preventHScroll:true,isExpanded:function(){return this.expanded;},getUI:function(){return this.ui;},getLoader:function(){var owner;return this.loader||((owner=this.getOwnerTree())&&owner.loader?owner.loader:new Ext.tree.TreeLoader());},setFirstChild:function(node){var of=this.firstChild;Ext.tree.TreeNode.superclass.setFirstChild.call(this,node);if(this.childrenRendered&&of&&node!=of){of.renderIndent(true,true);}
if(this.rendered){this.renderIndent(true,true);}},setLastChild:function(node){var ol=this.lastChild;Ext.tree.TreeNode.superclass.setLastChild.call(this,node);if(this.childrenRendered&&ol&&node!=ol){ol.renderIndent(true,true);}
if(this.rendered){this.renderIndent(true,true);}},appendChild:function(n){if(!n.render&&!Ext.isArray(n)){n=this.getLoader().createNode(n);}
var node=Ext.tree.TreeNode.superclass.appendChild.call(this,n);if(node&&this.childrenRendered){node.render();}
this.ui.updateExpandIcon();return node;},removeChild:function(node){this.ownerTree.getSelectionModel().unselect(node);Ext.tree.TreeNode.superclass.removeChild.apply(this,arguments);if(this.childrenRendered){node.ui.remove();}
if(this.childNodes.length<1){this.collapse(false,false);}else{this.ui.updateExpandIcon();}
if(!this.firstChild&&!this.isHiddenRoot()){this.childrenRendered=false;}
return node;},insertBefore:function(node,refNode){if(!node.render){node=this.getLoader().createNode(node);}
var newNode=Ext.tree.TreeNode.superclass.insertBefore.apply(this,arguments);if(newNode&&refNode&&this.childrenRendered){node.render();}
this.ui.updateExpandIcon();return newNode;},setText:function(text){var oldText=this.text;this.text=text;this.attributes.text=text;if(this.rendered){this.ui.onTextChange(this,text,oldText);}
this.fireEvent("textchange",this,text,oldText);},select:function(){this.getOwnerTree().getSelectionModel().select(this);},unselect:function(){this.getOwnerTree().getSelectionModel().unselect(this);},isSelected:function(){return this.getOwnerTree().getSelectionModel().isSelected(this);},expand:function(deep,anim,callback){if(!this.expanded){if(this.fireEvent("beforeexpand",this,deep,anim)===false){return;}
if(!this.childrenRendered){this.renderChildren();}
this.expanded=true;if(!this.isHiddenRoot()&&(this.getOwnerTree().animate&&anim!==false)||anim){this.ui.animExpand(function(){this.fireEvent("expand",this);if(typeof callback=="function"){callback(this);}
if(deep===true){this.expandChildNodes(true);}}.createDelegate(this));return;}else{this.ui.expand();this.fireEvent("expand",this);if(typeof callback=="function"){callback(this);}}}else{if(typeof callback=="function"){callback(this);}}
if(deep===true){this.expandChildNodes(true);}},isHiddenRoot:function(){return this.isRoot&&!this.getOwnerTree().rootVisible;},collapse:function(deep,anim){if(this.expanded&&!this.isHiddenRoot()){if(this.fireEvent("beforecollapse",this,deep,anim)===false){return;}
this.expanded=false;if((this.getOwnerTree().animate&&anim!==false)||anim){this.ui.animCollapse(function(){this.fireEvent("collapse",this);if(deep===true){this.collapseChildNodes(true);}}.createDelegate(this));return;}else{this.ui.collapse();this.fireEvent("collapse",this);}}
if(deep===true){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].collapse(true,false);}}},delayedExpand:function(delay){if(!this.expandProcId){this.expandProcId=this.expand.defer(delay,this);}},cancelExpand:function(){if(this.expandProcId){clearTimeout(this.expandProcId);}
this.expandProcId=false;},toggle:function(){if(this.expanded){this.collapse();}else{this.expand();}},ensureVisible:function(callback){var tree=this.getOwnerTree();tree.expandPath(this.parentNode?this.parentNode.getPath():this.getPath(),false,function(){var node=tree.getNodeById(this.id);tree.getTreeEl().scrollChildIntoView(node.ui.anchor);Ext.callback(callback);}.createDelegate(this));},expandChildNodes:function(deep){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].expand(deep);}},collapseChildNodes:function(deep){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].collapse(deep);}},disable:function(){this.disabled=true;this.unselect();if(this.rendered&&this.ui.onDisableChange){this.ui.onDisableChange(this,true);}
this.fireEvent("disabledchange",this,true);},enable:function(){this.disabled=false;if(this.rendered&&this.ui.onDisableChange){this.ui.onDisableChange(this,false);}
this.fireEvent("disabledchange",this,false);},renderChildren:function(suppressEvent){if(suppressEvent!==false){this.fireEvent("beforechildrenrendered",this);}
var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].render(true);}
this.childrenRendered=true;},sort:function(fn,scope){Ext.tree.TreeNode.superclass.sort.apply(this,arguments);if(this.childrenRendered){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].render(true);}}},render:function(bulkRender){this.ui.render(bulkRender);if(!this.rendered){this.getOwnerTree().registerNode(this);this.rendered=true;if(this.expanded){this.expanded=false;this.expand(false,false);}}},renderIndent:function(deep,refresh){if(refresh){this.ui.childIndent=null;}
this.ui.renderIndent();if(deep===true&&this.childrenRendered){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){cs[i].renderIndent(true,refresh);}}},beginUpdate:function(){this.childrenRendered=false;},endUpdate:function(){if(this.expanded&&this.rendered){this.renderChildren();}},destroy:function(){if(this.childNodes){for(var i=0,l=this.childNodes.length;i<l;i++){this.childNodes[i].destroy();}
this.childNodes=null;}
if(this.ui.destroy){this.ui.destroy();}}});Ext.tree.TreePanel.nodeTypes.node=Ext.tree.TreeNode;Ext.tree.AsyncTreeNode=function(config){this.loaded=config&&config.loaded===true;this.loading=false;Ext.tree.AsyncTreeNode.superclass.constructor.apply(this,arguments);this.addEvents('beforeload','load');};Ext.extend(Ext.tree.AsyncTreeNode,Ext.tree.TreeNode,{expand:function(deep,anim,callback){if(this.loading){var timer;var f=function(){if(!this.loading){clearInterval(timer);this.expand(deep,anim,callback);}}.createDelegate(this);timer=setInterval(f,200);return;}
if(!this.loaded){if(this.fireEvent("beforeload",this)===false){return;}
this.loading=true;this.ui.beforeLoad(this);var loader=this.loader||this.attributes.loader||this.getOwnerTree().getLoader();if(loader){loader.load(this,this.loadComplete.createDelegate(this,[deep,anim,callback]));return;}}
Ext.tree.AsyncTreeNode.superclass.expand.call(this,deep,anim,callback);},isLoading:function(){return this.loading;},loadComplete:function(deep,anim,callback){this.loading=false;this.loaded=true;this.ui.afterLoad(this);this.fireEvent("load",this);this.expand(deep,anim,callback);},isLoaded:function(){return this.loaded;},hasChildNodes:function(){if(!this.isLeaf()&&!this.loaded){return true;}else{return Ext.tree.AsyncTreeNode.superclass.hasChildNodes.call(this);}},reload:function(callback){this.collapse(false,false);while(this.firstChild){this.removeChild(this.firstChild).destroy();}
this.childrenRendered=false;this.loaded=false;if(this.isHiddenRoot()){this.expanded=false;}
this.expand(false,false,callback);}});Ext.tree.TreePanel.nodeTypes.async=Ext.tree.AsyncTreeNode;Ext.tree.TreeNodeUI=function(node){this.node=node;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(node){if(this.rendered){this.ctNode.removeChild(node.ui.getEl());}},beforeLoad:function(){this.addClass("x-tree-node-loading");},afterLoad:function(){this.removeClass("x-tree-node-loading");},onTextChange:function(node,text,oldText){if(this.rendered){this.textNode.innerHTML=text;}},onDisableChange:function(node,state){this.disabled=state;if(this.checkbox){this.checkbox.disabled=state;}
if(state){this.addClass("x-tree-node-disabled");}else{this.removeClass("x-tree-node-disabled");}},onSelectedChange:function(state){if(state){this.focus();this.addClass("x-tree-selected");}else{this.removeClass("x-tree-selected");}},onMove:function(tree,node,oldParent,newParent,index,refNode){this.childIndent=null;if(this.rendered){var targetNode=newParent.ui.getContainer();if(!targetNode){this.holder=document.createElement("div");this.holder.appendChild(this.wrap);return;}
var insertBefore=refNode?refNode.ui.getEl():null;if(insertBefore){targetNode.insertBefore(this.wrap,insertBefore);}else{targetNode.appendChild(this.wrap);}
this.node.renderIndent(true);}},addClass:function(cls){if(this.elNode){Ext.fly(this.elNode).addClass(cls);}},removeClass:function(cls){if(this.elNode){Ext.fly(this.elNode).removeClass(cls);}},remove:function(){if(this.rendered){this.holder=document.createElement("div");this.holder.appendChild(this.wrap);}},fireEvent:function(){return this.node.fireEvent.apply(this.node,arguments);},initEvents:function(){this.node.on("move",this.onMove,this);if(this.node.disabled){this.addClass("x-tree-node-disabled");if(this.checkbox){this.checkbox.disabled=true;}}
if(this.node.hidden){this.hide();}
var ot=this.node.getOwnerTree();var dd=ot.enableDD||ot.enableDrag||ot.enableDrop;if(dd&&(!this.node.isRoot||ot.rootVisible)){Ext.dd.Registry.register(this.elNode,{node:this.node,handles:this.getDDHandles(),isHandle:false});}},getDDHandles:function(){return[this.iconNode,this.textNode,this.elNode];},hide:function(){this.node.hidden=true;if(this.wrap){this.wrap.style.display="none";}},show:function(){this.node.hidden=false;if(this.wrap){this.wrap.style.display="";}},onContextMenu:function(e){if(this.node.hasListener("contextmenu")||this.node.getOwnerTree().hasListener("contextmenu")){e.preventDefault();this.focus();this.fireEvent("contextmenu",this.node,e);}},onClick:function(e){if(this.dropping){e.stopEvent();return;}
if(this.fireEvent("beforeclick",this.node,e)!==false){var a=e.getTarget('a');if(!this.disabled&&this.node.attributes.href&&a){this.fireEvent("click",this.node,e);return;}else if(a&&e.ctrlKey){e.stopEvent();}
e.preventDefault();if(this.disabled){return;}
if(this.node.attributes.singleClickExpand&&!this.animating&&this.node.isExpandable()){this.node.toggle();}
this.fireEvent("click",this.node,e);}else{e.stopEvent();}},onDblClick:function(e){e.preventDefault();if(this.disabled){return;}
if(this.checkbox){this.toggleCheck();}
if(!this.animating&&this.node.isExpandable()){this.node.toggle();}
this.fireEvent("dblclick",this.node,e);},onOver:function(e){this.addClass('x-tree-node-over');},onOut:function(e){this.removeClass('x-tree-node-over');},onCheckChange:function(){var checked=this.checkbox.checked;this.checkbox.defaultChecked=checked;this.node.attributes.checked=checked;this.fireEvent('checkchange',this.node,checked);},ecClick:function(e){if(!this.animating&&this.node.isExpandable()){this.node.toggle();}},startDrop:function(){this.dropping=true;},endDrop:function(){setTimeout(function(){this.dropping=false;}.createDelegate(this),50);},expand:function(){this.updateExpandIcon();this.ctNode.style.display="";},focus:function(){if(!this.node.preventHScroll){try{this.anchor.focus();}catch(e){}}else{try{var noscroll=this.node.getOwnerTree().getTreeEl().dom;var l=noscroll.scrollLeft;this.anchor.focus();noscroll.scrollLeft=l;}catch(e){}}},toggleCheck:function(value){var cb=this.checkbox;if(cb){cb.checked=(value===undefined?!cb.checked:value);this.onCheckChange();}},blur:function(){try{this.anchor.blur();}catch(e){}},animExpand:function(callback){var ct=Ext.get(this.ctNode);ct.stopFx();if(!this.node.isExpandable()){this.updateExpandIcon();this.ctNode.style.display="";Ext.callback(callback);return;}
this.animating=true;this.updateExpandIcon();ct.slideIn('t',{callback:function(){this.animating=false;Ext.callback(callback);},scope:this,duration:this.node.ownerTree.duration||.25});},highlight:function(){var tree=this.node.getOwnerTree();Ext.fly(this.wrap).highlight(tree.hlColor||"C3DAF9",{endColor:tree.hlBaseColor});},collapse:function(){this.updateExpandIcon();this.ctNode.style.display="none";},animCollapse:function(callback){var ct=Ext.get(this.ctNode);ct.enableDisplayMode('block');ct.stopFx();this.animating=true;this.updateExpandIcon();ct.slideOut('t',{callback:function(){this.animating=false;Ext.callback(callback);},scope:this,duration:this.node.ownerTree.duration||.25});},getContainer:function(){return this.ctNode;},getEl:function(){return this.wrap;},appendDDGhost:function(ghostNode){ghostNode.appendChild(this.elNode.cloneNode(true));},getDDRepairXY:function(){return Ext.lib.Dom.getXY(this.iconNode);},onRender:function(){this.render();},render:function(bulkRender){var n=this.node,a=n.attributes;var targetNode=n.parentNode?n.parentNode.ui.getContainer():n.ownerTree.innerCt.dom;if(!this.rendered){this.rendered=true;this.renderElements(n,a,targetNode,bulkRender);if(a.qtip){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(bulkRender===true){targetNode.appendChild(this.wrap);}}},renderElements:function(n,a,targetNode,bulkRender){this.indentMarkup=n.parentNode?n.parentNode.ui.getChildIndent():'';var cb=typeof a.checked=='boolean';var href=a.href?a.href:Ext.isGecko?"":"#";var buf=['<li class="x-tree-node"><div ext:tree-node-id="',n.id,'" class="x-tree-node-el x-tree-node-leaf x-unselectable ',a.cls,'" unselectable="on">','<span class="x-tree-node-indent">',this.indentMarkup,"</span>",'<img src="',this.emptyIcon,'" class="x-tree-ec-icon x-tree-elbow" />','<img src="',a.icon||this.emptyIcon,'" class="x-tree-node-icon',(a.icon?" x-tree-node-inline-icon":""),(a.iconCls?" "+a.iconCls:""),'" unselectable="on" />',cb?('<input class="x-tree-node-cb" type="checkbox" '+(a.checked?'checked="checked" />':'/>')):'','<a hidefocus="on" class="x-tree-node-anchor" href="',href,'" tabIndex="1" ',a.hrefTarget?' target="'+a.hrefTarget+'"':"",'><span unselectable="on">',n.text,"</span></a></div>",'<ul class="x-tree-node-ct" style="display:none;"></ul>',"</li>"].join('');var nel;if(bulkRender!==true&&n.nextSibling&&(nel=n.nextSibling.ui.getEl())){this.wrap=Ext.DomHelper.insertHtml("beforeBegin",nel,buf);}else{this.wrap=Ext.DomHelper.insertHtml("beforeEnd",targetNode,buf);}
this.elNode=this.wrap.childNodes[0];this.ctNode=this.wrap.childNodes[1];var cs=this.elNode.childNodes;this.indentNode=cs[0];this.ecNode=cs[1];this.iconNode=cs[2];var index=3;if(cb){this.checkbox=cs[3];this.checkbox.defaultChecked=this.checkbox.checked;index++;}
this.anchor=cs[index];this.textNode=cs[index].firstChild;},getAnchor:function(){return this.anchor;},getTextEl:function(){return this.textNode;},getIconEl:function(){return this.iconNode;},isChecked:function(){return this.checkbox?this.checkbox.checked:false;},updateExpandIcon:function(){if(this.rendered){var n=this.node,c1,c2;var cls=n.isLast()?"x-tree-elbow-end":"x-tree-elbow";if(n.isExpandable()){if(n.expanded){cls+="-minus";c1="x-tree-node-collapsed";c2="x-tree-node-expanded";}else{cls+="-plus";c1="x-tree-node-expanded";c2="x-tree-node-collapsed";}
if(this.wasLeaf){this.removeClass("x-tree-node-leaf");this.wasLeaf=false;}
if(this.c1!=c1||this.c2!=c2){Ext.fly(this.elNode).replaceClass(c1,c2);this.c1=c1;this.c2=c2;}}else{if(!this.wasLeaf){Ext.fly(this.elNode).replaceClass("x-tree-node-expanded","x-tree-node-leaf");delete this.c1;delete this.c2;this.wasLeaf=true;}}
var ecc="x-tree-ec-icon "+cls;if(this.ecc!=ecc){this.ecNode.className=ecc;this.ecc=ecc;}}},getChildIndent:function(){if(!this.childIndent){var buf=[];var p=this.node;while(p){if(!p.isRoot||(p.isRoot&&p.ownerTree.rootVisible)){if(!p.isLast()){buf.unshift('<img src="'+this.emptyIcon+'" class="x-tree-elbow-line" />');}else{buf.unshift('<img src="'+this.emptyIcon+'" class="x-tree-icon" />');}}
p=p.parentNode;}
this.childIndent=buf.join("");}
return this.childIndent;},renderIndent:function(){if(this.rendered){var indent="";var p=this.node.parentNode;if(p){indent=p.ui.getChildIndent();}
if(this.indentMarkup!=indent){this.indentNode.innerHTML=indent;this.indentMarkup=indent;}
this.updateExpandIcon();}},destroy:function(){if(this.elNode){Ext.dd.Registry.unregister(this.elNode.id);}
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 targetNode=this.node.ownerTree.innerCt.dom;this.node.expanded=true;targetNode.innerHTML='<div class="x-tree-root-node"></div>';this.wrap=this.ctNode=targetNode.firstChild;}},collapse:Ext.emptyFn,expand:Ext.emptyFn});Ext.tree.TreeLoader=function(config){this.baseParams={};Ext.apply(this,config);this.addEvents("beforeload","load","loadexception");Ext.tree.TreeLoader.superclass.constructor.call(this);};Ext.extend(Ext.tree.TreeLoader,Ext.util.Observable,{uiProviders:{},clearOnLoad:true,load:function(node,callback){if(this.clearOnLoad){while(node.firstChild){node.removeChild(node.firstChild);}}
if(this.doPreload(node)){if(typeof callback=="function"){callback();}}else if(this.dataUrl||this.url){this.requestData(node,callback);}},doPreload:function(node){if(node.attributes.children){if(node.childNodes.length<1){var cs=node.attributes.children;node.beginUpdate();for(var i=0,len=cs.length;i<len;i++){var cn=node.appendChild(this.createNode(cs[i]));if(this.preloadChildren){this.doPreload(cn);}}
node.endUpdate();}
return true;}else{return false;}},getParams:function(node){var buf=[],bp=this.baseParams;for(var key in bp){if(typeof bp[key]!="function"){buf.push(encodeURIComponent(key),"=",encodeURIComponent(bp[key]),"&");}}
buf.push("node=",encodeURIComponent(node.id));return buf.join("");},requestData:function(node,callback){if(this.fireEvent("beforeload",this,node,callback)!==false){this.transId=Ext.Ajax.request({method:this.requestMethod,url:this.dataUrl||this.url,success:this.handleResponse,failure:this.handleFailure,scope:this,argument:{callback:callback,node:node},params:this.getParams(node)});}else{if(typeof callback=="function"){callback();}}},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(response,node,callback){var json=response.responseText;try{var o=eval("("+json+")");node.beginUpdate();for(var i=0,len=o.length;i<len;i++){var n=this.createNode(o[i]);if(n){node.appendChild(n);}}
node.endUpdate();if(typeof callback=="function"){callback(this,node);}}catch(e){this.handleFailure(response);}},handleResponse:function(response){this.transId=false;var a=response.argument;this.processResponse(response,a.node,a.callback);this.fireEvent("load",this,a.node,response);},handleFailure:function(response){this.transId=false;var a=response.argument;this.fireEvent("loadexception",this,a.node,response);if(typeof a.callback=="function"){a.callback(this,a.node);}}});Ext.tree.TreeFilter=function(tree,config){this.tree=tree;this.filtered={};Ext.apply(this,config);};Ext.tree.TreeFilter.prototype={clearBlank:false,reverse:false,autoClear:false,remove:false,filter:function(value,attr,startNode){attr=attr||"text";var f;if(typeof value=="string"){var vlen=value.length;if(vlen==0&&this.clearBlank){this.clear();return;}
value=value.toLowerCase();f=function(n){return n.attributes[attr].substr(0,vlen).toLowerCase()==value;};}else if(value.exec){f=function(n){return value.test(n.attributes[attr]);};}else{throw'Illegal filter type, must be string or regex';}
this.filterBy(f,null,startNode);},filterBy:function(fn,scope,startNode){startNode=startNode||this.tree.root;if(this.autoClear){this.clear();}
var af=this.filtered,rv=this.reverse;var f=function(n){if(n==startNode){return true;}
if(af[n.id]){return false;}
var m=fn.call(scope||n,n);if(!m||rv){af[n.id]=n;n.ui.hide();return false;}
return true;};startNode.cascade(f);if(this.remove){for(var id in af){if(typeof id!="function"){var n=af[id];if(n&&n.parentNode){n.parentNode.removeChild(n);}}}}},clear:function(){var t=this.tree;var af=this.filtered;for(var id in af){if(typeof id!="function"){var n=af[id];if(n){n.ui.show();}}}
this.filtered={};}};Ext.tree.TreeSorter=function(tree,config){Ext.apply(this,config);tree.on("beforechildrenrendered",this.doSort,this);tree.on("append",this.updateSort,this);tree.on("insert",this.updateSort,this);tree.on("textchange",this.updateSortParent,this);var dsc=this.dir&&this.dir.toLowerCase()=="desc";var p=this.property||"text";var sortType=this.sortType;var fs=this.folderSort;var cs=this.caseSensitive===true;var leafAttr=this.leafAttr||'leaf';this.sortFn=function(n1,n2){if(fs){if(n1.attributes[leafAttr]&&!n2.attributes[leafAttr]){return 1;}
if(!n1.attributes[leafAttr]&&n2.attributes[leafAttr]){return-1;}}
var v1=sortType?sortType(n1):(cs?n1.attributes[p]:n1.attributes[p].toUpperCase());var v2=sortType?sortType(n2):(cs?n2.attributes[p]:n2.attributes[p].toUpperCase());if(v1<v2){return dsc?+1:-1;}else if(v1>v2){return dsc?-1:+1;}else{return 0;}};};Ext.tree.TreeSorter.prototype={doSort:function(node){node.sort(this.sortFn);},compareNodes:function(n1,n2){return(n1.text.toUpperCase()>n2.text.toUpperCase()?1:-1);},updateSort:function(tree,node){if(node.childrenRendered){this.doSort.defer(1,this,[node]);}},updateSortParent:function(node){var p=node.parentNode;if(p&&p.childrenRendered){this.doSort.defer(1,this,[p]);}}};if(Ext.dd.DropZone){Ext.tree.TreeDropZone=function(tree,config){this.allowParentInsert=false;this.allowContainerDrop=false;this.appendOnly=false;Ext.tree.TreeDropZone.superclass.constructor.call(this,tree.innerCt,config);this.tree=tree;this.dragOverData={};this.lastInsertClass="x-tree-no-status";};Ext.extend(Ext.tree.TreeDropZone,Ext.dd.DropZone,{ddGroup:"TreeDD",expandDelay:1000,expandNode:function(node){if(node.hasChildNodes()&&!node.isExpanded()){node.expand(false,null,this.triggerCacheRefresh.createDelegate(this));}},queueExpand:function(node){this.expandProcId=this.expandNode.defer(this.expandDelay,this,[node]);},cancelExpand:function(){if(this.expandProcId){clearTimeout(this.expandProcId);this.expandProcId=false;}},isValidDropPoint:function(n,pt,dd,e,data){if(!n||!data){return false;}
var targetNode=n.node;var dropNode=data.node;if(!(targetNode&&targetNode.isTarget&&pt)){return false;}
if(pt=="append"&&targetNode.allowChildren===false){return false;}
if((pt=="above"||pt=="below")&&(targetNode.parentNode&&targetNode.parentNode.allowChildren===false)){return false;}
if(dropNode&&(targetNode==dropNode||dropNode.contains(targetNode))){return false;}
var overEvent=this.dragOverData;overEvent.tree=this.tree;overEvent.target=targetNode;overEvent.data=data;overEvent.point=pt;overEvent.source=dd;overEvent.rawEvent=e;overEvent.dropNode=dropNode;overEvent.cancel=false;var result=this.tree.fireEvent("nodedragover",overEvent);return overEvent.cancel===false&&result!==false;},getDropPoint:function(e,n,dd){var tn=n.node;if(tn.isRoot){return tn.allowChildren!==false?"append":false;}
var dragEl=n.ddel;var t=Ext.lib.Dom.getY(dragEl),b=t+dragEl.offsetHeight;var y=Ext.lib.Event.getPageY(e);var noAppend=tn.allowChildren===false||tn.isLeaf();if(this.appendOnly||tn.parentNode.allowChildren===false){return noAppend?false:"append";}
var noBelow=false;if(!this.allowParentInsert){noBelow=tn.hasChildNodes()&&tn.isExpanded();}
var q=(b-t)/(noAppend?2:3);if(y>=t&&y<(t+q)){return"above";}else if(!noBelow&&(noAppend||y>=b-q&&y<=b)){return"below";}else{return"append";}},onNodeEnter:function(n,dd,e,data){this.cancelExpand();},onNodeOver:function(n,dd,e,data){var pt=this.getDropPoint(e,n,dd);var node=n.node;if(!this.expandProcId&&pt=="append"&&node.hasChildNodes()&&!n.node.isExpanded()){this.queueExpand(node);}else if(pt!="append"){this.cancelExpand();}
var returnCls=this.dropNotAllowed;if(this.isValidDropPoint(n,pt,dd,e,data)){if(pt){var el=n.ddel;var cls;if(pt=="above"){returnCls=n.node.isFirst()?"x-tree-drop-ok-above":"x-tree-drop-ok-between";cls="x-tree-drag-insert-above";}else if(pt=="below"){returnCls=n.node.isLast()?"x-tree-drop-ok-below":"x-tree-drop-ok-between";cls="x-tree-drag-insert-below";}else{returnCls="x-tree-drop-ok-append";cls="x-tree-drag-append";}
if(this.lastInsertClass!=cls){Ext.fly(el).replaceClass(this.lastInsertClass,cls);this.lastInsertClass=cls;}}}
return returnCls;},onNodeOut:function(n,dd,e,data){this.cancelExpand();this.removeDropIndicators(n);},onNodeDrop:function(n,dd,e,data){var point=this.getDropPoint(e,n,dd);var targetNode=n.node;targetNode.ui.startDrop();if(!this.isValidDropPoint(n,point,dd,e,data)){targetNode.ui.endDrop();return false;}
var dropNode=data.node||(dd.getTreeNode?dd.getTreeNode(data,targetNode,point,e):null);var dropEvent={tree:this.tree,target:targetNode,data:data,point:point,source:dd,rawEvent:e,dropNode:dropNode,cancel:!dropNode,dropStatus:false};var retval=this.tree.fireEvent("beforenodedrop",dropEvent);if(retval===false||dropEvent.cancel===true||!dropEvent.dropNode){targetNode.ui.endDrop();return dropEvent.dropStatus;}
targetNode=dropEvent.target;if(point=="append"&&!targetNode.isExpanded()){targetNode.expand(false,null,function(){this.completeDrop(dropEvent);}.createDelegate(this));}else{this.completeDrop(dropEvent);}
return true;},completeDrop:function(de){var ns=de.dropNode,p=de.point,t=de.target;if(!Ext.isArray(ns)){ns=[ns];}
var n;for(var i=0,len=ns.length;i<len;i++){n=ns[i];if(p=="above"){t.parentNode.insertBefore(n,t);}else if(p=="below"){t.parentNode.insertBefore(n,t.nextSibling);}else{t.appendChild(n);}}
n.ui.focus();if(Ext.enableFx&&this.tree.hlDrop){n.ui.highlight();}
t.ui.endDrop();this.tree.fireEvent("nodedrop",de);},afterNodeMoved:function(dd,data,e,targetNode,dropNode){if(Ext.enableFx&&this.tree.hlDrop){dropNode.ui.focus();dropNode.ui.highlight();}
this.tree.fireEvent("nodedrop",this.tree,targetNode,data,dd,e);},getTree:function(){return this.tree;},removeDropIndicators:function(n){if(n&&n.ddel){var el=n.ddel;Ext.fly(el).removeClass(["x-tree-drag-insert-above","x-tree-drag-insert-below","x-tree-drag-append"]);this.lastInsertClass="_noclass";}},beforeDragDrop:function(target,e,id){this.cancelExpand();return true;},afterRepair:function(data){if(data&&Ext.enableFx){data.node.ui.highlight();}
this.hideProxy();}});}
if(Ext.dd.DragZone){Ext.tree.TreeDragZone=function(tree,config){Ext.tree.TreeDragZone.superclass.constructor.call(this,tree.getTreeEl(),config);this.tree=tree;};Ext.extend(Ext.tree.TreeDragZone,Ext.dd.DragZone,{ddGroup:"TreeDD",onBeforeDrag:function(data,e){var n=data.node;return n&&n.draggable&&!n.disabled;},onInitDrag:function(e){var data=this.dragData;this.tree.getSelectionModel().select(data.node);this.tree.eventModel.disable();this.proxy.update("");data.node.ui.appendDDGhost(this.proxy.ghost.dom);this.tree.fireEvent("startdrag",this.tree,data.node,e);},getRepairXY:function(e,data){return data.node.ui.getDDRepairXY();},onEndDrag:function(data,e){this.tree.eventModel.enable.defer(100,this.tree.eventModel);this.tree.fireEvent("enddrag",this.tree,data.node,e);},onValidDrop:function(dd,e,id){this.tree.fireEvent("dragdrop",this.tree,this.dragData.node,dd,e);this.hideProxy();},beforeInvalidDrop:function(e,id){var sm=this.tree.getSelectionModel();sm.clearSelections();sm.select(this.dragData.node);},afterRepair:function(){if(Ext.enableFx&&this.tree.hlDrop){Ext.Element.fly(this.dragData.ddel).highlight(this.hlColor||"c3daf9");}
this.dragging=false;}});}
Ext.tree.TreeEditor=function(tree,fc,config){fc=fc||{};var field=fc.events?fc:new Ext.form.TextField(fc);Ext.tree.TreeEditor.superclass.constructor.call(this,field,config);this.tree=tree;if(!tree.rendered){tree.on('render',this.initEditor,this);}else{this.initEditor(tree);}};Ext.extend(Ext.tree.TreeEditor,Ext.Editor,{alignment:"l-l",autoSize:false,hideEl:false,cls:"x-small-editor x-tree-editor",shim:false,shadow:"frame",maxWidth:250,editDelay:350,initEditor:function(tree){tree.on('beforeclick',this.beforeNodeClick,this);tree.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(ed,el){var td=this.tree.getTreeEl().dom,nd=el.dom;if(td.scrollLeft>nd.offsetLeft){td.scrollLeft=nd.offsetLeft;}
var w=Math.min(this.maxWidth,(td.clientWidth>20?td.clientWidth:td.offsetWidth)-Math.max(0,nd.offsetLeft-td.scrollLeft)-5);this.setSize(w,'');},triggerEdit:function(node,defer){this.completeEdit();if(node.attributes.editable!==false){this.editNode=node;if(this.tree.autoScroll){node.ui.getEl().scrollIntoView(this.tree.body);}
this.autoEditTimer=this.startEdit.defer(this.editDelay,this,[node.ui.textNode,node.text]);return false;}},bindScroll:function(){this.tree.getTreeEl().on('scroll',this.cancelEdit,this);},beforeNodeClick:function(node,e){clearTimeout(this.autoEditTimer);if(this.tree.getSelectionModel().isSelected(node)){e.stopEvent();return this.triggerEdit(node);}},onNodeDblClick:function(node,e){clearTimeout(this.autoEditTimer);},updateNode:function(ed,value){this.tree.getTreeEl().un('scroll',this.cancelEdit,this);this.editNode.setText(value);},onHide:function(){Ext.tree.TreeEditor.superclass.onHide.call(this);if(this.editNode){this.editNode.ui.focus.defer(50,this.editNode.ui);}},onSpecialKey:function(field,e){var k=e.getKey();if(k==e.ESC){e.stopEvent();this.cancelEdit();}else if(k==e.ENTER&&!e.hasModifier()){e.stopEvent();this.completeEdit();}}});Ext.menu.Menu=function(config){if(Ext.isArray(config)){config={items:config};}
Ext.apply(this,config);this.id=this.id||Ext.id();this.addEvents('beforeshow','beforehide','show','hide','click','mouseover','mouseout','itemclick');Ext.menu.MenuMgr.register(this);Ext.menu.Menu.superclass.constructor.call(this);var mis=this.items;this.items=new Ext.util.MixedCollection();if(mis){this.add.apply(this,mis);}};Ext.extend(Ext.menu.Menu,Ext.util.Observable,{minWidth:120,shadow:"sides",subMenuAlign:"tl-tr?",defaultAlign:"tl-bl?",allowOtherMenus:false,ignoreParentClicks:false,hidden:true,createEl:function(){return new Ext.Layer({cls:"x-menu",shadow:this.shadow,constrain:false,parentEl:this.parentEl||document.body,zindex:15000});},render:function(){if(this.el){return;}
var el=this.el=this.createEl();if(!this.keyNav){this.keyNav=new Ext.menu.MenuNav(this);}
if(this.plain){el.addClass("x-menu-plain");}
if(this.cls){el.addClass(this.cls);}
this.focusEl=el.createChild({tag:"a",cls:"x-menu-focus",href:"#",onclick:"return false;",tabIndex:"-1"});var ul=el.createChild({tag:"ul",cls:"x-menu-list"});ul.on("click",this.onClick,this);ul.on("mouseover",this.onMouseOver,this);ul.on("mouseout",this.onMouseOut,this);this.items.each(function(item){var li=document.createElement("li");li.className="x-menu-list-item";ul.dom.appendChild(li);item.render(li,this);},this);this.ul=ul;this.autoWidth();},autoWidth:function(){var el=this.el,ul=this.ul;if(!el){return;}
var w=this.width;if(w){el.setWidth(w);}else if(Ext.isIE){el.setWidth(this.minWidth);var t=el.dom.offsetWidth;el.setWidth(ul.getWidth()+el.getFrameWidth("lr"));}},delayAutoWidth:function(){if(this.el){if(!this.awTask){this.awTask=new Ext.util.DelayedTask(this.autoWidth,this);}
this.awTask.delay(20);}},findTargetItem:function(e){var t=e.getTarget(".x-menu-list-item",this.ul,true);if(t&&t.menuItemId){return this.items.get(t.menuItemId);}},onClick:function(e){var t;if(t=this.findTargetItem(e)){if(t.menu&&this.ignoreParentClicks){t.expandMenu();}else{t.onClick(e);this.fireEvent("click",this,t,e);}}},setActiveItem:function(item,autoExpand){if(item!=this.activeItem){if(this.activeItem){this.activeItem.deactivate();}
this.activeItem=item;item.activate(autoExpand);}else if(autoExpand){item.expandMenu();}},tryActivate:function(start,step){var items=this.items;for(var i=start,len=items.length;i>=0&&i<len;i+=step){var item=items.get(i);if(!item.disabled&&item.canActivate){this.setActiveItem(item,false);return item;}}
return false;},onMouseOver:function(e){var t;if(t=this.findTargetItem(e)){if(t.canActivate&&!t.disabled){this.setActiveItem(t,true);}}
this.over=true;this.fireEvent("mouseover",this,e,t);},onMouseOut:function(e){var t;if(t=this.findTargetItem(e)){if(t==this.activeItem&&t.shouldDeactivate(e)){this.activeItem.deactivate();delete this.activeItem;}}
this.over=false;this.fireEvent("mouseout",this,e,t);},isVisible:function(){return this.el&&!this.hidden;},show:function(el,pos,parentMenu){this.parentMenu=parentMenu;if(!this.el){this.render();}
this.fireEvent("beforeshow",this);this.showAt(this.el.getAlignToXY(el,pos||this.defaultAlign),parentMenu,false);},showAt:function(xy,parentMenu,_e){this.parentMenu=parentMenu;if(!this.el){this.render();}
if(_e!==false){this.fireEvent("beforeshow",this);xy=this.el.adjustForConstraints(xy);}
this.el.setXY(xy);this.el.show();this.hidden=false;this.focus();this.fireEvent("show",this);},focus:function(){if(!this.hidden){this.doFocus.defer(50,this);}},doFocus:function(){if(!this.hidden){this.focusEl.focus();}},hide:function(deep){if(this.el&&this.isVisible()){this.fireEvent("beforehide",this);if(this.activeItem){this.activeItem.deactivate();this.activeItem=null;}
this.el.hide();this.hidden=true;this.fireEvent("hide",this);}
if(deep===true&&this.parentMenu){this.parentMenu.hide(true);}},add:function(){var a=arguments,l=a.length,item;for(var i=0;i<l;i++){var el=a[i];if(el.render){item=this.addItem(el);}else if(typeof el=="string"){if(el=="separator"||el=="-"){item=this.addSeparator();}else{item=this.addText(el);}}else if(el.tagName||el.el){item=this.addElement(el);}else if(typeof el=="object"){Ext.applyIf(el,this.defaults);item=this.addMenuItem(el);}}
return item;},getEl:function(){if(!this.el){this.render();}
return this.el;},addSeparator:function(){return this.addItem(new Ext.menu.Separator());},addElement:function(el){return this.addItem(new Ext.menu.BaseItem(el));},addItem:function(item){this.items.add(item);if(this.ul){var li=document.createElement("li");li.className="x-menu-list-item";this.ul.dom.appendChild(li);item.render(li,this);this.delayAutoWidth();}
return item;},addMenuItem:function(config){if(!(config instanceof Ext.menu.Item)){if(typeof config.checked=="boolean"){config=new Ext.menu.CheckItem(config);}else{config=new Ext.menu.Item(config);}}
return this.addItem(config);},addText:function(text){return this.addItem(new Ext.menu.TextItem(text));},insert:function(index,item){this.items.insert(index,item);if(this.ul){var li=document.createElement("li");li.className="x-menu-list-item";this.ul.dom.insertBefore(li,this.ul.dom.childNodes[index]);item.render(li,this);this.delayAutoWidth();}
return item;},remove:function(item){this.items.removeKey(item.id);item.destroy();},removeAll:function(){if(this.items){var f;while(f=this.items.first()){this.remove(f);}}},destroy:function(){this.beforeDestroy();Ext.menu.MenuMgr.unregister(this);if(this.keyNav){this.keyNav.disable();}
this.removeAll();if(this.ul){this.ul.removeAllListeners();}
if(this.el){this.el.destroy();}},beforeDestroy:Ext.emptyFn});Ext.menu.MenuNav=function(menu){Ext.menu.MenuNav.superclass.constructor.call(this,menu.el);this.scope=this.menu=menu;};Ext.extend(Ext.menu.MenuNav,Ext.KeyNav,{doRelay:function(e,h){var k=e.getKey();if(!this.menu.activeItem&&e.isNavKeyPress()&&k!=e.SPACE&&k!=e.RETURN){this.menu.tryActivate(0,1);return false;}
return h.call(this.scope||this,e,this.menu);},up:function(e,m){if(!m.tryActivate(m.items.indexOf(m.activeItem)-1,-1)){m.tryActivate(m.items.length-1,-1);}},down:function(e,m){if(!m.tryActivate(m.items.indexOf(m.activeItem)+1,1)){m.tryActivate(0,1);}},right:function(e,m){if(m.activeItem){m.activeItem.expandMenu(true);}},left:function(e,m){m.hide();if(m.parentMenu&&m.parentMenu.activeItem){m.parentMenu.activeItem.activate();}},enter:function(e,m){if(m.activeItem){e.stopPropagation();m.activeItem.onClick(e);m.fireEvent("click",this,m.activeItem);return true;}}});Ext.menu.MenuMgr=function(){var menus,active,groups={},attached=false,lastShow=new Date();function init(){menus={};active=new Ext.util.MixedCollection();Ext.getDoc().addKeyListener(27,function(){if(active.length>0){hideAll();}});}
function hideAll(){if(active&&active.length>0){var c=active.clone();c.each(function(m){m.hide();});}}
function onHide(m){active.remove(m);if(active.length<1){Ext.getDoc().un("mousedown",onMouseDown);attached=false;}}
function onShow(m){var last=active.last();lastShow=new Date();active.add(m);if(!attached){Ext.getDoc().on("mousedown",onMouseDown);attached=true;}
if(m.parentMenu){m.getEl().setZIndex(parseInt(m.parentMenu.getEl().getStyle("z-index"),10)+3);m.parentMenu.activeChild=m;}else if(last&&last.isVisible()){m.getEl().setZIndex(parseInt(last.getEl().getStyle("z-index"),10)+3);}}
function onBeforeHide(m){if(m.activeChild){m.activeChild.hide();}
if(m.autoHideTimer){clearTimeout(m.autoHideTimer);delete m.autoHideTimer;}}
function onBeforeShow(m){var pm=m.parentMenu;if(!pm&&!m.allowOtherMenus){hideAll();}else if(pm&&pm.activeChild){pm.activeChild.hide();}}
function onMouseDown(e){if(lastShow.getElapsed()>50&&active.length>0&&!e.getTarget(".x-menu")){hideAll();}}
function onBeforeCheck(mi,state){if(state){var g=groups[mi.group];for(var i=0,l=g.length;i<l;i++){if(g[i]!=mi){g[i].setChecked(false);}}}}
return{hideAll:function(){hideAll();},register:function(menu){if(!menus){init();}
menus[menu.id]=menu;menu.on("beforehide",onBeforeHide);menu.on("hide",onHide);menu.on("beforeshow",onBeforeShow);menu.on("show",onShow);var g=menu.group;if(g&&menu.events["checkchange"]){if(!groups[g]){groups[g]=[];}
groups[g].push(menu);menu.on("checkchange",onCheck);}},get:function(menu){if(typeof menu=="string"){if(!menus){return null;}
return menus[menu];}else if(menu.events){return menu;}else if(typeof menu.length=='number'){return new Ext.menu.Menu({items:menu});}else{return new Ext.menu.Menu(menu);}},unregister:function(menu){delete menus[menu.id];menu.un("beforehide",onBeforeHide);menu.un("hide",onHide);menu.un("beforeshow",onBeforeShow);menu.un("show",onShow);var g=menu.group;if(g&&menu.events["checkchange"]){groups[g].remove(menu);menu.un("checkchange",onCheck);}},registerCheckable:function(menuItem){var g=menuItem.group;if(g){if(!groups[g]){groups[g]=[];}
groups[g].push(menuItem);menuItem.on("beforecheckchange",onBeforeCheck);}},unregisterCheckable:function(menuItem){var g=menuItem.group;if(g){groups[g].remove(menuItem);menuItem.un("beforecheckchange",onBeforeCheck);}},getCheckedItem:function(groupId){var g=groups[groupId];if(g){for(var i=0,l=g.length;i<l;i++){if(g[i].checked){return g[i];}}}
return null;},setCheckedItem:function(groupId,itemId){var g=groups[groupId];if(g){for(var i=0,l=g.length;i<l;i++){if(g[i].id==itemId){g[i].setChecked(true);}}}
return null;}};}();Ext.menu.BaseItem=function(config){Ext.menu.BaseItem.superclass.constructor.call(this,config);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,hideDelay:100,ctype:"Ext.menu.BaseItem",actionMode:"container",render:function(container,parentMenu){this.parentMenu=parentMenu;Ext.menu.BaseItem.superclass.render.call(this,container);this.container.menuItemId=this.id;},onRender:function(container,position){this.el=Ext.get(this.el);if(this.id){this.el.id=this.id;}
container.dom.appendChild(this.el.dom);},setHandler:function(handler,scope){if(this.handler){this.un("click",this.handler,this.scope);}
this.on("click",this.handler=handler,this.scope=scope);},onClick:function(e){if(!this.disabled&&this.fireEvent("click",this,e)!==false&&this.parentMenu.fireEvent("itemclick",this,e)!==false){this.handleClick(e);}else{e.stopEvent();}},activate:function(){if(this.disabled){return false;}
var li=this.container;li.addClass(this.activeClass);this.region=li.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(e){return!this.region||!this.region.contains(e.getPoint());},handleClick:function(e){if(this.hideOnClick){this.parentMenu.hide.defer(this.hideDelay,this.parentMenu,[true]);}},expandMenu:function(autoActivate){},hideMenu:function(){}});Ext.menu.TextItem=function(cfg){if(typeof cfg=='string'){cfg={text:cfg}}
Ext.menu.TextItem.superclass.constructor.call(this,cfg);};Ext.extend(Ext.menu.TextItem,Ext.menu.BaseItem,{hideOnClick:false,itemCls:"x-menu-text",onRender:function(){var s=document.createElement("span");s.className=this.itemCls;s.innerHTML=this.text;this.el=s;Ext.menu.TextItem.superclass.onRender.apply(this,arguments);}});Ext.menu.Separator=function(config){Ext.menu.Separator.superclass.constructor.call(this,config);};Ext.extend(Ext.menu.Separator,Ext.menu.BaseItem,{itemCls:"x-menu-sep",hideOnClick:false,onRender:function(li){var s=document.createElement("span");s.className=this.itemCls;s.innerHTML="&#160;";this.el=s;li.addClass("x-menu-sep-li");Ext.menu.Separator.superclass.onRender.apply(this,arguments);}});Ext.menu.Item=function(config){Ext.menu.Item.superclass.constructor.call(this,config);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(container,position){var el=document.createElement("a");el.hideFocus=true;el.unselectable="on";el.href=this.href||"#";if(this.hrefTarget){el.target=this.hrefTarget;}
el.className=this.itemCls+(this.menu?" x-menu-item-arrow":"")+(this.cls?" "+this.cls:"");el.innerHTML=String.format('<img src="{0}" class="x-menu-item-icon {2}" />{1}',this.icon||Ext.BLANK_IMAGE_URL,this.itemText||this.text,this.iconCls||'');this.el=el;Ext.menu.Item.superclass.onRender.call(this,container,position);},setText:function(text){this.text=text;if(this.rendered){this.el.update(String.format('<img src="{0}" class="x-menu-item-icon {2}">{1}',this.icon||Ext.BLANK_IMAGE_URL,this.text,this.iconCls||''));this.parentMenu.autoWidth();}},setIconClass:function(cls){var oldCls=this.iconCls;this.iconCls=cls;if(this.rendered){this.el.child('img.x-menu-item-icon').replaceClass(oldCls,this.iconCls);}},beforeDestroy:function(){if(this.menu){this.menu.destroy();}
Ext.menu.Item.superclass.beforeDestroy.call(this);},handleClick:function(e){if(!this.href){e.stopEvent();}
Ext.menu.Item.superclass.handleClick.apply(this,arguments);},activate:function(autoExpand){if(Ext.menu.Item.superclass.activate.apply(this,arguments)){this.focus();if(autoExpand){this.expandMenu();}}
return true;},shouldDeactivate:function(e){if(Ext.menu.Item.superclass.shouldDeactivate.call(this,e)){if(this.menu&&this.menu.isVisible()){return!this.menu.getEl().getRegion().contains(e.getPoint());}
return true;}
return false;},deactivate:function(){Ext.menu.Item.superclass.deactivate.apply(this,arguments);this.hideMenu();},expandMenu:function(autoActivate){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,[autoActivate]);}else if(this.menu.isVisible()&&autoActivate){this.menu.tryActivate(0,1);}}},deferExpand:function(autoActivate){delete this.showTimer;this.menu.show(this.container,this.parentMenu.subMenuAlign||"tl-tr?",this.parentMenu);if(autoActivate){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.menu.CheckItem=function(config){Ext.menu.CheckItem.superclass.constructor.call(this,config);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(c){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(state,suppressEvent){if(this.checked!=state&&this.fireEvent("beforecheckchange",this,state)!==false){if(this.container){this.container[state?"addClass":"removeClass"]("x-menu-item-checked");}
this.checked=state;if(suppressEvent!==true){this.fireEvent("checkchange",this,state);}}},handleClick:function(e){if(!this.disabled&&!(this.checked&&this.group)){this.setChecked(!this.checked);}
Ext.menu.CheckItem.superclass.handleClick.apply(this,arguments);}});Ext.menu.Adapter=function(component,config){Ext.menu.Adapter.superclass.constructor.call(this,config);this.component=component;};Ext.extend(Ext.menu.Adapter,Ext.menu.BaseItem,{canActivate:true,onRender:function(container,position){this.component.render(container);this.el=this.component.getEl();},activate:function(){if(this.disabled){return false;}
this.component.focus();this.fireEvent("activate",this);return true;},deactivate:function(){this.fireEvent("deactivate",this);},disable:function(){this.component.disable();Ext.menu.Adapter.superclass.disable.call(this);},enable:function(){this.component.enable();Ext.menu.Adapter.superclass.enable.call(this);}});Ext.menu.DateItem=function(config){Ext.menu.DateItem.superclass.constructor.call(this,new Ext.DatePicker(config),config);this.picker=this.component;this.addEvents('select');this.picker.on("render",function(picker){picker.getEl().swallowEvent("click");picker.container.addClass("x-menu-date-item");});this.picker.on("select",this.onSelect,this);};Ext.extend(Ext.menu.DateItem,Ext.menu.Adapter,{onSelect:function(picker,date){this.fireEvent("select",this,date,picker);Ext.menu.DateItem.superclass.handleClick.call(this);}});Ext.menu.ColorItem=function(config){Ext.menu.ColorItem.superclass.constructor.call(this,new Ext.ColorPalette(config),config);this.palette=this.component;this.relayEvents(this.palette,["select"]);if(this.selectHandler){this.on('select',this.selectHandler,this.scope);}};Ext.extend(Ext.menu.ColorItem,Ext.menu.Adapter);Ext.menu.DateMenu=function(config){Ext.menu.DateMenu.superclass.constructor.call(this,config);this.plain=true;var di=new Ext.menu.DateItem(config);this.add(di);this.picker=di.picker;this.relayEvents(di,["select"]);this.on('beforeshow',function(){if(this.picker){this.picker.hideMonthPicker(true);}},this);};Ext.extend(Ext.menu.DateMenu,Ext.menu.Menu,{cls:'x-date-menu',beforeDestroy:function(){this.picker.destroy();}});Ext.menu.ColorMenu=function(config){Ext.menu.ColorMenu.superclass.constructor.call(this,config);this.plain=true;var ci=new Ext.menu.ColorItem(config);this.add(ci);this.palette=ci.palette;this.relayEvents(ci,["select"]);};Ext.extend(Ext.menu.ColorMenu,Ext.menu.Menu,{beforeDestroy:function(){this.palette.destroy();}});Ext.form.Field=Ext.extend(Ext.BoxComponent,{invalidClass:"x-form-invalid",invalidText:"The value in this field is invalid",focusClass:"x-form-focus",validationEvent:"keyup",validateOnBlur:true,validationDelay:250,defaultAutoCreate:{tag:"input",type:"text",size:"20",autocomplete:"off"},fieldClass:"x-form-field",msgTarget:'qtip',msgFx:'normal',readOnly:false,disabled:false,isFormField:true,hasFocus:false,initComponent:function(){Ext.form.Field.superclass.initComponent.call(this);this.addEvents('focus','blur','specialkey','change','invalid','valid');},getName:function(){return this.rendered&&this.el.dom.name?this.el.dom.name:(this.hiddenName||'');},onRender:function(ct,position){Ext.form.Field.superclass.onRender.call(this,ct,position);if(!this.el){var cfg=this.getAutoCreate();if(!cfg.name){cfg.name=this.name||this.id;}
if(this.inputType){cfg.type=this.inputType;}
this.el=ct.createChild(cfg,position);}
var type=this.el.dom.type;if(type){if(type=='password'){type='text';}
this.el.addClass('x-form-'+type);}
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]);},initValue:function(){if(this.value!==undefined){this.setValue(this.value);}else if(this.el.dom.value.length>0&&this.el.dom.value!=this.emptyText){this.setValue(this.el.dom.value);}
this.originalValue=this.getValue();},isDirty:function(){if(this.disabled){return false;}
return String(this.getValue())!==String(this.originalValue);},afterRender:function(){Ext.form.Field.superclass.afterRender.call(this);this.initEvents();this.initValue();},fireKey:function(e){if(e.isSpecialKey()){this.fireEvent("specialkey",this,e);}},reset:function(){this.setValue(this.originalValue);this.clearInvalid();},initEvents:function(){this.el.on(Ext.isIE||Ext.isSafari3?"keydown":"keypress",this.fireKey,this);this.el.on("focus",this.onFocus,this);var o=this.inEditor&&Ext.isWindows&&Ext.isGecko?{buffer:10}:null;this.el.on("blur",this.onBlur,this,o);},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 v=this.getValue();if(String(v)!==String(this.startValue)){this.fireEvent('change',this,v,this.startValue);}
this.fireEvent("blur",this);},isValid:function(preventMark){if(this.disabled){return true;}
var restore=this.preventMark;this.preventMark=preventMark===true;var v=this.validateValue(this.processValue(this.getRawValue()));this.preventMark=restore;return v;},validate:function(){if(this.disabled||this.validateValue(this.processValue(this.getRawValue()))){this.clearInvalid();return true;}
return false;},processValue:function(value){return value;},validateValue:function(value){return true;},markInvalid:function(msg){if(!this.rendered||this.preventMark){return;}
this.el.addClass(this.invalidClass);msg=msg||this.invalidText;switch(this.msgTarget){case'qtip':this.el.dom.qtip=msg;this.el.dom.qclass='x-form-invalid-tip';if(Ext.QuickTips){Ext.QuickTips.enable();}
break;case'title':this.el.dom.title=msg;break;case'under':if(!this.errorEl){var elp=this.getErrorCt();if(!elp){this.el.dom.title=msg;break;}
this.errorEl=elp.createChild({cls:'x-form-invalid-msg'});this.errorEl.setWidth(elp.getWidth(true)-20);}
this.errorEl.update(msg);Ext.form.Field.msgFx[this.msgFx].show(this.errorEl,this);break;case'side':if(!this.errorIcon){var elp=this.getErrorCt();if(!elp){this.el.dom.title=msg;break;}
this.errorIcon=elp.createChild({cls:'x-form-invalid-icon'});}
this.alignErrorIcon();this.errorIcon.dom.qtip=msg;this.errorIcon.dom.qclass='x-form-invalid-tip';this.errorIcon.show();this.on('resize',this.alignErrorIcon,this);break;default:var t=Ext.getDom(this.msgTarget);t.innerHTML=msg;t.style.display=this.msgDisplay;break;}
this.fireEvent('invalid',this,msg);},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]);},clearInvalid:function(){if(!this.rendered||this.preventMark){return;}
this.el.removeClass(this.invalidClass);switch(this.msgTarget){case'qtip':this.el.dom.qtip='';break;case'title':this.el.dom.title='';break;case'under':if(this.errorEl){Ext.form.Field.msgFx[this.msgFx].hide(this.errorEl,this);}
break;case'side':if(this.errorIcon){this.errorIcon.dom.qtip='';this.errorIcon.hide();this.un('resize',this.alignErrorIcon,this);}
break;default:var t=Ext.getDom(this.msgTarget);t.innerHTML='';t.style.display='none';break;}
this.fireEvent('valid',this);},getRawValue:function(){var v=this.rendered?this.el.getValue():Ext.value(this.value,'');if(v===this.emptyText){v='';}
return v;},getValue:function(){if(!this.rendered){return this.value;}
var v=this.el.getValue();if(v===this.emptyText||v===undefined){v='';}
return v;},setRawValue:function(v){return this.el.dom.value=(v===null||v===undefined?'':v);},setValue:function(v){this.value=v;if(this.rendered){this.el.dom.value=(v===null||v===undefined?'':v);this.validate();}},adjustSize:function(w,h){var s=Ext.form.Field.superclass.adjustSize.call(this,w,h);s.width=this.adjustWidth(this.el.dom.tagName,s.width);return s;},adjustWidth:function(tag,w){tag=tag.toLowerCase();if(typeof w=='number'&&!Ext.isSafari){if(Ext.isIE&&(tag=='input'||tag=='textarea')){if(tag=='input'&&!Ext.isStrict){return this.inEditor?w:w-3;}
if(tag=='input'&&Ext.isStrict){return w-(Ext.isIE6?4:1);}
if(tag=='textarea'&&Ext.isStrict){return w-2;}}else if(Ext.isOpera&&Ext.isStrict){if(tag=='input'){return w+2;}
if(tag=='textarea'){return w-2;}}}
return w;}});Ext.form.MessageTargets={'qtip':{mark:function(f){this.el.dom.qtip=msg;this.el.dom.qclass='x-form-invalid-tip';if(Ext.QuickTips){Ext.QuickTips.enable();}},clear:function(f){this.el.dom.qtip='';}},'title':{mark:function(f){this.el.dom.title=msg;},clear:function(f){this.el.dom.title='';}},'under':{mark:function(f){if(!this.errorEl){var elp=this.getErrorCt();if(!elp){this.el.dom.title=msg;return;}
this.errorEl=elp.createChild({cls:'x-form-invalid-msg'});this.errorEl.setWidth(elp.getWidth(true)-20);}
this.errorEl.update(msg);Ext.form.Field.msgFx[this.msgFx].show(this.errorEl,this);},clear:function(f){if(this.errorEl){Ext.form.Field.msgFx[this.msgFx].hide(this.errorEl,this);}else{this.el.dom.title='';}}},'side':{mark:function(f){if(!this.errorIcon){var elp=this.getErrorCt();if(!elp){this.el.dom.title=msg;return;}
this.errorIcon=elp.createChild({cls:'x-form-invalid-icon'});}
this.alignErrorIcon();this.errorIcon.dom.qtip=msg;this.errorIcon.dom.qclass='x-form-invalid-tip';this.errorIcon.show();this.on('resize',this.alignErrorIcon,this);},clear:function(f){if(this.errorIcon){this.errorIcon.dom.qtip='';this.errorIcon.hide();this.un('resize',this.alignErrorIcon,this);}else{this.el.dom.title='';}}},'around':{mark:function(f){},clear:function(f){}}};Ext.form.Field.msgFx={normal:{show:function(msgEl,f){msgEl.setDisplayed('block');},hide:function(msgEl,f){msgEl.setDisplayed(false).update('');}},slide:{show:function(msgEl,f){msgEl.slideIn('t',{stopFx:true});},hide:function(msgEl,f){msgEl.slideOut('t',{stopFx:true,useDisplay:true});}},slideRight:{show:function(msgEl,f){msgEl.fixDisplay();msgEl.alignTo(f.el,'tl-tr');msgEl.slideIn('l',{stopFx:true});},hide:function(msgEl,f){msgEl.slideOut('l',{stopFx:true,useDisplay:true});}}};Ext.reg('field',Ext.form.Field);Ext.form.TextField=Ext.extend(Ext.form.Field,{grow:false,growMin:30,growMax:800,vtype:null,maskRe:null,disableKeyFilter:false,allowBlank:true,minLength:0,maxLength:Number.MAX_VALUE,minLengthText:"The minimum length for this field is {0}",maxLengthText:"The maximum length for this field is {0}",selectOnFocus:false,blankText:"This field is required",validator:null,regex:null,regexText:"",emptyText:null,emptyClass:'x-form-empty-field',initComponent:function(){Ext.form.TextField.superclass.initComponent.call(this);this.addEvents('autosize','keydown','keyup','keypress');},initEvents:function(){Ext.form.TextField.superclass.initEvents.call(this);if(this.validationEvent=='keyup'){this.validationTask=new Ext.util.DelayedTask(this.validate,this);this.el.on('keyup',this.filterValidation,this);}
else if(this.validationEvent!==false){this.el.on(this.validationEvent,this.validate,this,{buffer:this.validationDelay});}
if(this.selectOnFocus||this.emptyText){this.on("focus",this.preFocus,this);this.el.on('mousedown',function(){if(!this.hasFocus){this.el.on('mouseup',function(e){e.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.el.on("keypress",this.filterKeys,this);}
if(this.grow){this.el.on("keyup",this.onKeyUpBuffered,this,{buffer:50});this.el.on("click",this.autoSize,this);}
if(this.enableKeyEvents){this.el.on("keyup",this.onKeyUp,this);this.el.on("keydown",this.onKeyDown,this);this.el.on("keypress",this.onKeyPress,this);}},processValue:function(value){if(this.stripCharsRe){var newValue=value.replace(this.stripCharsRe,'');if(newValue!==value){this.setRawValue(newValue);return newValue;}}
return value;},filterValidation:function(e){if(!e.isNavKeyPress()){this.validationTask.delay(this.validationDelay);}},onDisable:function(){Ext.form.TextField.superclass.onDisable.call(this);if(Ext.isIE){this.el.dom.unselectable='on';}},onEnable:function(){Ext.form.TextField.superclass.onEnable.call(this);if(Ext.isIE){this.el.dom.unselectable='';}},onKeyUpBuffered:function(e){if(!e.isNavKeyPress()){this.autoSize();}},onKeyUp:function(e){this.fireEvent('keyup',this,e);},onKeyDown:function(e){this.fireEvent('keydown',this,e);},onKeyPress:function(e){this.fireEvent('keypress',this,e);},reset:function(){Ext.form.TextField.superclass.reset.call(this);this.applyEmptyText();},applyEmptyText:function(){if(this.rendered&&this.emptyText&&this.getRawValue().length<1&&!this.hasFocus){this.setRawValue(this.emptyText);this.el.addClass(this.emptyClass);}},preFocus:function(){if(this.emptyText){if(this.el.dom.value==this.emptyText){this.setRawValue('');}
this.el.removeClass(this.emptyClass);}
if(this.selectOnFocus){this.el.dom.select();}},postBlur:function(){this.applyEmptyText();},filterKeys:function(e){if(e.ctrlKey){return;}
var k=e.getKey();if(Ext.isGecko&&(e.isNavKeyPress()||k==e.BACKSPACE||(k==e.DELETE&&e.button==-1))){return;}
var c=e.getCharCode(),cc=String.fromCharCode(c);if(!Ext.isGecko&&e.isSpecialKey()&&!cc){return;}
if(!this.maskRe.test(cc)){e.stopEvent();}},setValue:function(v){if(this.emptyText&&this.el&&v!==undefined&&v!==null&&v!==''){this.el.removeClass(this.emptyClass);}
Ext.form.TextField.superclass.setValue.apply(this,arguments);this.applyEmptyText();this.autoSize();},validateValue:function(value){if(value.length<1||value===this.emptyText){if(this.allowBlank){this.clearInvalid();return true;}else{this.markInvalid(this.blankText);return false;}}
if(value.length<this.minLength){this.markInvalid(String.format(this.minLengthText,this.minLength));return false;}
if(value.length>this.maxLength){this.markInvalid(String.format(this.maxLengthText,this.maxLength));return false;}
if(this.vtype){var vt=Ext.form.VTypes;if(!vt[this.vtype](value,this)){this.markInvalid(this.vtypeText||vt[this.vtype+'Text']);return false;}}
if(typeof this.validator=="function"){var msg=this.validator(value);if(msg!==true){this.markInvalid(msg);return false;}}
if(this.regex&&!this.regex.test(value)){this.markInvalid(this.regexText);return false;}
return true;},selectText:function(start,end){var v=this.getRawValue();var doFocus=false;if(v.length>0){start=start===undefined?0:start;end=end===undefined?v.length:end;var d=this.el.dom;if(d.setSelectionRange){d.setSelectionRange(start,end);}else if(d.createTextRange){var range=d.createTextRange();range.moveStart("character",start);range.moveEnd("character",end-v.length);range.select();}
doFocus=Ext.isGecko||Ext.isOpera;}else{doFocus=true;}
if(doFocus){this.focus();}},autoSize:function(){if(!this.grow||!this.rendered){return;}
if(!this.metrics){this.metrics=Ext.util.TextMetrics.createInstance(this.el);}
var el=this.el;var v=el.dom.value;var d=document.createElement('div');d.appendChild(document.createTextNode(v));v=d.innerHTML;Ext.removeNode(d);d=null;v+="&#160;";var w=Math.min(this.growMax,Math.max(this.metrics.getWidth(v)+10,this.growMin));this.el.setWidth(w);this.fireEvent("autosize",this,w);}});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,autoSize:Ext.emptyFn,monitorTab:true,deferHeight:true,mimicing:false,onResize:function(w,h){Ext.form.TriggerField.superclass.onResize.call(this,w,h);if(typeof w=='number'){this.el.setWidth(this.adjustWidth('input',w-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(ct,position){Ext.form.TriggerField.superclass.onRender.call(this,ct,position);this.wrap=this.el.wrap({cls:"x-form-field-wrap"});this.trigger=this.wrap.createChild(this.triggerConfig||{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-form-trigger "+this.triggerClass});if(this.hideTrigger){this.trigger.setDisplayed(false);}
this.initTrigger();if(!this.width){this.wrap.setWidth(this.el.getWidth()+this.trigger.getWidth());}},afterRender:function(){Ext.form.TriggerField.superclass.afterRender.call(this);var y;if(Ext.isIE&&!this.hideTrigger&&this.el.getY()!=(y=this.trigger.getY())){this.el.position();this.el.setY(y);}},initTrigger:function(){this.trigger.on("click",this.onTriggerClick,this,{preventDefault:true});this.trigger.addClassOnOver('x-form-trigger-over');this.trigger.addClassOnClick('x-form-trigger-click');},onDestroy:function(){if(this.trigger){this.trigger.removeAllListeners();this.trigger.remove();}
if(this.wrap){this.wrap.remove();}
Ext.form.TriggerField.superclass.onDestroy.call(this);},onFocus:function(){Ext.form.TriggerField.superclass.onFocus.call(this);if(!this.mimicing){this.wrap.addClass('x-trigger-wrap-focus');this.mimicing=true;Ext.get(Ext.isIE?document.body:document).on("mousedown",this.mimicBlur,this,{delay:10});if(this.monitorTab){this.el.on("keydown",this.checkTab,this);}}},checkTab:function(e){if(e.getKey()==e.TAB){this.triggerBlur();}},onBlur:function(){},mimicBlur:function(e){if(!this.wrap.contains(e.target)&&this.validateBlur(e)){this.triggerBlur();}},triggerBlur:function(){this.mimicing=false;Ext.get(Ext.isIE?document.body:document).un("mousedown",this.mimicBlur,this);if(this.monitorTab&&this.el){this.el.un("keydown",this.checkTab,this);}
this.beforeBlur();if(this.wrap){this.wrap.removeClass('x-trigger-wrap-focus');}
Ext.form.TriggerField.superclass.onBlur.call(this);},beforeBlur:Ext.emptyFn,validateBlur:function(e){return true;},onDisable:function(){Ext.form.TriggerField.superclass.onDisable.call(this);if(this.wrap){this.wrap.addClass(this.disabledClass);this.el.removeClass(this.disabledClass);}},onEnable:function(){Ext.form.TriggerField.superclass.onEnable.call(this);if(this.wrap){this.wrap.removeClass(this.disabledClass);}},onShow:function(){if(this.wrap){this.wrap.dom.style.display='';this.wrap.dom.style.visibility='visible';}},onHide:function(){this.wrap.dom.style.display='none';},onTriggerClick:Ext.emptyFn});Ext.form.TwinTriggerField=Ext.extend(Ext.form.TriggerField,{initComponent:function(){Ext.form.TwinTriggerField.superclass.initComponent.call(this);this.triggerConfig={tag:'span',cls:'x-form-twin-triggers',cn:[{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-form-trigger "+this.trigger1Class},{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-form-trigger "+this.trigger2Class}]};},getTrigger:function(index){return this.triggers[index];},initTrigger:function(){var ts=this.trigger.select('.x-form-trigger',true);this.wrap.setStyle('overflow','hidden');var triggerField=this;ts.each(function(t,all,index){t.hide=function(){var w=triggerField.wrap.getWidth();this.dom.style.display='none';triggerField.el.setWidth(w-triggerField.trigger.getWidth());};t.show=function(){var w=triggerField.wrap.getWidth();this.dom.style.display='';triggerField.el.setWidth(w-triggerField.trigger.getWidth());};var triggerIndex='Trigger'+(index+1);if(this['hide'+triggerIndex]){t.dom.style.display='none';}
t.on("click",this['on'+triggerIndex+'Click'],this,{preventDefault:true});t.addClassOnOver('x-form-trigger-over');t.addClassOnClick('x-form-trigger-click');},this);this.triggers=ts.elements;},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:0,enterIsSpecial:false,preventScrollbars:false,onRender:function(ct,position){if(!this.el){this.defaultAutoCreate={tag:"textarea",style:"width:100px;height:60px;",autocomplete:"off"};}
Ext.form.TextArea.superclass.onRender.call(this,ct,position);if(this.grow){this.textSizeEl=Ext.DomHelper.append(document.body,{tag:"pre",cls:"x-form-grow-sizer"});if(this.preventScrollbars){this.el.setStyle("overflow","hidden");}
this.el.setHeight(this.growMin);}},onDestroy:function(){if(this.textSizeEl){Ext.removeNode(this.textSizeEl);}
Ext.form.TextArea.superclass.onDestroy.call(this);},fireKey:function(e){if(e.isSpecialKey()&&(this.enterIsSpecial||(e.getKey()!=e.ENTER||e.hasModifier()))){this.fireEvent("specialkey",this,e);}},onKeyUp:function(e){if(!e.isNavKeyPress()||e.getKey()==e.ENTER){this.autoSize();}
Ext.form.TextArea.superclass.onKeyUp.call(this,e);},autoSize:function(){if(!this.grow||!this.textSizeEl){return;}
var el=this.el;var v=el.dom.value;var ts=this.textSizeEl;ts.innerHTML='';ts.appendChild(document.createTextNode(v));v=ts.innerHTML;Ext.fly(ts).setWidth(this.el.getWidth());if(v.length<1){v="&#160;&#160;";}else{if(Ext.isIE){v=v.replace(/\n/g,'<p>&#160;</p>');}
v+=this.growAppend;}
ts.innerHTML=v;var h=Math.min(this.growMax,Math.max(ts.offsetHeight,this.growMin)+this.growPad);if(h!=this.lastHeight){this.lastHeight=h;this.el.setHeight(h);this.fireEvent("autosize",this,h);}}});Ext.reg('textarea',Ext.form.TextArea);Ext.form.NumberField=Ext.extend(Ext.form.TextField,{fieldClass:"x-form-field x-form-num-field",allowDecimals:true,decimalSeparator:".",decimalPrecision:2,allowNegative:true,minValue:Number.NEGATIVE_INFINITY,maxValue:Number.MAX_VALUE,minText:"The minimum value for this field is {0}",maxText:"The maximum value for this field is {0}",nanText:"{0} is not a valid number",baseChars:"0123456789",initEvents:function(){Ext.form.NumberField.superclass.initEvents.call(this);var allowed=this.baseChars+'';if(this.allowDecimals){allowed+=this.decimalSeparator;}
if(this.allowNegative){allowed+="-";}
this.stripCharsRe=new RegExp('[^'+allowed+']','gi');var keyPress=function(e){var k=e.getKey();if(!Ext.isIE&&(e.isSpecialKey()||k==e.BACKSPACE||k==e.DELETE)){return;}
var c=e.getCharCode();if(allowed.indexOf(String.fromCharCode(c))===-1){e.stopEvent();}};this.el.on("keypress",keyPress,this);},validateValue:function(value){if(!Ext.form.NumberField.superclass.validateValue.call(this,value)){return false;}
if(value.length<1){return true;}
value=String(value).replace(this.decimalSeparator,".");if(isNaN(value)){this.markInvalid(String.format(this.nanText,value));return false;}
var num=this.parseValue(value);if(num<this.minValue){this.markInvalid(String.format(this.minText,this.minValue));return false;}
if(num>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(v){v=typeof v=='number'?v:parseFloat(String(v).replace(this.decimalSeparator,"."));v=isNaN(v)?'':String(v).replace(".",this.decimalSeparator);Ext.form.NumberField.superclass.setValue.call(this,v);},parseValue:function(value){value=parseFloat(String(value).replace(this.decimalSeparator,"."));return isNaN(value)?'':value;},fixPrecision:function(value){var nan=isNaN(value);if(!this.allowDecimals||this.decimalPrecision==-1||nan||!value){return nan?'':value;}
return parseFloat(parseFloat(value).toFixed(this.decimalPrecision));},beforeBlur:function(){var v=this.parseValue(this.getRawValue());if(v||v===0){this.setValue(this.fixPrecision(v));}}});Ext.reg('numberfield',Ext.form.NumberField);Ext.form.DateField=Ext.extend(Ext.form.TriggerField,{format:"m/d/Y",altFormats:"m/d/Y|n/j/Y|n/j/y|m/j/y|n/d/y|m/j/Y|n/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d",disabledDaysText:"Disabled",disabledDatesText:"Disabled",minText:"The date in this field must be equal to or after {0}",maxText:"The date in this field must be equal to or before {0}",invalidText:"{0} is not a valid date - it must be in the format {1}",triggerClass:'x-form-date-trigger',showToday:true,defaultAutoCreate:{tag:"input",type:"text",size:"10",autocomplete:"off"},initComponent:function(){Ext.form.DateField.superclass.initComponent.call(this);this.addEvents('select');if(typeof this.minValue=="string"){this.minValue=this.parseDate(this.minValue);}
if(typeof this.maxValue=="string"){this.maxValue=this.parseDate(this.maxValue);}
this.disabledDatesRE=null;this.initDisabledDays();},initDisabledDays:function(){if(this.disabledDates){var dd=this.disabledDates;var re="(?:";for(var i=0;i<dd.length;i++){re+=dd[i];if(i!=dd.length-1)re+="|";}
this.disabledDatesRE=new RegExp(re+")");}},setDisabledDates:function(dd){this.disabledDates=dd;this.initDisabledDays();if(this.menu){this.menu.picker.setDisabledDates(this.disabledDatesRE);}},setDisabledDays:function(dd){this.disabledDays=dd;if(this.menu){this.menu.picker.setDisabledDays(dd);}},setMinValue:function(dt){this.minValue=(typeof dt=="string"?this.parseDate(dt):dt);if(this.menu){this.menu.picker.setMinDate(this.minValue);}},setMaxValue:function(dt){this.maxValue=(typeof dt=="string"?this.parseDate(dt):dt);if(this.menu){this.menu.picker.setMaxDate(this.maxValue);}},validateValue:function(value){value=this.formatDate(value);if(!Ext.form.DateField.superclass.validateValue.call(this,value)){return false;}
if(value.length<1){return true;}
var svalue=value;value=this.parseDate(value);if(!value){this.markInvalid(String.format(this.invalidText,svalue,this.format));return false;}
var time=value.getTime();if(this.minValue&&time<this.minValue.getTime()){this.markInvalid(String.format(this.minText,this.formatDate(this.minValue)));return false;}
if(this.maxValue&&time>this.maxValue.getTime()){this.markInvalid(String.format(this.maxText,this.formatDate(this.maxValue)));return false;}
if(this.disabledDays){var day=value.getDay();for(var i=0;i<this.disabledDays.length;i++){if(day===this.disabledDays[i]){this.markInvalid(this.disabledDaysText);return false;}}}
var fvalue=this.formatDate(value);if(this.disabledDatesRE&&this.disabledDatesRE.test(fvalue)){this.markInvalid(String.format(this.disabledDatesText,fvalue));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(date){Ext.form.DateField.superclass.setValue.call(this,this.formatDate(this.parseDate(date)));},parseDate:function(value){if(!value||Ext.isDate(value)){return value;}
var v=Date.parseDate(value,this.format);if(!v&&this.altFormats){if(!this.altFormatsArray){this.altFormatsArray=this.altFormats.split("|");}
for(var i=0,len=this.altFormatsArray.length;i<len&&!v;i++){v=Date.parseDate(value,this.altFormatsArray[i]);}}
return v;},onDestroy:function(){if(this.menu){this.menu.destroy();}
if(this.wrap){this.wrap.remove();}
Ext.form.DateField.superclass.onDestroy.call(this);},formatDate:function(date){return Ext.isDate(date)?date.dateFormat(this.format):date;},menuListeners:{select:function(m,d){this.setValue(d);this.fireEvent('select',this,d);},show:function(){this.onFocus();},hide:function(){this.focus.defer(10,this);var ml=this.menuListeners;this.menu.un("select",ml.select,this);this.menu.un("show",ml.show,this);this.menu.un("hide",ml.hide,this);}},onTriggerClick:function(){if(this.disabled){return;}
if(this.menu==null){this.menu=new Ext.menu.DateMenu();}
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.on(Ext.apply({},this.menuListeners,{scope:this}));this.menu.picker.setValue(this.getValue()||new Date());this.menu.show(this.el,"tl-bl?");},beforeBlur:function(){var v=this.parseDate(this.getRawValue());if(v){this.setValue(v);}}});Ext.reg('datefield',Ext.form.DateField);Ext.form.ComboBox=Ext.extend(Ext.form.TriggerField,{defaultAutoCreate:{tag:"input",type:"text",size:"24",autocomplete:"off"},listClass:'',selectedClass:'x-combo-selected',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,editable:true,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){this.allowDomMove=false;var s=Ext.getDom(this.transform);if(!this.hiddenName){this.hiddenName=s.name;}
if(!this.store){this.mode='local';var d=[],opts=s.options;for(var i=0,len=opts.length;i<len;i++){var o=opts[i];var value=(Ext.isIE?o.getAttributeNode('value').specified:o.hasAttribute('value'))?o.value:o.text;if(o.selected){this.value=value;}
d.push([value,o.text]);}
this.store=new Ext.data.SimpleStore({'id':0,fields:['value','text'],data:d});this.valueField='value';this.displayField='text';}
s.name=Ext.id();if(!this.lazyRender){this.target=true;this.el=Ext.DomHelper.insertBefore(s,this.autoCreate||this.defaultAutoCreate);Ext.removeNode(s);this.render(this.el.parentNode);}else{Ext.removeNode(s);}}
else if(Ext.isArray(this.store)){if(Ext.isArray(this.store[0])){this.store=new Ext.data.SimpleStore({fields:['value','text'],data:this.store});this.valueField='value';}else{this.store=new Ext.data.SimpleStore({fields:['text'],data:this.store,expandData:true});this.valueField='text';}
this.displayField='text';this.mode='local';}
this.selectedIndex=-1;if(this.mode=='local'){if(this.initialConfig.queryDelay===undefined){this.queryDelay=10;}
if(this.initialConfig.minChars===undefined){this.minChars=0;}}},onRender:function(ct,position){Ext.form.ComboBox.superclass.onRender.call(this,ct,position);if(this.hiddenName){this.hiddenField=this.el.insertSibling({tag:'input',type:'hidden',name:this.hiddenName,id:(this.hiddenId||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});}
if(!this.editable){this.editable=true;this.setEditable(false);}},initValue:function(){Ext.form.ComboBox.superclass.initValue.call(this);if(this.hiddenField){this.hiddenField.value=this.hiddenValue!==undefined?this.hiddenValue:this.value!==undefined?this.value:'';}},initList:function(){if(!this.list){var cls='x-combo-list';this.list=new Ext.Layer({shadow:this.shadow,cls:[cls,this.listClass].join(' '),constrain:false});var lw=this.listWidth||Math.max(this.wrap.getWidth(),this.minListWidth);this.list.setWidth(lw);this.list.swallowEvent('mousewheel');this.assetHeight=0;if(this.title){this.header=this.list.createChild({cls:cls+'-hd',html:this.title});this.assetHeight+=this.header.getHeight();}
this.innerList=this.list.createChild({cls:cls+'-inner'});this.innerList.on('mouseover',this.onViewOver,this);this.innerList.on('mousemove',this.onViewMove,this);this.innerList.setWidth(lw-this.list.getFrameWidth('lr'));if(this.pageSize){this.footer=this.list.createChild({cls:cls+'-ft'});this.pageTb=new Ext.PagingToolbar({store:this.store,pageSize:this.pageSize,renderTo:this.footer});this.assetHeight+=this.footer.getHeight();}
if(!this.tpl){this.tpl='<tpl for="."><div class="'+cls+'-item">{'+this.displayField+'}</div></tpl>';}
this.view=new Ext.DataView({applyTo:this.innerList,tpl:this.tpl,singleSelect:true,selectedClass:this.selectedClass,itemSelector:this.itemSelector||'.'+cls+'-item'});this.view.on('click',this.onViewClick,this);this.bindStore(this.store,true);if(this.resizable){this.resizer=new Ext.Resizable(this.list,{pinned:true,handles:'se'});this.resizer.on('resize',function(r,w,h){this.maxHeight=h-this.handleHeight-this.list.getFrameWidth('tb')-this.assetHeight;this.listWidth=w;this.innerList.setWidth(w-this.list.getFrameWidth('lr'));this.restrictHeight();},this);this[this.pageSize?'footer':'innerList'].setStyle('margin-bottom',this.handleHeight+'px');}}},getStore:function(){return this.store;},bindStore:function(store,initial){if(this.store&&!initial){this.store.un('beforeload',this.onBeforeLoad,this);this.store.un('load',this.onLoad,this);this.store.un('loadexception',this.collapse,this);if(!store){this.store=null;if(this.view){this.view.setStore(null);}}}
if(store){this.store=Ext.StoreMgr.lookup(store);this.store.on('beforeload',this.onBeforeLoad,this);this.store.on('load',this.onLoad,this);this.store.on('loadexception',this.collapse,this);if(this.view){this.view.setStore(store);}}},initEvents:function(){Ext.form.ComboBox.superclass.initEvents.call(this);this.keyNav=new Ext.KeyNav(this.el,{"up":function(e){this.inKeyMode=true;this.selectPrev();},"down":function(e){if(!this.isExpanded()){this.onTriggerClick();}else{this.inKeyMode=true;this.selectNext();}},"enter":function(e){this.onViewClick();this.delayedCheck=true;this.unsetDelayCheck.defer(10,this);},"esc":function(e){this.collapse();},"tab":function(e){this.onViewClick(false);return true;},scope:this,doRelay:function(foo,bar,hname){if(hname=='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.el.on("keyup",this.onKeyUp,this);}
if(this.forceSelection){this.on('blur',this.doForce,this);}},onDestroy:function(){if(this.view){Ext.destroy(this.view);}
if(this.list){if(this.innerList){this.innerList.un('mouseover',this.onViewOver,this);this.innerList.un('mousemove',this.onViewMove,this);}
this.list.destroy();}
if(this.dqTask){this.dqTask.cancel();this.dqTask=null;}
this.bindStore(null);Ext.form.ComboBox.superclass.onDestroy.call(this);},unsetDelayCheck:function(){delete this.delayedCheck;},fireKey:function(e){if(e.isNavKeyPress()&&!this.isExpanded()&&!this.delayedCheck){this.fireEvent("specialkey",this,e);}},onResize:function(w,h){Ext.form.ComboBox.superclass.onResize.apply(this,arguments);if(this.list&&this.listWidth===undefined){var lw=Math.max(w,this.minListWidth);this.list.setWidth(lw);this.innerList.setWidth(lw-this.list.getFrameWidth('lr'));}},onEnable:function(){Ext.form.ComboBox.superclass.onEnable.apply(this,arguments);if(this.hiddenField){this.hiddenField.disabled=false;}},onDisable:function(){Ext.form.ComboBox.superclass.onDisable.apply(this,arguments);if(this.hiddenField){this.hiddenField.disabled=true;}},setEditable:function(value){if(value==this.editable){return;}
this.editable=value;if(!value){this.el.dom.setAttribute('readOnly',true);this.el.on('mousedown',this.onTriggerClick,this);this.el.addClass('x-combo-noedit');}else{this.el.dom.removeAttribute('readOnly');this.el.un('mousedown',this.onTriggerClick,this);this.el.removeClass('x-combo-noedit');}},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 r=this.store.getAt(0);var newValue=r.data[this.displayField];var len=newValue.length;var selStart=this.getRawValue().length;if(selStart!=len){this.setRawValue(newValue);this.selectText(selStart,newValue.length);}}},onSelect:function(record,index){if(this.fireEvent('beforeselect',this,record,index)!==false){this.setValue(record.data[this.valueField||this.displayField]);this.collapse();this.fireEvent('select',this,record,index);}},getValue:function(){if(this.valueField){return typeof this.value!='undefined'?this.value:'';}else{return Ext.form.ComboBox.superclass.getValue.call(this);}},clearValue:function(){if(this.hiddenField){this.hiddenField.value='';}
this.setRawValue('');this.lastSelectionText='';this.applyEmptyText();this.value='';},setValue:function(v){var text=v;if(this.valueField){var r=this.findRecord(this.valueField,v);if(r){text=r.data[this.displayField];}else if(this.valueNotFoundText!==undefined){text=this.valueNotFoundText;}}
this.lastSelectionText=text;if(this.hiddenField){this.hiddenField.value=v;}
Ext.form.ComboBox.superclass.setValue.call(this,text);this.value=v;},findRecord:function(prop,value){var record;if(this.store.getCount()>0){this.store.each(function(r){if(r.data[prop]==value){record=r;return false;}});}
return record;},onViewMove:function(e,t){this.inKeyMode=false;},onViewOver:function(e,t){if(this.inKeyMode){return;}
var item=this.view.findItemFromChild(t);if(item){var index=this.view.indexOf(item);this.select(index,false);}},onViewClick:function(doFocus){var index=this.view.getSelectedIndexes()[0];var r=this.store.getAt(index);if(r){this.onSelect(r,index);}
if(doFocus!==false){this.el.focus();}},restrictHeight:function(){this.innerList.dom.style.height='';var inner=this.innerList.dom;var pad=this.list.getFrameWidth('tb')+(this.resizable?this.handleHeight:0)+this.assetHeight;var h=Math.max(inner.clientHeight,inner.offsetHeight,inner.scrollHeight);var ha=this.getPosition()[1]-Ext.getBody().getScroll().top;var hb=Ext.lib.Dom.getViewHeight()-ha-this.getSize().height;var space=Math.max(ha,hb,this.minHeight||0)-this.list.shadowOffset-pad-5;h=Math.min(h,space,this.maxHeight);this.innerList.setHeight(h);this.list.beginUpdate();this.list.setHeight(h+pad);this.list.alignTo(this.wrap,this.listAlign);this.list.endUpdate();},onEmptyResults:function(){this.collapse();},isExpanded:function(){return this.list&&this.list.isVisible();},selectByValue:function(v,scrollIntoView){if(v!==undefined&&v!==null){var r=this.findRecord(this.valueField||this.displayField,v);if(r){this.select(this.store.indexOf(r),scrollIntoView);return true;}}
return false;},select:function(index,scrollIntoView){this.selectedIndex=index;this.view.select(index);if(scrollIntoView!==false){var el=this.view.getNode(index);if(el){this.innerList.scrollChildIntoView(el,false);}}},selectNext:function(){var ct=this.store.getCount();if(ct>0){if(this.selectedIndex==-1){this.select(0);}else if(this.selectedIndex<ct-1){this.select(this.selectedIndex+1);}}},selectPrev:function(){var ct=this.store.getCount();if(ct>0){if(this.selectedIndex==-1){this.select(0);}else if(this.selectedIndex!=0){this.select(this.selectedIndex-1);}}},onKeyUp:function(e){if(this.editable!==false&&!e.isSpecialKey()){this.lastKey=e.getKey();this.dqTask.delay(this.queryDelay);}},validateBlur:function(){return!this.list||!this.list.isVisible();},initQuery:function(){this.doQuery(this.getRawValue());},doForce:function(){if(this.el.dom.value.length>0){this.el.dom.value=this.lastSelectionText===undefined?'':this.lastSelectionText;this.applyEmptyText();}},doQuery:function(q,forceAll){if(q===undefined||q===null){q='';}
var qe={query:q,forceAll:forceAll,combo:this,cancel:false};if(this.fireEvent('beforequery',qe)===false||qe.cancel){return false;}
q=qe.query;forceAll=qe.forceAll;if(forceAll===true||(q.length>=this.minChars)){if(this.lastQuery!==q){this.lastQuery=q;if(this.mode=='local'){this.selectedIndex=-1;if(forceAll){this.store.clearFilter();}else{this.store.filter(this.displayField,q);}
this.onLoad();}else{this.store.baseParams[this.queryParam]=q;this.store.load({params:this.getParams(q)});this.expand();}}else{this.selectedIndex=-1;this.onLoad();}}},getParams:function(q){var p={};if(this.pageSize){p.start=0;p.limit=this.pageSize;}
return p;},collapse:function(){if(!this.isExpanded()){return;}
this.list.hide();Ext.getDoc().un('mousewheel',this.collapseIf,this);Ext.getDoc().un('mousedown',this.collapseIf,this);this.fireEvent('collapse',this);},collapseIf:function(e){if(!e.within(this.wrap)&&!e.within(this.list)){this.collapse();}},expand:function(){if(this.isExpanded()||!this.hasFocus){return;}
this.list.alignTo(this.wrap,this.listAlign);this.list.show();this.innerList.setOverflow('auto');Ext.getDoc().on('mousewheel',this.collapseIf,this);Ext.getDoc().on('mousedown',this.collapseIf,this);this.fireEvent('expand',this);},onTriggerClick:function(){if(this.disabled){return;}
if(this.isExpanded()){this.collapse();this.el.focus();}else{this.onFocus({});if(this.triggerAction=='all'){this.doQuery(this.allQuery,true);}else{this.doQuery(this.getRawValue());}
this.el.focus();}}});Ext.reg('combo',Ext.form.ComboBox);Ext.form.Checkbox=Ext.extend(Ext.form.Field,{checkedCls:'x-form-check-checked',focusCls:'x-form-check-focus',overCls:'x-form-check-over',mouseDownCls:'x-form-check-down',tabIndex:0,checked:false,defaultAutoCreate:{tag:'input',type:'checkbox',autocomplete:'off'},baseCls:'x-form-check',initComponent:function(){Ext.form.Checkbox.superclass.initComponent.call(this);this.addEvents('check');},initEvents:function(){Ext.form.Checkbox.superclass.initEvents.call(this);this.initCheckEvents();},initCheckEvents:function(){this.innerWrap.removeAllListeners();this.innerWrap.addClassOnOver(this.overCls);this.innerWrap.addClassOnClick(this.mouseDownCls);this.innerWrap.on('click',this.onClick,this);this.innerWrap.on('keyup',this.onKeyUp,this);},onRender:function(ct,position){Ext.form.Checkbox.superclass.onRender.call(this,ct,position);if(this.inputValue!==undefined){this.el.dom.value=this.inputValue;}
this.el.addClass('x-hidden');this.innerWrap=this.el.wrap({tabIndex:this.tabIndex,cls:this.baseCls+'-wrap-inner'});this.wrap=this.innerWrap.wrap({cls:this.baseCls+'-wrap'});if(this.boxLabel){this.labelEl=this.innerWrap.createChild({tag:'label',htmlFor:this.el.id,cls:'x-form-cb-label',html:this.boxLabel});}
this.imageEl=this.innerWrap.createChild({tag:'img',src:Ext.BLANK_IMAGE_URL,cls:this.baseCls},this.el);if(this.checked){this.setValue(true);}else{this.checked=this.el.dom.checked;}
this.originalValue=this.checked;},afterRender:function(){Ext.form.Checkbox.superclass.afterRender.call(this);this.wrap[this.checked?'addClass':'removeClass'](this.checkedCls);},onDestroy:function(){if(this.rendered){Ext.destroy(this.imageEl,this.labelEl,this.innerWrap,this.wrap);}
Ext.form.Checkbox.superclass.onDestroy.call(this);},onFocus:function(e){Ext.form.Checkbox.superclass.onFocus.call(this,e);this.el.addClass(this.focusCls);},onBlur:function(e){Ext.form.Checkbox.superclass.onBlur.call(this,e);this.el.removeClass(this.focusCls);},onResize:function(){Ext.form.Checkbox.superclass.onResize.apply(this,arguments);if(!this.boxLabel&&!this.fieldLabel){this.el.alignTo(this.wrap,'c-c');}},onKeyUp:function(e){if(e.getKey()==Ext.EventObject.SPACE){this.onClick(e);}},onClick:function(e){if(!this.disabled&&!this.readOnly){this.toggleValue();}
e.stopEvent();},onEnable:function(){Ext.form.Checkbox.superclass.onEnable.call(this);this.initCheckEvents();},onDisable:function(){Ext.form.Checkbox.superclass.onDisable.call(this);this.innerWrap.removeAllListeners();},toggleValue:function(){this.setValue(!this.checked);},getResizeEl:function(){if(!this.resizeEl){this.resizeEl=Ext.isSafari?this.wrap:(this.wrap.up('.x-form-element',5)||this.wrap);}
return this.resizeEl;},getPositionEl:function(){return this.wrap;},getActionEl:function(){return this.wrap;},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,initValue:Ext.emptyFn,getValue:function(){if(this.rendered){return this.el.dom.checked;}
return this.checked;},setValue:function(v){var checked=this.checked;this.checked=(v===true||v==='true'||v=='1'||String(v).toLowerCase()=='on');if(this.rendered){this.el.dom.checked=this.checked;this.el.dom.defaultChecked=this.checked;this.wrap[this.checked?'addClass':'removeClass'](this.checkedCls);}
if(checked!=this.checked){this.fireEvent("check",this,this.checked);if(this.handler){this.handler.call(this.scope||this,this,this.checked);}}}});Ext.reg('checkbox',Ext.form.Checkbox);Ext.form.CheckboxGroup=Ext.extend(Ext.form.Field,{columns:'auto',vertical:false,allowBlank:true,blankText:"You must select at least one item in this group",defaultType:'checkbox',groupCls:'x-form-check-group',onRender:function(ct,position){if(!this.el){var panelCfg={cls:this.groupCls,layout:'column',border:false,renderTo:ct};var colCfg={defaultType:this.defaultType,layout:'form',border:false,defaults:{hideLabel:true,anchor:'100%'}}
if(this.items[0].items){Ext.apply(panelCfg,{layoutConfig:{columns:this.items.length},defaults:this.defaults,items:this.items})
for(var i=0,len=this.items.length;i<len;i++){Ext.applyIf(this.items[i],colCfg);};}else{var numCols,cols=[];if(typeof this.columns=='string'){this.columns=this.items.length;}
if(!Ext.isArray(this.columns)){var cs=[];for(var i=0;i<this.columns;i++){cs.push((100/this.columns)*.01);}
this.columns=cs;}
numCols=this.columns.length;for(var i=0;i<numCols;i++){var cc=Ext.apply({items:[]},colCfg);cc[this.columns[i]<=1?'columnWidth':'width']=this.columns[i];if(this.defaults){cc.defaults=Ext.apply(cc.defaults||{},this.defaults)}
cols.push(cc);};if(this.vertical){var rows=Math.ceil(this.items.length/numCols),ri=0;for(var i=0,len=this.items.length;i<len;i++){if(i>0&&i%rows==0){ri++;}
if(this.items[i].fieldLabel){this.items[i].hideLabel=false;}
cols[ri].items.push(this.items[i]);};}else{for(var i=0,len=this.items.length;i<len;i++){var ci=i%numCols;if(this.items[i].fieldLabel){this.items[i].hideLabel=false;}
cols[ci].items.push(this.items[i]);};}
Ext.apply(panelCfg,{layoutConfig:{columns:numCols},items:cols});}
this.panel=new Ext.Panel(panelCfg);this.el=this.panel.getEl();if(this.forId&&this.itemCls){var l=this.el.up(this.itemCls).child('label',true);if(l){l.setAttribute('htmlFor',this.forId);}}
var fields=this.panel.findBy(function(c){return c.isFormField;},this);this.items=new Ext.util.MixedCollection();this.items.addAll(fields);}
Ext.form.CheckboxGroup.superclass.onRender.call(this,ct,position);},validateValue:function(value){if(!this.allowBlank){var blank=true;this.items.each(function(f){if(f.checked){return blank=false;}},this);if(blank){this.markInvalid(this.blankText);return false;}}
return true;},onDisable:function(){this.items.each(function(item){item.disable();})},onEnable:function(){this.items.each(function(item){item.enable();})},onResize:function(w,h){this.panel.setSize(w,h);this.panel.doLayout();},reset:function(){Ext.form.CheckboxGroup.superclass.reset.call(this);this.items.each(function(c){if(c.reset){c.reset();}},this);},initValue:Ext.emptyFn,getValue:Ext.emptyFn,getRawValue:Ext.emptyFn,setValue:Ext.emptyFn,setRawValue:Ext.emptyFn});Ext.reg('checkboxgroup',Ext.form.CheckboxGroup);Ext.form.Radio=Ext.extend(Ext.form.Checkbox,{inputType:'radio',baseCls:'x-form-radio',getGroupValue:function(){var c=this.getParent().child('input[name='+this.el.dom.name+']:checked',true);return c?c.value:null;},getParent:function(){return this.el.up('form')||Ext.getBody();},toggleValue:function(){if(!this.checked){var els=this.getParent().select('input[name='+this.el.dom.name+']');els.each(function(el){if(el.dom.id==this.id){this.setValue(true);}else{Ext.getCmp(el.dom.id).setValue(false);}},this);}},setValue:function(v){if(typeof v=='boolean'){Ext.form.Radio.superclass.setValue.call(this,v);}else{var r=this.getParent().child('input[name='+this.el.dom.name+'][value='+v+']',true);if(r&&!r.checked){Ext.getCmp(r.id).toggleValue();};}},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn});Ext.reg('radio',Ext.form.Radio);Ext.form.RadioGroup=Ext.extend(Ext.form.CheckboxGroup,{allowBlank:true,blankText:"You must select one item in this group",defaultType:'radio',groupCls:'x-form-radio-group'});Ext.reg('radiogroup',Ext.form.RadioGroup);Ext.form.Hidden=Ext.extend(Ext.form.Field,{inputType:'hidden',onRender:function(){Ext.form.Hidden.superclass.onRender.apply(this,arguments);},initEvents:function(){this.originalValue=this.getValue();},setSize:Ext.emptyFn,setWidth:Ext.emptyFn,setHeight:Ext.emptyFn,setPosition:Ext.emptyFn,setPagePosition:Ext.emptyFn,markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn});Ext.reg('hidden',Ext.form.Hidden);Ext.form.BasicForm=function(el,config){Ext.apply(this,config);this.items=new Ext.util.MixedCollection(false,function(o){return o.id||(o.id=Ext.id());});this.addEvents('beforeaction','actionfailed','actioncomplete');if(el){this.initEl(el);}
Ext.form.BasicForm.superclass.constructor.call(this);};Ext.extend(Ext.form.BasicForm,Ext.util.Observable,{timeout:30,activeAction:null,trackResetOnLoad:false,initEl:function(el){this.el=Ext.get(el);this.id=this.el.id||Ext.id();if(!this.standardSubmit){this.el.on('submit',this.onSubmit,this);}
this.el.addClass('x-form');},getEl:function(){return this.el;},onSubmit:function(e){e.stopEvent();},destroy:function(){this.items.each(function(f){Ext.destroy(f);});if(this.el){this.el.removeAllListeners();this.el.remove();}
this.purgeListeners();},isValid:function(){var valid=true;this.items.each(function(f){if(!f.validate()){valid=false;}});return valid;},isDirty:function(){var dirty=false;this.items.each(function(f){if(f.isDirty()){dirty=true;return false;}});return dirty;},doAction:function(action,options){if(typeof action=='string'){action=new Ext.form.Action.ACTION_TYPES[action](this,options);}
if(this.fireEvent('beforeaction',this,action)!==false){this.beforeAction(action);action.run.defer(100,action);}
return this;},submit:function(options){if(this.standardSubmit){var v=this.isValid();if(v){this.el.dom.submit();}
return v;}
this.doAction('submit',options);return this;},load:function(options){this.doAction('load',options);return this;},updateRecord:function(record){record.beginEdit();var fs=record.fields;fs.each(function(f){var field=this.findField(f.name);if(field){record.set(f.name,field.getValue());}},this);record.endEdit();return this;},loadRecord:function(record){this.setValues(record.data);return this;},beforeAction:function(action){var o=action.options;if(o.waitMsg){if(this.waitMsgTarget===true){this.el.mask(o.waitMsg,'x-mask-loading');}else if(this.waitMsgTarget){this.waitMsgTarget=Ext.get(this.waitMsgTarget);this.waitMsgTarget.mask(o.waitMsg,'x-mask-loading');}else{Ext.MessageBox.wait(o.waitMsg,o.waitTitle||this.waitTitle||'Please Wait...');}}},afterAction:function(action,success){this.activeAction=null;var o=action.options;if(o.waitMsg){if(this.waitMsgTarget===true){this.el.unmask();}else if(this.waitMsgTarget){this.waitMsgTarget.unmask();}else{Ext.MessageBox.updateProgress(1);Ext.MessageBox.hide();}}
if(success){if(o.reset){this.reset();}
Ext.callback(o.success,o.scope,[this,action]);this.fireEvent('actioncomplete',this,action);}else{Ext.callback(o.failure,o.scope,[this,action]);this.fireEvent('actionfailed',this,action);}},findField:function(id){var field=this.items.get(id);if(!field){this.items.each(function(f){if(f.isFormField&&(f.dataIndex==id||f.id==id||f.getName()==id)){field=f;return false;}});}
return field||null;},markInvalid:function(errors){if(Ext.isArray(errors)){for(var i=0,len=errors.length;i<len;i++){var fieldError=errors[i];var f=this.findField(fieldError.id);if(f){f.markInvalid(fieldError.msg);}}}else{var field,id;for(id in errors){if(typeof errors[id]!='function'&&(field=this.findField(id))){field.markInvalid(errors[id]);}}}
return this;},setValues:function(values){if(Ext.isArray(values)){for(var i=0,len=values.length;i<len;i++){var v=values[i];var f=this.findField(v.id);if(f){f.setValue(v.value);if(this.trackResetOnLoad){f.originalValue=f.getValue();}}}}else{var field,id;for(id in values){if(typeof values[id]!='function'&&(field=this.findField(id))){field.setValue(values[id]);if(this.trackResetOnLoad){field.originalValue=field.getValue();}}}}
return this;},getValues:function(asString){var fs=Ext.lib.Ajax.serializeForm(this.el.dom);if(asString===true){return fs;}
return Ext.urlDecode(fs);},clearInvalid:function(){this.items.each(function(f){f.clearInvalid();});return this;},reset:function(){this.items.each(function(f){f.reset();});return this;},add:function(){this.items.addAll(Array.prototype.slice.call(arguments,0));return this;},remove:function(field){this.items.remove(field);return this;},render:function(){this.items.each(function(f){if(f.isFormField&&!f.rendered&&document.getElementById(f.id)){f.applyToMarkup(f.id);}});return this;},applyToFields:function(o){this.items.each(function(f){Ext.apply(f,o);});return this;},applyIfToFields:function(o){this.items.each(function(f){Ext.applyIf(f,o);});return this;}});Ext.BasicForm=Ext.form.BasicForm;Ext.FormPanel=Ext.extend(Ext.Panel,{buttonAlign:'center',minButtonWidth:75,labelAlign:'left',monitorValid:false,monitorPoll:200,layout:'form',initComponent:function(){this.form=this.createForm();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';}
Ext.FormPanel.superclass.initComponent.call(this);this.initItems();this.addEvents('clientvalidation');this.relayEvents(this.form,['beforeaction','actionfailed','actioncomplete']);},createForm:function(){delete this.initialConfig.listeners;return new Ext.form.BasicForm(null,this.initialConfig);},initFields:function(){var f=this.form;var formPanel=this;var fn=function(c){if(c.isFormField){f.add(c);}else if(c.doLayout&&c!=formPanel){Ext.applyIf(c,{labelAlign:c.ownerCt.labelAlign,labelWidth:c.ownerCt.labelWidth,itemCls:c.ownerCt.itemCls});if(c.items){c.items.each(fn);}}}
this.items.each(fn);},getLayoutTarget:function(){return this.form.el;},getForm:function(){return this.form;},onRender:function(ct,position){this.initFields();Ext.FormPanel.superclass.onRender.call(this,ct,position);this.form.initEl(this.body);},beforeDestroy:function(){Ext.FormPanel.superclass.beforeDestroy.call(this);this.stopMonitoring();Ext.destroy(this.form);},initEvents:function(){Ext.FormPanel.superclass.initEvents.call(this);this.items.on('remove',this.onRemove,this);this.items.on('add',this.onAdd,this);if(this.monitorValid){this.startMonitoring();}},onAdd:function(ct,c){if(c.isFormField){this.form.add(c);}},onRemove:function(c){if(c.isFormField){Ext.destroy(c.container.up('.x-form-item'));this.form.remove(c);}},startMonitoring:function(){if(!this.bound){this.bound=true;Ext.TaskMgr.start({run:this.bindHandler,interval:this.monitorPoll||200,scope:this});}},stopMonitoring:function(){this.bound=false;},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(){if(!this.bound){return false;}
var valid=true;this.form.items.each(function(f){if(!f.isValid(true)){valid=false;return false;}});if(this.buttons){for(var i=0,len=this.buttons.length;i<len;i++){var btn=this.buttons[i];if(btn.formBind===true&&btn.disabled===valid){btn.setDisabled(!valid);}}}
this.fireEvent('clientvalidation',this,valid);}});Ext.reg('form',Ext.FormPanel);Ext.form.FormPanel=Ext.FormPanel;Ext.form.FieldSet=Ext.extend(Ext.Panel,{baseCls:'x-fieldset',layout:'form',animCollapse:false,onRender:function(ct,position){if(!this.el){this.el=document.createElement('fieldset');this.el.id=this.id;if(this.title||this.header||this.checkboxToggle){this.el.appendChild(document.createElement('legend')).className='x-fieldset-header';}}
Ext.form.FieldSet.superclass.onRender.call(this,ct,position);if(this.checkboxToggle){var o=typeof this.checkboxToggle=='object'?this.checkboxToggle:{tag:'input',type:'checkbox',name:this.checkboxName||this.id+'-checkbox'};this.checkbox=this.header.insertFirst(o);this.checkbox.dom.checked=!this.collapsed;this.checkbox.on('click',this.onCheckClick,this);}},onCollapse:function(doAnim,animArg){if(this.checkbox){this.checkbox.dom.checked=false;}
Ext.form.FieldSet.superclass.onCollapse.call(this,doAnim,animArg);},onExpand:function(doAnim,animArg){if(this.checkbox){this.checkbox.dom.checked=true;}
Ext.form.FieldSet.superclass.onExpand.call(this,doAnim,animArg);},onCheckClick:function(){this[this.checkbox.dom.checked?'expand':'collapse']();},beforeDestroy:function(){if(this.checkbox){this.checkbox.un('click',this.onCheckClick,this);}
Ext.form.FieldSet.superclass.beforeDestroy.call(this);}});Ext.reg('fieldset',Ext.form.FieldSet);Ext.form.HtmlEditor=Ext.extend(Ext.form.Field,{enableFormat:true,enableFontSize:true,enableColors:true,enableAlignments:true,enableLists:true,enableSourceEdit:true,enableLinks:true,enableFont:true,createLinkText:'Please enter the URL for the link:',defaultLinkValue:'http:/'+'/',fontFamilies:['Arial','Courier New','Tahoma','Times New Roman','Verdana'],defaultFont:'tahoma',validationEvent:false,deferHeight:true,initialized:false,activated:false,sourceEditMode:false,onFocus:Ext.emptyFn,iframePad:3,hideMode:'offsets',defaultAutoCreate:{tag:"textarea",style:"width:500px;height:300px;",autocomplete:"off"},initComponent:function(){this.addEvents('initialize','activate','beforesync','beforepush','sync','push','editmodechange')},createFontOptions:function(){var buf=[],fs=this.fontFamilies,ff,lc;for(var i=0,len=fs.length;i<len;i++){ff=fs[i];lc=ff.toLowerCase();buf.push('<option value="',lc,'" style="font-family:',ff,';"',(this.defaultFont==lc?' selected="true">':'>'),ff,'</option>');}
return buf.join('');},createToolbar:function(editor){var tipsEnabled=Ext.QuickTips&&Ext.QuickTips.isEnabled();function btn(id,toggle,handler){return{itemId:id,cls:'x-btn-icon x-edit-'+id,enableToggle:toggle!==false,scope:editor,handler:handler||editor.relayBtnCmd,clickEvent:'mousedown',tooltip:tipsEnabled?editor.buttonTips[id]||undefined:undefined,tabIndex:-1};}
var tb=new Ext.Toolbar({renderTo:this.wrap.dom.firstChild});tb.el.on('click',function(e){e.preventDefault();});if(this.enableFont&&!Ext.isSafari2){this.fontSelect=tb.el.createChild({tag:'select',cls:'x-font-select',html:this.createFontOptions()});this.fontSelect.on('change',function(){var font=this.fontSelect.dom.value;this.relayCmd('fontname',font);this.deferFocus();},this);tb.add(this.fontSelect.dom,'-');};if(this.enableFormat){tb.add(btn('bold'),btn('italic'),btn('underline'));};if(this.enableFontSize){tb.add('-',btn('increasefontsize',false,this.adjustFont),btn('decreasefontsize',false,this.adjustFont));};if(this.enableColors){tb.add('-',{itemId:'forecolor',cls:'x-btn-icon x-edit-forecolor',clickEvent:'mousedown',tooltip:tipsEnabled?editor.buttonTips['forecolor']||undefined:undefined,tabIndex:-1,menu:new Ext.menu.ColorMenu({allowReselect:true,focus:Ext.emptyFn,value:'000000',plain:true,selectHandler:function(cp,color){this.execCmd('forecolor',Ext.isSafari||Ext.isIE?'#'+color:color);this.deferFocus();},scope:this,clickEvent:'mousedown'})},{itemId:'backcolor',cls:'x-btn-icon x-edit-backcolor',clickEvent:'mousedown',tooltip:tipsEnabled?editor.buttonTips['backcolor']||undefined:undefined,tabIndex:-1,menu:new Ext.menu.ColorMenu({focus:Ext.emptyFn,value:'FFFFFF',plain:true,allowReselect:true,selectHandler:function(cp,color){if(Ext.isGecko){this.execCmd('useCSS',false);this.execCmd('hilitecolor',color);this.execCmd('useCSS',true);this.deferFocus();}else{this.execCmd(Ext.isOpera?'hilitecolor':'backcolor',Ext.isSafari||Ext.isIE?'#'+color:color);this.deferFocus();}},scope:this,clickEvent:'mousedown'})});};if(this.enableAlignments){tb.add('-',btn('justifyleft'),btn('justifycenter'),btn('justifyright'));};if(!Ext.isSafari2){if(this.enableLinks){tb.add('-',btn('createlink',false,this.createLink));};if(this.enableLists){tb.add('-',btn('insertorderedlist'),btn('insertunorderedlist'));}
if(this.enableSourceEdit){tb.add('-',btn('sourceedit',true,function(btn){this.toggleSourceEdit(btn.pressed);}));}}
this.tb=tb;},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(ct,position){Ext.form.HtmlEditor.superclass.onRender.call(this,ct,position);this.el.dom.style.border='0 none';this.el.dom.setAttribute('tabIndex',-1);this.el.addClass('x-hidden');if(Ext.isIE){this.el.applyStyles('margin-top:-1px;margin-bottom:-1px;')}
this.wrap=this.el.wrap({cls:'x-html-editor-wrap',cn:{cls:'x-html-editor-tb'}});this.createToolbar(this);this.tb.items.each(function(item){if(item.itemId!='sourceedit'){item.disable();}});var iframe=document.createElement('iframe');iframe.name=Ext.id();iframe.frameBorder='0';iframe.src=Ext.isIE?Ext.SSL_SECURE_URL:"javascript:;";this.wrap.dom.appendChild(iframe);this.iframe=iframe;this.initFrame();if(this.autoMonitorDesignMode!==false){this.monitorTask=Ext.TaskMgr.start({run:this.checkDesignMode,scope:this,interval:100});}
if(!this.width){var sz=this.el.getSize();this.setSize(sz.width,this.height||sz.height);}},initFrame:function(){this.doc=this.getDoc();this.win=this.getWin();this.doc.open();this.doc.write(this.getDocMarkup());this.doc.close();var task={run:function(){if(this.doc.body||this.doc.readyState=='complete'){Ext.TaskMgr.stop(task);this.doc.designMode="on";this.initEditor.defer(10,this);}},interval:10,duration:10000,scope:this};Ext.TaskMgr.start(task);},checkDesignMode:function(){if(this.wrap&&this.wrap.dom.offsetWidth){var doc=this.getDoc();if(!doc){return;}
if(!doc.editorInitialized||String(doc.designMode).toLowerCase()!='on'){this.initFrame();}}},onResize:function(w,h){Ext.form.HtmlEditor.superclass.onResize.apply(this,arguments);if(this.el&&this.iframe){if(typeof w=='number'){var aw=w-this.wrap.getFrameWidth('lr');this.el.setWidth(this.adjustWidth('textarea',aw));this.iframe.style.width=Math.max(aw,0)+'px';}
if(typeof h=='number'){var ah=h-this.wrap.getFrameWidth('tb')-this.tb.el.getHeight();this.el.setHeight(this.adjustWidth('textarea',ah));this.iframe.style.height=Math.max(ah,0)+'px';if(this.doc){this.getEditorBody().style.height=Math.max((ah-(this.iframePad*2)),0)+'px';}}}},toggleSourceEdit:function(sourceEditMode){if(sourceEditMode===undefined){sourceEditMode=!this.sourceEditMode;}
this.sourceEditMode=sourceEditMode===true;var btn=this.tb.items.get('sourceedit');if(btn.pressed!==this.sourceEditMode){btn.toggle(this.sourceEditMode);return;}
if(this.sourceEditMode){this.tb.items.each(function(item){if(item.itemId!='sourceedit'){item.disable();}});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.tb.items.each(function(item){item.enable();});}
this.pushValue();this.iframe.className='';this.el.addClass('x-hidden');this.el.dom.setAttribute('tabIndex',-1);this.deferFocus();}
var lastSize=this.lastSize;if(lastSize){delete this.lastSize;this.setSize(lastSize);}
this.fireEvent('editmodechange',this,this.sourceEditMode);},createLink:function(){var url=prompt(this.createLinkText,this.defaultLinkValue);if(url&&url!='http:/'+'/'){this.relayCmd('createlink',url);}},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(v){Ext.form.HtmlEditor.superclass.setValue.call(this,v);this.pushValue();},cleanHtml:function(html){html=String(html);if(html.length>5){if(Ext.isSafari){html=html.replace(/\sclass="(?:Apple-style-span|khtml-block-placeholder)"/gi,'');}}
if(html=='&nbsp;'){html='';}
return html;},syncValue:function(){if(this.initialized){var bd=this.getEditorBody();var html=bd.innerHTML;if(Ext.isSafari){var bs=bd.getAttribute('style');var m=bs.match(/text-align:(.*?);/i);if(m&&m[1]){html='<div style="'+m[0]+'">'+html+'</div>';}}
html=this.cleanHtml(html);if(this.fireEvent('beforesync',this,html)!==false){this.el.dom.value=html;this.fireEvent('sync',this,html);}}},getValue:function(){this.syncValue();return Ext.form.HtmlEditor.superclass.getValue.call(this);},pushValue:function(){if(this.initialized){var v=this.el.dom.value;if(!this.activated&&v.length<1){v='&nbsp;';}
if(this.fireEvent('beforepush',this,v)!==false){this.getEditorBody().innerHTML=v;this.fireEvent('push',this,v);}}},deferFocus:function(){this.focus.defer(10,this);},focus:function(){if(this.win&&!this.sourceEditMode){this.win.focus();}else{this.el.focus();}},initEditor:function(){var dbody=this.getEditorBody();var ss=this.el.getStyles('font-size','font-family','background-image','background-repeat');ss['background-attachment']='fixed';dbody.bgProperties='fixed';Ext.DomHelper.applyStyles(dbody,ss);if(this.doc){try{Ext.EventManager.removeAll(this.doc);}catch(e){}}
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.isSafari||Ext.isOpera){Ext.EventManager.on(this.doc,'keydown',this.fixKeys,this);}
this.initialized=true;this.fireEvent('initialize',this);this.doc.editorInitialized=true;this.pushValue();},onDestroy:function(){if(this.monitorTask){Ext.TaskMgr.stop(this.monitorTask);}
if(this.rendered){this.tb.items.each(function(item){if(item.menu){item.menu.removeAll();if(item.menu.el){item.menu.el.destroy();}}
item.destroy();});this.wrap.dom.innerHTML='';this.wrap.remove();}},onFirstFocus:function(){this.activated=true;this.tb.items.each(function(item){item.enable();});if(Ext.isGecko){this.win.focus();var s=this.win.getSelection();if(!s.focusNode||s.focusNode.nodeType!=3){var r=s.getRangeAt(0);r.selectNodeContents(this.getEditorBody());r.collapse(true);this.deferFocus();}
try{this.execCmd('useCSS',true);this.execCmd('styleWithCSS',false);}catch(e){}}
this.fireEvent('activate',this);},adjustFont:function(btn){var adjust=btn.itemId=='increasefontsize'?1:-1;var v=parseInt(this.doc.queryCommandValue('FontSize')||2,10);if(Ext.isSafari3||Ext.isAir){if(v<=10){v=1+adjust;}else if(v<=13){v=2+adjust;}else if(v<=16){v=3+adjust;}else if(v<=18){v=4+adjust;}else if(v<=24){v=5+adjust;}else{v=6+adjust;}
v=v.constrain(1,6);}else{if(Ext.isSafari){adjust*=2;}
v=Math.max(1,v+adjust)+(Ext.isSafari?'px':0);}
this.execCmd('FontSize',v);},onEditorEvent:function(e){this.updateToolbar();},updateToolbar:function(){if(!this.activated){this.onFirstFocus();return;}
var btns=this.tb.items.map,doc=this.doc;if(this.enableFont&&!Ext.isSafari2){var name=(this.doc.queryCommandValue('FontName')||this.defaultFont).toLowerCase();if(name!=this.fontSelect.dom.value){this.fontSelect.dom.value=name;}}
if(this.enableFormat){btns.bold.toggle(doc.queryCommandState('bold'));btns.italic.toggle(doc.queryCommandState('italic'));btns.underline.toggle(doc.queryCommandState('underline'));}
if(this.enableAlignments){btns.justifyleft.toggle(doc.queryCommandState('justifyleft'));btns.justifycenter.toggle(doc.queryCommandState('justifycenter'));btns.justifyright.toggle(doc.queryCommandState('justifyright'));}
if(!Ext.isSafari2&&this.enableLists){btns.insertorderedlist.toggle(doc.queryCommandState('insertorderedlist'));btns.insertunorderedlist.toggle(doc.queryCommandState('insertunorderedlist'));}
Ext.menu.MenuMgr.hideAll();this.syncValue();},relayBtnCmd:function(btn){this.relayCmd(btn.itemId);},relayCmd:function(cmd,value){(function(){this.focus();this.execCmd(cmd,value);this.updateToolbar();}).defer(10,this);},execCmd:function(cmd,value){this.doc.execCommand(cmd,false,value===undefined?null:value);this.syncValue();},applyCommand:function(e){if(e.ctrlKey){var c=e.getCharCode(),cmd;if(c>0){c=String.fromCharCode(c);switch(c){case'b':cmd='bold';break;case'i':cmd='italic';break;case'u':cmd='underline';break;}
if(cmd){this.win.focus();this.execCmd(cmd);this.deferFocus();e.preventDefault();}}}},insertAtCursor:function(text){if(!this.activated){return;}
if(Ext.isIE){this.win.focus();var r=this.doc.selection.createRange();if(r){r.collapse(true);r.pasteHTML(text);this.syncValue();this.deferFocus();}}else if(Ext.isGecko||Ext.isOpera){this.win.focus();this.execCmd('InsertHTML',text);this.deferFocus();}else if(Ext.isSafari){this.execCmd('InsertText',text);this.deferFocus();}},fixKeys:function(){if(Ext.isIE){return function(e){var k=e.getKey(),r;if(k==e.TAB){e.stopEvent();r=this.doc.selection.createRange();if(r){r.collapse(true);r.pasteHTML('&nbsp;&nbsp;&nbsp;&nbsp;');this.deferFocus();}}else if(k==e.ENTER){r=this.doc.selection.createRange();if(r){var target=r.parentElement();if(!target||target.tagName.toLowerCase()!='li'){e.stopEvent();r.pasteHTML('<br />');r.collapse(false);r.select();}}}};}else if(Ext.isOpera){return function(e){var k=e.getKey();if(k==e.TAB){e.stopEvent();this.win.focus();this.execCmd('InsertHTML','&nbsp;&nbsp;&nbsp;&nbsp;');this.deferFocus();}};}else if(Ext.isSafari){return function(e){var k=e.getKey();if(k==e.TAB){e.stopEvent();this.execCmd('InsertText','\t');this.deferFocus();}};}}(),getToolbar:function(){return this.tb;},buttonTips:{bold:{title:'Bold (Ctrl+B)',text:'Make the selected text bold.',cls:'x-html-editor-tip'},italic:{title:'Italic (Ctrl+I)',text:'Make the selected text italic.',cls:'x-html-editor-tip'},underline:{title:'Underline (Ctrl+U)',text:'Underline the selected text.',cls:'x-html-editor-tip'},increasefontsize:{title:'Grow Text',text:'Increase the font size.',cls:'x-html-editor-tip'},decreasefontsize:{title:'Shrink Text',text:'Decrease the font size.',cls:'x-html-editor-tip'},backcolor:{title:'Text Highlight Color',text:'Change the background color of the selected text.',cls:'x-html-editor-tip'},forecolor:{title:'Font Color',text:'Change the color of the selected text.',cls:'x-html-editor-tip'},justifyleft:{title:'Align Text Left',text:'Align text to the left.',cls:'x-html-editor-tip'},justifycenter:{title:'Center Text',text:'Center text in the editor.',cls:'x-html-editor-tip'},justifyright:{title:'Align Text Right',text:'Align text to the right.',cls:'x-html-editor-tip'},insertunorderedlist:{title:'Bullet List',text:'Start a bulleted list.',cls:'x-html-editor-tip'},insertorderedlist:{title:'Numbered List',text:'Start a numbered list.',cls:'x-html-editor-tip'},createlink:{title:'Hyperlink',text:'Make the selected text a hyperlink.',cls:'x-html-editor-tip'},sourceedit:{title:'Source Edit',text:'Switch to source editing mode.',cls:'x-html-editor-tip'}}});Ext.reg('htmleditor',Ext.form.HtmlEditor);Ext.form.TimeField=Ext.extend(Ext.form.ComboBox,{minValue:null,maxValue:null,minText:"The time in this field must be equal to or after {0}",maxText:"The time in this field must be equal to or before {0}",invalidText:"{0} is not a valid time",format:"g:i A",altFormats:"g:ia|g:iA|g:i a|g:i A|h:i|g:i|H:i|ga|ha|gA|h a|g a|g A|gi|hi|gia|hia|g|H",increment:15,mode:'local',triggerAction:'all',typeAhead:false,initDate:'1/1/2008',initComponent:function(){Ext.form.TimeField.superclass.initComponent.call(this);if(typeof this.minValue=="string"){this.minValue=this.parseDate(this.minValue);}
if(typeof this.maxValue=="string"){this.maxValue=this.parseDate(this.maxValue);}
if(!this.store){var min=this.parseDate(this.minValue);if(!min){min=new Date(this.initDate).clearTime();}
var max=this.parseDate(this.maxValue);if(!max){max=new Date(this.initDate).clearTime().add('mi',(24*60)-1);}
var times=[];while(min<=max){times.push([min.dateFormat(this.format)]);min=min.add('mi',this.increment);}
this.store=new Ext.data.SimpleStore({fields:['text'],data:times});this.displayField='text';}},getValue:function(){var v=Ext.form.TimeField.superclass.getValue.call(this);return this.formatDate(this.parseDate(v))||'';},setValue:function(value){Ext.form.TimeField.superclass.setValue.call(this,this.formatDate(this.parseDate(value)));},validateValue:Ext.form.DateField.prototype.validateValue,parseDate:Ext.form.DateField.prototype.parseDate,formatDate:Ext.form.DateField.prototype.formatDate,beforeBlur:function(){var v=this.parseDate(this.getRawValue());if(v){this.setValue(v.dateFormat(this.format));}}});Ext.reg('timefield',Ext.form.TimeField);Ext.form.Label=Ext.extend(Ext.BoxComponent,{onRender:function(ct,position){if(!this.el){this.el=document.createElement('label');this.el.id=this.getId();this.el.innerHTML=this.text?Ext.util.Format.htmlEncode(this.text):(this.html||'');if(this.forId){this.el.setAttribute('for',this.forId);}}
Ext.form.Label.superclass.onRender.call(this,ct,position);},setText:function(t,encode){this.text=t;if(this.rendered){this.el.dom.innerHTML=encode!==false?Ext.util.Format.htmlEncode(t):t;}
return this;}});Ext.reg('label',Ext.form.Label);Ext.form.Action=function(form,options){this.form=form;this.options=options||{};};Ext.form.Action.CLIENT_INVALID='client';Ext.form.Action.SERVER_INVALID='server';Ext.form.Action.CONNECT_FAILURE='connect';Ext.form.Action.LOAD_FAILURE='load';Ext.form.Action.prototype={type:'default',run:function(options){},success:function(response){},handleResponse:function(response){},failure:function(response){this.response=response;this.failureType=Ext.form.Action.CONNECT_FAILURE;this.form.afterAction(this,false);},processResponse:function(response){this.response=response;if(!response.responseText){return true;}
this.result=this.handleResponse(response);return this.result;},getUrl:function(appendParams){var url=this.options.url||this.form.url||this.form.el.dom.action;if(appendParams){var p=this.getParams();if(p){url+=(url.indexOf('?')!=-1?'&':'?')+p;}}
return url;},getMethod:function(){return(this.options.method||this.form.method||this.form.el.dom.method||'POST').toUpperCase();},getParams:function(){var bp=this.form.baseParams;var p=this.options.params;if(p){if(typeof p=="object"){p=Ext.urlEncode(Ext.applyIf(p,bp));}else if(typeof p=='string'&&bp){p+='&'+Ext.urlEncode(bp);}}else if(bp){p=Ext.urlEncode(bp);}
return p;},createCallback:function(opts){var opts=opts||{};return{success:this.success,failure:this.failure,scope:this,timeout:(opts.timeout*1000)||(this.form.timeout*1000),upload:this.form.fileUpload?this.success:undefined};}};Ext.form.Action.Submit=function(form,options){Ext.form.Action.Submit.superclass.constructor.call(this,form,options);};Ext.extend(Ext.form.Action.Submit,Ext.form.Action,{type:'submit',run:function(){var o=this.options;var method=this.getMethod();var isGet=method=='GET';if(o.clientValidation===false||this.form.isValid()){Ext.Ajax.request(Ext.apply(this.createCallback(o),{form:this.form.el.dom,url:this.getUrl(isGet),method:method,headers:o.headers,params:!isGet?this.getParams():null,isUpload:this.form.fileUpload}));}else if(o.clientValidation!==false){this.failureType=Ext.form.Action.CLIENT_INVALID;this.form.afterAction(this,false);}},success:function(response){var result=this.processResponse(response);if(result===true||result.success){this.form.afterAction(this,true);return;}
if(result.errors){this.form.markInvalid(result.errors);this.failureType=Ext.form.Action.SERVER_INVALID;}
this.form.afterAction(this,false);},handleResponse:function(response){if(this.form.errorReader){var rs=this.form.errorReader.read(response);var errors=[];if(rs.records){for(var i=0,len=rs.records.length;i<len;i++){var r=rs.records[i];errors[i]=r.data;}}
if(errors.length<1){errors=null;}
return{success:rs.success,errors:errors};}
return Ext.decode(response.responseText);}});Ext.form.Action.Load=function(form,options){Ext.form.Action.Load.superclass.constructor.call(this,form,options);this.reader=this.form.reader;};Ext.extend(Ext.form.Action.Load,Ext.form.Action,{type:'load',run:function(){Ext.Ajax.request(Ext.apply(this.createCallback(this.options),{method:this.getMethod(),url:this.getUrl(false),headers:this.options.headers,params:this.getParams()}));},success:function(response){var result=this.processResponse(response);if(result===true||!result.success||!result.data){this.failureType=Ext.form.Action.LOAD_FAILURE;this.form.afterAction(this,false);return;}
this.form.clearInvalid();this.form.setValues(result.data);this.form.afterAction(this,true);},handleResponse:function(response){if(this.form.reader){var rs=this.form.reader.read(response);var data=rs.records&&rs.records[0]?rs.records[0].data:null;return{success:rs.success,data:data};}
return Ext.decode(response.responseText);}});Ext.form.Action.ACTION_TYPES={'load':Ext.form.Action.Load,'submit':Ext.form.Action.Submit};Ext.form.VTypes=function(){var alpha=/^[a-zA-Z_]+$/;var alphanum=/^[a-zA-Z0-9_]+$/;var email=/^([\w]+)(\.[\w]+)*@([\w\-]+\.){1,5}([A-Za-z]){2,4}$/;var url=/(((https?)|(ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i;return{'email':function(v){return email.test(v);},'emailText':'This field should be an e-mail address in the format "user@domain.com"','emailMask':/[a-z0-9_\.\-@]/i,'url':function(v){return url.test(v);},'urlText':'This field should be a URL in the format "http:/'+'/www.domain.com"','alpha':function(v){return alpha.test(v);},'alphaText':'This field should only contain letters and _','alphaMask':/[a-z_]/i,'alphanum':function(v){return alphanum.test(v);},'alphanumText':'This field should only contain letters, numbers and _','alphanumMask':/[a-z0-9_]/i};}();Ext.grid.GridPanel=Ext.extend(Ext.Panel,{ddText:"{0} selected row{1}",minColumnWidth:25,trackMouseOver:true,enableDragDrop:false,enableColumnMove:true,enableColumnHide:true,enableHdMenu:true,stripeRows:false,autoExpandColumn:false,autoExpandMin:50,autoExpandMax:1000,view:null,loadMask:false,deferRowRender:true,rendered:false,viewReady:false,stateEvents:["columnmove","columnresize","sortchange"],initComponent:function(){Ext.grid.GridPanel.superclass.initComponent.call(this);this.autoScroll=false;this.autoWidth=false;if(Ext.isArray(this.columns)){this.colModel=new Ext.grid.ColumnModel(this.columns);delete this.columns;}
if(this.ds){this.store=this.ds;delete this.ds;}
if(this.cm){this.colModel=this.cm;delete this.cm;}
if(this.sm){this.selModel=this.sm;delete this.sm;}
this.store=Ext.StoreMgr.lookup(this.store);this.addEvents("click","dblclick","contextmenu","mousedown","mouseup","mouseover","mouseout","keypress","keydown","cellmousedown","rowmousedown","headermousedown","cellclick","celldblclick","rowclick","rowdblclick","headerclick","headerdblclick","rowcontextmenu","cellcontextmenu","headercontextmenu","bodyscroll","columnresize","columnmove","sortchange");},onRender:function(ct,position){Ext.grid.GridPanel.superclass.onRender.apply(this,arguments);var c=this.body;this.el.addClass('x-grid-panel');var view=this.getView();view.init(this);c.on("mousedown",this.onMouseDown,this);c.on("click",this.onClick,this);c.on("dblclick",this.onDblClick,this);c.on("contextmenu",this.onContextMenu,this);c.on("keydown",this.onKeyDown,this);this.relayEvents(c,["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.colModel.on('hiddenchange',this.saveState,this,{delay:100});},applyState:function(state){var cm=this.colModel;var cs=state.columns;if(cs){for(var i=0,len=cs.length;i<len;i++){var s=cs[i];var c=cm.getColumnById(s.id);if(c){c.hidden=s.hidden;c.width=s.width;var oldIndex=cm.getIndexById(s.id);if(oldIndex!=i){cm.moveColumn(oldIndex,i);}}}}
if(state.sort){this.store[this.store.remoteSort?'setDefaultSort':'sort'](state.sort.field,state.sort.direction);}},getState:function(){var o={columns:[]};for(var i=0,c;c=this.colModel.config[i];i++){o.columns[i]={id:c.id,width:c.width};if(c.hidden){o.columns[i].hidden=true;}}
var ss=this.store.getSortState();if(ss){o.sort=ss;}
return o;},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(store,colModel){if(this.loadMask){this.loadMask.destroy();this.loadMask=new Ext.LoadMask(this.bwrap,Ext.apply({store:store},this.initialConfig.loadMask));}
this.view.bind(store,colModel);this.store=store;this.colModel=colModel;if(this.rendered){this.view.refresh(true);}},onKeyDown:function(e){this.fireEvent("keydown",e);},onDestroy:function(){if(this.rendered){if(this.loadMask){this.loadMask.destroy();}
var c=this.body;c.removeAllListeners();this.view.destroy();c.update("");}
this.colModel.purgeListeners();Ext.grid.GridPanel.superclass.onDestroy.call(this);},processEvent:function(name,e){this.fireEvent(name,e);var t=e.getTarget();var v=this.view;var header=v.findHeaderIndex(t);if(header!==false){this.fireEvent("header"+name,this,header,e);}else{var row=v.findRowIndex(t);var cell=v.findCellIndex(t);if(row!==false){this.fireEvent("row"+name,this,row,e);if(cell!==false){this.fireEvent("cell"+name,this,row,cell,e);}}}},onClick:function(e){this.processEvent("click",e);},onMouseDown:function(e){this.processEvent("mousedown",e);},onContextMenu:function(e,t){this.processEvent("contextmenu",e);},onDblClick:function(e){this.processEvent("dblclick",e);},walkCells:function(row,col,step,fn,scope){var cm=this.colModel,clen=cm.getColumnCount();var ds=this.store,rlen=ds.getCount(),first=true;if(step<0){if(col<0){row--;first=false;}
while(row>=0){if(!first){col=clen-1;}
first=false;while(col>=0){if(fn.call(scope||this,row,col,cm)===true){return[row,col];}
col--;}
row--;}}else{if(col>=clen){row++;first=false;}
while(row<rlen){if(!first){col=0;}
first=false;while(col<clen){if(fn.call(scope||this,row,col,cm)===true){return[row,col];}
col++;}
row++;}}
return null;},getSelections:function(){return this.selModel.getSelections();},onResize:function(){Ext.grid.GridPanel.superclass.onResize.apply(this,arguments);if(this.viewReady){this.view.layout();}},getGridEl:function(){return this.body;},stopEditing:Ext.emptyFn,getSelectionModel:function(){if(!this.selModel){this.selModel=new Ext.grid.RowSelectionModel(this.disableSelection?{selectRow:Ext.emptyFn}:null);}
return this.selModel;},getStore:function(){return this.store;},getColumnModel:function(){return this.colModel;},getView:function(){if(!this.view){this.view=new Ext.grid.GridView(this.viewConfig);}
return this.view;},getDragDropText:function(){var count=this.selModel.getCount();return String.format(this.ddText,count,count==1?'':'s');}});Ext.reg('grid',Ext.grid.GridPanel);Ext.grid.GridView=function(config){Ext.apply(this,config);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",borderWidth:2,tdClass:'x-grid3-cell',hdCls:'x-grid3-hd',cellSelectorDepth:4,rowSelectorDepth:10,cellSelector:'td.x-grid3-cell',rowSelector:'div.x-grid3-row',initTemplates:function(){var ts=this.templates||{};if(!ts.master){ts.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">{header}</div></div><div class="x-clear"></div></div>','<div class="x-grid3-scroller"><div class="x-grid3-body">{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(!ts.header){ts.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(!ts.hcell){ts.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(!ts.body){ts.body=new Ext.Template('{rows}');}
if(!ts.row){ts.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(!ts.cell){ts.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 k in ts){var t=ts[k];if(t&&typeof t.compile=='function'&&!t.compiled){t.disableFormats=true;t.compile();}}
this.templates=ts;this.colRe=new RegExp("x-grid3-td-([^\\s]+)","");},fly:function(el){if(!this._flyweight){this._flyweight=new Ext.Element.Flyweight(document.body);}
this._flyweight.dom=el;return this._flyweight;},getEditorParent:function(){return this.scroller.dom;},initElements:function(){var E=Ext.Element;var el=this.grid.getGridEl().dom.firstChild;var cs=el.childNodes;this.el=new E(el);this.mainWrap=new E(cs[0]);this.mainHd=new E(this.mainWrap.dom.firstChild);if(this.grid.hideHeaders){this.mainHd.setDisplayed(false);}
this.innerHd=this.mainHd.dom.firstChild;this.scroller=new E(this.mainWrap.dom.childNodes[1]);if(this.forceFit){this.scroller.setStyle('overflow-x','hidden');}
this.mainBody=new E(this.scroller.dom.firstChild);this.focusEl=new E(this.scroller.dom.childNodes[1]);this.focusEl.swallowEvent("click",true);this.resizeMarker=new E(cs[1]);this.resizeProxy=new E(cs[2]);},getRows:function(){return this.hasRows()?this.mainBody.dom.childNodes:[];},findCell:function(el){if(!el){return false;}
return this.fly(el).findParent(this.cellSelector,this.cellSelectorDepth);},findCellIndex:function(el,requiredCls){var cell=this.findCell(el);if(cell&&(!requiredCls||this.fly(cell).hasClass(requiredCls))){return this.getCellIndex(cell);}
return false;},getCellIndex:function(el){if(el){var m=el.className.match(this.colRe);if(m&&m[1]){return this.cm.getIndexById(m[1]);}}
return false;},findHeaderCell:function(el){var cell=this.findCell(el);return cell&&this.fly(cell).hasClass(this.hdCls)?cell:null;},findHeaderIndex:function(el){return this.findCellIndex(el,this.hdCls);},findRow:function(el){if(!el){return false;}
return this.fly(el).findParent(this.rowSelector,this.rowSelectorDepth);},findRowIndex:function(el){var r=this.findRow(el);return r?r.rowIndex:false;},getRow:function(row){return this.getRows()[row];},getCell:function(row,col){return this.getRow(row).getElementsByTagName('td')[col];},getHeaderCell:function(index){return this.mainHd.dom.getElementsByTagName('td')[index];},addRowClass:function(row,cls){var r=this.getRow(row);if(r){this.fly(r).addClass(cls);}},removeRowClass:function(row,cls){var r=this.getRow(row);if(r){this.fly(r).removeClass(cls);}},removeRow:function(row){Ext.removeNode(this.getRow(row));this.syncFocusEl(row);},removeRows:function(firstRow,lastRow){var bd=this.mainBody.dom;for(var rowIndex=firstRow;rowIndex<=lastRow;rowIndex++){Ext.removeNode(bd.childNodes[firstRow]);}
this.syncFocusEl(firstRow);},getScrollState:function(){var sb=this.scroller.dom;return{left:sb.scrollLeft,top:sb.scrollTop};},restoreScroll:function(state){var sb=this.scroller.dom;sb.scrollLeft=state.left;sb.scrollTop=state.top;},scrollToTop:function(){this.scroller.dom.scrollTop=0;this.scroller.dom.scrollLeft=0;},syncScroll:function(){this.syncHeaderScroll();var mb=this.scroller.dom;this.grid.fireEvent("bodyscroll",mb.scrollLeft,mb.scrollTop);},syncHeaderScroll:function(){var mb=this.scroller.dom;this.innerHd.scrollLeft=mb.scrollLeft;this.innerHd.scrollLeft=mb.scrollLeft;},updateSortIcon:function(col,dir){var sc=this.sortClasses;var hds=this.mainHd.select('td').removeClass(sc);hds.item(col).addClass(sc[dir=="DESC"?1:0]);},updateAllColumnWidths:function(){var tw=this.getTotalWidth();var clen=this.cm.getColumnCount();var ws=[];for(var i=0;i<clen;i++){ws[i]=this.getColumnWidth(i);}
this.innerHd.firstChild.firstChild.style.width=tw;for(var i=0;i<clen;i++){var hd=this.getHeaderCell(i);hd.style.width=ws[i];}
var ns=this.getRows(),row,trow;for(var i=0,len=ns.length;i<len;i++){row=ns[i];row.style.width=tw;if(row.firstChild){row.firstChild.style.width=tw;trow=row.firstChild.rows[0];for(var j=0;j<clen;j++){trow.childNodes[j].style.width=ws[j];}}}
this.onAllColumnWidthsUpdated(ws,tw);},updateColumnWidth:function(col,width){var w=this.getColumnWidth(col);var tw=this.getTotalWidth();this.innerHd.firstChild.firstChild.style.width=tw;var hd=this.getHeaderCell(col);hd.style.width=w;var ns=this.getRows(),row;for(var i=0,len=ns.length;i<len;i++){row=ns[i];row.style.width=tw;if(row.firstChild){row.firstChild.style.width=tw;row.firstChild.rows[0].childNodes[col].style.width=w;}}
this.onColumnWidthUpdated(col,w,tw);},updateColumnHidden:function(col,hidden){var tw=this.getTotalWidth();this.innerHd.firstChild.firstChild.style.width=tw;var display=hidden?'none':'';var hd=this.getHeaderCell(col);hd.style.display=display;var ns=this.getRows(),row;for(var i=0,len=ns.length;i<len;i++){row=ns[i];row.style.width=tw;if(row.firstChild){row.firstChild.style.width=tw;row.firstChild.rows[0].childNodes[col].style.display=display;}}
this.onColumnHiddenUpdated(col,hidden,tw);delete this.lastViewWidth;this.layout();},doRender:function(cs,rs,ds,startRow,colCount,stripe){var ts=this.templates,ct=ts.cell,rt=ts.row,last=colCount-1;var tstyle='width:'+this.getTotalWidth()+';';var buf=[],cb,c,p={},rp={tstyle:tstyle},r;for(var j=0,len=rs.length;j<len;j++){r=rs[j];cb=[];var rowIndex=(j+startRow);for(var i=0;i<colCount;i++){c=cs[i];p.id=c.id;p.css=i==0?'x-grid3-cell-first ':(i==last?'x-grid3-cell-last ':'');p.attr=p.cellAttr="";p.value=c.renderer(r.data[c.name],p,r,rowIndex,i,ds);p.style=c.style;if(p.value==undefined||p.value==="")p.value="&#160;";if(r.dirty&&typeof r.modified[c.name]!=='undefined'){p.css+=' x-grid3-dirty-cell';}
cb[cb.length]=ct.apply(p);}
var alt=[];if(stripe&&((rowIndex+1)%2==0)){alt[0]="x-grid3-row-alt";}
if(r.dirty){alt[1]=" x-grid3-dirty-row";}
rp.cols=colCount;if(this.getRowClass){alt[2]=this.getRowClass(r,rowIndex,rp,ds);}
rp.alt=alt.join(" ");rp.cells=cb.join("");buf[buf.length]=rt.apply(rp);}
return buf.join("");},processRows:function(startRow,skipStripe){if(this.ds.getCount()<1){return;}
skipStripe=skipStripe||!this.grid.stripeRows;startRow=startRow||0;var rows=this.getRows();var cls=' x-grid3-row-alt ';rows[0].className+=' x-grid3-row-first';rows[rows.length-1].className+=' x-grid3-row-last';for(var i=startRow,len=rows.length;i<len;i++){var row=rows[i];row.rowIndex=i;if(!skipStripe){var isAlt=((i+1)%2==0);var hasAlt=(' '+row.className+' ').indexOf(cls)!=-1;if(isAlt==hasAlt){continue;}
if(isAlt){row.className+=" x-grid3-row-alt";}else{row.className=row.className.replace("x-grid3-row-alt","");}}}},afterRender:function(){this.mainBody.dom.innerHTML=this.renderRows();this.processRows(0,true);if(this.deferEmptyText!==true){this.applyEmptyText();}},renderUI:function(){var header=this.renderHeaders();var body=this.templates.body.apply({rows:''});var html=this.templates.master.apply({body:body,header:header});var g=this.grid;g.getGridEl().dom.innerHTML=html;this.initElements();Ext.fly(this.innerHd).on("click",this.handleHdDown,this);this.mainHd.on("mouseover",this.handleHdOver,this);this.mainHd.on("mouseout",this.handleHdOut,this);this.mainHd.on("mousemove",this.handleHdMove,this);this.scroller.on('scroll',this.syncScroll,this);if(g.enableColumnResize!==false){this.splitZone=new Ext.grid.GridView.SplitDragZone(g,this.mainHd.dom);}
if(g.enableColumnMove){this.columnDrag=new Ext.grid.GridView.ColumnDragZone(g,this.innerHd);this.columnDrop=new Ext.grid.HeaderDropZone(g,this.mainHd.dom);}
if(g.enableHdMenu!==false){if(g.enableColumnHide!==false){this.colMenu=new Ext.menu.Menu({id:g.id+"-hcols-menu"});this.colMenu.on("beforeshow",this.beforeColMenuShow,this);this.colMenu.on("itemclick",this.handleHdMenuClick,this);}
this.hmenu=new Ext.menu.Menu({id:g.id+"-hctx"});this.hmenu.add({id:"asc",text:this.sortAscText,cls:"xg-hmenu-sort-asc"},{id:"desc",text:this.sortDescText,cls:"xg-hmenu-sort-desc"});if(g.enableColumnHide!==false){this.hmenu.add('-',{id:"columns",text:this.columnsText,menu:this.colMenu,iconCls:'x-cols-icon'});}
this.hmenu.on("itemclick",this.handleHdMenuClick,this);}
if(g.trackMouseOver){this.mainBody.on("mouseover",this.onRowOver,this);this.mainBody.on("mouseout",this.onRowOut,this);}
if(g.enableDragDrop||g.enableDrag){this.dragZone=new Ext.grid.GridDragZone(g,{ddGroup:g.ddGroup||'GridDD'});}
this.updateHeaderSortState();},layout:function(){if(!this.mainBody){return;}
var g=this.grid;var c=g.getGridEl();var csize=c.getSize(true);var vw=csize.width;if(vw<20||csize.height<20){return;}
if(g.autoHeight){this.scroller.dom.style.overflow='visible';if(Ext.isSafari){this.scroller.dom.style.position='static';}}else{this.el.setSize(csize.width,csize.height);var hdHeight=this.mainHd.getHeight();var vh=csize.height-(hdHeight);this.scroller.setSize(vw,vh);if(this.innerHd){this.innerHd.style.width=(vw)+'px';}}
if(this.forceFit){if(this.lastViewWidth!=vw){this.fitColumns(false,false);this.lastViewWidth=vw;}}else{this.autoExpand();this.syncHeaderScroll();}
this.onLayout(vw,vh);},onLayout:function(vw,vh){},onColumnWidthUpdated:function(col,w,tw){this.focusEl.setWidth(tw);},onAllColumnWidthsUpdated:function(ws,tw){this.focusEl.setWidth(tw);},onColumnHiddenUpdated:function(col,hidden,tw){this.focusEl.setWidth(tw);},updateColumnText:function(col,text){},afterMove:function(colIndex){},init:function(grid){this.grid=grid;this.initTemplates();this.initData(grid.store,grid.colModel);this.initUI(grid);},getColumnId:function(index){return this.cm.getColumnId(index);},renderHeaders:function(){var cm=this.cm,ts=this.templates;var ct=ts.hcell;var cb=[],sb=[],p={};var len=cm.getColumnCount();var last=len-1;for(var i=0;i<len;i++){p.id=cm.getColumnId(i);p.value=cm.getColumnHeader(i)||"";p.style=this.getColumnStyle(i,true);p.tooltip=this.getColumnTooltip(i);p.css=i==0?'x-grid3-cell-first ':(i==last?'x-grid3-cell-last ':'');if(cm.config[i].align=='right'){p.istyle='padding-right:16px';}else{delete p.istyle;}
cb[cb.length]=ct.apply(p);}
return ts.header.apply({cells:cb.join(""),tstyle:'width:'+this.getTotalWidth()+';'});},getColumnTooltip:function(i){var tt=this.cm.getColumnTooltip(i);if(tt){if(Ext.QuickTips.isEnabled()){return'ext:qtip="'+tt+'"';}else{return'title="'+tt+'"';}}
return"";},beforeUpdate:function(){this.grid.stopEditing(true);},updateHeaders:function(){this.innerHd.firstChild.innerHTML=this.renderHeaders();},focusRow:function(row){this.focusCell(row,0,false);},focusCell:function(row,col,hscroll){this.syncFocusEl(this.ensureVisible(row,col,hscroll));if(Ext.isGecko){this.focusEl.focus();}else{this.focusEl.focus.defer(1,this.focusEl);}},resolveCell:function(row,col,hscroll){if(typeof row!="number"){row=row.rowIndex;}
if(!this.ds){return null;}
if(row<0||row>=this.ds.getCount()){return null;}
col=(col!==undefined?col:0);var rowEl=this.getRow(row),cellEl;if(!(hscroll===false&&col===0)){while(this.cm.isHidden(col)){col++;}
cellEl=this.getCell(row,col);}
return{row:rowEl,cell:cellEl};},getResolvedXY:function(resolved){if(!resolved){return null;}
var s=this.scroller.dom,c=resolved.cell,r=resolved.row;return c?Ext.fly(c).getXY():[this.el.getX(),Ext.fly(r).getY()];},syncFocusEl:function(row,col,hscroll){var xy=row;if(!Ext.isArray(xy)){row=Math.min(row,Math.max(0,this.getRows().length-1));xy=this.getResolvedXY(this.resolveCell(row,col,hscroll));}
this.focusEl.setXY(xy||this.scroller.getXY());},ensureVisible:function(row,col,hscroll){var resolved=this.resolveCell(row,col,hscroll);if(!resolved||!resolved.row){return;}
var rowEl=resolved.row,cellEl=resolved.cell;var c=this.scroller.dom;var ctop=0;var p=rowEl,stop=this.el.dom;while(p&&p!=stop){ctop+=p.offsetTop;p=p.offsetParent;}
ctop-=this.mainHd.dom.offsetHeight;var cbot=ctop+rowEl.offsetHeight;var ch=c.clientHeight;var stop=parseInt(c.scrollTop,10);var sbot=stop+ch;if(ctop<stop){c.scrollTop=ctop;}else if(cbot>sbot){c.scrollTop=cbot-ch;}
if(hscroll!==false){var cleft=parseInt(cellEl.offsetLeft,10);var cright=cleft+cellEl.offsetWidth;var sleft=parseInt(c.scrollLeft,10);var sright=sleft+c.clientWidth;if(cleft<sleft){c.scrollLeft=cleft;}else if(cright>sright){c.scrollLeft=cright-c.clientWidth;}}
return this.getResolvedXY(resolved);},insertRows:function(dm,firstRow,lastRow,isUpdate){if(!isUpdate&&firstRow===0&&lastRow>=dm.getCount()-1){this.refresh();}else{if(!isUpdate){this.fireEvent("beforerowsinserted",this,firstRow,lastRow);}
var html=this.renderRows(firstRow,lastRow);var before=this.getRow(firstRow);if(before){Ext.DomHelper.insertHtml('beforeBegin',before,html);}else{Ext.DomHelper.insertHtml('beforeEnd',this.mainBody.dom,html);}
if(!isUpdate){this.fireEvent("rowsinserted",this,firstRow,lastRow);this.processRows(firstRow);}}
this.syncFocusEl(firstRow);},deleteRows:function(dm,firstRow,lastRow){if(dm.getRowCount()<1){this.refresh();}else{this.fireEvent("beforerowsdeleted",this,firstRow,lastRow);this.removeRows(firstRow,lastRow);this.processRows(firstRow);this.fireEvent("rowsdeleted",this,firstRow,lastRow);}},getColumnStyle:function(col,isHeader){var style=!isHeader?(this.cm.config[col].css||''):'';style+='width:'+this.getColumnWidth(col)+';';if(this.cm.isHidden(col)){style+='display:none;';}
var align=this.cm.config[col].align;if(align){style+='text-align:'+align+';';}
return style;},getColumnWidth:function(col){var w=this.cm.getColumnWidth(col);if(typeof w=='number'){return(Ext.isBorderBox?w:(w-this.borderWidth>0?w-this.borderWidth:0))+'px';}
return w;},getTotalWidth:function(){return this.cm.getTotalWidth()+'px';},fitColumns:function(preventRefresh,onlyExpand,omitColumn){var cm=this.cm,leftOver,dist,i;var tw=cm.getTotalWidth(false);var aw=this.grid.getGridEl().getWidth(true)-this.scrollOffset;if(aw<20){return;}
var extra=aw-tw;if(extra===0){return false;}
var vc=cm.getColumnCount(true);var ac=vc-(typeof omitColumn=='number'?1:0);if(ac===0){ac=1;omitColumn=undefined;}
var colCount=cm.getColumnCount();var cols=[];var extraCol=0;var width=0;var w;for(i=0;i<colCount;i++){if(!cm.isHidden(i)&&!cm.isFixed(i)&&i!==omitColumn){w=cm.getColumnWidth(i);cols.push(i);extraCol=i;cols.push(w);width+=w;}}
var frac=(aw-cm.getTotalWidth())/width;while(cols.length){w=cols.pop();i=cols.pop();cm.setColumnWidth(i,Math.max(this.grid.minColumnWidth,Math.floor(w+w*frac)),true);}
if((tw=cm.getTotalWidth(false))>aw){var adjustCol=ac!=vc?omitColumn:extraCol;cm.setColumnWidth(adjustCol,Math.max(1,cm.getColumnWidth(adjustCol)-(tw-aw)),true);}
if(preventRefresh!==true){this.updateAllColumnWidths();}
return true;},autoExpand:function(preventUpdate){var g=this.grid,cm=this.cm;if(!this.userResized&&g.autoExpandColumn){var tw=cm.getTotalWidth(false);var aw=this.grid.getGridEl().getWidth(true)-this.scrollOffset;if(tw!=aw){var ci=cm.getIndexById(g.autoExpandColumn);var currentWidth=cm.getColumnWidth(ci);var cw=Math.min(Math.max(((aw-tw)+currentWidth),g.autoExpandMin),g.autoExpandMax);if(cw!=currentWidth){cm.setColumnWidth(ci,cw,true);if(preventUpdate!==true){this.updateColumnWidth(ci,cw);}}}}},getColumnData:function(){var cs=[],cm=this.cm,colCount=cm.getColumnCount();for(var i=0;i<colCount;i++){var name=cm.getDataIndex(i);cs[i]={name:(typeof name=='undefined'?this.ds.fields.get(i).name:name),renderer:cm.getRenderer(i),id:cm.getColumnId(i),style:this.getColumnStyle(i)};}
return cs;},renderRows:function(startRow,endRow){var g=this.grid,cm=g.colModel,ds=g.store,stripe=g.stripeRows;var colCount=cm.getColumnCount();if(ds.getCount()<1){return"";}
var cs=this.getColumnData();startRow=startRow||0;endRow=typeof endRow=="undefined"?ds.getCount()-1:endRow;var rs=ds.getRange(startRow,endRow);return this.doRender(cs,rs,ds,startRow,colCount,stripe);},renderBody:function(){var markup=this.renderRows();return this.templates.body.apply({rows:markup});},refreshRow:function(record){var ds=this.ds,index;if(typeof record=='number'){index=record;record=ds.getAt(index);}else{index=ds.indexOf(record);}
var cls=[];this.insertRows(ds,index,index,true);this.getRow(index).rowIndex=index;this.onRemove(ds,record,index+1,true);this.fireEvent("rowupdated",this,index,record);},refresh:function(headersToo){this.fireEvent("beforerefresh",this);this.grid.stopEditing(true);var result=this.renderBody();this.mainBody.update(result);if(headersToo===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 state=this.ds.getSortState();if(!state){return;}
if(!this.sortState||(this.sortState.field!=state.field||this.sortState.direction!=state.direction)){this.grid.fireEvent('sortchange',this.grid,state);}
this.sortState=state;var sortColumn=this.cm.findColumnIndex(state.field);if(sortColumn!=-1){var sortDir=state.direction;this.updateSortIcon(sortColumn,sortDir);}},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 dds=Ext.dd.DDM.ids['gridHeader'+this.grid.getGridEl().id];if(dds){for(var dd in dds){if(!dds[dd].config.isTarget&&dds[dd].dragElId){var elid=dds[dd].dragElId;dds[dd].unreg();Ext.get(elid).remove();}else if(dds[dd].config.isTarget){dds[dd].proxyTop.remove();dds[dd].proxyBottom.remove();dds[dd].unreg();}
if(Ext.dd.DDM.locationCache[dd]){delete Ext.dd.DDM.locationCache[dd];}}
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 ct=this.grid.ownerCt;if(ct&&ct.getLayout()){ct.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(ds,cm){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(ds){ds.on("load",this.onLoad,this);ds.on("datachanged",this.onDataChange,this);ds.on("add",this.onAdd,this);ds.on("remove",this.onRemove,this);ds.on("update",this.onUpdate,this);ds.on("clear",this.onClear,this);}
this.ds=ds;if(this.cm){this.cm.un("configchange",this.onColConfigChange,this);this.cm.un("widthchange",this.onColWidthChange,this);this.cm.un("headerchange",this.onHeaderChange,this);this.cm.un("hiddenchange",this.onHiddenChange,this);this.cm.un("columnmoved",this.onColumnMove,this);this.cm.un("columnlockchange",this.onColumnLock,this);}
if(cm){delete this.lastViewWidth;cm.on("configchange",this.onColConfigChange,this);cm.on("widthchange",this.onColWidthChange,this);cm.on("headerchange",this.onHeaderChange,this);cm.on("hiddenchange",this.onHiddenChange,this);cm.on("columnmoved",this.onColumnMove,this);cm.on("columnlockchange",this.onColumnLock,this);}
this.cm=cm;},onDataChange:function(){this.refresh();this.updateHeaderSortState();this.syncFocusEl(0);},onClear:function(){this.refresh();this.syncFocusEl(0);},onUpdate:function(ds,record){this.refreshRow(record);},onAdd:function(ds,records,index){this.insertRows(ds,index,index+(records.length-1));},onRemove:function(ds,record,index,isUpdate){if(isUpdate!==true){this.fireEvent("beforerowremoved",this,index,record);}
this.removeRow(index);if(isUpdate!==true){this.processRows(index);this.applyEmptyText();this.fireEvent("rowremoved",this,index,record);}},onLoad:function(){this.scrollToTop();},onColWidthChange:function(cm,col,width){this.updateColumnWidth(col,width);},onHeaderChange:function(cm,col,text){this.updateHeaders();},onHiddenChange:function(cm,col,hidden){this.updateColumnHidden(col,hidden);},onColumnMove:function(cm,oldIndex,newIndex){this.indexMap=null;var s=this.getScrollState();this.refresh(true);this.restoreScroll(s);this.afterMove(newIndex);},onColConfigChange:function(){delete this.lastViewWidth;this.indexMap=null;this.refresh(true);},initUI:function(grid){grid.on("headerclick",this.onHeaderClick,this);},initEvents:function(){},onHeaderClick:function(g,index){if(this.headersDisabled||!this.cm.isSortable(index)){return;}
g.stopEditing(true);g.store.sort(this.cm.getDataIndex(index));},onRowOver:function(e,t){var row;if((row=this.findRowIndex(t))!==false){this.addRowClass(row,"x-grid3-row-over");}},onRowOut:function(e,t){var row;if((row=this.findRowIndex(t))!==false&&!e.within(this.getRow(row),true)){this.removeRowClass(row,"x-grid3-row-over");}},handleWheel:function(e){e.stopPropagation();},onRowSelect:function(row){this.addRowClass(row,"x-grid3-row-selected");},onRowDeselect:function(row){this.removeRowClass(row,"x-grid3-row-selected");},onCellSelect:function(row,col){var cell=this.getCell(row,col);if(cell){this.fly(cell).addClass("x-grid3-cell-selected");}},onCellDeselect:function(row,col){var cell=this.getCell(row,col);if(cell){this.fly(cell).removeClass("x-grid3-cell-selected");}},onColumnSplitterMoved:function(i,w){this.userResized=true;var cm=this.grid.colModel;cm.setColumnWidth(i,w,true);if(this.forceFit){this.fitColumns(true,false,i);this.updateAllColumnWidths();}else{this.updateColumnWidth(i,w);this.syncHeaderScroll();}
this.grid.fireEvent("columnresize",i,w);},handleHdMenuClick:function(item){var index=this.hdCtxIndex;var cm=this.cm,ds=this.ds;switch(item.id){case"asc":ds.sort(cm.getDataIndex(index),"ASC");break;case"desc":ds.sort(cm.getDataIndex(index),"DESC");break;default:index=cm.getIndexById(item.id.substr(4));if(index!=-1){if(item.checked&&cm.getColumnsBy(this.isHideableColumn,this).length<=1){this.onDenyColumnHide();return false;}
cm.setHidden(index,item.checked);}}
return true;},isHideableColumn:function(c){return!c.hidden&&!c.fixed;},beforeColMenuShow:function(){var cm=this.cm,colCount=cm.getColumnCount();this.colMenu.removeAll();for(var i=0;i<colCount;i++){if(cm.config[i].fixed!==true&&cm.config[i].hideable!==false){this.colMenu.add(new Ext.menu.CheckItem({id:"col-"+cm.getColumnId(i),text:cm.getColumnHeader(i),checked:!cm.isHidden(i),hideOnClick:false,disabled:cm.config[i].hideable===false}));}}},handleHdDown:function(e,t){if(Ext.fly(t).hasClass('x-grid3-hd-btn')){e.stopEvent();var hd=this.findHeaderCell(t);Ext.fly(hd).addClass('x-grid3-hd-menu-open');var index=this.getCellIndex(hd);this.hdCtxIndex=index;var ms=this.hmenu.items,cm=this.cm;ms.get("asc").setDisabled(!cm.isSortable(index));ms.get("desc").setDisabled(!cm.isSortable(index));this.hmenu.on("hide",function(){Ext.fly(hd).removeClass('x-grid3-hd-menu-open');},this,{single:true});this.hmenu.show(t,"tl-bl?");}},handleHdOver:function(e,t){var hd=this.findHeaderCell(t);if(hd&&!this.headersDisabled){this.activeHd=hd;this.activeHdIndex=this.getCellIndex(hd);var fly=this.fly(hd);this.activeHdRegion=fly.getRegion();if(!this.cm.isMenuDisabled(this.activeHdIndex)){fly.addClass("x-grid3-hd-over");this.activeHdBtn=fly.child('.x-grid3-hd-btn');if(this.activeHdBtn){this.activeHdBtn.dom.style.height=(hd.firstChild.offsetHeight-1)+'px';}}}},handleHdMove:function(e,t){if(this.activeHd&&!this.headersDisabled){var hw=this.splitHandleWidth||5;var r=this.activeHdRegion;var x=e.getPageX();var ss=this.activeHd.style;if(x-r.left<=hw&&this.cm.isResizable(this.activeHdIndex-1)){ss.cursor=Ext.isAir?'move':Ext.isSafari?'e-resize':'col-resize';}else if(r.right-x<=(!this.activeHdBtn?hw:2)&&this.cm.isResizable(this.activeHdIndex)){ss.cursor=Ext.isAir?'move':Ext.isSafari?'w-resize':'col-resize';}else{ss.cursor='';}}},handleHdOut:function(e,t){var hd=this.findHeaderCell(t);if(hd&&(!Ext.isIE||!e.within(hd,true))){this.activeHd=null;this.fly(hd).removeClass("x-grid3-hd-over");hd.style.cursor='';}},hasRows:function(){var fc=this.mainBody.dom.firstChild;return fc&&fc.className!='x-grid-empty';},bind:function(d,c){this.initData(d,c);}});Ext.grid.GridView.SplitDragZone=function(grid,hd){this.grid=grid;this.view=grid.getView();this.marker=this.view.resizeMarker;this.proxy=this.view.resizeProxy;Ext.grid.GridView.SplitDragZone.superclass.constructor.call(this,hd,"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(x,y){this.view.headersDisabled=true;var h=this.view.mainWrap.getHeight();this.marker.setHeight(h);this.marker.show();this.marker.alignTo(this.view.getHeaderCell(this.cellIndex),'tl-tl',[-2,0]);this.proxy.setHeight(h);var w=this.cm.getColumnWidth(this.cellIndex);var minw=Math.max(w-this.grid.minColumnWidth,0);this.resetConstraints();this.setXConstraint(minw,1000);this.setYConstraint(0,0);this.minX=x-minw;this.maxX=x+1000;this.startPos=x;Ext.dd.DDProxy.prototype.b4StartDrag.call(this,x,y);},handleMouseDown:function(e){var t=this.view.findHeaderCell(e.getTarget());if(t){var xy=this.view.fly(t).getXY(),x=xy[0],y=xy[1];var exy=e.getXY(),ex=exy[0],ey=exy[1];var w=t.offsetWidth,adjust=false;if((ex-x)<=this.hw){adjust=-1;}else if((x+w)-ex<=this.hw){adjust=0;}
if(adjust!==false){this.cm=this.grid.colModel;var ci=this.view.getCellIndex(t);if(adjust==-1){if(ci+adjust<0){return;}
while(this.cm.isHidden(ci+adjust)){--adjust;if(ci+adjust<0){return;}}}
this.cellIndex=ci+adjust;this.split=t.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(e);}}},endDrag:function(e){this.marker.hide();var v=this.view;var endX=Math.max(this.minX,e.getPageX());var diff=endX-this.startPos;v.onColumnSplitterMoved(this.cellIndex,this.cm.getColumnWidth(this.cellIndex)+diff);setTimeout(function(){v.headersDisabled=false;},50);},autoOffset:function(){this.setDelta(0,0);}});Ext.grid.GroupingView=Ext.extend(Ext.grid.GridView,{hideGroupedColumn:false,showGroupName:true,startCollapsed:false,enableGrouping:true,enableGroupingMenu:true,enableNoGroups:true,emptyGroupText:'(None)',ignoreAdd:false,groupTextTpl:'{text}',gidSeed:1000,initTemplates:function(){Ext.grid.GroupingView.superclass.initTemplates.call(this);this.state={};var sm=this.grid.getSelectionModel();sm.on(sm.selectRow?'beforerowselect':'beforecellselect',this.onBeforeRowSelect,this);if(!this.startGroup){this.startGroup=new Ext.XTemplate('<div id="{groupId}" class="x-grid-group {cls}">','<div id="{groupId}-hd" class="x-grid-group-hd" style="{style}"><div>',this.groupTextTpl,'</div></div>','<div id="{groupId}-bd" class="x-grid-group-body">');}
this.startGroup.compile();this.endGroup='</div></div>';},findGroup:function(el){return Ext.fly(el).up('.x-grid-group',this.mainBody.dom);},getGroups:function(){return this.hasRows()?this.mainBody.dom.childNodes:[];},onAdd:function(){if(this.enableGrouping&&!this.ignoreAdd){var ss=this.getScrollState();this.refresh();this.restoreScroll(ss);}else if(!this.enableGrouping){Ext.grid.GroupingView.superclass.onAdd.apply(this,arguments);}},onRemove:function(ds,record,index,isUpdate){Ext.grid.GroupingView.superclass.onRemove.apply(this,arguments);var g=document.getElementById(record._groupId);if(g&&g.childNodes[1].childNodes.length<1){Ext.removeNode(g);}
this.applyEmptyText();},refreshRow:function(record){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 field=this.getGroupField();var g=this.hmenu.items.get('groupBy');if(g){g.setDisabled(this.cm.config[this.hdCtxIndex].groupable===false);}
var s=this.hmenu.items.get('showGroups');if(s){s.setDisabled(!field&&this.cm.config[this.hdCtxIndex].groupable===false);s.setChecked(!!field,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('-',{id:'groupBy',text:this.groupByText,handler:this.onGroupByClick,scope:this,iconCls:'x-group-by-icon'});if(this.enableNoGroups){this.hmenu.add({id:'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(mi,checked){if(checked){this.onGroupByClick();}else{this.grid.store.clearGrouping();}},toggleGroup:function(group,expanded){this.grid.stopEditing(true);group=Ext.getDom(group);var gel=Ext.fly(group);expanded=expanded!==undefined?expanded:gel.hasClass('x-grid-group-collapsed');this.state[gel.dom.id]=expanded;gel[expanded?'removeClass':'addClass']('x-grid-group-collapsed');},toggleAllGroups:function(expanded){var groups=this.getGroups();for(var i=0,len=groups.length;i<len;i++){this.toggleGroup(groups[i],expanded);}},expandAllGroups:function(){this.toggleAllGroups(true);},collapseAllGroups:function(){this.toggleAllGroups(false);},interceptMouse:function(e){var hd=e.getTarget('.x-grid-group-hd',this.mainBody);if(hd){e.stopEvent();this.toggleGroup(hd.parentNode);}},getGroup:function(v,r,groupRenderer,rowIndex,colIndex,ds){var g=groupRenderer?groupRenderer(v,{},r,rowIndex,colIndex,ds):String(v);if(g===''){g=this.cm.config[colIndex].emptyGroupText||this.emptyGroupText;}
return g;},getGroupField:function(){return this.grid.store.getGroupState();},renderRows:function(){var groupField=this.getGroupField();var eg=!!groupField;if(this.hideGroupedColumn){var colIndex=this.cm.findColumnIndex(groupField);if(!eg&&this.lastGroupField!==undefined){this.mainBody.update('');this.cm.setHidden(this.cm.findColumnIndex(this.lastGroupField),false);delete this.lastGroupField;}else if(eg&&this.lastGroupField===undefined){this.lastGroupField=groupField;this.cm.setHidden(colIndex,true);}else if(eg&&this.lastGroupField!==undefined&&groupField!==this.lastGroupField){this.mainBody.update('');var oldIndex=this.cm.findColumnIndex(this.lastGroupField);this.cm.setHidden(oldIndex,false);this.lastGroupField=groupField;this.cm.setHidden(colIndex,true);}}
return Ext.grid.GroupingView.superclass.renderRows.apply(this,arguments);},doRender:function(cs,rs,ds,startRow,colCount,stripe){if(rs.length<1){return'';}
var groupField=this.getGroupField();var colIndex=this.cm.findColumnIndex(groupField);this.enableGrouping=!!groupField;if(!this.enableGrouping||this.isUpdating){return Ext.grid.GroupingView.superclass.doRender.apply(this,arguments);}
var gstyle='width:'+this.getTotalWidth()+';';var gidPrefix=this.grid.getGridEl().id;var cfg=this.cm.config[colIndex];var groupRenderer=cfg.groupRenderer||cfg.renderer;var prefix=this.showGroupName?(cfg.groupName||cfg.header)+': ':'';var groups=[],curGroup,i,len,gid;for(i=0,len=rs.length;i<len;i++){var rowIndex=startRow+i;var r=rs[i],gvalue=r.data[groupField],g=this.getGroup(gvalue,r,groupRenderer,rowIndex,colIndex,ds);if(!curGroup||curGroup.group!=g){gid=gidPrefix+'-gp-'+groupField+'-'+Ext.util.Format.htmlEncode(g);var isCollapsed=typeof this.state[gid]!=='undefined'?!this.state[gid]:this.startCollapsed;var gcls=isCollapsed?'x-grid-group-collapsed':'';curGroup={group:g,gvalue:gvalue,text:prefix+g,groupId:gid,startRow:rowIndex,rs:[r],cls:gcls,style:gstyle};groups.push(curGroup);}else{curGroup.rs.push(r);}
r._groupId=gid;}
var buf=[];for(i=0,len=groups.length;i<len;i++){var g=groups[i];this.doGroupStart(buf,g,cs,ds,colCount);buf[buf.length]=Ext.grid.GroupingView.superclass.doRender.call(this,cs,g.rs,ds,g.startRow,colCount,stripe);this.doGroupEnd(buf,g,cs,ds,colCount);}
return buf.join('');},getGroupId:function(value){var gidPrefix=this.grid.getGridEl().id;var groupField=this.getGroupField();var colIndex=this.cm.findColumnIndex(groupField);var cfg=this.cm.config[colIndex];var groupRenderer=cfg.groupRenderer||cfg.renderer;var gtext=this.getGroup(value,{data:{}},groupRenderer,0,colIndex,this.ds);return gidPrefix+'-gp-'+groupField+'-'+Ext.util.Format.htmlEncode(value);},doGroupStart:function(buf,g,cs,ds,colCount){buf[buf.length]=this.startGroup.apply(g);},doGroupEnd:function(buf,g,cs,ds,colCount){buf[buf.length]=this.endGroup;},getRows:function(){if(!this.enableGrouping){return Ext.grid.GroupingView.superclass.getRows.call(this);}
var r=[];var g,gs=this.getGroups();for(var i=0,len=gs.length;i<len;i++){g=gs[i].childNodes[1].childNodes;for(var j=0,jlen=g.length;j<jlen;j++){r[r.length]=g[j];}}
return r;},updateGroupWidths:function(){if(!this.enableGrouping||!this.hasRows()){return;}
var tw=Math.max(this.cm.getTotalWidth(),this.el.dom.offsetWidth-this.scrollOffset)+'px';var gs=this.getGroups();for(var i=0,len=gs.length;i<len;i++){gs[i].firstChild.style.width=tw;}},onColumnWidthUpdated:function(col,w,tw){Ext.grid.GroupingView.superclass.onColumnWidthUpdated.call(this,col,w,tw);this.updateGroupWidths();},onAllColumnWidthsUpdated:function(ws,tw){Ext.grid.GroupingView.superclass.onAllColumnWidthsUpdated.call(this,ws,tw);this.updateGroupWidths();},onColumnHiddenUpdated:function(col,hidden,tw){Ext.grid.GroupingView.superclass.onColumnHiddenUpdated.call(this,col,hidden,tw);this.updateGroupWidths();},onLayout:function(){this.updateGroupWidths();},onBeforeRowSelect:function(sm,rowIndex){if(!this.enableGrouping){return;}
var row=this.getRow(rowIndex);if(row&&!row.offsetParent){var g=this.findGroup(row);this.toggleGroup(g,true);}},groupByText:'Group By This Field',showGroupsText:'Show in Groups'});Ext.grid.GroupingView.GROUP_ID=1000;Ext.grid.HeaderDragZone=function(grid,hd,hd2){this.grid=grid;this.view=grid.getView();this.ddGroup="gridHeader"+this.grid.getGridEl().id;Ext.grid.HeaderDragZone.superclass.constructor.call(this,hd);if(hd2){this.setHandleElId(Ext.id(hd));this.setOuterHandleElId(Ext.id(hd2));}
this.scroll=false;};Ext.extend(Ext.grid.HeaderDragZone,Ext.dd.DragZone,{maxDragWidth:120,getDragData:function(e){var t=Ext.lib.Event.getTarget(e);var h=this.view.findHeaderCell(t);if(h){return{ddel:h.firstChild,header:h};}
return false;},onInitDrag:function(e){this.view.headersDisabled=true;var clone=this.dragData.ddel.cloneNode(true);clone.id=Ext.id();clone.style.width=Math.min(this.dragData.header.offsetWidth,this.maxDragWidth)+"px";this.proxy.update(clone);return true;},afterValidDrop:function(){var v=this.view;setTimeout(function(){v.headersDisabled=false;},50);},afterInvalidDrop:function(){var v=this.view;setTimeout(function(){v.headersDisabled=false;},50);}});Ext.grid.HeaderDropZone=function(grid,hd,hd2){this.grid=grid;this.view=grid.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,grid.getGridEl().dom);};Ext.extend(Ext.grid.HeaderDropZone,Ext.dd.DropZone,{proxyOffsets:[-4,-9],fly:Ext.Element.fly,getTargetFromEvent:function(e){var t=Ext.lib.Event.getTarget(e);var cindex=this.view.findCellIndex(t);if(cindex!==false){return this.view.getHeaderCell(cindex);}},nextVisible:function(h){var v=this.view,cm=this.grid.colModel;h=h.nextSibling;while(h){if(!cm.isHidden(v.getCellIndex(h))){return h;}
h=h.nextSibling;}
return null;},prevVisible:function(h){var v=this.view,cm=this.grid.colModel;h=h.prevSibling;while(h){if(!cm.isHidden(v.getCellIndex(h))){return h;}
h=h.prevSibling;}
return null;},positionIndicator:function(h,n,e){var x=Ext.lib.Event.getPageX(e);var r=Ext.lib.Dom.getRegion(n.firstChild);var px,pt,py=r.top+this.proxyOffsets[1];if((r.right-x)<=(r.right-r.left)/2){px=r.right+this.view.borderWidth;pt="after";}else{px=r.left;pt="before";}
var oldIndex=this.view.getCellIndex(h);var newIndex=this.view.getCellIndex(n);if(this.grid.colModel.isFixed(newIndex)){return false;}
var locked=this.grid.colModel.isLocked(newIndex);if(pt=="after"){newIndex++;}
if(oldIndex<newIndex){newIndex--;}
if(oldIndex==newIndex&&(locked==this.grid.colModel.isLocked(oldIndex))){return false;}
px+=this.proxyOffsets[0];this.proxyTop.setLeftTop(px,py);this.proxyTop.show();if(!this.bottomOffset){this.bottomOffset=this.view.mainHd.getHeight();}
this.proxyBottom.setLeftTop(px,py+this.proxyTop.dom.offsetHeight+this.bottomOffset);this.proxyBottom.show();return pt;},onNodeEnter:function(n,dd,e,data){if(data.header!=n){this.positionIndicator(data.header,n,e);}},onNodeOver:function(n,dd,e,data){var result=false;if(data.header!=n){result=this.positionIndicator(data.header,n,e);}
if(!result){this.proxyTop.hide();this.proxyBottom.hide();}
return result?this.dropAllowed:this.dropNotAllowed;},onNodeOut:function(n,dd,e,data){this.proxyTop.hide();this.proxyBottom.hide();},onNodeDrop:function(n,dd,e,data){var h=data.header;if(h!=n){var cm=this.grid.colModel;var x=Ext.lib.Event.getPageX(e);var r=Ext.lib.Dom.getRegion(n.firstChild);var pt=(r.right-x)<=((r.right-r.left)/2)?"after":"before";var oldIndex=this.view.getCellIndex(h);var newIndex=this.view.getCellIndex(n);var locked=cm.isLocked(newIndex);if(pt=="after"){newIndex++;}
if(oldIndex<newIndex){newIndex--;}
if(oldIndex==newIndex&&(locked==cm.isLocked(oldIndex))){return false;}
cm.setLocked(oldIndex,locked,true);cm.moveColumn(oldIndex,newIndex);this.grid.fireEvent("columnmove",oldIndex,newIndex);return true;}
return false;}});Ext.grid.GridView.ColumnDragZone=function(grid,hd){Ext.grid.GridView.ColumnDragZone.superclass.constructor.call(this,grid,hd,null);this.proxy.el.addClass('x-grid3-col-dd');};Ext.extend(Ext.grid.GridView.ColumnDragZone,Ext.grid.HeaderDragZone,{handleMouseDown:function(e){},callHandleMouseDown:function(e){Ext.grid.GridView.ColumnDragZone.superclass.handleMouseDown.call(this,e);}});Ext.grid.SplitDragZone=function(grid,hd,hd2){this.grid=grid;this.view=grid.getView();this.proxy=this.view.resizeProxy;Ext.grid.SplitDragZone.superclass.constructor.call(this,hd,"gridSplitters"+this.grid.getGridEl().id,{dragElId:Ext.id(this.proxy.dom),resizeFrame:false});this.setHandleElId(Ext.id(hd));this.setOuterHandleElId(Ext.id(hd2));this.scroll=false;};Ext.extend(Ext.grid.SplitDragZone,Ext.dd.DDProxy,{fly:Ext.Element.fly,b4StartDrag:function(x,y){this.view.headersDisabled=true;this.proxy.setHeight(this.view.mainWrap.getHeight());var w=this.cm.getColumnWidth(this.cellIndex);var minw=Math.max(w-this.grid.minColumnWidth,0);this.resetConstraints();this.setXConstraint(minw,1000);this.setYConstraint(0,0);this.minX=x-minw;this.maxX=x+1000;this.startPos=x;Ext.dd.DDProxy.prototype.b4StartDrag.call(this,x,y);},handleMouseDown:function(e){ev=Ext.EventObject.setEvent(e);var t=this.fly(ev.getTarget());if(t.hasClass("x-grid-split")){this.cellIndex=this.view.getCellIndex(t.dom);this.split=t.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(e){this.view.headersDisabled=false;var endX=Math.max(this.minX,Ext.lib.Event.getPageX(e));var diff=endX-this.startPos;this.view.onColumnSplitterMoved(this.cellIndex,this.cm.getColumnWidth(this.cellIndex)+diff);},autoOffset:function(){this.setDelta(0,0);}});Ext.grid.GridDragZone=function(grid,config){this.view=grid.getView();Ext.grid.GridDragZone.superclass.constructor.call(this,this.view.mainBody.dom,config);if(this.view.lockedBody){this.setHandleElId(Ext.id(this.view.mainBody.dom));this.setOuterHandleElId(Ext.id(this.view.lockedBody.dom));}
this.scroll=false;this.grid=grid;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 t=Ext.lib.Event.getTarget(e);var rowIndex=this.view.findRowIndex(t);if(rowIndex!==false){var sm=this.grid.selModel;if(!sm.isSelected(rowIndex)||e.hasModifier()){sm.handleMouseDown(this.grid,rowIndex,e);}
return{grid:this.grid,ddel:this.ddel,rowIndex:rowIndex,selections:sm.getSelections()};}
return false;},onInitDrag:function(e){var data=this.dragData;this.ddel.innerHTML=this.grid.getDragDropText();this.proxy.update(this.ddel);},afterRepair:function(){this.dragging=false;},getRepairXY:function(e,data){return false;},onEndDrag:function(data,e){},onValidDrop:function(dd,e,id){this.hideProxy();},beforeInvalidDrop:function(e,id){}});Ext.grid.ColumnModel=function(config){this.defaultWidth=100;this.defaultSortable=false;if(config.columns){Ext.apply(this,config);this.setConfig(config.columns,true);}else{this.setConfig(config,true);}
this.addEvents("widthchange","headerchange","hiddenchange","columnmoved","columnlockchange","configchange");Ext.grid.ColumnModel.superclass.constructor.call(this);};Ext.extend(Ext.grid.ColumnModel,Ext.util.Observable,{getColumnId:function(index){return this.config[index].id;},setConfig:function(config,initial){if(!initial){delete this.totalWidth;for(var i=0,len=this.config.length;i<len;i++){var c=this.config[i];if(c.editor){c.editor.destroy();}}}
this.config=config;this.lookup={};for(var i=0,len=config.length;i<len;i++){var c=config[i];if(typeof c.renderer=="string"){c.renderer=Ext.util.Format[c.renderer];}
if(typeof c.id=="undefined"){c.id=i;}
if(c.editor&&c.editor.isFormField){c.editor=new Ext.grid.GridEditor(c.editor);}
this.lookup[c.id]=c;}
if(!initial){this.fireEvent('configchange',this);}},getColumnById:function(id){return this.lookup[id];},getIndexById:function(id){for(var i=0,len=this.config.length;i<len;i++){if(this.config[i].id==id){return i;}}
return-1;},moveColumn:function(oldIndex,newIndex){var c=this.config[oldIndex];this.config.splice(oldIndex,1);this.config.splice(newIndex,0,c);this.dataMap=null;this.fireEvent("columnmoved",this,oldIndex,newIndex);},isLocked:function(colIndex){return this.config[colIndex].locked===true;},setLocked:function(colIndex,value,suppressEvent){if(this.isLocked(colIndex)==value){return;}
this.config[colIndex].locked=value;if(!suppressEvent){this.fireEvent("columnlockchange",this,colIndex,value);}},getTotalLockedWidth:function(){var totalWidth=0;for(var i=0;i<this.config.length;i++){if(this.isLocked(i)&&!this.isHidden(i)){this.totalWidth+=this.getColumnWidth(i);}}
return totalWidth;},getLockedCount:function(){for(var i=0,len=this.config.length;i<len;i++){if(!this.isLocked(i)){return i;}}},getColumnCount:function(visibleOnly){if(visibleOnly===true){var c=0;for(var i=0,len=this.config.length;i<len;i++){if(!this.isHidden(i)){c++;}}
return c;}
return this.config.length;},getColumnsBy:function(fn,scope){var r=[];for(var i=0,len=this.config.length;i<len;i++){var c=this.config[i];if(fn.call(scope||this,c,i)===true){r[r.length]=c;}}
return r;},isSortable:function(col){if(typeof this.config[col].sortable=="undefined"){return this.defaultSortable;}
return this.config[col].sortable;},isMenuDisabled:function(col){return!!this.config[col].menuDisabled;},getRenderer:function(col){if(!this.config[col].renderer){return Ext.grid.ColumnModel.defaultRenderer;}
return this.config[col].renderer;},setRenderer:function(col,fn){this.config[col].renderer=fn;},getColumnWidth:function(col){return this.config[col].width||this.defaultWidth;},setColumnWidth:function(col,width,suppressEvent){this.config[col].width=width;this.totalWidth=null;if(!suppressEvent){this.fireEvent("widthchange",this,col,width);}},getTotalWidth:function(includeHidden){if(!this.totalWidth){this.totalWidth=0;for(var i=0,len=this.config.length;i<len;i++){if(includeHidden||!this.isHidden(i)){this.totalWidth+=this.getColumnWidth(i);}}}
return this.totalWidth;},getColumnHeader:function(col){return this.config[col].header;},setColumnHeader:function(col,header){this.config[col].header=header;this.fireEvent("headerchange",this,col,header);},getColumnTooltip:function(col){return this.config[col].tooltip;},setColumnTooltip:function(col,tooltip){this.config[col].tooltip=tooltip;},getDataIndex:function(col){return this.config[col].dataIndex;},setDataIndex:function(col,dataIndex){this.config[col].dataIndex=dataIndex;},findColumnIndex:function(dataIndex){var c=this.config;for(var i=0,len=c.length;i<len;i++){if(c[i].dataIndex==dataIndex){return i;}}
return-1;},isCellEditable:function(colIndex,rowIndex){return(this.config[colIndex].editable||(typeof this.config[colIndex].editable=="undefined"&&this.config[colIndex].editor))?true:false;},getCellEditor:function(colIndex,rowIndex){return this.config[colIndex].editor;},setEditable:function(col,editable){this.config[col].editable=editable;},isHidden:function(colIndex){return this.config[colIndex].hidden;},isFixed:function(colIndex){return this.config[colIndex].fixed;},isResizable:function(colIndex){return colIndex>=0&&this.config[colIndex].resizable!==false&&this.config[colIndex].fixed!==true;},setHidden:function(colIndex,hidden){var c=this.config[colIndex];if(c.hidden!==hidden){c.hidden=hidden;this.totalWidth=null;this.fireEvent("hiddenchange",this,colIndex,hidden);}},setEditor:function(col,editor){this.config[col].editor=editor;}});Ext.grid.ColumnModel.defaultRenderer=function(value){if(typeof value=="string"&&value.length<1){return"&#160;";}
return value;};Ext.grid.DefaultColumnModel=Ext.grid.ColumnModel;Ext.grid.AbstractSelectionModel=function(){this.locked=false;Ext.grid.AbstractSelectionModel.superclass.constructor.call(this);};Ext.extend(Ext.grid.AbstractSelectionModel,Ext.util.Observable,{init:function(grid){this.grid=grid;this.initEvents();},lock:function(){this.locked=true;},unlock:function(){this.locked=false;},isLocked:function(){return this.locked;}});Ext.grid.RowSelectionModel=function(config){Ext.apply(this,config);this.selections=new Ext.util.MixedCollection(false,function(o){return o.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(grid,rowIndex,e){if(e.button===0&&!e.shiftKey&&!e.ctrlKey){this.selectRow(rowIndex,false);grid.view.focusRow(rowIndex);}},this);}
this.rowNav=new Ext.KeyNav(this.grid.getGridEl(),{"up":function(e){if(!e.shiftKey||this.singleSelect){this.selectPrevious(false);}else if(this.last!==false&&this.lastActive!==false){var last=this.last;this.selectRange(this.last,this.lastActive-1);this.grid.getView().focusRow(this.lastActive);if(last!==false){this.last=last;}}else{this.selectFirstRow();}},"down":function(e){if(!e.shiftKey||this.singleSelect){this.selectNext(false);}else if(this.last!==false&&this.lastActive!==false){var last=this.last;this.selectRange(this.last,this.lastActive+1);this.grid.getView().focusRow(this.lastActive);if(last!==false){this.last=last;}}else{this.selectFirstRow();}},scope:this});var view=this.grid.view;view.on("refresh",this.onRefresh,this);view.on("rowupdated",this.onRowUpdated,this);view.on("rowremoved",this.onRemove,this);},onRefresh:function(){var ds=this.grid.store,index;var s=this.getSelections();this.clearSelections(true);for(var i=0,len=s.length;i<len;i++){var r=s[i];if((index=ds.indexOfId(r.id))!=-1){this.selectRow(index,true);}}
if(s.length!=this.selections.getCount()){this.fireEvent("selectionchange",this);}},onRemove:function(v,index,r){if(this.selections.remove(r)!==false){this.fireEvent('selectionchange',this);}},onRowUpdated:function(v,index,r){if(this.isSelected(r)){v.onRowSelect(index);}},selectRecords:function(records,keepExisting){if(!keepExisting){this.clearSelections();}
var ds=this.grid.store;for(var i=0,len=records.length;i<len;i++){this.selectRow(ds.indexOf(records[i]),true);}},getCount:function(){return this.selections.length;},selectFirstRow:function(){this.selectRow(0);},selectLastRow:function(keepExisting){this.selectRow(this.grid.store.getCount()-1,keepExisting);},selectNext:function(keepExisting){if(this.hasNext()){this.selectRow(this.last+1,keepExisting);this.grid.getView().focusRow(this.last);return true;}
return false;},selectPrevious:function(keepExisting){if(this.hasPrevious()){this.selectRow(this.last-1,keepExisting);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(fn,scope){var s=this.getSelections();for(var i=0,len=s.length;i<len;i++){if(fn.call(scope||this,s[i],i)===false){return false;}}
return true;},clearSelections:function(fast){if(this.isLocked())return;if(fast!==true){var ds=this.grid.store;var s=this.selections;s.each(function(r){this.deselectRow(ds.indexOfId(r.id));},this);s.clear();}else{this.selections.clear();}
this.last=false;},selectAll:function(){if(this.isLocked())return;this.selections.clear();for(var i=0,len=this.grid.store.getCount();i<len;i++){this.selectRow(i,true);}},hasSelection:function(){return this.selections.length>0;},isSelected:function(index){var r=typeof index=="number"?this.grid.store.getAt(index):index;return(r&&this.selections.key(r.id)?true:false);},isIdSelected:function(id){return(this.selections.key(id)?true:false);},handleMouseDown:function(g,rowIndex,e){if(e.button!==0||this.isLocked()){return;};var view=this.grid.getView();if(e.shiftKey&&!this.singleSelect&&this.last!==false){var last=this.last;this.selectRange(last,rowIndex,e.ctrlKey);this.last=last;view.focusRow(rowIndex);}else{var isSelected=this.isSelected(rowIndex);if(e.ctrlKey&&isSelected){this.deselectRow(rowIndex);}else if(!isSelected||this.getCount()>1){this.selectRow(rowIndex,e.ctrlKey||e.shiftKey);view.focusRow(rowIndex);}}},selectRows:function(rows,keepExisting){if(!keepExisting){this.clearSelections();}
for(var i=0,len=rows.length;i<len;i++){this.selectRow(rows[i],true);}},selectRange:function(startRow,endRow,keepExisting){if(this.isLocked())return;if(!keepExisting){this.clearSelections();}
if(startRow<=endRow){for(var i=startRow;i<=endRow;i++){this.selectRow(i,true);}}else{for(var i=startRow;i>=endRow;i--){this.selectRow(i,true);}}},deselectRange:function(startRow,endRow,preventViewNotify){if(this.isLocked())return;for(var i=startRow;i<=endRow;i++){this.deselectRow(i,preventViewNotify);}},selectRow:function(index,keepExisting,preventViewNotify){if(this.isLocked()||(index<0||index>=this.grid.store.getCount())||this.isSelected(index))return;var r=this.grid.store.getAt(index);if(r&&this.fireEvent("beforerowselect",this,index,keepExisting,r)!==false){if(!keepExisting||this.singleSelect){this.clearSelections();}
this.selections.add(r);this.last=this.lastActive=index;if(!preventViewNotify){this.grid.getView().onRowSelect(index);}
this.fireEvent("rowselect",this,index,r);this.fireEvent("selectionchange",this);}},deselectRow:function(index,preventViewNotify){if(this.isLocked())return;if(this.last==index){this.last=false;}
if(this.lastActive==index){this.lastActive=false;}
var r=this.grid.store.getAt(index);if(r){this.selections.remove(r);if(!preventViewNotify){this.grid.getView().onRowDeselect(index);}
this.fireEvent("rowdeselect",this,index,r);this.fireEvent("selectionchange",this);}},restoreLast:function(){if(this._last){this.last=this._last;}},acceptsNav:function(row,col,cm){return!cm.isHidden(col)&&cm.isCellEditable(col,row);},onEditorKey:function(field,e){var k=e.getKey(),newCell,g=this.grid,ed=g.activeEditor;var shift=e.shiftKey;if(k==e.TAB){e.stopEvent();ed.completeEdit();if(shift){newCell=g.walkCells(ed.row,ed.col-1,-1,this.acceptsNav,this);}else{newCell=g.walkCells(ed.row,ed.col+1,1,this.acceptsNav,this);}}else if(k==e.ENTER){e.stopEvent();ed.completeEdit();if(this.moveEditorOnEnter!==false){if(shift){newCell=g.walkCells(ed.row-1,ed.col,-1,this.acceptsNav,this);}else{newCell=g.walkCells(ed.row+1,ed.col,1,this.acceptsNav,this);}}}else if(k==e.ESC){ed.cancelEdit();}
if(newCell){g.startEditing(newCell[0],newCell[1]);}}});Ext.grid.CellSelectionModel=function(config){Ext.apply(this,config);this.selection=null;this.addEvents("beforecellselect","cellselect","selectionchange");Ext.grid.CellSelectionModel.superclass.constructor.call(this);};Ext.extend(Ext.grid.CellSelectionModel,Ext.grid.AbstractSelectionModel,{initEvents:function(){this.grid.on("cellmousedown",this.handleMouseDown,this);this.grid.getGridEl().on(Ext.isIE||Ext.isSafari3?"keydown":"keypress",this.handleKeyDown,this);var view=this.grid.view;view.on("refresh",this.onViewChange,this);view.on("rowupdated",this.onRowUpdated,this);view.on("beforerowremoved",this.clearSelections,this);view.on("beforerowsinserted",this.clearSelections,this);if(this.grid.isEditor){this.grid.on("beforeedit",this.beforeEdit,this);}},beforeEdit:function(e){this.select(e.row,e.column,false,true,e.record);},onRowUpdated:function(v,index,r){if(this.selection&&this.selection.record==r){v.onCellSelect(index,this.selection.cell[1]);}},onViewChange:function(){this.clearSelections(true);},getSelectedCell:function(){return this.selection?this.selection.cell:null;},clearSelections:function(preventNotify){var s=this.selection;if(s){if(preventNotify!==true){this.grid.view.onCellDeselect(s.cell[0],s.cell[1]);}
this.selection=null;this.fireEvent("selectionchange",this,null);}},hasSelection:function(){return this.selection?true:false;},handleMouseDown:function(g,row,cell,e){if(e.button!==0||this.isLocked()){return;};this.select(row,cell);},select:function(rowIndex,colIndex,preventViewNotify,preventFocus,r){if(this.fireEvent("beforecellselect",this,rowIndex,colIndex)!==false){this.clearSelections();r=r||this.grid.store.getAt(rowIndex);this.selection={record:r,cell:[rowIndex,colIndex]};if(!preventViewNotify){var v=this.grid.getView();v.onCellSelect(rowIndex,colIndex);if(preventFocus!==true){v.focusCell(rowIndex,colIndex);}}
this.fireEvent("cellselect",this,rowIndex,colIndex);this.fireEvent("selectionchange",this,this.selection);}},isSelectable:function(rowIndex,colIndex,cm){return!cm.isHidden(colIndex);},handleKeyDown:function(e){if(!e.isNavKeyPress()){return;}
var g=this.grid,s=this.selection;if(!s){e.stopEvent();var cell=g.walkCells(0,0,1,this.isSelectable,this);if(cell){this.select(cell[0],cell[1]);}
return;}
var sm=this;var walk=function(row,col,step){return g.walkCells(row,col,step,sm.isSelectable,sm);};var k=e.getKey(),r=s.cell[0],c=s.cell[1];var newCell;switch(k){case e.TAB:if(e.shiftKey){newCell=walk(r,c-1,-1);}else{newCell=walk(r,c+1,1);}
break;case e.DOWN:newCell=walk(r+1,c,1);break;case e.UP:newCell=walk(r-1,c,-1);break;case e.RIGHT:newCell=walk(r,c+1,1);break;case e.LEFT:newCell=walk(r,c-1,-1);break;case e.ENTER:if(g.isEditor&&!g.editing){g.startEditing(r,c);e.stopEvent();return;}
break;};if(newCell){this.select(newCell[0],newCell[1]);e.stopEvent();}},acceptsNav:function(row,col,cm){return!cm.isHidden(col)&&cm.isCellEditable(col,row);},onEditorKey:function(field,e){var k=e.getKey(),newCell,g=this.grid,ed=g.activeEditor;if(k==e.TAB){if(e.shiftKey){newCell=g.walkCells(ed.row,ed.col-1,-1,this.acceptsNav,this);}else{newCell=g.walkCells(ed.row,ed.col+1,1,this.acceptsNav,this);}
e.stopEvent();}else if(k==e.ENTER){ed.completeEdit();e.stopEvent();}else if(k==e.ESC){e.stopEvent();ed.cancelEdit();}
if(newCell){g.startEditing(newCell[0],newCell[1]);}}});Ext.grid.EditorGridPanel=Ext.extend(Ext.grid.GridPanel,{clicksToEdit:2,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(g,row,col){this.startEditing(row,col);},onAutoEditClick:function(e,t){if(e.button!==0){return;}
var row=this.view.findRowIndex(t);var col=this.view.findCellIndex(t);if(row!==false&&col!==false){this.stopEditing();if(this.selModel.getSelectedCell){var sc=this.selModel.getSelectedCell();if(sc&&sc.cell[0]===row&&sc.cell[1]===col){this.startEditing(row,col);}}else{if(this.selModel.isSelected(row)){this.startEditing(row,col);}}}},onEditComplete:function(ed,value,startValue){this.editing=false;this.activeEditor=null;ed.un("specialkey",this.selModel.onEditorKey,this.selModel);var r=ed.record;var field=this.colModel.getDataIndex(ed.col);value=this.postEditValue(value,startValue,r,field);if(String(value)!==String(startValue)){var e={grid:this,record:r,field:field,originalValue:startValue,value:value,row:ed.row,column:ed.col,cancel:false};if(this.fireEvent("validateedit",e)!==false&&!e.cancel){r.set(field,e.value);delete e.cancel;this.fireEvent("afteredit",e);}}
this.view.focusCell(ed.row,ed.col);},startEditing:function(row,col){this.stopEditing();if(this.colModel.isCellEditable(col,row)){this.view.ensureVisible(row,col,true);var r=this.store.getAt(row);var field=this.colModel.getDataIndex(col);var e={grid:this,record:r,field:field,value:r.data[field],row:row,column:col,cancel:false};if(this.fireEvent("beforeedit",e)!==false&&!e.cancel){this.editing=true;var ed=this.colModel.getCellEditor(col,row);if(!ed.rendered){ed.render(this.view.getEditorParent(ed));}
(function(){ed.row=row;ed.col=col;ed.record=r;ed.on("complete",this.onEditComplete,this,{single:true});ed.on("specialkey",this.selModel.onEditorKey,this.selModel);this.activeEditor=ed;var v=this.preEditValue(r,field);ed.startEdit(this.view.getCell(row,col).firstChild,v===undefined?'':v);}).defer(50,this);}}},preEditValue:function(r,field){var value=r.data[field];return this.autoEncode&&typeof value=='string'?Ext.util.Format.htmlDecode(value):value;},postEditValue:function(value,originalValue,r,field){return this.autoEncode&&typeof value=='string'?Ext.util.Format.htmlEncode(value):value;},stopEditing:function(cancel){if(this.activeEditor){this.activeEditor[cancel===true?'cancelEdit':'completeEdit']();}
this.activeEditor=null;},onDestroy:function(){if(this.rendered){var cols=this.colModel.config;for(var i=0,len=cols.length;i<len;i++){var c=cols[i];Ext.destroy(c.editor);}}
Ext.grid.EditorGridPanel.superclass.onDestroy.call(this);}});Ext.reg('editorgrid',Ext.grid.EditorGridPanel);Ext.grid.GridEditor=function(field,config){Ext.grid.GridEditor.superclass.constructor.call(this,field,config);field.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(grid,source){this.grid=grid;this.store=new Ext.data.Store({recordType:Ext.grid.PropertyRecord});this.store.on('update',this.onUpdate,this);if(source){this.setSource(source);}
Ext.grid.PropertyStore.superclass.constructor.call(this);};Ext.extend(Ext.grid.PropertyStore,Ext.util.Observable,{setSource:function(o){this.source=o;this.store.removeAll();var data=[];for(var k in o){if(this.isEditableValue(o[k])){data.push(new Ext.grid.PropertyRecord({name:k,value:o[k]},k));}}
this.store.loadRecords({records:data},{},true);},onUpdate:function(ds,record,type){if(type==Ext.data.Record.EDIT){var v=record.data['value'];var oldValue=record.modified['value'];if(this.grid.fireEvent('beforepropertychange',this.source,record.id,v,oldValue)!==false){this.source[record.id]=v;record.commit();this.grid.fireEvent('propertychange',this.source,record.id,v,oldValue);}else{record.reject();}}},getProperty:function(row){return this.store.getAt(row);},isEditableValue:function(val){if(Ext.isDate(val)){return true;}else if(typeof val=='object'||typeof val=='function'){return false;}
return true;},setValue:function(prop,value){this.source[prop]=value;this.store.getById(prop).set('value',value);},getSource:function(){return this.source;}});Ext.grid.PropertyColumnModel=function(grid,store){this.grid=grid;var g=Ext.grid;g.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=store;this.bselect=Ext.DomHelper.append(document.body,{tag:'select',cls:'x-grid-editor x-hide-display',children:[{tag:'option',value:'true',html:'true'},{tag:'option',value:'false',html:'false'}]});var f=Ext.form;var bfield=new f.Field({el:this.bselect,bselect:this.bselect,autoShow:true,getValue:function(){return this.bselect.value=='true';}});this.editors={'date':new g.GridEditor(new f.DateField({selectOnFocus:true})),'string':new g.GridEditor(new f.TextField({selectOnFocus:true})),'number':new g.GridEditor(new f.NumberField({selectOnFocus:true,style:'text-align:left;'})),'boolean':new g.GridEditor(bfield)};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(dateVal){return dateVal.dateFormat(this.dateFormat);},renderBool:function(bVal){return bVal?'true':'false';},isCellEditable:function(colIndex,rowIndex){return colIndex==1;},getRenderer:function(col){return col==1?this.renderCellDelegate:this.renderPropDelegate;},renderProp:function(v){return this.getPropertyName(v);},renderCell:function(val){var rv=val;if(Ext.isDate(val)){rv=this.renderDate(val);}else if(typeof val=='boolean'){rv=this.renderBool(val);}
return Ext.util.Format.htmlEncode(rv);},getPropertyName:function(name){var pn=this.grid.propertyNames;return pn&&pn[name]?pn[name]:name;},getCellEditor:function(colIndex,rowIndex){var p=this.store.getProperty(rowIndex);var n=p.data['name'],val=p.data['value'];if(this.grid.customEditors[n]){return this.grid.customEditors[n];}
if(Ext.isDate(val)){return this.editors['date'];}else if(typeof val=='number'){return this.editors['number'];}else if(typeof val=='boolean'){return this.editors['boolean'];}else{return this.editors['string'];}}});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 store=new Ext.grid.PropertyStore(this);this.propStore=store;var cm=new Ext.grid.PropertyColumnModel(this,store);store.store.sort('name','ASC');this.addEvents('beforepropertychange','propertychange');this.cm=cm;this.ds=store.store;Ext.grid.PropertyGrid.superclass.initComponent.call(this);this.selModel.on('beforecellselect',function(sm,rowIndex,colIndex){if(colIndex===0){this.startEditing.defer(200,this,[rowIndex,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(source){this.propStore.setSource(source);},getSource:function(){return this.propStore.getSource();}});Ext.reg("propertygrid",Ext.grid.PropertyGrid);Ext.grid.RowNumberer=function(config){Ext.apply(this,config);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(v,p,record,rowIndex){if(this.rowspan){p.cellAttr='rowspan="'+this.rowspan+'"';}
return rowIndex+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',initEvents:function(){Ext.grid.CheckboxSelectionModel.superclass.initEvents.call(this);this.grid.on('render',function(){var view=this.grid.getView();view.mainBody.on('mousedown',this.onMouseDown,this);Ext.fly(view.innerHd).on('mousedown',this.onHdMouseDown,this);},this);},onMouseDown:function(e,t){if(e.button===0&&t.className=='x-grid3-row-checker'){e.stopEvent();var row=e.getTarget('.x-grid3-row');if(row){var index=row.rowIndex;if(this.isSelected(index)){this.deselectRow(index);}else{this.selectRow(index,true);}}}},onHdMouseDown:function(e,t){if(t.className=='x-grid3-hd-checker'){e.stopEvent();var hd=Ext.fly(t.parentNode);var isChecked=hd.hasClass('x-grid3-hd-checker-on');if(isChecked){hd.removeClass('x-grid3-hd-checker-on');this.clearSelections();}else{hd.addClass('x-grid3-hd-checker-on');this.selectAll();}}},renderer:function(v,p,record){return'<div class="x-grid3-row-checker">&#160;</div>';}});Ext.LoadMask=function(el,config){this.el=Ext.get(el);Ext.apply(this,config);if(this.store){this.store.on('beforeload',this.onBeforeLoad,this);this.store.on('load',this.onLoad,this);this.store.on('loadexception',this.onLoad,this);this.removeMask=Ext.value(this.removeMask,false);}else{var um=this.el.getUpdater();um.showLoadIndicator=false;um.on('beforeupdate',this.onBeforeLoad,this);um.on('update',this.onLoad,this);um.on('failure',this.onLoad,this);this.removeMask=Ext.value(this.removeMask,true);}};Ext.LoadMask.prototype={msg:'Loading...',msgCls:'x-mask-loading',disabled:false,disable:function(){this.disabled=true;},enable:function(){this.disabled=false;},onLoad:function(){this.el.unmask(this.removeMask);},onBeforeLoad:function(){if(!this.disabled){this.el.mask(this.msg,this.msgCls);}},show:function(){this.onBeforeLoad();},hide:function(){this.onLoad();},destroy:function(){if(this.store){this.store.un('beforeload',this.onBeforeLoad,this);this.store.un('load',this.onLoad,this);this.store.un('loadexception',this.onLoad,this);}else{var um=this.el.getUpdater();um.un('beforeupdate',this.onBeforeLoad,this);um.un('update',this.onLoad,this);um.un('failure',this.onLoad,this);}}};Ext.ProgressBar=Ext.extend(Ext.BoxComponent,{baseCls:'x-progress',animate:false,waitTimer:null,initComponent:function(){Ext.ProgressBar.superclass.initComponent.call(this);this.addEvents("update");},onRender:function(ct,position){Ext.ProgressBar.superclass.onRender.call(this,ct,position);var tpl=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>');if(position){this.el=tpl.insertBefore(position,{cls:this.baseCls},true);}else{this.el=tpl.append(ct,{cls:this.baseCls},true);}
if(this.id){this.el.dom.id=this.id;}
var inner=this.el.dom.firstChild;this.progressBar=Ext.get(inner.firstChild);if(this.textEl){this.textEl=Ext.get(this.textEl);delete this.textTopEl;}else{this.textTopEl=Ext.get(this.progressBar.dom.firstChild);var textBackEl=Ext.get(inner.childNodes[1]);this.textTopEl.setStyle("z-index",99).addClass('x-hidden');this.textEl=new Ext.CompositeElement([this.textTopEl.dom.firstChild,textBackEl.dom.firstChild]);this.textEl.setWidth(inner.offsetWidth);}
this.progressBar.setHeight(inner.offsetHeight);},afterRender:function(){Ext.ProgressBar.superclass.afterRender.call(this);if(this.value){this.updateProgress(this.value,this.text);}else{this.updateText(this.text);}},updateProgress:function(value,text,animate){this.value=value||0;if(text){this.updateText(text);}
if(this.rendered){var w=Math.floor(value*this.el.dom.firstChild.offsetWidth);this.progressBar.setWidth(w,animate===true||(animate!==false&&this.animate));if(this.textTopEl){this.textTopEl.removeClass('x-hidden').setWidth(w);}}
this.fireEvent('update',this,value,text);return this;},wait:function(o){if(!this.waitTimer){var scope=this;o=o||{};this.updateText(o.text);this.waitTimer=Ext.TaskMgr.start({run:function(i){var inc=o.increment||10;this.updateProgress(((((i+inc)%inc)+1)*(100/inc))*.01,null,o.animate);},interval:o.interval||1000,duration:o.duration,onStop:function(){if(o.fn){o.fn.apply(o.scope||this);}
this.reset();},scope:scope});}
return this;},isWaiting:function(){return this.waitTimer!=null;},updateText:function(text){this.text=text||'&#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(w,h){Ext.ProgressBar.superclass.setSize.call(this,w,h);if(this.textTopEl){var inner=this.el.dom.firstChild;this.textEl.setSize(inner.offsetWidth,inner.offsetHeight);}
this.syncProgressBar();return this;},reset:function(hide){this.updateProgress(0);if(this.textTopEl){this.textTopEl.addClass('x-hidden');}
if(this.waitTimer){this.waitTimer.onStop=null;Ext.TaskMgr.stop(this.waitTimer);this.waitTimer=null;}
if(hide===true){this.hide();}
return this;}});Ext.reg('progress',Ext.ProgressBar);Ext.Slider=Ext.extend(Ext.BoxComponent,{vertical:false,minValue:0,maxValue:100,keyIncrement:1,increment:0,clickRange:[5,15],clickToChange:true,animate:true,dragging:false,initComponent:function(){if(this.value===undefined){this.value=this.minValue;}
Ext.Slider.superclass.initComponent.call(this);this.keyIncrement=Math.max(this.increment,this.keyIncrement);this.addEvents('beforechange','change','changecomplete','dragstart','drag','dragend');if(this.vertical){Ext.apply(this,Ext.Slider.Vertical);}},onRender:function(){this.autoEl={cls:'x-slider '+(this.vertical?'x-slider-vert':'x-slider-horz'),cn:{cls:'x-slider-end',cn:{cls:'x-slider-inner',cn:[{cls:'x-slider-thumb'},{tag:'a',cls:'x-slider-focus',href:"#",tabIndex:'-1',hidefocus:'on'}]}}};Ext.Slider.superclass.onRender.apply(this,arguments);this.endEl=this.el.first();this.innerEl=this.endEl.first();this.thumb=this.innerEl.first();this.halfThumb=(this.vertical?this.thumb.getHeight():this.thumb.getWidth())/2;this.focusEl=this.thumb.next();this.initEvents();},initEvents:function(){this.thumb.addClassOnOver('x-slider-thumb-over');this.mon(this.el,'mousedown',this.onMouseDown,this);this.mon(this.el,'keydown',this.onKeyDown,this);this.focusEl.swallowEvent("click",true);this.tracker=new Ext.dd.DragTracker({onBeforeStart:this.onBeforeDragStart.createDelegate(this),onStart:this.onDragStart.createDelegate(this),onDrag:this.onDrag.createDelegate(this),onEnd:this.onDragEnd.createDelegate(this),tolerance:3,autoStart:300});this.tracker.initEl(this.thumb);this.on('beforedestroy',this.tracker.destroy,this.tracker);},onMouseDown:function(e){if(this.disabled){return;}
if(this.clickToChange&&e.target!=this.thumb.dom){var local=this.innerEl.translatePoints(e.getXY());this.onClickChange(local);}
this.focus();},onClickChange:function(local){if(local.top>this.clickRange[0]&&local.top<this.clickRange[1]){this.setValue(Math.round(this.reverseValue(local.left)),undefined,true);}},onKeyDown:function(e){if(this.disabled){e.preventDefault();return;}
var k=e.getKey();switch(k){case e.UP:case e.RIGHT:e.stopEvent();if(e.ctrlKey){this.setValue(this.maxValue,undefined,true);}else{this.setValue(this.value+this.keyIncrement,undefined,true);}
break;case e.DOWN:case e.LEFT:e.stopEvent();if(e.ctrlKey){this.setValue(this.minValue,undefined,true);}else{this.setValue(this.value-this.keyIncrement,undefined,true);}
break;default:e.preventDefault();}},doSnap:function(value){if(!this.increment||this.increment==1||!value){return value;}
var newValue=value,inc=this.increment;var m=value%inc;if(m>0){if(m>(inc/2)){newValue=value+(inc-m);}else{newValue=value-m;}}
return newValue.constrain(this.minValue,this.maxValue);},afterRender:function(){Ext.Slider.superclass.afterRender.apply(this,arguments);if(this.value!==undefined){var v=this.normalizeValue(this.value);if(v!==this.value){delete this.value;this.setValue(v,false);}else{this.moveThumb(this.translateValue(v),false);}}},getRatio:function(){var w=this.innerEl.getWidth();var v=this.maxValue-this.minValue;return v==0?w:(w/v);},normalizeValue:function(v){if(typeof v!='number'){v=parseInt(v);}
v=Math.round(v);v=this.doSnap(v);v=v.constrain(this.minValue,this.maxValue);return v;},setValue:function(v,animate,changeComplete){v=this.normalizeValue(v);if(v!==this.value&&this.fireEvent('beforechange',this,v,this.value)!==false){this.value=v;this.moveThumb(this.translateValue(v),animate!==false);this.fireEvent('change',this,v);if(changeComplete){this.fireEvent('changecomplete',this,v);}}},translateValue:function(v){var ratio=this.getRatio();return(v*ratio)-(this.minValue*ratio)-this.halfThumb;},reverseValue:function(pos){var ratio=this.getRatio();return(pos+this.halfThumb+(this.minValue*ratio))/ratio;},moveThumb:function(v,animate){if(!animate||this.animate===false){this.thumb.setLeft(v);}else{this.thumb.shift({left:v,stopFx:true,duration:.35});}},focus:function(){this.focusEl.focus(10);},onBeforeDragStart:function(e){return!this.disabled;},onDragStart:function(e){this.thumb.addClass('x-slider-thumb-drag');this.dragging=true;this.dragStartValue=this.value;this.fireEvent('dragstart',this,e);},onDrag:function(e){var pos=this.innerEl.translatePoints(this.tracker.getXY());this.setValue(Math.round(this.reverseValue(pos.left)),false);this.fireEvent('drag',this,e);},onDragEnd:function(e){this.thumb.removeClass('x-slider-thumb-drag');this.dragging=false;this.fireEvent('dragend',this,e);if(this.dragStartValue!=this.value){this.fireEvent('changecomplete',this,this.value);}},onDisable:function(){Ext.Slider.superclass.onDisable.call(this);this.thumb.addClass(this.disabledClass);if(Ext.isIE){var xy=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(xy);}},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();}},onResize:function(w,h){this.innerEl.setWidth(w-(this.el.getPadding('l')+this.endEl.getPadding('r')));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(w,h){this.innerEl.setHeight(h-(this.el.getPadding('t')+this.endEl.getPadding('b')));this.syncThumb();},getRatio:function(){var h=this.innerEl.getHeight();var v=this.maxValue-this.minValue;return h/v;},moveThumb:function(v,animate){if(!animate||this.animate===false){this.thumb.setBottom(v);}else{this.thumb.shift({bottom:v,stopFx:true,duration:.35});}},onDrag:function(e){var pos=this.innerEl.translatePoints(this.tracker.getXY());var bottom=this.innerEl.getHeight()-pos.top;this.setValue(this.minValue+Math.round(bottom/this.getRatio()),false);this.fireEvent('drag',this,e);},onClickChange:function(local){if(local.left>this.clickRange[0]&&local.left<this.clickRange[1]){var bottom=this.innerEl.getHeight()-local.top;this.setValue(this.minValue+Math.round(bottom/this.getRatio()),undefined,true);}}};Ext.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.StatusBar.superclass.initComponent.call(this);},afterRender:function(){Ext.StatusBar.superclass.afterRender.call(this);var right=this.statusAlign=='right',td=Ext.get(this.nextBlock());if(right){this.tr.appendChild(td.dom);}else{td.insertBefore(this.tr.firstChild);}
this.statusEl=td.createChild({cls:'x-status-text '+(this.iconCls||this.defaultIconCls||''),html:this.text||this.defaultText||''});this.statusEl.unselectable();this.spacerEl=td.insertSibling({tag:'td',style:'width:100%',cn:[{cls:'ytb-spacer'}]},right?'before':'after');},setStatus:function(o){o=o||{};if(typeof o=='string'){o={text:o};}
if(o.text!==undefined){this.setText(o.text);}
if(o.iconCls!==undefined){this.setIcon(o.iconCls);}
if(o.clear){var c=o.clear,wait=this.autoClear,defaults={useDefaults:true,anim:true};if(typeof c=='object'){c=Ext.applyIf(c,defaults);if(c.wait){wait=c.wait;}}else if(typeof c=='number'){wait=c;c=defaults;}else if(typeof c=='boolean'){c=defaults;}
c.threadId=this.activeThreadId;this.clearStatus.defer(wait,this,[c]);}
return this;},clearStatus:function(o){o=o||{};if(o.threadId&&o.threadId!==this.activeThreadId){return this;}
var text=o.useDefaults?this.defaultText:'',iconCls=o.useDefaults?(this.defaultIconCls?this.defaultIconCls:''):'';if(o.anim){this.statusEl.fadeOut({remove:false,useDisplay:true,scope:this,callback:function(){this.setStatus({text:text,iconCls:iconCls});this.statusEl.show();}});}else{this.statusEl.hide();this.setStatus({text:text,iconCls:iconCls});this.statusEl.show();}
return this;},setText:function(text){this.activeThreadId++;this.text=text||'';if(this.rendered){this.statusEl.update(this.text);}
return this;},getText:function(){return this.text;},setIcon:function(cls){this.activeThreadId++;cls=cls||'';if(this.rendered){if(this.currIconCls){this.statusEl.removeClass(this.currIconCls);this.currIconCls=null;}
if(cls.length>0){this.statusEl.addClass(cls);this.currIconCls=cls;}}else{this.currIconCls=cls;}
return this;},showBusy:function(o){if(typeof o=='string'){o={text:o};}
o=Ext.applyIf(o||{},{text:this.busyText,iconCls:this.busyIconCls});return this.setStatus(o);}});Ext.reg('statusbar',Ext.StatusBar);Ext.History=(function(){var iframe,hiddenField;var ready=false;var currentToken;function getHash(){var href=top.location.href,i=href.indexOf("#");return i>=0?href.substr(i+1):null;}
function doSave(){hiddenField.value=currentToken;}
function handleStateChange(token){currentToken=token;Ext.History.fireEvent('change',token);}
function updateIFrame(token){var html=['<html><body><div id="state">',token,'</div></body></html>'].join('');try{var doc=iframe.contentWindow.document;doc.open();doc.write(html);doc.close();return true;}catch(e){return false;}}
function checkIFrame(){if(!iframe.contentWindow||!iframe.contentWindow.document){setTimeout(checkIFrame,10);return;}
var doc=iframe.contentWindow.document;var elem=doc.getElementById("state");var token=elem?elem.innerText:null;var hash=getHash();setInterval(function(){doc=iframe.contentWindow.document;elem=doc.getElementById("state");var newtoken=elem?elem.innerText:null;var newHash=getHash();if(newtoken!==token){token=newtoken;handleStateChange(token);top.location.hash=token;hash=token;doSave();}else if(newHash!==hash){hash=newHash;updateIFrame(newHash);}},50);ready=true;Ext.History.fireEvent('ready',Ext.History);}
function startUp(){currentToken=hiddenField.value?hiddenField.value:getHash();if(Ext.isIE){checkIFrame();}else{var hash=getHash();setInterval(function(){var newHash=getHash();if(newHash!==hash){hash=newHash;handleStateChange(hash);doSave();}},50);ready=true;Ext.History.fireEvent('ready',Ext.History);}}
return{fieldId:'x-history-field',iframeId:'x-history-frame',events:{},init:function(onReady,scope){if(ready){Ext.callback(onReady,scope,[this]);return;}
if(!Ext.isReady){Ext.onReady(function(){Ext.History.init(onReady,scope);});return;}
hiddenField=Ext.getDom(Ext.History.fieldId);if(Ext.isIE){iframe=Ext.getDom(Ext.History.iframeId);}
this.addEvents('ready','change');if(onReady){this.on('ready',onReady,scope,{single:true});}
startUp();},add:function(token,preventDup){if(preventDup!==false){if(this.getToken()==token){return true;}}
if(Ext.isIE){return updateIFrame(token);}else{top.location.hash=token;return true;}},back:function(){history.go(-1);},forward:function(){history.go(1);},getToken:function(){return ready?currentToken:getHash();}};})();Ext.apply(Ext.History,new Ext.util.Observable());Ext.debug={};(function(){var cp;function createConsole(){var scriptPanel=new Ext.debug.ScriptsPanel();var logView=new Ext.debug.LogPanel();var tree=new Ext.debug.DomTree();var tabs=new Ext.TabPanel({activeTab:0,border:false,tabPosition:'bottom',items:[{title:'Debug Console',layout:'border',items:[logView,scriptPanel]},{title:'DOM Inspector',layout:'border',items:[tree]}]});cp=new Ext.Panel({id:'x-debug-browser',title:'Console',collapsible:true,animCollapse:false,style:'position:absolute;left:0;bottom:0;',height:200,logView:logView,layout:'fit',tools:[{id:'close',handler:function(){cp.destroy();cp=null;Ext.EventManager.removeResizeListener(handleResize);}}],items:tabs});cp.render(document.body);cp.resizer=new Ext.Resizable(cp.el,{minHeight:50,handles:"n",pinned:true,transparent:true,resizeElement:function(){var box=this.proxy.getBox();this.proxy.hide();cp.setHeight(box.height);return box;}});function handleResize(){cp.setWidth(Ext.getBody().getViewSize().width);}
Ext.EventManager.onWindowResize(handleResize);handleResize();}
Ext.apply(Ext,{log:function(){if(!cp){createConsole();}
cp.logView.log.apply(cp.logView,arguments);},logf:function(format,arg1,arg2,etc){Ext.log(String.format.apply(String,arguments));},dump:function(o){if(typeof o=='string'||typeof o=='number'||typeof o=='undefined'||Ext.isDate(o)){Ext.log(o);}else if(!o){Ext.log("null");}else if(typeof o!="object"){Ext.log('Unknown return type');}else if(Ext.isArray(o)){Ext.log('['+o.join(',')+']');}else{var b=["{\n"];for(var key in o){var to=typeof o[key];if(to!="function"&&to!="object"){b.push(String.format("  {0}: {1},\n",key,o[key]));}}
var s=b.join("");if(s.length>3){s=s.substr(0,s.length-2);}
Ext.log(s+"\n}");}},_timers:{},time:function(name){name=name||"def";Ext._timers[name]=new Date().getTime();},timeEnd:function(name,printResults){var t=new Date().getTime();name=name||"def";var v=String.format("{0} ms",t-Ext._timers[name]);Ext._timers[name]=new Date().getTime();if(printResults!==false){Ext.log('Timer '+(name=="def"?v:name+": "+v));}
return v;}});})();Ext.debug.ScriptsPanel=Ext.extend(Ext.Panel,{id:'x-debug-scripts',region:'east',minWidth:200,split:true,width:350,border:false,layout:'anchor',style:'border-width:0 0 0 1px;',initComponent:function(){this.scriptField=new Ext.form.TextArea({anchor:'100% -26',style:'border-width:0;'});this.trapBox=new Ext.form.Checkbox({id:'console-trap',boxLabel:'Trap Errors',checked:true});this.toolbar=new Ext.Toolbar([{text:'Run',scope:this,handler:this.evalScript},{text:'Clear',scope:this,handler:this.clear},'->',this.trapBox,' ',' ']);this.items=[this.toolbar,this.scriptField];Ext.debug.ScriptsPanel.superclass.initComponent.call(this);},evalScript:function(){var s=this.scriptField.getValue();if(this.trapBox.getValue()){try{var rt=eval(s);Ext.dump(rt===undefined?'(no return)':rt);}catch(e){Ext.log(e.message||e.descript);}}else{var rt=eval(s);Ext.dump(rt===undefined?'(no return)':rt);}},clear:function(){this.scriptField.setValue('');this.scriptField.focus();}});Ext.debug.LogPanel=Ext.extend(Ext.Panel,{autoScroll:true,region:'center',border:false,style:'border-width:0 1px 0 0',log:function(){var markup=['<div style="padding:5px !important;border-bottom:1px solid #ccc;">',Ext.util.Format.htmlEncode(Array.prototype.join.call(arguments,', ')).replace(/\n/g,'<br />').replace(/\s/g,'&#160;'),'</div>'].join('');this.body.insertHtml('beforeend',markup);this.body.scrollTo('top',100000);},clear:function(){this.body.update('');this.body.dom.scrollTop=0;}});Ext.debug.DomTree=Ext.extend(Ext.tree.TreePanel,{enableDD:false,lines:false,rootVisible:false,animate:false,hlColor:'ffff9c',autoScroll:true,region:'center',border:false,initComponent:function(){Ext.debug.DomTree.superclass.initComponent.call(this);var styles=false,hnode;var nonSpace=/^\s*$/;var html=Ext.util.Format.htmlEncode;var ellipsis=Ext.util.Format.ellipsis;var styleRe=/\s?([a-z\-]*)\:([^;]*)(?:[;\s\n\r]*)/gi;function findNode(n){if(!n||n.nodeType!=1||n==document.body||n==document){return false;}
var pn=[n],p=n;while((p=p.parentNode)&&p.nodeType==1&&p.tagName.toUpperCase()!='HTML'){pn.unshift(p);}
var cn=hnode;for(var i=0,len=pn.length;i<len;i++){cn.expand();cn=cn.findChild('htmlNode',pn[i]);if(!cn){return false;}}
cn.select();var a=cn.ui.anchor;treeEl.dom.scrollTop=Math.max(0,a.offsetTop-10);cn.highlight();return true;}
function nodeTitle(n){var s=n.tagName;if(n.id){s+='#'+n.id;}else if(n.className){s+='.'+n.className;}
return s;}
function onNodeSelect(t,n,last){return;if(last&&last.unframe){last.unframe();}
var props={};if(n&&n.htmlNode){if(frameEl.pressed){n.frame();}
if(inspecting){return;}
addStyle.enable();reload.setDisabled(n.leaf);var dom=n.htmlNode;stylePanel.setTitle(nodeTitle(dom));if(styles&&!showAll.pressed){var s=dom.style?dom.style.cssText:'';if(s){var m;while((m=styleRe.exec(s))!=null){props[m[1].toLowerCase()]=m[2];}}}else if(styles){var cl=Ext.debug.cssList;var s=dom.style,fly=Ext.fly(dom);if(s){for(var i=0,len=cl.length;i<len;i++){var st=cl[i];var v=s[st]||fly.getStyle(st);if(v!=undefined&&v!==null&&v!==''){props[st]=v;}}}}else{for(var a in dom){var v=dom[a];if((isNaN(a+10))&&v!=undefined&&v!==null&&v!==''&&!(Ext.isGecko&&a[0]==a[0].toUpperCase())){props[a]=v;}}}}else{if(inspecting){return;}
addStyle.disable();reload.disabled();}
stylesGrid.setSource(props);stylesGrid.treeNode=n;stylesGrid.view.fitColumns();}
this.loader=new Ext.tree.TreeLoader();this.loader.load=function(n,cb){var isBody=n.htmlNode==document.body;var cn=n.htmlNode.childNodes;for(var i=0,c;c=cn[i];i++){if(isBody&&c.id=='x-debug-browser'){continue;}
if(c.nodeType==1){n.appendChild(new Ext.debug.HtmlNode(c));}else if(c.nodeType==3&&!nonSpace.test(c.nodeValue)){n.appendChild(new Ext.tree.TreeNode({text:'<em>'+ellipsis(html(String(c.nodeValue)),35)+'</em>',cls:'x-tree-noicon'}));}}
cb();};this.root=this.setRootNode(new Ext.tree.TreeNode('Ext'));hnode=this.root.appendChild(new Ext.debug.HtmlNode(document.getElementsByTagName('html')[0]));}});Ext.debug.HtmlNode=function(){var html=Ext.util.Format.htmlEncode;var ellipsis=Ext.util.Format.ellipsis;var nonSpace=/^\s*$/;var attrs=[{n:'id',v:'id'},{n:'className',v:'class'},{n:'name',v:'name'},{n:'type',v:'type'},{n:'src',v:'src'},{n:'href',v:'href'}];function hasChild(n){for(var i=0,c;c=n.childNodes[i];i++){if(c.nodeType==1){return true;}}
return false;}
function renderNode(n,leaf){var tag=n.tagName.toLowerCase();var s='&lt;'+tag;for(var i=0,len=attrs.length;i<len;i++){var a=attrs[i];var v=n[a.n];if(v&&!nonSpace.test(v)){s+=' '+a.v+'=&quot;<i>'+html(v)+'</i>&quot;';}}
var style=n.style?n.style.cssText:'';if(style){s+=' style=&quot;<i>'+html(style.toLowerCase())+'</i>&quot;';}
if(leaf&&n.childNodes.length>0){s+='&gt;<em>'+ellipsis(html(String(n.innerHTML)),35)+'</em>&lt;/'+tag+'&gt;';}else if(leaf){s+=' /&gt;';}else{s+='&gt;';}
return s;}
var HtmlNode=function(n){var leaf=!hasChild(n);this.htmlNode=n;this.tagName=n.tagName.toLowerCase();var attr={text:renderNode(n,leaf),leaf:leaf,cls:'x-tree-noicon'};HtmlNode.superclass.constructor.call(this,attr);this.attributes.htmlNode=n;if(!leaf){this.on('expand',this.onExpand,this);this.on('collapse',this.onCollapse,this);}};Ext.extend(HtmlNode,Ext.tree.AsyncTreeNode,{cls:'x-tree-noicon',preventHScroll:true,refresh:function(highlight){var leaf=!hasChild(this.htmlNode);this.setText(renderNode(this.htmlNode,leaf));if(highlight){Ext.fly(this.ui.textNode).highlight();}},onExpand:function(){if(!this.closeNode&&this.parentNode){this.closeNode=this.parentNode.insertBefore(new Ext.tree.TreeNode({text:'&lt;/'+this.tagName+'&gt;',cls:'x-tree-noicon'}),this.nextSibling);}else if(this.closeNode){this.closeNode.ui.show();}},onCollapse:function(){if(this.closeNode){this.closeNode.ui.hide();}},render:function(bulkRender){HtmlNode.superclass.render.call(this,bulkRender);},highlightNode:function(){},highlight:function(){},frame:function(){this.htmlNode.style.border='1px solid #0000ff';},unframe:function(){this.htmlNode.style.border='';}});return HtmlNode;}();
/* ========== ../mkt-ext-2.0/ext-overrides.js ============ */

(function(){var tempMenuMgrGet=Ext.menu.MenuMgr.get;Ext.menu.MenuMgr.get=function(menu){if(typeof menu=="string"||menu.events){return tempMenuMgrGet(menu);}else if(typeof menu.length=='number'){return new MktMenu({items:menu});}else{return new MktMenu(menu);}
return true;};Ext.apply(Ext,{BLANK_IMAGE_URL:"/images/spacer.gif"});Ext.override(Ext.grid.GridView,{getEditorParent:function(ed){return this.mainWrap.dom;}});if(typeof getEl=='undefined'){getEl=Ext.get;}
Ext.override(Ext.Element,{getNextSibling:function(selector){return this.next(selector,true);},getPreviousSibling:function(selector){return this.prev(selector,true);},getChildrenByTagName:function(cls){return this.query(cls);}});Ext.tree.TreeNode.prototype.hasUnfilteredChildren=function(filterRe){var cn=this.childNodes;if(cn==null)return;for(var i=0;i<cn.length;i++){var c=cn[i];if(!c.attributes.leaf){var filterMatch=false;if(isDefined(filterRe)){filterMatch=filterRe.test(c.filterText||c.text);}
if(!c.hidden&&(filterMatch||c.hasUnfilteredChildren(filterRe)))return true;}
else if(!c.hidden)return true;}
return false;};var emailValidator=/^([\w!#$%&''*+\-/=?^`{|}~]+)(.[\w!#$%&''*+\-/=?^`{|}~]+)*@([\w-]+\.){1,5}([A-Za-z]){2,4}$/;Ext.form.VTypes.emailMask=/[a-z0-9_\.@!#$%&''*+\-/=?^`{|}~]/i;Ext.form.VTypes.email=function(v){return emailValidator.test(v);}
var tempExtMsgBoxHide=Ext.MessageBox.hide;Ext.MessageBox.hide=function(){if(Ext.MessageBox.isVisible()){tempExtMsgBoxHide.call(Ext.MessageBox);}
return Ext.MessageBox;}
Ext.override(Ext.DataView,{prepareData:function(data){var lData=[];if(data&&data.val&&isString(data.val)){lData['val']=Ext.util.Format.htmlEncode(data['val']);}else{lData=data;}
return lData;}});Ext.override(Ext.form.ComboBox,{initComponent:function(){Ext.form.ComboBox.superclass.initComponent.call(this);this.addEvents('expand','collapse','beforeselect','select','beforequery');if(this.transform){this.allowDomMove=false;var s=Ext.getDom(this.transform);if(!this.hiddenName){this.hiddenName=s.name;}
if(!this.store){this.mode='local';var d=[],opts=s.options;for(var i=0,len=opts.length;i<len;i++){var o=opts[i];var value=(o.hasAttribute?o.hasAttribute('value'):o.getAttribute('value')!==null)?o.value:o.text;if(o.selected){this.value=value;}
d.push([value,o.text]);}
this.store=new Ext.data.SimpleStore({'id':0,fields:['value','text'],data:d});this.valueField='value';this.displayField='text';}
s.name=Ext.id();if(!this.lazyRender){this.target=true;this.el=Ext.DomHelper.insertBefore(s,this.autoCreate||this.defaultAutoCreate);Ext.removeNode(s);this.render(this.el.parentNode);}else{Ext.removeNode(s);}}
else if(Ext.isArray(this.store)){if(Ext.isArray(this.store[0])){this.store=new Ext.data.SimpleStore({fields:['value','text'],data:this.store});this.valueField='value';}else{this.store=new Ext.data.SimpleStore({fields:['text'],data:this.store,expandData:true});this.valueField='text';}
this.displayField='text';this.mode='local';}
this.selectedIndex=-1;if(this.mode=='local'){if(this.initialConfig.queryDelay===undefined){this.queryDelay=10;}
if(this.initialConfig.minChars===undefined){this.minChars=0;}}}});})();
/* ========== ../mkt-ext-2.0/Mkt.js ============ */

Ext.ns('MktUtil','Mkt','Mkt.app','Mkt.menus');MktUtil.getFirstElementByClassName=function(className,tag,root){tag=tag||'*';if(root){root=Ext.get(root).dom;if(!root){return null;}}else{root=document;}
var elements=root.getElementsByTagName(tag);if(!elements.length&&(tag=='*'&&root.all)){elements=root.all;}
for(var i=0,len=elements.length;i<len;++i){if(Ext.get(elements[i]).hasClass(className)){return elements[i];}}
return null;};MktUtil.camelCase=function(str){return str.charAt(0).toUpperCase()+str.substring(1);};MktUtil.removeProtoIdPrefix=function(node,pfx){if(isDefined(node.id))node.id=node.id.slice(pfx.length);if(isDefined(node.name))node.name=node.name.slice(pfx.length);if(node.childNodes!=null){for(var i=0;i<node.childNodes.length;i++){MktUtil.removeProtoIdPrefix(node.childNodes.item(i),pfx);}}};MktUtil.focusForm=function(formEl){var tabitems=Ext.query('[@tabindex]',$(formEl));if(tabitems.length>0){for(var ix=0;ix<tabitems.length;ix++){var el=getEl(tabitems[ix]);if(el.dom.tabindex=1)break;}
el.focus();}};MktUtil.getFirstElementByClassName=function(className,tag,root){tag=tag||'*';if(root){root=Ext.getDom(root);if(!root){return null;}}else{root=document;}
var elements=root.getElementsByTagName(tag);if(!elements.length&&(tag=='*'&&root.all)){elements=root.all;}
for(var i=0,len=elements.length;i<len;++i){if(Ext.get(elements[i]).hasClass(className)){return elements[i];}}
return null;};MktUtil.findFrame=function(frameName){var myIframe=null;for(var i=0;i<top.frames.length;i++){try{if(isDefined(top.frames[i].name)&&(top.frames[i].name==frameName)){myIframe=top.frames[i];break;}}catch(e){}}
return myIframe;};mktInputCharCounter=function(pInputEl,iMaxChars,pMsgEl,pSynchedEl,copyCallback,countCallback){this.inputEl=getEl(pInputEl);this.iMaxChars=iMaxChars;if(pMsgEl!=null){this.msgEl=getEl(pMsgEl);}
if(pSynchedEl!=null)
this.synchedEl=getEl(pSynchedEl);this.copyCallback=copyCallback;this.countCallback=countCallback;this.inputEl.addListener('keyup',this.refresh,this,true);this.refresh();};mktInputCharCounter.prototype.refresh=function(){if(this.iMaxChars!=null){var length;if(isFunction(this.countCallback)!=null){length=this.countCallback(this.inputEl.dom.value);}
else{length=this.inputEl.dom.value.length;}
var remaining=this.iMaxChars-length;if(remaining>=0){this.msgEl.removeClass('mktInputCharsOver');this.msgEl.addClass('mktInputCharsRemaining');this.msgEl.dom.innerHTML=remaining+' characters remaining';}
else{this.msgEl.removeClass('mktInputCharsRemaining');this.msgEl.addClass('mktInputCharsOver');this.msgEl.dom.innerHTML=Math.abs(remaining)+' characters over';}}
if(this.synchedEl!=null){var tel=this.synchedEl.dom;var sval=this.inputEl.dom.value;if(isFunction(this.copyCallback))sval=this.copyCallback(sval);if(tel.tagName.toLowerCase()=='input'){if(tel.type.toLowerCase()=='text'){tel.value=sval;}}else{tel.innerHTML=sval;}}};mktInputCharCounter.prototype.destroy=function(){this.inputEl.removeListener('keyup',this.refresh,this);};MktUtil.Basename=function(path,platform){if(!path)
return;this._path=path;if(platform)
this._platform=platform;if(typeof(this._platform)=="undefined"){if(navigator.platform.indexOf("Win")>=0){this._platform=MktUtil.Basename.WIN;}else if(navigator.platform.indexOf("Mac")>=0){this._platform=MktUtil.Basename.MAC;}else{this._platform=MktUtil.Basename.UNIX;}}
if(this._platform==MktUtil.Basename.WIN)
this._pattern=/^(.*\\)?(.*)/;else
this._pattern=/^(.*\/)?(.*)/;var rc=this._path.match(this._pattern);this._basename=rc[2];if(!this._basename)this._basename="";this._dirname=_chop(rc[1]);return;};MktUtil.Basename.VERSION="0.02";MktUtil.Basename.WIN=1;MktUtil.Basename.MAC=2;MktUtil.Basename.UNIX=3;MktUtil.Basename.platformStrs=new Array("N/A","Windows","Macintosh","UNIX");function _chop(str){if(!str)
return"";return str.substr(0,(str.length-1));}
MktUtil.Basename.prototype.basename=function(){return this._basename;};MktUtil.Basename.prototype.dirname=function(){return this._dirname;};MktUtil.Basename.prototype.path=function(){return this._path;};MktUtil.Basename.prototype.platform=function(){return this._platform;};MktUtil.Basename.prototype.platform_str=function(){return MktUtil.Basename.platformStrs[this._platform];};
/* ========== ../mkt-ext-2.0/MktMenu.js ============ */

MktMenu=function(attributes){MktMenu.superclass.constructor.call(this,attributes);};Ext.extend(MktMenu,Ext.menu.Menu,{ctype:"MktMenu",onMouseOver:function(e){if(!this.cancelHide){this.cancelHide=true;}
MktMenu.superclass.onMouseOver.call(this,e);},onMouseOut:function(e){if(this.cancelHide){delete this.cancelHide;}
MktMenu.superclass.onMouseOut.call(this,e);},addMenuItem:function(config){if(!(config instanceof Ext.menu.Item)){if(typeof config.checked=="boolean"){config=new Ext.menu.CheckItem(config);}else{config=new MktMenuItem(config);}}
return this.addItem(config);},autoWidth:function(){var el=this.el,ul=this.ul;if(!el){return;}
if(this.extraMenuAction){var addtnlWidth=10;if(isDefined(this.width)){this.width+=addtnlWidth;}else if(isUndefined(this.width)&&this.el&&isDefined(this.el.getWidth())&&!(Ext.isIE&&!Ext.isIE8)){this.width=this.el.getWidth()+addtnlWidth;}}
var w=this.width;if(w){el.setWidth(w);}else if(Ext.isIE&&!Ext.isIE8){var ie7AddtnlWidth=55;if(this.extraMenuAction){this.minWidth=this.minWidth+addtnlWidth+ie7AddtnlWidth;}
el.setWidth(this.minWidth);var t=el.dom.offsetWidth;el.setWidth(ul.getWidth()+el.getFrameWidth("lr"));}}});MktMenuItem=function(attributes){MktMenuItem.superclass.constructor.call(this,attributes);};Ext.extend(MktMenuItem,Ext.menu.Item,{ctype:"MktMenuItem",showDelay:500,popupTooltip:'Open in new window',normMarkup:'<img src="{0}" class="x-menu-item-icon {2}" />{1}',withPopupMarkup:'<div class="mktPopupContainer"><div style="float:left;" class="mktPopupText"><img src="{0}" class="x-menu-item-icon {2}" />{1}</div><div style="float: right;"><img  src="{0}" class="mktPopupImage" /></div><div style="clear: left;"></div></div>',hideDelay:500,onRender:function(container,position){var el=document.createElement("a");el.hideFocus=true;el.unselectable="on";if(!this.href){el.onclick=function(){return false;};}
el.href=this.href||"#";if(this.hrefTarget){el.target=this.hrefTarget;}
el.className=this.itemCls+(this.menu?" x-menu-item-arrow":"")+(this.cls?" "+this.cls:"");el.innerHTML=String.format((this.enablePopupItem?this.withPopupMarkup:this.normMarkup),this.icon||Ext.BLANK_IMAGE_URL,this.itemText||this.text,this.iconCls||'');this.el=el;Ext.menu.Item.superclass.onRender.call(this,container,position);if(this.enablePopupItem&&!this.dtTooltip){this.dtTooltip=new Ext.util.DelayedTask(this.delayAddTooltip,this,[el]);this.dtTooltip.delay(500);}},delayAddTooltip:function(el){var popupItems=Ext.query('.mktPopupImage',el);if(popupItems&&popupItems.length){for(var i=0;i<popupItems.length;i++){if(!popupItems[i].qtip){popupItems[i].qtip=this.popupTooltip;}}}},deferHide:function(){delete this.hideTimer;if(this.menu.cancelHide){delete this.cancelHide;this.parentMenu.tryActivate(this.parentMenu.items.indexOf(this),0);return;}
this.menu.hide();}});Ext.ns('Mkt.widgets');Mkt.widgets.FilterTreeItem=function(config){config.treeConfig=config.treeConfig||{};this.treePanel=new Mkt.widgets.ComponentFilterTreePanel(Ext.apply({dataUrl:config.treeDataUrl,frame:false,maskDisabled:true,loader:new MktTreeLoader({uiProvider:MktTreeNodeUI,dataUrl:config.treeDataUrl}),autoScroll:true},config.treeConfig));compFilterTree=this.treePanel;config.filterConfig=config.filterConfig||{};this.palette=new Mkt.widgets.FilterTreePanel(Ext.apply(config.filterConfig,{filterBranches:false,filterBranchNames:true,layout:'fit',width:300,height:400,filterFieldPadding:10,frame:false,autoScroll:false,items:new Ext.Panel({cls:'mktSmartPaletteTree',frame:true,layout:'fit',autoScroll:false,items:[this.treePanel]})}));this.palette.bindTree(this.treePanel);this.treePanel.on("render",function(treePanel){treePanel.getEl().swallowEvent("click");});Mkt.widgets.FilterTreeItem.superclass.constructor.call(this,this.palette,config);};Ext.extend(Mkt.widgets.FilterTreeItem,Ext.menu.Adapter,{initComponent:function(){Mkt.widgets.FilterTreeItem.superclass.initComponent.call(this);this.relayEvents(this.treePanel,['checkchange']);}});Mkt.widgets.FilterTreeMenu=function(config){Mkt.widgets.FilterTreeMenu.superclass.constructor.call(this,config);this.plain=true;var ft=new Mkt.widgets.FilterTreeItem(config);this.add(ft);this.filterTreeItem=ft;this.on('beforeshow',function(){if(this.filterTreeItem.treePanel){this.filterTreeItem.treePanel.render();}},this);};Ext.extend(Mkt.widgets.FilterTreeMenu,Ext.menu.Menu,{resizable:true,reservedHeight:10,reservedWidth:10,minWidth:313,disableMenuFocus:true,cls:'mktFilterTreeMenu',render:function(){Mkt.widgets.FilterTreeMenu.superclass.render.call(this);if(this.resizable){this.resizer=new Ext.Resizable(this.el,{pinned:true,handles:'se',resizeChild:true});this.resizer.on('resize',function(resizable,width,height,e){var palette=this.filterTreeItem.palette;palette.setHeight(height-this.reservedHeight);palette.setWidth(width-this.reservedWidth);}.createDelegate(this));}
if(this.disableMenuFocus){Ext.get(this.el).addClass('disable-menu-focus');}},getSelectedItems:function(){return this.filterTreeItem.treePanel.getChecked('id');},getFilterTree:function(){return this.filterTreeItem.treePanel;},getPalette:function(){return this.filterTreeItem.palette;},beforeDestroy:function(){this.filterTreeItem.destroy();}});
/* ========== ../mkt-ext-2.0/widgets/GroupSummary.js ============ */

Ext.grid.GroupSummary=function(config){Ext.apply(this,config);};Ext.extend(Ext.grid.GroupSummary,Ext.util.Observable,{init:function(grid){this.grid=grid;this.cm=grid.getColumnModel();this.view=grid.getView();var v=this.view;v.doGroupEnd=this.doGroupEnd.createDelegate(this);v.afterMethod('onColumnWidthUpdated',this.doWidth,this);v.afterMethod('onAllColumnWidthsUpdated',this.doAllWidths,this);v.afterMethod('onColumnHiddenUpdated',this.doHidden,this);v.afterMethod('onUpdate',this.doUpdate,this);v.afterMethod('onRemove',this.doRemove,this);if(!this.rowTpl){this.rowTpl=new Ext.Template('<div class="x-grid3-summary-row" style="{tstyle}">','<table class="x-grid3-summary-table" border="0" cellspacing="0" cellpadding="0" style="{tstyle}">','<tbody><tr>{cells}</tr></tbody>','</table></div>');this.rowTpl.disableFormats=true;}
this.rowTpl.compile();if(!this.cellTpl){this.cellTpl=new Ext.Template('<td class="x-grid3-col x-grid3-cell x-grid3-td-{id} {css}" style="{style}">','<div class="x-grid3-cell-inner x-grid3-col-{id}" unselectable="on">{value}</div>',"</td>");this.cellTpl.disableFormats=true;}
this.cellTpl.compile();},toggleSummaries:function(visible){var el=this.grid.getGridEl();if(el){if(visible===undefined){visible=el.hasClass('x-grid-hide-summary');}
el[visible?'removeClass':'addClass']('x-grid-hide-summary');}},renderSummary:function(o,cs){cs=cs||this.view.getColumnData();var cfg=this.cm.config;var buf=[],c,p={},cf,last=cs.length-1;for(var i=0,len=cs.length;i<len;i++){c=cs[i];cf=cfg[i];p.id=c.id;p.style=c.style;p.css=i===0?'x-grid3-cell-first ':(i==last?'x-grid3-cell-last ':'');if(cf.summaryType||cf.summaryRenderer){p.value=(cf.summaryRenderer||c.renderer)(o.data[c.name],p,o);}else{p.value='';}
if(p.value==undefined||p.value==="")p.value="&#160;";buf[buf.length]=this.cellTpl.apply(p);}
return this.rowTpl.apply({tstyle:'width:'+this.view.getTotalWidth()+';',cells:buf.join('')});},calculate:function(rs,cs){var data={},r,c,cfg=this.cm.config,cf;for(var j=0,jlen=rs.length;j<jlen;j++){r=rs[j];for(var i=0,len=cs.length;i<len;i++){c=cs[i];cf=cfg[i];if(cf.summaryType){data[c.name]=Ext.grid.GroupSummary.Calculations[cf.summaryType](data[c.name]||0,r,c.name,data,cf);}}}
for(var k=0,len2=cs.length;k<len2;k++){c=cs[k];cf=cfg[k];if(cf.summaryType){switch(cf.summaryType){case'average':var total=data[c.name+'total']||0;var count=data[c.name+'count']||0;data[c.name]=count===0?0:total/count;break;case'percent':var n=data[cf['summaryNumerator']]||0.0;var d=data[cf['summaryDenominator']]||0.0;data[c.name]=d===0.0?0.0:n/d;break;case'weighted_average':var summaryTotal=data[c.name+'Total']||0.0;var summaryWeight=data[cf['summaryWeight']]||0.0;data[c.name]=summaryTotal===0.0?0.0:summaryTotal/summaryWeight;break;default:break;}}}
return data;},doGroupEnd:function(buf,g,cs,ds,colCount){var data=this.calculate(g.rs,cs);buf.push('</div>',this.renderSummary({data:data},cs),'</div>');},doWidth:function(col,w,tw){var gs=this.view.getGroups(),s;for(var i=0,len=gs.length;i<len;i++){s=gs[i].childNodes[2];if(s){s.style.width=tw;s.firstChild.style.width=tw;s.firstChild.rows[0].childNodes[col].style.width=w;}}},doAllWidths:function(ws,tw){var gs=this.view.getGroups(),s,cells,wlen=ws.length;for(var i=0,len=gs.length;i<len;i++){s=gs[i].childNodes[2];s.style.width=tw;s.firstChild.style.width=tw;cells=s.firstChild.rows[0].childNodes;for(var j=0;j<wlen;j++){cells[j].style.width=ws[j];}}},doHidden:function(col,hidden,tw){var gs=this.view.getGroups(),s,display=hidden?'none':'';for(var i=0,len=gs.length;i<len;i++){s=gs[i].childNodes[2];if(!s)continue;s.style.width=tw;s.firstChild.style.width=tw;s.firstChild.rows[0].childNodes[col].style.display=display;}},refreshSummary:function(groupValue){return this.refreshSummaryById(this.view.getGroupId(groupValue));},getSummaryNode:function(gid){var g=Ext.fly(gid,'_gsummary');if(g){return g.down('.x-grid3-summary-row',true);}
return null;},refreshSummaryById:function(gid){var g=document.getElementById(gid);if(!g){return false;}
var rs=[];this.grid.store.each(function(r){if(r._groupId==gid){rs[rs.length]=r;}});var cs=this.view.getColumnData();var data=this.calculate(rs,cs);var markup=this.renderSummary({data:data},cs);var existing=this.getSummaryNode(gid);if(existing){g.removeChild(existing);}
Ext.DomHelper.append(g,markup);return true;},doUpdate:function(ds,record){this.refreshSummaryById(record._groupId);},doRemove:function(ds,record,index,isUpdate){if(!isUpdate){this.refreshSummaryById(record._groupId);}},showSummaryMsg:function(groupValue,msg){var gid=this.view.getGroupId(groupValue);var node=this.getSummaryNode(gid);if(node){node.innerHTML='<div class="x-grid3-summary-msg">'+msg+'</div>';}}});Ext.grid.GroupSummary.Calculations={'sum':function(v,record,field,data,colConfig){return v+(record.data[field]||0);},'count':function(v,record,field,data,colConfig){return data[field+'count']?++data[field+'count']:(data[field+'count']=1);},'max':function(v,record,field,data,colConfig){var max=data[field+'max']===undefined?(data[field+'max']=v):data[field+'max'];return v>max?(data[field+'max']=v):max;},'min':function(v,record,field,data,colConfig){var min=data[field+'min']===undefined?(data[field+'min']=v):data[field+'min'];return v<min?(data[field+'min']=v):min;},'average':function(v,record,field,data,colConfig){var c=data[field+'count']?++data[field+'count']:(data[field+'count']=1);var t=(data[field+'total']=((data[field+'total']||0)+(record.data[field]||0)));return t===0?0:t/c;},'weighted_average':function(v,record,field,data,colConfig){var rowTotal=(record.data[field]||0)*(record.data[colConfig['summaryWeight']]||0);var summaryTotal=(data[field+'Total']=(data[field+'Total']||0)+rowTotal);var summaryWeight=data[colConfig['summaryWeight']]||0.0;return summaryWeight===0.0?0.0:summaryTotal/summaryWeight;},'percent':function(v,record,field,data,colConfig){var n=data[colConfig['summaryNumerator']]||0.0;var d=data[colConfig['summaryDenominator']]||0.0;return d===0.0?0.0:n/d;}};Ext.grid.HybridSummary=Ext.extend(Ext.grid.GroupSummary,{calculate:function(rs,cs){var gcol=this.view.getGroupField();var gvalue=rs[0].data[gcol];var gdata=this.getSummaryData(gvalue);return gdata||Ext.grid.HybridSummary.superclass.calculate.call(this,rs,cs);},updateSummaryData:function(groupValue,data,skipRefresh){var json=this.grid.store.reader.jsonData;if(!json.summaryData){json.summaryData={};}
json.summaryData[groupValue]=data;if(!skipRefresh){this.refreshSummary(groupValue);}},getSummaryData:function(groupValue){var json=this.grid.store.reader.jsonData;if(json&&json.summaryData){return json.summaryData[groupValue];}
return null;}});
/* ========== ../mkt-ext-2.0/widgets/CanvasHeader.js ============ */

Ext.ns('Mkt','Mkt.widgets');Mkt.widgets.CanvasHeader=Ext.extend(Ext.Panel,{titleValue:'Untitled',descValue:'Click to type a description',subtitle:'',editable:false,titleEditable:true,titleReadonlyReason:'',descEditable:true,titleId:'title',descId:'desc',actionUrl:'analytics/editReportMetaSubmit',serializeParms:{atxRenameReportId:5},enableUpdateCanvasConfig:true,cls:'mktCanvasHeader',editCls:'mktClickToEdit',noEditCls:'mktNoEdit',emptyTitleText:"Please enter a title",bodyStyle:'background: #fff; border-color: #fff',width:700,height:65,editWidth:700,editTitleWidth:500,editDescWidth:500,editHeight:105,savedCallback:Ext.emptyFn,initComponent:function(){this.descValue=this.descValue||"";Mkt.widgets.CanvasHeader.superclass.initComponent.call(this);this._initViewPanel();},_initViewPanel:function(){if(!this.viewTemplate){this.viewTitleId=(this.id?this.id:'')+'titleCanvasHeader';this.viewDescId=(this.id?this.id:'')+'descCanvasHeader';var title='<h1 class="text" id="'+this.viewTitleId+'">{titleValue}</h1>';var desc='<h3 class="text descValue" id="'+this.viewDescId+'">{descValue} {subtitle}</h3>';if(this.editable){if(this.titleEditable){title='<div class="{editCls}">'+title+'</div>';}
else{title='<div class="{noEditCls}" id="readonlyTitleCanvasHeader">'+title+'</div>';}
if(this.descEditable){desc='<div class="{editCls}">'+desc+'</div>';}
else{desc='<div class="{noEditCls}">'+desc+'</div>';}}
this.viewTemplate=new Ext.Template(title+desc);}
this.viewPanel=new Ext.Panel({cls:'mktTopPanel',height:this.height,width:this.width,html:this.viewTemplate.apply(this)});this.add(this.viewPanel);this.viewPanel.on('render',this._initEditEvents,this,{defer:500});},_initEditEvents:function(){if(this.editable){this.getEl().on('click',this._onClick,this);MktPage.initQuickTips();}},_onClick:function(e){var tgt=e.getTarget();if(Ext.fly(tgt).hasClass('text')){this.startEdit(e);}},startEdit:function(e){this.viewPanel.hide(true,.2);if(!this.formPanel){this._initFormPanel();}
this.formPanel.show(true,.2);var tgt=e.getTarget();if(Ext.fly(tgt).hasClass('descValue')){}
else{}},cancelEdit:function(){this.formPanel.hide(true,.2);this.viewPanel.show(true,.2);},getTitleField:function(){if(this.formPanel){return this.formPanel.items.items[0];}},getDescField:function(){if(this.formPanel){return this.formPanel.items.items[1];}},setTitle:function(title){if(this.titleValue==title){return;}
var titleField=this.getTitleField();if(titleField){titleField.setValue(Ext.util.Format.htmlDecode(title));}
var el=Ext.get(this.viewTitleId);if(el){el.update(title);}
this.titleValue=title;},setDesc:function(desc){if(this.descValue==desc){return;}
var descField=this.getDescField();if(descField){descField.setValue(Ext.util.Format.htmlDecode(desc));}
var el=Ext.get(this.viewDescId);if(el){el.update(desc);}
this.descValue=desc;},updateCanvasConfig:function(){if(!this.enableUpdateCanvasConfig){return;}
var canvas=MktCanvas.getActiveTab();if(canvas){canvas.config.title=this.newTitleValue;canvas.config.description=this.newDescValue;}},saveEdit:function(){this.serializeParms[this.titleId]=this.getTitleField().getValue();this.serializeParms[this.descId]=this.getDescField().getValue();this.newTitleValue=Ext.util.Format.htmlEncode(this.serializeParms[this.titleId]);this.newDescValue=Ext.util.Format.htmlEncode(this.serializeParms[this.descId]);this.updateCanvasConfig();MktSession.ajaxRequest(this.actionUrl,{serializeParms:this.serializeParms,containerId:this.id,onMySuccess:this.saveReponse.createDelegate(this)});},specialKey:function(formPanel,e){var key=e.getKey();var target=e.getTarget();switch(key){case 13:this.saveEdit();break;case 9:}},saveReponse:function(){if(MktPage.appVars.editCanvasHeaderError){this.formPanel.items.items[0].markInvalid(MktPage.appVars.editCanvasHeaderError);delete MktPage.appVars.editCanvasHeaderError;return;}
this.formPanel.hide(true,.2);this.titleValue=this.newTitleValue;this.descValue=this.newDescValue;this.viewPanel.body.update(this.viewTemplate.apply(this));this.viewPanel.show(true,.2);MktPage.updateFullTitle();if(isFunction(this.savedCallback)){this.savedCallback();}},_initFormPanel:function(){this.formPanel=new Ext.Panel({cls:'x-plain mktCanvasHeaderForm',bodyStyle:'background: transparent; border: transparent; margin-left: 8px;',width:this.editWidth,height:this.editHeight,autoHeight:true,buttonAlign:'right',layout:'form',defaultType:'textfield',items:[{name:this.titleId,value:Ext.util.Format.htmlDecode(this.titleValue),disabled:!this.titleEditable,blankText:this.emptyTitleText,allowBlank:false,cls:'inputH1',width:this.editTitleWidth,height:28,hideLabel:true,msgTarget:'side',tabIndex:1,listeners:{'specialkey':this.specialKey.createDelegate(this)}},{name:this.descId,value:Ext.util.Format.htmlDecode(this.descValue),disabled:!this.descEditable,cls:'inputH3',style:'margin-top: -1px',width:this.editDescWidth,height:22,hideLabel:true,tabIndex:2,listeners:{'specialkey':this.specialKey.createDelegate(this)}}],buttons:[{text:'Save',iconCls:'mkiOk',handler:this.saveEdit.createDelegate(this),tabIndex:4},{text:'Cancel',iconCls:'mkiCancel',handler:this.cancelEdit.createDelegate(this),tabIndex:5}]});this.add(this.formPanel);this.formPanel.on('render',function(){if(!this.titleEditable&&this.titleReadonlyReason.length>0){setTimeout(function(){new Ext.ToolTip({target:this.getTitleField().getEl().dom.parentNode.id,html:this.titleReadonlyReason});}.createDelegate(this),1000);}}.createDelegate(this));this.doLayout();}});
/* ========== ../mkt-ext-2.0/widgets/DateTime.js ============ */

Ext.ns('Ext.ux.form');Ext.ux.form.DateTime=Ext.extend(Ext.form.Field,{defaultAutoCreate:{tag:'input',type:'hidden'},timeWidth:100,dtSeparator:' ',hiddenFormat:'Y-m-d H:i:s',otherToNow:true,timePosition:'right',dateFormat:'m/d/y',timeFormat:'g:i A',initComponent:function(){Ext.ux.form.DateTime.superclass.initComponent.call(this);var dateConfig=Ext.apply({},{id:this.id+'-date',format:this.dateFormat||Ext.form.DateField.prototype.format,width:this.dateWidth||this.timeWidth,selectOnFocus:this.selectOnFocus,listeners:{blur:{scope:this,fn:this.onBlur},focus:{scope:this,fn:this.onFocus}}},this.dateConfig);this.df=new Ext.form.DateField(dateConfig);this.df.ownerCt=this;delete(this.dateFormat);var timeConfig=Ext.apply({},{id:this.id+'-time',format:this.timeFormat||Ext.form.TimeField.prototype.format,width:this.timeWidth,selectOnFocus:this.selectOnFocus,listeners:{blur:{scope:this,fn:this.onBlur},focus:{scope:this,fn:this.onFocus}}},this.timeConfig);this.tf=new Ext.form.TimeField(timeConfig);this.tf.ownerCt=this;delete(this.timeFormat);this.relayEvents(this.df,['focus','specialkey','invalid','valid']);this.relayEvents(this.tf,['focus','specialkey','invalid','valid']);},onRender:function(ct,position){if(this.isRendered){return;}
Ext.ux.form.DateTime.superclass.onRender.call(this,ct,position);var t;if('below'===this.timePosition||'bellow'===this.timePosition){t=Ext.DomHelper.append(ct,{tag:'table',style:'border-collapse:collapse',children:[{tag:'tr',children:[{tag:'td',style:'padding-bottom:1px',cls:'ux-datetime-date'}]},{tag:'tr',children:[{tag:'td',cls:'ux-datetime-time'}]}]},true);}
else{t=Ext.DomHelper.append(ct,{tag:'table',style:'border-collapse:collapse',children:[{tag:'tr',children:[{tag:'td',style:'padding-right:4px',cls:'ux-datetime-date'},{tag:'td',cls:'ux-datetime-time'}]}]},true);}
this.tableEl=t;this.wrap=t.wrap();this.wrap.on("mousedown",this.onMouseDown,this,{delay:10});this.df.render(t.child('td.ux-datetime-date'));this.tf.render(t.child('td.ux-datetime-time'));if(Ext.isIE&&Ext.isStrict){t.select('input').applyStyles({top:0});}
this.on('specialkey',this.onSpecialKey,this);this.df.el.swallowEvent(['keydown','keypress']);this.tf.el.swallowEvent(['keydown','keypress']);if('side'===this.msgTarget){var elp=this.el.findParent('.x-form-element',10,true);this.errorIcon=elp.createChild({cls:'x-form-invalid-icon'});this.df.errorIcon=this.errorIcon;this.tf.errorIcon=this.errorIcon;}
this.el.dom.name=this.hiddenName||this.name||this.id;this.df.el.dom.removeAttribute("name");this.tf.el.dom.removeAttribute("name");this.isRendered=true;this.updateHidden();},adjustSize:Ext.BoxComponent.prototype.adjustSize,alignErrorIcon:function(){this.errorIcon.alignTo(this.tableEl,'tl-tr',[2,0]);},initDateValue:function(){this.dateValue=this.otherToNow?new Date():new Date(1970,0,1,0,0,0);},clearInvalid:function(){this.df.clearInvalid();this.tf.clearInvalid();},beforeDestroy:function(){if(this.isRendered){this.wrap.removeAllListeners();this.wrap.remove();this.tableEl.remove();this.df.destroy();this.tf.destroy();}},disable:function(){if(this.isRendered){this.df.disabled=this.disabled;this.df.onDisable();this.tf.onDisable();}
this.disabled=true;this.df.disabled=true;this.tf.disabled=true;this.fireEvent("disable",this);return this;},enable:function(){if(this.rendered){this.df.onEnable();this.tf.onEnable();}
this.disabled=false;this.df.disabled=false;this.tf.disabled=false;this.fireEvent("enable",this);return this;},focus:function(){this.df.focus();},getPositionEl:function(){return this.wrap;},getResizeEl:function(){return this.wrap;},getValue:function(){return this.dateValue?new Date(this.dateValue):'';},isValid:function(){return this.df.isValid()&&this.tf.isValid();},isVisible:function(){return this.df.rendered&&this.df.getActionEl().isVisible();},onBlur:function(f){if(this.wrapClick){f.focus();this.wrapClick=false;}
if(f===this.df){this.updateDate();}
else{this.updateTime();}
this.updateHidden();(function(){if(!this.df.hasFocus&&!this.tf.hasFocus){var v=this.getValue();if(String(v)!==String(this.startValue)){this.fireEvent("change",this,v,this.startValue);}
this.hasFocus=false;this.fireEvent('blur',this);}}).defer(100,this);},onFocus:function(){if(!this.hasFocus){this.hasFocus=true;this.startValue=this.getValue();this.fireEvent("focus",this);}},onMouseDown:function(e){if(!this.disabled){this.wrapClick='td'===e.target.nodeName.toLowerCase();}},onSpecialKey:function(t,e){var key=e.getKey();if(key===e.TAB){if(t===this.df&&!e.shiftKey){e.stopEvent();this.tf.focus();}
if(t===this.tf&&e.shiftKey){e.stopEvent();this.df.focus();}}
if(key===e.ENTER){this.updateValue();}},setDate:function(date){this.df.setValue(date);},setTime:function(date){this.tf.setValue(date);},setSize:function(w,h){if(!w){return;}
if('below'===this.timePosition){this.df.setSize(w,h);this.tf.setSize(w,h);if(Ext.isIE){this.df.el.up('td').setWidth(w);this.tf.el.up('td').setWidth(w);}}
else{this.df.setSize(w-this.timeWidth-4,h);this.tf.setSize(this.timeWidth,h);if(Ext.isIE){this.df.el.up('td').setWidth(w-this.timeWidth-4);this.tf.el.up('td').setWidth(this.timeWidth);}}},setValue:function(val){if(!val&&true===this.emptyToNow){this.setValue(new Date());return;}
else if(!val){this.setDate('');this.setTime('');this.updateValue();return;}
if('number'===typeof val){val=new Date(val);}
val=val?val:new Date(1970,0,1,0,0,0);var da,time;if(val instanceof Date){this.setDate(val);this.setTime(val);this.dateValue=new Date(val);}
else{da=val.split(this.dtSeparator);this.setDate(da[0]);if(da[1]){if(da[2]){da[1]+=da[2];}
this.setTime(da[1]);}}
this.updateValue();},setVisible:function(visible){if(visible){this.df.show();this.tf.show();}else{this.df.hide();this.tf.hide();}
return this;},show:function(){return this.setVisible(true);},hide:function(){return this.setVisible(false);},updateDate:function(){var d=this.df.getValue();if(d){if(!(this.dateValue instanceof Date)){this.initDateValue();if(!this.tf.getValue()){this.setTime(this.dateValue);}}
this.dateValue.setMonth(0);this.dateValue.setFullYear(d.getFullYear());this.dateValue.setMonth(d.getMonth());this.dateValue.setDate(d.getDate());}
else{this.dateValue='';this.setTime('');}},updateTime:function(){var t=this.tf.getValue();if(t&&!(t instanceof Date)){t=Date.parseDate(t,this.tf.format);}
if(t&&!this.df.getValue()){this.initDateValue();this.setDate(this.dateValue);}
if(this.dateValue instanceof Date){if(t){this.dateValue.setHours(t.getHours());this.dateValue.setMinutes(t.getMinutes());this.dateValue.setSeconds(t.getSeconds());}
else{this.dateValue.setHours(0);this.dateValue.setMinutes(0);this.dateValue.setSeconds(0);}}},updateHidden:function(){if(this.isRendered){var value=this.dateValue instanceof Date?this.dateValue.format(this.hiddenFormat):'';this.el.dom.value=value;}},updateValue:function(){this.updateDate();this.updateTime();this.updateHidden();return;},validate:function(){return this.df.validate()&&this.tf.validate();},renderer:function(field){var format=field.editor.dateFormat||Ext.ux.form.DateTime.prototype.dateFormat;format+=' '+(field.editor.timeFormat||Ext.ux.form.DateTime.prototype.timeFormat);var renderer=function(val){var retval=Ext.util.Format.date(val,format);return retval;};return renderer;}});Ext.reg('xdatetime',Ext.ux.form.DateTime);
/* ========== ../mkt-ext-2.0/util/util.js ============ */

function toggle(id){el=document.getElementById(id);el.style.display=el.style.display=='none'?'block':'none';}
String.prototype.escapeHTML=function(){var div=document.createElement('div');var text=document.createTextNode(this);div.appendChild(text);return div.innerHTML;};String.prototype.ellipse=function(maxLength){if(this.length>maxLength){return this.substr(0,maxLength-3)+'...';}
return this;};MktFormat={formatCurrency:function(v){if((typeof v=='number'&&isFinite(v)&&v!=0)||(typeof v=='string'&&v.length>0)){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;},formatFloat:function(v,addTrailingZeros){if((typeof v=='number'&&isFinite(v)&&v!=0)||(typeof v=='string'&&v.length>0)){v=(Math.round((v-0)*100))/100;if(addTrailingZeros){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]:(addTrailingZeros?'.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;},formatInt:function(v){return MktFormat.formatFloat(v,false);},empty:function(v){if(!v||v=='')return"<i>Empty</i>";return v;},formatDateValue:function(v,fmt){if(v!=null&&v.format){return v.format(fmt);}
return MktFormat.empty(v);},formatDate:function(v){return MktFormat.formatDateValue(v,'M j, Y');},formatDatetime:function(v){return MktFormat.formatDateValue(v,'M j, Y  h:i A');},formatDatetimeSeconds:function(v){return MktFormat.formatDateValue(v,'M j, Y  h:i:s A');},formatDateWeek:function(v){return'Week of '+MktFormat.formatDateValue(v,'M j, Y');},formatDateMonth:function(v){return MktFormat.formatDateValue(v,'M Y');},formatDateQuarter:function(v){if(!v.format)return MktFormat.empty(v);return'Q'+Math.round(v.getMonth()/3+1)+' '+v.getFullYear();},formatDateYear:function(v){return MktFormat.formatDateValue(v,'Y');}};isArray=function(v){return v&&typeof(v)=='object'&&v.length>-1;};isSingleArray=function(v){return v&&typeof(v)=='object'&&v.length==1;};isMultiArray=function(v){return v&&typeof(v)=='object'&&v.length>1;};
/* ========== ../mkt-ext-2.0/util/vtypes.js ============ */

var vt=Ext.form.VTypes;vt["mkt_url"]=function(v,field){if(v.indexOf('http')!=0){v='http://'+v;field.setValue(v);}
return vt["url"](v,field);};vt["bool"]=function(v){return v=='true'||v=='false';};vt["phone"]=function(v){return vt["phoneVal"].test(v);}
vt["phoneVal"]=/^(d{3}[-]?){1,2}(d{4})$/;vt["phoneMask"]=/[d-]/;vt["phoneText"]='Not a valid phone number.  Must be in the format 123-4567 or 123-456-7890 (dashes optional)';vt["hostname"]=function(v){if(!vt["hostnameVal1"].test(v)){vt["hostnameText"]="Must begin with a letter and not exceed 255 characters"
return false;}
vt["hostnameText"]="L[.L][.L][.L][...] where L begins with a letter, ends with a letter or number, and does not exceed 63 characters";return vt["hostnameVal2"].test(v);}
vt["hostnameVal1"]=/^[a-zA-Z][-.a-zA-Z0-9]{0,254}$/;vt["hostnameVal2"]=/^[a-zA-Z]([-a-zA-Z0-9]{0,61}[a-zA-Z0-9]){0,1}([.][a-zA-Z]([-a-zA-Z0-9]{0,61}[a-zA-Z0-9]){0,1}){0,}$/;vt["hostnameText"]="Invalid Hostname";vt["ip"]=function(v){return vt["ipVal"].test(v);}
vt["ipVal"]=/^([1-9][0-9]{0,1}|1[013-9][0-9]|12[0-689]|2[01][0-9]|22[0-3])([.]([1-9]{0,1}[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){2}[.]([1-9][0-9]{0,1}|1[0-9]{2}|2[0-4][0-9]|25[0-4])$/;vt["ipText"]="1.0.0.1 - 223.255.255.254 excluding 127.x.x.x";vt["ipMask"]=/[.0-9]/;Ext.apply(Ext.form.VTypes,{daterange:function(val,field){var date=field.parseDate(val);var dispUpd=function(picker){var ad=picker.activeDate;picker.activeDate=null;picker.update(ad);};if(field.startDateField){var sd=field.startDateField;sd.maxValue=date;if(sd.menu&&sd.menu.picker){sd.menu.picker.maxDate=date;dispUpd(sd.menu.picker);}}else if(field.endDateField){var ed=field.endDateField;ed.minValue=date;if(ed.menu&&ed.menu.picker){ed.menu.picker.minDate=date;dispUpd(ed.menu.picker);}}
return true;}});
/* ========== ../mkt-ext-2.0/widgets/ModalForm.js ============ */

Ext.ns("Mkt.widgets","Mkt.widgets.Forms");Mkt.widgets.Forms={okButtonText:'OK',okButtonIconCls:'mkiOk',createButtonText:'Create',createButtonIconCls:'mkiAdd2',cancelButtonText:'Cancel',cancelButtonIconCls:'mkiCancel',defaultWidth:500,defaultHeight:300};MktModalForm=Mkt.widgets.Forms.ModalForm=function(config){var MktForms=Mkt.widgets.Forms;this.processContentConfig(config);this.extension=config.extension||null;var dialogConfig={id:config.id||Ext.id(),cls:'mktModalForm',width:config.width||this.defaultWidth,height:config.height||this.defaultHeight,autoCreate:true,minWidth:400,minHeight:300,syncHeightBeforeShow:true,shadow:true,modal:true,autoScroll:true,resizable:true,closable:false,fixedcenter:true};if(isDefined(config.extraRegions)){var regions=[{id:'mktDlgCenter',region:'center',bodyStyle:'background-color: transparent'}];for(var ix=0;ix<config.extraRegions.length;ix++){regions.push(config.extraRegions[ix]);}
dialogConfig.layout='border';dialogConfig.items=regions;}
if(isDefined(config.dialogOpts)){Object.extend(dialogConfig,config.dialogOpts);}
if(isDefined(config.cls))dialogConfig.cls+=' '+config.cls;if(isDefined(config.style))dialogConfig.style=config.style;var dlg=new Ext.Window(dialogConfig);dlg.setTitle(config.title);this.dlg=dlg;this.buttons=Array();if(!config.okButtonIconcls&&config.okButtonTitle===MktForms.createButtonText){config.okButtonIconCls=MktForms.createButtonIconCls;}
var okCfg={text:config.okButtonTitle||'OK',iconCls:config.okButtonIconCls||MktForms.okButtonIconCls};this.okButtonCallback=function(){this.okButtonClicked=true;this.doCallback();};this.buttons.push(dlg.addButton(okCfg,this.okButtonCallback,this));if(isUndefined(config.noCancelButton)){var cancelCfg={text:config.cancelButtonTitle||'Cancel',iconCls:config.cancelButtonIconCls||MktForms.cancelButtonIconCls};this.buttons.push(dlg.addButton(cancelCfg,this.cancel,this));}
if(isDefined(config.extraButtons)){if(isArray(config.extraButtons)){for(var ib=0;ib<config.extraButtons.length;ib++){var btn=config.extraButtons[ib];this.buttons.push(dlg.addButton({text:btn.buttonTitle,iconCls:button.buttonIconCls},btn.callback,this,{buffer:300}));}}
else{var btn=config.extraButtons;this.buttons.push(dlg.addButton({text:btn.buttonTitle,iconCls:btn.buttonIconCls},btn.callback,this,{buffer:300}));}}
dlg.render(Ext.getBody());dlg.on('show',this.load,this,true);dlg.getEl().addKeyListener(10,this.keyEnter,this);dlg.getEl().addKeyListener(13,this.keyEnter,this);this.textAreaFocused=false;var innerParent=dlg.findById('mktDlgCenter');if(innerParent!=null){innerParent=innerParent.body;}
else{innerParent=dlg.body;}
this.innerEl=innerParent.createChild({tag:'div',id:'mktModalInner'});this.checkRequired=isDefined(config.checkRequired)?config.checkRequired:true;this.requiredChecker=isDefined(config.requiredChecker)?config.requiredChecker:this.rfChecker;this.clickRequired=isDefined(config.clickRequired)?config.clickRequired:false;this.loaded=false;this.events={'okclick':true,'cancelclick':true,'load':true};MktSession.activeModalForm=this;};Ext.extend(MktModalForm,Ext.util.Observable);MktModalForm.prototype.processContentConfig=function(config){this.url=null;this.renderer=null;this.staticForm=null;if(isDefined(config.url)){this.url=config.url;this.ajopts={containerId:'mktModalInner',targetActivePanel:false,onMySuccess:this.loadDone.createDelegate(this,null,true)};Object.extend(this.ajopts,config.ajopts||{});}else if(isDefined(config.renderer)){this.renderer=config.renderer;this.rendererscope=config.rendererscope;if(isDefined(config.rendererargs)){this.rendererargs=config.rendererargs;}else{this.rendererargs=[];}}else if(isDefined(config.staticForm)){this.staticForm=config.staticForm;}};MktModalForm.prototype.show=function(animEl,callback){if(animEl){this.dlg.show(animEl);}else{this.dlg.show();}
this.callback=callback;};MktModalForm.prototype.load=function(){if(!this.loaded){if(this.url!=null){Ext.DomHelper.insertHtml('afterBegin',this.innerEl.dom,'<div class="mktModalLoading"></div>');this.ajopts.onMySuccess=this.loadDone.createDelegate(this,null,true);MktSession.ajaxRequest(this.url,this.ajopts);}else if(this.renderer!=null){var rargs=this.rendererargs;rargs.unshift(this.innerEl.dom);this.renderer.apply(this.rendererscope,rargs);MktUtil.focusForm.defer(500,this,['mktModalInner']);this.newContentLoaded();this.fireEvent('load',this);}else if(this.staticForm!=null){var protoform=$(this.staticForm).cloneNode(true);MktUtil.removeProtoIdPrefix(protoform,'p.');var newform=this.innerEl.dom.appendChild(protoform);getEl(newform).setDisplayed(true);MktUtil.focusForm(newform);this.newContentLoaded();this.fireEvent('load',this);}
this.bindCssHandlers();}};MktModalForm.prototype.bindCssHandlers=function(){var fmEls=Ext.query("form",this.innerEl.dom);if(fmEls.length==0)return true;function mktHandleTrim(el,ix,a){getEl(el).on('blur',function(){el.value=el.value.trim();});}
Ext.query('input[@type=text].mktHandleTrim',fmEls[0]).forEach(mktHandleTrim,this);function mktHandleEmail(el,ix,a){mktHandleTrim(el);}
Ext.query('input[@type=text].mktHandleEmail',fmEls[0]).forEach(mktHandleEmail,this);};MktModalForm.prototype.newContent=function(config,callback){this.processContentConfig(config);if(isDefined(config.title)){this.dlg.setTitle(config.title);}
this.loaded=false;this.callback=callback;this.innerEl.dom.innerHTML='';this.load();};MktModalForm.prototype.disableButton=function(btnIdx,text){this.buttons[btnIdx].disable();};MktModalForm.prototype.setButtonText=function(btnIdx,text){this.buttons[btnIdx].setText(text);};MktModalForm.prototype.hideButton=function(btnIdx){this.buttons[btnIdx].hide();};MktModalForm.prototype.showButton=function(btnIdx){this.buttons[btnIdx].show();};MktModalForm.prototype.addClientButton=function(text,callback){this.buttons.push(this.dlg.addButton(text,callback,this));return this.buttons.length-1;};MktModalForm.prototype.showProgress=function(callOptions){var options={clearContents:false,title:"Loading..."};Object.extend(options,callOptions||{});var html='<div class="mktModalLoadingIcon">Loading...</div>';var target=$('mktModalInner');if(options.clearContents){Ext.get(target).removeAllListeners();target.innerHTML='';}
Ext.DomHelper.insertHtml('afterBegin',$('mktModalInner'),html);};MktModalForm.prototype.loadDone=function(jsonObject){this.newContentLoaded();this.fireEvent('load',this,jsonObject);MktUtil.focusForm(this.innerEl.dom);if(Ext.isIE){MktUtil.focusForm.defer(1000,this,['mktModalInner']);}
this.loaded=true;};MktModalForm.prototype.close=function(){if(this.dlg&&this.dlg.animateTarget){this.dlg.animateTarget=null;}
this.dlg.hide();this.dlg.destroy(true);};MktModalForm.prototype.cancel=function(){Ext.MessageBox.hide();this.close();this.fireEvent('cancelclick',this);};MktModalForm.prototype.keyEsc=function(dlg,k,e){this.cancel();};MktModalForm.prototype.keyEnter=function(k,e){if(!this.textAreaFocused){e.stopEvent();this.doCallback();}};MktModalForm.prototype.newContentLoaded=function(){var tas=Ext.query('textarea',this.innerEl.dom);for(var ix=0;ix<tas.length;ix++){getEl(tas[ix]).on('focus',function(){this.textAreaFocused=true;},this,true);getEl(tas[ix]).on('blur',function(){this.textAreaFocused=false;},this,true);}};MktModalForm.prototype.doCallback=function(){MktModalForm.clearMessage();window.focus();if(this.clickRequired&&!this.okButtonClicked){return;}
this.okButtonClicked=false;if(this.checkRequired){if(!this.requiredChecker.call(this))return;}
this.fireEvent('okclick',this);var callback=this.callback;if(callback){var doHide=callback(this);if(doHide){this.close();}}};MktModalForm.prototype.rfChecker=function(){var fmEls=Ext.query('form',this.innerEl.dom);if(fmEls.length==0)return true;this.validateErrors=0;var rfs=Ext.query('tr.mktRequired, div.mktRequired',fmEls[0]);for(var ix=0;ix<rfs.length;ix++){this.valRow=rfs[ix];Ext.query('input[@type=text]',rfs[ix]).forEach(function(el,ix,a){this.rfCheckValError(el,ix,a);this.rfCheckIntValError(el,ix,a);},this);Ext.query('input[@type=password]',rfs[ix]).forEach(this.rfCheckValError,this);Ext.query('input[@type=file]',rfs[ix]).forEach(this.rfCheckValError,this);Ext.query('select',rfs[ix]).forEach(this.rfCheckValError,this);Ext.query('textarea',rfs[ix]).forEach(this.rfCheckValError,this);}
if(this.validateErrors>0){MktModalForm.clearMessage();MktModalForm.setMessageError('Please fill in a correct value on all required fields');return false;}else{return true;}};MktModalForm.prototype.rfCheckValError=function(el,ix,a){if(el.style.display=='none')return;if(el.value.length==0){this.validateErrors++;Ext.get(this.valRow).addClass('mktFieldError');Ext.get(el).on('change',this.rfInTxChange,this,true);Ext.get(el).on('keyup',this.rfInTxChange,this,true);}};MktModalForm.prototype.rfCheckIntValError=function(el,ix,a){var extEl=Ext.get(el);if(extEl.hasClass("mktIntValOnly")){var value=el.value;if(value.length!=0&&isNumber(value*1)){extEl.removeClass('mktFieldError');}else{this.validateErrors++;extEl.addClass('mktFieldError');extEl.addListener('change',this.rfCheckIntValChangeError,this);extEl.addListener('keyup',this.rfCheckIntValChangeError,this);}}};MktModalForm.prototype.rfCheckIntValChangeError=function(e,el){var el=Ext.get(el);el.removeClass('mktFieldError');el.removeListener('change',this.rfCheckIntValChangeError);el.removeListener('keyup',this.rfCheckIntValChangeError);this.validateErrors--;if(this.validateErrors==0){MktModalForm.clearMessage();}};MktModalForm.prototype.rfInTxChange=function(e){var eTarget=e.getTarget();var eRow=e.getTarget('tr.mktRequired');Ext.get(eRow).removeClass('mktFieldError');Ext.get(eTarget).un('change',this.rfInTxChange);Ext.get(eTarget).un('keyup',this.rfInTxChange);this.validateErrors--;if(this.validateErrors==0){MktModalForm.clearMessage();}};MktModalForm.clearMessage=function(spaceFill){var ife=Ext.query('.mktModalInFormMessage',$('mktModalInner'));if(ife.length>0){var marea=ife[0];if(!spaceFill){marea.style.display='none';}}else{var marea=$('mdgMessage');}
if(marea){if(spaceFill){marea.innerHTML="&nbsp;";}else{marea.innerHTML="";}}};MktModalForm.setMessage=function(message){var ife=Ext.query('.mktModalInFormMessage',$('mktModalInner'));if(ife.length>0){var marea=ife[0];if(marea.style.display=='none'){marea.style.display='block';}}else{var marea=$('mdgMessage');}
var messageHTML="<div class='mktModalMessage'>"+message+"</div>";if(marea){Ext.DomHelper.insertHtml('afterBegin',marea,messageHTML);}};MktModalForm.setMessageError=function(message){var ife=Ext.query('.mktModalInFormMessage',$('mktModalInner'));if(ife.length>0){var marea=ife[0];if(marea.style.display=='none'){marea.style.display='block';}}else{var marea=$('mdgMessage');}
var messageHTML="<div class='mktModalErrorMessage'>"+message+"</div>";if(marea){Ext.DomHelper.insertHtml('afterBegin',marea,messageHTML);}};
/* ========== ../mkt-ext-2.0/widgets/ToolbarButton.js ============ */

Mkt.widgets.ToolbarButton=Ext.extend(Ext.Toolbar.Button,{ctype:"Mkt.widgets.ToolbarButton",initComponent:function(){Mkt.widgets.ToolbarButton.superclass.initComponent.call(this);this.addEvents("beforemenushow");this.on('beforedestroy',function(){if(this.menu&&this.menu.shared){delete this.menu;}});if(this.menuPreShowCb){this.on('beforemenushow',this.menuPreShowCb.createDelegate(this,this.menu,true));}},onMenuShow:function(e){if(this.showingMenu){Mkt.widgets.ToolbarButton.superclass.onMenuShow.call(this,e);}},showMenu:function(){this.showingMenu=true;if(this.menu.xtra){delete this.menu.xtra;}
this.menu.triggeredFrom='button';this.fireEvent('beforemenushow',this.menu);Mkt.widgets.ToolbarButton.superclass.showMenu.call(this);this.showingMenu=false;}});Ext.reg('mkttbbutton',Mkt.widgets.ToolbarButton);
/* ========== ../mkt-ext-2.0/util/DlManager.js ============ */

Ext.ns("Mkt","Mkt.app","Mkt.util");Mkt.app.Manager=Ext.extend(Ext.util.Observable,{registerComp:function(type,func){if(!type){return;}
this.addEvents(Ext.util.Format.lowercase(type));this.addListener(type,func);},_get:function(type,attr){var ret={};if(typeof type=="object"&&type.type&&attr==undefined){attr=type;type=type.type;}
this.fireEvent(type,attr,ret);return ret.comp;},getComp:function(type,attr){throw"Not Implemented";}});Mkt.util.DeepLinkMgr=function(){var historyDelimiter='/';var dlCodeMap={MM:{type:"Home"},WN:{type:"Home",panelIndex:1},MA:{type:"MA"},PG:{type:"MA",subType:"program"},SC:{type:"MA",subType:"smartcampaign"},DS:{type:"Landing"},LP:{type:"Landing",subType:"page"},LT:{type:"Landing",subType:"template"},TG:{type:"Landing",subType:"test"},FO:{type:"Landing",subType:"form"},EM:{type:"Landing",subType:"email"},ET:{type:"Landing",subType:"emailTemplate"},FI:{type:"Landing",subType:"image"},ML:{type:"LeadDb"},SL:{type:"LeadDb",subType:"smartlist",compType:"Smart List"},ST:{type:"LeadDb",subType:"list",compType:"List",compSubtype:"List"},AR:{type:"Analytics",subType:""},AS:{type:"Analytics",panelId:"atxCanvasSubscriptions"},LD:{type:"Lead"},AD:{type:"CustAdmin",nodeId:300},MC:{type:"CustAdmin",compSubtype:"MyAccount",nodeId:301},TZ:{type:"CustAdmin",compSubtype:"marketoSubscription",nodeId:302},UR:{type:"CustAdmin",compSubtype:"users",nodeId:303},SF:{type:"CustAdmin",compSubtype:"integration",panelId:"cadSfdcSettings",nodeId:304},SIP:{type:"CustAdmin",compSubtype:"lisAdmin",nodeId:305,panelId:"cadLisAdmin"},SIA:{type:"CustAdmin",compSubtype:"lisAdmin",nodeId:305,panelId:"cadSIAdmin"},LPA:{type:"CustAdmin",compSubtype:"integration",panelId:"cadLpSettings",nodeId:306},EA:{type:"CustAdmin",compSubtype:"emailSettings",nodeId:307},MS:{type:"CustAdmin",compSubtype:"webTracking",nodeId:308},FM:{type:"SchemaHome",nodeId:309},FMP:{type:"SchemaHome",panelId:"fmFieldMapping",nodeId:309},LL:{type:"SchemaHome",panelId:"fmLeadDisplayLayout",nodeId:309},SO:{type:"CustAdmin",compSubtype:"integration",panelId:"cadSfdcObjectSync",nodeId:304},SEL:{type:"CustAdmin",compSubtype:"integration",panelId:"cadSfdcSystemErrorLog",nodeId:304},SP:{type:"CustAdmin",compSubtype:"integration",panelId:"cadSfdcProgressLogs",nodeId:304}};var satelliteToken='!';return Ext.apply(new Mkt.app.Manager(),{convertDlObj:function(dlArr){var dlParms={};for(var i=0;i<dlArr.length;i+=2){if(isDefined(dlArr[i+1])){dlParms[dlArr[i]]=dlArr[i+1];}}
return dlParms;},onHistoryChange:function(token){if(token.length<=0){return;}
token=token.toUpperCase();if(!this.updateMutex){var loadHome=false;if(token){var dlParms=this.getDlParams(token);if(dlParms){this.loadDl(dlParms);}else{loadHome=true;}}else{loadHome=true;}
if(loadHome){this.loadDl({type:"Home"});}}
this.updateMutex=false;},getDlParams:function(dlPath){if(this.areDlCodes(dlPath)){var dlPath=this.convertDlCode(dlPath);if(isUndefined(dlCodeMap[dlPath["dlCompCode"]])){return;}
dlPath=Ext.apply(dlPath,dlCodeMap[dlPath["dlCompCode"]]);return dlPath;}else{return this.convertDlObj(token.split(this.historyDelimiter));}},convertDlCode:function(dlPath){var path=dlPath.match(/^([a-z]+)([0-9]*)([a-z]*)([!]*)/i);var pathObj;if(path){var pathObj={dlCompCode:path[1]};if(path[2]){pathObj.compId=path[2];}
if(path[3]){pathObj.panelIndex=path[3].charCodeAt()-'A'.charCodeAt();}
if(path[4]==satelliteToken){pathObj.satellite=1;}}
return pathObj;},convertDlPath:function(obj){var pathObj=[];for(key in dlCodeMap){if(key==obj.dlCompCode){pathObj.push(obj.dlCompCode);if(obj.compId){pathObj.push(obj.compId);pathObj.push(String.fromCharCode('A'.charCodeAt()+obj.panelIndex||0));}}}
return pathObj.join("");},areDlCodes:function(dlPath){return!(/\//.test(dlPath));},updateHistory:function(obj){var dlPath=this.convertDlPath(obj);var runTitleFixup=false;var currToken=Ext.History.getToken()||"";if(currToken.indexOf(satelliteToken)!=-1){dlPath+=satelliteToken;}
if(dlPath&&dlPath.toUpperCase()!=currToken.toUpperCase()){this.updateMutex=true;runTitleFixup=true;Ext.History.add(dlPath,true);}
if(dlPath&&dlPath.length>0){MktPage.updateFullTitle();runTitleFixup=true;}
if(runTitleFixup){this.startTitleFixup();}},startTitleFixup:function(maxIeTitleFixup,interval){var interval=interval||50;if(Ext.isIE){var maxIeTitleFixup=maxIeTitleFixup||100;if(isDefined(this.intId)){clearInterval(this.intId);this.intId=undefined;}
if(isUndefined(this.intId)){var doc=window.document;var localMaxIeTitleFixup=maxIeTitleFixup;this.intId=window.setInterval(function(){if(isDefined(doc.currentTitle)&&doc.title!=doc.currentTitle){MktPage.setTitle(doc.currentTitle);}
if(localMaxIeTitleFixup<=0){clearInterval(this.intId);this.intId=undefined;}
localMaxIeTitleFixup--;}.createDelegate(this),interval);}}},registerDl:function(type,func){this.registerComp.apply(this,arguments);},loadDl:function(params){this.mapParams(params);for(key in params){this._get(key,params);}},mapParams:function(params){if(isUndefined(params))return params;if(isDefined(params.type)){if(params.type=="MA"){params.compSubtype=params.compSubtype||params.subType;}}},getDlUrl:function(compCode,compId,tabIndex,satelliteMode){var hash='#'+compCode+compId+tabIndex+(satelliteMode?'!':'');return MktSession.getUrlPrefix()+hash;}});}();MktDlManager=Mkt.util.DeepLinkMgr;MktDlManager.registerDl('type',function(params){MktMainNav['load'+params.type](params);});
/* ========== mktLanding.js ============ */

function mktLandingManager(gridId,schema,colConfig){this.schema=schema;this.gridId=gridId;this.colModel=new mktFooterColumnModel(colConfig);this.selModel=new YAHOO.ext.grid.DefaultSelectionModel();this.dataModel=new mktLandingDataModel(this.schema);this.gConfig={dataModel:this.dataModel,colModel:this.colModel,autoSizeColumns:true,selModel:this.selModel,enableDragDrop:false,disableSelection:false};this.gridRendered=false;this.myPanelId=MktPage.activePanel.cName;this.rowHeight=this.getRowHeight();this.setGridSize();this.grid=new mktFooterGrid(gridId,this.gConfig);MktPage.eventMgr.on('canvasresizedone',this.canvasResized,this,true);MktPage.eventMgr.on('panelactivate',this.panelActivated,this,true);this.selModel.addListener('selectionChange',this.selectionChanged,this,true);MktPage.canvasCleanupStack.push(this.destroy.createDelegate(this));};mktLandingManager.prototype.loadGrid=function(gData){this.dataModel.loadData(gData);this.grid.render();this.gridRendered=true;this.reRenderOnShow=false;};mktLandingManager.prototype.reRenderGrid=function(){if(this.gridRendered){this.grid.reset(this.gConfig);this.grid.render();}};mktLandingManager.prototype.getRowHeight=function(){var rule=YAHOO.ext.util.CSS.getRule(["#"+this.gridId+" .ygrid-row",".ygrid-row"]);if(rule&&rule.style.height){var rowHeight=parseInt(rule.style.height,10);}else{var rowHeight=21;}
return rowHeight;};mktLandingManager.prototype.getGridSizeParameters=function(){var sp={minHeight:300,maxHeight:800,reservedHeight:142};return sp;};mktLandingManager.prototype.setGridSize=function(){var gridPanel=getEl(this.myPanelId);var cv=getEl(MktUtil.getFirstElementByClassName('mktPanelOverflow','div',gridPanel.dom));var sp=this.getGridSizeParameters();var cvh=cv.getHeight(true);cvh=Math.min(cvh,sp.maxHeight);cvh=Math.max(cvh,sp.minHeight);cvh=this.rowHeight*(Math.floor(cvh/this.rowHeight));var gridEl=getEl(this.gridId);gridEl.setHeight(cvh-sp.reservedHeight);};mktLandingManager.prototype.canvasResized=function(){var showingPanel=MktPage.activePanel.cName;if(showingPanel==this.myPanelId){this.setGridSize();this.reRenderGrid();}else{this.reRenderOnShow=true;}};mktLandingManager.prototype.panelActivated=function(panel){if(this.myPanelId==panel.cName){if(this.reRenderOnShow){this.setGridSize();this.reRenderGrid();this.reRenderOnShow=false;}}};mktLandingManager.prototype.getNumSelected=function(){return this.selModel.getCount();};mktLandingManager.prototype.getSelectedIds=function(){return this.selModel.getSelectedRowIds();};mktLandingManager.prototype.getDeployStatus=function(id){var rdx=this.dataModel.getRowIndexById(id);var dpStatus=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf('lpStatus'));return dpStatus;};mktLandingManager.prototype.selectGridRows=function(rowId){this.selModel.selectRowsById(rowId,false);var newrow=this.grid.getRowsById(rowId);this.grid.scrollTo(newrow);};mktLandingManager.prototype.selectionChanged=function(selModel,rows,ids){};mktLandingManager.prototype.addGridRow=function(gData){if(gData[this.schema.root].length>0){this.dataModel.loadData(gData,null,true);var newId=gData[this.schema.root][0][this.schema.id];var newrow=this.grid.getRowsById(newId);this.grid.scrollTo(newrow);}};mktLandingManager.prototype.deleteGridRows=function(delData){var dellength=delData.length;if(dellength>0){var rowindexes=[];for(var ix=0;ix<dellength;ix++){var ritem=delData.shift();var row=this.grid.getRowsById(ritem[this.schema.id]);this.selModel.deselectRow(row);rowindexes[ix]=this.dataModel.getRowIndexById(ritem[this.schema.id]);}
this.dataModel.removeRowList(rowindexes);}};mktLandingManager.prototype.showDetailPanel=function(oid,area,isDraftNode){var parms={};parms.objId=oid;if(isDefined(isDraftNode)){parms.isDraftNode=isDraftNode;}
MktSession.ajaxRequest('landingPage/'+area+'Detail',{serializeParms:parms});};mktLandingManager.prototype.destroy=function(){MktPage.eventMgr.removeListener('canvasresizedone',this.canvasResized,this);MktPage.eventMgr.removeListener('panelactivate',this.panelActivated,this);this.grid.resetCSS();this.grid.destroy();};mktLandingManager.prototype.requestRefreshGrid=function(action){MktSession.ajaxRequest(action,{onMySuccess:this.processRefreshGrid.createDelegate(this)});};mktLandingManager.prototype.processRefreshGrid=function(){this.selModel.clearSelections();this.dataModel.loadData(MktPage.appVars[this.schema.root]);delete MktPage.appVars[this.schema.root];};mktLandingManager.prototype.checkInUse=function(field,eMsg,srid,panelId){if(srid.length>0){var panel=MktCanvas.getItem(MktCanvas.getTab(panelId));if(!panel){return;}
for(var ix=0;ix<srid.length;ix++){var grid=panel.getGridPanel();if(grid){var store=grid.getStore();var rec=store.getById(srid[ix]);if(rec&&rec.data[field]&&rec.data[field].length>0){MktMessage.showWarning(eMsg);return true;}}}}
return false;};mktLandingManager.prototype.driveDeleteObjects=function(oids,animEl){var iuEmsg="You cannot delete "+this.oTypeText+"s that are in use.  No "+
this.oTypeText+"s were deleted.";if(mktLandingManager.prototype.checkInUse('usedBy',iuEmsg,oids,this.panelId))return;var dCount=oids.length;if(dCount==1){var rdx=this.dataModel.getRowIndexById(oids[0]);var objectName=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf(this.oPfx+'Name'));var cmsg='Are you sure you want to delete <b>'+objectName+'</b> ?';}else if(dCount>1){var cmsg='Are you sure you want to delete multiple '+this.oTypeText+'s?';}else{return;}
this.dOids=oids;MktMessage.confirmDelete('Delete '+this.oTypeText+'?',cmsg,mktLandingManager.prototype.submitDeleteObjects.createDelegate(this),animEl);};mktLandingManager.prototype.submitDeleteObjects=function(btn,unused,checked){if(this.dOids.length>0){var parms={};for(var ix=0;ix<this.dOids.length;ix++){var dItem='dobjid_'+this.dOids[ix];parms[dItem]=dItem;}
if(checked)parms.delTp=1;var uTypeText=this.oTypeText.replace(/^[a-z]/,function(m){return m.toUpperCase();});var url='landingPage/delete'+uTypeText+'Request';MktSession.ajaxRequest(url,{serializeParms:parms,onMySuccess:mktLandingManager.prototype.deleteObjectsDone.createDelegate(this)});}};mktLandingManager.prototype.deleteObjectsDone=function(){if(isDefined(MktPage.appVars.warningMessage)){MktMessage.showWarning(MktPage.appVars.warningMessage);delete MktPage.appVars.warningMessage;}
try{var delNodeIds=MktPage.appVars.deletedNodeIds;if(isDefined(delNodeIds)){MktExplorer.removeNodes(delNodeIds);delete MktPage.appVars.deletedNodeIds;}
var addNodeJsons=MktPage.appVars.addedNodeJsons;if(isDefined(addNodeJsons)){MktExplorer.addNodes(addNodeJsons);delete MktPage.appVars.addedNodeJsons;}
var panel=MktCanvas.getItem(MktCanvas.getTab(this.panelId));if(panel){var grid=panel.getGridPanel();var deletedOids=MktPage.appVars.deletedOids;if(grid&&deletedOids){grid.deleteGridRows(deletedOids);}}}catch(e){if(!panel){var panel=MktCanvas.getItem(MktCanvas.getTab(this.panelId));}
if(!grid&&panel){var grid=panel.getGridPanel();}
if(grid&&panel){grid.getStore().reload();}}
var tabId=MktCanvas.getTab(this.detailPanelId);var tab=MktCanvas.getItem(tabId);if(tab){var id=tab.config.compId*1;if(this.dOids.indexOf(id)>=0){MktCanvas.remove(tabId);}}};mktLandingManager.prototype.getTargets=function(){var targets=[];if(MktPage.activePanel.cName==this.panelIdOverview){if(this.getNumSelected()>0){targets=this.getSelectedIds();}}else{targets=[MktPage.activePanel.config.cHData];}
return targets;};mktLandingManager.prototype.rndPercent=function(value,rowIdx,colIdx){if(value===""||value===null||isNaN(value))return'';var nStr=value*100+'';var x=nStr.split('.');var x1=x[0];var x2=x.length>1?'.'+x[1].substring(0,2):'';return x1+'%';};mktLandingManager.prototype.rndDateTime=function(val){if(val=='')return val;return MktUtil.formatDate(new Date(val*1000),"d NNN yy hh:mmp");};mktLandingManager.prototype.rndInUseBy=function(val){if(!(val instanceof Array))return'';if(val.length==0)return'Not used';var maxToShow=3;var rv='';var first=true;for(var ix=0;ix<val.length;ix++){if(ix==(maxToShow-1))break;if(!first)rv+=', ';var lv=val[ix].lpName;rv+=lv.replace(' ','&nbsp;','g');first=false;}
var leftToShow=val.length-ix;if(leftToShow==1){var lv=val[maxToShow-1].lpName;rv+=', '+lv.replace(' ','&nbsp;','g');}else if(leftToShow>1){var first=true;var tip='';for(var jx=ix;jx<val.length;jx++){if(!first)tip+=', ';tip+=val[jx].lpName;first=false;}
rv+='<span class="mktMoreTip" title="'+tip+'">, ('+leftToShow+'&nbsp;more)</span>';}
return rv;};mktLandingManager.prototype.rndURLPath=function(val){return val;};mktLandingManager.refreshTree=function(treeName){MktSession.ajaxRequest('landingPage/refresh'+treeName+'Tree',{onMySuccess:function(){MktTree.processTreeData('lpgTree');}});};mktLandingManager.editMeta=function(){MktSession.ajaxRequest('landingPage/editMetaRequest',{serializeForm:'lpMetaPanelForm',serializeParms:{lpOid:MktPage.appVars.lpOid},containerId:'lpMeta',onMySuccess:mktLandingManager.editMetaDone});};mktLandingManager.editMetaDone=function(){var nodeJson=MktPage.appVars.nodeJson;if(isDefined(nodeJson)){MktExplorer.updateNode(nodeJson.id,nodeJson);}
MktPage.updateActivePanelTitle(MktPage.appVars.lpDetailTitle.ellipse(20));};mktLandingManager.processPostAction=function(mainPanelId,detailPanelId){var delNodeIds=MktPage.appVars.deletedNodeIds;if(isDefined(delNodeIds)){MktExplorer.removeNodes(delNodeIds);delete MktPage.appVars.deletedNodeIds;}
var deletedOids=MktPage.appVars.deletedOids;var panel=MktCanvas.getItem(MktCanvas.getTab(mainPanelId));if(panel){var grid=panel.getGridPanel();if(grid&&deletedOids){grid.deleteGridRows(deletedOids);}}
var tabId=MktCanvas.getTab(detailPanelId);var tab=MktCanvas.getItem(tabId);if(tab&&deletedOids){if(deletedOids.indexOf(tab.config.cHData)){MktCanvas.remove(tabId);}}};mktLandingManager.markPageDirty=function(lpId,nodeId){var draftStatus=0;var approvedStatus=1;var dirtyStatus=2;var node=MktExplorer.getNodeById(nodeId);if(isDefined(node)){var attr=node.attributes,xtraAttr=attr.xtra;var parentNodeId=attr.parentId,parentNode,isDeployed=false,compId;if(xtraAttr.compSubtype=="page"){parentNode=MktExplorer.getNodeById(parentNodeId);if(parentNode.attributes.xtra.compType=='Landing Page Test Group'){compId=parentNode.attributes.xtra.compId;}}
if((parentNode&&parentNode.attributes.xtra.compStatus==1)||xtraAttr.compStatus==1){MktExplorer.updateNodeAttr(nodeId,{compStatus:dirtyStatus});if(!node.firstChild){var clonedNode=node.clone({iconCls:'mkiPencil',leaf:true,allowDrag:false,text:'Draft',xtra:Ext.apply({},{isDraftNode:true,nodeId:undefined,compStatus:dirtyStatus},node.attributes.xtra)});node.leaf=false;MktExplorer.updateNodeIconCls('explorer-body',nodeId,'mkiWebpageEdit','mkiWebpageOk');var attr=node.attributes;attr.leaf=false;attr.folder=true;attr.xtra.hasDraftNode=true;attr.xtra.compStatus=dirtyStatus;attr.hasChildren=true;node.appendChild(clonedNode);}
isDeployed=true;if(!compId){compId=node.attributes.xtra.compId;}}
var testpagePanel=MktCanvas.getItem(MktCanvas.getTab('landingLPDetail'));if(testpagePanel){var grid;}}
if(MktPage.appVars.lpStatus==approvedStatus){mktLPLManager.updateDetailStatus(lpId,dirtyStatus);}
var pagePanel=MktCanvas.getTab('landingCanvasLP');if(pagePanel){var grid=pagePanel.getGridPanel();if(grid){var rec=grid.getStore().getById(lpId);if(rec){var status=rec.data['status']||rec.data['lpStatus'];if(rec&&status==approvedStatus){rec.data['status']=rec.data['lpStatus']=dirtyStatus;grid.getView().refreshRow(rec);}}}}
var detailPanel=MktCanvas.getTab('landingLPDetail');if(detailPanel){var grid=detailPanel.getGridPanel();if(grid){var rec=grid.getStore().getById(lpId);if(rec){var status=rec.data['status']||rec.data['lpStatus'];if(rec&&status==approvedStatus){rec.data['status']=rec.data['lpStatus']=dirtyStatus;grid.getView().refreshRow(rec);}}}}};function mktLPLManager(){var LPLschema={root:'lplData',id:'lpId',fields:['lpName','lpType','lpStatus','lpPaused','lpURLPath','lpViews','lpConv','lpConvRate','lpUpdated']};var LPLcolConfig=[{header:"Name",useCSSAsMinWidth:true,allocatePct:60,resizable:true,sortable:true},{header:"Type",useCSSWidth:true,sortable:true,renderer:this.rndType.createDelegate(this),exportRenderer:this.rndTypeExport.createDelegate(this)},{header:"Aprv",useCSSWidth:true,tooltip:"Approved",resizable:false,sortable:true,renderer:this.rndDeployed.createDelegate(this),exportRenderer:this.rndDeployedExport.createDelegate(this)},{hidden:true},{header:"Unique URL Name",useCSSAsMinWidth:true,allocatePct:40,resizable:true,sortable:true,renderer:this.rndURLPath.createDelegate(this)},{header:"Views",useCSSWidth:true,tooltip:"Page views",resizable:false,sortable:true,rendererName:"formatIntNumber"},{header:"Conv",useCSSWidth:true,tooltip:"Conversions",resizable:false,sortable:true,rendererName:"formatIntNumber"},{header:"CnvRt",useCSSWidth:true,tooltip:"Conversion Rate",resizable:false,sortable:true,renderer:this.rndPercent.createDelegate(this),rendererName:"formatPercent"},{header:"Last Updated",useCSSWidth:true,resizable:false,sortable:true,renderer:this.rndDateTime.createDelegate(this),exportRenderer:this.rndDateTime.createDelegate(this)}];this.treeNodeType=2;this.treePfx='lpg_';this.oPfx='lp';this.oTypeText='page';this.panelIdOverview='landingCanvasLP';this.panelIdDetail='landingLPDetail';this.instanceName='lplmgr';mktLPLManager.superclass.constructor.call(this,'lplGrid',LPLschema,LPLcolConfig);this.newTB=new mktToolbarButton('mlpTBNewLP',this.tbNewSelected.createDelegate(this,['mlpTBNewLP']));this.newTBd=null;this.editTB=new mktToolbarButton('mlpTBEditLP',this.tbEditSelected.createDelegate(this));this.editTBd=null;this.previewTB=new mktToolbarButton('mlpTBPreviewLP',this.tbPreviewSelected.createDelegate(this));this.previewTBd=null;this.detailsTB=new mktToolbarButton('mlpTBDetailsLP',this.tbDetailsSelected.createDelegate(this));}
Ext.extend(mktLPLManager,mktLandingManager,{});mktLPLManager.prototype.driveDeleteObjects=function(oids,animEl){var dCount=oids.length;var tCount=0;for(var ix=0;ix<dCount;ix++){var rdx=this.dataModel.getRowIndexById(oids[ix]);if(this.dataModel.getValueAt(rdx,this.schema.fields.indexOf(this.oPfx+'Type'))==1){tCount++;}}
if(tCount==0){var dpEmsg="You cannot delete pages that are approved.  Nothing was deleted.";}else if(dCount==tCount){var dpEmsg="You cannot delete test groups that are approved.  Nothing was deleted.";}else{var dpEmsg="You cannot delete pages and test groups that are approved.  Nothing was deleted.";}
if(this.checkDeployed(oids,dpEmsg))return;if(dCount==1){var rdx=this.dataModel.getRowIndexById(oids[0]);var objectName=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf(this.oPfx+'Name'));if(tCount==0){var cmsg='Are you sure you want to delete landing page <b>'+objectName+'</b>?';}else{var cmsg='Are you sure you want to delete landing page test group <b>'+objectName+'</b>?';}}else if(dCount>1){if(tCount==0){var cmsg='Are you sure you want to delete multiple landing pages?';}else if(tCount==dCount){var cmsg='Are you sure you want to delete multiple landing page test groups?';}else{var cmsg='Are you sure you want to delete multiple landing pages and test groups?';}}else{return;}
this.dOids=oids;MktMessage.confirmDelete('Delete Landing Page',cmsg,this.submitDeleteObjects.createDelegate(this),animEl);};mktLPLManager.prototype.driveModifySelectedPages=function(action){if(MktPage.isTestdrive()){if(action=='deploy'||action=='undeploy'){MktUtil.alertNotInTestdrive();delete MktPage.appVars.lplData;return;}}
if(this.selModel.getCount()>0){var srid=this.selModel.getSelectedRowIds();var parms={};for(var ix=0;ix<srid.length;ix++){var dItem='dpageid_'+srid[ix];parms[dItem]=dItem;}
mktLPLManager.doModifyPages(action,parms);}
delete MktPage.appVars.lplData;};mktLPLManager.prototype.requestRefreshGrid=function(){mktLPLManager.superclass.requestRefreshGrid.call(this,'landingPage/refreshPageGrid');};mktLPLManager.prototype.checkDeployed=function(srids,eMsg){if(this.getAllowedActions(srids).allowDelete){return false;}else{MktMessage.showWarning(eMsg);return true;}};mktLPLManager.prototype.driveUrlBuilder=function(animEl){if(this.selModel.getCount()>0){var srid=this.selModel.getSelectedRowIds();mktLPLManager.doUrlBuilder(srid[0],animEl);}};mktLPLManager.prototype.showDetailPanel=function(oid,isDraftNode){mktLPLManager.superclass.showDetailPanel.call(this,oid,'page',isDraftNode);};mktLPLManager.prototype.tbNewSelected=function(tbId){mktLPLManager.driveCreatePageModal(getEl(tbId));};mktLPLManager.prototype.tbEditSelected=function(){mktLPLManager.openLPEditor(this.getTargets()[0]);};mktLPLManager.prototype.tbPreviewSelected=function(){mktLPLManager.openLPPreview(undefined,this.getTargets()[0]);};mktLPLManager.prototype.tbDetailsSelected=function(){MktMainNav.loadLanding({lpgType:'page',lpgId:this.getTargets()[0]});};mktLPLManager.prototype.selectionChanged=function(selModel,rows,ids){if(ids.length==0){this.editTB.doDisable();this.previewTB.doDisable();this.detailsTB.doDisable();}else if(ids.length==1){var rdx=this.dataModel.getRowIndexById(ids[0]);var lpType=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf('lpType'));if(lpType==0){this.editTB.doEnable();this.previewTB.doEnable();}else{this.editTB.doDisable();this.previewTB.doDisable();}
this.detailsTB.doEnable();}else{this.editTB.doDisable();this.previewTB.doDisable();this.detailsTB.doDisable();}};mktLPLManager.prototype.getAllowedActions=function(ids){var rv={allowDeploy:true,allowUndeploy:true,allowRevert:true,allowDelete:true,allowEdit:true,allowPreview:true,allowClone:true,allowConvert:true,allowURLBuild:true};if(ids.length>0){for(var ix=0;ix<ids.length;ix++){var rdx=this.dataModel.getRowIndexById(ids[ix]);var dpStatus=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf('lpStatus'));if(dpStatus==0){rv.allowUndeploy=false;rv.allowRevert=false;}
if(dpStatus<2){rv.allowRevert=false;}
if(dpStatus>0){rv.allowDelete=false;}
var dpType=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf('lpType'));if(dpType!=0){rv.allowEdit=false;rv.allowPreview=false;rv.allowClone=false;rv.allowConvert=false;}}}
return rv;};mktLPLManager.prototype.getPanelType=function(){if(MktPage.activePanel.cName==this.panelIdOverview){return'overview';}
if(MktPage.appVars.lpInTest){return'detailtestpage';}
if(MktPage.appVars.lpType==0){return'detailpage';}else{return'detailtest';}};mktLPLManager.prototype.getPageInfo=function(lpId,infoA,key){for(var ix=0;ix<infoA.length;ix++){if(infoA[ix].lpId==lpId)return infoA[ix][key];}
return null;};mktLPLManager.prototype.updateDetailStatus=function(){console.debug('mktLPLManager.updateDetailStatus');if(isObject(MktPage.canvasContext['landingLPDetail'])){console.debug('found detail page');if($('lpLPDashStatus')){var dpStatus=null;if(isDefined(MktPage.appVars.lpdData)){dpStatus=this.getPageInfo(MktPage.appVars.lpOid,MktPage.appVars.lpdData.lpdData,'lpStatus');}
if(dpStatus==null){if(isDefined(MktPage.appVars.lplData)){var dpStatus=this.getPageInfo(MktPage.appVars.lpOid,MktPage.appVars.lplData.lplData,'lpStatus');}}
if(dpStatus!=null){MktAppJS.dashSetText("lpLPDashStatus",this.rndDeployedText(dpStatus));}}
if($('lpLPDashPA')){var dpPaused=null;if(isDefined(MktPage.appVars.lpdData)){dpPaused=this.getPageInfo(MktPage.appVars.lpOid,MktPage.appVars.lpdData.lpdData,'lpPaused');}
if(dpPaused!=null){MktAppJS.dashSetText("lpLPDashPA",this.rndPausedText(dpPaused));}}}};mktLPLManager.prototype.processRefreshGrid=function(){this.updateDetailStatus();mktLPLManager.superclass.processRefreshGrid.call(this);};mktLPLManager.prototype.rndDeployed=function(val){if(val===''){var rv="";}else if(val===0){var rv="";}else if(val===1){var rv="<img class='lpDetailDeploy' src='/images/checked.gif' title='Approved' />";}else{var rv="<img class='lpDetailDeploy' src='/images/warning_16.gif' title='Page has changed; you must approve again for changes to take effect' />";}
return rv;};mktLPLManager.prototype.rndDeployedExport=function(val){if(val===''){var rv="";}else if(val===0){var rv="Draft";}else if(val===1){var rv="Approved";}else{var rv="Approved with draft";}
return rv;};mktLPLManager.rndDeployedText=function(val){if(val==0){var rv="<img src='/images/icons16/webpage.png' />Draft";}else if(val==1){var rv="<img src='/images/icons16/webpage_ok.png' />Approved";}else{var rv="<img src='/images/icons16/webpage_edit.png' />Approved with draft";}
return rv;};mktLPLManager.rndPausedText=function(val){if(val==0){var rv="<img src='/images/icons16/media_play_green.png' style='margin-bottom:2px;vertical-align:middle;' />&nbsp;Active";}else if(val==1){var rv="<img src='/images/icons16/media_pause.png' style='margin-bottom:2px;vertical-align:middle;' />&nbsp;Paused";}else{var rv="";}
return rv;};mktLPLManager.rndType=function(val){if(val===''){var rv="";}else if(val===0){rv='<img src="/images/icons16/cust_lp_draft.png" title="Individual Landing Page"/>';}else{rv='<img src="/images/icons16/cust_abtest_draft.png"/>';}
return rv;};mktLPLManager.rndTypeText=function(val,inTest){if(val==0){if(inTest){rv='Tested Landing Page';}else{rv='Individual Landing Page';}}else if(val==1){rv='Landing Page Test Group';}else{throw"Unknown landing page type to render "+val;}
return rv;};mktLPLManager.prototype.rndTypeExport=function(val){if(val===''){var rv="";}else if(val===0){rv='Individual Page';}else if(val===1){rv='Test Group';}else{throw"Unknown landing page type to render "+val;}
return rv;};mktLPLManager.prototype.destroy=function(){if(isObject(this.editTB))this.editTB.destroy();if(isObject(this.editTBd))this.editTB.destroy();mktLPLManager.superclass.destroy.call(this);};mktLPLManager.openLPEditor=function(pageId){var sessId="LPE_"+Math.floor(Math.random()*10001+10000);var url=MktSession.getUrlPrefix()+"/lpeditor/editor?lpview=edit&pageId="+pageId;url+="&lpeSession="+sessId;var newWind=window.open(url,"_blank","width=1024, height=800, left=100, top=80, "+"channelmode=no, copyhistory=no, directories=yes, fullscreen=no, location=yes, "+"menubar=yes, resizable=yes, scrollbars=yes, status=yes, titlebar=yes, toolbar=yes");};mktLPLManager.openLPPreview=function(nodeId,pageId,deployedLatest){var tNode=MktExplorer.getNodeById(nodeId);if(isObject(tNode)){if(tNode.attributes.xtra.type=='test'){var msg='This ad references a Marketo landing page test group.  You can preview individual tested pages in this group using the Landing Pages tools.';MktMessage.showInfo(msg);return;}
pageId=pageId||tNode.attributes.xtra.compId;}
var url="/lpeditor/editor?lpview=preview&pageId="+pageId;if(isDefined(deployedLatest)&&deployedLatest){url+="&deployedLatest=true";}
if(isDefined(pageId)){var newWind=window.open(MktSession.getUrlPrefix()+url,"_blank","width=1024, height=800, left=100, top=80, "+"channelmode=no, copyhistory=no, directories=yes, fullscreen=no, location=yes, "+"menubar=yes, resizable=yes, scrollbars=yes, status=yes, titlebar=yes, toolbar=yes");}};mktLPLManager.driveCreatePageModal=function(animEl,cloneFromId,tgContext,parentId){var parms={};if(cloneFromId!=null){parms.lpePgFrom=cloneFromId;var title="Clone to New Landing Page";var fht=400;}else{var title="New Landing Page";var fht=370;}
if(tgContext!=null){parms.lpeTgContext=tgContext;}
if(isDefined(parentId)){parms.fParentId=parentId;}
var mp=new MktModalForm({url:'/landingPage/createPageRequest',ajopts:{serializeParms:parms},title:title,okButtonTitle:'Create',width:850,height:fht});mp.on('load',mktLPLManager.CPLoaded,mp,true);mp.show(animEl,mktLPLManager.submitCreatePage);};mktLPLManager.submitCreatePage=function(mf){if(mktLPLManager.isValidURL(mf)){MktSession.ajaxRequest('/landingPage/createPageSubmit',{serializeForm:'lpePageSubmitForm',onMySuccess:mktLPLManager.createPageDone.createDelegate(this)});}
return false;};mktLPLManager.isValidURL=function(mf){var endsWith=function(haystack,needle){var ix=haystack.lastIndexOf(needle);return((ix!=-1)&&(ix==(haystack.length-needle.length)));};var valid=true;var urlInput=Ext.query('#lpePgUrl',mf.innerEl.dom);if(urlInput.length>0){var value=urlInput[0].value;if(endsWith(value,".html")||endsWith(value,".htm")){MktModalForm.clearMessage();MktModalForm.setMessageError("Please remove the '.html' from the URL It is added automatically");valid=false;}}
return valid;};mktLPLManager.CPLoaded=function(){mktLPLManager.CPCopier.call(this);};mktLPLManager.CPCopier=function(){this.removeListener('load',mktLPLManager.CPLoaded);var cc=new mktInputCharCounter('lpePgName',null,null,'lpePgUrl',function(str){return str.replace(/[^-_.a-zA-Z0-9]/g,'');});getEl('lpePgUrl').addListener('focus',function(){this.destroy();getEl('lpePgUrl').removeAllListeners();},cc,true);};mktLPLManager.callbackHook=null;mktLPLManager.createPageDone=function(){if(isDefined(MktPage.appVars.createError)){delete MktPage.appVars.createError;delete MktPage.appVars.lplData;delete MktPage.appVars.lpdData;return;}
var delNodeIds=MktPage.appVars.deletedNodeIds;if(isDefined(delNodeIds)){MktExplorer.removeNodes(delNodeIds);delete MktPage.appVars.deletedNodeIds;}
var addNodeJsons=MktPage.appVars.addedNodeJsons;if(isDefined(addNodeJsons)){MktExplorer.addNodes(addNodeJsons);delete MktPage.appVars.addedNodeJsons;}
if(isDefined(MktPage.appVars.lplData)){if(isDefined(MktPage.appVars.lplData)){var pageId=MktPage.appVars.lplData.lplData[0].id;}
var panel=MktCanvas.getItem(MktCanvas.getTab('landingCanvasLP'));if(panel){var gridPanel=panel.getGridPanel();if(gridPanel){gridPanel.addGridRows(MktPage.appVars.lplData.lplData);if(isDefined(MktPage.canvasHook.lplmgr)){var lm=MktPage.canvasHook.lplmgr;if(isDefined(MktPage.appVars.lplData)){if(isDefined(MktPage.appVars.lplData.delData)){lm.deleteGridRows(MktPage.appVars.lplData.delData);}
lm.addGridRow(MktPage.appVars.lplData);}else{if(isObject(MktPage.canvasHook.lpdmgr)){var ld=MktPage.canvasHook.lpdmgr;if(isDefined(ld.dataModel)){ld.addGridRow(MktPage.appVars.lpdData);}}}
lm.selectGridRows(pageId);delete MktPage.appVars.lplData;delete MktPage.appVars.lpdData;}else{mktLPLManager.callbackHook=mktLPLManager.createPageNavActivate.createCallback(pageId,false);}}}}else if(isDefined(MktPage.appVars.lpdData)){var pageId=MktPage.appVars.lpdData.lpdData[0].id;}
var lpgId=pageId||MktPage.appVars.pageId||MktPage.appVars.lpOid;if(isDefined(lpgId)){var params={lpgType:'page'};params.lpgId=lpgId;MktMainNav.loadLanding(params);}
if(MktPage.appVars.openEditor){mktLPLManager.openLPEditor(lpgId);}
delete MktPage.appVars.lplData;delete MktPage.appVars.lpdData;};mktLPLManager.createPageNavActivate=function(pageId,openEditor){if(isObject(MktPage.canvasHook.lplmgr)){var lm=MktPage.canvasHook.lplmgr;lm.selectGridRows(pageId);if(openEditor){mktLPLManager.openLPEditor(pageId);}}};mktLPLManager.driveCreateTestModal=function(animEl,fParentId){var parms={};if(isDefined(fParentId)){parms.fParentId=fParentId;}
var mp=new MktModalForm({url:'/landingPage/createTestRequest',ajopts:{serializeParms:parms},title:"New Landing Page Test Group",okButtonTitle:'Create',width:850,height:390});mp.on('load',mktLPLManager.CTLoaded,mp,true);mp.show(animEl,mktLPLManager.submitCreateTest);};mktLPLManager.CTLoaded=function(){MktAppJS.populateSelectBox('lpePgPageFrom',MktPage.appVars.tpAvailable);mktLPLManager.CPCopier.call(this);};mktLPLManager.submitCreateTest=function(mf){if(mktLPLManager.isValidURL(mf)){var selPages=[];var toSel=getEl('lpePgPageTo');for(var ix=0;ix<toSel.dom.options.length;ix++){selPages.push(toSel.dom.options[ix].value);}
var parms={};if(ix>0){parms.selPages=selPages.join(',');}
MktSession.ajaxRequest('/landingPage/createTestSubmit',{serializeForm:'lpeTestSubmitForm',serializeParms:parms,onMySuccess:mktLPLManager.createPageDone.createDelegate(this)});}
return false;};mktLPLManager.convertToTestGroup=function(ipId){var msg="<div>Your request will convert this landing page into a test group.  The URL for this page will be used as the URL for the test group, and this page will become the first tested page within the test group.<br /><br /> Do you want to continue?</div>";MktMessage.confirm('Convert to Test Group?',msg,'Convert',function(){mktLPLManager.convertConfirm(ipId);});};mktLPLManager.convertConfirm=function(ipId){var parms={ipId:ipId};MktSession.ajaxRequest('/landingPage/convertToTest',{serializeParms:parms,onMySuccess:mktLPLManager.convertTGDone.createCallback(ipId)});return false;};mktLPLManager.convertTGDone=function(ipId){try{var delNodeIds=MktPage.appVars.deletedNodeIds;if(isDefined(delNodeIds)){MktExplorer.removeNodes(delNodeIds);delete MktPage.appVars.deletedNodeIds;}
var addNodeJsons=MktPage.appVars.addedNodeJsons;if(isDefined(addNodeJsons)){MktExplorer.addNodes(addNodeJsons);delete MktPage.appVars.addedNodeJsons;}}catch(e){if(isDefined(MktPage.canvasHook.lplmgr)){var lm=MktPage.canvasHook.lplmgr;lm.requestRefreshGrid();}else{}
delete MktPage.appVars.lplData;delete MktPage.appVars.confirmMessage;return;}
var newCTGId=MktPage.appVars.newCTGId;if(isDefined(newCTGId)){var params={lpgType:'page'};params.lpgId=newCTGId;MktMainNav.loadLanding(params);delete MktPage.appVars.newCTGId;}
delete MktPage.appVars.lplData;delete MktPage.appVars.confirmMessage;};mktLPLManager.editTGMembersModal=function(tgId,animEl){var parms={tgId:tgId};var mp=new MktModalForm({url:'/landingPage/editTGMembersRequest',ajopts:{serializeParms:parms},title:"Edit Test Group Members",okButtonTitle:'Select',width:830,height:280});mp.extension=parms;mp.on('load',mktLPLManager.ETGMLoaded,mp,true);mp.show(animEl,mktLPLManager.submitEditTGMembers);};mktLPLManager.ETGMLoaded=function(){MktAppJS.populateSelectBox('lpePgPageFrom',MktPage.appVars.tpAvailable);MktAppJS.populateSelectBox('lpePgPageTo',MktPage.appVars.tpSelected);};mktLPLManager.submitEditTGMembers=function(mf){Ext.MessageBox.show({title:'Please wait...',msg:'Updating group members',progress:true,width:230,closable:false});var selPages=[];var toSel=getEl('lpePgPageTo');for(var ix=0;ix<toSel.dom.options.length;ix++){selPages.push(toSel.dom.options[ix].value);}
var parms={};if(ix>0){parms.selPages=selPages.join(',');}
parms.tgId=mf.extension.tgId;MktSession.ajaxRequest('/landingPage/editTGMembersSubmit',{serializeParms:parms,onMySuccess:mktLPLManager.editTGMembersDone.createCallback(mf)});return false;};mktLPLManager.editTGMembersDone=function(mf){if(isDefined(MktPage.appVars.editError)){delete MktPage.appVars.editError;delete MktPage.appVars.lplData;delete MktPage.appVars.lpdData;return;}
var delNodeIds=MktPage.appVars.deletedNodeIds;if(isDefined(delNodeIds)){MktExplorer.removeNodes(delNodeIds);delete MktPage.appVars.deletedNodeIds;}
var addNodeJsons=MktPage.appVars.addedNodeJsons;if(isDefined(addNodeJsons)){MktExplorer.addNodes(addNodeJsons);delete MktPage.appVars.addedNodeJsons;}
if(isDefined(MktPage.canvasHook.lplmgr)){var lm=MktPage.canvasHook.lplmgr;if(isDefined(MktPage.appVars.lplData)){if(isDefined(MktPage.appVars.lplData.delData)){lm.deleteGridRows(MktPage.appVars.lplData.delData);}
lm.addGridRow(MktPage.appVars.lplData);}
if(isObject(MktPage.canvasHook.lpdmgr)){var ld=MktPage.canvasHook.lpdmgr;if((ld.tgId==mf.extension.tgId)&&(isDefined(ld.dataModel))){if(isDefined(MktPage.appVars.lpdData.delData)){ld.deleteGridRows(MktPage.appVars.lpdData.delData);}
ld.addGridRow(MktPage.appVars.lpdData);}}}
delete MktPage.appVars.lplData;delete MktPage.appVars.lpdData;};mktLPLManager.doModifyPages=function(action,parms){MktSession.clockCursor(true);MktSession.ajaxRequest('landingPage/'+action+'PageRequest',{serializeParms:parms,onMySuccess:mktLPLManager.modifyPagesDone});};mktLPLManager.modifyPagesDone=function(){MktSession.clockCursor(false);if(isDefined(MktPage.appVars.warningMessage)){MktMessage.show({title:MktPage.appVars.warningTitle||'Warning',msg:MktPage.appVars.warningMessage,icon:'mki48SignForbidden',buttons:[{text:'OK',iconCls:'mkiOk',handler:MktMessage.okClicked}]});delete MktPage.appVars.warningMessage;}
var data;if(MktPage.appVars.lplData&&MktPage.appVars.lplData.lplData.length){data=MktPage.appVars.lplData.lplData;}else if(MktPage.appVars.lpdData&&MktPage.appVars.lpdData.lpdData.length){data=MktPage.appVars.lpdData.lpdData;}
if(data){for(var i=0;i<data.length;i++){mktLPLManager.updateDetailStatus(data[i].id,data[i].status);}}
delete MktPage.appVars.confirmMessage;delete MktPage.appVars.lplData;delete MktPage.appVars.lpdData;};mktLPLManager.updateDetailStatus=function(id,status){var canvas="landingLPDetail";var elId='lpLPDashStatus';var appVarsStatus='lpStatus';var panel=MktCanvas.getItem(MktCanvas.getTab(canvas));if(panel){if(panel.config.compId!=id){return;}
var el=Ext.get(elId);if(el){el.update(mktLPLManager.rndDeployedText(status));}
MktPage.appVars[appVarsStatus]=status;if(panel.publicURLButton){if(status==0){panel.publicURLButton.disable();}else{panel.publicURLButton.enable();}}}};mktLPLManager.doUrlBuilder=function(pageId,animEl){var url='/landingPage/urlBuilder?pageId='+pageId;var mf=new MktModalForm({url:url,title:'URL Builder',width:850,height:470,cancelButtonTitle:'Close'});mf.hideButton(0);mf.on('load',mktLPLManager.ubfLoaded,mf);mf.show(animEl);};mktLPLManager.ubfLoaded=function(mf){var qpdata=Ext.util.JSON.decode(MktPage.appVars.qpdata);var trSelect='<tr><td class="mktForm2Label" style="width: 200px;"><input type="checkbox" id="lpeUBFcbdx{0}" checked><label for="lpeUBFcbdx{1}" class="lpeUBFcbLabel" style="top:-2px;">{2}</label></td><td><select id="lpeUBFsldx{3}" style="float:left;"></select></td></tr>';var trStpl=new Ext.Template(trSelect);trStpl.compile();var trText='<tr><td class="mktForm2Label" style="width: 200px;"><input type="checkbox" id="lpeUBFcbdx{0}" checked><label for="lpeUBFcbdx{1}" class="lpeUBFcbLabel" style="top: -2px;">{2}</label></td><td><input id="lpeUBFtdx{3}" type="text" class="mktMedium" style="float:left;"><div id="lpeUBFbtn{0}" style="float:left; margin-top: -1px; margin-left:10px"></div></td></tr>';var trTtpl=new Ext.Template(trText);trTtpl.compile();var trLine2='<tr><td>&nbsp;</td><td style="padding: 0px 0px 0px 4px; color: #666;">Default value: {0}</td></tr>';var trL2tpl=new Ext.Template(trLine2);trL2tpl.compile();var bAppend=Ext.query('#lpeUBFsubtitleRow',mf.innerEl.dom)[0];if(isArray(qpdata.parameters)&&qpdata.parameters.length>0){for(var pdx=0;pdx<qpdata.parameters.length;pdx++){var parm=qpdata.parameters[pdx];if(parm.type=='picklist'){var l1=trStpl.insertAfter(bAppend,[pdx,pdx,parm.field,pdx]);var options=parm.picklist;for(var opdx=0;opdx<options.length;opdx++){var sel=$("lpeUBFsldx"+pdx);sel.options[opdx]=new Option(options[opdx].name,options[opdx].value);}
getEl('lpeUBFsldx'+pdx).on('change',mktLPLManager.ubfDataChanged,{mf:mf,pdx:pdx,qpdata:qpdata});var dval=options[parm.defval].name+' ('+options[parm.defval].value+')';}else{var l1=trTtpl.insertAfter(bAppend,[pdx,pdx,parm.field,pdx]);getEl('lpeUBFtdx'+pdx).on('change',mktLPLManager.ubfDataChanged,{mf:mf,pdx:pdx,qpdata:qpdata});var dval=parm.defval;}
bAppend=trL2tpl.insertAfter(l1,[dval]);getEl('lpeUBFcbdx'+pdx).on('click',mktLPLManager.ubfDataChanged,{mf:mf,pdx:pdx,qpdata:qpdata});var refEl=Ext.get('lpeUBFbtn'+pdx);if(refEl){new Ext.Button({renderTo:refEl,iconCls:'mkiRefresh',text:'Update URL',handler:Ext.emptyFn});}}}else{$('lpeUBFafMessage').innerHTML="No available hidden form fields";}
mktLPLManager.ubfRefreshFullUrl(qpdata);};mktLPLManager.ubfRefreshFullUrl=function(qpdata){var fUrl=$('lpeUBVfullUrl');var fval=qpdata.url;if(isArray(qpdata.parameters)&&qpdata.parameters.length>0){var isFirst=true;for(var pdx=0;pdx<qpdata.parameters.length;pdx++){var cb=$('lpeUBFcbdx'+pdx);if(!cb.checked)continue;if(isFirst){fval+='?';isFirst=false;}else{fval+='&';}
var parm=qpdata.parameters[pdx];fval+=parm.name+'=';if(parm.type=='picklist'){var sel=$('lpeUBFsldx'+pdx);for(var odx=0;odx<sel.options.length;odx++){if(sel.options[odx].selected)break;}
fval+=MktSession.encodeURIComponent(qpdata.parameters[pdx].picklist[odx].value);}else{var txval=$('lpeUBFtdx'+pdx).value;fval+=MktSession.encodeURIComponent(txval);}}}
fval=fUrl.value=fval;};mktLPLManager.ubfDataChanged=function(e,ctx){var mf=ctx.mf||this.mf;var pdx=ctx.pdx||this.pdx;var qpdata=ctx.qpdata||this.qpdata;mktLPLManager.ubfRefreshFullUrl(qpdata);};mktLPLManager.staticConfirmDeleteSelectedPage=function(pageId,pageName,pageStatus,pageType,animEl){if(pageStatus==0){if(pageType=='Landing Page'){var cmsg='Are you sure you want to delete landing page <b>'+pageName+'</b>?';}else{var cmsg='Are you sure you want to delete test group <b>'+pageName+'</b>?';}
var parms={};var pItem='dobjid_'+pageId;parms[pItem]=pItem;MktMessage.confirmDelete('Delete?',cmsg,function(){mktLPLManager.doDeletePages(parms,pageId);},animEl);}else{if(pageType=='Landing Page'){var emsg="You cannot delete an approved landing page. Please unapprove it first.";}else{var emsg="You cannot delete an approved test group.  Please unapprove it first.";}
MktMessage.showWarning(emsg,undefined,animEl);return true;}};mktLPLManager.doDeletePages=function(parms,pageId){MktSession.ajaxRequest('landingPage/deletePageRequest',{serializeParms:parms,onMySuccess:mktLPLManager.deletePagesDone.createCallback(pageId)});return true;};mktLPLManager.deletePagesDone=function(delId){if(isDefined(MktPage.appVars.warningMessage)){MktMessage.showWarning(MktPage.appVars.warningMessage);delete MktPage.appVars.warningMessage;}
if(isDefined(MktPage.canvasHook.lplmgr)&&isDefined(MktPage.appVars.lplData)){var lm=MktPage.canvasHook.lplmgr;lm.dOids=[delId];lm.deleteObjectsDone.call(lm);}else if(isDefined(MktPage.canvasHook.lpdmgr)&&isDefined(MktPage.appVars.lpdData)){var ld=MktPage.canvasHook.lpdmgr;ld.dOids=[delId];ld.deleteObjectsDone.call(ld);}
var delNodeIds=MktPage.appVars.deletedNodeIds;if(isDefined(delNodeIds)){MktExplorer.removeNodes(delNodeIds);delete MktPage.appVars.deletedNodeIds;}
var addNodeJsons=MktPage.appVars.addedNodeJsons;if(isDefined(addNodeJsons)){MktExplorer.addNodes(addNodeJsons);delete MktPage.appVars.addedNodeJsons;}
var panel=MktCanvas.getItem(MktCanvas.getTab('landingCanvasLP'));if(panel){var grid=panel.getGridPanel();if(grid){panel.getGridPanel().deleteGridRows(delId);}}
var detailTabId=MktCanvas.getTab('landingLPDetail');var detailPanel=MktCanvas.getItem(detailTabId);if(detailPanel){var deletedOids=MktPage.appVars.deletedOids;for(var i=0;i<deletedOids.length;i++){if(detailPanel.config.compId==deletedOids[i]){MktCanvas.remove(detailTabId);break;}}}
delete MktPage.appVars.lplData;delete MktPage.appVars.deletedOids;};function mktLPFManager(){var LPFschema={root:'lpfData',id:'fmId',fields:['fmName','fmInUseBy','fmUpdated']};var LPFcolConfig=[{header:"Name",useCSSAsMinWidth:true,allocatePct:60,resizable:true,sortable:true},{header:"Used by Pages",useCSSAsMinWidth:true,allocatePct:40,resizable:true,sortable:true,renderer:this.rndInUseBy.createDelegate(this)},{header:"Last Updated",useCSSWidth:true,resizable:false,sortable:true,renderer:this.rndDateTime.createDelegate(this)}];this.treeNodeType=4;this.treePfx='lpf_';this.oPfx='fm';this.oTypeText='form';this.panelIdOverview='landingCanvasFO';this.panelIdDetail='landingFODetail';this.instanceName='lpfmgr';mktLPFManager.superclass.constructor.call(this,'lpfGrid',LPFschema,LPFcolConfig);this.newTB=new mktToolbarButton('mlpTBNewFO',this.tbNewSelected.createDelegate(this,['mlpTBNewFO']));this.newTBd=null;this.editTB=new mktToolbarButton('mlpTBEditFO',this.tbEditSelected.createDelegate(this));this.editTBd=null;this.detailsTB=new mktToolbarButton('mlpTBDetailsFO',this.tbDetailsSelected.createDelegate(this));}
Ext.extend(mktLPFManager,mktLandingManager,{});mktLPFManager.prototype.requestRefreshGrid=function(){mktLPFManager.superclass.requestRefreshGrid.call(this,'landingPage/refreshFormGrid');};mktLPFManager.prototype.showDetailPanel=function(oid){mktLPFManager.superclass.showDetailPanel.call(this,oid,'form');};mktLPFManager.prototype.tbNewSelected=function(tbId){mktLPFManager.driveCreateFormModal(getEl(tbId));};mktLPFManager.prototype.tbEditSelected=function(){var formIds=this.getTargets();var rdx=this.dataModel.getRowIndexById(formIds[0]);var formName=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf('fmName'));mktLPFManager.openFormEditor(formIds[0],formName);};mktLPFManager.prototype.tbDetailsSelected=function(){MktMainNav.loadLanding({lpgType:'form',lpgId:this.getTargets()[0]});};mktLPFManager.prototype.selectionChanged=function(selModel,rows,ids){if(ids.length==0){this.editTB.doDisable();this.detailsTB.doDisable();}else if(ids.length==1){this.editTB.doEnable();this.detailsTB.doEnable();}else{this.editTB.doDisable();this.detailsTB.doDisable();}};mktLPFManager.prototype.rndInUseBy=function(val){if(!(val instanceof Array))return'';if(val.length==0)return'Not used';var maxToShow=3;var rv='';var first=true;for(var ix=0;ix<val.length;ix++){if(ix==(maxToShow-1))break;if(!first)rv+=', ';rv+=val[ix].lpName;first=false;}
var leftToShow=val.length-ix;if(leftToShow==1){rv+=', '+val[maxToShow-1].lpName;}else if(leftToShow>1){var first=true;var tip='';for(var jx=ix;jx<val.length;jx++){if(!first)tip+=', ';tip+=val[jx].lpName;first=false;}
rv+='<span class="mktMoreTip" title="'+tip+'">, ('+leftToShow+' more)</span>';}
return rv;};mktLPFManager.driveCreateFormModal=function(animEl,cloneFromId,formName,fParentId){if(cloneFromId!=null){var title="Clone to Form";var fht=360;}else{var title="New Form";var fht=310;}
var mp=new MktModalForm({renderer:function(el,unused){Ext.DomHelper.append(el,'<div id="lpeFormEditForm">'+'  <form id="lpeFormSubmitForm" onsubmit="return false;">'+'    <h2><div class="mktModalInFormMessage"></div></h2>'+'    <table border="0" cellpadding="0" cellspacing="0" class="mktForm2">'+'      <input type="hidden" id="createFormfParentId" name="createFormfParentId" value="" />'+'      <tr id="lpeFmCloneRow" class="" style="display:none;">'+'        <td class="mktForm2Label">From Form:</td>'+'        <td class="mktForm2Field">'+'        </td>'+'      </tr>'+'      <tr class="mktRequired">'+'        <td class="mktForm2Label">New Form Name:</td>'+'        <td class="mktForm2Field">'+'          <input class="mktMedium" type="text" id="lpeFmName" name="lpeFmName" tabindex="1" value="" title="Form Name" maxlength="240"/>'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'      <tr>'+'        <td class="mktForm2Label">Description:</td>'+'        <td class="mktForm2Field">'+'          <textarea class="mktLong95" name="lpeFmDescr" tabindex="2" title="Description" rows="4"></textarea>'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'      <tr class="">'+'        <td class="mktForm2Label">&nbsp;</td>'+'        <td class="mktForm2Field">'+'            <input type="checkbox" class="mktCheckbox" tabindex="3" checked="checked" id="lpeFmOpenEditor" name="lpeFmOpenEditor" />'+'            <label for="lpeFmOpenEditor">Open form editor for new form</label>'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'    </table>'+'  </form>'+'</div>');},title:title,okButtonTitle:'Create',width:655,height:fht});mp.on('load',mktLPFManager.createFormLoaded,mp,true);mp.extension={};if(cloneFromId!=null){mp.extension.cloneFromId=cloneFromId;}
if(hasValue(fParentId)){mp.extension.fParentId=fParentId;}
if(hasValue(formName)){mp.extension.formName=formName;}
mp.show(animEl,mktLPFManager.submitCreateForm);};mktLPFManager.createFormLoaded=function(mp){var cloneFromId=mp.extension.cloneFromId;var fParentId=mp.extension.fParentId;var formName=mp.extension.formName;var cloneRow=getEl('lpeFmCloneRow');if(hasValue(cloneFromId)){cloneRow.getChildrenByTagName('td')[1].innerHTML=formName;cloneRow.enableDisplayMode().setVisible(true);}else{cloneRow.enableDisplayMode().setVisible(false);}
var fParentEl=Ext.getDom('createFormfParentId');if(isDefined(fParentEl)&&hasValue(fParentId)){fParentEl.value=fParentId;}};mktLPFManager.submitCreateForm=function(mp){MktSession.clockCursor(true);var parms={};if(isDefined(mp.extension.cloneFromId)){parms.lpeFmFromId=mp.extension.cloneFromId;}
MktSession.ajaxRequest('/landingPage/createFormSubmit',{serializeForm:'lpeFormSubmitForm',serializeParms:parms,onMySuccess:mktLPFManager.createFormDone.createDelegate(this)});return false;};mktLPFManager.callbackHook=null;mktLPFManager.createFormDone=function(){if(isDefined(MktPage.appVars.createError)){delete MktPage.appVars.createError;return;}
var formId=MktPage.appVars.lpfData.lpfData[0].id;var formName=MktPage.appVars.lpfData.lpfData[0].name;if(isDefined(MktPage.appVars.lpfData)){var panel=MktCanvas.getItem(MktCanvas.getTab('landingCanvasFO'));if(panel){var grid=panel.getGridPanel();if(grid){panel.getGridPanel().addGridRows(MktPage.appVars.lpfData.lpfData);}}}
if(hasValue(formId)&&hasValue(formName)){MktMainNav.loadLanding({lpgType:'form',lpgId:formId});if(MktPage.appVars.openEditor){mktLPFManager.openFormEditor(formId,formName);}}
var result=MktPage.appVars.newFormResult;if(isDefined(result)){if(result=="success"){var nodeJson=MktPage.appVars.newFormNodeJson;MktExplorer.addNode(nodeJson.parentId,nodeJson,true);delete MktPage.appVars.newFormNodeJson;}else{}
delete MktPage.appVars.newFormResult;}};mktLPFManager.createFormNavActivate=function(formId,openEditor){if(isObject(MktPage.canvasHook.lpfmgr)){var lf=MktPage.canvasHook.lpfmgr;lf.selectGridRows(formId);if(openEditor){var rdx=lf.dataModel.getRowIndexById(formId);var formName=lf.dataModel.getValueAt(rdx,lf.schema.fields.indexOf('fmName'));mktLPFManager.openFormEditor(formId,formName);}}};mktLPFManager.refreshTemplates=function(doFormAsWell){Ext.MessageBox.show({title:'Please wait...',msg:'Refreshing form information',progress:true,width:230,closable:false});if(doFormAsWell){MktSession.ajaxRequest('landingPage/refreshFormTemplates?includeForm=1',{onMySuccess:mktLPFManager.refreshTemplatesDone});}else{MktSession.ajaxRequest('landingPage/refreshFormTemplates?includeForm=0',{onMySuccess:mktLPFManager.refreshTemplatesDone});}};mktLPFManager.refreshTemplatesDone=function(){if(isObject(MktPage.canvasHook.lpfmgr)){if(isDefined(MktPage.appVars.lpfData)){var lf=MktPage.canvasHook.lpfmgr;lf.addGridRow(MktPage.appVars.lpfData);delete MktPage.appVars.lpfData;}}};mktLPFManager.openFormEditor=function(formId,formName){var url=MktSession.getUrlPrefix()+"/lobeditor/formEdit";url+='?lpgObjType=form';url+='&lpgObjAction=edit';url+='&lpgObjId='+formId;url+='&lpgObjName='+formName;var newWind=window.open(url,"_blank","width=1024, height=800, left=100, top=80, "+"channelmode=no, copyhistory=no, directories=yes, fullscreen=no, location=yes, "+"menubar=yes, resizable=yes, scrollbars=yes, status=yes, titlebar=yes, toolbar=yes");};mktLPFManager.staticConfirmDeleteForm=function(formId,formName,animEl){var cmsg='Are you sure you want to delete <b>'+formName+'</b>?';var parms={};var dItem='dobjid_'+formId;parms[dItem]=dItem;MktMessage.confirmDelete('Delete Form?',cmsg,function(){mktLPFManager.doDeleteForm(parms,formId);},animEl);return false;};mktLPFManager.doDeleteForm=function(parms,delId){MktSession.ajaxRequest('landingPage/deleteFormRequest',{serializeParms:parms,onMySuccess:mktLPFManager.deleteFormDone.createCallback(delId)});return true;};mktLPFManager.deleteFormDone=function(delId){if(isDefined(MktPage.canvasHook.lpfmgr)){var lf=MktPage.canvasHook.lpfmgr;lf.dOids=[delId];lf.deleteObjectsDone.call(lf);}
var delNodeIds=MktPage.appVars.deletedNodeIds;if(isDefined(delNodeIds)){MktExplorer.removeNodes(delNodeIds);delete MktPage.appVars.deletedNodeIds;}
var deletedOids=MktPage.appVars.deletedOids;var panel=MktCanvas.getItem(MktCanvas.getTab('landingCanvasFO'));if(panel){var grid=panel.getGridPanel();if(grid&&deletedOids){grid.deleteGridRows(deletedOids);}}
var tabId=MktCanvas.getTab('landingFODetail');var tab=MktCanvas.getItem(tabId);if(tab&&deletedOids){if(deletedOids.indexOf(tab.config.cHData)){MktCanvas.remove(tabId);}}};function mktLPIManager(){var LPIschema={root:'lpiData',id:'imId',fields:['imName','imInUseBy','imUpdated','imURL']};var LPIcolConfig=[{header:"Name",useCSSAsMinWidth:true,allocatePct:60,resizable:true,sortable:true},{header:"Used by Pages",useCSSAsMinWidth:true,allocatePct:40,resizable:true,sortable:true,renderer:this.rndInUseBy.createDelegate(this)},{header:"Last Updated",useCSSWidth:true,resizable:false,sortable:true,renderer:this.rndDateTime.createDelegate(this)}];this.treeNodeType=5;this.treePfx='lpi_';this.oPfx='im';this.oTypeText='image';this.panelIdOverview='landingCanvasIM';this.panelIdDetail='landingIMDetail';this.instanceName='lpimgr';mktLPIManager.superclass.constructor.call(this,'lpiGrid',LPIschema,LPIcolConfig);this.uploadTB=new mktToolbarButton('mlpTBUploadIM',this.tbUploadSelected.createDelegate(this,['mlpTBUploadIM']));this.uploadTBd=null;this.previewTB=new mktToolbarButton('mlpTBPreviewIM',this.tbPreviewSelected.createDelegate(this));this.previewTBd=null;this.detailsTB=new mktToolbarButton('mlpTBDetailsIM',this.tbDetailsSelected.createDelegate(this));}
Ext.extend(mktLPIManager,mktLandingManager,{});mktLPIManager.prototype.requestRefreshGrid=function(){mktLPIManager.superclass.requestRefreshGrid.call(this,'landingPage/refreshImageGrid');};mktLPIManager.prototype.showDetailPanel=function(oid){mktLPIManager.superclass.showDetailPanel.call(this,oid,'image');};mktLPIManager.prototype.viewImage=function(){var imId=this.getTargets()[0];var rdx=this.dataModel.getRowIndexById(imId);var imURL=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf('imURL'));mktLPIManager.staticViewImage(imId,imURL);};mktLPIManager.prototype.tbUploadSelected=function(tbId){mktLPIManager.uploadImageRequest(null,getEl(tbId),true);};mktLPIManager.prototype.tbPreviewSelected=function(){this.viewImage();};mktLPIManager.prototype.tbDetailsSelected=function(){MktMainNav.loadLanding({lpgType:'image',lpgId:this.getTargets()[0]});};mktLPIManager.prototype.selectionChanged=function(selModel,rows,ids){if(ids.length==0){this.previewTB.doDisable();this.detailsTB.doDisable();}else if(ids.length==1){this.previewTB.doEnable();this.detailsTB.doEnable();}else{this.previewTB.doDisable();this.detailsTB.doDisable();}};mktLPIManager.prototype.rndImageURL=function(val){return val;};mktLPIManager.fetchImagesRequest=function(e,animEl,app){var ac=0;if(isDefined(app))ac=1;console.debug(MktPage);var homepage='www.example.com';if(MktPage&&MktPage.savedState){homepage=MktPage.savedState.companyHomePage;}
var dialog=new MktModalForm({renderer:function(el,unused){Ext.DomHelper.append(el,'<div>'+'<img src="/images/spacer.gif" class="mktPanelWatermark256 mki256HandGrab2" style="top: 0px; right: 0px;">'+'<form name="lpeFetchImagesForm" id="lpeFetchImagesForm" class="lpeFetchImagesForm">'+'  <div class="mktTopPanel">'+'    <h1>Grab Images from Webpage</h1>'+'    <h3>Enter the URL of the website and click <b>next</b>:</h3>'+'    <input type="text" name="inputUrl" id="inputUrl" value="" size="80" tabindex="1" class="mktMedium" />'+'  </div>'+'</form>'+'</div>');},title:'Grab Images from Webpage',okButtonTitle:'Next',extension:{stage:0,appCtx:ac},width:850,height:520});dialog.on('okclick',mktLPIManager.fetchImagesSubmit,dialog,true);dialog.on('cancelclick',mktLPIManager.fetchImageDone,dialog,true);dialog.show(animEl);};mktLPIManager.getMyForm=function(dialog){var panel=Ext.get(dialog.innerEl);if(panel==null){var panel=dialog.dlg.getLayout().getRegion('center').getActivePanel();}
return MktUtil.getFirstElementByClassName('lpeFetchImagesForm','form',panel.dom);};mktLPIManager.fetchImagesSubmit=function(dialog){var form=mktLPIManager.getMyForm(dialog);if(dialog.extension.stage==0){options={serializeForm:form,onMySuccess:mktLPIManager.fetchImagesFirstSubmitDone.createDelegate(dialog,null,true)};MktSession.ajaxRequest('lpeditor/fetchImagesRequest',options);dialog.showProgress({title:"Processing web page...",clearContents:true});}else if(dialog.extension.stage==1){options={serializeForm:form,serializeParms:{appCtx:dialog.extension.appCtx},onMySuccess:mktLPIManager.fetchImagesSecondSubmitDone.createDelegate(dialog,null,true)};MktSession.ajaxRequest('lpeditor/fetchImagesSubmit',options);dialog.showProgress({title:"Processing selected images...",clearContents:true});}else{dialog.close();mktLPIManager.fetchImageDone.call(dialog);}};mktLPIManager.fetchImagesFirstSubmitDone=function(jsonObject,ajaxOptions){if(isDefined(MktPage.appVars.submitError)){delete MktPage.appVars.submitError;this.loaded=false;this.load();return;}
MktModalForm.clearMessage();var content=jsonObject.HTMLResults.fetchImagesResults;this.dlg.getUpdater().getEl().update(content,true);this.extension.stage=1;};mktLPIManager.fetchImagesSecondSubmitDone=function(jsonObject,ajaxOptions){if(isDefined(jsonObject.JSONResults.isError)&&jsonObject.JSONResults.isError){}else{MktModalForm.clearMessage();var content=jsonObject.HTMLResults.fetchImagesSubmit;this.dlg.getUpdater().getEl().update(content,true);this.extension.stage=2;this.setButtonText(1,'Close');this.buttons[0].hide();if(this.extension.appCtx==1){var newNodes=MktPage.appVars.imagesNodesJson;if(isDefined(newNodes)){MktExplorer.addNodes(newNodes);delete MktPage.appVars.imagesNodesJson;}
if(isObject(MktPage.canvasHook.lpimgr)){var li=MktPage.canvasHook.lpimgr;li.addGridRow(MktPage.appVars.lpiData);delete MktPage.appVars.lpiData;}}}};mktLPIManager.fetchImageDone=function(){mktLPIManager.uploadImageDone();};mktLPIManager.uploadImageRequest=function(e,animEl,app,fParentId){var ac=0;if(isDefined(app))ac=1;var dialog=new MktModalForm({renderer:function(el,unused){Ext.DomHelper.append(el,'<div>'+'  <form action="/lpeditor/uploadImageSubmit" method="post" enctype="multipart/form-data" name="lpeUploadImageForm" id="lpeUploadImageForm" class="lpeUploadImageForm" target="lpeUploadImageIframe">'+'      <div class="lpeUploadFileInput" style="display:block;">'+'        <div class="mktTopPanel">'+'          <h1>Upload Image or File</h1>'+'          <h3>Click Browse and upload an image or file for use in your landing pages</h3>'+'        </div>'+'        <input type="file" name="uploaded_file" id="uploaded_file" value="" size="60" style="margin-left: 10px;" class="mktFileUpload" />'+'        <input type="hidden" id="uploadImagefParentId" name="uploadImagefParentId" value="" />'+'      </div>'+'      <div class="lpeUploadImageDiv"></div>'+'  </form>'+'</div>');},title:'Upload Image or File',extension:{submitted:false,appCtx:ac,fParentId:fParentId},okButtonTitle:'Upload',width:700,height:480});dialog.on('okclick',mktLPIManager.uploadImageSubmit,dialog,true);dialog.on('load',mktLPIManager.uploadImageRequestLoaded,dialog,true);dialog.show(animEl);};mktLPIManager.uploadImageRequestLoaded=function(dialog){var panel=Ext.get(dialog.innerEl);if(!panel){var panel=dialog.dlg.getLayout().getRegion('center').getActivePanel();}
var fParentEl=Ext.getDom('uploadImagefParentId');var fParentId=dialog.extension.fParentId;if(isDefined(fParentEl)&&isDefined(fParentId)){fParentEl.value=fParentId;}
dialog.extension.form=MktUtil.getFirstElementByClassName('lpeUploadImageForm','form',panel.dom);var iframeDiv=document.createElement('div');Ext.get(iframeDiv).setStyle({display:'none'});iframeDiv.innerHTML='<iframe src="about:blank" name="lpeUploadImageIframe" id="lpeUploadImageIframe" '+'class="lpeUploadImageIframe" style="display:none;"></iframe>';dialog.extension.form.appendChild(iframeDiv);dialog.extension.iframe=MktUtil.getFirstElementByClassName('lpeUploadImageIframe','iframe',dialog.extension.form);dialog.extension.div=MktUtil.getFirstElementByClassName('lpeUploadImageDiv','div',panel.dom);dialog.extension.file=MktUtil.getFirstElementByClassName('lpeUploadFileInput','div',panel.dom);Ext.get(dialog.extension.iframe).on('load',function(e){mktLPIManager.uploadImageSubmitDone(e,this);},dialog);};mktLPIManager.uploadImageSubmit=function(dialog){dialog.extension.submitted=true;dialog.extension.form.submit();};mktLPIManager.uploadImageSubmitDone=function(e,dialog){if(dialog.extension.submitted==true){var myIframe=MktUtil.findFrame('lpeUploadImageIframe');if(myIframe!=null){dialog.extension.div.innerHTML=myIframe.document.body.innerHTML;}
var scriptEl=Ext.getDom('uploadImageScript');if(scriptEl){eval(scriptEl.innerHTML);}
dialog.extension.file.style.display='none';dialog.setButtonText(1,"Done");if(dialog.extension.appCtx==1){dialog.on('cancelclick',mktLPIManager.uploadImageDone,dialog,true);}
dialog.setButtonText(0,"Upload Another");dialog.removeListener('okclick',mktLPIManager.uploadImageSubmit);dialog.on('okclick',mktLPIManager.uploadImageAnother,dialog,true);}};mktLPIManager.uploadImageAnother=function(){$('mktModalInner').innerHTML='';this.removeListener('okclick',mktLPIManager.uploadImageAnother);this.on('okclick',mktLPIManager.uploadImageSubmit,this,true);this.setButtonText(0,"Upload");this.extension.submitted=false;this.loaded=false;this.load();};mktLPIManager.uploadImageDone=function(){if(typeof MktCanvas!='undefined'){var panel=MktCanvas.getItem(MktCanvas.getTab('landingCanvasIM'));if(panel){var grid=panel.getGridPanel();if(grid){grid.getStore().reload();}}}};mktLPIManager.staticConfirmDeleteImage=function(imageId,imageName,animEl){var cmsg='Are you sure you want to delete <b>'+imageName+'</b>?';var parms={};var dItem='dobjid_'+imageId;parms[dItem]=dItem;MktMessage.confirmDelete('Delete File?',cmsg,function(){mktLPIManager.doDeleteImage(parms,imageId);},animEl);return false;};mktLPIManager.doDeleteImage=function(parms,imageId){MktSession.ajaxRequest('landingPage/deleteImageRequest',{serializeParms:parms,onMySuccess:mktLPIManager.deleteImageDone.createCallback(imageId)});return true;};mktLPIManager.deleteImageDone=function(delId){if(isDefined(MktPage.canvasHook.lpimgr)){var li=MktPage.canvasHook.lpimgr;li.dOids=[delId];li.deleteObjectsDone.call(li);}
var delNodeIds=MktPage.appVars.deletedNodeIds;if(isDefined(delNodeIds)){MktExplorer.removeNodes(delNodeIds);delete MktPage.appVars.deletedNodeIds;}
var deletedOids=MktPage.appVars.deletedOids;var panel=MktCanvas.getItem(MktCanvas.getTab('landingCanvasIM'));if(panel){var grid=panel.getGridPanel();if(grid&&deletedOids){grid.deleteGridRows(deletedOids);}}
var tabId=MktCanvas.getTab('landingIMDetail');var tab=MktCanvas.getItem(tabId);if(tab&&deletedOids){if(deletedOids.indexOf(tab.config.cHData)){MktCanvas.remove(tabId);}}};mktLPIManager.staticViewImage=function(imageId,imageURL){var newWind=window.open(imageURL,"_blank","width=800, height=600, left=100, top=80, "+"channelmode=no, copyhistory=no, directories=yes, fullscreen=no, location=yes, "+"menubar=yes, resizable=yes, scrollbars=yes, status=yes, titlebar=yes, toolbar=yes");return true;};function mktLPTManager(){var LPTschema={root:'lptData',id:'tmId',fields:['tmName','tmInUseBy','tmUpdated']};var LPTcolConfig=[{header:"Name",useCSSAsMinWidth:true,allocatePct:60,resizable:true,sortable:true},{header:"Used by Pages",useCSSAsMinWidth:true,allocatePct:40,resizable:true,sortable:true,renderer:this.rndInUseBy.createDelegate(this)},{header:"Last Updated",useCSSWidth:true,resizable:false,sortable:true,renderer:this.rndDateTime.createDelegate(this)}];this.treeNodeType=3;this.treePfx='lpt_';this.oPfx='tm';this.oTypeText='template';this.panelIdOverview='landingCanvasTM';this.panelIdDetail='landingTMDetail';this.instanceName='lptmgr';mktLPTManager.superclass.constructor.call(this,'lptGrid',LPTschema,LPTcolConfig);this.importTB=new mktToolbarButton('mlpTBImportTM',this.tbImportSelected.createDelegate(this,['mlpTBImportIM']));this.importTBd=null;this.exportTB=new mktToolbarButton('mlpTBExportTM',this.tbExportSelected.createDelegate(this));this.exportTBd=null;this.detailsTB=new mktToolbarButton('mlpTBDetailsTM',this.tbDetailsSelected.createDelegate(this));}
Ext.extend(mktLPTManager,mktLandingManager,{});mktLPTManager.prototype.requestRefreshGrid=function(){mktLPTManager.superclass.requestRefreshGrid.call(this,'landingPage/refreshTemplateGrid');};mktLPTManager.prototype.driveDownloadTemplate=function(tid){getEl('lptDLId').dom.value=tid;MktPage.preventNavAway(false);document.lptDLForm.submit();MktPage.preventNavAway(true);};mktLPTManager.prototype.showDetailPanel=function(oid){mktLPTManager.superclass.showDetailPanel.call(this,oid,'template');};mktLPTManager.prototype.tbImportSelected=function(tbId){mktLPTManager.driveUploadTemplate(getEl(tbId));};mktLPTManager.prototype.tbExportSelected=function(){this.driveDownloadTemplate(this.getTargets()[0]);};mktLPTManager.prototype.tbDetailsSelected=function(){MktMainNav.loadLanding({lpgType:'template',lpgId:this.getTargets()[0]});};mktLPTManager.prototype.selectionChanged=function(selModel,rows,ids){if(ids.length==0){this.exportTB.doDisable();this.detailsTB.doDisable();}else if(ids.length==1){this.exportTB.doEnable();this.detailsTB.doEnable();}else{this.exportTB.doDisable();this.detailsTB.doDisable();}};mktLPTManager.driveUploadTemplate=function(animEl,fParentId){var dialog=new MktModalForm({renderer:function(el,unused){Ext.DomHelper.append(el,'<div>'+'  <form action="/landingPage/uploadTemplate" method="post" enctype="multipart/form-data" name="lptUploadTemplateForm" id="lptUploadTemplateForm" class="lptUploadTemplateForm" target="lptUploadTemplateIframe">'+'    <h2><div class="mktModalInFormMessage"></div></h2>'+'    <table border="0" cellpadding="0" cellspacing="0" class="mktForm2">'+'      <tr class="mktRequired">'+'        <td class="mktForm2Label">File Name:</td>'+'        <td class="mktForm2Field">'+'          <input type="file" name="fName" id="fName" value="" size="60" tabindex="1" class="mktFileUpload"/>'+'          <input type="hidden" id="uploadTemplatefParentId" name="uploadTemplatefParentId" value="" />'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'      <tr class="mktRequired">'+'        <td class="mktForm2Label">New Template Name:</td>'+'        <td class="mktForm2Field">'+'          <input class="mktMedium" type="text" id="lptTName" name="lptTName" tabindex="2" value=""  maxlength="240"/>'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'      <tr class="">'+'        <td class="mktForm2Label">&nbsp;</td>'+'        <td class="mktForm2Field">'+'            <input type="checkbox" class="mktCheckbox" tabindex="3" id="lptOverwrite" name="lptOverwrite" />'+'            <label for="lptOverwrite">Replace any existing template with this name</label>'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'    </table>'+'  </form>'+'</div>'+'<div id="lptUploadTemplateResults" style="display:none;"></div>'+'<iframe src="javascript:false" name="lptUploadTemplateIframe" id="lptUploadTemplateIframe" class="lptUploadTemplateIframe" style="display:none;"></iframe>');},title:'Import a Landing Page Template',okButtonTitle:'Import',extension:{submitted:false,fParentId:fParentId},width:780,height:240});dialog.on('okclick',mktLPTManager.uploadTemplateSubmit,dialog,true);dialog.on('load',mktLPTManager.uploadTemplateRequestLoaded,dialog,true);dialog.show(animEl);};mktLPTManager.uploadTemplateRequestLoaded=function(dialog){var fParentEl=Ext.getDom('uploadTemplatefParentId');var fParentId=dialog.extension.fParentId;if(isDefined(fParentEl)&&isDefined(fParentId)){fParentEl.value=fParentId;}
var fEl=getEl('fName');fEl.on('change',mktLPTManager.fNameChanged);dialog.extension.form=$('lptUploadTemplateForm');dialog.extension.iframe=$('lptUploadTemplateIframe');Ext.get(dialog.extension.iframe).on('load',function(e){mktLPTManager.uploadTemplateSubmitDone(e,this);},dialog);};mktLPTManager.fNameChanged=function(){var fEl=getEl('fName');var fval=fEl.dom.value;if(fval.length>0){var bn=new MktUtil.Basename(fval);var bnbase=bn.basename();var extdot=bnbase.lastIndexOf('.');if(extdot>0){bnbase=bnbase.slice(0,extdot);}
var tEl=getEl('lptTName');tEl.dom.value=bnbase;}
fEl.removeListener('change',mktLPTManager.fNameChanged);};mktLPTManager.uploadTemplateSubmit=function(dialog){dialog.extension.submitted=true;dialog.extension.form.submit();};mktLPTManager.uploadTemplateSubmitDone=function(e,dialog){if(dialog.extension.submitted==true){dialog.extension.submitted=false;var myIframe=MktUtil.findFrame('lptUploadTemplateIframe');var rDiv=$('lptUploadTemplateResults');rDiv.innerHTML=myIframe.document.body.innerHTML;var scriptEl=Ext.getDom('uploadTempalteScript');if(scriptEl){eval(scriptEl.innerHTML);}
var rCode=$('lptUploadTemplateCode');if(rCode==null){MktSession.setModalFormError("Import failed with an unknown error");return false;}else{if(rCode.innerHTML!='100'){MktSession.setModalFormError($('lptUploadTemplateMsg').innerHTML);return false;}}
MktSession.closeActiveModalForm.defer(250);var panel=MktCanvas.getItem(MktCanvas.getTab('landingCanvasTM'));if(panel){var grid=panel.getGridPanel();if(grid){grid.getStore().reload();}}}
return false;};mktLPTManager.staticConfirmDeleteTemplate=function(templateId,templateName,animEl){var cmsg='Are you sure you want to delete <b>'+templateName+'</b> ?';var parms={};var dItem='dobjid_'+templateId;parms[dItem]=dItem;MktMessage.confirmDelete('Delete Template?',cmsg,function(){mktLPTManager.doDeleteTemplate(parms,templateId);},animEl);return false;};mktLPTManager.doDeleteTemplate=function(parms,delId){MktSession.ajaxRequest('landingPage/deleteTemplateRequest',{serializeParms:parms,onMySuccess:mktLPTManager.deleteTemplateDone.createCallback(delId)});return true;};mktLPTManager.deleteTemplateDone=function(delId){if(isDefined(MktPage.canvasHook.lptmgr)){var lt=MktPage.canvasHook.lptmgr;lt.dOids=[delId];lt.deleteObjectsDone.call(lt);}
mktLandingManager.processPostAction('landingCanvasTM','landingTMDetail');};function mktLPDManager(tgId,doGrid){var LPDschema={root:'lpdData',id:'lpId',fields:['lpName','lpType','lpStatus','lpPaused','lpURLPath','lpViews','lpConv','lpConvRate','lpUpdated']};var LPDcolConfig=[{header:"Name",useCSSAsMinWidth:true,allocatePct:100,resizable:true,sortable:true},{hidden:true},{header:"Chgd",useCSSWidth:true,tooltip:"Page changed",resizable:false,sortable:true,renderer:this.rndDirty.createDelegate(this),exportRenderer:this.rndDirtyExport.createDelegate(this)},{header:"A/P",useCSSWidth:true,tooltip:"Active / Paused Status",resizable:false,sortable:true,renderer:this.rndActive.createDelegate(this),exportRenderer:this.rndActiveExport.createDelegate(this)},{hidden:true},{header:"Views",useCSSWidth:true,tooltip:"Page views",resizable:false,sortable:true,rendererName:"formatIntNumber"},{header:"Conv",useCSSWidth:true,tooltip:"Conversions",resizable:false,sortable:true,rendererName:"formatIntNumber"},{header:"CnvRt",useCSSWidth:true,tooltip:"Conversion Rate",resizable:false,sortable:true,renderer:this.rndPercent.createDelegate(this),rendererName:"formatPercent"},{header:"Last Updated",useCSSWidth:true,resizable:false,sortable:true,renderer:this.rndDateTime.createDelegate(this),exportRenderer:this.rndDateTime.createDelegate(this)}];this.tgId=tgId;this.panelIdDetail='landingLPDetail';this.oPfx='lp';this.oTypeText='page';if(doGrid===true){mktLPLManager.superclass.constructor.call(this,'lpdGrid',LPDschema,LPDcolConfig);}else{this.schema=LPDschema;}
this.editTB=null;this.previewTB=null;this.detailsTB=null;}
Ext.extend(mktLPDManager,mktLandingManager,{});mktLPDManager.prototype.getGridSizeParameters=function(){var sp={minHeight:434,maxHeight:800,reservedHeight:268};return sp;};mktLPDManager.prototype.tbEditSelected=function(){mktLPLManager.openLPEditor(this.getTargets()[0]);};mktLPDManager.prototype.tbPreviewSelected=function(){mktLPLManager.openLPPreview(undefined,this.getTargets()[0]);};mktLPDManager.prototype.tbDetailsSelected=function(){MktMainNav.loadLanding({lpgType:'page',lpgId:this.getTargets()[0]});};mktLPDManager.prototype.selectionChanged=function(selModel,rows,ids){if(ids.length==0){this.editTB.doDisable();this.previewTB.doDisable();if(this.detailsTB!==null)this.detailsTB.doDisable();}else if(ids.length==1){var rdx=this.dataModel.getRowIndexById(ids[0]);var lpType=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf('lpType'));if(lpType==0){this.editTB.doEnable();this.previewTB.doEnable();}else{this.editTB.doDisable();this.previewTB.doDisable();}
if(this.detailsTB!==null)this.detailsTB.doEnable();}else{this.editTB.doDisable();this.previewTB.doDisable();if(this.detailsTB!==null)this.detailsTB.doDisable();}};mktLPDManager.prototype.getAllowedActions=function(ids){var rv={allowDeploy:true,allowRevert:true,allowPause:true,allowUnpause:true,allowDelete:true,allowEdit:true,allowPreview:true,allowClone:true,allowDetails:true};if(ids.length>0){for(var ix=0;ix<ids.length;ix++){if(isObject(this.dataModel)){var rdx=this.dataModel.getRowIndexById(ids[ix]);var dpStatus=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf('lpStatus'));}else{var dpStatus=MktPage.appVars.lpStatus;}
if(dpStatus==0){rv.allowRevert=false;}
if(dpStatus<2){rv.allowRevert=false;}}}
if(ids.length!=1||MktPage.appVars.lpType==0)rv.allowDetails=false;return rv;};mktLPDManager.prototype.getTargets=function(){var targets=[];if(MktPage.appVars.lpType==1){if(this.getNumSelected()>0){targets=this.getSelectedIds();}}else{targets=[MktPage.activePanel.config.cHData];}
return targets;};mktLPDManager.prototype.processRefreshGrid=function(){this.selModel.clearSelections();this.dataModel.loadData(MktPage.appVars[this.schema.root]);if(isDefined(MktPage.canvasHook.lplmgr)){var lm=MktPage.canvasHook.lplmgr;lm.selModel.clearSelections();lm.dataModel.loadData(MktPage.appVars[lm.schema.root]);lm.updateDetailStatus();}
delete MktPage.appVars.lplData;delete MktPage.appVars.lpdData;};mktLPDManager.prototype.driveDeleteObjects=function(oids,animEl){var dCount=oids.length;if(dCount==1){if(isDefined(this.dataModel)){var rdx=this.dataModel.getRowIndexById(oids[0]);var objectName=this.dataModel.getValueAt(rdx,this.schema.fields.indexOf(this.oPfx+'Name'));}else{var objectName=MktPage.activePanel.config.title;}
var cmsg='Are you sure you want to delete <b>'+objectName+'</b>?';}else if(dCount>1){var cmsg='Are you sure you want to delete multiple landing pages?';}else{return;}
this.dOids=oids;MktMessage.confirmDelete('Delete Landing Page?',cmsg,this.submitDeleteObjects.createDelegate(this),animEl);};mktLPDManager.prototype.rndDirty=function(val,rowIndex){if(val===''){var rv="";}else if(val===0){var rv="";}else if(val===1){var rv="";}else{var rv="<img class='lpDetailDirty' src='/images/warning_16.gif' title='Page has changed; you must approve again for changes to take effect' />";}
return rv;};mktLPDManager.prototype.rndDirtyExport=function(val){if(val===''){var rv="";}else if(val===0){var rv="Not changed";}else if(val===1){var rv="Not changed";}else{var rv="Changed";}
return rv;};mktLPDManager.prototype.rndActive=function(val,rowIndex){if(val===''){var rv="";}else if(!val){var rv="<img class='lpDetailActive' src='/images/icons/play_16small.gif' title='Tested page is active' />";}else{var rv="<img class='lpDetailPaused' src='/images/icons/pause_16small.gif' title='Tested page is paused' />";}
return rv;};mktLPDManager.prototype.rndActiveExport=function(val){if(val===''){var rv="";}else if(val===0){var rv="Active";}else if(val===1){var rv="Paused";}
return rv;};function mktLPASManager(){this.uploadTB=new mktToolbarButton('masTBUploadAS',this.tbUploadSelected.createDelegate(this,['masTBUploadAS']));this.uploadTB=null;this.importTB=new mktToolbarButton('masTBImportAS',this.tbEditSelected.createDelegate(this));this.importTB=null;}
function mktLPAManager(){mktLPAManager.superclass.constructor.call(this);this.treeNodeType=5;this.treePfx='lpa_';this.oPfx='as';this.oTypeText='asset';this.instanceName='lpamgr';}
Ext.extend(mktLPAManager,mktLandingManager,{});mktLPAManager.driveCrawlWebSiteModal=function(animEl){var mp=new MktModalForm({staticForm:'p.lpaCrawlWebSiteForm',title:"Crawl Web Site",okButtonTitle:'OK',width:655,height:300});mp.show(animEl,mktLPAManager.submitCrawlWebSite);};mktLPAManager.submitCrawlWebSite=function(mp){delete MktPage.appVars.pageList;delete MktPage.appVars.linkList;Ext.MessageBox.show({title:'Please wait...',msg:'Crawling web site',progress:true,width:230,closable:false});MktSession.ajaxRequest('/landingPage/crawlWebSite',{serializeForm:'lpaCrawlWebSiteSubmitForm',onMySuccess:mktLPAManager.crawlWebSiteDone.createDelegate(this)});return false;};mktLPAManager.crawlWebSiteDone=function(){if(isDefined(MktPage.appVars.crawlError)){delete MktPage.appVars.crawlError;return;}
var mp=new MktModalForm({staticForm:'p.lpaCrawlResults',title:"Crawl Web Site Results",okButtonTitle:'OK',width:655,height:440});mp.on('load',function(){var pages='';for(var i=0;i<MktPage.appVars.pageList.length;i++){if(pages.length>0){pages+='<br/>';}
pages+=MktPage.appVars.pageList[i];}
$('lpaCrawlResultsPages').innerHTML=pages;var links='';for(var i=0;i<MktPage.appVars.linkList.length;i++){if(links.length>0){links+='<br/>';}
links+=MktPage.appVars.linkList[i];}
$('lpaCrawlResultsLinks').innerHTML=links;},null,false);mp.show(null,function(){return true;});};
/* ========== mktMenuMgr.js ============ */

Ext.ns("Mkt","Mkt.menus");Mkt.menus.ToolbarMgr=Mkt.app.ToolbarMgr=function(){return Ext.apply(new Mkt.app.Manager(),{getComp:function(type,attr){return this._get.apply(this,arguments);},getToolbar:function(type,attr){return this.getComp.apply(this,arguments);}});}();Mkt.menus.MenuMgr=Mkt.app.MenuMgr=function(){return Ext.apply(new Mkt.app.Manager(),{registerMenuProvider:function(type,func){this.registerComp.apply(this,arguments);},getMenu:function(type,attr){this._get(type,attr);return attr.menu;}});}();MktMenuMgr=Mkt.menus.MenuMgr;
/* ========== mktFolder.js ============ */

Ext.namespace('MktFolder');MktFolder.CREATE="createNewFolder";MktFolder.RENAME="renameFolder";MktFolder.MOVE="moveItem";MktFolder.DELETE="deleteFolder";MktFolder.editComplete=function(editor,value,startValue){if(value==startValue&&MktFolder.currNodeAction!=MktFolder.CREATE){MktFolder.currNodeAction="";return true;}
if(!isEmptyString(MktFolder.currNodeAction)){if(MktFolder.currNodeAction==MktFolder.CREATE){MktFolder.newFolderSubmit(value,MktFolder.currParentNode.attributes.id,MktFolder.currNode.attributes.id);}else if(MktFolder.currNodeAction==MktFolder.RENAME){MktFolder.renameFolderSubmit(value,startValue,MktFolder.currNode.attributes.id);}}
if(MktFolder.currNode){MktFolder.currNode.unselect();}
MktFolder.currNodeAction="";};MktFolder.newFolderSubmit=function(text,parentNodeId,tempNodeId){MktSession.clockCursor(true);var parms={};parms.text=text;parms.parentNodeId=parentNodeId;parms.tempNodeId=tempNodeId;MktSession.ajaxRequest('folder/createFolderSubmit',{serializeParms:parms,onMySuccess:MktFolder.newFolderSubmitDone});};MktFolder.newFolderSubmitDone=function(){var result=MktPage.appVars.result;if(result&&result=="duplicate"){Ext.Msg.show({title:"Marketo",msg:"A folder with that name already exists. Please choose a different name and try again.",buttons:Ext.Msg.OKCANCEL,icon:Ext.Msg.ERROR,fn:function(btn,text){var currNode=MktFolder.currNode;if(btn=='ok'){MktFolder.renameFolder(currNode,MktFolder.CREATE);}else if(btn=='cancel'){currNode.remove();}}});}
if(result){delete MktPage.appVars.result;}};MktFolder.newFolderForm=function(parentNode){MktFolder.currParentNode=parentNode;MktFolder.currNodeAction=MktFolder.CREATE;MktFolder.newFolder(parentNode);};MktFolder.newFolder=function(parentNode,defText,defIconCls,container){var parms={parentNode:parentNode,defText:defText,defIconCls:defIconCls,container:container};if(parentNode.isExpanded()){MktFolder.attachFolderToEdit.call(parms,parentNode);}else{parentNode.getOwnerTree().addListener('expandnode',MktFolder.attachFolderToEdit,parms);parentNode.expand();}};MktFolder.attachFolderToEdit=function(node){if(node==this.parentNode){this.parentNode.getOwnerTree().removeListener('expandnode',MktFolder.attachFolderToEdit,this);var text=this.defText||'New Folder';var iconCls=this.defIconCls||'mkiFolder';var container=this.container||MktFolder;var node=this.parentNode.appendChild(new Ext.tree.TreeNode({text:text,iconCls:iconCls,leaf:true,folder:true,system:false,readonly:false,allowDrag:true,nodeType:this.parentNode.attributes.nodeType,uiProvider:MktTreeNodeUI}));this.parentNode.leaf=false;this.parentNode.attributes.leaf=false;node.render();this.parentNode.expand();container.currNode=node;MktFolder.delayedEdit.call(node);}};MktFolder.delayedEdit=function(){var parentNode=this.parentNode;var editor=parentNode.getOwnerTree().editor;setTimeout(function(){this.ensureVisible();editor.editNode=this;this.ui.textNode.renaming=true;editor.startEdit(this.ui.textNode);}.createDelegate(this),10);parentNode.removeListener('expand',MktFolder.delayedEdit,this);};MktFolder.renameFolder=function(node,action){MktFolder.currNodeAction=action||MktFolder.RENAME;MktFolder.currNode=node;var tree=node.getOwnerTree();var editor=tree.editor;setTimeout(function(){editor.editNode=node;node.ui.textNode.renaming=!node.attributes.readonly;editor.startEdit(node.ui.textNode);},10);};MktFolder.renameFolderSubmit=function(text,startValue,nodeId){MktSession.clockCursor(true);var parms={};parms.text=text;parms.nodeId=nodeId;MktSession.ajaxRequest('folder/renameFolderSubmit',{serializeParms:parms,onMySuccess:MktFolder.renameFolderSubmitDone.createDelegate({parms:parms,startValue:startValue})});};MktFolder.renameFolderSubmitDone=function(){var result=MktPage.appVars.result;if(result){if(result=="duplicate"){Ext.Msg.show({title:"Marketo",msg:"A object with that name already exists. Please try again with a different name.",buttons:Ext.Msg.OKCANCEL,icon:Ext.Msg.ERROR,fn:function(btn,text){var currNode=MktFolder.currNode;if(btn=='ok'){MktFolder.renameFolder(currNode,MktFolder.RENAME);}else if(btn=='cancel'){currNode.setText(this.startValue);}}.createDelegate(this)});}
delete MktPage.appVars.result;}};MktFolder.moveItemSubmit=function(node,destNodeId){MktFolder.currNodeAction=MktFolder.MOVE;var parms={};parms.nodeId=node.attributes.id;parms.destNodeId=destNodeId;MktSession.ajaxRequest('folder/moveItemSubmit',{serializeParms:parms,onMySuccess:MktFolder.moveItemSubmitDone.createDelegate({parms:parms,node:node,srcParentNode:node.parentNode})});node=MktExplorer.getNodeById(destNodeId);if(node){node.leaf=false;node.attributes.leaf=false;}};MktFolder.moveItemSubmitDone=function(){var result=MktPage.appVars.result;if(result){if(result=="duplicate"){Ext.Msg.show({title:"Marketo",msg:"A object with that name already exists on the target folder. Please drag it to a different folder.",buttons:Ext.Msg.OK,icon:Ext.Msg.ERROR,fn:function(btn,text){if(btn=='ok'){var node=this.node.remove();var newNode=new MktTreeNode(node.attributes);this.srcParentNode.appendChild(newNode);this.srcParentNode.expand();}}.createDelegate(this)});}
delete MktPage.appVars.result;}};MktFolder.deleteFolder=function(node){MktFolder.currNodeAction=MktFolder.DELETE;if(node.childNodes.length<=0){MktMessage.confirmDelete('Delete Folder','Are you sure you want to delete <b>'+node.text+'</b>?',function(){node.remove();MktFolder.deleteFolderSubmit(node.attributes.id);},node.getUI().getEl());}
else{MktMessage.showWarning('<p>The folder <b>'+node.text+'</b> is not empty.</p><p>Please delete the contents of the folder and try again.</p>',Ext.emptyFn,node.getUI().getEl());}};MktFolder.deleteFolderSubmit=function(nodeId){MktSession.clockCursor(true);var parms={};parms.nodeId=nodeId;MktSession.ajaxRequest('folder/deleteFolderSubmit',{serializeParms:parms});};MktFolder.beforeStartEdit=function(){if(isEmptyString(MktFolder.currNodeAction)){MktFolder.currNodeAction=MktFolder.RENAME;}};MktFolder.menuItemPool={createFolder:{text:'New Folder',id:'createFolder',iconCls:'mkiFolderAdd',handler:function(el){el.parentMenu.hide(true);MktFolder.newFolderForm(el.parentMenu.currNode);}},renameFolder:{text:'Rename Folder',id:'renameFolder',iconCls:'mkiFolderEdit',handler:function(el){el.parentMenu.hide(true);MktFolder.renameFolder(el.parentMenu.currNode);}},deleteFolder:{text:'Delete Folder',id:'deleteFolder',iconCls:'mkiFolderDelete',handler:function(el){el.parentMenu.hide(true);MktFolder.deleteFolder(el.parentMenu.currNode);}}};MktFolder.folderNodeContextMenu=function(){var fMip=MktFolder.menuItemPool;var m=Ext.menu.MenuMgr.get('folderNodeContextMenu');return m?m:MktLeadDbMenu.menuFactory("folderNodeContextMenu",fMip.createFolder,fMip.renameFolder,fMip.deleteFolder);};MktMenuMgr.registerMenuProvider('Folder',function(attr){var menu,xtraAttr=attr.xtra;if(attr.folder||attr.iconCls=='mkiFolder'){if(attr.text=='System Smart Lists'||attr.text=='Campaign Smart Lists'||attr.text=='System Campaigns'){return false;}
if(attr.nodeType=='List'||attr.nodeType=='Smart List'||attr.nodeType=='Program'){attr.menu=MktFolder.folderNodeContextMenu();}else{return false;}
if(attr.system){attr.menu.items.get('renameFolder').disable();attr.menu.items.get('deleteFolder').disable();}else{attr.menu.items.get('renameFolder').enable();attr.menu.items.get('deleteFolder').enable();}
return true;}
return false;});MktFolder.saveExpandState=function(node,expanded)
{if(MktPage.cancelSaveExpandState||node.cancelSaveExpandState){return;}
if(node.id<0){return;}
MktSession.ajaxRequest('/folder/saveState',{serializeParms:{node:node.id,expanded:expanded},onMySuccess:MktFolder.saveExpandStateDone.createDelegate(this,[node.id,expanded])});if(!node.attributes.leaf&&node.attributes.xtra){node.attributes.xtra.stickyCollapsed=!expanded;}};MktFolder.saveExpandStateDone=function(nodeId,expand){if(MktPage.appVars.result=="success"){MktExplorer.setCachedNodeProperty(nodeId,"expanded",expand);}};
/* ========== mktAnalyticsMenu.js ============ */

Ext.namespace("MktAnalyticsMenu");MktAnalyticsMenu.cloneReport=function(animateEl,reportId){MktAppJS.atxDriveCreateReportModal(animateEl,reportId);};MktAnalyticsMenu.deleteReport=function(reportId,reportName,nodeId,currNode,animEl){MktMessage.confirmDelete('Delete Report','Are you sure you want to delete <b>'+reportName+'</b>?',function(){MktSession.ajaxRequest('analytics/deleteReport',{serializeParms:{atxDeleteReportId:reportId,nodeId:nodeId},onMySuccess:function(){MktExplorer.removeNode(nodeId);MktMainNav.loadAnalytics({});}});},animEl);};MktAnalyticsMenu.deleteSubscriptions=function(count,subscriptionIds,animEl){var s=count==1?'':'s';MktMessage.confirmDelete('Delete Subscription'+s,'Are you sure you want to delete '+count+' subscription'+s+'?',function(){MktSession.ajaxRequest('analytics/deleteSubscriptions',{serializeParms:{atxDeleteSubscriptionIds:subscriptionIds},onMySuccess:function(){MktCanvas.setActiveTab('atxCanvasSubscriptions');}});},animEl);};MktAnalyticsMenu.menuItemPool={newReport:{text:'New Report',id:'cloneReport',iconCls:'mkiChartArea',handler:function(el){var currNode=el.parentMenu.currNode;if(currNode&&currNode.attributes.xtra){var xtra=currNode.attributes.xtra;MktAnalyticsMenu.cloneReport(el.getEl(),xtra.compId);}
else{MktAnalyticsMenu.cloneReport(el.getEl());}
el.parentMenu.hide(true);}},cloneReport:{text:'Clone Report',id:'cloneReport',iconCls:'mkiChartArea',handler:function(el){var currNode=el.parentMenu.currNode;var xtra=currNode.attributes.xtra;MktAnalyticsMenu.cloneReport(el.getEl(),xtra.compId);el.parentMenu.hide(true);}},deleteReport:{text:'Delete Report',id:'deleteReport',iconCls:'mkiDelete2',handler:function(el){var currNode=el.parentMenu.currNode;var xtra=currNode.attributes.xtra;MktAnalyticsMenu.deleteReport(xtra.compId,currNode.text,xtra.nodeId,currNode,el.getEl());el.parentMenu.hide(true);}},navigateToOverviewReport:{text:'View Overview',id:'navigateToOverviewReport',iconCls:'mkiChartPie',enablePopupItem:true,handler:function(el,e){var currNode=el.parentMenu.currNode;var xtra=currNode.attributes.xtra;el.parentMenu.hide(true);var elTarget=Ext.get(e.target);if((elTarget&&elTarget.hasClass('mktPopupImage'))||(e.hasModifier()&&e.shiftKey)){window.open(MktDlManager.getDlUrl('AR',currNode.attributes.xtra.compId,'A',true),'_blank');}else{MktDlManager.loadDl(currNode.attributes.xtra);}}},navigateToDetailReport:{text:'View Report',id:'navigateToDetailReport',iconCls:'mkiTable2Run',enablePopupItem:true,handler:function(el,e){var currNode=el.parentMenu.currNode;var xtra=currNode.attributes.xtra;el.parentMenu.hide(true);var elTarget=Ext.get(e.target);if((elTarget&&elTarget.hasClass('mktPopupImage'))||(e.hasModifier()&&e.shiftKey)){window.open(MktDlManager.getDlUrl('AR',currNode.attributes.xtra.compId,'B',true),'_blank');}else{if(xtra){xtra.panelId=Mkt.menus.Analytics.Toolbar.detailCanvasId;}
MktDlManager.loadDl(currNode.attributes.xtra);}}},navigateToSmartList:{text:'View Smart List',id:'navigateToSmartList',iconCls:'mkiUsers3',enablePopupItem:true,handler:function(el,e){var currNode=el.parentMenu.currNode;var xtra=currNode.attributes.xtra;el.parentMenu.hide(true);var elTarget=Ext.get(e.target);if((elTarget&&elTarget.hasClass('mktPopupImage'))||(e.hasModifier()&&e.shiftKey)){window.open(MktDlManager.getDlUrl('AR',currNode.attributes.xtra.compId,'C',true),'_blank');}else{if(xtra){xtra.panelId=Mkt.menus.Analytics.Toolbar.smartlistCanvasId;}
MktDlManager.loadDl(currNode.attributes.xtra);}}},navigateToSubscriptions:{text:'View Subscriptions',id:'navigateToSubscriptions',iconCls:'mkiMail2',enablePopupItem:true,handler:function(el,e){var currNode=el.parentMenu.currNode;var xtra=currNode.attributes.xtra;el.parentMenu.hide(true);var elTarget=Ext.get(e.target);if((elTarget&&elTarget.hasClass('mktPopupImage'))||(e.hasModifier()&&e.shiftKey)){window.open(MktDlManager.getDlUrl('AR',currNode.attributes.xtra.compId,'D',true),'_blank');}else{if(xtra){xtra.panelId=Mkt.menus.Analytics.Toolbar.subscriptionsCanvasId;}
MktDlManager.loadDl(currNode.attributes.xtra);}}},contextSpacer:{id:'contextSpacer'}};(function(){var atxMip=MktAnalyticsMenu.menuItemPool;var fMip=MktFolder.menuItemPool;MktAnalyticsMenu.reportFolderMenu=function(){var menuId="reportFolderMenu";var m=Ext.menu.MenuMgr.get(menuId);var config={id:menuId,extraMenuAction:true,cls:'mktPopup'};if(isDefined(attr.width))config.width=attr.width;return m?m:MktLeadDbMenu.menuFactory(config,atxMip.cloneReport,'-',fMip.createFolder,fMip.renameFolder,fMip.deleteFolder);};MktAnalyticsMenu.reportMenu=function(){var menuId="reportMenu";var m=Ext.menu.MenuMgr.get(menuId);var config={id:menuId,extraMenuAction:true,cls:'mktPopup'};if(isDefined(attr.width))config.width=attr.width;return m?m:MktLeadDbMenu.menuFactory(config,atxMip.navigateToOverviewReport,atxMip.navigateToDetailReport,atxMip.navigateToSmartList,atxMip.navigateToSubscriptions,'-',atxMip.cloneReport,atxMip.deleteReport);};MktAnalyticsMenu.preShowReportMenu=function(menu,attr){var mItems=menu.items;if(attr.system){mItems.get('deleteReport').setDisabled(true);}
else{mItems.get('deleteReport').setDisabled(false);}};})();MktMenuMgr.registerMenuProvider('Analytics',function(attr){var menu,xtraAttr=attr.xtra;if(attr.folder||xtraAttr){var compType=attr.nodeType||(xtraAttr?xtraAttr.compType:'');if(compType=='Report'){if(attr.folder){attr.menu=MktAnalyticsMenu.reportFolderMenu();}else{attr.menu=MktAnalyticsMenu.reportMenu();MktAnalyticsMenu.preShowReportMenu(attr.menu,attr);}
return true;}}
else{return false;}});
/* ========== mktMa.js ============ */

Ext.namespace('MktMa');MktMa.CREATE='createNewProgramFolder';MktMa.RENAME="renameProgramFolder";MktMa.newProgramFolderSubmit=function(text,parentNodeId,tempNodeId){MktSession.clockCursor(true);var parms={};parms.text=text;parms.parentNodeId=parentNodeId;parms.tempNodeId=tempNodeId;MktSession.ajaxRequest('explorer/createProgramFolder',{serializeParms:parms,onMySuccess:MktMa.newProgramFolderDone});if(MktMa.currNode){MktMa.currNode.unselect();}};MktMa.newProgramFolderDone=function(){var result=MktPage.appVars.createProgramFolderResult;var currNode=MktMa.currNode;var nodeJson=MktPage.appVars.nodeJson;var errMsg=MktPage.appVars.createProgramFolderMsg;if(result=='success'){if(currNode){var prnNode=currNode.parentNode;var prnExpanded=prnNode.isExpanded();currNode.remove();}
var node=MktExplorer.addNode(MktPage.appVars.parentId,nodeJson,true);if(prnExpanded){prnNode.expand();}
if(node){node.unselect();}
var progId=nodeJson.xtra.compId;if(isDefined(progId)){MktMainNav.loadPE({programId:progId,nodeId:nodeJson.id});}
delete MktPage.appVars.nodeJson;delete MktPage.appVars.parentId;}else{if(!this.fromModal){MktMessage.showQuestion(errMsg,'OK',function(){MktMa.editProgramFolder(currNode,MktMa.CREATE);},undefined,undefined,function(){currNode.remove();});}
delete MktPage.appVars.createProgramFolderMsg;}
if(isDefined(result)){delete MktPage.appVars.createProgramFolderResult;}
delete MktMa.currNode;};MktMa.newProgramFolderForm=function(parentNode){MktMa.currParentNode=parentNode;MktMa.currNodeAction=MktMa.CREATE;MktFolder.newFolder(parentNode,'New Program','mkiBookBlue',MktMa);};MktMa.editProgramFolder=function(node,action){if(typeof node=='string'){node=MktExplorer.getNodeById(node);}
MktMa.currNodeAction=action||MktMa.RENAME;node.attributes.origName=node.text;MktMa.currNode=node;var tree=node.getOwnerTree();var editor=tree.editor;setTimeout(function(){editor.editNode=node;node.ui.textNode.renaming=!node.attributes.readonly;editor.startEdit(node.ui.textNode);},10);};MktMa.editProgramFolderComplete=function(editor,value,startValue){if(value==startValue&&MktMa.currNodeAction!=MktMa.CREATE){MktMa.currNodeAction="";return true;}
if(!isEmptyString(MktMa.currNodeAction)){if(MktMa.currNodeAction==MktMa.CREATE){MktMa.newProgramFolderSubmit(value,MktMa.currParentNode.attributes.id,MktMa.currNode.attributes.id);}else if(MktMa.currNodeAction==MktMa.RENAME){MktMa.renameProgramFolderSubmit(value,startValue);}}
if(MktMa.currNode){MktMa.currNode.unselect();}
MktMa.currNodeAction="";};MktMa.deleteProgramFolder=function(pid,pName,animEl){MktAppJS.phcDriveConfirmDeleteModal(pid,pName,animEl);};MktMa.renameProgramFolderSubmit=function(value,startValue){MktSession.clockCursor(true);var parms={};parms.origProgramName=startValue;parms.newProgramName=value;MktSession.ajaxRequest('explorer/renameProgramFolder',{serializeParms:parms,onMySuccess:MktMa.renameProgramFolderSubmitDone});};MktMa.renameProgramFolderSubmitDone=function(){var currNode=MktMa.currNode;var progResult=MktPage.appVars.renameProgramResult;if(isDefined(progResult)){if(progResult!='success'){function renameHandler(btn){currNode.setText(currNode.attributes.origName);if(btn=='ok'){MktMa.editProgramFolder(currNode,MktMa.RENAME);}}
MktMessage.showQuestion(MktPage.appVars.renameProgErrMsg,undefined,renameHandler.createDelegate(this,['ok']),undefined,undefined,renameHandler.createDelegate(this,['cancel']));delete MktPage.appVars.renameProgErrMsg;}
delete MktPage.appVars.renameProgramResult;;}
delete MktMa.currNode;};MktMa.deleteSmartCampaign=function(scId,nodeId,name,animEl){MktMessage.confirmDelete("Delete Smart Campaign?","Are you sure you want to delete <b>"+name+"</b>?",function(){var parms={};if(isDefined(scId)){parms.scId=scId;}
if(nodeId){parms.nodeId=nodeId;}
MktSession.clockCursor(true);MktSession.ajaxRequest('smartcampaigns/deleteSmartCampaign',{serializeParms:parms,onMySuccess:MktMa.deleteSmartCampaignDone.createDelegate(parms)});},animEl);};MktMa.deleteSmartCampaignDone=function(){if(MktPage.appVars.deleteScResults=='success'){var nodeId=this.nodeId||MktPage.appVars.deletedNodeId;if(MktExplorer&&MktExplorer.removeNode){MktExplorer.removeNode(nodeId);}
if(this.scId==MktPage.appVars.smartCampaignId){MktMainNav.loadPE({});}
if(isDefined(MktPage.appVars.deletedNodeId)){delete MktPage.appVars.deletedNodeId;}
if(MktPage.satellite){window.setTimeout(function(){window.close();},500);}}else{if(isDefined(MktPage.appVars.deleteScResults)){MktMessage.showWarning(MktPage.appVars.deleteScErrMsg,Ext.emptyFn);delete MktPage.appVars.deleteScErrMsg;}}
if(isDefined(MktPage.appVars.deleteScResults)){delete MktPage.appVars.deleteScResults;}};MktMa.minDefaultScheduleLeadtime=300000;MktMa.getRoundedLeadDateTime=function(dateTime){var minutes=dateTime.getMinutes();var hoursInMs=3600000;if(minutes<30){dateTime.setTime(dateTime.getTime()+(hoursInMs-(minutes*60000)));}else{dateTime.setTime(dateTime.getTime()+((hoursInMs*2)-(minutes*60000)));}
return dateTime;};MktMa.showSchedule=function(){var runCampaign=Ext.get('runCampaignImmediately');if(runCampaign){runCampaign.setStyle({display:'none'});}
var time=new Date(MktPage.appVars.currentDateTime);MktMa.schedulePicker=new Ext.ux.form.DateTime({renderTo:'runCampaignDateTimePicker',fieldLabel:'Date & Time',dateValue:time,anchor:'-18',timeConfig:{altFormats:'H:i:s',value:time,increment:60,allowBlank:true},dateConfig:{altFormats:'Y-m-d|Y-n-d',value:time,allowBlank:true}});MktMa.schedulePicker.updateValue();var dtCancel=Ext.get('runCampaignDateTimePickerCancel');if(dtCancel){dtCancel.setStyle({display:'inline'});}
var el=Ext.get('runCampaignDateTimePickerTz');if(el){el.setStyle({display:'block'});}};MktMa.getTimezone=function(){var dateTimeArr=new Date().toGMTString().split(' ');return dateTimeArr[dateTimeArr.length-1];};MktMa.cancelShownSchedule=function(){if(!MktMa.schedulePicker){return;}
var runCampaign=Ext.get('runCampaignImmediately');if(runCampaign){runCampaign.setStyle({display:'block'});}
MktMa.schedulePicker.destroy();delete MktMa.schedulePicker;var dtCancel=Ext.get('runCampaignDateTimePickerCancel');if(dtCancel){dtCancel.setStyle({display:'none'});}
var el=Ext.get('runCampaignDateTimePickerTz');if(el){el.setStyle({display:'none'});}};MktMa.getSelectedSchedule=function(){if(MktMa.schedulePicker){return MktMa.schedulePicker.getValue().format('F j, Y, g:i a');}};MktMa.cancelScheduledRun=function(scId,runId,dateTime,animEl){MktMessage.confirm("Cancel Scheduled Run?",'Are you sure you want to cancel the <b>'+dateTime+'</b> scheduled run?',undefined,function(button,text){MktSession.ajaxRequest('smartcampaigns/cancelScheduledRun',{serializeParms:{runId:runId,smartCampaignId:scId},onMySuccess:MktMa.cancelScheduledDone});},undefined,animEl);};MktMa.cancelScheduledDone=function(){MktMa.refreshSchedule();MktPage.clearPanelContentValid('smartCampaignOverview');var tabId='campaignCanvasDetailSchedule';if(MktPage.appVars.scheduledRuns&&!MktPage.appVars.scheduledRuns.length&&MktPage.activePanel.cName==tabId){MktPage.clearPanelContentValid(tabId);MktPage.activatePanel(tabId);}};MktMa.addRunSchedule=function(btn,timezone){MktMa.addScheduleForm=new MktMa.widget.addScheduleForm({header:false,timezone:timezone,bodyBorder:false});MktMa.addScheduleForm.show(btn.el);};MktMa.refreshSchedule=function(){if(!MktPage.appVars.scheduledRuns){return;}
MktMa.scheduledList.destroy();delete MktMa.scheduledList;MktMa.scheduledList=new MktMa.widget.ScheduledList({renderTo:'runCampaignScheduleList',schedules:MktPage.appVars.scheduledRuns});};MktMa.isScheduleReasonable=function(dateTime,minLeadTime,tzOffset){minLeadTime=minLeadTime||MktMa.minDefaultScheduleLeadtime;if(dateTime){var now=new Date();tzOffset=(tzOffset/3600);var selDateTime=new Date((dateTime+" GMT"+(tzOffset<0?"":"+"))+tzOffset);if(selDateTime.getTime()-now.getTime()>=minLeadTime){return true;}else{return false;}}else{return true;}};Ext.ns('MktMa.widget');MktMa.widget.ScheduledList=Ext.extend(Ext.Panel,{header:false,bodyBorder:false,border:false,hideBorders:true,initComponent:function(){if(this.schedules.length>0){this.items=this.items||[];}
for(i=0;i<this.schedules.length;i++){var id=Ext.id();this.items.push({header:false,hideBorders:true,bodyBorder:false,border:false,html:'<div style="float:left; min-width:160px;">'+this.schedules[i]['usertime']+' </div>'+'<div style="float:left; position:relative; margin-left:10px; height:20px; cursor:pointer;" '+'onclick="MktMa.cancelScheduledRun('+MktPage.appVars.smartCampaignId+', '+this.schedules[i]['id']+', \''+this.schedules[i]['usertime']+'\', \''+id+'\'); return false;">'+'<div id="'+id+'" class="mkiDelete scheduleCancelTooltip" style="height:16px; width:16px; margin-top: 3px;"></div>'+'</div>'});}
MktMa.widget.ScheduledList.superclass.initComponent.apply(this);this.on('render',function(){window.setTimeout(function(){var cancelTooltips=Ext.query('.scheduleCancelTooltip');for(i=0;i<cancelTooltips.length;i++){new Ext.ToolTip({target:cancelTooltips[i].id,html:'Cancel this scheduled campaign'});}},2000);});}});MktMa.widget.addScheduleForm=Ext.extend(Ext.Window,{title:'New Run',width:380,height:170,resizable:false,layout:'anchor',plain:true,modal:true,border:false,plain:false,bodyStyle:'padding: 8px 15px 15px 15px;',buttonAlign:'right',initComponent:function(){this.items=this.items||[];var time=new Date(MktPage.appVars.currentDateTime);var scheduleDateTime=new Ext.ux.form.DateTime({otherToNow:true,fieldLabel:'Date & Time',anchor:'-18',timeWidth:100,dateWidth:140,timeConfig:{altFormats:'H:i:s',value:time,increment:60,allowBlank:true},dateConfig:{altFormats:'Y-m-d|Y-n-d',value:time,allowBlank:true}});this.items.push({xtype:'fieldset',title:'Date and Time',style:"margin-top: 7px;",anchor:'100% 90%',dateValue:time,cls:'mktFieldsetCheckboxes mktPanelPlain',defaults:{height:23,hideLabel:true},items:[{layout:'column',items:[{columnWidth:.97,cls:'mktPanelPlain',items:[scheduleDateTime]},{width:47,cls:'mktPanelPlain mktPlainTextTz',html:"("+this.timezone+")"}]}]});this.dateTimeField=scheduleDateTime;this.buttons=this.buttons||[];this.buttons.push({text:'Run Campaign',iconCls:'mkiClockRun',handler:function(button,event){this.dateTimeField.updateValue();if(!this.dateTimeField.isValid()){MktMessage.showWarning("Invalid date and time.",undefined,button.el);}else{button.setDisabled(true);MktSession.clockCursor(true);if(!MktMa.runImmediately(undefined,{selDateTime:this.dateTimeField.getValue().format('F j, Y, g:i a'),callback:this.addScheduleRunDone.createDelegate(this)})){button.setDisabled(false);}}}.createDelegate(this)});this.buttons.push({text:'Cancel',iconCls:'mkiCancel',handler:function(){this.close();}.createDelegate(this)});MktMa.widget.addScheduleForm.superclass.initComponent.call(this);},addScheduleRunDone:function(){if(!MktPage.appVars.SmartCampaignExecutionError){MktPage.clearPanelContentValid('smartCampaignOverview');MktMa.refreshSchedule();this.close();}}});
/* ========== mktMaMenu.js ============ */

Ext.namespace('MktMaMenu');MktMaMenu.preShowProgramActionsMenu=function(menu,attr){var mItems=menu.items,nodeType;var isAllPrograms=(attr.depth==1);var attrXtra=attr.xtra;if(attr.nodeType){nodeType=attr.nodeType;}else if(attrXtra&&attrXtra.compType){nodeType=attrXtra.compType;}else{return menu;}
mItems.get('createProgramFolder').setVisible(nodeType=='Program');var rProg=mItems.get('renameProgramFolder');if(rProg){rProg.setVisible(nodeType=='Program');rProg.setDisabled(isAllPrograms);}
mItems.get('scProgramSpacer').setVisible(nodeType=='Program');var dProg=mItems.get('deleteProgramFolder');if(dProg){dProg.setVisible(nodeType=='Program');dProg.setDisabled(isAllPrograms);}
mItems.get('newSmartCampaign').setVisible(nodeType=='Program');mItems.get('scActivate').setVisible(false);mItems.get('scArchive').setVisible(nodeType=='Smart Campaign');mItems.get('scClone').setVisible(nodeType=='Smart Campaign');var navVisible=nodeType=='Smart Campaign'&&!isDefined(attr.disableNavigateTo);mItems.get('navigateToSpacer').setVisible(navVisible);mItems.get('navigateToSmartCampaign').setVisible(navVisible);mItems.get('navigateToSmartList').setVisible(navVisible);mItems.get('navigateToFlow').setVisible(navVisible);mItems.get('navigateToSchedule').setVisible(navVisible);mItems.get('navigateToResults').setVisible(navVisible);mItems.get('navigateToCampaignMembers').setVisible(navVisible);var isDev=MktPage.isDev();mItems.get('devModeSpacer').setVisible(isDev);mItems.get('scClearSmartList').setVisible(isDev);mItems.get('scClearFlow').setVisible(isDev);return menu;};MktMaMenu.menuItemPool={newProgram:{text:'New Program',id:'newProgram',iconCls:'mkiBookBlue',handler:function(el){MktAppJS.phcDriveCreateProgramModal(el.getEl());el.parentMenu.hide(true);}},newSmartCampaign:{text:'New Smart Campaign',id:'newSmartCampaign',iconCls:'mkiLightbulbOn',handler:function(el){var programName;var currNode=el.parentMenu.currNode;if(currNode){programName=currNode.text;}
MktAppJS.chcDriveCreateSmartCampaignModal(el.getEl(),programName);el.parentMenu.hide(true);}},createProgramFolder:{text:'New Program',id:'createProgramFolder',iconCls:'mkiBookBlue',handler:function(el){el.parentMenu.hide(true);if(el.parentMenu.currNode){MktMa.newProgramFolderForm(el.parentMenu.currNode);delete el.parentMenu.currNode;}else{MktAppJS.phcDriveCreateProgramModal(getEl(el.getEl()));}}},renameProgramFolder:{text:'Rename Program',id:'renameProgramFolder',iconCls:'mkiBookBlueEdit',handler:function(el){MktMa.editProgramFolder(el.parentMenu.currNode,"renameProgramFolder");el.parentMenu.hide(true);}},deleteProgramFolder:{text:'Delete Program',id:'deleteProgramFolder',iconCls:'mkiBookBlueDelete',handler:function(el){var currNode=el.parentMenu.currNode;if(currNode){compId=currNode.attributes.xtra.compId;text=currNode.text;MktMa.deleteProgramFolder(compId,text,el.getEl());}
el.parentMenu.hide(true);}},navigateToSmartCampaign:{text:'View Campaign',id:'navigateToSmartCampaign',iconCls:'mkiLightbulbOn',enablePopupItem:true,handler:function(el,e){var currNode=el.parentMenu.currNode;el.parentMenu.hide(true);var elTarget=Ext.get(e.target);if((elTarget&&elTarget.hasClass('mktPopupImage'))||(e.hasModifier()&&e.shiftKey)){window.open(MktDlManager.getDlUrl('SC',currNode.attributes.xtra.compId,'A',true),'_blank');}else{MktDlManager.loadDl(currNode.attributes.xtra);}}},navigateToSmartList:{text:'View Smart List',id:'navigateToSmartList',iconCls:'mkiUsers3',enablePopupItem:true,handler:function(el,e){var currNode=el.parentMenu.currNode;el.parentMenu.hide(true);var xtra=currNode.attributes.xtra;var elTarget=Ext.get(e.target);if((elTarget&&elTarget.hasClass('mktPopupImage'))||(e.hasModifier()&&e.shiftKey)){window.open(MktDlManager.getDlUrl('SC',xtra.compId,'B',true),'_blank');}else{if(xtra){xtra.panelId='campaignCanvasDetailSmartlist';}
MktDlManager.loadDl(currNode.attributes.xtra);}}},navigateToFlow:{text:'View Flow',id:'navigateToFlow',iconCls:'mkiCubes',enablePopupItem:true,handler:function(el,e){el.parentMenu.hide(true);var currNode=el.parentMenu.currNode;var xtra=currNode.attributes.xtra;var elTarget=Ext.get(e.target);if((elTarget&&elTarget.hasClass('mktPopupImage'))||(e.hasModifier()&&e.shiftKey)){window.open(MktDlManager.getDlUrl('SC',xtra.compId,'C',true),'_blank');}else{if(xtra){xtra.panelId='campaignCanvasDetailFlow';}
MktDlManager.loadDl(currNode.attributes.xtra);}}},navigateToSchedule:{text:'View Schedule',id:'navigateToSchedule',iconCls:'mkiClock',enablePopupItem:true,overCls:'mktPopup',handler:function(el,e){el.parentMenu.hide(true);var currNode=el.parentMenu.currNode;var xtra=currNode.attributes.xtra;var elTarget=Ext.get(e.target);if((elTarget&&elTarget.hasClass('mktPopupImage'))||(e.hasModifier()&&e.shiftKey)){window.open(MktDlManager.getDlUrl('SC',xtra.compId,'D',true),'_blank');}else{if(xtra){xtra.panelId='campaignCanvasDetailSchedule';}
MktDlManager.loadDl(currNode.attributes.xtra);}}},navigateToResults:{text:'View Results',id:'navigateToResults',iconCls:'mkiScroll2',enablePopupItem:true,handler:function(el,e){el.parentMenu.hide(true);var currNode=el.parentMenu.currNode;var xtra=currNode.attributes.xtra;var elTarget=Ext.get(e.target);if((elTarget&&elTarget.hasClass('mktPopupImage'))||(e.hasModifier()&&e.shiftKey)){window.open(MktDlManager.getDlUrl('SC',xtra.compId,'E',true),'_blank');}else{if(xtra){xtra.panelId='campaignCanvasDetailActivityLog';}
MktDlManager.loadDl(currNode.attributes.xtra);}}},navigateToCampaignMembers:{text:'View Campaign Members',id:'navigateToCampaignMembers',iconCls:'mkiUsersInto',enablePopupItem:true,handler:function(el,e){var compId;var nodeId;var currNode=MktMaMenu.menuItemPool.getCurrNode(el);if(currNode){compId=currNode.attributes.xtra.compId;nodeId=currNode.attributes.xtra.nodeId;}
var elTarget=Ext.get(e.target);if((elTarget&&elTarget.hasClass('mktPopupImage'))||(e.hasModifier()&&e.shiftKey)){window.open(MktDlManager.getDlUrl('SL',compId,'Z',true),'_blank');}else{MktAppJS.loadSmartCampaignMembership(compId,nodeId);}
el.parentMenu.hide(true);}},scClone:{text:'Clone',id:'scClone',iconCls:'mkiCustLightbulbOnAdd',handler:function(el){var nodeId;var currNode=MktMaMenu.menuItemPool.getCurrNode(el);if(currNode){nodeId=currNode.attributes.xtra.compId;}
MktAppJS.chcDriveCreateSmartCampaignModal(el.getEl(),null,nodeId);el.parentMenu.hide(true);}},scArchive:{text:'Delete',id:'scArchive',iconCls:'mkiLightbulbOnDelete',handler:function(el){var currNode=MktMaMenu.menuItemPool.getCurrNode(el);var attr=currNode.attributes;var xtraAttr=attr.xtra;MktMa.deleteSmartCampaign(xtraAttr.compId,xtraAttr.nodeId,attr.text,el.getEl());el.parentMenu.hide(true);}},scClearSmartList:{text:'Clear Smart List',id:'scClearSmartList',iconCls:'mkiUsers3Delete',handler:function(el){el.parentMenu.hide(true);var currNode=MktMaMenu.menuItemPool.getCurrNode(el);var xtra=currNode.attributes.xtra;MktMessage.confirm('Clear Smart List?','Remove all triggers and filters from this campaign?','Clear',function(){MktSession.clockCursor(true);MktSession.ajaxRequest('smartcampaigns/clearSmartList',{serializeParms:{smartCampaignId:xtra.compId},onMySuccess:function(){MktSession.unclockCursor();xtra.panelId='campaignCanvasDetailSmartlist';MktDlManager.loadDl(xtra);}});});}},scClearFlow:{text:'Clear Flow',id:'scClearFlow',iconCls:'mkiFunnelDelete',handler:function(el){el.parentMenu.hide(true);var currNode=MktMaMenu.menuItemPool.getCurrNode(el);var xtra=currNode.attributes.xtra;MktMessage.confirm('Clear Flow?','Remove all flow steps from this campaign?','Clear',function(){MktSession.clockCursor(true);MktSession.ajaxRequest('smartcampaigns/clearFlow',{serializeParms:{smartCampaignId:xtra.compId},onMySuccess:function(){MktSession.unclockCursor();xtra.panelId='campaignCanvasDetailFlow';MktDlManager.loadDl(xtra);}});});}},getCurrNode:function(el){var currNode=el.parentMenu.currNode;if(!currNode){currNode={attributes:{text:MktPage.appVars.topicName,xtra:{compId:MktPage.appVars.smartCampaignId,nodeId:MktPage.appVars.nodeId}}};}
return currNode;},scActivate:{text:'Activate',id:'scActivate',disabled:true,handler:function(el){el.parentMenu.hide(true);MktMessage.comingSoon();}}};MktMaMenu.programsFolderMenu=function(){var fMip=MktFolder.menuItemPool;var maMip=MktMaMenu.menuItemPool;var mItems=menu.items;var m=Ext.menu.get('programsFolderMenu');return m?m:MktLeadDbMenu.menuFactory('programsFolderMenu',maMip.createProgramFolder,maMip.renameProgramFolder,maMip.deleteProgramFolder,maMip.newSmartCampaign);return menu;};MktMaMenu.programActionsMenu=function(attr){var fMip=MktFolder.menuItemPool;var maMip=MktMaMenu.menuItemPool;var attr=attr||{};var m=Ext.menu.MenuMgr.get(attr.menuId||'programActionsMenu');var config={id:attr.menuId||"programActionsMenu",extraMenuAction:true,cls:'mktPopup'};if(isDefined(attr.width))config.width=attr.width;return m?m:MktLeadDbMenu.menuFactory(config,maMip.newSmartCampaign,new Ext.menu.Separator({id:'scProgramSpacer'}),maMip.createProgramFolder,maMip.renameProgramFolder,maMip.deleteProgramFolder,maMip.scActivate,maMip.navigateToSmartCampaign,maMip.navigateToSmartList,maMip.navigateToFlow,maMip.navigateToSchedule,maMip.navigateToResults,maMip.navigateToCampaignMembers,new Ext.menu.Separator({id:'navigateToSpacer'}),maMip.scClone,maMip.scArchive,new Ext.menu.Separator({id:'devModeSpacer'}),maMip.scClearSmartList,maMip.scClearFlow);};MktMaMenu.maMenu=function(){var maMip=MktMaMenu.menuItemPool;var m=Ext.menu.MenuMgr.get('maMenu');return m?m:MktLeadDbMenu.menuFactory("maMenu",maMip.createProgramFolder,maMip.newSmartCampaign);};MktMaMenu.CampaignActionsMenu=function(attr){var menu;menu=MktMaMenu.programActionsMenu(attr);return MktMaMenu.preShowProgramActionsMenu(menu,attr);};MktMenuMgr.registerMenuProvider('MA',function(attr){attr.menu=MktMaMenu.CampaignActionsMenu(attr);});(function(){Mkt.app.MarketingActivities={};var ma=Mkt.app.MarketingActivities;ma.Toolbar=function(){function toolbarRequestHandler(attr,ret){if(isFunction(ma.Toolbar['get'+MktUtil.camelCase(attr.subType)])){ret.comp=ma.Toolbar['get'+MktUtil.camelCase(attr.subType)](attr);}}
Mkt.menus.ToolbarMgr.registerComp('MA',toolbarRequestHandler);return{getNewMenuButton:function(){return{text:'New',iconCls:'mkiBookBlue',xtype:'mkttbbutton',menu:MktMaMenu.maMenu()};},getHome:function(attr){return new Ext.Toolbar({items:[this.getNewMenuButton()]});},getSmartCampaignToolbar:function(campaignId){var items=[];if(!MktPage.satellite){items.push(Mkt.app.MarketingActivities.Toolbar.getNewMenuButton());items.push(' ');}
items.push({text:'Campaign Actions',iconCls:'mkiLightbulbOn',xtype:'mkttbbutton',menuPreShowCb:function(){MktMaMenu.preShowProgramActionsMenu(this.menu,{disableNavigateTo:true,nodeType:"Smart Campaign"});},menu:MktMenuMgr.getMenu('MA',{nodeType:'Smart Campaign',smartCampaignId:campaignId,width:135,menuId:'programActionsMenuToolbar',disableNavigateTo:true})});items.push('-');items.push({text:'View Campaign Members',iconCls:'mkiUsersInto',handler:function(){MktAppJS.loadSmartCampaignMembership(campaignId);}});return items;}};}();})();
/* ========== ../mkt-ext-2.0/apps/LpTemplate.js ============ */

Ext.ns("Mkt","Mkt.app","Mkt.app.DesignStudio");Mkt.app.DesignStudio.Templates={overviewCanvasId:'landingCanvasTM',detailCanvasId:'landingTMDetail',statusApproved:'p',statusApprovedWithDraft:'w',statusDraft:'l',statusDeleted:'d',statusOldVersion:'v',statusSystem:'s',statusIntDraft:null,statusIntApproved:1,statusIntApprovedWithDraft:2,getActionStates:function(action){var states={showEdit:true,disableEdit:false,showPreview:true,disablePreview:false,showApprove:true,disableApprove:false,showUnapprove:false,showClone:true,disableClone:false,showDelete:true,disableDelete:false,showExport:true,disableExport:false,showDraftActions:false,showEditDraft:false,showPreviewDraft:false,showApproveDraft:false,showDiscardDraft:false};var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){if(sels.length>=1){var status=this.getIntStatus(sels[0].status);if(status==this.statusIntApproved){states.showApprove=false;states.showUnapprove=true;}else if(status==this.statusIntApprovedWithDraft){states.showApprove=false;states.showEdit=false;states.showDraftActions=true;states.showUnapprove=true;}else{states.showUnapprove=false;states.showApprove=true;}}
if(sels.length>1){states.disableExport=states.disableEdit=states.disablePreview=states.disableClone=true;}}else{states.disableEdit=states.disablePreview=states.disableApprove=states.disableClone=states.disableDelete=true;}
return states;},getIntStatus:function(status){var retStat=status;if(status==this.statusApproved){retStat=this.statusIntApproved;}else if(status==this.statusApprovedWithDraft){retStat=this.statusIntApprovedWithDraft;}else if(status==null||status==0){retStat=this.statusIntDraft;}
return retStat;},newTemplate:function(parms){var fParentId=parms.fParentId;var animEl=parms.el;var cloneFromId=parms.cloneFromId;var cloneFromName=parms.cloneFromName;if(cloneFromId!=null&&cloneFromName!=null){var title="Clone to Template";var fht=360;var cloneFromHtml='<tr id="lptCloneRow">'+'  <td class="mktForm2Label">From Template:</td>'+'  <td class="mktForm2Field">'+cloneFromName+'  </td> <input type="hidden" id="cloneFromId" name="cloneFromId" value="'+cloneFromId+'" />'+'</tr>';}else{var title="New Template";var fht=310;}
var mp=new MktModalForm({renderer:function(el,unused){Ext.DomHelper.append(el,'<div id="lptNewTemplateForm">'+'  <form id="lptNewTemplateSubmitForm" onsubmit="return false;">'+'    <h2><div class="mktModalInFormMessage"></div></h2>'+'    <table border="0" cellpadding="0" cellspacing="0" class="mktForm2">'+'      <input type="hidden" id="fParentId" name="fParentId" value="'+(fParentId?fParentId:'')+'" />'+(cloneFromHtml||'')+'      <tr class="mktRequired">'+'        <td class="mktForm2Label">New Template Name:</td>'+'        <td class="mktForm2Field">'+'          <input class="mktMedium" type="text" id="lptName" name="lptName" tabindex="1" value="" title="Template Name" maxlength="240"/>'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'      <tr>'+'        <td class="mktForm2Label">Description:</td>'+'        <td class="mktForm2Field">'+'          <textarea class="mktLong95" name="lptDescr" tabindex="2" title="Description" rows="4"></textarea>'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'      <tr class="">'+'        <td class="mktForm2Label">&nbsp;</td>'+'        <td class="mktForm2Field">'+'            <input type="checkbox" class="mktCheckbox" tabindex="3" checked="checked" id="lptTemplateOpenEditor" name="lptTemplateOpenEditor" />'+'            <label for="lptTemplateOpenEditor">Open template editor for new template</label>'+'          <div class="message"></div>'+'        </td>'+'      </tr>'+'    </table>'+'  </form>'+'</div>');},title:title,okButtonTitle:'Create',width:655,height:fht});mp.show(animEl,this.newTemplateSubmit.createDelegate(this));},newTemplateSubmit:function(){var openEditor=Ext.get('lptTemplateOpenEditor').dom.checked;MktSession.ajaxRequest('/lpTemplate/createLpTemplate',{serializeForm:'lptNewTemplateSubmitForm',onMySuccess:this.newTemplateDone.createDelegate(this,[Mkt.util.Common.isValueTrue(openEditor)])});return false;},newTemplateDone:function(openEditor){var newLpTemplateId=MktPage.appVars.newLpTemplateId;if(MktPage.appVars.result==MktSession.resultSuccess){if(openEditor&&MktPage.appVars.newLpTemplateId){this.openTemplateEditor(MktPage.appVars.newLpTemplateId);}
if(newLpTemplateId){MktMainNav.loadLanding({lpgType:'template',lpgId:newLpTemplateId});delete MktPage.appVars.newLpTemplateId;}}},editTemplate:function(id){this.openTemplateEditor(id);},approveTemplate:function(ids){MktSession.ajaxRequest("/lpTemplate/approve",{serializeParms:{ids:Ext.encode(ids)},onMySuccess:this.commonActionDone.createDelegate(this,[this.statusApproved])});},unapproveTemplate:function(ids){MktSession.ajaxRequest("/lpTemplate/unapprove",{serializeParms:{ids:Ext.encode(ids)},onMySuccess:this.commonActionDone.createDelegate(this,[this.statusDraft])});},importTemplate:function(action){var sels=Mkt.util.Common.getSelections(action);mktLPTManager.driveUploadTemplate(Ext.getDom(action.el),(sels&&sels.length>=1)?sels[0].nodeId:undefined);},exportTemplate:function(action){Ext.apply(action,{appVarsName:'lpDetailTitle',appVarsId:'lpOid'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>=1){mktLPTManager.prototype.driveDownloadTemplate(sels[0].id);}},hasApprovedVersion:function(status){var intStatus=this.getIntStatus(status);return(intStatus==this.statusIntApproved||intStatus==this.statusIntApprovedWithDraft);},deleteTemplate:function(ids,name,animEl){if(isUndefined(ids)){return;}
var msg;if(ids.length==1){msg="Are you sure you want to delete <b>"+name+"</b>?";}else if(ids.length>1){msg="Are you sure you want to delete mulitple landing page templates?";}else{return;}
MktMessage.confirmDelete('Delete Template?',msg,function(){MktSession.ajaxRequest('/lpTemplate/delete',{serializeParms:{lptIds:Ext.encode(ids)},onMySuccess:this.deleteTemplateDone.createDelegate(this,[ids,animEl])});}.createDelegate(this),animEl);},deleteTemplateDone:function(ids,animEl){var result=MktPage.appVars.result;if(result==MktSession.resultFailed){if(MktPage.appVars.errMsg&&MktPage.appVars.errMsg.length>0){MktMessage.showWarning(MktPage.appVars.errMsg,undefined,animEl);}}else if(result==MktSession.resultSuccess){var tab=MktCanvas.getTab(this.detailCanvasId);var convIds=Mkt.util.Common.convertArrayValueToString(ids);if(tab&&convIds.indexOf((tab.config.compId))!=-1){if(MktCanvas.isActiveTab(tab.id)){MktCanvas.setActiveTab(this.overviewCanvasId);}
MktCanvas.remove(tab);}}
if(isDefined(MktPage.appVars.result)){delete MktPage.appVars.result;}
if(isDefined(MktPage.appVars.errMsg)){delete MktPage.appVars.errMsg;}},openTemplateEditor:function(lptId){if(isUndefined(lptId)){return;}
window.open(MktSession.getUrlPrefix()+"/lpteditor/editor?lptId="+lptId,"_blank","width=1200, height=800, left=100, top=80, "+"channelmode=no, copyhistory=no, directories=yes, fullscreen=no, location=yes, "+"menubar=yes, resizable=yes, scrollbars=yes, status=yes, titlebar=yes, toolbar=yes");},preview:function(lptId,draft){var draftQString="";if(isDefined(lptId)){if(draft){draftQString="&draft=true";}
window.open(MktSession.getUrlPrefix()+"/lpteditor/preview?lptId="+lptId+draftQString,"_blank","width=1200, height=800, left=100, top=80, "+"channelmode=no, copyhistory=no, directories=yes, fullscreen=no, location=yes, "+"menubar=yes, resizable=yes, scrollbars=yes, status=yes, titlebar=yes, toolbar=yes");}},discardDraft:function(lptIds){if(isDefined(lptIds)){MktSession.ajaxRequest("/lpTemplate/discardDraft",{serializeParms:{lptIds:Ext.encode(lptIds)},onMySuccess:this.commonActionDone.createDelegate(this,[this.statusApproved])});}},markTemplateDirty:function(lptId,nodeJson){if(!nodeJson||!lptId){return;}
if(MktExplorer)MktExplorer.replaceNodes(nodeJson);var activeTab=MktCanvas.getActiveTab();if(activeTab){var grid=activeTab.getGridPanel();if(grid){var rec=grid.getStore().getById(lptId);if(rec){var status=rec.data['status'];if(rec&&status==this.statusApproved){rec.data['status']=this.statusApprovedWithDraft;grid.getView().refreshRow(rec);}}}}
this.commonActionDone(this.statusApprovedWithDraft,[lptId],MktSession.resultSuccess);},commonActionDone:function(status,ids,result){var ids=ids||MktPage.appVars.ids;var result=result||MktPage.appVars.result;if(result==MktSession.resultSuccess){var canvas=MktCanvas.getTab(this.detailCanvasId);if(canvas){var currStatus=MktPage.appVars.status;if(status==this.statusApprovedWithDraft&&currStatus==this.statusDraft){}else{var convIds=Mkt.util.Common.convertArrayValueToString(ids);if(convIds.indexOf((canvas.config.compId))!=-1){var statusEl=Ext.get("lpTmDashStatus");if(statusEl){statusEl.update(this.renderedDetailStatus(status));}
MktPage.appVars.status=status;}}}}else if(result==MktSession.resultFailed){var errMsg=MktPage.appVars.errMsg;if(errMsg&&errMsg.length>0){MktMessage.showWarning(errMsg);}}
if(MktPage.appVars.result){delete MktPage.appVars.result;}
if(MktPage.appVars.ids){delete MktPage.appVars.ids;}
if(MktPage.appVars.errMsg){delete MktPage.appVars.errMsg;}},renderedDetailStatus:function(status){var rv;if(status==this.statusDraft){rv="<img src='/images/icons16/window.png' />Draft";}else if(status==this.statusApproved){rv="<img src='/images/icons16/window_ok.png' />Approved";}else{rv="<img src='/images/icons16/window_edit.png' />Approved with draft";}
return rv;}};
/* ========== mktDs.js ============ */

Ext.namespace('Mkt','Mkt.app','Mkt.app.DesignStudio');(function(){var ds=Mkt.app.DesignStudio;ds.Images={getActionStates:function(attr){var states={disablePreview:true,disableDelete:true,disableViewDetails:true,showSeparator:true,showGrabFromWebPage:true,showUploadImage:false,showViewDetails:true};var sels=Mkt.util.Common.getSelections(attr);if(sels&&sels.length>0){switch(sels[0].source){case"grid":(sels.length>1)?(states.disableDelete=false):(states.disableViewDetails=states.disablePreview=states.disableDelete=false);break;case"tree":states.disableDelete=states.disableViewDetails=states.disablePreview=false;break;case"tab":states.disablePreview=states.disableDelete=false;states.showViewDetails=states.showSeparator=false;break;}}
return states;},previewImage:function(action){if(isUndefined(action)||isUndefined(action.triggeredFrom)){return;}
Ext.apply(action,{appVarsName:'lpDetailTitle',appVarsId:'lpOid',appVarsUrl:'imURL'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){mktLPIManager.staticViewImage(sels[0].id,sels[0].url);}},deleteImage:function(action){if(isUndefined(action)||isUndefined(action.triggeredFrom)){return;}
Ext.apply(action,{appVarsName:'lpDetailTitle',appVarsId:'lpOid',appVarsUrl:'imURL'});var sels=Mkt.util.Common.getSelections(action);if(sels.length==1){mktLPIManager.staticConfirmDeleteImage(sels[0].id,sels[0].text,action.el);}else if(sels.length>1){ds.Common.deleteObjects('image','landingCanvasIM',undefined,action.el);}}};ds.Pages={overviewPanelId:'landingCanvasLP',detailTabId:'landingLPDetail',detailPanelId:'lpDetailTitle',parmsPrefix:'dpageid_',appVarsIdName:'lpOid',appVarsStatusName:'lpStatus',appVarsTypeName:'lpType',appVarsCompType:'compType',appVarsCompSubtype:'compSubtype',appVarsUrl:'lpURLPath',draftStatus:0,approvedStatus:1,dirtyStatus:2,TypeLandingPage:0,TypeTestedPage:1,landingPage:'Landing Page',landingPageTestGroup:'Landing Page Test Group',getActionStates:function(action){var states={disableEdit:false,disablePreview:false,disableClone:false,disableConvertToTestGroup:false,disableDelete:false,disableUnapprove:true,disableEditDraft:false,disablePreviewDraft:false,disableApproveDraft:true,disableDiscardDraft:true,disableUrlBuilder:false,disableViewDetails:false,showPreview:true,showViewDetails:true,showConvertToTestGroup:true,showUrlBuilder:true,showSeparator:true};Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName,appVarsStatus:this.appVarsStatusName,appVarsType:this.appVarsTypeName});var sels=Mkt.util.Common.getSelections(action);if(isArray(sels)){states.selCount=sels.length;}
if(sels&&sels.length>0){switch(sels[0].source){case"grid":if(sels.length==1){states.disableViewDetails=states.disablePreview=states.disableUrlBuilder=states.disableConvertToTestGroup=states.disableClone=states.disablePreviewDraft=states.disableEdit=false;}
else{states.disableConvertToTestGroup=states.disableViewDetails=states.disablePreview=states.disableUrlBuilder=states.showViewDetails=states.showSeparator=states.disableClone=states.disablePreviewDraft=states.disableEdit=true;}
break;case"tree":states.disableDelete=states.disableExport=states.disableViewDetails=false;break;case"tab":states.disableViewDetails=states.disablePreview=states.disableUrlBuilder=states.showViewDetails=states.showSeparator=states.disableConvertToTestGroup=states.disableClone=states.disablePreviewDraft=states.disableEdit=states.disableDelete=false;break;}
if(sels[0].status==this.approvedStatus){states.disablePreviewDraft=true;states.disableUnapprove=false;}else if(sels[0].status==this.dirtyStatus){states.disableDiscardDraft=states.disableApproveDraft=states.disableUnapprove=false;}else{states.disableApproveDraft=false;}
var compType=sels[0].compType;var compSubtype=sels[0].compSubtype;if(compType==this.landingPage&&compSubtype==this.landingPageTestGroup){this.getTestActionStates(action,sels,states);}else if(compType==this.landingPageTestGroup&&compSubtype==this.landingPageTestGroup){states.disableConvertToTestGroup=states.disableClone=states.disableEdit=true;states.showPreview=states.showConvertToTestGroup=false;}}else{states.disableViewDetails=states.disablePreview=states.disableUrlBuilder=states.showViewDetails=states.showSeparator=states.disableConvertToTestGroup=states.disableClone=states.disablePreviewDraft=states.disableEdit=states.disableDelete=true;var tab=MktCanvas.getActiveTab();if(tab&&tab.cName==this.detailTabId){var appVars=MktPage.appVars;if(appVars[this.appVarsCompType]==this.landingPageTestGroup&&appVars[this.appVarsCompSubtype]==this.landingPageTestGroup){this.getTestActionStates(action,sels,states);}else{states.showUrlBuilder=states.showConvertToTestGroup=appVars[action.appVarsType]==this.TypeTestedPage?false:true;}}}
return states;},getTestActionStates:function(action,sels,states){states.showConvertToTestGroup=false;states.showUrlBuilder=false;},getTestGroupActionStates:function(action){var states={showUndeployTestGroup:false,showDeployTestGroup:true};Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName,appVarsStatus:this.appVarsStatusName,appVarsType:this.appVarsTypeName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){switch(sels[0].source){case"grid":if(sels.length==1){}
else{}
break;case"tree":break;case"tab":break;}
states.showDeployTestGroup=(sels[0].status==this.draftStatus||(sels[0].status==this.dirtyStatus));states.showUndeployTestGroup=!states.showDeployTestGroup;}else{}
if(action.triggeredFrom=="button"){}
return states;},editPage:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktLPLManager.openLPEditor(sels[0].id);}},previewPage:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktLPLManager.openLPPreview(sels[0].nodeId,sels[0].id,true);}},clonePage:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktLPLManager.driveCreatePageModal(action.el,sels[0].id);}},convertToTestGroup:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktLPLManager.convertToTestGroup(sels[0].id);}},deletePage:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName,appVarsStatus:this.appVarsStatusName,appVarsType:this.appVarsTypeName,appVarsCompType:this.appVarsCompType});var sels=Mkt.util.Common.getSelections(action);if(sels.length==1){mktLPLManager.staticConfirmDeleteSelectedPage(sels[0].id,sels[0].text,sels[0].status,sels[0].compType,action.el);}else if(sels.length>1){ds.Common.deleteObjects('page',this.overviewPanelId,this.detailTabId,action.el);}},approve:function(action){var sels=Mkt.util.Common.getSelections(action);if(sels){var parms=ds.Common.getIds(sels,this.parmsPrefix);mktLPLManager.doModifyPages('deploy',parms);}},unApprovePage:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){var parms=ds.Common.getIds(sels,this.parmsPrefix);mktLPLManager.doModifyPages('undeploy',parms);}},editPageDraft:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktLPLManager.openLPEditor(sels[0].id);}},previewPageDraft:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktLPLManager.openLPPreview(sels[0].nodeId,sels[0].id,false);}},discardDraft:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){var parms=ds.Common.getIds(sels,this.parmsPrefix);mktLPLManager.doModifyPages('revert',parms);}},urlBuilder:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktLPLManager.doUrlBuilder(sels[0].id,action.el);}},newTestedPage:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktLPLManager.driveCreatePageModal(action.el,null,sels[0].id);}},deleteTestGroup:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsStatus:this.appVarsStatusName,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktLPLManager.staticConfirmDeleteSelectedPage(sels[0].id,sels[0].text,sels[0].status,sels[0].subType,action.el);}},deployTestGroup:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsStatus:this.appVarsStatusName,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){var parms={};parms['dpageid_'+sels[0].id]='dpageid_'+sels[0].id;mktLPLManager.doModifyPages('deploy',parms);}},undeployTestGroup:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsStatus:this.appVarsStatusName,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){var parms={};parms['dpageid_'+sels[0].id]='dpageid_'+sels[0].id;mktLPLManager.doModifyPages('undeploy',parms);}},convertToTestGroup:function(action){Ext.apply(action,{appVarsName:this.detailPanelId,appVarsStatus:this.appVarsStatusName,appVarsId:this.appVarsIdName});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktLPLManager.convertConfirm(sels[0].id);}}};ds.Forms={editForm:function(action){Ext.apply(action,{appVarsName:'lpDetailTitle',appVarsId:'lpOid'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){mktLPFManager.openFormEditor(sels[0].id,sels[0].name);}},cloneForm:function(action){Ext.apply(action,{appVarsName:'lpDetailTitle',appVarsId:'lpOid'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){mktLPFManager.driveCreateFormModal(action.el.dom,sels[0].id,sels[0].name);}},deleteForm:function(action){Ext.apply(action,{appVarsName:'lpDetailTitle',appVarsId:'lpOid'});var sels=Mkt.util.Common.getSelections(action);if(sels.length==1){mktLPFManager.staticConfirmDeleteForm(sels[0].id,sels[0].text,action.el);}else if(sels.length>1){ds.Common.deleteObjects('form','landingCanvasFO',undefined,action.el);}},getActionStates:function(action){var states={showNewForm:false,showRefreshAvailableFields:false,showViewDetails:true,showSeparator:true,disableEdit:true,disableClone:true,disableDelete:true,disableViewDetails:true};var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){switch(sels[0].source){case"grid":states.disableDelete=false;(sels.length>1)?null:(states.disableEdit=states.disableClone=states.disableViewDetails=false);break;case"tree":states.disableDelete=states.disableEdit=states.disableClone=states.disableViewDetails=false;break;case"tab":states.disableDelete=states.disableClone=states.disableEdit=false;states.showViewDetails=states.showSeparator=false;break;}}
if(action.triggeredFrom=="button"){states.showNewForm=true;}
return states;}};ds.Emails={draftStatus:1,approvedStatus:2,draftStatusText:'Draft',approvedStatusText:'Approved',dirtyStatusText:'Approved with draft',getActionStates:function(action){var states={disableEdit:false,disablePreview:false,disableSendTest:false,disableClone:false,disableDelete:false,disableApproveEmail:false,disableUnapproveEmail:true,disableEditDraft:true,disablePreviewDraft:true,disableSendTestDraft:true,disableApproveDraft:true,disableDiscardDraft:true,disableReturnPath:true};Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(isArray(sels)){states.selCount=sels.length;}
if(sels&&sels.length>0){switch(sels[0].source){case"tab":case"grid":if(sels.length==1){states.disableReturnPath=false;switch(sels[0].status){case this.dirtyStatusText:states.disableEdit=true;states.disableEditDraft=states.disablePreviewDraft=states.disableSendTestDraft=states.disableApproveDraft=states.disableDiscardDraft=false;case this.approvedStatusText:states.disableApproveEmail=true;states.disableUnapproveEmail=false;break;}}
else{states.disableEdit=states.disablePreview=states.disableSendTest=states.disableClone=true;var foundDraft=foundApproved=foundDirty=false;for(var i=0;i<sels.length;i++){switch(sels[i].status){case this.draftStatusText:foundDraft=true;break;case this.approvedStatusText:foundApproved=true;break;case this.dirtyStatusText:foundDirty=true;break;}}
states.disableApproveEmail=!foundDraft;states.disableUnapproveEmail=!foundApproved;states.disableApproveDraft=states.disableDiscardDraft=!foundDirty;}
break;case"tree":var data=mktEmManager.remapNodeAttr(action);if(data.status==this.approvedStatus){states.disableApproveEmail=true;states.disableUnapproveEmail=false;if(data.hasDraft){states.disableEdit=true;states.disableEditDraft=states.disablePreviewDraft=states.disableApproveDraft=states.disableSendTestDraft=states.disableApproveDraft=states.disableDiscardDraft=false;}}
break;}}else{states.disableEdit=states.disablePreview=states.disableSendTest=states.disableClone=states.disableDelete=states.disableApproveEmail=true;}
return states;},previewEmail:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){mktEmManager.previewEmail(sels[0].id,sels[0].name);}},sendTestEmail:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktEmManager.sendTestEmail(sels[0].id);}},cloneEmail:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktEmManager.driveCreateEmailModal(action.el,sels[0].id);}},deleteEmail:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){var emails=[];for(var i=0;i<sels.length;i++){emails.push({data:sels[i]});}
mktEmManager.deleteEmails(emails,action.el);}},unapproveEmail:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
mktEmManager.unapproveEmail(ids);}},editDraft:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){mktEmManager.editDraft(sels[0].id,sels[0].name,sels[0].hasDraft);}},previewDraft:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){mktEmManager.previewDraft(sels[0].id,sels[0].name);}},sendTestDraft:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktEmManager.sendTestEmail(sels[0].id,true);}},approveDraft:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
mktEmManager.approveDraft(ids);}},discardDraft:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
mktEmManager.discardDraft(ids);}},gotoReturnPath:function(action){Ext.apply(action,{appVarsName:'emailName',appVarsId:'detailEmailId',appVarsHasDraft:'emailHasDraft',appVarsStatus:'emailStatus',appVarsUsedBy:'emailUsedBy'});var ids=[];mktEmManager.gotoReturnPath(ids);}};ds.EmailTemplates={draftStatus:1,approvedStatus:2,draftStatusText:'Draft',approvedStatusText:'Approved',dirtyStatusText:'Approved with draft',getActionStates:function(action){var states={disableEdit:false,disablePreview:false,disableSendTest:false,disableClone:false,disableDelete:false,disableApproveTemplate:false,disableUnapproveTemplate:true,disableEditDraft:true,disablePreviewDraft:true,disableSendTestDraft:true,disableApproveDraft:true,disableDiscardDraft:true};Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(isArray(sels)){states.selCount=sels.length;}
if(sels&&sels.length>0){switch(sels[0].source){case"tab":case"grid":if(sels.length==1){switch(sels[0].status){case this.dirtyStatusText:states.disableEdit=true;states.disableEditDraft=states.disablePreviewDraft=states.disableSendTestDraft=states.disableApproveDraft=states.disableDiscardDraft=false;case this.approvedStatusText:states.disableApproveTemplate=true;states.disableUnapproveTemplate=false;break;}}
else{states.disableEdit=states.disablePreview=states.disableSendTest=states.disableClone=true;var foundDraft=foundApproved=foundDirty=false;for(var i=0;i<sels.length;i++){switch(sels[i].status){case this.draftStatusText:foundDraft=true;break;case this.approvedStatusText:foundApproved=true;break;case this.dirtyStatusText:foundDirty=true;break;}}
states.disableApproveTemplate=!foundDraft;states.disableUnapproveTemplate=!foundApproved;states.disableApproveDraft=states.disableDiscardDraft=!foundDirty;}
break;case"tree":var data=mktEmManager.remapNodeAttr(action);if(data.status==this.approvedStatus){states.disableApproveTemplate=true;states.disableUnapproveTemplate=false;if(data.hasDraft){states.disableEdit=true;states.disableEditDraft=states.disablePreviewDraft=states.disableApproveDraft=states.disableSendTestDraft=states.disableApproveDraft=states.disableDiscardDraft=false;}}
break;}}else{states.disableEdit=states.disablePreview=states.disableSendTest=states.disableClone=states.disableDelete=states.disableApproveTemplate=true;}
return states;},previewTemplate:function(action){Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){mktEmManager.previewTemplate(sels[0].id,sels[0].name);}},sendTestTemplate:function(action){Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){var useDraft=false;if(sels[0].source=="tree"){var data=mktEmManager.remapNodeAttr(action);useDraft=data.status==this.draftStatus;}
else{useDraft=sels[0].status==this.draftStatusText;}
mktEmManager.sendTestTemplate(sels[0].id,useDraft);}},cloneTemplate:function(action){Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktEmManager.driveCreateTemplateModal(action.el,sels[0].id);}},deleteTemplate:function(action){Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){var templates=[];for(var i=0;i<sels.length;i++){templates.push({data:sels[i]});}
mktEmManager.deleteTemplates(templates,action.el);}},unapproveTemplate:function(action){Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
mktEmManager.unapproveTemplate(ids);}},editTemplateDraft:function(action){Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){mktEmManager.editTemplateDraft(sels[0].id,sels[0].name,sels[0].hasDraft);}},previewTemplateDraft:function(action){Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){mktEmManager.previewTemplateDraft(sels[0].id,sels[0].name);}},sendTestTemplateDraft:function(action){Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels&&sels.length>0){mktEmManager.sendTestTemplate(sels[0].id,true);}},approveTemplateDraft:function(action){Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
mktEmManager.approveTemplateDraft(ids);}},discardTemplateDraft:function(action){Ext.apply(action,{appVarsName:'templateName',appVarsId:'detailTemplateId',appVarsHasDraft:'templateHasDraft',appVarsStatus:'templateStatus',appVarsUsedBy:'templateUsedBy'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>0){var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
mktEmManager.discardTemplateDraft(ids);}}};ds.Common={getIds:function(selections,parmsPrefix){var ids={};var parmsPrefix=parmsPrefix||'';for(var i=0;i<selections.length;i++){ids[parmsPrefix+selections[i].id]=parmsPrefix+selections[i].id;}
return ids;},deleteObjects:function(type,panelId,detailTabId,animEl){var grid=MktCanvas.getActiveTab().getGridPanel();if(grid){var sels=grid.getSelectionModel().getSelections();if(sels.length>0){var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
mktLandingManager.prototype.driveDeleteObjects.call({oTypeText:type,panelId:panelId,detailPanelId:detailTabId},ids,animEl);}}},viewDetails:function(action){if(isUndefined(action)||isUndefined(action.triggeredFrom)){return;}
Ext.apply(action,{appVarsName:action.appVarsName||'lpDetailTitle',appVarsId:action.appVarsName||'lpOid'});var sels=Mkt.util.Common.getSelections(action);if(sels.length>=1){MktMainNav.loadLanding(Ext.apply(action,sels[0],{type:'Landing'}));}}};})();
/* ========== mktDsMenu.js ============ */

Ext.namespace('MktDsMenu');(function(){MktDsMenu.menuItemPool={newLandingPage:{text:'New Landing Page',id:'newLandingPage',iconCls:'mkiWebpage',handler:function(el){if(el.parentMenu.currNode){var id=el.parentMenu.currNode.attributes.id;delete el.parentMenu.currNode;}
mktLPLManager.driveCreatePageModal(el.getEl(),null,null,id);el.parentMenu.hide(true);}},pageEdit:{text:'Edit Draft',id:'pageEdit',iconCls:'mkiWebpageEdit',handler:function(el){Mkt.app.DesignStudio.Pages.editPageDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},pageDraftEdit:{text:'Edit Draft',id:'pageDraftEdit',iconCls:'mkiWebpageEdit',cls:'mktMenuIndent',handler:function(el){Mkt.app.DesignStudio.Pages.editPageDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},pagePreview:{text:'Preview',id:'pagePreview',iconCls:'mkiWebpageView',handler:function(el){Mkt.app.DesignStudio.Pages.previewPage({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},pageDraftPreview:{text:'Preview Draft',id:'pageDraftPreview',iconCls:'mkiWebpageView',cls:'mktMenuIndent',handler:function(el){Mkt.app.DesignStudio.Pages.previewPageDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},pageClone:{text:'Clone',id:'pageClone',iconCls:'mkiWebpageAdd',handler:function(el){Mkt.app.DesignStudio.Pages.clonePage({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},pageConvertToTestGroup:{text:'Convert to Test Group',id:'pageConvertToTestGroup',iconCls:'mkiCustAbtest',handler:function(el){Mkt.app.DesignStudio.Pages.convertToTestGroup({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},pageDelete:{text:'Delete',id:'pageDelete',iconCls:'mkiWebpageDelete',handler:function(el){Mkt.app.DesignStudio.Pages.deletePage({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:el.getEl()});el.parentMenu.hide(true);}},pageApprove:{text:'Approve',id:'pageApprove',iconCls:'mkiWebpageOk',handler:function(el){Mkt.app.DesignStudio.Pages.approve({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,appVarsId:'lpOid',appVarsName:'lpDetailTitle'});el.parentMenu.hide(true);}},pageDraftApprove:{text:'Approve Draft',id:'pageDraftApprove',iconCls:'mkiWebpageOk',cls:'mktMenuIndent',handler:function(el){Mkt.app.DesignStudio.Pages.approve({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,appVarsId:'lpOid',appVarsName:'lpDetailTitle'});el.parentMenu.hide(true);}},pageUnapprove:{text:'Unapprove',id:'pageUnapprove',iconCls:'mkiWebpageForbidden',handler:function(el){Mkt.app.DesignStudio.Pages.unApprovePage({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},pageDraftDiscard:{text:'Discard Draft',id:'pageDraftDiscard',iconCls:'mkiWebpageDelete',cls:'mktMenuIndent',handler:function(el){Mkt.app.DesignStudio.Pages.discardDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},urlBuilder:{text:'URL builder',id:'urlBuilder',iconCls:'mkiWebpageInformation',handler:function(el){var action={triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:el.getEl()};var tab=MktCanvas.getActiveTab();if(tab&&tab.config.id=='landingLPDetail'){action.forceGetInfoFrom='appVars';}
Mkt.app.DesignStudio.Pages.urlBuilder(action);el.parentMenu.hide(true);}},newTestGroup:{text:'New Test Group',id:'newTestGroup',iconCls:'mkiCustAbtest',handler:function(el){var currNode=el.parentMenu.currNode;var nodeId=currNode?currNode.attributes.id:undefined;mktLPLManager.driveCreateTestModal(el.getEl(),nodeId);el.parentMenu.hide(true);}},editGroupMembers:{text:'Edit Group Members',id:'editGroupMembers',iconCls:'mkiCustAbtestInformation',handler:function(el){var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,forceGetInfoFrom:(this.parentMenu.triggeredFrom=='button')?'appVars':undefined,appVarsId:'lpTGid',xtra:el.parentMenu.xtra});if(sels.length>0){mktLPLManager.editTGMembersModal(sels[0].id,el.getEl());}
el.parentMenu.hide(true);}},newTestedPage:{text:'New Tested Page',id:'newTestedPage',iconCls:'mkiCustAbtestAdd',handler:function(el){Mkt.app.DesignStudio.Pages.newTestedPage({triggeredFrom:this.parentMenu.triggeredFrom,el:el.getEl(),forceGetInfoFrom:(this.parentMenu.triggeredFrom=='button')?'appVars':undefined,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},deleteTestGroup:{text:'Delete Test Group',id:'deleteTestGroup',iconCls:'mkiCustAbtestDelete',handler:function(el){Mkt.app.DesignStudio.Pages.deleteTestGroup({triggeredFrom:this.parentMenu.triggeredFrom,el:el.getEl(),forceGetInfoFrom:(this.parentMenu.triggeredFrom=='button')?'appVars':undefined,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},deployTestGroup:{text:'Approve Test Group',id:'deployTestGroup',iconCls:'mkiCustAbtestOk',handler:function(el){Mkt.app.DesignStudio.Pages.deployTestGroup({triggeredFrom:this.parentMenu.triggeredFrom,el:el.getEl(),forceGetInfoFrom:(this.parentMenu.triggeredFrom=='button')?'appVars':undefined,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},undeployTestGroup:{text:'Unapprove Test Group',id:'undeployTestGroup',iconCls:'mkiCustAbtestLock',handler:function(el){Mkt.app.DesignStudio.Pages.undeployTestGroup({triggeredFrom:this.parentMenu.triggeredFrom,el:el.getEl(),forceGetInfoFrom:(this.parentMenu.triggeredFrom=='button')?'appVars':undefined,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},pausePage:{text:'Pause Page',id:'pausePage',iconCls:'mkiMediaPause',handler:function(el){var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});parms['dpageid_'+(sels[0].id)]='dpageid_'+(sels[0].id);mktLPLManager.doModifyPages('pause',parms);el.parentMenu.hide(true);}},activatePage:{text:'Activate Page',id:'activatePage',iconCls:'mkiMediaPlayGreen',handler:function(el){var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});parms['dpageid_'+(sels[0].id)]='dpageid_'+(sels[0].id);mktLPLManager.doModifyPages('unpause',parms);el.parentMenu.hide(true);}},newPageTemplate:{text:'New Landing Page Template',id:'newPageTemplate',iconCls:'mkiWindow',handler:function(el){var parms={};if(el.parentMenu.currNode&&el.parentMenu.currNode.attributes.folder){parms.fParentId=el.parentMenu.currNode.id;delete el.parentMenu.currNode;}
parms.el=el.getEl();var templates=Mkt.app.DesignStudio.Templates;templates.newTemplate.call(templates,parms);el.parentMenu.hide(true);}},clonePageTemplate:{text:'Clone',id:'clonePageTemplate',iconCls:'mkiWindow',handler:function(el){var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,appVarsId:'lpOid',appVarsName:'lpDetailTitle',xtra:el.parentMenu.xtra});if(sels.length>0){if(sels[0].source=="tree"&&el.parentMenu.currNode){var currNodeAttr=el.parentMenu.currNode.attributes;if(currNodeAttr.folder){parms.fParentId=el.parentMenu.currNode.id;}else{parms.cloneFromId=currNodeAttr.xtra.compId;parms.cloneFromName=currNodeAttr.text;}
delete el.parentMenu.currNode;}else{parms.cloneFromId=sels[0].id;parms.cloneFromName=sels[0].text;}
parms.el=el.getEl();var templates=Mkt.app.DesignStudio.Templates;templates.newTemplate.call(templates,parms);}
el.parentMenu.hide(true);}},editPageTemplate:{text:'Edit Draft',id:'editPageTemplate',iconCls:'mkiWindowEdit',handler:function(el){el.parentMenu.hide(true);var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,appVarsId:'lpOid',appVarsName:'lpDetailTitle',xtra:el.parentMenu.xtra});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;templates.editTemplate.call(templates,sels[0].id);}}},editPageTemplateDraft:{text:'Edit Draft',id:'editPageTemplateDraft',iconCls:'mkiWindowEdit',cls:'mktMenuIndent',handler:function(el){el.parentMenu.hide(true);var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;templates.editTemplate.call(templates,sels[0].id);}}},pageTemplateImport:{text:'Import Template',id:'pageTemplateImport',iconCls:'mkiImport',handler:function(el){Mkt.app.DesignStudio.Templates.importTemplate({triggeredFrom:el.parentMenu.triggeredFrom,el:el.getEl(),xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},approvePageTemplate:{text:'Approve',id:'approvePageTemplate',iconCls:'mkiWindowOk',handler:function(el){var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,appVarsId:'lpOid',appVarsName:'lpDetailTitle',xtra:el.parentMenu.xtra});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
templates.approveTemplate.call(templates,ids);}
el.parentMenu.hide(true);}},approveDraftPageTemplate:{text:'Approve Draft',id:'approveDraftPageTemplate',iconCls:'mkiWindowOk',cls:'mktMenuIndent',handler:function(el){var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,appVarsId:'lpOid',appVarsName:'lpDetailTitle',xtra:el.parentMenu.xtra});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
templates.approveTemplate.call(templates,ids);}
el.parentMenu.hide(true);}},unapprovePageTemplate:{text:'Unapprove',id:'unapprovePageTemplate',iconCls:'mkiWindowForbidden',handler:function(el){var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,appVarsId:'lpOid',appVarsName:'lpDetailTitle',xtra:el.parentMenu.xtra});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
templates.unapproveTemplate.call(templates,ids);}
el.parentMenu.hide(true);}},discardDraftPageTemplate:{text:'Discard Draft',id:'discardDraftPageTemplate',iconCls:'mkiWindowDelete',cls:'mktMenuIndent',handler:function(el){var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,appVarsId:'lpOid',appVarsName:'lpDetailTitle',xtra:el.parentMenu.xtra});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
templates.discardDraft.call(templates,ids);}
el.parentMenu.hide(true);}},previewPageTemplate:{text:'Preview',id:'previewPageTemplate',iconCls:'mkiWindowView',handler:function(el){el.parentMenu.hide(true);var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,appVarsId:'lpOid',appVarsName:'lpDetailTitle',appVarsStatus:'status',xtra:el.parentMenu.xtra});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;templates.preview.call(templates,sels[0].id,!templates.hasApprovedVersion(sels[0].status));}}},previewDraftPageTemplate:{text:'Preview Draft',id:'previewDraftPageTemplate',iconCls:'mkiWindowView',cls:'mktMenuIndent',handler:function(el){el.parentMenu.hide(true);var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,appVarsId:'lpOid',appVarsName:'lpDetailTitle',xtra:el.parentMenu.xtra});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;templates.preview.call(templates,sels[0].id,true);}}},newForm:{text:'New Form',id:'newForm',iconCls:'mkiFormBlue',handler:function(el){if(el.parentMenu.currNode){var id=el.parentMenu.currNode.attributes.id;delete el.parentMenu.currNode;}
mktLPFManager.driveCreateFormModal(el.getEl(),null,null,id);el.parentMenu.hide(true);}},formEdit:{text:'Edit Form',id:'formEdit',iconCls:'mkiFormBlueEdit',handler:function(el){Mkt.app.DesignStudio.Forms.editForm({triggeredFrom:el.parentMenu.triggeredFrom,el:el.getEl(),xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},formClone:{text:'Clone Form',id:'formClone',iconCls:'mkiFormBlueAdd',handler:function(el){Mkt.app.DesignStudio.Forms.cloneForm({triggeredFrom:el.parentMenu.triggeredFrom,el:el.getEl(),xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},formDelete:{text:'Delete Form',id:'formDelete',iconCls:'mkiFormBlueDelete',handler:function(el){Mkt.app.DesignStudio.Forms.deleteForm({triggeredFrom:el.parentMenu.triggeredFrom,el:el.getEl(),xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},newEmail:{text:'New Email',id:'newEmail',iconCls:'mkiMail2',handler:function(el){if(el.parentMenu.currNode){var id=el.parentMenu.currNode.attributes.id;delete el.parentMenu.currNode;}
mktEmManager.driveCreateEmailModal(el.getEl(),null,id);el.parentMenu.hide(true);}},emailPreview:{text:'Preview',id:'emailPreview',iconCls:'mkiMail2View',handler:function(el){Mkt.app.DesignStudio.Emails.previewEmail({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},emailSendTest:{text:'Send Test',id:'emailSendTest',iconCls:'mkiMail2Forward',handler:function(el){Mkt.app.DesignStudio.Emails.sendTestEmail({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()},false);el.parentMenu.hide(true);}},emailClone:{text:'Clone',id:'emailClone',iconCls:'mkiMail2Add',handler:function(el){Mkt.app.DesignStudio.Emails.cloneEmail({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},emailDelete:{text:'Delete',id:'emailDelete',iconCls:'mkiMail2Delete',handler:function(el){Mkt.app.DesignStudio.Emails.deleteEmail({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:el.getEl()});el.parentMenu.hide(true);}},emailApprove:{text:'Approve',id:'emailApprove',iconCls:'mkiMail2Ok',handler:function(el){Mkt.app.DesignStudio.Emails.approveDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},emailUnapprove:{text:'Unapprove',id:'emailUnapprove',iconCls:'mkiMail2Forbidden',handler:function(el){Mkt.app.DesignStudio.Emails.unapproveEmail({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},emailEdit:{text:'Edit Draft',id:'emailEdit',iconCls:'mkiMail2Edit',handler:function(el){Mkt.app.DesignStudio.Emails.editDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},emailDraftEdit:{text:'Edit Draft',id:'emailDraftEdit',iconCls:'mkiMail2Edit',cls:'mktMenuIndent',handler:function(el){Mkt.app.DesignStudio.Emails.editDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},emailDraftPreview:{text:'Preview Draft',id:'emailDraftPreview',iconCls:'mkiMail2View',cls:'mktMenuIndent',handler:function(el){Mkt.app.DesignStudio.Emails.previewDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},emailDraftSendTest:{text:'Send Test of Draft',id:'emailDraftSendTest',iconCls:'mkiMail2Forward',cls:'mktMenuIndent',handler:function(el){Mkt.app.DesignStudio.Emails.sendTestDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()},false);el.parentMenu.hide(true);}},emailDraftApprove:{text:'Approve Draft',id:'emailDraftApprove',iconCls:'mkiMail2Ok',cls:'mktMenuIndent',handler:function(el){Mkt.app.DesignStudio.Emails.approveDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},emailDraftDiscard:{text:'Discard Draft',id:'emailDraftDiscard',iconCls:'mkiMail2Delete',cls:'mktMenuIndent',handler:function(el){Mkt.app.DesignStudio.Emails.discardDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},newEmailTemplate:{text:'New Email Template',id:'newEmailTemplate',iconCls:'mkiWindow',handler:function(el){if(el.parentMenu.currNode){var id=el.parentMenu.currNode.attributes.id;delete el.parentMenu.currNode;}
mktEmManager.driveCreateTemplateModal(el.getEl(),null,id);el.parentMenu.hide(true);}},emailTemplatePreview:{text:'Preview',id:'emailTemplatePreview',iconCls:'mkiWindowView',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.previewTemplate({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},emailTemplateSendTest:{text:'Send Test',id:'emailTemplateSendTest',iconCls:'mkiWindowNext',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.sendTestTemplate({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()},false);el.parentMenu.hide(true);}},emailTemplateClone:{text:'Clone',id:'emailTemplateClone',iconCls:'mkiWindows',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.cloneTemplate({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},emailTemplateDelete:{text:'Delete',id:'emailTemplateDelete',iconCls:'mkiWindowDelete',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.deleteTemplate({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:el.getEl()});el.parentMenu.hide(true);}},emailTemplateApprove:{text:'Approve',id:'emailTemplateApprove',iconCls:'mkiWindowOk',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.approveTemplateDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},emailTemplateUnapprove:{text:'Unapprove',id:'emailTemplateUnapprove',iconCls:'mkiWindowForbidden',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.unapproveTemplate({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},emailTemplateEdit:{text:'Edit Draft',id:'emailTemplateEdit',iconCls:'mkiWindowEdit',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.editTemplateDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},emailTemplateDraftEdit:{text:'Edit Draft',id:'emailTemplateDraftEdit',iconCls:'mkiWindowEdit',cls:'mktMenuIndent',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.editTemplateDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},emailTemplateDraftPreview:{text:'Preview Draft',id:'emailTemplateDraftPreview',cls:'mktMenuIndent',iconCls:'mkiWindowView',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.previewTemplateDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()});el.parentMenu.hide(true);}},emailTemplateDraftSendTest:{text:'Send Test of Draft',id:'emailTemplateDraftSendTest',cls:'mktMenuIndent',iconCls:'mkiWindowNext',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.sendTestTemplateDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra,el:this.getEl()},false);el.parentMenu.hide(true);}},emailTemplateDraftApprove:{text:'Approve Draft',id:'emailTemplateDraftApprove',cls:'mktMenuIndent',iconCls:'mkiWindowOk',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.approveTemplateDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},emailTemplateDraftDiscard:{text:'Discard Draft',id:'emailTemplateDraftDiscard',cls:'mktMenuIndent',iconCls:'mkiWindowDelete',handler:function(el){Mkt.app.DesignStudio.EmailTemplates.discardTemplateDraft({triggeredFrom:this.parentMenu.triggeredFrom,xtra:el.parentMenu.xtra});el.parentMenu.hide(true);}},uploadImage:{text:'Upload Image or File',id:'uploadImage',iconCls:'mkiHardDrive',handler:function(el){var currNode=el.parentMenu.currNode;var nodeId=currNode?currNode.attributes.id:undefined;mktLPIManager.uploadImageRequest(null,el.getEl(),true,nodeId);el.parentMenu.hide(true);}},imagePreview:{text:'View',id:'imagePreview',iconCls:'mkiZoomIn',handler:function(el){Mkt.app.DesignStudio.Images.previewImage({triggeredFrom:this.parentMenu.triggeredFrom,xtra:this.parentMenu.xtra});el.parentMenu.hide(true);}},imageDelete:{text:'Delete',id:'imageDelete',iconCls:'mkiHardDriveDelete',handler:function(el){Mkt.app.DesignStudio.Images.deleteImage({triggeredFrom:this.parentMenu.triggeredFrom,xtra:this.parentMenu.xtra,el:el.getEl()});el.parentMenu.hide(true);}},grabFromWebPage:{text:'Grab Images from Web Page',id:'grabFromWebPage',iconCls:'mkiHandGrab2',handler:function(el){mktLPIManager.fetchImagesRequest(null,el.getEl(),null);el.parentMenu.hide(true);}},pageTemplateExport:{text:'Export',id:'pageTemplateExport',iconCls:'mkiExport2',handler:function(el){Mkt.app.DesignStudio.Templates.exportTemplate({triggeredFrom:el.parentMenu.triggeredFrom,el:el.getEl(),xtra:this.parentMenu.xtra});el.parentMenu.hide(true);}},pageTemplateDelete:{text:'Delete',id:'pageTemplateDelete',iconCls:'mkiWindowDelete',handler:function(el){var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:this.parentMenu.triggeredFrom,appVarsId:'lpOid',appVarsName:'lpDetailTitle',xtra:el.parentMenu.xtra});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;var ids=[];for(var i=0;i<sels.length;i++){ids.push(sels[i].id);}
templates.deleteTemplate.call(templates,ids,sels[0].text,el.getEl());}
el.parentMenu.hide(true);}}};var fMip=MktFolder.menuItemPool;var dsMip=MktDsMenu.menuItemPool;MktDsMenu.preShowPageMenu=function(menu,attr){var mItems=menu.items;var states=Mkt.app.DesignStudio.Pages.getActionStates(Ext.applyIf(attr,{appVarsCompType:'compType',appVarsCompSubtype:'compSubtype'}));var hasDraftNode=!states.disableDiscardDraft;mItems.get('pagePreview').setDisabled(states.disablePreview);mItems.get('pagePreview').setVisible(states.showPreview);mItems.get('pageEdit').setVisible((!states.disableEdit&&!hasDraftNode)||states.selCount==0);mItems.get('pageEdit').setDisabled(states.disableEdit);mItems.get('pageApprove').setVisible((!states.disableApproveDraft&&!hasDraftNode)||states.selCount==0);mItems.get('pageApprove').setDisabled(states.disableApproveDraft);mItems.get('pageUnapprove').setVisible(!states.disableUnapprove);mItems.get('pageConvertToTestGroup').setDisabled(states.disableConvertToTestGroup);mItems.get('pageConvertToTestGroup').setVisible(states.showConvertToTestGroup);mItems.get('pageClone').setVisible(!states.disableClone||states.selCount==0);mItems.get('pageClone').setDisabled(states.disableClone);mItems.get('pageDelete').setDisabled(states.disableDelete);mItems.get('urlBuilder').setVisible(states.showUrlBuilder);mItems.get('urlBuilder').setDisabled(states.disableUrlBuilder);mItems.get('pageDraftActionsSeparator').setVisible(hasDraftNode);mItems.get('pageDraftActionsText').setVisible(hasDraftNode);mItems.get('pageDraftEdit').setVisible(hasDraftNode&&!states.disableEdit);mItems.get('pageDraftPreview').setVisible(hasDraftNode&&!states.disablePreviewDraft);mItems.get('pageDraftApprove').setVisible(hasDraftNode&&!states.disableApproveDraft);mItems.get('pageDraftDiscard').setVisible(hasDraftNode&&!states.disableDiscardDraft);return menu;};MktDsMenu.getPageMenu=function(attr){return MktLeadDbMenu.menuFactory("MktDsMenu.PageMenu",dsMip.pageEdit,dsMip.pagePreview,dsMip.pageApprove,dsMip.pageUnapprove,dsMip.pageConvertToTestGroup,dsMip.pageClone,dsMip.pageDelete,dsMip.urlBuilder,new Ext.menu.Separator({id:'pageDraftActionsSeparator'}),{id:'pageDraftActionsText',xtype:'text',text:'Draft Actions',iconCls:'mkiPencil',cls:'mktMenuGroupText',disabledClass:' ',disabled:true},dsMip.pageDraftEdit,dsMip.pageDraftPreview,dsMip.pageDraftApprove,dsMip.pageDraftDiscard);};MktDsMenu.preShowTemplateMenu=function(menu,attr){var mItems=menu.items;var states=Mkt.app.DesignStudio.Templates.getActionStates(Ext.apply({appVarsStatus:'status'},attr));mItems.get('editPageTemplate').setVisible(states.showEdit).setDisabled(states.disableEdit);mItems.get('previewPageTemplate').setVisible(states.showPreview).setDisabled(states.disablePreview);mItems.get('approvePageTemplate').setVisible(states.showApprove).setDisabled(states.disableApprove);mItems.get('unapprovePageTemplate').setVisible(states.showUnapprove);mItems.get('clonePageTemplate').setVisible(states.showClone).setDisabled(states.disableClone);mItems.get('pageTemplateDelete').setVisible(states.showDelete).setDisabled(states.disableDelete);mItems.get('pageTemplateExport').setVisible(states.showPreview).setDisabled(states.disablePreview);mItems.get('pageTemplateDraftActionsSeparator').setVisible(states.showDraftActions);mItems.get('pageTemplateDraftActionsText').setVisible(states.showDraftActions);mItems.get('editPageTemplateDraft').setVisible(states.showDraftActions);mItems.get('previewDraftPageTemplate').setVisible(states.showDraftActions);mItems.get('approveDraftPageTemplate').setVisible(states.showDraftActions);mItems.get('discardDraftPageTemplate').setVisible(states.showDraftActions);return menu;};MktDsMenu.getTemplateMenu=function(attr){return MktLeadDbMenu.menuFactory({id:"MktDsMenu.TemplateMenu",minWidth:156},dsMip.editPageTemplate,dsMip.previewPageTemplate,dsMip.approvePageTemplate,dsMip.unapprovePageTemplate,dsMip.clonePageTemplate,dsMip.pageTemplateDelete,dsMip.pageTemplateExport,new Ext.menu.Separator({id:'pageTemplateDraftActionsSeparator'}),{id:'pageTemplateDraftActionsText',xtype:'text',text:'Draft Actions',iconCls:'mkiPencil',cls:'mktMenuGroupText',disabledClass:' ',disabled:true},dsMip.editPageTemplateDraft,dsMip.previewDraftPageTemplate,dsMip.approveDraftPageTemplate,dsMip.discardDraftPageTemplate);};MktDsMenu.preShowFormMenu=function(menu,attr){var mItems=menu.items;var states=Mkt.app.DesignStudio.Forms.getActionStates(attr);mItems.get('formEdit').setDisabled(states.disableEdit);mItems.get('formClone').setDisabled(states.disableClone);mItems.get('formDelete').setDisabled(states.disableDelete);return menu;};MktDsMenu.getFormMenu=function(attr){return MktLeadDbMenu.menuFactory("MktDsMenu.FormMenu",dsMip.formEdit,dsMip.formClone,dsMip.formDelete);};MktDsMenu.preShowEmailMenu=function(menu,attr){var mItems=menu.items;var states=Mkt.app.DesignStudio.Emails.getActionStates(attr);var hasDraftNode=!states.disableDiscardDraft;mItems.get('emailPreview').setDisabled(states.disablePreview);mItems.get('emailEdit').setVisible((!states.disableEdit&&!hasDraftNode)||states.selCount==0);mItems.get('emailEdit').setDisabled(states.disableEdit);mItems.get('emailApprove').setVisible(!states.disableApproveEmail||states.selCount==0);mItems.get('emailApprove').setDisabled(states.disableApproveEmail);mItems.get('emailUnapprove').setVisible(!states.disableUnapproveEmail);mItems.get('emailSendTest').setDisabled(states.disableSendTest);mItems.get('emailClone').setDisabled(states.disableClone);mItems.get('emailDelete').setDisabled(states.disableDelete);mItems.get('emailDraftActionsSeparator').setVisible(hasDraftNode);mItems.get('emailDraftActionsText').setVisible(hasDraftNode);mItems.get('emailDraftPreview').setVisible(hasDraftNode&&!states.disablePreviewDraft);mItems.get('emailDraftEdit').setVisible(hasDraftNode&&!states.disableEditDraft);mItems.get('emailDraftSendTest').setVisible(hasDraftNode&&!states.disableSendTestDraft);mItems.get('emailDraftApprove').setVisible(hasDraftNode&&!states.disableApproveDraft);mItems.get('emailDraftDiscard').setVisible(hasDraftNode&&!states.disableDiscardDraft);return menu;};MktDsMenu.getEmailMenu=function(attr){return MktLeadDbMenu.menuFactory({id:"MktDsMenu.EmailMenu",minWidth:156},dsMip.emailEdit,dsMip.emailPreview,dsMip.emailApprove,dsMip.emailUnapprove,dsMip.emailSendTest,dsMip.emailClone,dsMip.emailDelete,new Ext.menu.Separator({id:'emailDraftActionsSeparator'}),{id:'emailDraftActionsText',xtype:'text',text:'Draft Actions',iconCls:'mkiPencil',cls:'mktMenuGroupText',disabledClass:' ',disabled:true},dsMip.emailDraftEdit,dsMip.emailDraftPreview,dsMip.emailDraftSendTest,dsMip.emailDraftApprove,dsMip.emailDraftDiscard);};MktDsMenu.preShowEmailTemplateMenu=function(menu,attr){var mItems=menu.items;var states=Mkt.app.DesignStudio.EmailTemplates.getActionStates(attr);var hasDraftNode=!states.disableDiscardDraft;mItems.get('emailTemplatePreview').setDisabled(states.disablePreview);mItems.get('emailTemplateEdit').setVisible((!states.disableEdit&&!hasDraftNode)||states.selCount==0);mItems.get('emailTemplateEdit').setDisabled(states.disableEdit);mItems.get('emailTemplateApprove').setVisible(!states.disableApproveTemplate||states.selCount==0);mItems.get('emailTemplateApprove').setDisabled(states.disableApproveTemplate);mItems.get('emailTemplateUnapprove').setVisible(!states.disableUnapproveTemplate);mItems.get('emailTemplateSendTest').setDisabled(states.disableSendTest);mItems.get('emailTemplateClone').setDisabled(states.disableClone);mItems.get('emailTemplateDelete').setDisabled(states.disableDelete);mItems.get('emailTemplateDraftActionsSeparator').setVisible(hasDraftNode);mItems.get('emailTemplateDraftActionsText').setVisible(hasDraftNode);mItems.get('emailTemplateDraftPreview').setVisible(hasDraftNode&&!states.disablePreviewDraft);mItems.get('emailTemplateDraftEdit').setVisible(hasDraftNode&&!states.disableEditDraft);mItems.get('emailTemplateDraftSendTest').setVisible(hasDraftNode&&!states.disableSendTestDraft);mItems.get('emailTemplateDraftApprove').setVisible(hasDraftNode&&!states.disableApproveDraft);mItems.get('emailTemplateDraftDiscard').setVisible(hasDraftNode&&!states.disableDiscardDraft);return menu;};MktDsMenu.getEmailTemplateMenu=function(attr){return MktLeadDbMenu.menuFactory({id:"MktDsMenu.EmailTemplateMenu",minWidth:156},dsMip.emailTemplateEdit,dsMip.emailTemplatePreview,dsMip.emailTemplateSendTest,dsMip.emailTemplateApprove,dsMip.emailTemplateUnapprove,dsMip.emailTemplateClone,dsMip.emailTemplateDelete,new Ext.menu.Separator({id:'emailTemplateDraftActionsSeparator'}),{id:'emailTemplateDraftActionsText',xtype:'text',text:'Draft Actions',iconCls:'mkiPencil',cls:'mktMenuGroupText',disabledClass:' ',disabled:true},dsMip.emailTemplateDraftEdit,dsMip.emailTemplateDraftPreview,dsMip.emailTemplateDraftSendTest,dsMip.emailTemplateDraftApprove,dsMip.emailTemplateDraftDiscard);};MktDsMenu.preShowImageMenu=function(menu,attr){var mItems=menu.items;var states=Mkt.app.DesignStudio.Images.getActionStates(attr);mItems.get('grabFromWebPage').setVisible(states.showGrabFromWebPage);mItems.get('imagePreview').setDisabled(states.disablePreview);mItems.get('imageDelete').setDisabled(states.disableDelete);return menu;};MktDsMenu.getImageMenu=function(attr){return MktLeadDbMenu.menuFactory("MktDsMenu.ImageMenu",dsMip.uploadImage,dsMip.grabFromWebPage,dsMip.imagePreview,dsMip.imageDelete);};MktDsMenu.preShowTestpageMenu=function(menu,attr){var mItems=menu.items;var temp=Ext.apply({forceGetInfoFrom:(attr.triggeredFrom=='button')?'appVars':undefined},attr);var states=Mkt.app.DesignStudio.Pages.getTestGroupActionStates(temp);mItems.get('undeployTestGroup').setVisible(states.showUndeployTestGroup);mItems.get('deployTestGroup').setVisible(states.showDeployTestGroup);return menu;};MktDsMenu.getTestpageMenu=function(attr){return MktLeadDbMenu.menuFactory("MktDsMenu.TestpageMenu",dsMip.editGroupMembers,dsMip.newTestedPage,dsMip.deleteTestGroup,dsMip.undeployTestGroup,dsMip.deployTestGroup,dsMip.urlBuilder);};MktDsMenu.preShowFolderMenu=function(menu,attr){var mItems=menu.items;if(attr){var isImage=attr.nodeType=='Image';var isLP=attr.nodeType=='Landing Page';mItems.get('newLandingPage').setVisible(isLP);mItems.get('newTestGroup').setVisible(isLP);var showCreateTemplate=attr.nodeType=='Landing Page Template';mItems.get('newPageTemplate').setVisible(showCreateTemplate);mItems.get('pageTemplateImport').setVisible(showCreateTemplate);mItems.get('newForm').setVisible(attr.nodeType=='Landing Page Form');mItems.get('newEmail').setVisible(attr.nodeType=='Email');mItems.get('newEmailTemplate').setVisible(attr.nodeType=='Email Template');mItems.get('uploadImage').setVisible(isImage);mItems.get('grabFromWebPage').setVisible(isImage);mItems.get('deleteFolder').setDisabled(attr.system);mItems.get('renameFolder').setDisabled(attr.system);if(isImage){mItems.get('createFolder').setDisabled(true);mItems.get('deleteFolder').setDisabled(true);mItems.get('renameFolder').setDisabled(true);}}
return menu;};MktDsMenu.getFolderMenu=function(attr){return MktLeadDbMenu.menuFactory("MktDsMenu.FolderMenu",dsMip.newLandingPage,dsMip.newTestGroup,dsMip.newPageTemplate,dsMip.pageTemplateImport,dsMip.newForm,dsMip.newEmail,dsMip.newEmailTemplate,dsMip.uploadImage,dsMip.grabFromWebPage,new Ext.menu.Separator({id:'contextNewSep'}),fMip.createFolder,fMip.renameFolder,fMip.deleteFolder);};MktDsMenu.preShowContextMenu=function(menu,attr){};MktDsMenu.getDsMenu=function(attr){var subType;var menu;if(isDefined(attr.xtra)&&isDefined(attr.xtra.subType)){subType=MktUtil.camelCase(attr.xtra.subType);}else if(isDefined(attr.folder)&&attr.folder){if(attr.text=='Design Studio'){return;}
subType='Folder';Ext.apply(attr.xtra,{subType:subType});}else{return;}
if(isFunction(MktDsMenu['get'+subType+'Menu'])){var m=Ext.menu.MenuMgr.get('MktDsMenu.'+subType+'Menu');menu=m?m:MktDsMenu['get'+subType+'Menu'](attr);menu.triggeredFrom=attr.triggeredFrom;if(isDefined(MktDsMenu['preShow'+subType+'Menu'])){menu=MktDsMenu['preShow'+subType+'Menu'](menu,attr);}
MktDsMenu.preShowContextMenu(menu,attr);if(isDefined(menu)){return menu;}}};MktDsMenu.showContextMenu=function(node,e){var parentNode=node.parentNode;if(parentNode&&parentNode.attributes.xtra){node.attributes.xtra.compSubtype=parentNode.attributes.xtra.compType;}
var menu=MktMenuMgr.getMenu('Landing',Ext.apply({triggeredFrom:"tree"},node.attributes));if(menu){menu.xtra=Ext.apply({},node.attributes.xtra,{triggeredFrom:"tree",text:node.text,nodeId:node.id});menu.showAt(e.xy);menu.currNode=node;Ext.get(node.getUI().elNode).addClass("x-tree-contextmenu");menu.on("hide",function(menu){if(this.getUI().elNode){Ext.get(this.getUI().elNode).removeClass("x-tree-contextmenu");}}.createDelegate(node));}
e.stopEvent();return false;};})();MktMenuMgr.registerMenuProvider('Landing',function(attr){attr.menu=MktDsMenu.getDsMenu(attr);});(function(){var ds=Mkt.app.DesignStudio;ds.Toolbar=function(){function toolbarRequestHandler(attr,ret){if(isFunction(ds.Toolbar['get'+MktUtil.camelCase(attr.subType)])){ret.comp=ds.Toolbar['get'+MktUtil.camelCase(attr.subType)](attr);}}
Mkt.menus.ToolbarMgr.registerComp('Landing',toolbarRequestHandler);return{getNewMenuButton:function(){var dsMip=MktDsMenu.menuItemPool;return{text:'New',iconCls:'mkiColorsCmyk',menu:new Ext.menu.Menu({minWidth:200,items:[dsMip.newLandingPage,dsMip.newPageTemplate,dsMip.newTestGroup,dsMip.newForm,'-',dsMip.newEmail,dsMip.newEmailTemplate,'-',dsMip.uploadImage,dsMip.grabFromWebPage]})};},getAllCreativeHome:function(attr){var dsMip=MktDsMenu.menuItemPool;return new Ext.Toolbar({items:[this.getNewMenuButton()]});},getPage:function(attr){var items=[this.getNewMenuButton(),{id:'dsMenuLandingPageActions_'+attr.panelId,text:'Landing Page Actions',iconCls:'mkiWebpage',xtype:'mkttbbutton',menuPreShowCb:MktDsMenu.preShowPageMenu.createDelegate(attr),menu:MktMenuMgr.getMenu(attr.type,{xtra:attr})},'-',{text:'Edit Draft',iconCls:'mkiWebpageEdit',id:'pageEdit_'+attr.panelId,disabled:(attr.panelId=='landingCanvasLP'),handler:function(){Mkt.app.DesignStudio.Pages.editPage({triggeredFrom:"button",el:this.getEl()});}},{text:'Preview Page',iconCls:'mkiWebpageView',id:'pagePreview_'+attr.panelId,disabled:(attr.panelId=='landingCanvasLP'),handler:function(){Mkt.app.DesignStudio.Pages.previewPage({triggeredFrom:'button',el:this.getEl()});}}];if(attr.panelId!='landingLPDetail'){items.push({text:'Report Settings',id:'pageReportSettings_'+attr.panelId,iconCls:'mkiClock',handler:function(button,e){Mkt.widgets.ReportSettings.show(Mkt.widgets.ReportSettings.data,undefined,button.el);}});}
if(attr.compType=='Landing Page'&&attr.compSubtype=='Landing Page Test Group'){items.push({text:'View Test Group',id:'viewTestGroup_'+attr.panelId,iconCls:'mkiCustAbtestGoto',handler:function(el){if(MktPage.appVars.lpTGid){MktDlManager.loadDl({type:'Landing',subType:'page',compId:MktPage.appVars.lpTGid});}}});}
return new Ext.Toolbar({items:items});},updatePageToolbarState:function(attr){var states=Mkt.app.DesignStudio.Pages.getActionStates(attr);var panelId='landingCanvasLP';var panel=MktCanvas.getItem(MktCanvas.getTab(panelId));if(panel){var tb=panel.getTopToolbar();if(tb){tb.items.get('pageEdit_'+panelId).setDisabled(states.disableEdit);tb.items.get('pagePreview_'+panelId).setDisabled(states.disablePreview);}}},getTestpage:function(attr){var pageAttr=Ext.applyIf({subType:'page'},attr);return new Ext.Toolbar({items:[this.getNewMenuButton(),{id:'dsMenuTestGroupActions_'+attr.panelId,text:'Test Group Actions',iconCls:'mkiCustAbtest',xtype:'mkttbbutton',menuPreShowCb:MktDsMenu.preShowTestpageMenu.createDelegate(attr),menu:MktMenuMgr.getMenu(attr.type,{xtra:attr})},'-',{text:'Report Settings',iconCls:'mkiClock',handler:function(button,e){Mkt.widgets.ReportSettings.show(Mkt.widgets.ReportSettings.data,undefined,button.el);}}]});},updateTestpageToolbarState:function(attr){var states=Mkt.app.DesignStudio.Pages.getActionStates(attr);var panelId='landingCanvasLP';var panel=MktCanvas.getItem(MktCanvas.getTab(panelId));if(panel){var tb=panel.getTopToolbar();if(tb){tb.items.get('pageEdit_'+panelId).setDisabled(states.disableEdit);tb.items.get('pagePreview_'+panelId).setDisabled(states.disablePreview);}}},getTemplate:function(attr){return new Ext.Toolbar({items:[this.getNewMenuButton(),{id:'dsMenuTemplateActions_'+attr.panelId,text:'Template Actions',xtype:'mkttbbutton',menuPreShowCb:MktDsMenu.preShowTemplateMenu.createDelegate(attr),menu:MktMenuMgr.getMenu(attr.type,{xtra:attr})},'-',{id:'pageTemplateEditDraft_'+attr.panelId,text:'Edit Draft',disabled:(attr.panelId=='landingCanvasTM'),iconCls:'mkiWindowEdit',handler:function(){var parms={};var sels=Mkt.util.Common.getSelections({triggeredFrom:'button',appVarsId:'lpOid',appVarsName:'lpDetailTitle'});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;templates.editTemplate.call(templates,sels[0].id);}}},{id:'pageTemplatePreview_'+attr.panelId,text:'Preview Template',disabled:(attr.panelId=='landingCanvasTM'),iconCls:'mkiWindowView',handler:function(){var sels=Mkt.util.Common.getSelections({triggeredFrom:'button',appVarsId:'lpOid',appVarsName:'lpDetailTitle'});if(sels.length>0){var templates=Mkt.app.DesignStudio.Templates;templates.preview.call(templates,sels[0].id);}}},{id:'importTemplate_'+attr.panelId,text:'Import Template',iconCls:'mkiImport',handler:function(button){Mkt.app.DesignStudio.Templates.importTemplate({triggeredFrom:'button',el:button.el});}}]});},updateTemplateToolbarState:function(attr){var states=Mkt.app.DesignStudio.Templates.getActionStates(attr);var panelId='landingCanvasTM';var panel=MktCanvas.getItem(MktCanvas.getTab(panelId));if(panel){var tb=panel.getTopToolbar();if(tb){tb.items.get('pageTemplateEditDraft_'+panelId).setDisabled(states.disableEdit);tb.items.get('pageTemplatePreview_'+panelId).setDisabled(states.disablePreview);}}},getImage:function(attr){var items=[this.getNewMenuButton(),{id:'imageActions_'+attr.panelId,text:'File Actions',iconCls:'mkiHardDrive',xtype:'mkttbbutton',menuPreShowCb:MktDsMenu.preShowImageMenu,menu:MktMenuMgr.getMenu(attr.type,{xtra:attr})},'-',{id:'imageUpload_'+attr.panelId,text:'Upload Image or File',iconCls:'mkiHardDrive',handler:function(){mktLPIManager.uploadImageRequest(null,this.getEl().dom,true);}}];return new Ext.Toolbar({items:items});},updateImageToolbarState:function(attr){var states=Mkt.app.DesignStudio.Images.getActionStates(attr);var panelId='landingCanvasIM';var panel=MktCanvas.getItem(MktCanvas.getTab(panelId));if(panel){var tb=panel.getTopToolbar();}},getForm:function(attr){var editFormId='formEdit_'+attr.panelId;return new Ext.Toolbar({items:[this.getNewMenuButton(),{id:'dsMenuFormActions_'+attr.panelId,text:'Form Actions',iconCls:'mkiFormBlue',xtype:'mkttbbutton',menuPreShowCb:MktDsMenu.preShowFormMenu,menu:MktMenuMgr.getMenu(attr.type,{xtra:attr})},'-',{id:editFormId,text:'Edit Form',iconCls:'mkiFormBlueEdit',disabled:attr.panelId=='landingCanvasFO',handler:function(){Mkt.app.DesignStudio.Forms.editForm({triggeredFrom:"button"});}}]});},updateFormToolbarState:function(attr){var states=Mkt.app.DesignStudio.Forms.getActionStates(attr);var panelId='landingCanvasFO';var panel=MktCanvas.getItem(MktCanvas.getTab(panelId));if(panel){var tb=panel.getTopToolbar();if(tb){tb.items.get('formEdit_'+panelId).setDisabled(states.disableEdit);}}},getEmail:function(attr){var items=[this.getNewMenuButton(),{id:'dsMenuEmailActions_'+attr.panelId,text:'Email Actions',iconCls:'mkiMail2',xtype:'mkttbbutton',menuPreShowCb:MktDsMenu.preShowEmailMenu,menu:MktMenuMgr.getMenu(attr.type,{xtra:attr})},'-',{text:'Edit Draft',id:'emailEdit_'+attr.panelId,iconCls:'mkiMail2Edit',disabled:(attr.panelId=='landingCanvasEM'),handler:function(button,e){Mkt.app.DesignStudio.Emails.editDraft({triggeredFrom:'button',panelId:attr.panelId});}},{text:'Preview Email',id:'emailPreview_'+attr.panelId,iconCls:'mkiMail2View',disabled:(attr.panelId=='landingCanvasEM'),handler:function(button,e){Mkt.app.DesignStudio.Emails.previewEmail({triggeredFrom:'button',panelId:attr.panelId});}}];if(attr.returnPath){items.push({text:'ReturnPath',id:'gotoReturnPath_'+attr.panelId,iconCls:'mkiMail2',disabled:!attr.returnPathEnabled,handler:function(button,e){Mkt.app.DesignStudio.Emails.gotoReturnPath({triggeredFrom:'button',panelId:attr.panelId});}});}
return new Ext.Toolbar({items:items});},updateEmailToolbarState:function(attr){var states=Mkt.app.DesignStudio.Emails.getActionStates(attr);var panelId=isDefined(attr.panelId)?attr.panelId:'landingCanvasEM';var panel=MktCanvas.getItem(MktCanvas.getTab(panelId));if(panel){var tb=panel.getTopToolbar();if(tb){tb.items.get('emailEdit_'+panelId).setDisabled(states.disableEdit&&states.disableEditDraft);tb.items.get('emailPreview_'+panelId).setDisabled(states.disablePreview);}}},getEmailTemplate:function(attr){return new Ext.Toolbar({items:[this.getNewMenuButton(),{id:'dsMenuTemplateActions_'+attr.panelId,text:'Template Actions',iconCls:'mkiWindow',xtype:'mkttbbutton',menuPreShowCb:MktDsMenu.preShowEmailTemplateMenu,menu:MktMenuMgr.getMenu(attr.type,{xtra:attr})},'-',{text:'Edit Draft',id:'emailTemplateEdit_'+attr.panelId,iconCls:'mkiWindowEdit',disabled:(attr.panelId=='emailTemplates'),handler:function(button,e){Mkt.app.DesignStudio.EmailTemplates.editTemplateDraft({triggeredFrom:'button',panelId:attr.panelId});}},{text:'Preview Template',id:'emailTemplatePreview_'+attr.panelId,iconCls:'mkiWindowView',disabled:(attr.panelId=='emailTemplates'),handler:function(button,e){Mkt.app.DesignStudio.EmailTemplates.previewTemplate({triggeredFrom:'button',panelId:attr.panelId});}}]});},updateEmailTemplateToolbarState:function(attr){var states=Mkt.app.DesignStudio.Emails.getActionStates(attr);var panelId=isDefined(attr.panelId)?attr.panelId:'emailTemplates';var panel=MktCanvas.getItem(MktCanvas.getTab(panelId));if(panel){var tb=panel.getTopToolbar();if(tb){tb.items.get('emailTemplateEdit_'+panelId).setDisabled(states.disableEdit&&states.disableEditDraft);tb.items.get('emailTemplatePreview_'+panelId).setDisabled(states.disablePreview);}}}};}();})();
/* ========== mktPrototypeExtAdapter.js ============ */

function Element(){}
Element.show=function(el){return Ext.get(el).setVisibilityMode(Ext.Element.DISPLAY).setVisible(true).dom;};Element.hide=function(el){return Ext.get(el).setVisibilityMode(Ext.Element.DISPLAY).setVisible(false).dom;};Element.removeClassName=function(el,className){return Ext.get(el).removeClass(className).dom;};Element.update=function(el,html){return Ext.get(el).update(html).dom;};Element.setStyle=function(el,style){return Ext.get(el).applyStyles(style).dom;};Element.addClassName=function(el,className){return Ext.get(el).addClass(className).dom;};$=function(el){return Ext.getDom(el);};Function.prototype.bind=function(){var __method=this,args=$A(arguments),object=args.shift();return function(){return __method.apply(object,args.concat($A(arguments)));}}
var $A=Array.from=function(iterable){if(!iterable)return[];if(iterable.toArray){return iterable.toArray();}else{var results=[];for(var i=0,length=iterable.length;i<length;i++)
results.push(iterable[i]);return results;}}
function Ajax(){}
Ajax.Request=function(url,options){if(MktPage.isDev()){Ext.Ajax.timeout=3600000;}else{Ext.Ajax.timeout=1800000;}
var o={url:url,params:options.parameters,method:options.method,success:options.onSuccess,failure:options.onFailure};if(isUndefined(options.parameters)||isNull(options.parameters)||isEmptyString(options.parameters)){o.headers={"Content-Length":0};}
return Ext.Ajax.request(o);};Object.extend=function(subclass,superClass){Ext.apply(subclass,superClass);};String.prototype.escapeHTML=function(str){var div=document.createElement('div');var text=document.createTextNode(this);div.appendChild(text);return div.innerHTML;};String.prototype.stripScripts=function(){return this.replace(new RegExp(Prototype.ScriptFragment,'img'),'');};String.prototype.extractScripts=function(){var matchAll=new RegExp(Prototype.ScriptFragment,'img');var matchOne=new RegExp(Prototype.ScriptFragment,'im');return(this.match(matchAll)||[]).map(function(scriptTag){return(scriptTag.match(matchOne)||['',''])[1];});};var Prototype={ScriptFragment:'(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)'}
function Form(){}
Form.serialize=function(f){return Ext.Ajax.serializeForm(f);};
/* ========== ../mkt-ext-2.0/MktTree20.js ============ */

MktTreeNodeUI=function(attributes){MktTreeNodeUI.superclass.constructor.call(this,attributes);};Ext.extend(MktTreeNodeUI,Ext.tree.TreeNodeUI,{ctype:'MktTreeNodeUI',render:function(bulkRender){MktTreeNodeUI.superclass.render.call(this,bulkRender);attr=this.node.attributes;if(isDefined(attr.mktTipCfg)){var mktTipCfg=attr.mktTipCfg;this.mktTip=new Ext.ToolTip(Ext.applyIf(mktTipCfg,{target:this.getEl(),width:200,height:200,title:'Default Title',dismissDelay:15000}));if(isFunction(mktTipCfg.renderCb)){mktTipCfg.renderCb(this.mktTip);}}},renderElements:function(n,a,targetNode,bulkRender){var cb=typeof a.checked=='boolean';if(!cb){MktTreeNodeUI.superclass.renderElements.apply(this,arguments);return;}
this.indentMarkup=n.parentNode?n.parentNode.ui.getChildIndent():'';var href=a.href?a.href:Ext.isGecko?"":"#";var buf=['<li class="x-tree-node"><div ext:tree-node-id="',n.id,'" class="x-tree-node-el x-tree-node-leaf x-unselectable ',a.cls,'" unselectable="on">','<span class="x-tree-node-indent">',this.indentMarkup,"</span>",'<img src="',this.emptyIcon,'" class="x-tree-ec-icon x-tree-elbow" />',cb?('<span class="x-tree-node-cb-ct"><input class="x-tree-node-cb" type="checkbox" '+(a.checked?'checked="checked" />':'/></span>')):'','<img src="',a.icon||this.emptyIcon,'" class="x-tree-node-icon',(a.icon?" x-tree-node-inline-icon":""),(a.iconCls?" "+a.iconCls:""),'" unselectable="on" />','<a hidefocus="on" class="x-tree-node-anchor" href="',href,'" tabIndex="1" ',a.hrefTarget?' target="'+a.hrefTarget+'"':"",'><span unselectable="on">',n.text,"</span></a></div>",'<ul class="x-tree-node-ct" style="display:none;"></ul>',"</li>"].join('');var nel;if(bulkRender!==true&&n.nextSibling&&(nel=n.nextSibling.ui.getEl())){this.wrap=Ext.DomHelper.insertHtml("beforeBegin",nel,buf);}else{this.wrap=Ext.DomHelper.insertHtml("beforeEnd",targetNode,buf);}
this.elNode=this.wrap.childNodes[0];this.ctNode=this.wrap.childNodes[1];var cs=this.elNode.childNodes;this.indentNode=cs[0];this.ecNode=cs[1];var index=2;if(cb){this.checkbox=cs[index].childNodes[0];this.checkbox.defaultChecked=this.checkbox.checked;index++;}
this.iconNode=cs[index];index++;this.anchor=cs[index];this.textNode=cs[index].firstChild;},onOver:function(e){},onOut:function(e){},getMktTip:function(){return this.mktTip;},getMktTipCfg:function(){return mktTipCfg;}});MktTreeLoader=Ext.extend(Ext.tree.TreeLoader,{ctype:'MktTreeLoader',getParams:function(node){var params=MktTreeLoader.superclass.getParams.call(this,node);if(node.attributes.specialDescendantId){params+="&specialDescendantId="+MktSession.encodeURIComponent(node.attributes.specialDescendantId);}
return params;},createNode:function(attr){attr.uiProvider=attr.uiProvider||this.uiProvider;attr.icon=attr.icon||this.icon;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);}
attr.mktExpanded=attr.expanded;if(isDefined(attr.folder)&&attr.expanded){attr.cancelFirstExpand=true;}
var node=attr.leaf?new MktTreeNode(attr):new MktAsyncTreeNode(attr);return node;}});MktAsyncTreeNode=function(attributes){attributes.uiProvider=attributes.uiProvider||MktTreeNodeUI;attributes.mktExpanded=attributes.mktExpanded||false;MktAsyncTreeNode.superclass.constructor.call(this,attributes);};Ext.extend(MktAsyncTreeNode,Ext.tree.AsyncTreeNode,{ctype:"MktAsyncTreeNode",realCascade:function(fn,scope,args){if(fn.apply(scope||this,args||[this])!==false){if(this.childrenRendered){var cs=this.childNodes;for(var i=0,len=cs.length;i<len;i++){if(cs[i].realCascade){cs[i].realCascade(fn,scope,args);}}}else{}}},expand:function(){var attr=this.attributes;if(isDefined(attr.folder)){if(attr.cancelFirstExpand){delete this.attributes.cancelFirstExpand;}else if(this.childNodes&&this.childNodes.length>0&&attr.mktExpanded===false){MktFolder.saveExpandState(this,true);}}
MktAsyncTreeNode.superclass.expand.apply(this,arguments);attr.mktExpanded=true;},collapse:function(){var attr=this.attributes;if(attr.suppressAjaxCollapse){delete this.attributes.suppressAjaxCollapse;}else if(isDefined(attr.folder)&&attr.folder&&attr.mktExpanded===true){MktFolder.saveExpandState(this,false);}
MktAsyncTreeNode.superclass.collapse.apply(this,arguments);attr.mktExpanded=false;},replaceChild:function(newChild,oldChild){var prnNode=oldChild.parentNode;var childNodes=prnNode.childNodes;var isSelected=oldChild.isSelected();var isPrnExpanded=prnNode.isExpanded();if(oldChild.parentNode){oldChild.parentNode.attributes.suppressAjaxCollapse=true;}
if(oldChild.nextSibling){var nSibling=oldChild.nextSibling;oldChild.remove();prnNode.insertBefore(newChild,nSibling);}else{oldChild.remove();prnNode.appendChild(newChild);}
if(isSelected){newChild.select();}
if(isPrnExpanded){prnNode.expand(false,false);}
return oldChild;},appendChild:function(){var node=MktAsyncTreeNode.superclass.appendChild.apply(this,arguments);if(node&&this.childrenRendered){node.render();}
this.ui.updateExpandIcon();return node;}});MktTreeNode=function(attributes){attributes.uiProvider=attributes.uiProvider||MktTreeNodeUI;attributes.mktExpanded=attributes.mktExpanded||false;MktTreeNode.superclass.constructor.call(this,attributes);};Ext.extend(MktTreeNode,Ext.tree.TreeNode,{ctype:"MktTreeNode",expand:function(){var attr=this.attributes;if(isDefined(attr.folder)){if(attr.cancelFirstExpand){delete this.attributes.cancelFirstExpand;}else if(this.childNodes&&this.childNodes.length>0&&attr.mktExpanded===false){MktFolder.saveExpandState(this,true);}}
MktTreeNode.superclass.expand.apply(this,arguments);attr.mktExpanded=true;},collapse:function(){var attr=this.attributes;if(attr.suppressAjaxCollapse){delete this.attributes.suppressAjaxCollapse;}else if(isDefined(attr.folder)&&attr.folder&&attr.mktExpanded===true){MktFolder.saveExpandState(this,false);}
MktTreeNode.superclass.collapse.apply(this,arguments);attr.mktExpanded=false;},replaceChild:function(newChild,oldChild){var prnNode=oldChild.parentNode;var childNodes=prnNode.childNodes;var isSelected=oldChild.isSelected();var isPrnExpanded=prnNode.isExpanded();if(oldChild.parentNode){oldChild.parentNode.attributes.suppressAjaxCollapse=true;}
if(oldChild.nextSibling){var nSibling=oldChild.nextSibling;oldChild.remove();prnNode.insertBefore(newChild,nSibling);}else{oldChild.remove();prnNode.appendChild(newChild);}
if(isSelected){newChild.select();}
if(isPrnExpanded){prnNode.expand(false,false);}
return oldChild;},clone:function(attributes){var atts=Ext.applyIf(attributes||{},this.attributes);atts.id=undefined;if(atts.menu){delete atts.menu;}
if(atts.currNode){delete atts.currNode;}
if(atts.xtra&&atts.xtra.id){delete atts.xtra.id;}
var newNodeAttr={};Ext.apply(newNodeAttr,atts);var newNode=new MktTreeNode(newNodeAttr);for(var i=0;i<this.childNodes.length;i++){newNode.appendChild(this.childNodes[i].clone(attributes));}
return newNode;}});
/* ========== ../mkt-ext-2.0/widgets/MaskedTreePanel.js ============ */

Ext.namespace('Mkt','Mkt.widgets');Mkt.widgets.MaskedTreePanel=Ext.extend(Ext.tree.TreePanel,{enableLoadMask:true,maskMsg:'',beforeShowLoadMask:function(){return true;},beforeHideLoadMask:function(){return true;},initLoadMask:function(){if(this.enableLoadMask){this.addListener('beforeload',this.showLoadMask.createDelegate(this),{buffer:250});this.addListener('load',this.hideLoadMask.createDelegate(this),{buffer:250});}},showLoadMask:function(){if(!this.loadMaskConfig){this.loadMaskConfig={msg:this.maskMsg};}
if(this.enableLoadMask&&!this.loadMaskVisible&&this.beforeShowLoadMask()){this.loadMask=new Ext.LoadMask(this.bwrap,Ext.apply({store:new Ext.data.Store()},this.loadMaskConfig));this.loadMask.show();this.loadMaskVisible=true;}},hideLoadMask:function(){if(this.loadMaskVisible){this.loadMaskVisible=false;if(this.beforeHideLoadMask()){this.loadMask.hide();}}},initComponent:function(){Mkt.widgets.MaskedTreePanel.superclass.initComponent.call(this);this.initLoadMask();}});
/* ========== ../mkt-ext-2.0/widgets/CachedTreePanel.js ============ */

Mkt.widgets.CachedTreePanel=Ext.extend(Mkt.widgets.MaskedTreePanel,{enableCache:true,initComponent:function(){this.filterFieldWidth=this.width-7;if(this.hasCache()){var cachedData=Mkt.widgets._CachedTreeData[this.dataUrl];this.loader=this.loader||new Ext.tree.TreeLoader();this.root=new Ext.tree.AsyncTreeNode({id:'root',text:'root',expanded:true,children:cachedData});}
else{this.loader=this.loader||new Ext.tree.TreeLoader({clearOnLoad:false,preloadChildren:true,dataUrl:this.dataUrl});this.loader.on('load',this.fillCache);this.root=new Ext.tree.AsyncTreeNode({id:'root',text:'root',expanded:true});}
Mkt.widgets.CachedTreePanel.superclass.initComponent.call(this);},hasCache:function(){var hasCache=false;if(this.enableCache){hasCache=Mkt.widgets._CachedTreeData[this.dataUrl];}
return hasCache;},fillCache:function(loader,node,response){if(!Mkt.widgets._CachedTreeData[this.dataUrl]){try{Mkt.widgets._CachedTreeData[this.dataUrl]=eval("("+response.responseText+")");}
catch(e){var reqParams={url:this.dataUrl,ajaxResult:'exception'};var parseResults={errorType:'Malformed tree JSON'};MktMessage.showSystemError(MktMessage.SYSTEM_ERROR_TREE,{request:response,parseResults:parseResults,reqParams:reqParams,showDebugInfo:MktPage.isDev(),cleanResponseText:response.responseText});MktSession.phoneHome({systemErrorMsg:MktMessage.SYSTEM_ERROR_TREE,request:response,parseResults:parseResults,reqParams:reqParams,cleanResponseText:response.responseText});}}},invalidateAllCache:function(){Mkt.widgets._CachedTreeData={};},invalidateCache:function(){if(isDefined(Mkt.widgets._CachedTreeData[this.dataUrl])){delete Mkt.widgets._CachedTreeData[this.dataUrl];}},arrangeTreeAfterCancel:Ext.emptyFn,openFolders:function(path){this.expandPath(path,'text');}});Mkt.widgets._CachedTreeData={};
/* ========== ../mkt-ext-2.0/widgets/FilterTreePanel.js ============ */

Ext.namespace('Mkt','Mkt.widgets');Mkt.widgets.FilterTreePanel=Ext.extend(Ext.Panel,{bindTree:function(boundTree){this.boundTree=boundTree;this.filter=new Ext.tree.TreeFilter(boundTree,{clearBlank:true,autoClear:true});},frame:false,autoScroll:true,containerScroll:true,cls:'mktFilterTree mktPlainTbar',filterFieldEmptyText:'Find...',filterFieldTooltip:null,filterFieldCls:'mktFilterField',filterFieldSelectOnFocus:true,filterNoResultsText:'No matches for ',filterFieldConfig:{triggerClass:'mkiFindNext',disableAutosuggest:true},filterFieldWidth:null,filterFieldPadding:18,twinTriggerConfig:{cls:'mkiCustSearchClose less-subtle'},filterBranches:false,filterBranchNames:false,animate:true,animateCollapse:true,collapseFirst:false,preloadChildren:true,filterUnloadedBranches:false,isExplorer:false,focusFilterField:function(){this.filterField.focus(true);},showFilterActivity:function(){this.addClass('mktFilterActivity');},clearFilterActivity:function(){this.removeClass('mktFilterActivity');this.filterQueue=0;this.previousFilterText='';},initComponent:function(){this.tbar=[this.initFilterfield()];Mkt.widgets.FilterTreePanel.superclass.initComponent.call(this);},initFilterfield:function(){if(!this.filterFieldWidth){this.filterFieldWidth=this.width-this.filterFieldPadding;}
this.filterField=new Ext.form.ImprovedComboBox(Ext.apply({width:this.filterFieldWidth,cls:this.filterFieldCls,emptyText:this.filterFieldEmptyText,downKeyHandler:this.filterFieldDownKeyHandler.createDelegate(this),upKeyHandler:this.filterFieldUpKeyHandler.createDelegate(this),selectOnFocus:this.filterFieldSelectOnFocus,twinTriggerConfig:this.twinTriggerConfig,onTwinTriggerClick:this.clearFilterField.createDelegate(this)},this.filterFieldConfig));this.filterField.addListener('render',function(f){if(this.twinTrigger){this.twinTrigger.hide();}
f.el.on('keydown',this.downKeyHandler,f,{buffer:100});f.el.on('keyup',this.upKeyHandler,f,{buffer:300});});return this.filterField;},filter:null,filteredNodes:[],showFilteredNodes:function(){Ext.each(this.filteredNodes,function(n){n.ui.show();});this.filteredNodes=[];},clearFilterField:function(focus){if(focus===undefined)focus=true;if(!this.filterField||!this.filter){return;}
this.filterField.collapse();var text=this.filterField.getValue();this.filterField.setRawValue('');if(focus){this.filterField.focus();this.filterField.select();}
this.filterField.twinTrigger.hide();try{this.showFilteredNodes();this.filter.clear();this.arrangeTreeAfterCancel();this.clearFilterActivity();}
catch(e){}
this.hideTreeMessage();},filterQueue:0,previousFilterText:'',previousVisibleNodes:-1,filterFieldDownKeyHandler:function(e){var k=e.getKey();if(k==e.ESC){this.clearFilterField();return false;}
this.showFilterActivity();return true;},filterFieldUpKeyHandler:function(e){var k=e.getKey();var text=this.filterField.getValue();if(k==e.ESC){this.clearFilterField();return false;}
else if(k==e.ENTER){if(!this.enterKeyPressed(text)){return false;}}
else if(k==e.TAB){if(!this.tabKeyPressed(text)){return false;}}
if(text!==''){this.filterField.twinTrigger.show();}
else{this.filterField.twinTrigger.hide();}
this.filterTree();return true;},enterKeyPressed:function(text){return false;},tabKeyPressed:function(text){return false;},deepSearch:2,filterTree:function(init){this.filterQueue++;if(this.filterQueue>1){return true;}
var boundTree=this.boundTree;root=boundTree.root;var text=this.filterField.getValue();var searchSubset=false;if(text.length>this.deepSearch&&this.previousFilterText.length>0&&text.indexOf(this.previousFilterText)===0){searchSubset=true;if(this.previousVisibleNodes===0){this.clearFilterActivity();return false;}}
if(!searchSubset){this.showFilteredNodes();}
if((!text||text.length===0)&&!init){this.clearFilterField();return false;}
if(text===this.previousFilterText){this.clearFilterActivity();return false;}
this.previousFilterText=text;if(!searchSubset){this.arrangeTreeBeforeFilter();}
var filterRe=new RegExp(Ext.escapeRe(text),'i');var matchingPaths={};if(text.length>=this.deepSearch){var filterBranches=this.filterBranches;function findMatchingPaths(n,path){var cs=null;if(n.attributes&&n.attributes.children){cs=n.attributes.children;}
else{cs=n.children;}
if(!cs)return false;for(var i=0;i<cs.length;i++){var child=cs[i];if((!cs.leaf||filterBranches)&&filterRe.test(child.filterText||child.text)){matchingPaths[path]=1;}
var childPath=path+'/'+child.text;findMatchingPaths(child,childPath);}
return false;}
findMatchingPaths(root,root.getPath('text'));var pathCount=0;for(path in matchingPaths){pathCount++;}
if(pathCount>0){MktPage.cancelSaveExpandState=true;for(path in matchingPaths){boundTree.expandPath(path,'text',function(){pathCount--;if(pathCount===0){MktPage.cancelSaveExpandState=false;}});}}}
var visibleLeafNodes=0;var deepSearch=this.deepSearch;this.filter.filterBy(function(n){var keep=false;if(!n.leaf){keep=true;}
else if(filterRe.test(n.attributes.filterText||n.text)){visibleLeafNodes++;keep=true;}
else if(this.filterBranches&&filterRe.test(n.parentNode.text)){visibleLeafNodes++;keep=true;}
return keep;},this,root);filteredNodes=this.filteredNodes;var visibleFolders=0;var filterBranchNames=this.filterBranchNames;var filterUnloadedBranches=this.filterUnloadedBranches;root.cascade(function(n){if(!n.hidden&&!n.leaf){if(!n.hidden&&n.hasUnfilteredChildren(filterRe)||(filterBranchNames&&(filterRe.test(n.filterText||n.text)))||(filterUnloadedBranches&&!n.loaded)){visibleFolders++;if(!n.expanded){n.cancelSaveExpandState=true;n.expand(false,false);n.cancelSaveExpandState=false;}}
else{n.ui.hide();filteredNodes.push(n);}}});this.previousVisibleNodes=visibleFolders+visibleLeafNodes;if(this.previousVisibleNodes===0){this.noResults(text);}
else{this.hideTreeMessage();}
this.filterQueue--;if(this.filterQueue>0){this.filterQueue=0;this.filterTree();}
else{this.clearFilterActivity.defer(1000,this);}
return false;},noResults:function(text){this.showTreeMessage(this.filterNoResultsText+'&ldquo;'+Ext.util.Format.htmlEncode(text)+'&rdquo;');},showTreeMessage:function(msg){this.boundTree.addClass("mktFilterNoResults");this.boundTree.el.mask(msg);},hideTreeMessage:function(){this.boundTree.el.unmask();this.boundTree.removeClass("mktFilterNoResults");},arrangeTreeBeforeFilter:Ext.emptyFn,arrangeTreeAfterCancel:Ext.emptyFn});
/* ========== ../mkt-ext-2.0/widgets/AsyncFilterTreePanel.js ============ */

Ext.namespace('Mkt','Mkt.widgets');Mkt.widgets.AsyncFilterTreePanel=Ext.extend(Mkt.widgets.FilterTreePanel,{asyncFilterDelay:350,initComponent:function(){Mkt.widgets.AsyncFilterTreePanel.superclass.initComponent.call(this);},bindTree:function(){Mkt.widgets.AsyncFilterTreePanel.superclass.bindTree.apply(this,arguments);this.boundTree.on('beforeload',this.beforeTreeLoad);this.boundTree.on('load',this.onTreeLoad.createDelegate(this));},beforeTreeLoad:function(node){var loader=this.getLoader();loader.baseParams=loader.baseParams||{};if(this.query){Ext.apply(loader.baseParams,{query:this.query});}
if(node.getDepth()>0){this.addClass('mktHideMask');}else{this.removeClass('mktHideMask');}},onTreeLoad:function(){var boundTree=this.boundTree;var loader=boundTree.getLoader();var query="";if(loader.baseParams&&loader.baseParams.query){query=loader.baseParams.query;delete loader.baseParams.query;}
if(!boundTree.getRootNode().hasChildNodes()){this.noResults(query);}},filterTree:function(init){this.hideTreeMessage();if(!this.dtFilter){this.dtFilter=new Ext.util.DelayedTask(this.filterDelayedTask,this);}
this.dtFilter.delay(this.asyncFilterDelay);},filterDelayedTask:function(){this.boundTree.query=this.filterField.getValue();this.boundTree.getRootNode().reload();},clearFilterField:function(){Mkt.widgets.AsyncFilterTreePanel.superclass.clearFilterField.apply(this,arguments);delete this.boundTree.query;this.boundTree.getRootNode().reload();}});
/* ========== ../mkt-ext-2.0/widgets/SmartPaletteTree.js ============ */

Mkt.widgets.SmartPaletteTreePanel=Ext.extend(Mkt.widgets.CachedTreePanel,{enableLoadMask:true,ddGroup:'default',rootVisible:false,enableDrag:true,lines:true,initComponent:function(){this.on('enddrag',function(tree,node,e){var nodeUI=node.getUI();if(nodeUI&&nodeUI.elNode){Ext.get(nodeUI.elNode).removeClass('x-tree-node-over');}}.createDelegate(this));Mkt.widgets.SmartPaletteTreePanel.superclass.initComponent.call(this);},arrangeTreeAfterCancel:function(){if(this.dpType=='Smartlist'){this.root.collapse(true,false);this.openFolders('/root/Triggers');this.openFolders('/root/Filters');this.openFolders('/root/Filters/Lead History');}}});
/* ========== ../mkt-ext-2.0/widgets/CheckedTreePanel.js ============ */

Ext.ns('Mkt','Mkt.widgets');Mkt.widgets.CheckedTreePanel=Ext.extend(Mkt.widgets.SmartPaletteTreePanel,{setChecked:function(checkedIds,check){checkedIds=checkedIds||[];var len=checkedIds.length;var node;var ui;for(var i=0;i<len;i++){node=this.getNodeById(checkedIds[i]);if(node){ui=node.getUI();if(ui&&ui.checkbox){ui.checkbox.checked=check;node.attributes.checked=check;}}}}});
/* ========== ../mkt-ext-2.0/widgets/ComponentFilterTreePanel.js ============ */

Ext.ns('Mkt','Mkt.widgets');Mkt.widgets.ComponentFilterTreePanel=Ext.extend(Mkt.widgets.CheckedTreePanel,{expandCheckedNodes:true,expandParentOnly:true,checkDelay:10,nodeIdAttr:'id',maxTreeWalkDepth:100,showDebugMessage:false,initComponent:function(){Mkt.widgets.ComponentFilterTreePanel.superclass.initComponent.call(this);this.on('checkchange',this.checkChange.createDelegate(this));this.getLoader().on('load',this.treeLoad.createDelegate(this));this.debug("selected nodes",this.selectedNodes);this.checkTask=new Ext.util.DelayedTask(this.checkNodes,this);if(this.hasCache()){this.debug("selected nodes",this.selectedNodes);this.on('load',this.cacheLoaded,this);}},debug:function(){if(this.showDebugMessage){console.debug.apply(undefined,arguments);}},log:function(msg){if(this.showDebugMessage){console.log(msg);}},cacheLoaded:function(node){this.un('load',this.cacheLoaded,this);this.checkTask.delay(this.checkDelay);},checkNodes:function(){this.expandAndCheck(this.selectedNodes);},reInitCheckedNodes:function(){var checkedNodes=this.getChecked(this.nodeIdAttr);this.setChecked(checkedNodes,false);this.checkTask.delay(this.checkDelay);},treeLoad:function(){this.log("{treeLoad} tree loaded");this.checkTask.delay(this.checkDelay);},expandAndCheck:function(nodeIds){var nodeLen=nodeIds.length;for(var i=0;i<nodeLen;i++){this.log("{expandAndCheck} nodeId: "+nodeIds[i]);this.expandPathById(nodeIds[i],function(nodeId){this.log("checking node: "+nodeId);var node=this.getNodeById(nodeId);if(node){this.setChecked([nodeId],true);}}.createDelegate(this,[nodeIds[i]]));}},expandPathById:function(id,callback){var path;var node=this.getNodeById(id);if(node){if(this.expandParentOnly&&node.parentNode){node=node.parentNode;}
path=node.getPath(this.nodeIdAttr);}else{path=this.getNodePathById(id,!this.expandParentOnly);}
if(path){this.log("{expandPathById} id: "+id+", path: "+path);this.expandPath(path,this.nodeIdAttr,callback);}},expandAllPath:function(nodeIds){var nodeCount=nodeIds.length;this.debug("{expandAllPath} expandAllPath: ",nodeIds);var node,path;for(var i=0;i<nodeCount;i++){node=this.getNodeById(nodeIds[i]);if(!node){path=this.getNodePathById(nodeIds[i],!this.expandParentOnly);if(!path){continue;}}
if(!path){if(this.expandParentOnly&&node&&node.parentNode){node=node.parentNode;}
path=node.getPath(this.nodeIdAttr);}
this.log("expanding the path: "+path);this.expandPath(path,this.nodeIdAttr);}},checkChange:function(node,checked){if(node.getDepth()==1&&checked){var hashKeys=this.getNodeHashKeys();if(hashKeys){var rootIndex=hashKeys.indexOf(node.id);hashKeys.splice(rootIndex,1);}
this.setChecked(hashKeys,false);}else{this.setChecked([this.getVisibleRootNode().id],false);}},getNodeHashKeys:function(){var keys=[];for(key in this.nodeHash){keys.push(key);}
return keys;},getVisibleRootNode:function(){if(this.getRootNode().childNodes){return this.getRootNode().childNodes[0];}},treeWalk:function(fn,node,scope,args){if(!fn||!isFunction(fn)){return;}
this.currentTreeWalkDepth=this.currentTreeWalkDepth||0;if(this.currentTreeWalkDepth>this.maxTreeWalkDept){return;}
if(!node){var root=this.getRootNode();node=this.rootVisible?root:root.childNodes[0];}
node=node||this.getRootNode();if(node){var children;if(node.attributes){children=node.attributes.children;}else{children=node.children;}
var csLen=children.length;for(var i=0;i<csLen;i++){if(fn.apply(scope||children[i],[children[i]].concat([args]))!==false){if(this._hasChildren(children[i])){if(this.treeWalk(fn,children[i],scope,args)==false){return false;}}}else{return false;}}}},_hasChildren:function(node){if(node&&node.children&&isArray(node.children)&&node.children.length>0){return true;}
return false;},_buildPath:function(id,rel){var p=rel[id];var b=[];while(p){b.unshift(p);p=rel[p];}
return b;},getNodePathById:function(id,includeNode){var path;var treeWalkArgs={nodeId:id,rel:{}};this.treeWalk(function(node,args){var parentId=node.parentId;if(parentId&&parentId.length>0){args['rel'][node.id]=parentId;}
if(node.id==args.nodeId){args['matchFound']=true;return false;}},undefined,undefined,treeWalkArgs);if(treeWalkArgs['matchFound']){var pathArr=this._buildPath(id,treeWalkArgs['rel']);if(pathArr.length>0){pathArr.unshift(this.getRootNode().id);if(includeNode!==false){pathArr.push(id);}
path=this.pathSeparator+pathArr.join(this.pathSeparator);}}
this.log("{getNodePathById} path: "+path);return path;}});
/* ========== ../mkt-ext-2.0/widgets/ColumnTree.js ============ */

Ext.tree.ColumnTree=Ext.extend(Ext.tree.TreePanel,{lines:true,borderWidth:Ext.isBorderBox?0:2,cls:'x-column-tree',onRender:function(){Ext.tree.ColumnTree.superclass.onRender.apply(this,arguments);this.headers=this.body.createChild({cls:'x-tree-headers'},this.innerCt.dom);var cols=this.columns,c;var totalWidth=0;for(var i=0,len=cols.length;i<len;i++){c=cols[i];totalWidth+=c.width;this.headers.createChild({cls:'x-tree-hd '+(c.cls?c.cls+'-hd':''),cn:{cls:'x-tree-hd-text',html:c.header},style:'width:'+(c.width-this.borderWidth)+'px;'});}
this.headers.createChild({cls:'x-clear'});this.headers.setWidth(totalWidth);this.innerCt.setWidth(totalWidth);}});Ext.tree.ColumnNodeUI=Ext.extend(Ext.tree.TreeNodeUI,{focus:Ext.emptyFn,totalWidth:700,renderElements:function(n,a,targetNode,bulkRender){this.indentMarkup=n.parentNode?n.parentNode.ui.getChildIndent():'';var t=n.getOwnerTree();if(isUndefined(t)){return;}
var cols=t.columns;var bw=t.borderWidth;var c=cols[0];var buf=['<li class="x-tree-node"><div ext:tree-node-id="',n.id,'" class="x-tree-node-el x-tree-node-leaf ',a.cls,'">','<div class="x-tree-col" style="width:',c.width-bw,'px;">','<span class="x-tree-node-indent">',this.indentMarkup,"</span>",'<img src="',this.emptyIcon,'" class="x-tree-ec-icon x-tree-elbow">','<img src="',a.icon||this.emptyIcon,'" class="x-tree-node-icon',(a.icon?" x-tree-node-inline-icon":""),(a.iconCls?" "+a.iconCls:""),'" unselectable="on">','<a hidefocus="on" class="x-tree-node-anchor" href="',a.href?a.href:"#",'" tabIndex="1" ',a.hrefTarget?' target="'+a.hrefTarget+'"':"",'>','<span unselectable="on">',n.text||(c.renderer?c.renderer(a[c.dataIndex],n,a):a[c.dataIndex]),"</span></a>","</div>"];for(var i=1,len=cols.length;i<len;i++){c=cols[i];var editable=c.editable&&a.descEditable;buf.push('<div class="x-tree-col ',(c.cls?c.cls:''),'" style="width:',c.width-bw,'px;">','<div class="x-tree-col-text node-id-',n.id,'-col-index-',i,(editable?' x-tree-col-editable':''),'">',(c.renderer?c.renderer(a[c.dataIndex],n,a):a[c.dataIndex]),"</div>","</div>");}
buf.push('<div class="x-clear"></div></div>','<ul class="x-tree-node-ct" style="display:none;"></ul>',"</li>");if(bulkRender!==true&&n.nextSibling&&n.nextSibling.ui.getEl()){this.wrap=Ext.DomHelper.insertHtml("beforeBegin",n.nextSibling.ui.getEl(),buf.join(""));}else{this.wrap=Ext.DomHelper.insertHtml("beforeEnd",targetNode,buf.join(""));}
this.elNode=this.wrap.childNodes[0];this.ctNode=this.wrap.childNodes[1];var cs=this.elNode.firstChild.childNodes;this.indentNode=cs[0];this.ecNode=cs[1];this.iconNode=cs[2];this.anchor=cs[3];this.textNode=cs[3].firstChild;if(this.elNode&&t&&t.editor){Ext.get(this.elNode).on('click',function(e,dom){if(Ext.get(dom).hasClass('x-tree-col-editable')){var tree=this.node.getOwnerTree();tree.editor.completeEdit();tree.startEdit.apply(tree,[e,dom,this.node]);}},this);}},getChildIndent:function(){if(!this.childIndent){var buf=[];var p=this.node;while(p){if(p.parentNode&&p.parentNode.isRoot&&!p.ownerTree.rootVisible){break;}
if(!p.isRoot||(p.isRoot&&p.ownerTree.rootVisible)){if(!p.isLast()){buf.unshift('<img src="'+this.emptyIcon+'" class="x-tree-elbow-line" />');}else{buf.unshift('<img src="'+this.emptyIcon+'" class="x-tree-icon" />');}}
p=p.parentNode;}
this.childIndent=buf.join("");}
return this.childIndent;},appendDDGhost:function(dom){Ext.tree.ColumnNodeUI.superclass.appendDDGhost.call(this,dom);var el=Ext.get(dom);el.setWidth(this.totalWidth);el.addClass('x-tree-col-dd-ghost');},getDDHandles:function(){return Ext.query('*',this.elNode);}});
/* ========== ../mkt-ext-2.0/main/explorer.js ============ */

Ext.namespace('Mkt','Mkt.main');Mkt.main.ExplorerPanel=Ext.extend(Mkt.widgets.FilterTreePanel,{processJSONOptions:{ignoreGroupIds:['bookmarks'],removeInactiveGroups:true,hideInactiveGroups:true,replaceGroups:true},enableCache:true,initComponent:function(){Mkt.main.ExplorerPanel.superclass.initComponent.call(this);this.treeBox=this.items.items[0];},getPrefixedUrl:function(url){var urlPrefix=MktSession.getUrlPrefix();if(url.indexOf(urlPrefix)==-1){var sep=url.indexOf("/")==0?"":"/";url=urlPrefix+sep+url;}
return url;},loadTree:function(url,ajopts){url=this.getPrefixedUrl(url);var cache=Mkt.main._ExplorerPanelCachedData[url];if(this.enableCache&&cache&&cache.alwaysLoadFromCache){console.debug("Always load from cache. Using cache: ",cache);cache.loadFromLocalCache=true;this.processJSONResults(cache,undefined,url);if(isFunction(ajopts.onMySuccess)){ajopts.onMySuccess();}
return;}else if(this.enableCache&&cache){ajopts=ajopts||{};var xtraParms={};if(cache.contents[0].meta.update){xtraParms.clientTreeUpdatedAt=Ext.encode(cache.contents[0].meta.update);}
if(cache.contents[0].meta.viewedAt){xtraParms.clientTreeUpdatedAt=cache.contents[0].meta.viewedAt;}
ajopts.serializeParms=ajopts.serializeParms||{};ajopts.serializeParms=Ext.apply(ajopts.serializeParms,xtraParms);}
console.log("making a request to: "+url);ajopts.URLPrefix=false;MktSession.ajaxRequest(url,ajopts);},processJSONResults:function(exp,options,url){if(MktMainNav.activeNav!=exp.nav){return;}
if(this.enableCache){if(exp.loadFromLocalCache){console.debug("using json from the exp cache",exp);exp=Mkt.main._ExplorerPanelCachedData[url];}else if(exp.cacheUpdates&&exp.contents[0]&&exp.contents[0]['updates']&&exp.contents[0]['updates'].length>0){console.debug("updated nodes found, updating...",exp);var cachedExp=this.currExpCache=Mkt.main._ExplorerPanelCachedData[url];this.updateExpCache(cachedExp,exp);exp=cachedExp;}else if(exp.contents[0]&&exp.contents[0]['tree']&&exp.contents[0]['tree'].length>0){console.debug("adding json to cache: "+url,"exp",exp);Mkt.main._ExplorerPanelCachedData[url]=exp;}else{console.log("invalid explorer content, using the cache, will refresh it next time");exp=Mkt.main._ExplorerPanelCachedData[url];if(isDefined(exp.contents[0].meta.update)){delete exp.contents[0].meta.update;};if(isDefined(exp.contents[0].meta.viewedAt)){delete exp.contents[0].meta.viewedAt;};}
this.currExpCache=exp;}
this.processResults(exp,options);},processResults:function(exp,options){try{if(!isDefined(options)){options=this.processJSONOptions;}
var needRefresh=false;var newGroupIds=[];for(var i=0;i<exp.contents.length;i++){newGroupIds.push(exp.contents[i].meta.id);}
var items=this.treeBox.items.items;for(var i=0;i<items.length;i++){var grp=items[i];if(newGroupIds.indexOf(grp.id)==-1){if(options.removeInactiveGroups){this.remove(grp);needRefresh=true;i--;}
else if(options.hideInactiveGroups){grp.hide();}}}
var activeGroupIds=[];for(var i=0;i<exp.contents.length;i++){var groupConfig=exp.contents[i];groupConfig.active=i==0;var groupId=groupConfig.meta.id;var cGrp=this.getComponent(groupId);if(cGrp){activeGroupIds.push(groupId);if(options.replaceGroups){this.remove(cGrp);needRefresh=true;}
else{grp.show();continue;}}
if(options.ignoreGroupIds.indexOf(groupId)==-1){this._addGroup(groupConfig,options);activeGroupIds.push(groupId);needRefresh=true;}}
if(needRefresh){this.doLayout();}}
catch(e){console.debug('MktExplorer.processJSONResults exception squelched ',e);console.debug('MktExplorer.processJSONResults needs refactoring!');}
this.unmask();},updateExpCache:function(cachedExp,exp){if(isUndefined(exp.contents[0])||isUndefined(exp.contents[0]['updates'])){return;}
var updates=exp.contents[0]['updates'];for(var i=0;i<updates.length;i++){if(updates[i].status&&updates[i].status=="Deleted"){this.cachedNodeDelete(updates[i].id);}else{this.cachedNodeUpdate(updates[i]);}
cachedExp['contents'][0]['meta']=exp['contents'][0]['meta'];}
if(updates){delete updates;delete exp.contents[0]['updates'];}},maskMsg:'',maskCls:'x-tree-mask-loading x-mask-loading',maskFilterField:false,mask:function(){try{this.clearFilterField(false);}
catch(e){}
if(this.maskFilterField){this.el.mask(this.maskMsg,this.maskCls);}
else{if(this.filterField)this.filterField.setDisabled(true);this.treeBox.body.mask(this.maskMsg,this.maskCls);}},unmask:function(){if(this.maskFilterField){this.el.unmask();}
else{if(this.filterField)this.filterField.setDisabled(false);this.treeBox.body.unmask();}},_addGroup:function(config,options){this.currentGroup=config.meta.id;var tree=null;if(config.tree){tree=new Mkt.main.ExplorerDDTreePanel({id:config.meta.id+'Tree',cls:'mktTree mktTreeBox',loadMask:true,selModel:new MktExplorerSelectionModel(),loader:new MktTreeLoader({uiProvider:MktTreeNodeUI,dataUrl:"/folder/getTreeNodes"})});this.bindTree(tree);tree.on('beforenodedrop',function(dropEvent){if(dropEvent.source.dragData.node){var node=dropEvent.source.dragData.node;var destNodeId=dropEvent.target.attributes.id;MktFolder.moveItemSubmit(node,destNodeId);}});tree.editor=new Ext.tree.TreeEditor(tree,{allowBlank:false,blankText:'A name is required',selectOnFocus:true,autosize:true,cancelOnEsc:true,ignoreNoChange:true});var editor=tree.editor;editor.on('beforestartedit',function(editor,el,value){var elDom=el.dom;if(isDefined(elDom.renaming)&&elDom.renaming){MktFolder.beforeStartEdit();elDom.renaming=false;}else{return false;}});var root=new Ext.tree.AsyncTreeNode({text:'root',id:config.meta.id+'root',cls:'folder',leaf:false,expanded:true,children:config.tree});tree.setRootNode(root);this.treeBox.add(tree);}},onTree:function(groupId,event,func){if(this.boundTree&&this.currentGroup==groupId){this.boundTree.on(event,func);}},isExplorer:true,filterBranches:false,filterBranchNames:true,filterFieldEmptyText:'Quick Find...',filterFieldTooltip:"Start typing to find items in the list below. If you don't find what you're looking for, click the button on the right to search all of Marketo!",filterFieldPadding:5,filterFieldConfig:{hideTrigger:false,disableAutosuggest:false,disabled:true,displayField:'Quick Search',typeAhead:false,mode:'remote',triggerAction:'all',minChars:0,loadingText:'Searching Marketo...',itemSelector:'div.search-item',triggerClass:'mkiFindNext',listWidth:300,resizable:true,listAlign:'tl-tr',listClass:'mkt-search-marketo-results',onSelect:function(record){MktDlManager.loadDl(record.json.xtra);this.collapse();return false;},listeners:{'beforequery':{fn:function(queryEvent){if(!queryEvent.forceAll){this.collapse();return false;}
var q=this.getValue();if(q==''){this.loadingText='Finding Recently Viewed...';this.lastQuery=null;}
else{queryEvent.query=this.query=q;this.loadingText='Searching All Marketo for \"'+q+'\"...';}
return true;}}},store:new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:'homepage/quickSearch',onload:function(){}}),reader:new Ext.data.JsonReader({root:'rows',totalProperty:'resultCount',id:'result_id'},[{name:'text',mapping:'text'},{name:'tiptext',mapping:'tiptext'},{name:'iconCls',mapping:'iconCls'},{name:'cls',mapping:'cls'},{name:'tNav',mapping:'tNav'},{name:'canvasId',mapping:'canvasId'},{name:'panelId',mapping:'panelId'},{name:'selectedNode',mapping:'selectedNode'}])}),tpl:new Ext.XTemplate('<tpl for="."><div class="search-item {cls}" ext:qtip="{tiptext}">','<div class="resCt" ext:qtip="{tiptext}">','<a hidefocus="on" href="#" style="text-decoration:none;position:relative;">','<div class="search-item-text {iconCls}" unselectable="on" ext:qtip="{tiptext}">{text}</div>','</a>','</div>','</div></tpl>')},arrangeTreeBeforeFilter:Ext.emptyFn,arrangeTreeAfterCancel:function(initialLoad){if(!initialLoad){this.boundTree.root.cascade(function(n){if(n.expanded&&!n.attributes.leaf&&n.attributes.xtra&&n.attributes.xtra.stickyCollapsed){this.expanded=false;this.ui.collapse();}});}},enterKeyPressed:function(text){this.filterField.onTriggerClick();return true;},searchAllMarketo:function(){this.filterField.onTriggerClick();},noResults:function(text){this.showTreeMessage('<div>'+this.filterNoResultsText+'&ldquo;'+Ext.util.Format.htmlEncode(text)+'&rdquo;'+'</div>'+'<div style="margin-top: 10px; text-align: center;">'+'<div id="MktExplorerSearchAllMarketo"></div>'+'</div>');new Ext.Button({renderTo:'MktExplorerSearchAllMarketo',text:'Search All Marketo',iconCls:'mkiFindNext',handler:function(){MktExplorer.searchAllMarketo();}});},getTreeNodeFromCache:function(nodeId,cacheKey){var cache;if(isUndefined(cacheKey)){cache=this.currExpCache;}else{cache=Mkt.main._ExplorerPanelCachedData[cacheKey];}
if(isUndefined(cache)){return;}
return this.findCachedTreeNodeById(nodeId,cache.contents[0].tree);},findCachedTreeNodeById:function(nodeId,folder){var foundNode;for(var i=0;i<folder.length;i++){if(folder[i].id==nodeId){foundNode=folder[i];break;}else if(folder[i].children&&folder[i].children.length>0){var ret=this.findCachedTreeNodeById(nodeId,folder[i].children);if(isDefined(ret)){foundNode=ret;break;}}}
return foundNode;},setCachedNodeProperty:function(nodeId,property,value){var cachedNode=this.getTreeNodeFromCache(nodeId);if(cachedNode){cachedNode[property]=value;}
return cachedNode;},cachedNodeUpdate:function(nodeObj){var cachedNode=this.cachedNodeExists(nodeObj.id);if(cachedNode){if(nodeObj['parentId']!=cachedNode['parentId']){var prnCachedNode=this.getTreeNodeFromCache(cachedNode['parentId']);if(prnCachedNode){if(prnCachedNode.children.length==1){prnCachedNode.hasChildren=false;prnCachedNode.leaf=true;delete prnCachedNode.expanded;delete prnCachedNode.children;}}
this.cachedNodeDelete(nodeObj.id);this.cachedNodeAdd(nodeObj);}else{Ext.apply(cachedNode,nodeObj);}}else{this.cachedNodeAdd(nodeObj);}},cachedNodeExists:function(nodeId){return this.getTreeNodeFromCache(nodeId);},cachedNodeReplace:function(nodeId,nodeObj){var cached=this.getTreeNodeFromCache(nodeId);if(cached){Ext.apply(cached,nodeObj);}
return cached;},cachedNodeAdd:function(nodeObj){var cachedParentNode=this.cachedNodeExists(nodeObj.parentId);if(cachedParentNode){if(isUndefined(cachedParentNode.children)){cachedParentNode.children=[];}
cachedParentNode.children.push(nodeObj);}},cachedNodeDelete:function(nodeId){var nodeCache=this.getTreeNodeFromCache(nodeId);if(nodeCache){this.cachedNodeDeleteChild(nodeCache.parentId,nodeId);delete nodeCache;}},cachedNodeDeleteChild:function(parentId,nodeId){var parentNodeCache=this.getTreeNodeFromCache(parentId);if(parentNodeCache){for(var i=0;i<parentNodeCache.children.length;i++){if(parentNodeCache.children[i].id==nodeId){parentNodeCache.children.remove(parentNodeCache.children[i]);break;}}}}});Mkt.main._ExplorerPanelCachedData={};Mkt.main.ExplorerPanel.prototype.clear=function(){try{if(!this.treeBox.items)return;var items=this.treeBox.items.items;for(var i=0;i<items.length;i++){this.treeBox.remove(items[i]);}}
catch(e){console.debug('Mkt.main.ExplorerPanel.clear squelched exception ',e);console.debug('Mkt.main.ExplorerPanel.clear needs refactoring!');}};Mkt.main.ExplorerPanel.prototype.onTreeEditor=function(groupId,event,func){if(this.boundTree&&this.currentGroup==groupId){this.boundTree.editor.on(event,func);}};Mkt.main.ExplorerPanel.prototype.getNodeById=function(nodeId){if(!this.boundTree||!this.boundTree.nodeHash)return null;return this.boundTree.getNodeById(nodeId);};Mkt.main.ExplorerPanel.prototype.findNodeByName=function(name){if(!this.boundTree||!this.boundTree.root)return null;return this.boundTree.root.findChild('text',name);};Mkt.main.ExplorerPanel.prototype.findNodeByCompId=function(compType,compId){var rootNode=this.boundTree.root;var matches=[];var node=rootNode.cascade(function(){var attr=this.attributes;if(attr&&attr.xtra){if(attr.xtra.compType==compType&&attr.xtra.compId==compId){matches.push(this);}}},undefined,[compType,compId]);console.debug("MktExplorerPanel.findByCompId: Matches: ",matches);return matches;};Mkt.main.ExplorerPanel.prototype.selectNodeByName=function(name){var node=this.findNodeByName(name);if(!node)return false;return this.selectTreeNode(node);};Mkt.main.ExplorerPanel.prototype.selectNodeById=function(nodeId){var node=this.getNodeById(nodeId);if(!node)return false;return this.selectTreeNode(node);};Mkt.main.ExplorerPanel.prototype.selectPath=function(path,attr){if(!this.boundTree||!this.boundTree.nodeHash)return false;MktExplorer.boundTree.selectPath(path,attr||'text');};Mkt.main.ExplorerPanel.prototype.selectNode=Mkt.main.ExplorerPanel.prototype.selectNodeById;Mkt.main.ExplorerPanel.prototype.selectTreeNode=function(node){if(!node)return false;if(!node.isSelected()){node.select();return true;}else{return false;}};Mkt.main.ExplorerPanel.prototype.unselectNode=function(nodeId){var node=this.getNodeById(nodeId);if(node){node.unselect();}};Mkt.main.ExplorerPanel.prototype.addNode=function(parentId,nodeConfig,selected){if(isUndefined(parentId)||isUndefined(nodeConfig)){return;}
var node=this.getNodeById(parentId);if(node){nodeConfig=Ext.applyIf(nodeConfig,{uiProvider:MktTreeNodeUI});function createNSelect(){var newNode=new Ext.tree.TreeNode(nodeConfig);node.leaf=false;node.attributes.leaf=false;node.appendChild(newNode);if(selected===true){newNode.ensureVisible();if(node.childrenRendered){newNode.select();}}}
if(node.hasChildNodes()&&!node.isExpanded()){node.expand(false,false,createNSelect.createDelegate(this));}else{createNSelect();}}};Mkt.main.ExplorerPanel.prototype.addNodes=function(nodeConfigs){if(isUndefined(nodeConfigs)||!isArray(nodeConfigs)||nodeConfigs.length<=0){return;}
var len=nodeConfigs.length;for(var i=0;i<len;i++){this.addNode(nodeConfigs[i].parentId,nodeConfigs[i]);}};Mkt.main.ExplorerPanel.prototype.removeNode=function(nodeId){var node=this.getNodeById(nodeId);if(node){node.remove(node);}};Mkt.main.ExplorerPanel.prototype.removeNodes=function(nodeIds){if(isUndefined(nodeIds)){return;}
if(!isArray(nodeIds)&&(isString(nodeIds)||isNumber(nodeIds))){nodeIds=[nodeIds];}
var len=nodeIds.length;for(var i=0;i<len;i++){var node=this.getNodeById(nodeIds[i]);if(isDefined(node)){node.remove();}}};Mkt.main.ExplorerPanel.prototype.replaceNode=function(oldNodeId,newNodeJson){this.removeNode(oldNodeId);this.addNode(newNodeJson.parentId,newNodeJson,false);};Mkt.main.ExplorerPanel.prototype.removeChildNodes=function(parentNodeId){var node=this.getNodeById(parentNodeId);if(isDefined(node)){var tree=node.getOwnerTree();tree.removeChildNodes(parentNodeId);}};Mkt.main.ExplorerPanel.prototype.replaceNodes=function(newNodeJsons){if(isUndefined(newNodeJsons)){return;}
if(newNodeJsons&&!isArray(newNodeJsons)&&!newNodeJsons.length){newNodeJsons=[newNodeJsons];}
var len=newNodeJsons.length;for(var i=0;i<len;i++){var node=this.getNodeById(newNodeJsons[i].id);if(isDefined(node)&&node){var selected=node.isSelected();var newNode=newNodeJsons[i].leaf?new MktTreeNode(newNodeJsons[i]):new MktAsyncTreeNode(newNodeJsons[i]);var prnNode=node.parentNode;var prnExpanded=prnNode.isExpanded();prnNode.replaceChild(newNode,node);if(selected){var tempNode=newNode;var tempPrnNode=prnNode;var tempPrnExpanded=prnExpanded;window.setTimeout(function(){function selectUnselect(){tempNode.unselect();tempNode.select();}
if(tempPrnExpanded&&!tempPrnNode.isExpanded()){tempPrnNode.expand(false,false,selectUnselect);}else{selectUnselect();}}.createDelegate(tempNode),500);}}}};Mkt.main.ExplorerPanel.prototype.expandFolder=function(folderId,deep,anim){var folder=this.getNodeById(folderId);if(folder){deep=deep||false;anim=anim||false;folder.expand(deep,anim);}};Mkt.main.ExplorerPanel.prototype.updateNodeText=function(nodeId,text){var node=this.getNodeById(nodeId);if(node){node.setText(text);}};Mkt.main.ExplorerPanel.prototype.updateNodeIconCls=function(containerId,nodeId,iconCls,rmIconCls,node){var fNode;if(isUndefined(node)){fNode=this.getNodeById(nodeId);}else{fNode=node;}
if(fNode){var iconEl=Ext.get(fNode.getUI().getIconEl());if(iconEl){if(rmIconCls){iconEl.removeClass(rmIconCls);}
iconEl.addClass(iconCls);}
else{var temp=fNode.attributes.iconCls;if(temp.indexOf(iconCls)==-1){temp+=(' '+iconCls);}
if(rmIconCls){temp=temp.replace(rmIconCls,'');}
fNode.attributes.iconCls=temp;}}};Mkt.main.ExplorerPanel.prototype.updateNodeAttr=function(containerId,nodeId,xtra,node){var fNode;if(isUndefined(xtra)){return;}else if(isDefined(node)){fNode=node;}else if(!isNull(containerId)&&!isNull(nodeId)){fNode=this.getNodeById(nodeId);}else{return;}
if(fNode){Ext.apply(fNode.attributes.xtra,xtra);if(isDefined(xtra.text)){fNode.setText(xtra.text);}}};Mkt.main.ExplorerPanel.prototype.updateNode=function(containerId,nodeId,attrib,node){var fNode;if(isUndefined(attrib)){return;}else if(isDefined(node)){fNode=node;}else if(!isNull(containerId)&&!isNull(nodeId)){fNode=this.getNodeById(nodeId);}else{return;}
if(isDefined(attrib)){var attr=fNode.attributes;if(isDefined(attrib.text)){attrib.xtra.text=attrib.text;}
this.updateNodeAttr(null,null,attrib.xtra,fNode);this.updateNodeIconCls(null,null,attrib.iconCls,attrib.rmIconCls,fNode);}};Mkt.main.ExplorerPanel.prototype.updateNodes=function(containerId,nodeJsons,stateIconCls){var c=nodeJsons.length;for(var i=0;i<c;i++){nodeJsons[i].rmIconCls=nodeJsons[i].rmIconCls||stateIconCls;this.updateNode(containerId,nodeJsons[i].id,nodeJsons[i]);}};Mkt.main.ExplorerPanel.prototype.expandAllNodes=function(containerId,accordionId){var tree=this.getTree(containerId,accordionId);if(tree){tree.expandAll();}};Mkt.main.ExplorerPanel.prototype.setCurTip=function(tip){tip.on('render',function(el){this.tip=el;},tip);};Mkt.main.ExplorerPanel.prototype.syncTipSize=function(width){if((isDefined(this.tip))&&width>=105){this.tip.setWidth(width);}};MktExplorerSelectionModel=Ext.extend(Ext.tree.DefaultSelectionModel,{init:function(tree){MktExplorerSelectionModel.superclass.init.call(this,tree);tree.getTreeEl().un("keydown",this.onKeyDown,this);}});Ext.namespace('Mkt.main.ExplorerDDTreePanel');Mkt.main.ExplorerDDTreePanel=Ext.extend(Ext.tree.TreePanel,{frame:false,layout:'fit',autoScroll:true,containerScroll:true,animate:true,enableDD:true,ddGroup:'treeDD',rootVisible:false,bufferResize:300,enableCache:true,initEvents:function(){if((this.enableDD||this.enableDrop)&&!this.dropZone){this.dropZone=new MktDDTreeDropZone(this,this.dropConfig||{ddGroup:this.ddGroup||"treeDD",appendOnly:this.ddAppendOnly===true});}
Mkt.main.ExplorerDDTreePanel.superclass.initEvents.call(this);}});MktDDTreeDropZone=Ext.extend(Ext.tree.TreeDropZone,{getDropPoint:function(e,n,dd){if(dd.dragData.node){var targetNode=n.node;var draggedNode=dd.dragData.node;var dNodeType=draggedNode.attributes.nodeType;var targetAttr=targetNode.attributes;if(targetNode.attributes.nodeType==draggedNode.attributes.nodeType&&targetNode.attributes.folder===true){var dXtraAttr=draggedNode.attributes.xtra;if(isDefined(draggedNode.parentNode)&&targetNode.id==draggedNode.parentNode.id){return;}else if(targetAttr.nodeType=='List'){if(targetAttr.text!='System Lists'){return'append';}}else if(targetAttr.nodeType=='Smart List'){if(targetAttr.text!='System Smart Lists'){return'append';}}else if(targetAttr.nodeType=='Landing Page Test Group'){}else if(dNodeType=="Landing Page"){var parentNode=MktExplorer.getNodeById(draggedNode.attributes.parentId);if(parentNode){if(parentNode.attributes.nodeType=="Landing Page Test Group"){}else if(dNodeType==targetAttr.nodeType){return'append';}}}else{return'append';}}else if(targetNode.attributes.nodeType=='Program'&&targetNode.attributes.folder){var dNodeType=draggedNode.attributes.nodeType;if(dNodeType=='Smart Campaign'){return'append';}}else if(dNodeType=='Landing Page Test Group'&&targetAttr.folder&&targetAttr.nodeType=='Landing Page'){return'append';}}else if(dd.dragData.grid){if(!n.node.attributes.folder&&n.node.attributes.nodeType=='List'){return'append';}}}});
/* ========== ../mkt-ext-2.0/widgets/CanvasMask ============ */

Ext.namespace('Mkt','Mkt.widgets');Mkt.widgets.CanvasMask={cls:'mktFullCanvasGrid',mask:function(panel,msg,cls,subtle){msg=msg||this.maskMsg;if(subtle){panel.addClass('mktCanvasMaskSubtle');}
else{MktViewport.showPurpleCorners(false);}
panel.addClass('mktCanvasPanelManagerMasked');panel.body.mask(msg,cls||this.maskCls);},unmask:function(panel){panel.removeClass('mktCanvasPanelManagerMasked');panel.removeClass('mktCanvasMaskSubtle');panel.body.unmask();this.unmaskCharts(panel);},maskMsg:'Loading...',clearForLoadMaskMsg:'Loading...',maskCls:'mktCanvasMaskActivity',unmaskCharts:function(panel){var objects=Ext.query('object',panel.body.dom).forEach(function(el,ix,a){Ext.fly(el).setStyle('visibility','visible');var embed=Ext.fly(Ext.query('embed',el)[0]);if(embed){embed.setStyle('visibility','visible');}});}};Mkt.widgets.CanvasMaskPanel=Ext.extend(Ext.Panel,{mask:function(msg,junkTabId,cls,subtle){this._isMasked=true;Mkt.widgets.CanvasMask.mask(this,msg,cls,subtle);},unmask:function(){if(!this._isMasked){return;}
this._isMasked=false;Mkt.widgets.CanvasMask.unmask(this);},_isMasked:false});
/* ========== ../mkt-ext-2.0/main/canvas.js ============ */

MktCanvasPanelManager=Ext.extend(Ext.TabPanel,{cls:"mktCanvasPanelManager",reservedHeight:20,clearCanvasHook:Ext.emptyFn,titleLength:40,afterRender:function(){MktCanvasPanelManager.superclass.afterRender.call(this);this[this.stripTarget].addClass('m-large-tabs');},add:function(config,canvasHoldingPen,jsonResponse,ajaxRequest){var existingTab=this.getTab(config.id);if(existingTab){this.remove(existingTab);existingTab=null;}
var tabId=this._makeTabId(config.id);config=Ext.apply({title:'Untitled',titleLength:this.titleLength,contentValid:true,contentValidOnceLoaded:true,hidden:false,closablePanel:false},config);var params={id:tabId,title:config.title.ellipse(config.titleLength),config:config,canvasPanelMgr:this};if(!config.hideGutter){params.tbar=[{text:'',disabled:true,removeOnExtend:true}];params.gutter=[{text:'',disabled:true,removeOnExtend:true}];}
if(isDefined(config.iconCls))params.iconCls=config.iconCls;if(isDefined(config.tabTip))params.tabTip=config.tabTip;if(isDefined(config.tbar)){params.tbar=eval(config.tbar);}
if(isDefined(config.gutter)){params.gutter=eval(config.gutter);}
MktCanvasPanelManager.superclass.add.call(this,new MktCanvasPanel(params));if(config.active){this.setActiveTab(config.id);}},setActiveTab:function(id,callback){if(id==null){return;}
if(this.activeTab&&this.isActiveTab(id)){if(this.activeTab.config.contentValid){return;}
return this.reloadActiveTab(callback);}
var tab=this.getTab(id);if(tab==null){this.log('tab '+id+' not found, aborting');return;}
if(isDefined(callback)){tab._activateCallback=callback;}
MktCanvasPanelManager.superclass.setActiveTab.call(this,tab.id);},getTabId:function(id){if(id==null){return null;}
return this._makeTabId(id);},getTab:function(id){if(id==null){return null;}
return this.getItem(this._makeTabId(id));},getFirstTab:function(){if(!this.items||!this.items.items){return null;}
return this.items.items[0];},reloadActiveTab:function(callback){if(this.activeTab){this.activeTab.cancelRequest();}
if(isDefined(this.activeTab.config.url)){this.activeTab.config.contentValid=false;}
if(isDefined(callback)){tab._activateCallback=callback;}
this.activeTab.fireEvent('activate',this.activeTab);},_processCanvasMapMutex:false,processCanvasMap:function(canvasHoldingPen,jsonResponse,ajaxRequest){if(!isArray(jsonResponse.canvasmap)){console.log("CanvasPanelManager.processCanvasMap did not find a canvasmap in JSONResults");}
this._processCanvasMapMutex=true;for(var ix=0;ix<jsonResponse.canvasmap.length;ix++){var tabConfig=jsonResponse.canvasmap[ix];this.add(tabConfig,canvasHoldingPen,jsonResponse,ajaxRequest);}
if(ajaxRequest.setActivePanel!=null){this.setActiveTab(ajaxRequest.setActivePanel);}
this._processCanvasMapMutex=false;var activeTab=this.getActiveTab();if(activeTab){activeTab.selectExplorerNode();}},clearContentValid:function(){this.activateTab.config.contentValid=false;},getHeight:function(raw){var height=this.body.getHeight();if(!isDefined(raw)||!raw){height-=this.reservedHeight;}
return height;},getWidth:function(){var width=this.body.getWidth();return width;},clearCanvas:function(){this.clearCanvasHook();if(!this.items)return;this.activeTab=null;while(MktPage.canvasCleanupStack.length>0){var cfn=MktPage.canvasCleanupStack.shift();cfn();}
this.items.each(function(item){this.stack.remove(item);},this);this.items.each(function(item){if(item.cleanup)item.cleanup();},this);this.items.each(function(item){this.remove(item);},this);this.clearCanvasHook=Ext.emptyFn;},clearForLoad:function(msg){this.mask(null,msg);this.clearCanvas();this.activeTab=null;},fillCanvas:function(items,tabId,isGrid){if(tabId){var tab=this.getItem(this._makeTabId(tabId));}
else{var tab=this.getActiveTab();}
if(!tab){console.debug("Canvas id=",tabId," was not found");return;}
if(tab.items&&tab.items.items&&tab.items.items.length>0){while(tab.items.items.length>0){tab.remove(tab.items.items[0]);}}
if(tab.body){tab.body.update('<span> </span>');}
tab.addClass('mktFullCanvas');if(isGrid){tab.setGridPanel(items);tab.addClass('mktFullCanvasGrid');}
else{tab.setGridPanel(null,false);tab.removeClass('mktFullCanvasGrid');}
if(!Ext.isArray(items)){if(!items.layout)items.layout='fit';items.height=MktCanvas.getHeight();items.width=MktCanvas.getWidth();}
tab.add(items);tab.doLayout();},fillCanvasGrid:function(items,tabId){this.fillCanvas(items,tabId,true);},extendToolbar:function(items,tabId,clearAll){var tab=this._getTbarTab(tabId);if(!tab)return;var tbar=tab.getTopToolbar();if(clearAll){tbar._extendedItemsCount=tbar.items.items.length;}
tab.initSatellite(items);this._extendTbar(tbar,items);},replaceToolbar:function(items,tabId){this.extendToolbar(items,tabId,true);},extendGutter:function(items,tabId,clearAll){var tab=this._getTbarTab(tabId);if(!tab)return;var gutter=tab.getGutter();if(clearAll){gutter.tbar._extendedItemsCount=gutter.items.items.length;}
this._extendTbar(gutter,items);},replaceGutter:function(items,tabId){this.extendGutter(items,tabId,true);},registerItem:function(key,item,tabId){if(tabId){var tab=this.getItem(this._makeTabId(tabId));}
else{var tab=this.getActiveTab();}
if(tab){tab.registerItem(key,item);return tab;}
else{return null;}},getRegisteredItem:function(key,tabId){if(tabId){var tab=this.getItem(this._makeTabId(tabId));}
else{var tab=this.getActiveTab();}
if(tab){return tab.getRegisteredItem(key);}
return null;},_getTbarTab:function(items,tabId){var tab=null;if(tabId){var tab=this.getItem(this._makeTabId(tabId));}
else{var tab=this.getActiveTab();}
if(!tab){console.debug("Canvas id=",tabId," was not found");}
return tab;},_extendTbar:function(tbar,items){if(!tbar){return;}
for(var i=0;i<tbar.items.items.length;i++){var item=tbar.items.items[i];if(item.removeOnExtend){tbar.items.remove(item);Ext.destroy(item);i--;}}
if(tbar._extendedItemsCount){for(var i=tbar._extendedItemsCount;i>0;i--){var lastItem=tbar.items.last();tbar.items.remove(lastItem);Ext.destroy(lastItem);}}
tbar._extendedItemsCount=0;if(Ext.isArray(items)){for(var i=0;i<items.length;i++){tbar.add(items[i]);tbar._extendedItemsCount++;}}
else{tbar.add(items);tbar._extendedItemsCount++;}},loadSatellite:function(tabId){if(tabId){var tab=this.getItem(this._makeTabId(tabId));}
else{var tab=this.getActiveTab();}
if(tab){return tab.loadSatellite();}
return null;},initEvents:function(){MktCanvasPanelManager.superclass.initEvents.call(this);this.addListener('resize',this._onResize,this);this.addListener('tabchange',function(tabPanel,tab){if(isDefined(tab.config.dlCompCode)){MktDlManager.updateHistory.call(MktDlManager,Ext.apply({panelIndex:tabPanel.items.findIndex("id",tab.id)},tab.config));}},MktDlManager,{buffer:100});this.addListener('beforetabchange',this.beforeTabChange.createDelegate(this));},_onResize:function(){if(this.activeTab){MktPage.eventMgr.fireEvent('canvasresizedone',this.activeTab,'canvasresizedone');}},_makeTabId:function(tabId){if(tabId==null){return'cp_default';}else if(typeof tabId=="number"){return tabId;}
if(typeof tabId=='object'){return tabId.id;}
if(tabId.indexOf('cp_')!=0){return'cp_'+tabId;}
return tabId;},mask:function(tabId,msg,cls,subtle){if(!this.isActiveTab(tabId)){return;}
this._isMasked=true;var tab=this.getActiveTab();if(!subtle){MktViewport.showPurpleCorners(false);}
Mkt.widgets.CanvasMask.mask(this,msg,cls,subtle);},unmask:function(tabId){if(!this.isActiveTab(tabId)||!this._isMasked){return;}
MktSession.unclockCursor();this._isMasked=false;var tab=this.getTab(tabId);if(tab){if(tab.enablePurpleCorners){MktViewport.showPurpleCorners(true);}
else{MktViewport.showPurpleCorners(false);}}
Mkt.widgets.CanvasMask.unmask(this);},isMasked:function(){return this._isMasked;},_isMasked:false,beforeTabChange:function(tabPanel,newTab,currentTab){if(currentTab&&currentTab.beforeUnload){return currentTab.beforeUnload(newTab);}},cancelActivity:function(){MktSession.unclockCursor();if(this._isMasked){var action=' &nbsp; ';var activeTab=this.getActiveTab();if(activeTab){}
var cancelMsg="Page load stopped";MktCanvas.mask(null,cancelMsg,'mktCanvasMaskActivityCanceled');}
var activeTab=this.getActiveTab();if(activeTab){activeTab.cleanup();}},reactivateActiveTab:function(clear){var activeTab=this.getActiveTab();if(clear){activeTab.clearContentValid();}
if(activeTab){activeTab._onActivate();}},activateReactivateTab:function(tabId,clear){if(this.isActiveTab(tabId)){this.reactivateActiveTab(clear!==false);}
else{this.setActiveTab(tabId);}},isActiveTab:function(tabId){if(!tabId)return true;var activeTab=this.getActiveTab();if(activeTab)return activeTab.id==this._makeTabId(tabId);return true;},onStripMouseDown:function(e){e.preventDefault();if(e.button!=0){return;}
var t=this.findTargets(e);if(t.close){this.remove(t.item);return;}
if(t.item&&t.item!=this.activeTab){this.setActiveTab(t.item);}
else if(t.item){this.reloadActiveTab();}},log:function(msg){console.debug(msg);}});MktCanvasPanel=Ext.extend(Ext.Panel,{cls:"mktCanvasPanel",layout:'fit',autoScroll:true,enablePurpleCorners:false,config:{contentValid:null,contentValidOnceLoaded:null,url:null},updateTabTitle:function(title){this.config.title=title;this.setTitle(title.ellipse(this.config.titleLength));},clearContentValid:function(){this.config.contentValid=false;},setActivateCallback:function(cb){this._activateCallback=cb;},_gridPanel:null,setGridPanel:function(grid,purple){this._gridPanel=grid;if(!grid){return;}
this.enablePurpleCorners=true;if(isDefined(purple)){this.enablePurpleCorners=purple;}},hasGridPanel:function(){return this._gridPanel!==null;},getGridPanel:function(){if(this._gridPanel)return this._gridPanel;else if(this.items&&this.items.items){return this.items.items[0];}},registerItem:function(key,item){if(!this.registry)this.registry={};this.registry[key]=item;},getRegisteredItem:function(key){if(!this.registry){return undefined;}
return this.registry[key];},initComponent:function(){this.initSatellite(this.tbar);MktCanvasPanel.superclass.initComponent.call(this);this.addListener('activate',this._onActivate,this);},onRender:function(ct,position){MktCanvasPanel.superclass.onRender.call(this,ct,position);this.initGutter();},initSatellite:function(tbar){if(MktPage.enableSatellite){if(!MktViewport.satellite&&this.config.enableDeepLink){var panelId=this.config.id;var fill=new Ext.Toolbar.Fill();var btn=new Ext.Toolbar.Button({text:'',tooltip:'Open in New Window',iconCls:'mkiWindows',handler:function(){MktCanvas.loadSatellite(panelId);}});fill.removeOnExtend=true;btn.removeOnExtend=true;if(tbar.push){tbar.push(fill);tbar.push(btn);}}}},_onActivate:function(){if(this._fetchSemaphore){}
else if(this.config.contentValid){this.canvasPanelMgr.mask(this.config.id);this._showContent();this._processActivateCallback();}
else if(isDefined(this.config.url)){this._fetchContent();}
else{this.log('MktCanvasPanel._onActivate hit unexpected path',this.config);}
MktPage.activePanel=this;this.cName=this.config.id;this.selectExplorerNode();},selectExplorerNode:function(){if(this.canvasPanelMgr._processCanvasMapMutex){return;}
if(this.config.expNodeId){MktExplorer.selectNode(this.config.expNodeId);}
else if(this.config.expPathname){MktExplorer.selectPath(this.config.expPathname);}},getGutter:function(){return this.gutterToolbar;},initGutter:function(){if(!this.config.hideGutter&&this.tbar){this.gutterToolbar=new Ext.Toolbar({renderTo:this.tbar,cls:'mktCanvasGutter',items:this.gutter});this.syncSize();}},_showContent:function(){if(this.config.scriptOnly){}
else{var ce=Ext.getDom(this.config.id);if(ce!=null){Ext.fly(ce).removeClass(['x-hidden','x-hide-display','ylayout-inactive-content']);Ext.fly(ce).setStyle('height',Ext.isIE7?'96%':'98%');try{this.body.dom.appendChild(ce);}catch(e){MktPage.showException(e,"MktCanvasPanel._showContent");}}
else{this.log('MktCanvasPanel._showContent -- error -- content container '+this.config.id+' was null');}}
if(this.config.keepMasked){this.config.originalKeepMasked=this.config.keepMasked;this.config.keepMasked=false;}
else{this.canvasPanelMgr.unmask(this.config.id);}
this.selectExplorerNode();MktPage.eventMgr.fireEvent('panelactivate',this);this._processActivateCallback();},_fetchContent:function(){try{var canvasContent=Ext.get(this.config.id);if(canvasContent){canvasContent.update('<span> </span>');}}
catch(e){console.debug('Encountered exception clearing charts from body',e);}
this.canvasPanelMgr.mask(this.config.id);if(this.config&&this.config.originalKeepMasked){this.config.keepMasked=this.config.originalKeepMasked;}
this._fetchSemaphore=true;delete this._cancelFetch;var opts={onMySuccess:this._fetchContentSuccess.createDelegate(this),containerId:this.config.id,canvasPanelThis:this};if(isDefined(this.config.contentParms)){Ext.apply(opts,this.config.contentParms);}
MktSession.ajaxRequest(this.config.url,opts);},_fetchContentSuccess:function(serverJSON,request){this._fetchSemaphore=false;if(this._cancelFetch){this.log('fetch was cancelled...aborting');return;}
else if(!this.canvasPanelMgr.isActiveTab(this.config.id)){this.log('fetch for inactive tab...aborting');return;}
this.config.contentValid=true;if(!this.config.contentValidOnceLoaded){this.config.contentValid=false;}
this._showContent();},cleanup:function(){this._cancelFetch=true;this.cancelRequest();},beforeUnload:function(newTab){if(!this.config.contentValidOnceLoaded){this.cancelRequest();}},cancelRequest:function(){var reqs=this.getRegisteredItem(MktSession.cancellableRequestKey);if(reqs&&Ext.isArray(reqs)&&reqs.length>0&&this.config&&this.config.id){MktSession.cancelRequest(this.config.id,reqs);}},_activateCallback:null,_processActivateCallback:function(){if(this._activateCallback==null){return;}
this._activateCallback();this._activateCallback=null;},loadSatellite:function(config){var config=config||this.config;config.title=config.title||'';var satelliteQuery="?satellite=1";var deepLinkURL=satelliteQuery+"#"+MktDlManager.convertDlPath(config);this._satellite=window.open(deepLinkURL);try{this._satellite.document.title='Loading...';}catch(e){}
return this._satellite;},debugSize:function(){this.log('MktCanvasPanel.debugSize');this.log('viewport height',MktViewport.height);this.log('viewport center height',MktViewport.center.height);this.log('viewport center el height',MktViewport.center.el.getHeight());this.log('viewport center body height',MktViewport.center.body.getHeight());this.log('manager height',this.canvasPanelMgr.height);this.log('manager el height',this.canvasPanelMgr.el.getHeight());this.log('manager body height',this.canvasPanelMgr.body.getHeight());this.log('panel height',this.height);this.log('panel el height',this.el.getHeight());this.log('panel body height',this.body.getHeight());this.log();},log:function(msg){this.canvasPanelMgr.log(msg);}});
/* ========== ../mkt-ext-2.0/viewport/BaseViewport.js ============ */

Ext.namespace('Mkt','Mkt.viewport');Mkt.viewport.BaseViewport=function(config){Ext.apply(this,config);};Mkt.viewport.BaseViewport.prototype={userName:'',showCustAdmin:false,viewportCls:'base-viewport',showCloseButton:false,centerPanelHeaderText:'Marketo',viewport:null,toolbar:null,init:function(userName){this.maskElement=Ext.getBody();this.mask();this.userName=userName;MktViewport.viewport=new Ext.Viewport({layout:'border',cls:this.viewportCls,defaults:{collapsible:false,collapsed:false,autoScroll:false,titlebar:false,split:true,border:false},items:[{id:'north-main',baseCls:'north-main x-panel',region:'north',height:0,split:false,layout:'fit',bbar:this._buildViewportToolbar()},{id:'center-main',baseCls:'center-main x-panel',margins:'-8 2 2 2',region:'center',layout:'fit',frame:true,border:false,split:false,items:{layout:'border',id:'center-container',bodyBorder:false,border:false,frame:false,split:true,items:this._buildCenterContainer()}},{id:'south-main',baseCls:'south-main copyright',region:'south',border:false,split:false,html:'<div class="copyright">Copyright &copy; 2010 Marketo, Inc.  All rights reserved.</div>'}]});var regions=this.viewport.items.items;this.north=regions[0];this.centerRegion=regions[1];this.toolbar=this.north.getBottomToolbar();return this;},enableMask:false,maskElement:null,maskMessage:'Loading...',maskCls:'mktViewportMask',maskIconCls:'mktViewportMaskActivity',mask:function(msg,iconCls){var el=this.maskElement||this.el;if(this.enableMask&&this.maskElement){this.maskElement.addClass(this.maskCls);this.maskElement.mask(msg||this.maskMessage,iconCls||this.maskIconCls);}},unmask:function(){var el=this.maskElement||this.el;if(this.enableMask&&this.maskElement){this.maskElement.removeClass(this.maskCls);this.maskElement.unmask();}},_buildCenterContainer:function(){this.enableMask=true;return this.canvasFrame=new Ext.Panel({bodyBorder:false,html:'',listeners:{'render':function(){MktViewport.afterCenterRender();}}});},afterCenterRender:function(){MktViewport.renderCustomCorners(MktViewport.canvasFrame);MktViewport.unmask();},renderCustomCorners:function(panel){panel.bwrap.createChild({id:'mktCanvasCornerTopRight'});panel.bwrap.createChild({id:'mktCanvasCornerTopLeft'});MktViewport._createPurpleCorners(panel);},showPurpleCorners:function(show){var purps=MktViewport._purpleCornerElements;for(var p=0;p<purps.length;p++){var purp=Ext.get(purps[p]);if(purp){purp.setVisible(show);}
else{console.debug('purp not found',purps[p]);}}},maskPurpleCorners:function(mask){var purps=MktViewport._purpleCornerElements;for(var p=0;p<purps.length;p++){var purp=Ext.get(purps[p]);if(purp){if(mask){purp.addClass('mktCanvasCornerMaskedSubtle');}
else{purp.removeClass('mktCanvasCornerMaskedSubtle');}}
else{console.debug('purp not found',purps[p]);}}},_purpleCornerElements:['mktCanvasCornerBottomLeft','mktCanvasCornerBottomRight','mktCanvasCornerBottomCenter'],_createPurpleCorners:function(panel){var purps=MktViewport._purpleCornerElements;for(var p=0;p<purps.length;p++){panel.bwrap.createChild({id:purps[p],style:'visibility:hidden'});}},signOut:function(){MktSession.ajaxRequest('/user/logout');},updateHeaderText:function(txt){if(txt){this.centerPanelHeaderText=txt;this.centerPanelHeader.body.update(txt);}},_buildCenterPanelHeader:function(){return this.centerPanelHeader=new Ext.Panel({id:'center-panel-header',cls:'center-panel-header',region:'north',height:50,html:this.centerPanelHeaderText});},_buildFauxExplorer:function(){if(!this.explorer){this.explorer={selectNode:Ext.emptyFn,selectPath:Ext.emptyFn,clear:Ext.emptyFn,mask:Ext.emptyFn,onTree:Ext.emptyFn,onTreeEditor:Ext.emptyFn,processJSONResults:Ext.emptyFn,selectNodeById:Ext.emptyFn,replaceNodes:Ext.emptyFn,addNode:Ext.emptyFn,fauxExplorer:true};}},_buildViewportToolbar:function(){this.tbar=[];this.tbar.push({xtype:'tbfill'});this._buildCustomToolbar();this._buildLoginToolbar();this._buildAdminToolbar();this._buildCloseToolbar();this.tbar.push('-');this._buildHelpToolbar();this.tbar.push(' ');return this.tbar;},_buildCustomToolbar:function(){},_buildCloseToolbar:function(){if(this.showCloseButton){if(this.tbar.length>3){this.tbar.push('-');}
this.tbar.push({text:'Close',iconCls:'mkiCancel',handler:function(){MktPage.promptCounter=0;window.close();}});}},_buildHelpToolbar:function(){this.tbar.push({text:'Help',xtype:'tbsplit',menuAlign:'tr-br',iconCls:'mkiHelp',handler:this.showGuide.createDelegate(this),menu:{cls:'mktMenu',items:this.buildHelpMenuItems()}});},_buildAdminToolbar:function(){if(this.showCustAdmin){this.tbar.push('-');this.tbar.push({text:'Admin',iconCls:'mkiGear',handler:MktMainNav.loadCustAdmin.createDelegate(this,[{nodeId:'300'}])});}},_buildLoginToolbar:function(){var userMenuItems=[{text:'My Account',iconCls:'mkiBusinessman',handler:function(){MktMainNav.loadCustAdmin({compSubtype:'MyAccount',setActivePanel:'cadMyAccountCanvas'});}},{text:'Logout',iconCls:'mkiBusinessmanDelete',handler:function(){this.signOut();}.createDelegate(this)}];this.tbar.push('Logged in as: '+this.userName);this.tbar.push('-');this.tbar.push({xtype:'button',text:'Logout',handler:function(){this.signOut();}.createDelegate(this)});},buildHelpMenuItems:function(){var items=[{text:'Get help on this section',iconCls:'mkiHelp',handler:this.showGuide.createDelegate(this)},'-',{text:'Knowledge Base',iconCls:'mkiBookBlueOpen',url:'https://marketo.helpstream.biz/Browse.jsp?id=8a808145119a1d1801119a4637340008',handler:this.popupHelp},{text:'Ask a Question',iconCls:'mkiQuestionAndAnswer',url:'https://marketo.helpstream.biz/Browse.jsp?id=8a808145119aqc1801119a4637340008',handler:this.popupHelp},{text:'Best Practices',iconCls:'mkiGraduate',url:'https://marketo.helpstream.biz/Browse.jsp?id=8a7feaaf1deccf7c011e46e19606531f',handler:this.popupHelp},{text:'Feature Ideas',iconCls:'mkiLightbulbOn',url:'https://marketo.helpstream.biz/Browse.jsp?id=c0cb840a1ce4e2dc011ce984cdcb4856',handler:this.popupHelp},{text:'Contact Support',iconCls:'mkiLifebelt',url:'https://marketo.helpstream.biz/View.jsp?procId=c0cb840a1cd65af0011cd93812a035cb',handler:this.popupHelp},'-',{text:'About Marketo',iconCls:'mkiMarketo16',url:'http://www.marketo.com/about',handler:this.popupWindow}];if(MktPage.getDevMode()){items.push('-');items.push({text:'Debug Controls',iconCls:'buttonIcon mkiBugYellowInformation',handler:MktPage.showDebugControls});items.push({text:'Toggle Dev Mode',iconCls:'buttonIcon mkiBugYellowRun',handler:function(){MktPage.toggleDevMode();}});items.push({text:'Simulate PHP Exception',iconCls:'buttonIcon mkiBugYellow',handler:function(){MktSession.ajaxRequest('/homepage/simulatePHPException');}});items.push({text:'Simulate PHP Fatal Error',iconCls:'buttonIcon mkiBugRed',handler:function(){MktSession.ajaxRequest('/homepage/simulatePHPFatalError');}});}
return items;},popupWindow:function(item){window.open(item.url);},popupHelp:function(item){window.open('/homepage/sso?goto='+encodeURI(item.url));},showGuide:function(){var panelId=MktViewport.getGuidePanelId();if(!panelId)return;MktSession.clockCursor(true);var guideEl=Ext.DomQuery.selectNode('button.mkiHelp');if(guideEl){this.guideAnimEl=guideEl;}
else{this.guideAnimEl=null;}
panelId=this.getGuidePanelId();MktSession.ajaxRequest('guide/getPanel',{serializeParms:{panelId:panelId},onMySuccess:this._showGuideWindow.createDelegate(this)});},getGuidePanelId:function(){return null;},getGuideTitle:function(){return'Untitled';},_showGuideWindow:function(){MktSession.clockCursor(false);var config={title:"Help - "+MktViewport.getGuideTitle(),width:500,height:300,icon:'mki48Information2',msgTmpl:'<div class="mktMessageLayout mktMessageLayoutHelp {0}"><p>{1}</p></div>',buttons:[],animateTarget:MktViewport.guideAnimEl||MktViewport.el,modal:false};config.msg=MktPage.appVars.panelText||'';if(MktViewport.mayEditHelp()){if(!MktPage.appVars.panelTextExists){config.msg+=': '+MktViewport.getGuidePanelId()+'<p>'+MktMessage.loremipsum+'</p>';}
config.buttons.push({text:'Edit '+MktViewport.getGuidePanelId(),iconCls:'mkiPencil',handler:MktMessage.okClicked});config.okCallback=MktViewport.editGuide;}
config.buttons.push({text:'Close',iconCls:'mkiCancel',handler:MktMessage.cancelClicked});MktMessage.show(config);},editGuide:function(){var panelId=MktViewport.getGuidePanelId();if(!panelId)return;MktPage.appVars.guidePanelId=panelId;MktSession.ajaxRequest('guide/getPanel',{serializeParms:{panelId:panelId},onMySuccess:MktViewport._showGuideEditWindow.createDelegate(MktViewport)});},_showGuideEditWindow:function(){var text=MktPage.appVars.panelText||'';Ext.Msg.show({title:"Edit Help - "+this.getGuideTitle(),width:500,msg:'Edit the text below using standard HTML:',value:text,buttons:Ext.Msg.OKCANCEL,prompt:true,multiline:400,fn:this._saveButtonClicked.createDelegate(this),animEl:this.guideAnimEl||this.el,modal:false});},_saveButtonClicked:function(button,text){if(button!='ok'){return;}
var panelId=MktPage.appVars.guidePanelId;var sessionObj=MktSession;if(window.opener&&window.opener.MktSession){sessionObj=window.opener.MktSession;}
sessionObj.ajaxRequest('guide/savePageSubmit',{params:{gidEditingId:panelId,gidHelpText:text},onMySuccess:this.showGuide.createDelegate(this)});},mayEditHelp:function(){if(window.opener&&window.opener.MktViewport){return window.opener.MktViewport.mayEditHelp();}
return MktPage.isDev()&&MktPage.isMarketo();},ender:null};
/* ========== ../mkt-ext-2.0/viewport/AppViewport.js ============ */

Mkt.viewport.AppViewport=Ext.extend(Mkt.viewport.BaseViewport,{explorer:null,canvas:null,enableMask:true,viewportCls:'app-viewport',getWestWidth:function(){if(!this.west){this.west=this.westRegion.items.items[1];}
return this.west.width;},init:function(){var viewport=Mkt.viewport.AppViewport.superclass.init.apply(this,arguments);this.north=this.centerRegion.items.items[0];this.center=this.centerRegion.items.items[1];this.northwest=this.westRegion.items.items[0];this.west=this.westRegion.items.items[1];return viewport;},_buildCenterContainer:function(){return[{id:'west-panel',region:'west',margins:'0 0 0 5px',collapsible:true,collapsed:false,frame:false,width:225,split:true,maxSize:400,layout:'fit',height:'100%',items:this._buildWestRegion()},{id:'center-panel',cls:'mktCanvasWrap',region:'center',layout:'fit',frame:false,items:this._buildCenterRegion()}];},_buildWestRegion:function(config){return this.westRegion=new Ext.Panel({layout:'border',items:[{region:'north',id:'logo-container',height:70,contentEl:'mktTopNavLogo'},this._buildExplorer({el:'explorer',region:'center',width:220,minWidth:220,layout:'fit',frame:false,autoScroll:false,items:new Ext.Panel({id:'mktExplorerTreeBox',el:'explorer-body',cls:'mktTreeBox',frame:true,layout:'fit',autoScroll:false})})]});},_buildExplorer:function(config){return this.explorer=new Mkt.main.ExplorerPanel(config);},_buildCenterRegion:function(config){return this.centerRegion=new Ext.Panel({layout:'border',items:[{region:'north',height:32,contentEl:'mktTopTabWrap'},{id:'canvas-frame',baseCls:'canvas-frame x-panel',region:'center',margins:'0 6px -5px 0',layout:'fit',frame:true,items:this._buildCanvas({id:'canvas',border:false}),listeners:{'render':function(panel){MktViewport.renderCustomCorners(panel);MktViewport.unmask();}}}]});},_buildCanvas:function(config){return this.canvas=new MktCanvasPanelManager(config);},getGuidePanelId:function(){if(!this.canvas||!this.canvas.activeTab){return null;}
config=this.canvas.activeTab.config;return config.guideId||config.id;},getGuideTitle:function(){if(!this.canvas||!this.canvas.activeTab){return'Marketo';}
return this.canvas.activeTab.config.title;},ender:null});MktViewport=new Mkt.viewport.AppViewport();
/* ========== ../mkt-ext-2.0/viewport/CenterPanelViewport.js ============ */

Mkt.viewport.CenterPanelViewport=Ext.extend(Mkt.viewport.BaseViewport,{enableMask:true,viewportCls:'center-panel-viewport',init:function(centerPanelHeaderText,centerPanelItems,eastPanelItems){this.centerPanelHeaderText=centerPanelHeaderText;this.centerPanelItems=centerPanelItems;this.eastPanelItems=eastPanelItems;var viewport=Mkt.viewport.CenterPanelViewport.superclass.init.apply(this,arguments);this.canvas=this.centerPanelItems;return viewport;},centerFrameBaseCls:'canvas-frame canvas-frame-grey-round x-panel',_buildCenterContainer:function(){return this.centerRegion=new Ext.Panel({id:'center-panel',cls:'mktCanvasWrap',region:'center',layout:'fit',frame:false,items:{layout:'border',items:[this._buildCenterPanelHeader(),this._buildCenterFrame(),this._buildEastPanel()]}});},_buildCenterFrame:function(){return this.canvasFrame=new Ext.Panel({id:'canvas-frame',baseCls:this.centerFrameBaseCls,region:'center',margins:'10px 6px 1px 10px',layout:'fit',frame:true,items:this.centerPanelItems});},eastPanelWidth:230,_buildEastPanel:function(){if(this.eastPanelItems===undefined){return{region:'east',visible:false};}
return{region:'east',cls:'mktEastPanel',layout:'fit',frame:false,autoScroll:false,width:this.eastPanelWidth,margins:'47px 10px 2px 0px',items:this.eastPanelItems}},_buildLoginToolbar:Ext.emptyFn,ender:null});
/* ========== ../mkt-ext-2.0/viewport/AppSatelliteViewport.js ============ */

Mkt.viewport.AppSatelliteViewport=Ext.extend(Mkt.viewport.AppViewport,{satellite:true,showCloseButton:true,showCustAdmin:false,showSaveAsButton:false,viewportCls:'app-viewport center-panel-viewport',init:function(centerPanelHeaderText){this.centerPanelHeaderText=centerPanelHeaderText;var viewport=Mkt.viewport.AppViewport.superclass.init.apply(this,arguments);this.north=this.northwest=this.west=null;this.center=this.centerRegion.items.items[0];this._buildFauxExplorer();return viewport;},_buildCenterContainer:function(){return[{id:'center-panel',cls:'mktCanvasWrap',region:'center',layout:'fit',frame:false,items:this._buildCenterRegion()}];},_buildCenterRegion:function(config){return this.centerRegion=new Ext.Panel({layout:'border',items:[this._buildCenterPanelHeader(),{id:'canvas-frame',baseCls:'canvas-frame canvas-frame-grey-round x-panel',region:'center',margins:'10px 6px -4px 10px',layout:'fit',frame:true,items:this._buildCanvas({id:'canvas',border:false}),listeners:{'render':function(panel){MktViewport.renderCustomCorners(panel);MktViewport.unmask();}}}]});},_buildCustomToolbar:function(){this.saveAsButton=new Ext.Toolbar.Button({hidden:true,text:'Save As...',iconCls:'mkiFloppyDisk',handler:function(){this.saveAsHandler.apply(this,arguments);}.createDelegate(this)});this.tbar.push(this.saveAsButton);},saveAsHandler:Ext.emptyFn,showSaveAsButton:function(show){if(this.saveAsButton){this.saveAsButton.setVisible(show);}},_buildLoginToolbar:Ext.emptyFn,ender:null});
/* ========== ../mkt-ext-2.0/widgets/message.js ============ */

Ext.namespace('Mkt','Mkt.widgets');Mkt.widgets.message={msgTmpl:'<div class="mktMessageLayout {0}"><p>{1}</p></div>',show:function(config){console.debug('MktMessage.show',config);this._cleanupMessageWindow();if(!config.icon){config.icon='mki48Information2';}
if(config.msg&&!config.html){config.html=String.format(config.msgTmpl||this.msgTmpl,config.icon,config.msg);}
if(config.showSessionInfo){config.html+=this.buildSessionInfo();}
if(config.showDateInfo){var headerTmpl='<div style="float: right; padding-right: 10px;">{1}</div><div>{0}</div>';var dt=new Date();var date=dt.format('D M j, Y  h:i:s A O (T)');if(!config.title)config.title='Marketo';config.title=String.format(headerTmpl,config.title,date);}
var defaults={title:'Marketo',frame:true,modal:true,resizable:true,icon:'mki48About',width:450,height:250,minWidth:440,minHeight:220,cls:'mktModalForm',closeAction:'hide',animateTarget:null,autoScroll:true,okCallback:Ext.emptyFn,cancelCallback:Ext.emptyFn};this._messageWindow=new Ext.Window(Ext.apply(defaults,config));this._messageWindow.show();return this._messageWindow;},buildSessionInfo:function(){if(!MktPage.savedState){return'';}
var browser='';if(Ext.isGecko3){browser="Gecko3";}
else if(Ext.isGecko){browser="Gecko";}
else if(Ext.isIE6){browser="IE6";}
else if(Ext.isIE7){browser="IE7";}
else if(Ext.isIE8){browser="IE8";}
else if(Ext.isIE){browser="IE";}
else if(Ext.isSafari3){browser="Webkit3";}
else if(Ext.isSafari){browser="Webkit";}
if(Ext.isWindows){browser+=' Win';}
else if(Ext.isMac){browser+=' Mac';}
var sessionInfoTmpl='<div style="position: absolute; bottom: 7px;">Session ID: {0} on {1}<br>{2} using {3}</div>';var sessionId=MktPage.savedState.sfSessionId;while(sessionId.length<5){sessionId='0'+sessionId;}
var sessionInfo=String.format(sessionInfoTmpl,sessionId,MktPage.savedState.clusterHostname,MktPage.userid,browser);return sessionInfo;},hide:function(){MktMessage._cleanupMessageWindow();},okClicked:function(){var win=MktMessage._messageWindow;if(win.okCallback)win.okCallback.call(win);win.hide();},cancelClicked:function(){var win=MktMessage._messageWindow;if(win.cancelCallback)win.cancelCallback.call(win);win.hide();},_cleanupMessageWindow:function(){try{if(this._messageWindow){this._messageWindow.hide();this._messageWindow.destroy();}}catch(e){}},comingSoon:function()
{this.showInfo("Coming soon!");},showEmailSent:function(msg,okCallback,animateTarget)
{this.show({title:'Email Sent',msg:msg,buttons:[{text:'OK',iconCls:'mkiOk',handler:this.okClicked}],icon:'mki48Mail2Ok',okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget});},showInfo:function(msg,okCallback,animateTarget)
{this.show({msg:msg,buttons:[{text:'OK',iconCls:'mkiOk',handler:this.okClicked}],icon:'mki48Information2',okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget});},showNotFound:function(msg,okCallback,animateTarget)
{this.show({title:'Not Found',msg:msg,buttons:[{text:'OK',iconCls:'mkiOk',handler:this.okClicked}],icon:'mki48Information2',showDateInfo:true,showSessionInfo:true,okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget});},showDraftNotFound:function(msg,okCallback,animateTarget)
{this.show({title:'Draft Not Found',msg:msg,buttons:[{text:'Close Editor',iconCls:'mkiOk',handler:function(){window.close();}}],icon:'mki48SignForbidden',showDateInfo:true,showSessionInfo:true,okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget});},showWarning:function(msg,okCallback,animateTarget)
{this.show({title:'Not Allowed',msg:msg,buttons:[{text:'OK',iconCls:'mkiOk',handler:this.okClicked}],icon:'mki48SignForbidden',okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget});},showWarningExt:function(title,msg,okCallback,animateTarget)
{this.show({title:title,msg:msg,buttons:[{text:'OK',iconCls:'mkiOk',handler:this.okClicked}],icon:'mki48SignForbidden',okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget});},showError:function(msg,okCallback,animateTarget)
{this.show({msg:msg,buttons:[{text:'OK',iconCls:'mkiOk',handler:this.okClicked}],showDateInfo:true,showSessionInfo:true,icon:'mki48Error',okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget});},showCrit:function(msg,okCallback,animateTarget)
{this.show({title:'Marketo System Error',msg:msg,showDateInfo:true,showSessionInfo:true,buttons:[{text:'OK',iconCls:'mkiOk',handler:this.okClicked}],icon:'mki48BandAid',okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget});},showHelp:function(msg,okCallback,animateTarget)
{this.show({title:'Help',msg:msg,showDateInfo:true,showSessionInfo:true,buttons:[{text:'OK',iconCls:'mkiOk',handler:this.okClicked}],icon:'mki48BandAid',okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget});},showQuestion:function(msg,okText,okCallback,okIconCls,cancelText,cancelCallback,cancelIconCls,animateTarget){var config={msg:msg,buttons:[{text:okText||"OK",iconCls:okIconCls||'mkiOk',handler:this.okClicked},{text:cancelText||'Cancel',iconCls:cancelIconCls||'mkiCancel',handler:this.cancelClicked}],icon:'mki48Help2',okCallback:okCallback||Ext.emptyFn,cancelCallback:cancelCallback||Ext.emptyFn,animateTarget:animateTarget};this.show(config);},confirm:function(title,msg,okText,okCallback,okIconCls,animateTarget){var config={title:title,msg:msg,buttons:[{text:okText||"OK",iconCls:okIconCls||'mkiOk',handler:this.okClicked},{text:'Cancel',iconCls:'mkiCancel',handler:this.cancelClicked}],icon:'mki48About',okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget};this.show(config);},confirmDelete:function(title,msg,okCallback,animateTarget,okText){if(!isDefined(okText)){okText='Delete';}
var config={title:title,msg:msg,buttons:[{text:okText,iconCls:'mkiOk',handler:this.okClicked},{text:'Cancel',iconCls:'mkiCancel',handler:this.cancelClicked}],icon:'mki48About',okCallback:okCallback||Ext.emptyFn,animateTarget:animateTarget};this.show(config);},showExport:function(msg,progressText,timeout)
{if(msg==undefined)msg="Exporting your data, please wait...";if(progressText==undefined)progressText="Exporting...";if(timeout==undefined)timeout=2000;MktPage.preventNavAway(false);Ext.Msg.show({title:'Exporting Data',msg:msg,progressText:progressText,width:300,wait:true,waitConfig:{interval:200},icon:'ext-mb-download',animEl:'mb7'});setTimeout(function(){MktPage.preventNavAway(true);Ext.MessageBox.hide();},timeout);},SYSTEM_ERROR_NOT_STARTED:'<p>Please help improve by reporting this error.</p>',SYSTEM_ERROR_REFRESH:'<p>The details of this error have automatically been sent to Marketo.</p><p>Please refresh your browser.</p>',SYSTEM_ERROR_GRID:'Error Loading Report',SYSTEM_ERROR_REPORT:'Error Loading Report',SYSTEM_ERROR_TIMEOUT:'<p>Report Timed Out</p><p>This report took too long to run and was cancelled.</p>',SYSTEM_ERROR_COMMUNICATION_FAILURE:'<p>Please check your network connection.</p><p>This can also be caused by the ESC key.</p>',SYSTEM_ERROR_BROWSER_ESC:'<p>The ESC key stops the page from loading.</p><p>Your action may not have been completed.</p>',SYSTEM_ERROR_SMARTLIST:'<p>The Smart List did not run successfully.</p><p>Please check your Smart List settings.</p>',SYSTEM_ERROR_TREE:'<p>The tree did not load correctly.</p><p>Please refresh your browser.</p>',showSystemError:function(msg,context){console.debug('MktMessage.showSystemError',msg,context);var title='System Error';var intro='An Error has Occurred';var width=minWidth=500;var height=minHeight=260;var iconCls='mki48BandAid';var showOkbutton=false;var showRefreshButton=true;if(msg==MktMessage.SYSTEM_ERROR_GRID||msg==MktMessage.SYSTEM_ERROR_REPORT){title=msg;intro="This report could not be loaded.";msg='<p>The details of this error have automatically been sent to Marketo.</p>';showRefreshButton=false;showOkbutton=true;}
else if(msg==MktMessage.SYSTEM_ERROR_TIMEOUT){if(!MktPage.showCommunicationFailureMessage){return;}
title='Timeout';intro="Page timed out";iconCls='mki48Hourglass';showRefreshButton=true;showOkbutton=true;}
else if(msg==MktMessage.SYSTEM_ERROR_COMMUNICATION_FAILURE){if(!MktPage.showCommunicationFailureMessage){return;}
title="Communication Failure";intro="Unable to reach Marketo";iconCls='mki48SignStop';showRefreshButton=false;showOkbutton=true;}
else if(msg==MktMessage.SYSTEM_ERROR_BROWSER_ESC){title="Page load stopped";intro="Page load stopped";iconCls='mki48SignStop';showRefreshButton=false;showOkbutton=true;}
else if(msg==MktMessage.SYSTEM_ERROR_SMARTLIST){title='Smart List Error';iconCls='mki48Lightbulb';showRefreshButton=false;showOkbutton=true;}
else if(msg==MktMessage.SYSTEM_ERROR_TREE){title='Tree Error';intro='Error loading tree';icon='mki48BandAid';showRefreshButton=true;showOkbutton=true;}
var tmpl='<div class="mktMessageLayout {0}"><h2>{1}</h2>{2}</div>';var html=String.format(tmpl,iconCls,intro,msg);if(context&&context.showDebugInfo){html+='<hr size="1"><div class="mktMessageLayoutDetails">';if(context.sfException){html+='Symfony Exception: '+context.sfException+'<br><br>';}
if(context.reqParams){html+='URL: '+context.reqParams.url+'<br><br>';var canvasConfig='';if(context.reqParams.canvasPanelThis){canvasConfig='<hr size="1">Canvas Panel Config: '+Ext.util.JSON.encode(context.reqParams.canvasPanelThis.config)+'<br><br>';delete context.reqParams.canvasPanelThis;}
delete context.reqParams.serializeParams;html+='Request Parameters: '+Ext.util.JSON.encode(context.reqParams)+'<br><br>';html+=canvasConfig;}
html+='<hr size="1">';if(context.request){html+='HTTP Response Status: '+context.request.status+' ('+context.request.statusText+')<br><br>';}
if(context.parseResults){html+='Error Type: '+context.parseResults.errorType+'<br><br>';}
var responseText=''+context.cleanResponseText;html+=responseText;html+='</div>';width=900;height=600;showOkbutton=true;showRefreshButton=true;}
var buttons=[];if(showOkbutton){buttons.push({text:'OK',iconCls:'mkiOk',handler:function(){MktMessage._cleanupMessageWindow();}});}
if(showRefreshButton){buttons.push({text:'Refresh Browser',iconCls:'mkiRefresh',handler:function(){MktPage.preventNavAway(false);window.location.reload();}});}
this._cleanupMessageWindow();MktMessage._messageWindow=this.show({title:title,showDateInfo:true,showSessionInfo:true,frame:true,modal:true,width:width,height:height,minWidth:minWidth,minHeight:minHeight,closeAction:'goaway',autoScroll:true,html:html,buttons:buttons,goaway:function(){MktMessage._cleanupMessageWindow();}});MktMessage._messageWindow.show();},loremipsum:'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed metus nibh, sodales a, porta at, vulputate eget, dui. Pellentesque ut nisl. Maecenas tortor turpis, interdum non, sodales non, iaculis ac, lacus. Vestibulum auctor, tortor quis iaculis malesuada, libero lectus bibendum purus, sit amet ti