var Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(c){var b="";var j,g,e,k,h,f,d;var a=0;c=Base64._utf8_encode(c);while(a<c.length){j=c.charCodeAt(a++);g=c.charCodeAt(a++);e=c.charCodeAt(a++);k=j>>2;h=((j&3)<<4)|(g>>4);f=((g&15)<<2)|(e>>6);d=e&63;if(isNaN(g)){f=d=64}else{if(isNaN(e)){d=64}}b=b+this._keyStr.charAt(k)+this._keyStr.charAt(h)+this._keyStr.charAt(f)+this._keyStr.charAt(d)}return b},decode:function(c){var b="";var j,g,e;var k,h,f,d;var a=0;c=c.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(a<c.length){k=this._keyStr.indexOf(c.charAt(a++));h=this._keyStr.indexOf(c.charAt(a++));f=this._keyStr.indexOf(c.charAt(a++));d=this._keyStr.indexOf(c.charAt(a++));j=(k<<2)|(h>>4);g=((h&15)<<4)|(f>>2);e=((f&3)<<6)|d;b=b+String.fromCharCode(j);if(f!=64){b=b+String.fromCharCode(g)}if(d!=64){b=b+String.fromCharCode(e)}}b=Base64._utf8_decode(b);return b},_utf8_encode:function(a){a=a.replace(/\r\n/g,"\n");var b="";for(var e=0;e<a.length;e++){var d=a.charCodeAt(e);if(d<128){b+=String.fromCharCode(d)}else{if((d>127)&&(d<2048)){b+=String.fromCharCode((d>>6)|192);b+=String.fromCharCode((d&63)|128)}else{b+=String.fromCharCode((d>>12)|224);b+=String.fromCharCode(((d>>6)&63)|128);b+=String.fromCharCode((d&63)|128)}}}return b},_utf8_decode:function(d){var b="";var a=0;var e=c1=c2=0;while(a<d.length){e=d.charCodeAt(a);if(e<128){b+=String.fromCharCode(e);a++}else{if((e>191)&&(e<224)){c2=d.charCodeAt(a+1);b+=String.fromCharCode(((e&31)<<6)|(c2&63));a+=2}else{c2=d.charCodeAt(a+1);c3=d.charCodeAt(a+2);b+=String.fromCharCode(((e&15)<<12)|((c2&63)<<6)|(c3&63));a+=3}}}return b}};Ext.namespace("Ext.ux.form");Ext.ux.form.BrowseButton=Ext.extend(Ext.Button,{inputFileName:"file",debug:false,clipElBackgroundColor:null,FLOAT_EL_WIDTH:60,FLOAT_EL_HEIGHT:18,buttonCt:null,clipEl:null,floatEl:null,inputFileEl:null,originalHandler:null,originalScope:null,initComponent:function(){Ext.ux.form.BrowseButton.superclass.initComponent.call(this);this.originalHandler=this.handler||null;this.originalScope=this.scope||window;this.handler=null;this.scope=null},onRender:function(c,a){Ext.ux.form.BrowseButton.superclass.onRender.call(this,c,a);this.buttonCt=this.el.child(".x-btn-center em");this.buttonCt.position("relative");var b={position:"absolute",overflow:"hidden",top:"0px",left:"0px"};if(Ext.isIE){Ext.apply(b,{left:"-3px",top:"-3px"})}else{if(Ext.isGecko){Ext.apply(b,{left:"-3px",top:"-3px"})}else{if(Ext.isSafari){Ext.apply(b,{left:"-4px",top:"-2px"})}}}this.clipEl=this.buttonCt.createChild({tag:"div",style:b});this.setClipSize();if(!Ext.isOpera){this.clipEl.on({mousemove:this.onButtonMouseMove,mouseover:this.onButtonMouseMove,scope:this})}this.floatEl=this.clipEl.createChild({tag:"div",style:{position:"absolute",width:this.FLOAT_EL_WIDTH+"px",height:this.FLOAT_EL_HEIGHT+"px",overflow:"hidden"}});if(this.debug){this.clipEl.applyStyles({"background-color":"green"});this.floatEl.applyStyles({"background-color":"red"})}else{if(this.clipElBackgroundColor){this.clipEl.applyStyles({"background-color":this.clipElBackgroundColor})}this.clipEl.setOpacity(0)}this.createInputFile()},setClipSize:function(){if(this.clipEl){var a=this.buttonCt.getWidth();var b=this.buttonCt.getHeight();if(Ext.isIE){a=a+5;b=b+5}else{if(Ext.isGecko){a=a+6;b=b+6}else{if(Ext.isSafari){a=a+6;b=b+6}}}this.clipEl.setSize(a,b)}},createInputFile:function(){this.inputFileEl=this.floatEl.createChild({tag:"input",type:"file",size:1,name:this.inputFileName||Ext.id(this.el),style:{position:"absolute",cursor:"pointer",right:"0px",top:"0px"}});this.inputFileEl=this.inputFileEl.child("input")||this.inputFileEl;this.inputFileEl.on({click:this.onInputFileClick,change:this.onInputFileChange,scope:this});if(this.tooltip){if(typeof this.tooltip=="object"){Ext.QuickTips.register(Ext.apply({target:this.inputFileEl},this.tooltip))}else{this.inputFileEl.dom[this.tooltipType]=this.tooltip}}},onButtonMouseMove:function(b){var a=b.getXY();a[0]-=this.FLOAT_EL_WIDTH/2;a[1]-=this.FLOAT_EL_HEIGHT/2;this.floatEl.setXY(a)},onInputFileClick:function(a){a.stopPropagation()},onInputFileChange:function(){if(this.originalHandler){this.originalHandler.call(this.originalScope,this)}},detachInputFile:function(a){var b=this.inputFileEl;if(typeof this.tooltip=="object"){Ext.QuickTips.unregister(this.inputFileEl)}else{this.inputFileEl.dom[this.tooltipType]=null}this.inputFileEl.removeAllListeners();this.inputFileEl=null;if(!a){this.createInputFile()}return b},getInputFile:function(){return this.inputFileEl},disable:function(){Ext.ux.form.BrowseButton.superclass.disable.call(this);this.inputFileEl.dom.disabled=true},enable:function(){Ext.ux.form.BrowseButton.superclass.enable.call(this);this.inputFileEl.dom.disabled=false}});Ext.reg("browsebutton",Ext.ux.form.BrowseButton);if(!Parse){var Parse={}}if(!Parse.Simple){Parse.Simple={}}Parse.Simple.Base=function(a,b){if(!arguments.length){return}this.grammar=a;this.grammar.root=new this.ruleConstructor(this.grammar.root);this.options=b};Parse.Simple.Base.prototype={ruleConstructor:null,grammar:null,options:null,parse:function(b,c,a){if(a){for(i in this.options){if(typeof a[i]=="undefined"){a[i]=this.options[i]}}}else{a=this.options}c=c.replace(/\r\n?/g,"\n");this.grammar.root.apply(b,c,a);if(a&&a.forIE){b.innerHTML=b.innerHTML.replace(/\r?\n/g,"\r\n")}}};Parse.Simple.Base.prototype.constructor=Parse.Simple.Base;Parse.Simple.Base.Rule=function(b){if(!arguments.length){return}for(var a in b){this[a]=b[a]}if(!this.children){this.children=[]}};Parse.Simple.Base.prototype.ruleConstructor=Parse.Simple.Base.Rule;Parse.Simple.Base.Rule.prototype={regex:null,capture:null,replaceRegex:null,replaceString:null,tag:null,attrs:null,children:null,match:function(b,a){return b.match(this.regex)},build:function(d,c,b){var e;if(this.capture!==null){e=c[this.capture]}var f;if(this.tag){f=document.createElement(this.tag);d.appendChild(f)}else{f=d}if(e){if(this.replaceRegex){e=e.replace(this.replaceRegex,this.replaceString)}this.apply(f,e,b)}if(this.attrs){for(var a in this.attrs){f.setAttribute(a,this.attrs[a]);if(b&&b.forIE&&a=="class"){f.className=this.attrs[a]}}}return this},apply:function(a,d,j){var f=""+d;var e=[];if(!this.fallback.apply){this.fallback=new this.constructor(this.fallback)}while(true){var b=false;var k=false;for(var c=0;c<this.children.length;c++){if(typeof e[c]=="undefined"){if(!this.children[c].match){this.children[c]=new this.constructor(this.children[c])}e[c]=this.children[c].match(f,j)}if(e[c]&&(!b||b.index>e[c].index)){b=e[c];k=this.children[c];if(b.index==0){break}}}var h=b?b.index:f.length;if(h>0){this.fallback.apply(a,f.substring(0,h),j)}if(!b){break}if(!k.build){k=new this.constructor(k)}k.build(a,b,j);var g=b.index+b[0].length;f=f.substring(g);for(var c=0;c<this.children.length;c++){if(e[c]){if(e[c].index>=g){e[c].index-=g}else{e[c]=void 0}}}}return this},fallback:{apply:function(b,c,a){if(a&&a.forIE){c=c.replace(/\n/g," \r")}b.appendChild(document.createTextNode(c))}}};Parse.Simple.Base.Rule.prototype.constructor=Parse.Simple.Base.Rule;Parse.Simple.Creole=function(b){var e={};e.link="[^\\]|~\\n]*(?:(?:\\](?!\\])|~.)[^\\]|~\\n]*)*";e.linkText="[^\\]~\\n]*(?:(?:\\](?!\\])|~.)[^\\]~\\n]*)*";e.uriPrefix="\\b(?:(?:https?|ftp)://|mailto:)";e.uri=e.uriPrefix+e.link;e.rawUri=e.uriPrefix+"\\S*[^\\s!\"',.:;?]";e.interwikiPrefix="[\\w.]+:";e.interwikiLink=e.interwikiPrefix+e.link;e.img="\\{\\{((?!\\{)[^|}\\n]*(?:}(?!})[^|}\\n]*)*)"+(b&&b.strict?"":"(?:")+"\\|([^}~\\n]*((}(?!})|~.)[^}~\\n]*)*)"+(b&&b.strict?"":")?")+"}}";var d=function(f,g){if(g instanceof Function){return g(f)}g=g instanceof Array?g:[g];if(typeof g[1]=="undefined"){g[1]=""}return g[0]+f+g[1]};var c={hr:{tag:"hr",regex:/(^|\n)\s*----\s*(\n|$)/},br:{tag:"br",regex:/\\\\/},preBlock:{tag:"pre",capture:2,regex:/(^|\n)\{\{\{\n((.*\n)*?)\}\}\}(\n|$)/,replaceRegex:/^ ([ \t]*\}\}\})/gm,replaceString:"$1"},tt:{tag:"tt",regex:/\{\{\{(.*?\}\}\}+)/,capture:1,replaceRegex:/\}\}\}$/,replaceString:""},ulist:{tag:"ul",capture:0,regex:/(^|\n)([ \t]*\*[^*#].*(\n|$)([ \t]*[^\s*#].*(\n|$))*([ \t]*[*#]{2}.*(\n|$))*)+/},olist:{tag:"ol",capture:0,regex:/(^|\n)([ \t]*#[^*#].*(\n|$)([ \t]*[^\s*#].*(\n|$))*([ \t]*[*#]{2}.*(\n|$))*)+/},li:{tag:"li",capture:0,regex:/[ \t]*([*#]).+(\n[ \t]*[^*#\s].*)*(\n[ \t]*\1[*#].+)*/,replaceRegex:/(^|\n)[ \t]*[*#]/g,replaceString:"$1"},table:{tag:"table",capture:0,regex:/(^|\n)(\|.*?[ \t]*(\n|$))+/},tr:{tag:"tr",capture:2,regex:/(^|\n)(\|.*?)\|?[ \t]*(\n|$)/},th:{tag:"th",regex:/\|+=([^|]*)/,capture:1},td:{tag:"td",capture:1,regex:"\\|+([^|~\\[{]*((~(.|(?=\\n)|$)|\\[\\["+e.link+"(\\|"+e.linkText+")?\\]\\]"+(b&&b.strict?"":"|"+e.img)+"|[\\[{])[^|~]*)*)"},singleLine:{regex:/.+/,capture:0},paragraph:{tag:"p",capture:0,regex:/(^|\n)([ \t]*\S.*(\n|$))+/},text:{capture:0,regex:/(^|\n)([ \t]*[^\s].*(\n|$))+/},strong:{tag:"strong",capture:1,regex:/\*\*([^*~]*((\*(?!\*)|~(.|(?=\n)|$))[^*~]*)*)(\*\*|\n|$)/},em:{tag:"em",capture:1,regex:"\\/\\/(((?!"+e.uriPrefix+")[^\\/~])*(("+e.rawUri+"|\\/(?!\\/)|~(.|(?=\\n)|$))((?!"+e.uriPrefix+")[^\\/~])*)*)(\\/\\/|\\n|$)"},img:{regex:e.img,build:function(j,h,g){var f=document.createElement("img");f.src=h[1];f.alt=h[2]===undefined?(g&&g.defaultImageText?g.defaultImageText:""):h[2].replace(/~(.)/g,"$1");j.appendChild(f)}},namedUri:{regex:"\\[\\[("+e.uri+")\\|("+e.linkText+")\\]\\]",build:function(j,h,f){var g=document.createElement("a");g.href=h[1];if(f&&f.isPlainUri){g.appendChild(document.createTextNode(h[2]))}else{this.apply(g,h[2],f)}j.appendChild(g)}},namedLink:{regex:"\\[\\[("+e.link+")\\|("+e.linkText+")\\]\\]",build:function(j,h,f){var g=document.createElement("a");g.href=f&&f.linkFormat?d(h[1].replace(/~(.)/g,"$1"),f.linkFormat):h[1].replace(/~(.)/g,"$1");this.apply(g,h[2],f);j.appendChild(g)}},unnamedUri:{regex:"\\[\\[("+e.uri+")\\]\\]",build:"dummy"},unnamedLink:{regex:"\\[\\[("+e.link+")\\]\\]",build:"dummy"},unnamedInterwikiLink:{regex:"\\[\\[("+e.interwikiLink+")\\]\\]",build:"dummy"},rawUri:{regex:"("+e.rawUri+")",build:"dummy"},escapedSequence:{regex:"~("+e.rawUri+"|.)",capture:1,tag:"span",attrs:{"class":"escaped"}},escapedSymbol:{regex:/~(.)/,capture:1,tag:"span",attrs:{"class":"escaped"}}};c.unnamedUri.build=c.rawUri.build=function(h,g,f){if(!f){f={}}f.isPlainUri=true;c.namedUri.build.call(this,h,Array(g[0],g[1],g[1]),f)};c.unnamedLink.build=function(h,g,f){c.namedLink.build.call(this,h,Array(g[0],g[1],g[1]),f)};c.namedInterwikiLink={regex:"\\[\\[("+e.interwikiLink+")\\|("+e.linkText+")\\]\\]",build:function(l,k,h){var j=document.createElement("a");var g,n;if(h&&h.interwiki){g=k[1].match(/(.*?):(.*)/);n=h.interwiki[g[1]]}if(typeof n=="undefined"){if(!c.namedLink.apply){c.namedLink=new this.constructor(c.namedLink)}return c.namedLink.build.call(c.namedLink,l,k,h)}j.href=d(g[2].replace(/~(.)/g,"$1"),n);this.apply(j,k[2],h);l.appendChild(j)}};c.unnamedInterwikiLink.build=function(h,g,f){c.namedInterwikiLink.build.call(this,h,Array(g[0],g[1],g[1]),f)};c.namedUri.children=c.unnamedUri.children=c.rawUri.children=c.namedLink.children=c.unnamedLink.children=c.namedInterwikiLink.children=c.unnamedInterwikiLink.children=[c.escapedSymbol,c.img];for(var a=1;a<=6;a++){c["h"+a]={tag:"h"+a,capture:2,regex:"(^|\\n)[ \\t]*={"+a+"}[ \\t]([^~]*?(~(.|(?=\\n)|$))*)[ \\t]*=*\\s*(\\n|$)"}}c.ulist.children=c.olist.children=[c.li];c.li.children=[c.ulist,c.olist];c.li.fallback=c.text;c.table.children=[c.tr];c.tr.children=[c.th,c.td];c.td.children=[c.singleLine];c.th.children=[c.singleLine];c.h1.children=c.h2.children=c.h3.children=c.h4.children=c.h5.children=c.h6.children=c.singleLine.children=c.paragraph.children=c.text.children=c.strong.children=c.em.children=[c.escapedSequence,c.strong,c.em,c.br,c.rawUri,c.namedUri,c.namedInterwikiLink,c.namedLink,c.unnamedUri,c.unnamedInterwikiLink,c.unnamedLink,c.tt,c.img];c.root={children:[c.h1,c.h2,c.h3,c.h4,c.h5,c.h6,c.hr,c.ulist,c.olist,c.preBlock,c.table],fallback:{children:[c.paragraph]}};Parse.Simple.Base.call(this,c,b)};Parse.Simple.Creole.prototype=new Parse.Simple.Base();Parse.Simple.Creole.prototype.constructor=Parse.Simple.Creole;Ext.ns("Ext.ux.layout");Ext.ux.layout.CenterLayout=Ext.extend(Ext.layout.FitLayout,{setItemSize:function(b,a){this.container.addClass("ux-layout-center");b.addClass("ux-layout-center-item");if(b&&a.height>0){if(b.width){a.width=b.width}b.setSize(a)}}});Ext.Container.LAYOUTS["ux.center"]=Ext.ux.layout.CenterLayout;var centerLayout={id:"center-panel",layout:"ux.center",items:{title:"Centered Panel: 75% of container width and fit height",layout:"ux.center",autoScroll:true,width:"75%",bodyStyle:"padding:20px 0;",items:[{title:"Inner Centered Panel",html:"Fixed 300px wide and auto height. The container panel will also autoscroll if narrower than 300px.",width:300,frame:true,autoHeight:true,bodyStyle:"padding:10px 20px;"}]}};Ext.ux.layout.RowLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,isValidParent:function(b,a){return b.getEl().dom.parentNode==this.innerCt.dom},onLayout:function(g,b){var c=g.items.items,j=c.length,a,d;if(!this.innerCt){b.addClass("ux-row-layout-ct");this.innerCt=b.createChild({cls:"x-row-inner"})}this.renderAll(g,this.innerCt);var k=b.getViewSize();if(k.width<1&&k.height<1){return}var e=k.height-b.getPadding("tb"),f=e;this.innerCt.setSize({height:e});for(d=0;d<j;d++){a=c[d];if(!a.rowHeight){f-=(a.getSize().height+a.getEl().getMargins("tb"))}}f=f<0?0:f;for(d=0;d<j;d++){a=c[d];if(a.rowHeight){a.setSize({height:Math.floor(a.rowHeight*f)-a.getEl().getMargins("tb")})}}}});Ext.Container.LAYOUTS["ux.row"]=Ext.ux.layout.RowLayout;var rowLayout={id:"row-panel",bodyStyle:"padding:5px",layout:"ux.row",title:"Row Layout",items:[{title:"Height = 25%, Width = 50%",rowHeight:0.25,width:"50%"},{title:"Height = 100px, Width = 300px",height:100,width:300},{title:"Height = 75%, Width = fit",rowHeight:0.75}]};Ext.namespace("Ext.ux.form");Ext.ux.form.FieldPanel=Ext.extend(Ext.Panel,{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,token:",",isFormField:true,hasFocus:false,initComponent:function(){if(!this.items){this.items=[]}this.items[this.items.length]={xtype:"component",listeners:{beforerender:function(a){this.items.remove(a);this.afterChildrenRender();return false},scope:this}};Ext.ux.form.FieldPanel.superclass.initComponent.call(this);this.addEvents("change","invalid","valid")},getName:function(){return this.rendered&&this.hiddenField.dom.name?this.hiddenField.dom.name:(this.hiddenName||"")},onRender:function(c,a){Ext.ux.form.FieldPanel.superclass.onRender.call(this,c,a);this.hiddenField=this.el.createChild({tag:"input",type:"hidden",value:"",name:this.name});if(this.readOnly){this.items.each(function(d){if(d.isFormField){d.readOnly=true}},this)}if(this.tabIndex!==undefined){var b=tabIndex;this.items.each(function(d){if(d.isFormField){d.tabIndex=b++}},this)}this.el.addClass([this.fieldClass,this.cls])},afterChildrenRender:function(){this.initValue();this.items.each(function(a){if(a.isFormField){a.on("change",this.onChange,this);if(a.trigger){a.trigger.on("click",this.onChange,this)}}},this)},initValue:function(){if(this.value!==undefined){this.setValue(this.value)}else{if(this.hiddenField.dom.value.length>0&&this.hiddenField.dom.value!=this.emptyText){this.setValue(this.hiddenField.dom.value)}}this.originalValue=this.getValue()},isDirty:function(){if(this.disabled){return false}return String(this.getValue())!==String(this.originalValue)},reset:function(){this.setValue(this.originalValue);this.clearInvalid()},initEvents:function(){Ext.ux.form.FieldPanel.superclass.initEvents.call(this);this.originalValue=this.getValue()},onChange:function(){this.startValue=this.getValue();var a=this.getRawValue();if(String(a)!==String(this.startValue)){this.setValue(a);if(this.validationEvent!==false&&this.validateOnBlur&&this.validationEvent!="blur"){this.validate()}this.fireEvent("change",this,a,this.startValue)}},onEnable:function(){this.items.each(function(a){if(a.isFormField){a.enable()}},this)},onDisable:function(){this.items.each(function(a){if(a.isFormField){a.disable()}},this)},isValid:function(c){if(this.disabled){return true}var b=this.preventMark;this.preventMark=c===true;var a=this.validateValue(this.processValue(this.getRawValue()));this.preventMark=b;return a},validate:function(){if(this.disabled||this.validateValue(this.processValue(this.getRawValue()))){this.clearInvalid();return true}return false},processValue:function(a){return a},validateValue:function(a){return true},markInvalid:function(c){if(!this.rendered||this.preventMark){return}this.items.each(function(d){if(d.isFormField){d.el.addClass(this.invalidClass)}},this);c=c||this.invalidText;switch(this.msgTarget){case"qtip":this.el.dom.qtip=c;this.el.dom.qclass="x-form-invalid-tip";if(Ext.QuickTips){Ext.QuickTips.enable()}break;case"title":this.el.dom.title=c;break;case"under":if(!this.errorEl){var b=this.getErrorCt();if(!b){this.el.dom.title=c;break}this.errorEl=b.createChild({cls:"x-form-invalid-msg"});this.errorEl.setWidth(b.getWidth(true)-20)}this.errorEl.update(c);Ext.form.Field.msgFx[this.msgFx].show(this.errorEl,this);break;case"side":if(!this.errorIcon){var b=this.getErrorCt();if(!b){this.el.dom.title=c;break}this.errorIcon=b.createChild({cls:"x-form-invalid-icon"})}this.alignErrorIcon();this.errorIcon.dom.qtip=c;this.errorIcon.dom.qclass="x-form-invalid-tip";this.errorIcon.show();this.on("resize",this.alignErrorIcon,this);break;default:var a=Ext.getDom(this.msgTarget);a.innerHTML=c;a.style.display=this.msgDisplay;break}this.fireEvent("invalid",this,c)},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.items.each(function(b){if(b.isFormField){b.el.removeClass(this.invalidClass)}},this);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 a=Ext.getDom(this.msgTarget);a.innerHTML="";a.style.display="none";break}this.fireEvent("valid",this)},getRawValue:function(){var a="";if(this.rendered){this.items.each(function(b){if(b.isFormField){if(a.length){a+=this.token}a+=b.getValue()}},this)}else{Ext.value(this.value,"")}if(a===this.emptyText){a=""}return a},getValue:function(){v=this.hiddenField.dom.value;if(v===undefined){v=""}return v},setRawValue:function(a){var c="";var b=0;if(a.length){var d=a.split(this.token)}else{var d=[];for(b=0;b<this.items.length;b++){d[b]=""}}b=0;this.items.each(function(e){if(b>=d.length){return false}if(e.isFormField){e.setValue(d[b]);if(c.length){c+=this.token}c+=d[b++]}return true},this);return this.hiddenField.dom.value=c},setValue:function(a){this.value=a;if(this.rendered){this.value=this.setRawValue(a);this.validate()}},adjustSize:function(a,c){var b=Ext.ux.form.FieldPanel.superclass.adjustSize.call(this,a,c);b.width=this.adjustWidth(this.el.dom.tagName,b.width);return b},adjustWidth:function(a,b){a=a.toLowerCase();if(typeof b=="number"&&!Ext.isSafari){if(Ext.isIE&&(a=="input"||a=="textarea")){if(a=="input"&&!Ext.isStrict){return this.inEditor?b:b-3}if(a=="input"&&Ext.isStrict){return b-(Ext.isIE6?4:1)}if(a=="textarea"&&Ext.isStrict){return b-2}}else{if(Ext.isOpera&&Ext.isStrict){if(a=="input"){return b+2}if(a=="textarea"){return b-2}}}}return b}});Ext.reg("uxfieldpanel",Ext.ux.form.FieldPanel);Ext.form.FileUploadField=Ext.extend(Ext.form.TextField,{buttonText:"Browse...",buttonOnly:false,buttonOffset:3,readOnly:true,autoSize:Ext.emptyFn,initComponent:function(){Ext.form.FileUploadField.superclass.initComponent.call(this);this.addEvents("fileselected")},onRender:function(c,a){Ext.form.FileUploadField.superclass.onRender.call(this,c,a);this.wrap=this.el.wrap({cls:"x-form-field-wrap x-form-file-wrap"});this.el.addClass("x-form-file-text");this.el.dom.removeAttribute("name");this.fileInput=this.wrap.createChild({id:this.getFileInputId(),name:this.name||this.getId(),cls:"x-form-file",tag:"input",type:"file",size:1});var b=Ext.applyIf(this.buttonCfg||{},{text:this.buttonText});this.button=new Ext.Button(Ext.apply(b,{renderTo:this.wrap,cls:"x-form-file-btn"+(b.iconCls?" x-btn-icon":"")}));if(this.buttonOnly){this.el.hide();this.wrap.setWidth(this.button.getEl().getWidth())}this.fileInput.on("change",function(){var d=this.fileInput.dom.value;this.setValue(d);this.fireEvent("fileselected",this,d)},this)},getFileInputId:function(){return this.id+"-file"},onResize:function(a,b){Ext.form.FileUploadField.superclass.onResize.call(this,a,b);this.wrap.setWidth(a);if(!this.buttonOnly){var a=this.wrap.getWidth()-this.button.getEl().getWidth()-this.buttonOffset;this.el.setWidth(a)}},preFocus:Ext.emptyFn,getResizeEl:function(){return this.wrap},getPositionEl:function(){return this.wrap},alignErrorIcon:function(){this.errorIcon.alignTo(this.wrap,"tl-tr",[2,0])}});Ext.reg("fileuploadfield",Ext.form.FileUploadField);Ext.namespace("Ext.ux.form");Ext.ux.form.IpField=Ext.extend(Ext.ux.form.FieldPanel,{border:false,baseCls:null,layout:"table",token:".",value:"192.168.0.1",layoutConfig:{columns:7},width:180,defaults:{maskRe:/[0-9]/,maxLength:3,listeners:{focus:function(a){a.selectText()}}},initComponent:function(){this.items=[{xtype:"numberfield",maxValue:255,minValue:0,width:40,name:this.name+"0"},{html:".",baseCls:null,bodyStyle:"font-weight: bold;",border:false},{xtype:"numberfield",maxValue:255,minValue:0,width:40,name:this.name+"1"},{html:".",baseCls:null,bodyStyle:"font-weight: bold;",border:false},{xtype:"numberfield",maxValue:255,minValue:0,width:40,name:this.name+"2"},{html:".",baseCls:null,bodyStyle:"font-weight: bold;",border:false},{xtype:"numberfield",maxValue:255,minValue:0,width:40,name:this.name+"3"}];Ext.ux.form.IpField.superclass.initComponent.call(this)}});Ext.reg("uxipfield",Ext.ux.form.IpField);Ext.ns("Ext.ux");Ext.ux.Lightbox=(function(){var c={},d=[],a,e=false,b=[];return{overlayOpacity:0.85,animate:true,resizeSpeed:8,borderSize:10,labelImage:"Image",labelOf:"of",init:function(){this.resizeDuration=this.animate?((11-this.resizeSpeed)*0.15):0;this.overlayDuration=this.animate?0.2:0;if(!e){Ext.apply(this,Ext.util.Observable.prototype);Ext.util.Observable.constructor.call(this);this.addEvents("open","close");this.initMarkup();this.initEvents();e=true}},initMarkup:function(){c.shim=Ext.DomHelper.append(document.body,{tag:"iframe",id:"ux-lightbox-shim"},true);c.overlay=Ext.DomHelper.append(document.body,{id:"ux-lightbox-overlay"},true);var f=new Ext.Template(this.getTemplate());c.lightbox=f.append(document.body,{},true);var h=["outerImageContainer","imageContainer","image","hoverNav","navPrev","navNext","loading","loadingLink","outerDataContainer","dataContainer","data","details","caption","imageNumber","bottomNav","navClose"];Ext.each(h,function(j){c[j]=Ext.get("ux-lightbox-"+j)});Ext.each([c.overlay,c.lightbox,c.shim],function(j){j.setVisibilityMode(Ext.Element.DISPLAY);j.hide()});var g=(this.animate?250:1)+"px";c.outerImageContainer.setStyle({width:g,height:g})},getTemplate:function(){return['<div id="ux-lightbox">','<div id="ux-lightbox-outerImageContainer">','<div id="ux-lightbox-imageContainer">','<img id="ux-lightbox-image">','<div id="ux-lightbox-hoverNav">','<a href="#" id="ux-lightbox-navPrev"></a>','<a href="#" id="ux-lightbox-navNext"></a>',"</div>",'<div id="ux-lightbox-loading">','<a id="ux-lightbox-loadingLink"></a>',"</div>","</div>","</div>",'<div id="ux-lightbox-outerDataContainer">','<div id="ux-lightbox-dataContainer">','<div id="ux-lightbox-data">','<div id="ux-lightbox-details">','<span id="ux-lightbox-caption"></span>','<span id="ux-lightbox-imageNumber"></span>',"</div>",'<div id="ux-lightbox-bottomNav">','<a href="#" id="ux-lightbox-navClose"></a>',"</div>","</div>","</div>","</div>","</div>"]},initEvents:function(){var f=function(g){g.preventDefault();this.close()};c.overlay.on("click",f,this);c.loadingLink.on("click",f,this);c.navClose.on("click",f,this);c.lightbox.on("click",function(g){if(g.getTarget().id=="ux-lightbox"){this.close()}},this);c.navPrev.on("click",function(g){g.preventDefault();this.setImage(a-1)},this);c.navNext.on("click",function(g){g.preventDefault();this.setImage(a+1)},this)},register:function(f,g){if(b.indexOf(f)===-1){b.push(f);Ext.fly(document).on("click",function(h){var j=h.getTarget(f);if(j){h.preventDefault();this.open(j,f,g)}},this)}},open:function(h,f,g){g=g||false;this.isRunning=true;this.setViewSize();c.overlay.fadeIn({duration:this.overlayDuration,endOpacity:this.overlayOpacity,callback:function(){d=[];var k=0;if(!g){d.push([h.href,h.title])}else{var l=Ext.query(f);Ext.each(l,function(o){if(o.href){d.push([o.href,o.title])}});while(d[k][0]!=h.href){k++}}var m=Ext.fly(document).getScroll();var n=m.top+(Ext.lib.Dom.getViewportHeight()/10);var j=m.left;c.lightbox.setStyle({top:n+"px",left:j+"px"}).show();this.setImage(k);this.fireEvent("open",d[k])},scope:this})},setViewSize:function(){if(this.isRunning){var f=this.getViewSize();c.overlay.setStyle({width:f[0]+"px",height:f[1]+"px"});c.shim.setStyle({width:f[0]+"px",height:f[1]+"px"}).show()}},setImage:function(f){if(this.isRunning){a=f;this.disableKeyNav();if(this.animate){c.loading.show()}c.image.hide();c.hoverNav.hide();c.navPrev.hide();c.navNext.hide();c.dataContainer.setOpacity(0.0001);c.imageNumber.hide();var g=new Image();g.onload=(function(){c.image.dom.src=d[a][0];this.resizeImage(g.width,g.height)}).createDelegate(this);g.src=d[a][0]}},resizeImage:function(n,j){if(this.isRunning){var p=c.outerImageContainer.getWidth();var m=c.outerImageContainer.getHeight();var l=(n+this.borderSize*2);var k=(j+this.borderSize*2);var o=p-l;var f=m-k;var g=0;if(f!=0||o!=0){c.outerImageContainer.syncFx().shift({height:k,duration:this.resizeDuration}).shift({width:l,duration:this.resizeDuration});g++}var q=0;if((f==0)&&(o==0)){q=(Ext.isIE)?250:100}(function(){c.hoverNav.setWidth(c.imageContainer.getWidth()+"px");c.navPrev.setHeight(j+"px");c.navNext.setHeight(j+"px");c.outerDataContainer.setWidth(l+"px");this.showImage()}).createDelegate(this).defer((this.resizeDuration*1000)+q)}},showImage:function(){if(this.isRunning){c.loading.hide();c.image.fadeIn({duration:this.resizeDuration,scope:this,callback:function(){this.updateDetails()}});this.preloadImages()}},updateDetails:function(){if(this.isRunning){c.details.setWidth((c.data.getWidth(true)-c.navClose.getWidth()-10)+"px");c.caption.update(d[a][1]);c.caption.show();if(d.length>1){c.imageNumber.update(this.labelImage+" "+(a+1)+" "+this.labelOf+"  "+d.length);c.imageNumber.show()}c.dataContainer.syncFx().slideIn("t",{duration:this.resizeDuration/2}).fadeIn({duration:this.resizeDuration/2,scope:this,callback:function(){var f=this.getViewSize();c.overlay.setHeight(f[1]+"px");this.updateNav()}})}},updateNav:function(){if(this.isRunning){this.enableKeyNav();c.hoverNav.show();if(a>0){c.navPrev.show()}if(a<(d.length-1)){c.navNext.show()}}},enableKeyNav:function(){Ext.fly(document).on("keydown",this.keyNavAction,this)},disableKeyNav:function(){Ext.fly(document).un("keydown",this.keyNavAction,this)},keyNavAction:function(f){var g=f.getKey();if(g==88||g==67||g==27){this.close()}else{if(g==80||g==37){if(a!=0){this.setImage(a-1)}}else{if(g==78||g==39){if(a!=(d.length-1)){this.setImage(a+1)}}}}},preloadImages:function(){var f,g;if(d.length>a+1){f=new Image();f.src=d[a+1][0]}if(a>0){g=new Image();g.src=d[a-1][0]}},close:function(){this.isRunning=false;this.disableKeyNav();c.lightbox.hide();c.overlay.fadeOut({duration:this.overlayDuration});c.shim.hide();this.fireEvent("close",a)},getViewSize:function(){return[Ext.lib.Dom.getViewWidth(),Ext.lib.Dom.getViewHeight()]}}})();Ext.ns("NMP2");NMP2.booleanString=function(a){return a?"true":"false"};NMP2.booleanValue=function(a){return a==="true"};NMP2.durationString=function(a){var c=NMP2.Tool.divideInteger;var b=function(d){return d<10?"0"+d:d};return String.format("{0}:{1}:{2}",b(c(a,3600)%24),b(c(a,60)%60),b(a%60))};NMP2.durationValue=function(a){var b=/([0-9]{2}):([0-9]{2}):([0-9]{2})/;var c=b.exec(a);if(!c){throw"Error parsing Duration string"}return((parseInt(c[1],10)%24)*3600)+((parseInt(c[2],10)%60)*60)+(parseInt(c[3],10)%60)};NMP2.integerString=function(a){return a.toString()};NMP2.integerValue=function(a){var b=/([\-\+]?[0-9]+)/;var c=b.exec(a);if(!c){throw"Error parsing Integer string"}return parseInt(c[1],10)};NMP2.integer64String=function(a){return a.toString()};NMP2.integer64Value=function(a){var b=/([\-\+]?[0-9]+)/;var c=b.exec(a);if(!c){throw"Error parsing Integer64 string"}return parseInt(c[1],10)};NMP2.realString=function(a){return a.toString()};NMP2.realValue=function(a){var b=/([\-\+]?[0-9]+\.[0-9]+)/;var c=b.exec(a);if(!c){throw"Error parsing Real string"}return parseInt(c[1],10)};NMP2.stringString=function(a){return a.toString()};NMP2.stringValue=function(a){return a};NMP2.timeString=function(a){a=a||new Date();var b=function(c){return c<10?"0"+c:c};return String.format("{0}-{1}-{2} {3}:{4}:{5}",a.getUTCFullYear(),b(a.getUTCMonth()+1),b(a.getUTCDate()),b(a.getUTCHours()),b(a.getUTCMinutes()),b(a.getUTCSeconds()))};NMP2.timeValue=function(a){var b=/([0-9]{4})\-([0-9]{2})\-([0-9]{2}).([0-9]{2})\:([0-9]{2})\:([0-9]{2})/;var d=b.exec(a);if(!d){throw"Error parsing Time string"}var c=new Date();c.setUTCFullYear(parseInt(d[1],10));c.setUTCMonth(parseInt(d[2],10)-1);c.setUTCDate(parseInt(d[3],10));c.setUTCHours(parseInt(d[4],10));c.setUTCMinutes(parseInt(d[5],10));c.setUTCSeconds(parseInt(d[6],10));return c};NMP2.uuidString=function(a){return a.toString()};NMP2.uuidValue=function(a){var b=/([0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12})/;var c=b.exec(a);if(!c){throw"Error parsing UUID string"}return c[1]};NMP2.console=(window.console&&window.console.firebug)?window.console:{log:function(){},debug:function(){},info:function(){},warn:function(){},error:function(){},assert:function(){},dir:function(){},dirxml:function(){},trace:function(){},group:function(){},groupEnd:function(){},time:function(){},timeEnd:function(){},profile:function(){},profileEnd:function(){},count:function(){}};NMP2.Tool=(function(){var c=0;var b=["en","ja"];var a="NMP2.Tool";var d={"x-blank-text":["This field is required","このフィールドが必要です"],"x-cancel":["Cancel","キャンセル"],"x-no":["No","いいえ"],"x-ok":["OK","OK"],"x-yes":["Yes","はい"]};return{divideInteger:function(e,f){return(e-(e%f))/f},getLanguage:function(){return b[c]},getName:function(){return a},getText:function(g,f){try{return g?f?f.getText()[g][c]:d[g][c]:d}catch(e){NMP2.console.debug(e,"("+g+")");return undefined}},reload:function(e){window.location.reload(e)},setLanguage:function(g,e){var f=b.indexOf(g.toLowerCase());if(f===-1){switch(g.toUpperCase()){case"GB":f=0;break;case"JP":f=1;break;default:f=0;break}}c=f;NMP2.localizeExt(f===1);if(e){window.location.reload(false)}}}}());Ext.apply(NMP2.Tool,new Ext.util.Observable());NMP2.get=NMP2.Tool.getText;NMP2.ADMINISTRATOR=16;NMP2.DEVELOPER=14;NMP2.INTEGRATOR=8;NMP2.MANAGER=6;NMP2.OPERATOR=4;NMP2.USER=2;NMP2.getUserStatus=function(){var d={status:-1};var b=NMP2.readCookies();b=b?b.user:null;if(b){var a=b.split("&");d.user=a.shift();Ext.each(a,function(f){f=f.split("=");var e=f[0];var g=f[1];if(e==="status"){g=parseInt(g,10);g=isNaN(g)?0:g}d[e]=g},this);for(var c in d){NMP2.console.log("%s = %s",c,(d[c]).toString())}}return d};NMP2.readCookies=function(){var d={};var g=document.cookie+";";var b=/\s?(.*?)=(.*?);/g;var f;while((f=b.exec(g))!=null){var a=f[1];var e=f[2];d[a]=e}return d};Date.patterns={ISO8601:"Y-m-d H:i:s",ISO8601Date:"Y-m-d",ISO8601TimeOfDay:"H:i:s"};NMP2.localizeExt=function(a){if(Ext.MessageBox){Ext.MessageBox.buttonText={ok:NMP2.get("x-ok"),cancel:NMP2.get("x-cancel"),yes:NMP2.get("x-yes"),no:NMP2.get("x-no")}}if(a){if(Ext.form.TextField){Ext.apply(Ext.form.TextField.prototype,{blankText:NMP2.get("x-blank-text"),regexText:"",emptyText:null})}}};Ext.ns("NMP2","NMP2.data");NMP2.data.PlayerScheduleReader=Ext.extend(Ext.data.DataReader,{read:function(b){var a=NMP2.XMLTool.processResponse(b);if(!a){throw {message:"NMP2.data.PlayerScheduleReader.read: Instance not found"}}var c=this.readRecords(a.get("data")||a);c.instance=a;return c},readRecords:function(j){var f=[];var h=this.recordType;var d=j.get("schedule")||j;if(d){var o=d.get("events")||[];var n=function(q){switch(q.toLowerCase()){case"sunday":return 0;case"monday":return 1;case"tuesday":return 2;case"wednesday":return 3;case"thursday":return 4;case"friday":return 5;case"saturday":return 6}};for(var a=0,b=o.length;a<b;a++){var c=o[a];var k=c.get("commands")||[];for(var m=0,l=k.length;m<l;m++){var g=k[m];var p={day:n(c.get("day")),time:c.get("time"),command:g.get("command"),commandIndex:m,parameter:g.get("title")||g.get("number")};var e=new h(p,null);f[f.length]=e}}}return{records:f,totalRecords:f.length}}});NMP2.data.PlayerScheduleRecord=Ext.data.Record.create([{name:"day"},{name:"time"},{name:"command"},{name:"commandIndex"},{parameter:"parameter"}]);NMP2.data.PlayerScheduleStore=function(a){a=a||{};NMP2.data.PlayerScheduleStore.superclass.constructor.call(this,Ext.apply(a,{proxy:a.proxy||(!a.data?new Ext.data.HttpProxy({url:a.url,listeners:a.listeners}):undefined),reader:a.reader||new NMP2.data.PlayerScheduleReader(a,a.fields||NMP2.data.PlayerScheduleRecord),sortInfo:{field:"overridden",direction:"ASC"}}))};Ext.extend(NMP2.data.PlayerScheduleStore,Ext.data.Store,{sortData:function(a,b){this.data.sort(b||"ASC",function(d,c){return d.data.day>c.data.day?1:(d.data.day<c.data.day?-1:(d.data.time>c.data.time?1:(d.data.time<c.data.time?-1:((d.data.commandIndex>c.data.commandIndex?1:-1)))))})}});Ext.reg("playerschedulestore",NMP2.data.PlayerScheduleStore);NMP2.data.XMLInstanceReader=Ext.extend(Ext.data.DataReader,{read:function(b){var a=NMP2.XMLTool.processResponse(b);if(!a){throw {message:"NMP2.data.XMLInstanceReader.read: Instance not found"}}return this.readRecords(a)},readRecords:function(o){var h=this.recordType,b=h.prototype.fields;var e=[];var q=o;for(var m=0;m<q.length;m++){var c=q[m];var s={};var a=c.getUUID();for(var l=0,t=b.length;l<t;l++){var p=b.items[l];var g=p.mapping!==undefined&&p.mapping!==null?p.mapping:p.name;var r=c.get(g);if(r===undefined){r=p.name==="#"?m+1:p.defaultValue}r=p.convert(r,c);s[p.name]=r}var d=new h(s,s["#"]||a);d.uuid=a;e[e.length]=d}return{records:e,totalRecords:e.length}}});NMP2.data.XMLInstanceStore=function(b){b=b||{};if(!b.reader&&!b.fields&&b.baseParams&&b.baseParams.key){b.fields=[];for(var a=0;a<b.baseParams.key.length;a++){b.fields[a]={name:b.baseParams.key[a]};if(!b.sortInfo){b.sortInfo={field:b.baseParams.key[a],direction:"ASC"}}}}NMP2.data.XMLInstanceStore.superclass.constructor.call(this,Ext.apply(b,{proxy:b.proxy||(!b.data?new Ext.data.HttpProxy({url:b.url,listeners:b.listeners}):undefined),reader:b.reader||new NMP2.data.XMLInstanceReader(b,b.fields)}))};Ext.extend(NMP2.data.XMLInstanceStore,Ext.data.GroupingStore);Ext.reg("xmlinstancestore",NMP2.data.XMLInstanceStore);Ext.ns("NMP2","NMP2.grid");NMP2.grid.RadioSelectionModel=Ext.extend(Ext.grid.RowSelectionModel,{dataIndex:"",fixed:true,header:"",id:"radio",menuDisabled:true,sortable:false,width:20,initEvents:function(){NMP2.grid.RadioSelectionModel.superclass.initEvents.call(this);this.grid.on("render",function(){var a=this.grid.getView();a.mainBody.on("mousedown",this.onMouseDown,this)},this)},onMouseDown:function(c,b){if(c.button===0&&b.className==="x-grid3-row-radio"){c.stopEvent();var d=c.getTarget(".x-grid3-row");if(d){var a=d.rowIndex;this.clearSelections();this.fireEvent("select",this,a);this.selectRow(a,true)}}else{c.stopEvent()}},renderer:function(a,c,b){return'<div class="x-grid3-row-radio">&#160;</div>'}});Ext.override(Ext.grid.CheckboxSelectionModel,{onMouseDown:function(c,b){if(c.button===0&&b.className==="x-grid3-row-checker"||false){c.stopEvent();var d=c.getTarget(".x-grid3-row");if(d){var a=d.rowIndex;if(this.isSelected(a)){this.fireEvent("deselect",this,a);this.deselectRow(a)}else{this.fireEvent("select",this,a);this.selectRow(a,true)}}}else{c.stopEvent()}}});Ext.ns("NMP2","NMP2.xml");NMP2.xml.Boolean=function(b){var c;function d(){return NMP2.booleanString(c)}function a(e){return(Ext.type(e)==="string")?NMP2.booleanValue(e):e}c=a(b);return{get:function(){return c},getItem:function(){return this},set:function(e){c=a(e)},toXMLString:function(e){return(e?e:"")+"<boolean>"+d()+"</boolean>"+(e?"\r\n":"")}}};NMP2.xml.Duration=function(d){var b;function c(){return NMP2.durationString(b)}function a(e){return(Ext.type(e)==="string")?NMP2.durationValue(e):e}b=a(d);return{get:function(){return b},getItem:function(){return this},set:function(e){b=a(e)},toXMLString:function(e){return(e?e:"")+"<duration>"+c()+"</duration>"+(e?"\r\n":"")}}};NMP2.xml.Instance=function(b,a){var d=a||{};var c;c=(Ext.type(b)==="string")?NMP2.uuidValue(b):b;return{eachItem:function(g,f){for(var e in d){var h=d[e];if(g.call(f||h,h,e,d)===false){return e}}},get:function(e){var g,f=e.split(".");e=f.shift()||f.shift();if(!e){return this}g=d[e];if(g){if(Ext.type(g)==="array"){return g}return g.get(f.join("."))}},getItem:function(e){var g,f=e.split(".");e=f.shift()||f.shift();if(!e){return this}g=d[e];if(g){if(Ext.type(g)==="array"){return g}return g.getItem(f.join("."))}},getUUID:function(){return c},removeItem:function(e){delete d[e]},setItem:function(e,f,g){if(g){d[e]=d[e]||[];d[e][d[e].length]=f}else{d[e]=f}},toXMLString:function(h){h=(h===true)?"":h;var m=((typeof h==="string")?"\r\n":"");var j=((typeof h==="string")?h+"":"");var g=((typeof h==="string")?h+"\t":"");var e=((typeof h==="string")?h+"\t\t":"");var l=j+"<instance";if(c){l+=' uuid="'+NMP2.uuidString(c)+'"'}l+=">"+m;for(var f in d){var k=d[f];if(Ext.type(k)==="array"){l+=g+'<properties key="'+f+'">'+m;l+=k.toXMLString(e||undefined);l+=g+"</properties>"+m}else{l+=g+'<property key="'+f+'">'+m;if(k){l+=k.toXMLString(e||undefined)}l+=g+"</property>"+m}}l+=j+"</instance>"+m;return l}}};NMP2.xml.Integer=function(a){var c;function d(){return NMP2.integerString(c)}function b(e){return(Ext.type(e)==="string")?NMP2.integerValue(e):e}c=b(a);return{get:function(){return c},getItem:function(){return this},set:function(e){c=b(e)},toXMLString:function(e){return(e?e:"")+"<integer>"+d()+"</integer>"+(e?"\r\n":"")}}};NMP2.xml.Integer64=function(c){var b;function d(){return NMP2.integer64String(b)}function a(e){return(Ext.type(e)==="string")?NMP2.integer64Value(e):e}b=a(c);return{get:function(){return b},getItem:function(){return this},set:function(e){b=a(e)},toXMLString:function(e){return(e?e:"")+"<integer64>"+d()+"</integer64>"+(e?"\r\n":"")}}};NMP2.xml.Real=function(d){var b;function c(){return NMP2.realString(b)}function a(e){return(Ext.type(e)==="string")?NMP2.realValue(e):e}b=a(d);return{get:function(){return b},getItem:function(){return this},set:function(e){b=a(e)},toXMLString:function(e){return(e?e:"")+"<real>"+c()+"</real>"+(e?"\r\n":"")}}};NMP2.xml.String=function(a){var c;function d(){return NMP2.stringString(c)}function b(e){return(Ext.type(e)==="string")?NMP2.stringValue(e):e}c=b(a);return{get:function(){return c},getItem:function(){return this},set:function(e){c=b(e)},toXMLString:function(f){var e=d().replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return(f?f:"")+"<string>"+e+"</string>"+(f?"\r\n":"")}}};NMP2.xml.Time=function(c){var b;function d(){return NMP2.timeString(b)}function a(e){return(Ext.type(e)==="string")?NMP2.timeValue(e):(e||new Date())}b=a(c);return{get:function(){return b},getItem:function(){return this},set:function(e){b=a(e)},toXMLString:function(e){return(e?e:"")+"<time>"+d()+"</time>"+(e?"\r\n":"")}}};NMP2.xml.UUID=function(a){var c;function d(){return NMP2.uuidString(c)}function b(e){return(Ext.type(e)==="string")?NMP2.uuidValue(e):e}c=b(a);return{get:function(){return c},getItem:function(){return this},set:function(e){c=b(e)},toXMLString:function(e){return(e?e:"")+"<uuid>"+d()+"</uuid>"+(e?"\r\n":"")}}};NMP2.xml.XMLTool=(function(){var c=1;var b=3;function a(g){var h=g.firstChild?g.firstChild.nodeValue:undefined;switch(g.tagName){case"instance":var f=g.attributes.getNamedItem("uuid");var e=new NMP2.xml.Instance(f?f.nodeValue:undefined);Ext.each(g.childNodes,function(n,l,k){if(n.nodeType===c){switch(n.tagName){case"properties":case"property":var m=n.attributes.getNamedItem("key");Ext.each(n.childNodes,function(r,q,p){if(r.nodeType===c){e.setItem(m.nodeValue,a(r),r.parentNode.tagName==="properties")}else{if(r.nodeType===b){var s=r.nodeValue.trim();if(s.length>0){throw"Unexpected text: "+s}}}},this);break;default:throw"Unknown type: "+n.tagName}}else{if(n.nodeType===b){var o=n.nodeValue.trim();if(o.length>0){throw"Unexpected text: "+o}}}},this);return e;case"instances":var j=[];Ext.each(g.childNodes,function(m,l,k){if(m.nodeType===c){j[j.length]=a(m)}else{if(m.nodeType===b){var n=m.nodeValue.trim();if(n.length>0){throw"Unexpected text: "+n}}}},this);return j;case"boolean":return(new NMP2.xml.Boolean(h));case"duration":return(new NMP2.xml.Duration(h));case"integer":return(new NMP2.xml.Integer(h));case"integer64":return(new NMP2.xml.Integer64(h));case"real":return(new NMP2.xml.Real(h));case"string":return(new NMP2.xml.String(h));case"time":return(new NMP2.xml.Time(h));case"uuid":return(new NMP2.xml.UUID(h));default:throw"Unknown type: "+g.tagName}}function d(f){if(window.ActiveXObject){var e=new ActiveXObject("Microsoft.XMLDOM");e.async="false";return(e.loadXML(f)?e:undefined)}else{var g=new DOMParser();return g.parseFromString(f,"text/xml")}}return{parseString:function(g,f){if(f){return d(g)}try{return d(g)}catch(e){NMP2.console.debug(e)}},processNode:function(g,f){if(f){return a(g)}try{return a(g)}catch(e){NMP2.console.debug(e)}},processResponse:function(g,f){var h=function(l){var k=l.responseXML;var j=k.documentElement||k;return a(j)};if(f){return h(g)}try{return h(g)}catch(e){NMP2.console.debug(e)}},processString:function(g,f){var h=function(l){var k=d(l);var j=k.documentElement||k;return a(j)};if(f){return g?h(g):undefined}try{return g?h(g):undefined}catch(e){NMP2.console.debug(e)}},processXMLData:function(e,g){var h=function(k){var j=k.documentElement||k;return a(j)};if(g){return h(e)}try{return h(e)}catch(f){NMP2.console.debug(f)}}}}());Ext.apply(NMP2.xml.XMLTool,new Ext.util.Observable());Ext.override(Array,{getItem:function(a){for(var b=0;b<this.length;b++){if(this[b].getUUID()===a){return this[b]}}},toXMLString:function(a,d){a=(d===true)?(a===true)?"\t":a:a;for(var b=0,c="";b<this.length;b++){c+=this[b].toXMLString(a)}if(d){c="<instances>"+(a?"\r\n":"")+c+"</instances>"+(a?"\r\n":"")}return c}});NMP2.XMLTool=NMP2.xml.XMLTool;Ext.ux.Portal=Ext.extend(Ext.Panel,{layout:"column",autoScroll:true,cls:"x-portal",defaultType:"portalcolumn",initComponent:function(){Ext.ux.Portal.superclass.initComponent.call(this);this.addEvents({validatedrop:true,beforedragover:true,dragover:true,beforedrop:true,drop:true})},initEvents:function(){Ext.ux.Portal.superclass.initEvents.call(this);this.dd=new Ext.ux.Portal.DropZone(this,this.dropConfig)},beforeDestroy:function(){if(this.dd){this.dd.unreg()}Ext.ux.Portal.superclass.beforeDestroy.call(this)}});Ext.reg("portal",Ext.ux.Portal);Ext.ux.Portal.DropZone=function(b,a){this.portal=b;Ext.dd.ScrollManager.register(b.body);Ext.ux.Portal.DropZone.superclass.constructor.call(this,b.bwrap.dom,a);b.body.ddScrollConfig=this.ddScrollConfig};Ext.extend(Ext.ux.Portal.DropZone,Ext.dd.DropTarget,{ddScrollConfig:{vthresh:50,hthresh:-1,animate:true,increment:200},createEvent:function(a,f,d,b,h,g){return{portal:this.portal,panel:d.panel,columnIndex:b,column:h,position:g,data:d,source:a,rawEvent:f,status:this.dropAllowed}},notifyOver:function(x,u,y){var g=u.getXY(),n=this.portal,o=x.proxy;if(!this.grid){this.grid=this.getGrid()}var b=n.body.dom.clientWidth;if(!this.lastCW){this.lastCW=b}else{if(this.lastCW!=b){this.lastCW=b;n.doLayout();this.grid=this.getGrid()}}var f=0,m=this.grid.columnX,a=false;for(var t=m.length;f<t;f++){if(g[0]<(m[f].x+m[f].w)){a=true;break}}if(!a){f--}var r,l=false,j=0,w=n.items.itemAt(f),q=w.items.items,k=false;for(var t=q.length;j<t;j++){r=q[j];var s=r.el.getHeight();if(s===0){k=true}else{if((r.el.getY()+(s/2))>g[1]){l=true;break}}}j=(l&&r?j:w.items.getCount())+(k?-1:0);var d=this.createEvent(x,u,y,f,w,j);if(n.fireEvent("validatedrop",d)!==false&&n.fireEvent("beforedragover",d)!==false){o.getProxy().setWidth("auto");if(r){o.moveProxy(r.el.dom.parentNode,l?r.el.dom:null)}else{o.moveProxy(w.el.dom,null)}this.lastPos={c:w,col:f,p:k||(l&&r)?j:false};this.scrollPos=n.body.getScroll();n.fireEvent("dragover",d);return d.status}else{return d.status}},notifyOut:function(){delete this.grid},notifyDrop:function(l,g,b){delete this.grid;if(!this.lastPos){return}var j=this.lastPos.c,a=this.lastPos.col,k=this.lastPos.p;var f=this.createEvent(l,g,b,a,j,k!==false?k:j.items.getCount());if(this.portal.fireEvent("validatedrop",f)!==false&&this.portal.fireEvent("beforedrop",f)!==false){l.proxy.getProxy().remove();l.panel.el.dom.parentNode.removeChild(l.panel.el.dom);if(k!==false){if(j==l.panel.ownerCt&&(j.items.items.indexOf(l.panel)<=k)){k++}j.insert(k,l.panel)}else{j.add(l.panel)}j.doLayout();this.portal.fireEvent("drop",f);var m=this.scrollPos.top;if(m){var h=this.portal.body.dom;setTimeout(function(){h.scrollTop=m},10)}}delete this.lastPos},getGrid:function(){var a=this.portal.bwrap.getBox();a.columnX=[];this.portal.items.each(function(b){a.columnX.push({x:b.el.getX(),w:b.el.getWidth()})});return a},unreg:function(){Ext.ux.Portal.DropZone.superclass.unreg.call(this)}});Ext.ux.PortalColumn=Ext.extend(Ext.Container,{layout:"anchor",autoEl:"div",defaultType:"portlet",cls:"x-portal-column"});Ext.reg("portalcolumn",Ext.ux.PortalColumn);Ext.ux.Portlet=Ext.extend(Ext.Panel,{anchor:"100%",frame:true,collapsible:true,draggable:true,cls:"x-portlet"});Ext.reg("portlet",Ext.ux.Portlet);Ext.ns("Ext.ux.grid");Ext.ux.grid.Search=function(a){Ext.apply(this,a);Ext.ux.grid.Search.superclass.constructor.call(this)};Ext.extend(Ext.ux.grid.Search,Ext.util.Observable,{searchText:"Search",searchTipText:"Type a text to search and press Enter",selectAllText:"Select All",position:"bottom",iconCls:"icon-magnifier",checkIndexes:"all",disableIndexes:[],dateFormat:undefined,showSelectAll:true,menuStyle:"checkbox",minCharsTipText:"Type at least {0} characters",mode:"remote",width:100,xtype:"gridsearch",paramNames:{fields:"fields",query:"query"},shortcutKey:"r",shortcutModifier:"alt",init:function(a){this.grid=a;if("string"===typeof this.toolbarContainer){this.toolbarContainer=Ext.getCmp(this.toolbarContainer)}a.onRender=a.onRender.createSequence(this.onRender,this);a.reconfigure=a.reconfigure.createSequence(this.reconfigure,this)},onRender:function(){var b=this.toolbarContainer||this.grid;var a="bottom"===this.position?b.bottomToolbar:b.topToolbar;this.menu=new Ext.menu.Menu();if("right"===this.align){a.addFill()}else{if(0<a.items.getCount()){a.addSeparator()}}a.add({text:this.searchText,menu:this.menu,iconCls:this.iconCls});if(this.minChars){this.field=new Ext.form.TriggerField({id:this.id,width:this.width,selectOnFocus:undefined===this.selectOnFocus?true:this.selectOnFocus,triggerClass:"x-form-clear-trigger",onTriggerClick:this.onTriggerClear.createDelegate(this),minLength:this.minLength})}else{this.field=new Ext.form.TwinTriggerField({id:this.id,width:this.width,selectOnFocus:undefined===this.selectOnFocus?true:this.selectOnFocus,trigger1Class:"x-form-clear-trigger",trigger2Class:this.minChars?"x-hidden":"x-form-search-trigger",onTrigger1Click:this.onTriggerClear.createDelegate(this),onTrigger2Click:this.onTriggerSearch.createDelegate(this),minLength:this.minLength})}this.field.on("render",function(){this.field.el.dom.qtip=this.minChars?String.format(this.minCharsTipText,this.minChars):this.searchTipText;if(this.minChars){this.field.el.on({scope:this,buffer:300,keyup:this.onKeyUp})}var e=new Ext.KeyMap(this.field.el,[{key:Ext.EventObject.ENTER,scope:this,fn:this.onTriggerSearch},{key:Ext.EventObject.ESC,scope:this,fn:this.onTriggerClear}]);e.stopEvent=true},this,{single:true});a.add(this.field);this.reconfigure();if(this.shortcutKey&&this.shortcutModifier){var d=this.grid.getEl();var c=[{key:this.shortcutKey,scope:this,stopEvent:true,fn:function(){this.field.focus()}}];c[0][this.shortcutModifier]=true;this.keymap=new Ext.KeyMap(d,c)}if(true===this.autoFocus){this.grid.store.on({scope:this,load:function(){this.field.focus()}})}},onKeyUp:function(){var a=this.field.getValue().toString().length;if(0===a||this.minChars<=a){this.onTriggerSearch()}else{this.grid.store.clearFilter()}},onTriggerClear:function(){if(this.field.getValue()){this.field.setValue("");this.field.focus();this.onTriggerSearch()}},onTriggerSearch:function(){if(!this.field.isValid()){return}var c=this.field.getValue();var a=this.grid.store;if("local"===this.mode){a.clearFilter();if(c){a.filterBy(function(e){var d=false;this.menu.items.each(function(g){if(!g.checked||d){return}var h=e.get(g.dataIndex);h=h instanceof Date?h.format(this.dateFormat||e.fields.get(g.dataIndex).dateFormat):h;var f=new RegExp(c,"gi");d=f.test(h)},this);if(d){return true}return d},this)}else{}}else{if(a.lastOptions&&a.lastOptions.params){a.lastOptions.params[a.paramNames.start]=0}var b=[];this.menu.items.each(function(d){if(d.checked){b.push(d.dataIndex)}});delete (a.baseParams[this.paramNames.fields]);delete (a.baseParams[this.paramNames.query]);if(a.lastOptions&&a.lastOptions.params){delete (a.lastOptions.params[this.paramNames.fields]);delete (a.lastOptions.params[this.paramNames.query])}if(b.length){a.baseParams[this.paramNames.fields]=Ext.encode(b);a.baseParams[this.paramNames.query]=c}a.reload()}},setDisabled:function(){this.field.setDisabled.apply(this.field,arguments)},enable:function(){this.setDisabled(false)},disable:function(){this.setDisabled(true)},reconfigure:function(){var c=this.menu;c.removeAll();if(this.showSelectAll&&"radio"!==this.menuStyle){c.add(new Ext.menu.CheckItem({text:this.selectAllText,checked:!(this.checkIndexes instanceof Array),hideOnClick:false,handler:function(e){var d=!e.checked;e.parentMenu.items.each(function(f){if(e!==f&&f.setChecked&&!f.disabled){f.setChecked(d)}})}}),"-")}var a=this.grid.colModel;var b=undefined;if("radio"===this.menuStyle){b="g"+(new Date).getTime()}Ext.each(a.config,function(e){var d=false;if(e.header&&e.dataIndex){Ext.each(this.disableIndexes,function(f){d=d?d:f===e.dataIndex});if(!d){c.add(new Ext.menu.CheckItem({text:e.header,hideOnClick:false,group:b,checked:"all"===this.checkIndexes,dataIndex:e.dataIndex}))}}},this);if(this.checkIndexes instanceof Array){Ext.each(this.checkIndexes,function(e){var d=c.items.find(function(f){return f.dataIndex===e});if(d){d.setChecked(true,true)}},this)}if(this.readonlyIndexes instanceof Array){Ext.each(this.readonlyIndexes,function(e){var d=c.items.find(function(f){return f.dataIndex===e});if(d){d.disable()}},this)}}});Ext.override(Ext.data.Store,{sortByFields:function(d){var a=[];for(var b=0;b<d.length;b++){if(typeof d[b]=="string"){d[b]={field:d[b],direction:"ASC"}}a.push(this.fields.get(d[b].field).sortType)}var c=function(f,e){var h;for(var g=0;!h&&g<d.length;g++){var k=a[g](f.data[d[g].field]);var j=a[g](e.data[d[g].field]);h=(k>j)?1:((k<j)?-1:0);if(d[g].direction=="DESC"){h=-h}}return h};this.data.sort("ASC",c);if(this.snapshot&&this.snapshot!=this.data){this.snapshot.sort("ASC",c)}this.fireEvent("datachanged",this)}});Ext.ux.XmlTreeLoader=Ext.extend(Ext.tree.TreeLoader,{XML_NODE_ELEMENT:1,XML_NODE_TEXT:3,processResponse:function(c,d,g){var b=c.responseXML;var a=b.documentElement||b;try{d.beginUpdate();d.appendChild(this.parseXml(a));d.endUpdate();if(typeof g=="function"){g(this,d)}}catch(f){this.handleFailure(c)}},parseXml:function(b){var a=[];Ext.each(b.childNodes,function(f){if(f.nodeType==this.XML_NODE_ELEMENT){var c=this.createNode(f);if(f.childNodes.length>0){var e=this.parseXml(f);if(typeof e=="string"){c.attributes.innerText=e}else{c.appendChild(e)}}a.push(c)}else{if(f.nodeType==this.XML_NODE_TEXT){var d=f.nodeValue.trim();if(d.length>0){return a=d}}}},this);return a},createNode:function(b){var a={tagName:b.tagName};Ext.each(b.attributes,function(c){a[c.nodeName]=c.nodeValue});this.processAttributes(a);return Ext.ux.XmlTreeLoader.superclass.createNode.call(this,a)},processAttributes:Ext.emptyFn});