(function(){var sMap=null;if((sMap||(typeof djConfig!="undefined"&&djConfig.scopeMap))&&(typeof window!="undefined")){var scopeDef="",scopePrefix="",scopeSuffix="",scopeMap={},scopeMapRev={};sMap=sMap||djConfig.scopeMap;for(var i=0;i<sMap.length;i++){var newScope=sMap[i];scopeDef+="var "+newScope[0]+" = {}; "+newScope[1]+" = "+newScope[0]+";"+newScope[1]+"._scopeName = '"+newScope[1]+"';";scopePrefix+=(i==0?"":",")+newScope[0];scopeSuffix+=(i==0?"":",")+newScope[1];scopeMap[newScope[0]]=newScope[1];scopeMapRev[newScope[1]]=newScope[0]}eval(scopeDef+"dojo._scopeArgs = ["+scopeSuffix+"];");dojo._scopePrefixArgs=scopePrefix;dojo._scopePrefix="(function("+scopePrefix+"){";dojo._scopeSuffix="})("+scopeSuffix+")";dojo._scopeMap=scopeMap;dojo._scopeMapRev=scopeMapRev}(function(){if(typeof this["loadFirebugConsole"]=="function"){this["loadFirebugConsole"]()}else{this.console=this.console||{};var cn=["assert","count","debug","dir","dirxml","error","group","groupEnd","info","profile","profileEnd","time","timeEnd","trace","warn","log"];var i=0,tn;while((tn=cn[i++])){if(!console[tn]){(function(){var tcn=tn+"";console[tcn]=("log" in console)?function(){var a=Array.apply({},arguments);a.unshift(tcn+":");console["log"](a.join(" "))}:function(){}})()}}}if(typeof dojo=="undefined"){this.dojo={_scopeName:"dojo",_scopePrefix:"",_scopePrefixArgs:"",_scopeSuffix:"",_scopeMap:{},_scopeMapRev:{}}}var d=dojo;if(typeof dijit=="undefined"){this.dijit={_scopeName:"dijit"}}if(typeof dojox=="undefined"){this.dojox={_scopeName:"dojox"}}if(!d._scopeArgs){d._scopeArgs=[dojo,dijit,dojox]}d.global=this;d.config={isDebug:false,debugAtAllCosts:false};if(typeof djConfig!="undefined"){for(var opt in djConfig){d.config[opt]=djConfig[opt]}}dojo.locale=d.config.locale;var rev="$Rev: 17468 $".match(/\d+/);dojo.version={major:1,minor:3,patch:1,flag:"",revision:rev?+rev[0]:NaN,toString:function(){with(d.version){return major+"."+minor+"."+patch+flag+" ("+revision+")"}}};if(typeof OpenAjax!="undefined"){OpenAjax.hub.registerLibrary(dojo._scopeName,"http://dojotoolkit.org",d.version.toString())}var tobj={};dojo._mixin=function(obj,props){for(var x in props){if(tobj[x]===undefined||tobj[x]!=props[x]){obj[x]=props[x]}}if(d.isIE&&props){var p=props.toString;if(typeof p=="function"&&p!=obj.toString&&p!=tobj.toString&&p!="\nfunction toString() {\n    [native code]\n}\n"){obj.toString=props.toString}}return obj};dojo.mixin=function(obj,props){if(!obj){obj={}}for(var i=1,l=arguments.length;i<l;i++){d._mixin(obj,arguments[i])}return obj};dojo._getProp=function(parts,create,context){var obj=context||d.global;for(var i=0,p;obj&&(p=parts[i]);i++){if(i==0&&this._scopeMap[p]){p=this._scopeMap[p]}obj=(p in obj?obj[p]:(create?obj[p]={}:undefined))}return obj};dojo.setObject=function(name,value,context){var parts=name.split("."),p=parts.pop(),obj=d._getProp(parts,true,context);return obj&&p?(obj[p]=value):undefined};dojo.getObject=function(name,create,context){return d._getProp(name.split("."),create,context)};dojo.exists=function(name,obj){return !!d.getObject(name,false,obj)};dojo["eval"]=function(scriptFragment){return d.global.eval?d.global.eval(scriptFragment):eval(scriptFragment)};d.deprecated=d.experimental=function(){}})();(function(){var d=dojo;d.mixin(d,{_loadedModules:{},_inFlightCount:0,_hasResource:{},_modulePrefixes:{dojo:{name:"dojo",value:"."},doh:{name:"doh",value:"../util/doh"},tests:{name:"tests",value:"tests"}},_moduleHasPrefix:function(module){var mp=this._modulePrefixes;return !!(mp[module]&&mp[module].value)},_getModulePrefix:function(module){var mp=this._modulePrefixes;if(this._moduleHasPrefix(module)){return mp[module].value}return module},_loadedUrls:[],_postLoad:false,_loaders:[],_unloaders:[],_loadNotifying:false});dojo._loadPath=function(relpath,module,cb){var uri=((relpath.charAt(0)=="/"||relpath.match(/^\w+:/))?"":this.baseUrl)+relpath;try{return !module?this._loadUri(uri,cb):this._loadUriAndCheck(uri,module,cb)}catch(e){console.error(e);return false}};dojo._loadUri=function(uri,cb){if(this._loadedUrls[uri]){return true}var contents=this._getText(uri,true);if(!contents){return false}this._loadedUrls[uri]=true;this._loadedUrls.push(uri);if(cb){contents="("+contents+")"}else{contents=this._scopePrefix+contents+this._scopeSuffix}if(d.isMoz){contents+="\r\n//@ sourceURL="+uri}var value=d["eval"](contents);if(cb){cb(value)}return true};dojo._loadUriAndCheck=function(uri,moduleName,cb){var ok=false;try{ok=this._loadUri(uri,cb)}catch(e){console.error("failed loading "+uri+" with error: "+e)}return !!(ok&&this._loadedModules[moduleName])};dojo.loaded=function(){this._loadNotifying=true;this._postLoad=true;var mll=d._loaders;this._loaders=[];for(var x=0;x<mll.length;x++){mll[x]()}this._loadNotifying=false;if(d._postLoad&&d._inFlightCount==0&&mll.length){d._callLoaded()}};dojo.unloaded=function(){var mll=d._unloaders;while(mll.length){(mll.pop())()}};d._onto=function(arr,obj,fn){if(!fn){arr.push(obj)}else{if(fn){var func=(typeof fn=="string")?obj[fn]:fn;arr.push(function(){func.call(obj)})}}};dojo.addOnLoad=function(obj,functionName){d._onto(d._loaders,obj,functionName);if(d._postLoad&&d._inFlightCount==0&&!d._loadNotifying){d._callLoaded()}};var dca=d.config.addOnLoad;if(dca){d.addOnLoad[(dca instanceof Array?"apply":"call")](d,dca)}dojo._modulesLoaded=function(){if(d._postLoad){return }if(d._inFlightCount>0){console.warn("files still in flight!");return }d._callLoaded()};dojo._callLoaded=function(){if(typeof setTimeout=="object"||(dojo.config.useXDomain&&d.isOpera)){if(dojo.isAIR){setTimeout(function(){dojo.loaded()},0)}else{setTimeout(dojo._scopeName+".loaded();",0)}}else{d.loaded()}};dojo._getModuleSymbols=function(modulename){var syms=modulename.split(".");for(var i=syms.length;i>0;i--){var parentModule=syms.slice(0,i).join(".");if((i==1)&&!this._moduleHasPrefix(parentModule)){syms[0]="../"+syms[0]}else{var parentModulePath=this._getModulePrefix(parentModule);if(parentModulePath!=parentModule){syms.splice(0,i,parentModulePath);break}}}return syms};dojo._global_omit_module_check=false;dojo.loadInit=function(init){init()};dojo._loadModule=dojo.require=function(moduleName,omitModuleCheck){omitModuleCheck=this._global_omit_module_check||omitModuleCheck;var module=this._loadedModules[moduleName];if(module){return module}var relpath=this._getModuleSymbols(moduleName).join("/")+".js";var modArg=(!omitModuleCheck)?moduleName:null;var ok=this._loadPath(relpath,modArg);if(!ok&&!omitModuleCheck){throw new Error("Could not load '"+moduleName+"'; last tried '"+relpath+"'")}if(!omitModuleCheck&&!this._isXDomain){module=this._loadedModules[moduleName];if(!module){throw new Error("symbol '"+moduleName+"' is not defined after loading '"+relpath+"'")}}return module};dojo.provide=function(resourceName){resourceName=resourceName+"";return(d._loadedModules[resourceName]=d.getObject(resourceName,true))};dojo.platformRequire=function(modMap){var common=modMap.common||[];var result=common.concat(modMap[d._name]||modMap["default"]||[]);for(var x=0;x<result.length;x++){var curr=result[x];if(curr.constructor==Array){d._loadModule.apply(d,curr)}else{d._loadModule(curr)}}};dojo.requireIf=function(condition,resourceName){if(condition===true){var args=[];for(var i=1;i<arguments.length;i++){args.push(arguments[i])}d.require.apply(d,args)}};dojo.requireAfterIf=d.requireIf;dojo.registerModulePath=function(module,prefix){d._modulePrefixes[module]={name:module,value:prefix}};dojo.requireLocalization=function(moduleName,bundleName,locale,availableFlatLocales){d.require("dojo.i18n");d.i18n._requireLocalization.apply(d.hostenv,arguments)};var ore=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$");var ire=new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$");dojo._Url=function(){var n=null;var _a=arguments;var uri=[_a[0]];for(var i=1;i<_a.length;i++){if(!_a[i]){continue}var relobj=new d._Url(_a[i]+"");var uriobj=new d._Url(uri[0]+"");if(relobj.path==""&&!relobj.scheme&&!relobj.authority&&!relobj.query){if(relobj.fragment!=n){uriobj.fragment=relobj.fragment}relobj=uriobj}else{if(!relobj.scheme){relobj.scheme=uriobj.scheme;if(!relobj.authority){relobj.authority=uriobj.authority;if(relobj.path.charAt(0)!="/"){var path=uriobj.path.substring(0,uriobj.path.lastIndexOf("/")+1)+relobj.path;var segs=path.split("/");for(var j=0;j<segs.length;j++){if(segs[j]=="."){if(j==segs.length-1){segs[j]=""}else{segs.splice(j,1);j--}}else{if(j>0&&!(j==1&&segs[0]=="")&&segs[j]==".."&&segs[j-1]!=".."){if(j==(segs.length-1)){segs.splice(j,1);segs[j-1]=""}else{segs.splice(j-1,2);j-=2}}}}relobj.path=segs.join("/")}}}}uri=[];if(relobj.scheme){uri.push(relobj.scheme,":")}if(relobj.authority){uri.push("//",relobj.authority)}uri.push(relobj.path);if(relobj.query){uri.push("?",relobj.query)}if(relobj.fragment){uri.push("#",relobj.fragment)}}this.uri=uri.join("");var r=this.uri.match(ore);this.scheme=r[2]||(r[1]?"":n);this.authority=r[4]||(r[3]?"":n);this.path=r[5];this.query=r[7]||(r[6]?"":n);this.fragment=r[9]||(r[8]?"":n);if(this.authority!=n){r=this.authority.match(ire);this.user=r[3]||n;this.password=r[4]||n;this.host=r[6]||r[7];this.port=r[9]||n}};dojo._Url.prototype.toString=function(){return this.uri};dojo.moduleUrl=function(module,url){var loc=d._getModuleSymbols(module).join("/");if(!loc){return null}if(loc.lastIndexOf("/")!=loc.length-1){loc+="/"}var colonIndex=loc.indexOf(":");if(loc.charAt(0)!="/"&&(colonIndex==-1||colonIndex>loc.indexOf("/"))){loc=d.baseUrl+loc}return new d._Url(loc,url)}})();if(typeof window!="undefined"){dojo.isBrowser=true;dojo._name="browser";(function(){var d=dojo;if(document&&document.getElementsByTagName){var scripts=document.getElementsByTagName("script");var rePkg=/dojo(\.xd)?\.js(\W|$)/i;for(var i=0;i<scripts.length;i++){var src=scripts[i].getAttribute("src");if(!src){continue}var m=src.match(rePkg);if(m){if(!d.config.baseUrl){d.config.baseUrl=src.substring(0,m.index)}var cfg=scripts[i].getAttribute("djConfig");if(cfg){var cfgo=eval("({ "+cfg+" })");for(var x in cfgo){dojo.config[x]=cfgo[x]}}break}}}d.baseUrl=d.config.baseUrl;var n=navigator;var dua=n.userAgent,dav=n.appVersion,tv=parseFloat(dav);if(dua.indexOf("Opera")>=0){d.isOpera=tv}if(dua.indexOf("AdobeAIR")>=0){d.isAIR=1}d.isKhtml=(dav.indexOf("Konqueror")>=0)?tv:0;d.isWebKit=parseFloat(dua.split("WebKit/")[1])||undefined;d.isChrome=parseFloat(dua.split("Chrome/")[1])||undefined;var index=Math.max(dav.indexOf("WebKit"),dav.indexOf("Safari"),0);if(index&&!dojo.isChrome){d.isSafari=parseFloat(dav.split("Version/")[1]);if(!d.isSafari||parseFloat(dav.substr(index+7))<=419.3){d.isSafari=2}}if(dua.indexOf("Gecko")>=0&&!d.isKhtml&&!d.isWebKit){d.isMozilla=d.isMoz=tv}if(d.isMoz){d.isFF=parseFloat(dua.split("Firefox/")[1]||dua.split("Minefield/")[1]||dua.split("Shiretoko/")[1])||undefined}if(document.all&&!d.isOpera){d.isIE=parseFloat(dav.split("MSIE ")[1])||undefined;if(d.isIE>=8&&document.documentMode!=5){d.isIE=document.documentMode}}if(dojo.isIE&&window.location.protocol==="file:"){dojo.config.ieForceActiveXXhr=true}var cm=document.compatMode;d.isQuirks=cm=="BackCompat"||cm=="QuirksMode"||d.isIE<6;d.locale=dojo.config.locale||(d.isIE?n.userLanguage:n.language).toLowerCase();d._XMLHTTP_PROGIDS=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"];d._xhrObj=function(){var http,last_e;if(!dojo.isIE||!dojo.config.ieForceActiveXXhr){try{http=new XMLHttpRequest()}catch(e){}}if(!http){for(var i=0;i<3;++i){var progid=d._XMLHTTP_PROGIDS[i];try{http=new ActiveXObject(progid)}catch(e){last_e=e}if(http){d._XMLHTTP_PROGIDS=[progid];break}}}if(!http){throw new Error("XMLHTTP not available: "+last_e)}return http};d._isDocumentOk=function(http){var stat=http.status||0;return(stat>=200&&stat<300)||stat==304||stat==1223||(!stat&&(location.protocol=="file:"||location.protocol=="chrome:"))};var owloc=window.location+"";var base=document.getElementsByTagName("base");var hasBase=(base&&base.length>0);d._getText=function(uri,fail_ok){var http=this._xhrObj();if(!hasBase&&dojo._Url){uri=(new dojo._Url(owloc,uri)).toString()}if(d.config.cacheBust){uri+="";uri+=(uri.indexOf("?")==-1?"?":"&")+String(d.config.cacheBust).replace(/\W+/g,"")}http.open("GET",uri,false);try{http.send(null);if(!d._isDocumentOk(http)){var err=Error("Unable to load "+uri+" status:"+http.status);err.status=http.status;err.responseText=http.responseText;throw err}}catch(e){if(fail_ok){return null}throw e}return http.responseText};var _w=window;var _handleNodeEvent=function(evtName,fp){var oldHandler=_w[evtName]||function(){};_w[evtName]=function(){fp.apply(_w,arguments);oldHandler.apply(_w,arguments)}};d._windowUnloaders=[];d.windowUnloaded=function(){var mll=d._windowUnloaders;while(mll.length){(mll.pop())()}};var _onWindowUnloadAttached=0;d.addOnWindowUnload=function(obj,functionName){d._onto(d._windowUnloaders,obj,functionName);if(!_onWindowUnloadAttached){_onWindowUnloadAttached=1;_handleNodeEvent("onunload",d.windowUnloaded)}};var _onUnloadAttached=0;d.addOnUnload=function(obj,functionName){d._onto(d._unloaders,obj,functionName);if(!_onUnloadAttached){_onUnloadAttached=1;_handleNodeEvent("onbeforeunload",dojo.unloaded)}}})();dojo._initFired=false;dojo._loadInit=function(e){dojo._initFired=true;var type=e&&e.type?e.type.toLowerCase():"load";if(arguments.callee.initialized||(type!="domcontentloaded"&&type!="load")){return }arguments.callee.initialized=true;if("_khtmlTimer" in dojo){clearInterval(dojo._khtmlTimer);delete dojo._khtmlTimer}if(dojo._inFlightCount==0){dojo._modulesLoaded()}};if(!dojo.config.afterOnLoad){if(document.addEventListener){if(dojo.isWebKit>525||dojo.isOpera||dojo.isFF>=3||(dojo.isMoz&&dojo.config.enableMozDomContentLoaded===true)){document.addEventListener("DOMContentLoaded",dojo._loadInit,null)}window.addEventListener("load",dojo._loadInit,null)}if(dojo.isAIR){window.addEventListener("load",dojo._loadInit,null)}else{if((dojo.isWebKit<525)||dojo.isKhtml){dojo._khtmlTimer=setInterval(function(){if(/loaded|complete/.test(document.readyState)){dojo._loadInit()}},10)}}}if(dojo.isIE){if(!dojo.config.afterOnLoad){document.write('<script defer src="//:" onreadystatechange="if(this.readyState==\'complete\'){'+dojo._scopeName+'._loadInit();}"><\/script>')}try{document.namespaces.add("v","urn:schemas-microsoft-com:vml");document.createStyleSheet().addRule("v\\:*","behavior:url(#default#VML);  display:inline-block")}catch(e){}}}(function(){var mp=dojo.config["modulePaths"];if(mp){for(var param in mp){dojo.registerModulePath(param,mp[param])}}})();if(dojo.config.isDebug){dojo.require("dojo._firebug.firebug")}if(dojo.config.debugAtAllCosts){dojo.config.useXDomain=true;dojo.require("dojo._base._loader.loader_xd");dojo.require("dojo._base._loader.loader_debug")}if(!dojo._hasResource["dojo._base.lang"]){dojo._hasResource["dojo._base.lang"]=true;dojo.provide("dojo._base.lang");dojo.isString=function(it){return !!arguments.length&&it!=null&&(typeof it=="string"||it instanceof String)};dojo.isArray=function(it){return it&&(it instanceof Array||typeof it=="array")};dojo.isFunction=(function(){var _isFunction=function(it){var t=typeof it;return it&&(t=="function"||it instanceof Function)};return dojo.isSafari?function(it){if(typeof it=="function"&&it=="[object NodeList]"){return false}return _isFunction(it)}:_isFunction})();dojo.isObject=function(it){return it!==undefined&&(it===null||typeof it=="object"||dojo.isArray(it)||dojo.isFunction(it))};dojo.isArrayLike=function(it){var d=dojo;return it&&it!==undefined&&!d.isString(it)&&!d.isFunction(it)&&!(it.tagName&&it.tagName.toLowerCase()=="form")&&(d.isArray(it)||isFinite(it.length))};dojo.isAlien=function(it){return it&&!dojo.isFunction(it)&&/\{\s*\[native code\]\s*\}/.test(String(it))};dojo.extend=function(constructor,props){for(var i=1,l=arguments.length;i<l;i++){dojo._mixin(constructor.prototype,arguments[i])}return constructor};dojo._hitchArgs=function(scope,method){var pre=dojo._toArray(arguments,2);var named=dojo.isString(method);return function(){var args=dojo._toArray(arguments);var f=named?(scope||dojo.global)[method]:method;return f&&f.apply(scope||this,pre.concat(args))}};dojo.hitch=function(scope,method){if(arguments.length>2){return dojo._hitchArgs.apply(dojo,arguments)}if(!method){method=scope;scope=null}if(dojo.isString(method)){scope=scope||dojo.global;if(!scope[method]){throw (['dojo.hitch: scope["',method,'"] is null (scope="',scope,'")'].join(""))}return function(){return scope[method].apply(scope,arguments||[])}}return !scope?method:function(){return method.apply(scope,arguments||[])}};dojo.delegate=dojo._delegate=(function(){function TMP(){}return function(obj,props){TMP.prototype=obj;var tmp=new TMP();if(props){dojo._mixin(tmp,props)}return tmp}})();(function(){var efficient=function(obj,offset,startWith){return(startWith||[]).concat(Array.prototype.slice.call(obj,offset||0))};var slow=function(obj,offset,startWith){var arr=startWith||[];for(var x=offset||0;x<obj.length;x++){arr.push(obj[x])}return arr};dojo._toArray=dojo.isIE?function(obj){return((obj.item)?slow:efficient).apply(this,arguments)}:efficient})();dojo.partial=function(method){var arr=[null];return dojo.hitch.apply(dojo,arr.concat(dojo._toArray(arguments)))};dojo.clone=function(o){if(!o){return o}if(dojo.isArray(o)){var r=[];for(var i=0;i<o.length;++i){r.push(dojo.clone(o[i]))}return r}if(!dojo.isObject(o)){return o}if(o.nodeType&&o.cloneNode){return o.cloneNode(true)}if(o instanceof Date){return new Date(o.getTime())}r=new o.constructor();for(i in o){if(!(i in r)||r[i]!=o[i]){r[i]=dojo.clone(o[i])}}return r};dojo.trim=String.prototype.trim?function(str){return str.trim()}:function(str){return str.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}}if(!dojo._hasResource["dojo._base.declare"]){dojo._hasResource["dojo._base.declare"]=true;dojo.provide("dojo._base.declare");dojo.declare=function(className,superclass,props){var dd=arguments.callee,mixins;if(dojo.isArray(superclass)){mixins=superclass;superclass=mixins.shift()}if(mixins){dojo.forEach(mixins,function(m,i){if(!m){throw (className+": mixin #"+i+" is null")}superclass=dd._delegate(superclass,m)})}var ctor=dd._delegate(superclass);props=props||{};ctor.extend(props);dojo.extend(ctor,{declaredClass:className,_constructor:props.constructor});ctor.prototype.constructor=ctor;return dojo.setObject(className,ctor)};dojo.mixin(dojo.declare,{_delegate:function(base,mixin){var bp=(base||0).prototype,mp=(mixin||0).prototype,dd=dojo.declare;var ctor=dd._makeCtor();dojo.mixin(ctor,{superclass:bp,mixin:mp,extend:dd._extend});if(base){ctor.prototype=dojo._delegate(bp)}dojo.extend(ctor,dd._core,mp||0,{_constructor:null,preamble:null});ctor.prototype.constructor=ctor;ctor.prototype.declaredClass=(bp||0).declaredClass+"_"+(mp||0).declaredClass;return ctor},_extend:function(props){var i,fn;for(i in props){if(dojo.isFunction(fn=props[i])&&!0[i]){fn.nom=i;fn.ctor=this}}dojo.extend(this,props)},_makeCtor:function(){return function(){this._construct(arguments)}},_core:{_construct:function(args){var c=args.callee,s=c.superclass,ct=s&&s.constructor,m=c.mixin,mct=m&&m.constructor,a=args,ii,fn;if(a[0]){if(((fn=a[0].preamble))){a=fn.apply(this,a)||a}}if((fn=c.prototype.preamble)){a=fn.apply(this,a)||a}if(ct&&ct.apply){ct.apply(this,a)}if(mct&&mct.apply){mct.apply(this,a)}if((ii=c.prototype._constructor)){ii.apply(this,args)}if(this.constructor.prototype==c.prototype&&(ct=this.postscript)){ct.apply(this,args)}},_findMixin:function(mixin){var c=this.constructor,p,m;while(c){p=c.superclass;m=c.mixin;if(m==mixin||(m instanceof mixin.constructor)){return p}if(m&&m._findMixin&&(m=m._findMixin(mixin))){return m}c=p&&p.constructor}},_findMethod:function(name,method,ptype,has){var p=ptype,c,m,f;do{c=p.constructor;m=c.mixin;if(m&&(m=this._findMethod(name,method,m,has))){return m}if((f=p[name])&&(has==(f==method))){return p}p=c.superclass}while(p);return !has&&(p=this._findMixin(ptype))&&this._findMethod(name,method,p,has)},inherited:function(name,args,newArgs){var a=arguments;if(!dojo.isString(a[0])){newArgs=args;args=name;name=args.callee.nom}a=newArgs||args;var c=args.callee,p=this.constructor.prototype,fn,mp;if(this[name]!=c||p[name]==c){mp=(c.ctor||0).superclass||this._findMethod(name,c,p,true);if(!mp){throw (this.declaredClass+': inherited method "'+name+'" mismatch')}p=this._findMethod(name,c,mp,false)}fn=p&&p[name];if(!fn){throw (mp.declaredClass+': inherited method "'+name+'" not found')}return fn.apply(this,a)}}})}if(!dojo._hasResource["dojo._base.connect"]){dojo._hasResource["dojo._base.connect"]=true;dojo.provide("dojo._base.connect");dojo._listener={getDispatcher:function(){return function(){var ap=Array.prototype,c=arguments.callee,ls=c._listeners,t=c.target;var r=t&&t.apply(this,arguments);var lls;lls=[].concat(ls);for(var i in lls){if(!(i in ap)){lls[i].apply(this,arguments)}}return r}},add:function(source,method,listener){source=source||dojo.global;var f=source[method];if(!f||!f._listeners){var d=dojo._listener.getDispatcher();d.target=f;d._listeners=[];f=source[method]=d}return f._listeners.push(listener)},remove:function(source,method,handle){var f=(source||dojo.global)[method];if(f&&f._listeners&&handle--){delete f._listeners[handle]}}};dojo.connect=function(obj,event,context,method,dontFix){var a=arguments,args=[],i=0;args.push(dojo.isString(a[0])?null:a[i++],a[i++]);var a1=a[i+1];args.push(dojo.isString(a1)||dojo.isFunction(a1)?a[i++]:null,a[i++]);for(var l=a.length;i<l;i++){args.push(a[i])}return dojo._connect.apply(this,args)};dojo._connect=function(obj,event,context,method){var l=dojo._listener,h=l.add(obj,event,dojo.hitch(context,method));return[obj,event,h,l]};dojo.disconnect=function(handle){if(handle&&handle[0]!==undefined){dojo._disconnect.apply(this,handle);delete handle[0]}};dojo._disconnect=function(obj,event,handle,listener){listener.remove(obj,event,handle)};dojo._topics={};dojo.subscribe=function(topic,context,method){return[topic,dojo._listener.add(dojo._topics,topic,dojo.hitch(context,method))]};dojo.unsubscribe=function(handle){if(handle){dojo._listener.remove(dojo._topics,handle[0],handle[1])}};dojo.publish=function(topic,args){var f=dojo._topics[topic];if(f){f.apply(this,args||[])}};dojo.connectPublisher=function(topic,obj,event){var pf=function(){dojo.publish(topic,arguments)};return(event)?dojo.connect(obj,event,pf):dojo.connect(obj,pf)}}if(!dojo._hasResource["dojo._base.Deferred"]){dojo._hasResource["dojo._base.Deferred"]=true;dojo.provide("dojo._base.Deferred");dojo.Deferred=function(canceller){this.chain=[];this.id=this._nextId();this.fired=-1;this.paused=0;this.results=[null,null];this.canceller=canceller;this.silentlyCancelled=false};dojo.extend(dojo.Deferred,{_nextId:(function(){var n=1;return function(){return n++}})(),cancel:function(){var err;if(this.fired==-1){if(this.canceller){err=this.canceller(this)}else{this.silentlyCancelled=true}if(this.fired==-1){if(!(err instanceof Error)){var res=err;var msg="Deferred Cancelled";if(err&&err.toString){msg+=": "+err.toString()}err=new Error(msg);err.dojoType="cancel";err.cancelResult=res}this.errback(err)}}else{if((this.fired==0)&&(this.results[0] instanceof dojo.Deferred)){this.results[0].cancel()}}},_resback:function(res){this.fired=((res instanceof Error)?1:0);this.results[this.fired]=res;this._fire()},_check:function(){if(this.fired!=-1){if(!this.silentlyCancelled){throw new Error("already called!")}this.silentlyCancelled=false;return }},callback:function(res){this._check();this._resback(res)},errback:function(res){this._check();if(!(res instanceof Error)){res=new Error(res)}this._resback(res)},addBoth:function(cb,cbfn){var enclosed=dojo.hitch.apply(dojo,arguments);return this.addCallbacks(enclosed,enclosed)},addCallback:function(cb,cbfn){return this.addCallbacks(dojo.hitch.apply(dojo,arguments))},addErrback:function(cb,cbfn){return this.addCallbacks(null,dojo.hitch.apply(dojo,arguments))},addCallbacks:function(cb,eb){this.chain.push([cb,eb]);if(this.fired>=0){this._fire()}return this},_fire:function(){var chain=this.chain;var fired=this.fired;var res=this.results[fired];var self=this;var cb=null;while((chain.length>0)&&(this.paused==0)){var f=chain.shift()[fired];if(!f){continue}var func=function(){var ret=f(res);if(typeof ret!="undefined"){res=ret}fired=((res instanceof Error)?1:0);if(res instanceof dojo.Deferred){cb=function(res){self._resback(res);self.paused--;if((self.paused==0)&&(self.fired>=0)){self._fire()}};this.paused++}};if(dojo.config.debugAtAllCosts){func.call(this)}else{try{func.call(this)}catch(err){fired=1;res=err}}}this.fired=fired;this.results[fired]=res;if((cb)&&(this.paused)){res.addBoth(cb)}}})}if(!dojo._hasResource["dojo._base.json"]){dojo._hasResource["dojo._base.json"]=true;dojo.provide("dojo._base.json");dojo.fromJson=function(json){return eval("("+json+")")};dojo._escapeString=function(str){return('"'+str.replace(/(["\\])/g,"\\$1")+'"').replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r")};dojo.toJsonIndentStr="\t";dojo.toJson=function(it,prettyPrint,_indentStr){if(it===undefined){return"undefined"}var objtype=typeof it;if(objtype=="number"||objtype=="boolean"){return it+""}if(it===null){return"null"}if(dojo.isString(it)){return dojo._escapeString(it)}var recurse=arguments.callee;var newObj;_indentStr=_indentStr||"";var nextIndent=prettyPrint?_indentStr+dojo.toJsonIndentStr:"";var tf=it.__json__||it.json;if(dojo.isFunction(tf)){newObj=tf.call(it);if(it!==newObj){return recurse(newObj,prettyPrint,nextIndent)}}if(it.nodeType&&it.cloneNode){throw new Error("Can't serialize DOM nodes")}var sep=prettyPrint?" ":"";var newLine=prettyPrint?"\n":"";if(dojo.isArray(it)){var res=dojo.map(it,function(obj){var val=recurse(obj,prettyPrint,nextIndent);if(typeof val!="string"){val="undefined"}return newLine+nextIndent+val});return"["+res.join(","+sep)+newLine+_indentStr+"]"}if(objtype=="function"){return null}var output=[],key;for(key in it){var keyStr,val;if(typeof key=="number"){keyStr='"'+key+'"'}else{if(typeof key=="string"){keyStr=dojo._escapeString(key)}else{continue}}val=recurse(it[key],prettyPrint,nextIndent);if(typeof val!="string"){continue}output.push(newLine+nextIndent+keyStr+":"+sep+val)}return"{"+output.join(","+sep)+newLine+_indentStr+"}"}}if(!dojo._hasResource["dojo._base.array"]){dojo._hasResource["dojo._base.array"]=true;dojo.provide("dojo._base.array");(function(){var _getParts=function(arr,obj,cb){return[dojo.isString(arr)?arr.split(""):arr,obj||dojo.global,dojo.isString(cb)?new Function("item","index","array",cb):cb]};dojo.mixin(dojo,{indexOf:function(array,value,fromIndex,findLast){var step=1,end=array.length||0,i=0;if(findLast){i=end-1;step=end=-1}if(fromIndex!=undefined){i=fromIndex}if((findLast&&i>end)||i<end){for(;i!=end;i+=step){if(array[i]==value){return i}}}return -1},lastIndexOf:function(array,value,fromIndex){return dojo.indexOf(array,value,fromIndex,true)},forEach:function(arr,callback,thisObject){if(!arr||!arr.length){return }var _p=_getParts(arr,thisObject,callback);arr=_p[0];for(var i=0,l=arr.length;i<l;++i){_p[2].call(_p[1],arr[i],i,arr)}},_everyOrSome:function(every,arr,callback,thisObject){var _p=_getParts(arr,thisObject,callback);arr=_p[0];for(var i=0,l=arr.length;i<l;++i){var result=!!_p[2].call(_p[1],arr[i],i,arr);if(every^result){return result}}return every},every:function(arr,callback,thisObject){return this._everyOrSome(true,arr,callback,thisObject)},some:function(arr,callback,thisObject){return this._everyOrSome(false,arr,callback,thisObject)},map:function(arr,callback,thisObject){var _p=_getParts(arr,thisObject,callback);arr=_p[0];var outArr=(arguments[3]?(new arguments[3]()):[]);for(var i=0,l=arr.length;i<l;++i){outArr.push(_p[2].call(_p[1],arr[i],i,arr))}return outArr},filter:function(arr,callback,thisObject){var _p=_getParts(arr,thisObject,callback);arr=_p[0];var outArr=[];for(var i=0,l=arr.length;i<l;++i){if(_p[2].call(_p[1],arr[i],i,arr)){outArr.push(arr[i])}}return outArr}})})()}if(!dojo._hasResource["dojo._base.Color"]){dojo._hasResource["dojo._base.Color"]=true;dojo.provide("dojo._base.Color");(function(){var d=dojo;dojo.Color=function(color){if(color){this.setColor(color)}};dojo.Color.named={black:[0,0,0],silver:[192,192,192],gray:[128,128,128],white:[255,255,255],maroon:[128,0,0],red:[255,0,0],purple:[128,0,128],fuchsia:[255,0,255],green:[0,128,0],lime:[0,255,0],olive:[128,128,0],yellow:[255,255,0],navy:[0,0,128],blue:[0,0,255],teal:[0,128,128],aqua:[0,255,255]};dojo.extend(dojo.Color,{r:255,g:255,b:255,a:1,_set:function(r,g,b,a){var t=this;t.r=r;t.g=g;t.b=b;t.a=a},setColor:function(color){if(d.isString(color)){d.colorFromString(color,this)}else{if(d.isArray(color)){d.colorFromArray(color,this)}else{this._set(color.r,color.g,color.b,color.a);if(!(color instanceof d.Color)){this.sanitize()}}}return this},sanitize:function(){return this},toRgb:function(){var t=this;return[t.r,t.g,t.b]},toRgba:function(){var t=this;return[t.r,t.g,t.b,t.a]},toHex:function(){var arr=d.map(["r","g","b"],function(x){var s=this[x].toString(16);return s.length<2?"0"+s:s},this);return"#"+arr.join("")},toCss:function(includeAlpha){var t=this,rgb=t.r+", "+t.g+", "+t.b;return(includeAlpha?"rgba("+rgb+", "+t.a:"rgb("+rgb)+")"},toString:function(){return this.toCss(true)}});dojo.blendColors=function(start,end,weight,obj){var t=obj||new d.Color();d.forEach(["r","g","b","a"],function(x){t[x]=start[x]+(end[x]-start[x])*weight;if(x!="a"){t[x]=Math.round(t[x])}});return t.sanitize()};dojo.colorFromRgb=function(color,obj){var m=color.toLowerCase().match(/^rgba?\(([\s\.,0-9]+)\)/);return m&&dojo.colorFromArray(m[1].split(/\s*,\s*/),obj)};dojo.colorFromHex=function(color,obj){var t=obj||new d.Color(),bits=(color.length==4)?4:8,mask=(1<<bits)-1;color=Number("0x"+color.substr(1));if(isNaN(color)){return null}d.forEach(["b","g","r"],function(x){var c=color&mask;color>>=bits;t[x]=bits==4?17*c:c});t.a=1;return t};dojo.colorFromArray=function(a,obj){var t=obj||new d.Color();t._set(Number(a[0]),Number(a[1]),Number(a[2]),Number(a[3]));if(isNaN(t.a)){t.a=1}return t.sanitize()};dojo.colorFromString=function(str,obj){var a=d.Color.named[str];return a&&d.colorFromArray(a,obj)||d.colorFromRgb(str,obj)||d.colorFromHex(str,obj)}})()}if(!dojo._hasResource["dojo._base"]){dojo._hasResource["dojo._base"]=true;dojo.provide("dojo._base")}if(!dojo._hasResource["dojo._base.window"]){dojo._hasResource["dojo._base.window"]=true;dojo.provide("dojo._base.window");dojo.doc=window["document"]||null;dojo.body=function(){return dojo.doc.body||dojo.doc.getElementsByTagName("body")[0]};dojo.setContext=function(globalObject,globalDocument){dojo.global=globalObject;dojo.doc=globalDocument};dojo.withGlobal=function(globalObject,callback,thisObject,cbArguments){var oldGlob=dojo.global;try{dojo.global=globalObject;return dojo.withDoc.call(null,globalObject.document,callback,thisObject,cbArguments)}finally{dojo.global=oldGlob}};dojo.withDoc=function(documentObject,callback,thisObject,cbArguments){var oldDoc=dojo.doc,oldLtr=dojo._bodyLtr;try{dojo.doc=documentObject;delete dojo._bodyLtr;if(thisObject&&dojo.isString(callback)){callback=thisObject[callback]}return callback.apply(thisObject,cbArguments||[])}finally{dojo.doc=oldDoc;if(oldLtr!==undefined){dojo._bodyLtr=oldLtr}}}}if(!dojo._hasResource["dojo._base.event"]){dojo._hasResource["dojo._base.event"]=true;dojo.provide("dojo._base.event");(function(){var del=(dojo._event_listener={add:function(node,name,fp){if(!node){return }name=del._normalizeEventName(name);fp=del._fixCallback(name,fp);var oname=name;if(!dojo.isIE&&(name=="mouseenter"||name=="mouseleave")){var ofp=fp;name=(name=="mouseenter")?"mouseover":"mouseout";fp=function(e){if(dojo.isFF<=2){try{e.relatedTarget.tagName}catch(e2){return }}if(!dojo.isDescendant(e.relatedTarget,node)){return ofp.call(this,e)}}}node.addEventListener(name,fp,false);return fp},remove:function(node,event,handle){if(node){event=del._normalizeEventName(event);if(!dojo.isIE&&(event=="mouseenter"||event=="mouseleave")){event=(event=="mouseenter")?"mouseover":"mouseout"}node.removeEventListener(event,handle,false)}},_normalizeEventName:function(name){return name.slice(0,2)=="on"?name.slice(2):name},_fixCallback:function(name,fp){return name!="keypress"?fp:function(e){return fp.call(this,del._fixEvent(e,this))}},_fixEvent:function(evt,sender){switch(evt.type){case"keypress":del._setKeyChar(evt);break}return evt},_setKeyChar:function(evt){evt.keyChar=evt.charCode?String.fromCharCode(evt.charCode):"";evt.charOrCode=evt.keyChar||evt.keyCode},_punctMap:{106:42,111:47,186:59,187:43,188:44,189:45,190:46,191:47,192:96,219:91,220:92,221:93,222:39}});dojo.fixEvent=function(evt,sender){return del._fixEvent(evt,sender)};dojo.stopEvent=function(evt){evt.preventDefault();evt.stopPropagation()};var node_listener=dojo._listener;dojo._connect=function(obj,event,context,method,dontFix){var isNode=obj&&(obj.nodeType||obj.attachEvent||obj.addEventListener);var lid=isNode?(dontFix?2:1):0,l=[dojo._listener,del,node_listener][lid];var h=l.add(obj,event,dojo.hitch(context,method));return[obj,event,h,lid]};dojo._disconnect=function(obj,event,handle,listener){([dojo._listener,del,node_listener][listener]).remove(obj,event,handle)};dojo.keys={BACKSPACE:8,TAB:9,CLEAR:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESCAPE:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT_ARROW:37,UP_ARROW:38,RIGHT_ARROW:39,DOWN_ARROW:40,INSERT:45,DELETE:46,HELP:47,LEFT_WINDOW:91,RIGHT_WINDOW:92,SELECT:93,NUMPAD_0:96,NUMPAD_1:97,NUMPAD_2:98,NUMPAD_3:99,NUMPAD_4:100,NUMPAD_5:101,NUMPAD_6:102,NUMPAD_7:103,NUMPAD_8:104,NUMPAD_9:105,NUMPAD_MULTIPLY:106,NUMPAD_PLUS:107,NUMPAD_ENTER:108,NUMPAD_MINUS:109,NUMPAD_PERIOD:110,NUMPAD_DIVIDE: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,F13:124,F14:125,F15:126,NUM_LOCK:144,SCROLL_LOCK:145};if(dojo.isIE){var _trySetKeyCode=function(e,code){try{return(e.keyCode=code)}catch(e){return 0}};var iel=dojo._listener;var listenersName=(dojo._ieListenersName="_"+dojo._scopeName+"_listeners");if(!dojo.config._allow_leaks){node_listener=iel=dojo._ie_listener={handlers:[],add:function(source,method,listener){source=source||dojo.global;var f=source[method];if(!f||!f[listenersName]){var d=dojo._getIeDispatcher();d.target=f&&(ieh.push(f)-1);d[listenersName]=[];f=source[method]=d}return f[listenersName].push(ieh.push(listener)-1)},remove:function(source,method,handle){var f=(source||dojo.global)[method],l=f&&f[listenersName];if(f&&l&&handle--){delete ieh[l[handle]];delete l[handle]}}};var ieh=iel.handlers}dojo.mixin(del,{add:function(node,event,fp){if(!node){return }event=del._normalizeEventName(event);if(event=="onkeypress"){var kd=node.onkeydown;if(!kd||!kd[listenersName]||!kd._stealthKeydownHandle){var h=del.add(node,"onkeydown",del._stealthKeyDown);kd=node.onkeydown;kd._stealthKeydownHandle=h;kd._stealthKeydownRefs=1}else{kd._stealthKeydownRefs++}}return iel.add(node,event,del._fixCallback(fp))},remove:function(node,event,handle){event=del._normalizeEventName(event);iel.remove(node,event,handle);if(event=="onkeypress"){var kd=node.onkeydown;if(--kd._stealthKeydownRefs<=0){iel.remove(node,"onkeydown",kd._stealthKeydownHandle);delete kd._stealthKeydownHandle}}},_normalizeEventName:function(eventName){return eventName.slice(0,2)!="on"?"on"+eventName:eventName},_nop:function(){},_fixEvent:function(evt,sender){if(!evt){var w=sender&&(sender.ownerDocument||sender.document||sender).parentWindow||window;evt=w.event}if(!evt){return(evt)}evt.target=evt.srcElement;evt.currentTarget=(sender||evt.srcElement);evt.layerX=evt.offsetX;evt.layerY=evt.offsetY;var se=evt.srcElement,doc=(se&&se.ownerDocument)||document;var docBody=((dojo.isIE<6)||(doc["compatMode"]=="BackCompat"))?doc.body:doc.documentElement;var offset=dojo._getIeDocumentElementOffset();evt.pageX=evt.clientX+dojo._fixIeBiDiScrollLeft(docBody.scrollLeft||0)-offset.x;evt.pageY=evt.clientY+(docBody.scrollTop||0)-offset.y;if(evt.type=="mouseover"){evt.relatedTarget=evt.fromElement}if(evt.type=="mouseout"){evt.relatedTarget=evt.toElement}evt.stopPropagation=del._stopPropagation;evt.preventDefault=del._preventDefault;return del._fixKeys(evt)},_fixKeys:function(evt){switch(evt.type){case"keypress":var c=("charCode" in evt?evt.charCode:evt.keyCode);if(c==10){c=0;evt.keyCode=13}else{if(c==13||c==27){c=0}else{if(c==3){c=99}}}evt.charCode=c;del._setKeyChar(evt);break}return evt},_stealthKeyDown:function(evt){var kp=evt.currentTarget.onkeypress;if(!kp||!kp[listenersName]){return }var k=evt.keyCode;var unprintable=k!=13&&k!=32&&k!=27&&(k<48||k>90)&&(k<96||k>111)&&(k<186||k>192)&&(k<219||k>222);if(unprintable||evt.ctrlKey){var c=unprintable?0:k;if(evt.ctrlKey){if(k==3||k==13){return }else{if(c>95&&c<106){c-=48}else{if((!evt.shiftKey)&&(c>=65&&c<=90)){c+=32}else{c=del._punctMap[c]||c}}}}var faux=del._synthesizeEvent(evt,{type:"keypress",faux:true,charCode:c});kp.call(evt.currentTarget,faux);evt.cancelBubble=faux.cancelBubble;evt.returnValue=faux.returnValue;_trySetKeyCode(evt,faux.keyCode)}},_stopPropagation:function(){this.cancelBubble=true},_preventDefault:function(){this.bubbledKeyCode=this.keyCode;if(this.ctrlKey){_trySetKeyCode(this,0)}this.returnValue=false}});dojo.stopEvent=function(evt){evt=evt||window.event;del._stopPropagation.call(evt);del._preventDefault.call(evt)}}del._synthesizeEvent=function(evt,props){var faux=dojo.mixin({},evt,props);del._setKeyChar(faux);faux.preventDefault=function(){evt.preventDefault()};faux.stopPropagation=function(){evt.stopPropagation()};return faux};if(dojo.isOpera){dojo.mixin(del,{_fixEvent:function(evt,sender){switch(evt.type){case"keypress":var c=evt.which;if(c==3){c=99}c=c<41&&!evt.shiftKey?0:c;if(evt.ctrlKey&&!evt.shiftKey&&c>=65&&c<=90){c+=32}return del._synthesizeEvent(evt,{charCode:c})}return evt}})}if(dojo.isWebKit){del._add=del.add;del._remove=del.remove;dojo.mixin(del,{add:function(node,event,fp){if(!node){return }var handle=del._add(node,event,fp);if(del._normalizeEventName(event)=="keypress"){handle._stealthKeyDownHandle=del._add(node,"keydown",function(evt){var k=evt.keyCode;var unprintable=k!=13&&k!=32&&k!=27&&(k<48||k>90)&&(k<96||k>111)&&(k<186||k>192)&&(k<219||k>222);if(unprintable||evt.ctrlKey){var c=unprintable?0:k;if(evt.ctrlKey){if(k==3||k==13){return }else{if(c>95&&c<106){c-=48}else{if(!evt.shiftKey&&c>=65&&c<=90){c+=32}else{c=del._punctMap[c]||c}}}}var faux=del._synthesizeEvent(evt,{type:"keypress",faux:true,charCode:c});fp.call(evt.currentTarget,faux)}})}return handle},remove:function(node,event,handle){if(node){if(handle._stealthKeyDownHandle){del._remove(node,"keydown",handle._stealthKeyDownHandle)}del._remove(node,event,handle)}},_fixEvent:function(evt,sender){switch(evt.type){case"keypress":if(evt.faux){return evt}var c=evt.charCode;c=c>=32?c:0;return del._synthesizeEvent(evt,{charCode:c,faux:true})}return evt}})}})();if(dojo.isIE){dojo._ieDispatcher=function(args,sender){var ap=Array.prototype,h=dojo._ie_listener.handlers,c=args.callee,ls=c[dojo._ieListenersName],t=h[c.target];var r=t&&t.apply(sender,args);var lls=[].concat(ls);for(var i in lls){var f=h[lls[i]];if(!(i in ap)&&f){f.apply(sender,args)}}return r};dojo._getIeDispatcher=function(){return new Function(dojo._scopeName+"._ieDispatcher(arguments, this)")};dojo._event_listener._fixCallback=function(fp){var f=dojo._event_listener._fixEvent;return function(e){return fp.call(this,f(e,this))}}}}if(!dojo._hasResource["dojo._base.html"]){dojo._hasResource["dojo._base.html"]=true;dojo.provide("dojo._base.html");try{document.execCommand("BackgroundImageCache",false,true)}catch(e){}if(dojo.isIE||dojo.isOpera){dojo.byId=function(id,doc){if(dojo.isString(id)){var _d=doc||dojo.doc;var te=_d.getElementById(id);if(te&&(te.attributes.id.value==id||te.id==id)){return te}else{var eles=_d.all[id];if(!eles||eles.nodeName){eles=[eles]}var i=0;while((te=eles[i++])){if((te.attributes&&te.attributes.id&&te.attributes.id.value==id)||te.id==id){return te}}}}else{return id}}}else{dojo.byId=function(id,doc){return dojo.isString(id)?(doc||dojo.doc).getElementById(id):id}}(function(){var d=dojo;var _destroyContainer=null;d.addOnWindowUnload(function(){_destroyContainer=null});dojo._destroyElement=dojo.destroy=function(node){node=d.byId(node);try{if(!_destroyContainer||_destroyContainer.ownerDocument!=node.ownerDocument){_destroyContainer=node.ownerDocument.createElement("div")}_destroyContainer.appendChild(node.parentNode?node.parentNode.removeChild(node):node);_destroyContainer.innerHTML=""}catch(e){}};dojo.isDescendant=function(node,ancestor){try{node=d.byId(node);ancestor=d.byId(ancestor);while(node){if(node===ancestor){return true}node=node.parentNode}}catch(e){}return false};dojo.setSelectable=function(node,selectable){node=d.byId(node);if(d.isMozilla){node.style.MozUserSelect=selectable?"":"none"}else{if(d.isKhtml||d.isWebKit){node.style.KhtmlUserSelect=selectable?"auto":"none"}else{if(d.isIE){var v=(node.unselectable=selectable?"":"on");d.query("*",node).forEach("item.unselectable = '"+v+"'")}}}};var _insertBefore=function(node,ref){var parent=ref.parentNode;if(parent){parent.insertBefore(node,ref)}};var _insertAfter=function(node,ref){var parent=ref.parentNode;if(parent){if(parent.lastChild==ref){parent.appendChild(node)}else{parent.insertBefore(node,ref.nextSibling)}}};dojo.place=function(node,refNode,position){refNode=d.byId(refNode);if(d.isString(node)){node=node.charAt(0)=="<"?d._toDom(node,refNode.ownerDocument):d.byId(node)}if(typeof position=="number"){var cn=refNode.childNodes;if(!cn.length||cn.length<=position){refNode.appendChild(node)}else{_insertBefore(node,cn[position<0?0:position])}}else{switch(position){case"before":_insertBefore(node,refNode);break;case"after":_insertAfter(node,refNode);break;case"replace":refNode.parentNode.replaceChild(node,refNode);break;case"only":d.empty(refNode);refNode.appendChild(node);break;case"first":if(refNode.firstChild){_insertBefore(node,refNode.firstChild);break}default:refNode.appendChild(node)}}return node};dojo.boxModel="content-box";if(d.isIE){var _dcm=document.compatMode;d.boxModel=_dcm=="BackCompat"||_dcm=="QuirksMode"||d.isIE<6?"border-box":"content-box"}var gcs;if(d.isWebKit){gcs=function(node){var s;if(node instanceof HTMLElement){var dv=node.ownerDocument.defaultView;s=dv.getComputedStyle(node,null);if(!s&&node.style){node.style.display="";s=dv.getComputedStyle(node,null)}}return s||{}}}else{if(d.isIE){gcs=function(node){return node.nodeType==1?node.currentStyle:{}}}else{gcs=function(node){return node instanceof HTMLElement?node.ownerDocument.defaultView.getComputedStyle(node,null):{}}}}dojo.getComputedStyle=gcs;if(!d.isIE){d._toPixelValue=function(element,value){return parseFloat(value)||0}}else{d._toPixelValue=function(element,avalue){if(!avalue){return 0}if(avalue=="medium"){return 4}if(avalue.slice&&avalue.slice(-2)=="px"){return parseFloat(avalue)}with(element){var sLeft=style.left;var rsLeft=runtimeStyle.left;runtimeStyle.left=currentStyle.left;try{style.left=avalue;avalue=style.pixelLeft}catch(e){avalue=0}style.left=sLeft;runtimeStyle.left=rsLeft}return avalue}}var px=d._toPixelValue;var astr="DXImageTransform.Microsoft.Alpha";var af=function(n,f){try{return n.filters.item(astr)}catch(e){return f?{}:null}};dojo._getOpacity=d.isIE?function(node){try{return af(node).Opacity/100}catch(e){return 1}}:function(node){return gcs(node).opacity};dojo._setOpacity=d.isIE?function(node,opacity){var ov=opacity*100;node.style.zoom=1;af(node,1).Enabled=!(opacity==1);if(!af(node)){node.style.filter+=" progid:"+astr+"(Opacity="+ov+")"}else{af(node,1).Opacity=ov}if(node.nodeName.toLowerCase()=="tr"){d.query("> td",node).forEach(function(i){d._setOpacity(i,opacity)})}return opacity}:function(node,opacity){return node.style.opacity=opacity};var _pixelNamesCache={left:true,top:true};var _pixelRegExp=/margin|padding|width|height|max|min|offset/;var _toStyleValue=function(node,type,value){type=type.toLowerCase();if(d.isIE){if(value=="auto"){if(type=="height"){return node.offsetHeight}if(type=="width"){return node.offsetWidth}}if(type=="fontweight"){switch(value){case 700:return"bold";case 400:default:return"normal"}}}if(!(type in _pixelNamesCache)){_pixelNamesCache[type]=_pixelRegExp.test(type)}return _pixelNamesCache[type]?px(node,value):value};var _floatStyle=d.isIE?"styleFloat":"cssFloat",_floatAliases={"cssFloat":_floatStyle,"styleFloat":_floatStyle,"float":_floatStyle};dojo.style=function(node,style,value){var n=d.byId(node),args=arguments.length,op=(style=="opacity");style=_floatAliases[style]||style;if(args==3){return op?d._setOpacity(n,value):n.style[style]=value}if(args==2&&op){return d._getOpacity(n)}var s=gcs(n);if(args==2&&!d.isString(style)){for(var x in style){d.style(node,x,style[x])}return s}return(args==1)?s:_toStyleValue(n,style,s[style]||n.style[style])};dojo._getPadExtents=function(n,computedStyle){var s=computedStyle||gcs(n),l=px(n,s.paddingLeft),t=px(n,s.paddingTop);return{l:l,t:t,w:l+px(n,s.paddingRight),h:t+px(n,s.paddingBottom)}};dojo._getBorderExtents=function(n,computedStyle){var ne="none",s=computedStyle||gcs(n),bl=(s.borderLeftStyle!=ne?px(n,s.borderLeftWidth):0),bt=(s.borderTopStyle!=ne?px(n,s.borderTopWidth):0);return{l:bl,t:bt,w:bl+(s.borderRightStyle!=ne?px(n,s.borderRightWidth):0),h:bt+(s.borderBottomStyle!=ne?px(n,s.borderBottomWidth):0)}};dojo._getPadBorderExtents=function(n,computedStyle){var s=computedStyle||gcs(n),p=d._getPadExtents(n,s),b=d._getBorderExtents(n,s);return{l:p.l+b.l,t:p.t+b.t,w:p.w+b.w,h:p.h+b.h}};dojo._getMarginExtents=function(n,computedStyle){var s=computedStyle||gcs(n),l=px(n,s.marginLeft),t=px(n,s.marginTop),r=px(n,s.marginRight),b=px(n,s.marginBottom);if(d.isWebKit&&(s.position!="absolute")){r=l}return{l:l,t:t,w:l+r,h:t+b}};dojo._getMarginBox=function(node,computedStyle){var s=computedStyle||gcs(node),me=d._getMarginExtents(node,s);var l=node.offsetLeft-me.l,t=node.offsetTop-me.t,p=node.parentNode;if(d.isMoz){var sl=parseFloat(s.left),st=parseFloat(s.top);if(!isNaN(sl)&&!isNaN(st)){l=sl,t=st}else{if(p&&p.style){var pcs=gcs(p);if(pcs.overflow!="visible"){var be=d._getBorderExtents(p,pcs);l+=be.l,t+=be.t}}}}else{if(d.isOpera||(d.isIE>7&&!d.isQuirks)){if(p){be=d._getBorderExtents(p);l-=be.l;t-=be.t}}}return{l:l,t:t,w:node.offsetWidth+me.w,h:node.offsetHeight+me.h}};dojo._getContentBox=function(node,computedStyle){var s=computedStyle||gcs(node),pe=d._getPadExtents(node,s),be=d._getBorderExtents(node,s),w=node.clientWidth,h;if(!w){w=node.offsetWidth,h=node.offsetHeight}else{h=node.clientHeight,be.w=be.h=0}if(d.isOpera){pe.l+=be.l;pe.t+=be.t}return{l:pe.l,t:pe.t,w:w-pe.w-be.w,h:h-pe.h-be.h}};dojo._getBorderBox=function(node,computedStyle){var s=computedStyle||gcs(node),pe=d._getPadExtents(node,s),cb=d._getContentBox(node,s);return{l:cb.l-pe.l,t:cb.t-pe.t,w:cb.w+pe.w,h:cb.h+pe.h}};dojo._setBox=function(node,l,t,w,h,u){u=u||"px";var s=node.style;if(!isNaN(l)){s.left=l+u}if(!isNaN(t)){s.top=t+u}if(w>=0){s.width=w+u}if(h>=0){s.height=h+u}};dojo._isButtonTag=function(node){return node.tagName=="BUTTON"||node.tagName=="INPUT"&&node.getAttribute("type").toUpperCase()=="BUTTON"};dojo._usesBorderBox=function(node){var n=node.tagName;return d.boxModel=="border-box"||n=="TABLE"||d._isButtonTag(node)};dojo._setContentSize=function(node,widthPx,heightPx,computedStyle){if(d._usesBorderBox(node)){var pb=d._getPadBorderExtents(node,computedStyle);if(widthPx>=0){widthPx+=pb.w}if(heightPx>=0){heightPx+=pb.h}}d._setBox(node,NaN,NaN,widthPx,heightPx)};dojo._setMarginBox=function(node,leftPx,topPx,widthPx,heightPx,computedStyle){var s=computedStyle||gcs(node),bb=d._usesBorderBox(node),pb=bb?_nilExtents:d._getPadBorderExtents(node,s);if(d.isWebKit){if(d._isButtonTag(node)){var ns=node.style;if(widthPx>=0&&!ns.width){ns.width="4px"}if(heightPx>=0&&!ns.height){ns.height="4px"}}}var mb=d._getMarginExtents(node,s);if(widthPx>=0){widthPx=Math.max(widthPx-pb.w-mb.w,0)}if(heightPx>=0){heightPx=Math.max(heightPx-pb.h-mb.h,0)}d._setBox(node,leftPx,topPx,widthPx,heightPx)};var _nilExtents={l:0,t:0,w:0,h:0};dojo.marginBox=function(node,box){var n=d.byId(node),s=gcs(n),b=box;return !b?d._getMarginBox(n,s):d._setMarginBox(n,b.l,b.t,b.w,b.h,s)};dojo.contentBox=function(node,box){var n=d.byId(node),s=gcs(n),b=box;return !b?d._getContentBox(n,s):d._setContentSize(n,b.w,b.h,s)};var _sumAncestorProperties=function(node,prop){if(!(node=(node||0).parentNode)){return 0}var val,retVal=0,_b=d.body();while(node&&node.style){if(gcs(node).position=="fixed"){return 0}val=node[prop];if(val){retVal+=val-0;if(node==_b){break}}node=node.parentNode}return retVal};dojo._docScroll=function(){var _b=d.body(),_w=d.global,de=d.doc.documentElement;return{y:(_w.pageYOffset||de.scrollTop||_b.scrollTop||0),x:(_w.pageXOffset||d._fixIeBiDiScrollLeft(de.scrollLeft)||_b.scrollLeft||0)}};dojo._isBodyLtr=function(){return("_bodyLtr" in d)?d._bodyLtr:d._bodyLtr=gcs(d.body()).direction=="ltr"};dojo._getIeDocumentElementOffset=function(){var de=d.doc.documentElement;if(d.isIE<7){return{x:d._isBodyLtr()||window.parent==window?de.clientLeft:de.offsetWidth-de.clientWidth-de.clientLeft,y:de.clientTop}}else{if(d.isIE<8){return{x:de.getBoundingClientRect().left,y:de.getBoundingClientRect().top}}else{return{x:0,y:0}}}};dojo._fixIeBiDiScrollLeft=function(scrollLeft){var dd=d.doc;if(d.isIE<8&&!d._isBodyLtr()){var de=dd.compatMode=="BackCompat"?dd.body:dd.documentElement;return scrollLeft+de.clientWidth-de.scrollWidth}return scrollLeft};dojo._abs=function(node,includeScroll){var db=d.body(),dh=d.body().parentNode,ret;if(node["getBoundingClientRect"]){var client=node.getBoundingClientRect();ret={x:client.left,y:client.top};if(d.isFF>=3){var cs=gcs(dh);ret.x-=px(dh,cs.marginLeft)+px(dh,cs.borderLeftWidth);ret.y-=px(dh,cs.marginTop)+px(dh,cs.borderTopWidth)}if(d.isIE){var offset=d._getIeDocumentElementOffset();ret.x-=offset.x+(d.isQuirks?db.clientLeft:0);ret.y-=offset.y+(d.isQuirks?db.clientTop:0)}}else{ret={x:0,y:0};if(node["offsetParent"]){ret.x-=_sumAncestorProperties(node,"scrollLeft");ret.y-=_sumAncestorProperties(node,"scrollTop");var curnode=node;do{var n=curnode.offsetLeft,t=curnode.offsetTop;ret.x+=isNaN(n)?0:n;ret.y+=isNaN(t)?0:t;cs=gcs(curnode);if(curnode!=node){if(d.isFF){ret.x+=2*px(curnode,cs.borderLeftWidth);ret.y+=2*px(curnode,cs.borderTopWidth)}else{ret.x+=px(curnode,cs.borderLeftWidth);ret.y+=px(curnode,cs.borderTopWidth)}}if(d.isFF&&cs.position=="static"){var parent=curnode.parentNode;while(parent!=curnode.offsetParent){var pcs=gcs(parent);if(pcs.position=="static"){ret.x+=px(curnode,pcs.borderLeftWidth);ret.y+=px(curnode,pcs.borderTopWidth)}parent=parent.parentNode}}curnode=curnode.offsetParent}while((curnode!=dh)&&curnode)}else{if(node.x&&node.y){ret.x+=isNaN(node.x)?0:node.x;ret.y+=isNaN(node.y)?0:node.y}}}if(includeScroll){var scroll=d._docScroll();ret.x+=scroll.x;ret.y+=scroll.y}return ret};dojo.coords=function(node,includeScroll){var n=d.byId(node),s=gcs(n),mb=d._getMarginBox(n,s);var abs=d._abs(n,includeScroll);mb.x=abs.x;mb.y=abs.y;return mb};var ieLT8=d.isIE<8;var _fixAttrName=function(name){switch(name.toLowerCase()){case"tabindex":return ieLT8?"tabIndex":"tabindex";case"readonly":return"readOnly";case"class":return"className";case"for":case"htmlfor":return ieLT8?"htmlFor":"for";default:return name}};var _attrProps={colspan:"colSpan",enctype:"enctype",frameborder:"frameborder",method:"method",rowspan:"rowSpan",scrolling:"scrolling",shape:"shape",span:"span",type:"type",valuetype:"valueType",classname:"className",innerhtml:"innerHTML"};dojo.hasAttr=function(node,name){node=d.byId(node);var fixName=_fixAttrName(name);fixName=fixName=="htmlFor"?"for":fixName;var attr=node.getAttributeNode&&node.getAttributeNode(fixName);return attr?attr.specified:false};var _evtHdlrMap={},_ctr=0,_attrId=dojo._scopeName+"attrid",_roInnerHtml={col:1,colgroup:1,table:1,tbody:1,tfoot:1,thead:1,tr:1,title:1};dojo.attr=function(node,name,value){node=d.byId(node);var args=arguments.length;if(args==2&&!d.isString(name)){for(var x in name){d.attr(node,x,name[x])}return }name=_fixAttrName(name);if(args==3){if(d.isFunction(value)){var attrId=d.attr(node,_attrId);if(!attrId){attrId=_ctr++;d.attr(node,_attrId,attrId)}if(!_evtHdlrMap[attrId]){_evtHdlrMap[attrId]={}}var h=_evtHdlrMap[attrId][name];if(h){d.disconnect(h)}else{try{delete node[name]}catch(e){}}_evtHdlrMap[attrId][name]=d.connect(node,name,value)}else{if(typeof value=="boolean"){node[name]=value}else{if(name==="style"&&!d.isString(value)){d.style(node,value)}else{if(name=="className"){node.className=value}else{if(name==="innerHTML"){if(d.isIE&&node.tagName.toLowerCase() in _roInnerHtml){d.empty(node);node.appendChild(d._toDom(value,node.ownerDocument))}else{node[name]=value}}else{node.setAttribute(name,value)}}}}}}else{var prop=_attrProps[name.toLowerCase()];if(prop){return node[prop]}var attrValue=node[name];return(typeof attrValue=="boolean"||typeof attrValue=="function")?attrValue:(d.hasAttr(node,name)?node.getAttribute(name):null)}};dojo.removeAttr=function(node,name){d.byId(node).removeAttribute(_fixAttrName(name))};dojo.create=function(tag,attrs,refNode,pos){var doc=d.doc;if(refNode){refNode=d.byId(refNode);doc=refNode.ownerDocument}if(d.isString(tag)){tag=doc.createElement(tag)}if(attrs){d.attr(tag,attrs)}if(refNode){d.place(tag,refNode,pos)}return tag};d.empty=d.isIE?function(node){node=d.byId(node);for(var c;c=node.lastChild;){d.destroy(c)}}:function(node){d.byId(node).innerHTML=""};var tagWrap={option:["select"],tbody:["table"],thead:["table"],tfoot:["table"],tr:["table","tbody"],td:["table","tbody","tr"],th:["table","thead","tr"],legend:["fieldset"],caption:["table"],colgroup:["table"],col:["table","colgroup"],li:["ul"]},reTag=/<\s*([\w\:]+)/,masterNode={},masterNum=0,masterName="__"+d._scopeName+"ToDomId";for(var param in tagWrap){var tw=tagWrap[param];tw.pre=param=="option"?'<select multiple="multiple">':"<"+tw.join("><")+">";tw.post="</"+tw.reverse().join("></")+">"}d._toDom=function(frag,doc){doc=doc||d.doc;var masterId=doc[masterName];if(!masterId){doc[masterName]=masterId=++masterNum+"";masterNode[masterId]=doc.createElement("div")}frag+="";var match=frag.match(reTag),tag=match?match[1].toLowerCase():"",master=masterNode[masterId],wrap,i,fc,df;if(match&&tagWrap[tag]){wrap=tagWrap[tag];master.innerHTML=wrap.pre+frag+wrap.post;for(i=wrap.length;i;--i){master=master.firstChild}}else{master.innerHTML=frag}if(master.childNodes.length==1){return master.removeChild(master.firstChild)}df=doc.createDocumentFragment();while(fc=master.firstChild){df.appendChild(fc)}return df};var _className="className";dojo.hasClass=function(node,classStr){return((" "+d.byId(node)[_className]+" ").indexOf(" "+classStr+" ")>=0)};dojo.addClass=function(node,classStr){node=d.byId(node);var cls=node[_className];if((" "+cls+" ").indexOf(" "+classStr+" ")<0){node[_className]=cls+(cls?" ":"")+classStr}};dojo.removeClass=function(node,classStr){node=d.byId(node);var t=d.trim((" "+node[_className]+" ").replace(" "+classStr+" "," "));if(node[_className]!=t){node[_className]=t}};dojo.toggleClass=function(node,classStr,condition){if(condition===undefined){condition=!d.hasClass(node,classStr)}d[condition?"addClass":"removeClass"](node,classStr)}})()}if(!dojo._hasResource["dojo._base.NodeList"]){dojo._hasResource["dojo._base.NodeList"]=true;dojo.provide("dojo._base.NodeList");(function(){var d=dojo;var ap=Array.prototype,aps=ap.slice,apc=ap.concat;var tnl=function(a){a.constructor=d.NodeList;dojo._mixin(a,d.NodeList.prototype);return a};var loopBody=function(f,a,o){a=[0].concat(aps.call(a,0));o=o||d.global;return function(node){a[0]=node;return f.apply(o,a)}};var adaptAsForEach=function(f,o){return function(){this.forEach(loopBody(f,arguments,o));return this}};var adaptAsMap=function(f,o){return function(){return this.map(loopBody(f,arguments,o))}};var adaptAsFilter=function(f,o){return function(){return this.filter(loopBody(f,arguments,o))}};var adaptWithCondition=function(f,g,o){return function(){var a=arguments,body=loopBody(f,a,o);if(g.call(o||d.global,a)){return this.map(body)}this.forEach(body);return this}};var magicGuard=function(a){return a.length==1&&d.isString(a[0])};var orphan=function(node){var p=node.parentNode;if(p){p.removeChild(node)}};dojo.NodeList=function(){return tnl(Array.apply(null,arguments))};var nl=d.NodeList,nlp=nl.prototype;nl._wrap=tnl;nl._adaptAsMap=adaptAsMap;nl._adaptAsForEach=adaptAsForEach;nl._adaptAsFilter=adaptAsFilter;nl._adaptWithCondition=adaptWithCondition;d.forEach(["slice","splice"],function(name){var f=ap[name];nlp[name]=function(){return tnl(f.apply(this,arguments))}});d.forEach(["indexOf","lastIndexOf","every","some"],function(name){var f=d[name];nlp[name]=function(){return f.apply(d,[this].concat(aps.call(arguments,0)))}});d.forEach(["attr","style"],function(name){nlp[name]=adaptWithCondition(d[name],magicGuard)});d.forEach(["connect","addClass","removeClass","toggleClass","empty"],function(name){nlp[name]=adaptAsForEach(d[name])});dojo.extend(dojo.NodeList,{concat:function(item){var t=d.isArray(this)?this:aps.call(this,0),m=d.map(arguments,function(a){return a&&!d.isArray(a)&&(a.constructor===NodeList||a.constructor==nl)?aps.call(a,0):a});return tnl(apc.apply(t,m))},map:function(func,obj){return tnl(d.map(this,func,obj))},forEach:function(callback,thisObj){d.forEach(this,callback,thisObj);return this},coords:adaptAsMap(d.coords),place:function(queryOrNode,position){var item=d.query(queryOrNode)[0];return this.forEach(function(node){d.place(node,item,position)})},orphan:function(simpleFilter){return(simpleFilter?d._filterQueryResult(this,simpleFilter):this).forEach(orphan)},adopt:function(queryOrListOrNode,position){return d.query(queryOrListOrNode).place(item[0],position)},query:function(queryStr){if(!queryStr){return this}var ret=this.map(function(node){return d.query(queryStr,node).filter(function(subNode){return subNode!==undefined})});return tnl(apc.apply([],ret))},filter:function(simpleFilter){var a=arguments,items=this,start=0;if(d.isString(simpleFilter)){items=d._filterQueryResult(this,a[0]);if(a.length==1){return items}start=1}return tnl(d.filter(items,a[start],a[start+1]))},addContent:function(content,position){var c=d.isString(content)?d._toDom(content,this[0]&&this[0].ownerDocument):content,i,l=this.length-1;for(i=0;i<l;++i){d.place(c.cloneNode(true),this[i],position)}if(l>=0){d.place(c,this[l],position)}return this},instantiate:function(declaredClass,properties){var c=d.isFunction(declaredClass)?declaredClass:d.getObject(declaredClass);properties=properties||{};return this.forEach(function(node){new c(properties,node)})},at:function(){var t=new dojo.NodeList();d.forEach(arguments,function(i){if(this[i]){t.push(this[i])}},this);return t}});d.forEach(["blur","focus","change","click","error","keydown","keypress","keyup","load","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","submit"],function(evt){var _oe="on"+evt;nlp[_oe]=function(a,b){return this.connect(_oe,a,b)}})})()}if(!dojo._hasResource["dojo._base.query"]){dojo._hasResource["dojo._base.query"]=true;if(typeof dojo!="undefined"){dojo.provide("dojo._base.query")}(function(d){var trim=d.trim;var each=d.forEach;var qlc=d._queryListCtor=d.NodeList;var isString=d.isString;var getDoc=function(){return d.doc};var cssCaseBug=(d.isWebKit&&((getDoc().compatMode)=="BackCompat"));var childNodesName=!!getDoc().firstChild["children"]?"children":"childNodes";var specials=">~+";var caseSensitive=false;var yesman=function(){return true};var getQueryParts=function(query){if(specials.indexOf(query.slice(-1))>=0){query+=" * "}else{query+=" "}var ts=function(s,e){return trim(query.slice(s,e))};var queryParts=[];var inBrackets=-1,inParens=-1,inMatchFor=-1,inPseudo=-1,inClass=-1,inId=-1,inTag=-1,lc="",cc="",pStart;var x=0,ql=query.length,currentPart=null,_cp=null;var endTag=function(){if(inTag>=0){var tv=(inTag==x)?null:ts(inTag,x);currentPart[(specials.indexOf(tv)<0)?"tag":"oper"]=tv;inTag=-1}};var endId=function(){if(inId>=0){currentPart.id=ts(inId,x).replace(/\\/g,"");inId=-1}};var endClass=function(){if(inClass>=0){currentPart.classes.push(ts(inClass+1,x).replace(/\\/g,""));inClass=-1}};var endAll=function(){endId();endTag();endClass()};var endPart=function(){endAll();if(inPseudo>=0){currentPart.pseudos.push({name:ts(inPseudo+1,x)})}currentPart.loops=(currentPart.pseudos.length||currentPart.attrs.length||currentPart.classes.length);currentPart.oquery=currentPart.query=ts(pStart,x);currentPart.otag=currentPart.tag=(currentPart["oper"])?null:(currentPart.tag||"*");if(currentPart.tag){currentPart.tag=currentPart.tag.toUpperCase()}if(queryParts.length&&(queryParts[queryParts.length-1].oper)){currentPart.infixOper=queryParts.pop();currentPart.query=currentPart.infixOper.query+" "+currentPart.query}queryParts.push(currentPart);currentPart=null};for(;lc=cc,cc=query.charAt(x),x<ql;x++){if(lc=="\\"){continue}if(!currentPart){pStart=x;currentPart={query:null,pseudos:[],attrs:[],classes:[],tag:null,oper:null,id:null,getTag:function(){return(caseSensitive)?this.otag:this.tag}};inTag=x}if(inBrackets>=0){if(cc=="]"){if(!_cp.attr){_cp.attr=ts(inBrackets+1,x)}else{_cp.matchFor=ts((inMatchFor||inBrackets+1),x)}var cmf=_cp.matchFor;if(cmf){if((cmf.charAt(0)=='"')||(cmf.charAt(0)=="'")){_cp.matchFor=cmf.slice(1,-1)}}currentPart.attrs.push(_cp);_cp=null;inBrackets=inMatchFor=-1}else{if(cc=="="){var addToCc=("|~^$*".indexOf(lc)>=0)?lc:"";_cp.type=addToCc+cc;_cp.attr=ts(inBrackets+1,x-addToCc.length);inMatchFor=x+1}}}else{if(inParens>=0){if(cc==")"){if(inPseudo>=0){_cp.value=ts(inParens+1,x)}inPseudo=inParens=-1}}else{if(cc=="#"){endAll();inId=x+1}else{if(cc=="."){endAll();inClass=x}else{if(cc==":"){endAll();inPseudo=x}else{if(cc=="["){endAll();inBrackets=x;_cp={}}else{if(cc=="("){if(inPseudo>=0){_cp={name:ts(inPseudo+1,x),value:null};currentPart.pseudos.push(_cp)}inParens=x}else{if((cc==" ")&&(lc!=cc)){endPart()}}}}}}}}}return queryParts};var agree=function(first,second){if(!first){return second}if(!second){return first}return function(){return first.apply(window,arguments)&&second.apply(window,arguments)}};var getArr=function(i,arr){var r=arr||[];if(i){r.push(i)}return r};var _isElement=function(n){return(1==n.nodeType)};var blank="";var _getAttr=function(elem,attr){if(!elem){return blank}if(attr=="class"){return elem.className||blank}if(attr=="for"){return elem.htmlFor||blank}if(attr=="style"){return elem.style.cssText||blank}return(caseSensitive?elem.getAttribute(attr):elem.getAttribute(attr,2))||blank};var attrs={"*=":function(attr,value){return function(elem){return(_getAttr(elem,attr).indexOf(value)>=0)}},"^=":function(attr,value){return function(elem){return(_getAttr(elem,attr).indexOf(value)==0)}},"$=":function(attr,value){var tval=" "+value;return function(elem){var ea=" "+_getAttr(elem,attr);return(ea.lastIndexOf(value)==(ea.length-value.length))}},"~=":function(attr,value){var tval=" "+value+" ";return function(elem){var ea=" "+_getAttr(elem,attr)+" ";return(ea.indexOf(tval)>=0)}},"|=":function(attr,value){var valueDash=" "+value+"-";return function(elem){var ea=" "+_getAttr(elem,attr);return((ea==value)||(ea.indexOf(valueDash)==0))}},"=":function(attr,value){return function(elem){return(_getAttr(elem,attr)==value)}}};var _noNES=(typeof getDoc().firstChild.nextElementSibling=="undefined");var _ns=!_noNES?"nextElementSibling":"nextSibling";var _ps=!_noNES?"previousElementSibling":"previousSibling";var _simpleNodeTest=(_noNES?_isElement:yesman);var _lookLeft=function(node){while(node=node[_ps]){if(_simpleNodeTest(node)){return false}}return true};var _lookRight=function(node){while(node=node[_ns]){if(_simpleNodeTest(node)){return false}}return true};var getNodeIndex=function(node){var root=node.parentNode;var i=0,tret=root[childNodesName],ci=(node["_i"]||-1),cl=(root["_l"]||-1);if(!tret){return -1}var l=tret.length;if(cl==l&&ci>=0&&cl>=0){return ci}root["_l"]=l;ci=-1;for(var te=root["firstElementChild"]||root["firstChild"];te;te=te[_ns]){if(_simpleNodeTest(te)){te["_i"]=++i;if(node===te){ci=i}}}return ci};var isEven=function(elem){return !((getNodeIndex(elem))%2)};var isOdd=function(elem){return((getNodeIndex(elem))%2)};var pseudos={"checked":function(name,condition){return function(elem){return !!d.attr(elem,"checked")}},"first-child":function(){return _lookLeft},"last-child":function(){return _lookRight},"only-child":function(name,condition){return function(node){if(!_lookLeft(node)){return false}if(!_lookRight(node)){return false}return true}},"empty":function(name,condition){return function(elem){var cn=elem.childNodes;var cnl=elem.childNodes.length;for(var x=cnl-1;x>=0;x--){var nt=cn[x].nodeType;if((nt===1)||(nt==3)){return false}}return true}},"contains":function(name,condition){var cz=condition.charAt(0);if(cz=='"'||cz=="'"){condition=condition.slice(1,-1)}return function(elem){return(elem.innerHTML.indexOf(condition)>=0)}},"not":function(name,condition){var p=getQueryParts(condition)[0];var ignores={el:1};if(p.tag!="*"){ignores.tag=1}if(!p.classes.length){ignores.classes=1}var ntf=getSimpleFilterFunc(p,ignores);return function(elem){return(!ntf(elem))}},"nth-child":function(name,condition){var pi=parseInt;if(condition=="odd"){return isOdd}else{if(condition=="even"){return isEven}}if(condition.indexOf("n")!=-1){var tparts=condition.split("n",2);var pred=tparts[0]?((tparts[0]=="-")?-1:pi(tparts[0])):1;var idx=tparts[1]?pi(tparts[1]):0;var lb=0,ub=-1;if(pred>0){if(idx<0){idx=(idx%pred)&&(pred+(idx%pred))}else{if(idx>0){if(idx>=pred){lb=idx-idx%pred}idx=idx%pred}}}else{if(pred<0){pred*=-1;if(idx>0){ub=idx;idx=idx%pred}}}if(pred>0){return function(elem){var i=getNodeIndex(elem);return(i>=lb)&&(ub<0||i<=ub)&&((i%pred)==idx)}}else{condition=idx}}var ncount=pi(condition);return function(elem){return(getNodeIndex(elem)==ncount)}}};var defaultGetter=(d.isIE)?function(cond){var clc=cond.toLowerCase();if(clc=="class"){cond="className"}return function(elem){return(caseSensitive?elem.getAttribute(cond):elem[cond]||elem[clc])}}:function(cond){return function(elem){return(elem&&elem.getAttribute&&elem.hasAttribute(cond))}};var getSimpleFilterFunc=function(query,ignores){if(!query){return yesman}ignores=ignores||{};var ff=null;if(!("el" in ignores)){ff=agree(ff,_isElement)}if(!("tag" in ignores)){if(query.tag!="*"){ff=agree(ff,function(elem){return(elem&&(elem.tagName==query.getTag()))})}}if(!("classes" in ignores)){each(query.classes,function(cname,idx,arr){var re=new RegExp("(?:^|\\s)"+cname+"(?:\\s|$)");ff=agree(ff,function(elem){return re.test(elem.className)});ff.count=idx})}if(!("pseudos" in ignores)){each(query.pseudos,function(pseudo){var pn=pseudo.name;if(pseudos[pn]){ff=agree(ff,pseudos[pn](pn,pseudo.value))}})}if(!("attrs" in ignores)){each(query.attrs,function(attr){var matcher;var a=attr.attr;if(attr.type&&attrs[attr.type]){matcher=attrs[attr.type](a,attr.matchFor)}else{if(a.length){matcher=defaultGetter(a)}}if(matcher){ff=agree(ff,matcher)}})}if(!("id" in ignores)){if(query.id){ff=agree(ff,function(elem){return(!!elem&&(elem.id==query.id))})}}if(!ff){if(!("default" in ignores)){ff=yesman}}return ff};var _nextSibling=function(filterFunc){return function(node,ret,bag){while(node=node[_ns]){if(_noNES&&(!_isElement(node))){continue}if((!bag||_isUnique(node,bag))&&filterFunc(node)){ret.push(node)}break}return ret}};var _nextSiblings=function(filterFunc){return function(root,ret,bag){var te=root[_ns];while(te){if(_simpleNodeTest(te)){if(bag&&!_isUnique(te,bag)){break}if(filterFunc(te)){ret.push(te)}}te=te[_ns]}return ret}};var _childElements=function(filterFunc){filterFunc=filterFunc||yesman;return function(root,ret,bag){var te,x=0,tret=root[childNodesName];while(te=tret[x++]){if(_simpleNodeTest(te)&&(!bag||_isUnique(te,bag))&&(filterFunc(te,x))){ret.push(te)}}return ret}};var _isDescendant=function(node,root){var pn=node.parentNode;while(pn){if(pn==root){break}pn=pn.parentNode}return !!pn};var _getElementsFuncCache={};var getElementsFunc=function(query){var retFunc=_getElementsFuncCache[query.query];if(retFunc){return retFunc}var io=query.infixOper;var oper=(io?io.oper:"");var filterFunc=getSimpleFilterFunc(query,{el:1});var qt=query.tag;var wildcardTag=("*"==qt);var ecs=getDoc()["getElementsByClassName"];if(!oper){if(query.id){filterFunc=(!query.loops&&wildcardTag)?yesman:getSimpleFilterFunc(query,{el:1,id:1});retFunc=function(root,arr){var te=d.byId(query.id,(root.ownerDocument||root));if(!te||!filterFunc(te)){return }if(9==root.nodeType){return getArr(te,arr)}else{if(_isDescendant(te,root)){return getArr(te,arr)}}}}else{if(ecs&&/\{\s*\[native code\]\s*\}/.test(String(ecs))&&query.classes.length&&!cssCaseBug){filterFunc=getSimpleFilterFunc(query,{el:1,classes:1,id:1});var classesString=query.classes.join(" ");retFunc=function(root,arr,bag){var ret=getArr(0,arr),te,x=0;var tret=root.getElementsByClassName(classesString);while((te=tret[x++])){if(filterFunc(te,root)&&_isUnique(te,bag)){ret.push(te)}}return ret}}else{if(!wildcardTag&&!query.loops){retFunc=function(root,arr,bag){var ret=getArr(0,arr),te,x=0;var tret=root.getElementsByTagName(query.getTag());while((te=tret[x++])){if(_isUnique(te,bag)){ret.push(te)}}return ret}}else{filterFunc=getSimpleFilterFunc(query,{el:1,tag:1,id:1});retFunc=function(root,arr,bag){var ret=getArr(0,arr),te,x=0;var tret=root.getElementsByTagName(query.getTag());while((te=tret[x++])){if(filterFunc(te,root)&&_isUnique(te,bag)){ret.push(te)}}return ret}}}}}else{var skipFilters={el:1};if(wildcardTag){skipFilters.tag=1}filterFunc=getSimpleFilterFunc(query,skipFilters);if("+"==oper){retFunc=_nextSibling(filterFunc)}else{if("~"==oper){retFunc=_nextSiblings(filterFunc)}else{if(">"==oper){retFunc=_childElements(filterFunc)}}}}return _getElementsFuncCache[query.query]=retFunc};var filterDown=function(root,queryParts){var candidates=getArr(root),qp,x,te,qpl=queryParts.length,bag,ret;for(var i=0;i<qpl;i++){ret=[];qp=queryParts[i];x=candidates.length-1;if(x>0){bag={};ret.nozip=true}var gef=getElementsFunc(qp);while(te=candidates[x--]){gef(te,ret,bag)}if(!ret.length){break}candidates=ret}return ret};var _queryFuncCacheDOM={},_queryFuncCacheQSA={};var getStepQueryFunc=function(query){var qparts=getQueryParts(trim(query));if(qparts.length==1){var tef=getElementsFunc(qparts[0]);return function(root){var r=tef(root,new qlc());if(r){r.nozip=true}return r}}return function(root){return filterDown(root,qparts)}};var nua=navigator.userAgent;var wk="WebKit/";var is525=(d.isWebKit&&(nua.indexOf(wk)>0)&&(parseFloat(nua.split(wk)[1])>528));var noZip=d.isIE?"commentStrip":"nozip";var qsa="querySelectorAll";var qsaAvail=(!!getDoc()[qsa]&&(!d.isSafari||(d.isSafari>3.1)||is525));var getQueryFunc=function(query,forceDOM){if(qsaAvail){var qsaCached=_queryFuncCacheQSA[query];if(qsaCached&&!forceDOM){return qsaCached}}var domCached=_queryFuncCacheDOM[query];if(domCached){return domCached}var qcz=query.charAt(0);var nospace=(-1==query.indexOf(" "));if((query.indexOf("#")>=0)&&(nospace)){forceDOM=true}var useQSA=(qsaAvail&&(!forceDOM)&&(specials.indexOf(qcz)==-1)&&(!d.isIE||(query.indexOf(":")==-1))&&(!(cssCaseBug&&(query.indexOf(".")>=0)))&&(query.indexOf(":contains")==-1)&&(query.indexOf("|=")==-1));if(useQSA){var tq=(specials.indexOf(query.charAt(query.length-1))>=0)?(query+" *"):query;return _queryFuncCacheQSA[query]=function(root){try{if(!((9==root.nodeType)||nospace)){throw""}var r=root[qsa](tq);r[noZip]=true;return r}catch(e){return getQueryFunc(query,true)(root)}}}else{var parts=query.split(/\s*,\s*/);return _queryFuncCacheDOM[query]=((parts.length<2)?getStepQueryFunc(query):function(root){var pindex=0,ret=[],tp;while((tp=parts[pindex++])){ret=ret.concat(getStepQueryFunc(tp)(root))}return ret})}};var _zipIdx=0;var _nodeUID=d.isIE?function(node){if(caseSensitive){return(node.getAttribute("_uid")||node.setAttribute("_uid",++_zipIdx)||_zipIdx)}else{return node.uniqueID}}:function(node){return(node._uid||(node._uid=++_zipIdx))};var _isUnique=function(node,bag){if(!bag){return 1}var id=_nodeUID(node);if(!bag[id]){return bag[id]=1}return 0};var _zipIdxName="_zipIdx";var _zip=function(arr){if(arr&&arr.nozip){return(qlc._wrap)?qlc._wrap(arr):arr}var ret=new qlc();if(!arr||!arr.length){return ret}if(arr[0]){ret.push(arr[0])}if(arr.length<2){return ret}_zipIdx++;if(d.isIE&&caseSensitive){var szidx=_zipIdx+"";arr[0].setAttribute(_zipIdxName,szidx);for(var x=1,te;te=arr[x];x++){if(arr[x].getAttribute(_zipIdxName)!=szidx){ret.push(te)}te.setAttribute(_zipIdxName,szidx)}}else{if(d.isIE&&arr.commentStrip){try{for(var x=1,te;te=arr[x];x++){if(_isElement(te)){ret.push(te)}}}catch(e){}}else{if(arr[0]){arr[0][_zipIdxName]=_zipIdx}for(var x=1,te;te=arr[x];x++){if(arr[x][_zipIdxName]!=_zipIdx){ret.push(te)}te[_zipIdxName]=_zipIdx}}}return ret};d.query=function(query,root){qlc=d._queryListCtor;if(!query){return new qlc()}if(query.constructor==qlc){return query}if(!isString(query)){return new qlc(query)}if(isString(root)){root=d.byId(root);if(!root){return new qlc()}}root=root||getDoc();var od=root.ownerDocument||root.documentElement;caseSensitive=(root.contentType&&root.contentType=="application/xml")||(d.isOpera&&(root.doctype||od.toString()=="[object XMLDocument]"))||(!!od)&&(d.isIE?od.xml:(root.xmlVersion||od.xmlVersion));var r=getQueryFunc(query)(root);if(r&&r.nozip&&!qlc._wrap){return r}return _zip(r)};d.query.pseudos=pseudos;d._filterQueryResult=function(nodeList,simpleFilter){var tmpNodeList=new d._queryListCtor();var filterFunc=getSimpleFilterFunc(getQueryParts(simpleFilter)[0]);for(var x=0,te;te=nodeList[x];x++){if(filterFunc(te)){tmpNodeList.push(te)}}return tmpNodeList}})(this["queryPortability"]||this["acme"]||dojo)}if(!dojo._hasResource["dojo._base.xhr"]){dojo._hasResource["dojo._base.xhr"]=true;dojo.provide("dojo._base.xhr");(function(){var _d=dojo;function setValue(obj,name,value){var val=obj[name];if(_d.isString(val)){obj[name]=[val,value]}else{if(_d.isArray(val)){val.push(value)}else{obj[name]=value}}}dojo.formToObject=function(formNode){var ret={};var exclude="file|submit|image|reset|button|";_d.forEach(dojo.byId(formNode).elements,function(item){var _in=item.name;var type=(item.type||"").toLowerCase();if(_in&&type&&exclude.indexOf(type)==-1&&!item.disabled){if(type=="radio"||type=="checkbox"){if(item.checked){setValue(ret,_in,item.value)}}else{if(item.multiple){ret[_in]=[];_d.query("option",item).forEach(function(opt){if(opt.selected){setValue(ret,_in,opt.value)}})}else{setValue(ret,_in,item.value);if(type=="image"){ret[_in+".x"]=ret[_in+".y"]=ret[_in].x=ret[_in].y=0}}}}});return ret};dojo.objectToQuery=function(map){var enc=encodeURIComponent;var pairs=[];var backstop={};for(var name in map){var value=map[name];if(value!=backstop[name]){var assign=enc(name)+"=";if(_d.isArray(value)){for(var i=0;i<value.length;i++){pairs.push(assign+enc(value[i]))}}else{pairs.push(assign+enc(value))}}}return pairs.join("&")};dojo.formToQuery=function(formNode){return _d.objectToQuery(_d.formToObject(formNode))};dojo.formToJson=function(formNode,prettyPrint){return _d.toJson(_d.formToObject(formNode),prettyPrint)};dojo.queryToObject=function(str){var ret={};var qp=str.split("&");var dec=decodeURIComponent;_d.forEach(qp,function(item){if(item.length){var parts=item.split("=");var name=dec(parts.shift());var val=dec(parts.join("="));if(_d.isString(ret[name])){ret[name]=[ret[name]]}if(_d.isArray(ret[name])){ret[name].push(val)}else{ret[name]=val}}});return ret};dojo._blockAsync=false;dojo._contentHandlers={text:function(xhr){return xhr.responseText},json:function(xhr){return _d.fromJson(xhr.responseText||null)},"json-comment-filtered":function(xhr){if(!dojo.config.useCommentedJson){console.warn("Consider using the standard mimetype:application/json. json-commenting can introduce security issues. To decrease the chances of hijacking, use the standard the 'json' handler and prefix your json with: {}&&\nUse djConfig.useCommentedJson=true to turn off this message.")}var value=xhr.responseText;var cStartIdx=value.indexOf("/*");var cEndIdx=value.lastIndexOf("*/");if(cStartIdx==-1||cEndIdx==-1){throw new Error("JSON was not comment filtered")}return _d.fromJson(value.substring(cStartIdx+2,cEndIdx))},javascript:function(xhr){return _d.eval(xhr.responseText)},xml:function(xhr){var result=xhr.responseXML;if(_d.isIE&&(!result||!result.documentElement)){var ms=function(n){return"MSXML"+n+".DOMDocument"};var dp=["Microsoft.XMLDOM",ms(6),ms(4),ms(3),ms(2)];_d.some(dp,function(p){try{var dom=new ActiveXObject(p);dom.async=false;dom.loadXML(xhr.responseText);result=dom}catch(e){return false}return true})}return result}};dojo._contentHandlers["json-comment-optional"]=function(xhr){var handlers=_d._contentHandlers;if(xhr.responseText&&xhr.responseText.indexOf("/*")!=-1){return handlers["json-comment-filtered"](xhr)}else{return handlers["json"](xhr)}};dojo._ioSetArgs=function(args,canceller,okHandler,errHandler){var ioArgs={args:args,url:args.url};var formObject=null;if(args.form){var form=_d.byId(args.form);var actnNode=form.getAttributeNode("action");ioArgs.url=ioArgs.url||(actnNode?actnNode.value:null);formObject=_d.formToObject(form)}var miArgs=[{}];if(formObject){miArgs.push(formObject)}if(args.content){miArgs.push(args.content)}if(args.preventCache){miArgs.push({"dojo.preventCache":new Date().valueOf()})}ioArgs.query=_d.objectToQuery(_d.mixin.apply(null,miArgs));ioArgs.handleAs=args.handleAs||"text";var d=new _d.Deferred(canceller);d.addCallbacks(okHandler,function(error){return errHandler(error,d)});var ld=args.load;if(ld&&_d.isFunction(ld)){d.addCallback(function(value){return ld.call(args,value,ioArgs)})}var err=args.error;if(err&&_d.isFunction(err)){d.addErrback(function(value){return err.call(args,value,ioArgs)})}var handle=args.handle;if(handle&&_d.isFunction(handle)){d.addBoth(function(value){return handle.call(args,value,ioArgs)})}d.ioArgs=ioArgs;return d};var _deferredCancel=function(dfd){dfd.canceled=true;var xhr=dfd.ioArgs.xhr;var _at=typeof xhr.abort;if(_at=="function"||_at=="object"||_at=="unknown"){xhr.abort()}var err=dfd.ioArgs.error;if(!err){err=new Error("xhr cancelled");err.dojoType="cancel"}return err};var _deferredOk=function(dfd){var ret=_d._contentHandlers[dfd.ioArgs.handleAs](dfd.ioArgs.xhr);return ret===undefined?null:ret};var _deferError=function(error,dfd){console.error(error);return error};var _inFlightIntvl=null;var _inFlight=[];var _watchInFlight=function(){var now=(new Date()).getTime();if(!_d._blockAsync){for(var i=0,tif;i<_inFlight.length&&(tif=_inFlight[i]);i++){var dfd=tif.dfd;var func=function(){if(!dfd||dfd.canceled||!tif.validCheck(dfd)){_inFlight.splice(i--,1)}else{if(tif.ioCheck(dfd)){_inFlight.splice(i--,1);tif.resHandle(dfd)}else{if(dfd.startTime){if(dfd.startTime+(dfd.ioArgs.args.timeout||0)<now){_inFlight.splice(i--,1);var err=new Error("timeout exceeded");err.dojoType="timeout";dfd.errback(err);dfd.cancel()}}}}};if(dojo.config.debugAtAllCosts){func.call(this)}else{try{func.call(this)}catch(e){dfd.errback(e)}}}}if(!_inFlight.length){clearInterval(_inFlightIntvl);_inFlightIntvl=null;return }};dojo._ioCancelAll=function(){try{_d.forEach(_inFlight,function(i){try{i.dfd.cancel()}catch(e){}})}catch(e){}};if(_d.isIE){_d.addOnWindowUnload(_d._ioCancelAll)}_d._ioWatch=function(dfd,validCheck,ioCheck,resHandle){var args=dfd.ioArgs.args;if(args.timeout){dfd.startTime=(new Date()).getTime()}_inFlight.push({dfd:dfd,validCheck:validCheck,ioCheck:ioCheck,resHandle:resHandle});if(!_inFlightIntvl){_inFlightIntvl=setInterval(_watchInFlight,50)}if(args.sync){_watchInFlight()}};var _defaultContentType="application/x-www-form-urlencoded";var _validCheck=function(dfd){return dfd.ioArgs.xhr.readyState};var _ioCheck=function(dfd){return 4==dfd.ioArgs.xhr.readyState};var _resHandle=function(dfd){var xhr=dfd.ioArgs.xhr;if(_d._isDocumentOk(xhr)){dfd.callback(dfd)}else{var err=new Error("Unable to load "+dfd.ioArgs.url+" status:"+xhr.status);err.status=xhr.status;err.responseText=xhr.responseText;dfd.errback(err)}};dojo._ioAddQueryToUrl=function(ioArgs){if(ioArgs.query.length){ioArgs.url+=(ioArgs.url.indexOf("?")==-1?"?":"&")+ioArgs.query;ioArgs.query=null}};dojo.xhr=function(method,args,hasBody){var dfd=_d._ioSetArgs(args,_deferredCancel,_deferredOk,_deferError);dfd.ioArgs.xhr=_d._xhrObj(dfd.ioArgs.args);if(hasBody){if("postData" in args){dfd.ioArgs.query=args.postData}else{if("putData" in args){dfd.ioArgs.query=args.putData}}}else{_d._ioAddQueryToUrl(dfd.ioArgs)}var ioArgs=dfd.ioArgs;var xhr=ioArgs.xhr;xhr.open(method,ioArgs.url,args.sync!==true,args.user||undefined,args.password||undefined);if(args.headers){for(var hdr in args.headers){if(hdr.toLowerCase()==="content-type"&&!args.contentType){args.contentType=args.headers[hdr]}else{xhr.setRequestHeader(hdr,args.headers[hdr])}}}xhr.setRequestHeader("Content-Type",args.contentType||_defaultContentType);if(!args.headers||!args.headers["X-Requested-With"]){xhr.setRequestHeader("X-Requested-With","XMLHttpRequest")}if(dojo.config.debugAtAllCosts){xhr.send(ioArgs.query)}else{try{xhr.send(ioArgs.query)}catch(e){dfd.ioArgs.error=e;dfd.cancel()}}_d._ioWatch(dfd,_validCheck,_ioCheck,_resHandle);xhr=null;return dfd};dojo.xhrGet=function(args){return _d.xhr("GET",args)};dojo.rawXhrPost=dojo.xhrPost=function(args){return _d.xhr("POST",args,true)};dojo.rawXhrPut=dojo.xhrPut=function(args){return _d.xhr("PUT",args,true)};dojo.xhrDelete=function(args){return _d.xhr("DELETE",args)}})()}if(!dojo._hasResource["dojo._base.fx"]){dojo._hasResource["dojo._base.fx"]=true;dojo.provide("dojo._base.fx");(function(){var d=dojo;var _mixin=d.mixin;dojo._Line=function(start,end){this.start=start;this.end=end};dojo._Line.prototype.getValue=function(n){return((this.end-this.start)*n)+this.start};d.declare("dojo._Animation",null,{constructor:function(args){_mixin(this,args);if(d.isArray(this.curve)){this.curve=new d._Line(this.curve[0],this.curve[1])}},duration:350,repeat:0,rate:10,_percent:0,_startRepeatCount:0,_fire:function(evt,args){if(this[evt]){if(dojo.config.debugAtAllCosts){this[evt].apply(this,args||[])}else{try{this[evt].apply(this,args||[])}catch(e){console.error("exception in animation handler for:",evt);console.error(e)}}}return this},play:function(delay,gotoStart){var _t=this;if(_t._delayTimer){_t._clearTimer()}if(gotoStart){_t._stopTimer();_t._active=_t._paused=false;_t._percent=0}else{if(_t._active&&!_t._paused){return _t}}_t._fire("beforeBegin");var de=delay||_t.delay,_p=dojo.hitch(_t,"_play",gotoStart);if(de>0){_t._delayTimer=setTimeout(_p,de);return _t}_p();return _t},_play:function(gotoStart){var _t=this;if(_t._delayTimer){_t._clearTimer()}_t._startTime=new Date().valueOf();if(_t._paused){_t._startTime-=_t.duration*_t._percent}_t._endTime=_t._startTime+_t.duration;_t._active=true;_t._paused=false;var value=_t.curve.getValue(_t._percent);if(!_t._percent){if(!_t._startRepeatCount){_t._startRepeatCount=_t.repeat}_t._fire("onBegin",[value])}_t._fire("onPlay",[value]);_t._cycle();return _t},pause:function(){var _t=this;if(_t._delayTimer){_t._clearTimer()}_t._stopTimer();if(!_t._active){return _t}_t._paused=true;_t._fire("onPause",[_t.curve.getValue(_t._percent)]);return _t},gotoPercent:function(percent,andPlay){var _t=this;_t._stopTimer();_t._active=_t._paused=true;_t._percent=percent;if(andPlay){_t.play()}return _t},stop:function(gotoEnd){var _t=this;if(_t._delayTimer){_t._clearTimer()}if(!_t._timer){return _t}_t._stopTimer();if(gotoEnd){_t._percent=1}_t._fire("onStop",[_t.curve.getValue(_t._percent)]);_t._active=_t._paused=false;return _t},status:function(){if(this._active){return this._paused?"paused":"playing"}return"stopped"},_cycle:function(){var _t=this;if(_t._active){var curr=new Date().valueOf();var step=(curr-_t._startTime)/(_t._endTime-_t._startTime);if(step>=1){step=1}_t._percent=step;if(_t.easing){step=_t.easing(step)}_t._fire("onAnimate",[_t.curve.getValue(step)]);if(_t._percent<1){_t._startTimer()}else{_t._active=false;if(_t.repeat>0){_t.repeat--;_t.play(null,true)}else{if(_t.repeat==-1){_t.play(null,true)}else{if(_t._startRepeatCount){_t.repeat=_t._startRepeatCount;_t._startRepeatCount=0}}}_t._percent=0;_t._fire("onEnd");_t._stopTimer()}}return _t},_clearTimer:function(){clearTimeout(this._delayTimer);delete this._delayTimer}});var ctr=0,_globalTimerList=[],timer=null,runner={run:function(){}};dojo._Animation.prototype._startTimer=function(){if(!this._timer){this._timer=d.connect(runner,"run",this,"_cycle");ctr++}if(!timer){timer=setInterval(d.hitch(runner,"run"),this.rate)}};dojo._Animation.prototype._stopTimer=function(){if(this._timer){d.disconnect(this._timer);this._timer=null;ctr--}if(ctr<=0){clearInterval(timer);timer=null;ctr=0}};var _makeFadeable=d.isIE?function(node){var ns=node.style;if(!ns.width.length&&d.style(node,"width")=="auto"){ns.width="auto"}}:function(){};dojo._fade=function(args){args.node=d.byId(args.node);var fArgs=_mixin({properties:{}},args),props=(fArgs.properties.opacity={});props.start=!("start" in fArgs)?function(){return +d.style(fArgs.node,"opacity")||0}:fArgs.start;props.end=fArgs.end;var anim=d.animateProperty(fArgs);d.connect(anim,"beforeBegin",d.partial(_makeFadeable,fArgs.node));return anim};dojo.fadeIn=function(args){return d._fade(_mixin({end:1},args))};dojo.fadeOut=function(args){return d._fade(_mixin({end:0},args))};dojo._defaultEasing=function(n){return 0.5+((Math.sin((n+1.5)*Math.PI))/2)};var PropLine=function(properties){this._properties=properties;for(var p in properties){var prop=properties[p];if(prop.start instanceof d.Color){prop.tempColor=new d.Color()}}};PropLine.prototype.getValue=function(r){var ret={};for(var p in this._properties){var prop=this._properties[p],start=prop.start;if(start instanceof d.Color){ret[p]=d.blendColors(start,prop.end,r,prop.tempColor).toCss()}else{if(!d.isArray(start)){ret[p]=((prop.end-start)*r)+start+(p!="opacity"?prop.units||"px":0)}}}return ret};dojo.animateProperty=function(args){args.node=d.byId(args.node);if(!args.easing){args.easing=d._defaultEasing}var anim=new d._Animation(args);d.connect(anim,"beforeBegin",anim,function(){var pm={};for(var p in this.properties){if(p=="width"||p=="height"){this.node.display="block"}var prop=this.properties[p];prop=pm[p]=_mixin({},(d.isObject(prop)?prop:{end:prop}));if(d.isFunction(prop.start)){prop.start=prop.start()}if(d.isFunction(prop.end)){prop.end=prop.end()}var isColor=(p.toLowerCase().indexOf("color")>=0);function getStyle(node,p){var v={height:node.offsetHeight,width:node.offsetWidth}[p];if(v!==undefined){return v}v=d.style(node,p);return(p=="opacity")?+v:(isColor?v:parseFloat(v))}if(!("end" in prop)){prop.end=getStyle(this.node,p)}else{if(!("start" in prop)){prop.start=getStyle(this.node,p)}}if(isColor){prop.start=new d.Color(prop.start);prop.end=new d.Color(prop.end)}else{prop.start=(p=="opacity")?+prop.start:parseFloat(prop.start)}}this.curve=new PropLine(pm)});d.connect(anim,"onAnimate",d.hitch(d,"style",anim.node));return anim};dojo.anim=function(node,properties,duration,easing,onEnd,delay){return d.animateProperty({node:node,duration:duration||d._Animation.prototype.duration,properties:properties,easing:easing,onEnd:onEnd}).play(delay||0)}})()}if(!dojo._hasResource["dojo._base.browser"]){dojo._hasResource["dojo._base.browser"]=true;dojo.provide("dojo._base.browser");dojo.forEach(dojo.config.require,function(i){dojo["require"](i)})}if(!dojo._hasResource["dijit._base.focus"]){dojo._hasResource["dijit._base.focus"]=true;dojo.provide("dijit._base.focus");dojo.mixin(dijit,{_curFocus:null,_prevFocus:null,isCollapsed:function(){var _document=dojo.doc;if(_document.selection){var s=_document.selection;if(s.type=="Text"){return !s.createRange().htmlText.length}else{return !s.createRange().length}}else{var _window=dojo.global;var selection=_window.getSelection();if(dojo.isString(selection)){return !selection}else{return !selection||selection.isCollapsed||!selection.toString()}}},getBookmark:function(){var bookmark,selection=dojo.doc.selection;if(selection){var range=selection.createRange();if(selection.type.toUpperCase()=="CONTROL"){if(range.length){bookmark=[];var i=0,len=range.length;while(i<len){bookmark.push(range.item(i++))}}else{bookmark=null}}else{bookmark=range.getBookmark()}}else{if(window.getSelection){selection=dojo.global.getSelection();if(selection){range=selection.getRangeAt(0);bookmark=range.cloneRange()}}else{console.warn("No idea how to store the current selection for this browser!")}}return bookmark},moveToBookmark:function(bookmark){var _document=dojo.doc;if(_document.selection){var range;if(dojo.isArray(bookmark)){range=_document.body.createControlRange();dojo.forEach(bookmark,function(n){range.addElement(n)})}else{range=_document.selection.createRange();range.moveToBookmark(bookmark)}range.select()}else{var selection=dojo.global.getSelection&&dojo.global.getSelection();if(selection&&selection.removeAllRanges){selection.removeAllRanges();selection.addRange(bookmark)}else{console.warn("No idea how to restore selection for this browser!")}}},getFocus:function(menu,openedForWindow){return{node:menu&&dojo.isDescendant(dijit._curFocus,menu.domNode)?dijit._prevFocus:dijit._curFocus,bookmark:!dojo.withGlobal(openedForWindow||dojo.global,dijit.isCollapsed)?dojo.withGlobal(openedForWindow||dojo.global,dijit.getBookmark):null,openedForWindow:openedForWindow}},focus:function(handle){if(!handle){return }var node="node" in handle?handle.node:handle,bookmark=handle.bookmark,openedForWindow=handle.openedForWindow;if(node){var focusNode=(node.tagName.toLowerCase()=="iframe")?node.contentWindow:node;if(focusNode&&focusNode.focus){try{focusNode.focus()}catch(e){}}dijit._onFocusNode(node)}if(bookmark&&dojo.withGlobal(openedForWindow||dojo.global,dijit.isCollapsed)){if(openedForWindow){openedForWindow.focus()}try{dojo.withGlobal(openedForWindow||dojo.global,dijit.moveToBookmark,null,[bookmark])}catch(e){}}},_activeStack:[],registerIframe:function(iframe){dijit.registerWin(iframe.contentWindow,iframe)},registerWin:function(targetWindow,effectiveNode){dojo.connect(targetWindow.document,"onmousedown",function(evt){dijit._justMouseDowned=true;setTimeout(function(){dijit._justMouseDowned=false},0);dijit._onTouchNode(effectiveNode||evt.target||evt.srcElement)});var doc=targetWindow.document;if(doc){if(dojo.isIE){doc.attachEvent("onactivate",function(evt){if(evt.srcElement.tagName.toLowerCase()!="#document"){dijit._onFocusNode(effectiveNode||evt.srcElement)}});doc.attachEvent("ondeactivate",function(evt){dijit._onBlurNode(effectiveNode||evt.srcElement)})}else{doc.addEventListener("focus",function(evt){dijit._onFocusNode(effectiveNode||evt.target)},true);doc.addEventListener("blur",function(evt){dijit._onBlurNode(effectiveNode||evt.target)},true)}}doc=null},_onBlurNode:function(node){dijit._prevFocus=dijit._curFocus;dijit._curFocus=null;if(dijit._justMouseDowned){return }if(dijit._clearActiveWidgetsTimer){clearTimeout(dijit._clearActiveWidgetsTimer)}dijit._clearActiveWidgetsTimer=setTimeout(function(){delete dijit._clearActiveWidgetsTimer;dijit._setStack([]);dijit._prevFocus=null},100)},_onTouchNode:function(node){if(dijit._clearActiveWidgetsTimer){clearTimeout(dijit._clearActiveWidgetsTimer);delete dijit._clearActiveWidgetsTimer}var newStack=[];try{while(node){if(node.dijitPopupParent){node=dijit.byId(node.dijitPopupParent).domNode}else{if(node.tagName&&node.tagName.toLowerCase()=="body"){if(node===dojo.body()){break}node=dijit.getDocumentWindow(node.ownerDocument).frameElement}else{var id=node.getAttribute&&node.getAttribute("widgetId");if(id){newStack.unshift(id)}node=node.parentNode}}}}catch(e){}dijit._setStack(newStack)},_onFocusNode:function(node){if(!node){return }if(node.nodeType==9){return }dijit._onTouchNode(node);if(node==dijit._curFocus){return }if(dijit._curFocus){dijit._prevFocus=dijit._curFocus}dijit._curFocus=node;dojo.publish("focusNode",[node])},_setStack:function(newStack){var oldStack=dijit._activeStack;dijit._activeStack=newStack;for(var nCommon=0;nCommon<Math.min(oldStack.length,newStack.length);nCommon++){if(oldStack[nCommon]!=newStack[nCommon]){break}}for(var i=oldStack.length-1;i>=nCommon;i--){var widget=dijit.byId(oldStack[i]);if(widget){widget._focused=false;widget._hasBeenBlurred=true;if(widget._onBlur){widget._onBlur()}if(widget._setStateClass){widget._setStateClass()}dojo.publish("widgetBlur",[widget])}}for(i=nCommon;i<newStack.length;i++){widget=dijit.byId(newStack[i]);if(widget){widget._focused=true;if(widget._onFocus){widget._onFocus()}if(widget._setStateClass){widget._setStateClass()}dojo.publish("widgetFocus",[widget])}}}});dojo.addOnLoad(function(){dijit.registerWin(window)})}if(!dojo._hasResource["dijit._base.manager"]){dojo._hasResource["dijit._base.manager"]=true;dojo.provide("dijit._base.manager");dojo.declare("dijit.WidgetSet",null,{constructor:function(){this._hash={}},add:function(widget){if(this._hash[widget.id]){throw new Error("Tried to register widget with id=="+widget.id+" but that id is already registered")}this._hash[widget.id]=widget},remove:function(id){delete this._hash[id]},forEach:function(func){for(var id in this._hash){func(this._hash[id])}},filter:function(filter){var res=new dijit.WidgetSet();this.forEach(function(widget){if(filter(widget)){res.add(widget)}});return res},byId:function(id){return this._hash[id]},byClass:function(cls){return this.filter(function(widget){return widget.declaredClass==cls})}});dijit.registry=new dijit.WidgetSet();dijit._widgetTypeCtr={};dijit.getUniqueId=function(widgetType){var id;do{id=widgetType+"_"+(widgetType in dijit._widgetTypeCtr?++dijit._widgetTypeCtr[widgetType]:dijit._widgetTypeCtr[widgetType]=0)}while(dijit.byId(id));return id};dijit.findWidgets=function(root){var outAry=[];function getChildrenHelper(root){var list=dojo.isIE?root.children:root.childNodes,i=0,node;while(node=list[i++]){if(node.nodeType!=1){continue}var widgetId=node.getAttribute("widgetId");if(widgetId){var widget=dijit.byId(widgetId);outAry.push(widget)}else{getChildrenHelper(node)}}}getChildrenHelper(root);return outAry};if(dojo.isIE){dojo.addOnWindowUnload(function(){dojo.forEach(dijit.findWidgets(dojo.body()),function(widget){if(widget.destroyRecursive){widget.destroyRecursive()}else{if(widget.destroy){widget.destroy()}}})})}dijit.byId=function(id){return(dojo.isString(id))?dijit.registry.byId(id):id};dijit.byNode=function(node){return dijit.registry.byId(node.getAttribute("widgetId"))};dijit.getEnclosingWidget=function(node){while(node){if(node.getAttribute&&node.getAttribute("widgetId")){return dijit.registry.byId(node.getAttribute("widgetId"))}node=node.parentNode}return null};dijit._tabElements={area:true,button:true,input:true,object:true,select:true,textarea:true};dijit._isElementShown=function(elem){var style=dojo.style(elem);return(style.visibility!="hidden")&&(style.visibility!="collapsed")&&(style.display!="none")&&(dojo.attr(elem,"type")!="hidden")};dijit.isTabNavigable=function(elem){if(dojo.hasAttr(elem,"disabled")){return false}var hasTabindex=dojo.hasAttr(elem,"tabindex");var tabindex=dojo.attr(elem,"tabindex");if(hasTabindex&&tabindex>=0){return true}var name=elem.nodeName.toLowerCase();if(((name=="a"&&dojo.hasAttr(elem,"href"))||dijit._tabElements[name])&&(!hasTabindex||tabindex>=0)){return true}return false};dijit._getTabNavigable=function(root){var first,last,lowest,lowestTabindex,highest,highestTabindex;var walkTree=function(parent){dojo.query("> *",parent).forEach(function(child){var isShown=dijit._isElementShown(child);if(isShown&&dijit.isTabNavigable(child)){var tabindex=dojo.attr(child,"tabindex");if(!dojo.hasAttr(child,"tabindex")||tabindex==0){if(!first){first=child}last=child}else{if(tabindex>0){if(!lowest||tabindex<lowestTabindex){lowestTabindex=tabindex;lowest=child}if(!highest||tabindex>=highestTabindex){highestTabindex=tabindex;highest=child}}}}if(isShown&&child.nodeName.toUpperCase()!="SELECT"){walkTree(child)}})};if(dijit._isElementShown(root)){walkTree(root)}return{first:first,last:last,lowest:lowest,highest:highest}};dijit.getFirstInTabbingOrder=function(root){var elems=dijit._getTabNavigable(dojo.byId(root));return elems.lowest?elems.lowest:elems.first};dijit.getLastInTabbingOrder=function(root){var elems=dijit._getTabNavigable(dojo.byId(root));return elems.last?elems.last:elems.highest};dijit.defaultDuration=dojo.config["defaultDuration"]||200}if(!dojo._hasResource["dojo.AdapterRegistry"]){dojo._hasResource["dojo.AdapterRegistry"]=true;dojo.provide("dojo.AdapterRegistry");dojo.AdapterRegistry=function(returnWrappers){this.pairs=[];this.returnWrappers=returnWrappers||false};dojo.extend(dojo.AdapterRegistry,{register:function(name,check,wrap,directReturn,override){this.pairs[((override)?"unshift":"push")]([name,check,wrap,directReturn])},match:function(){for(var i=0;i<this.pairs.length;i++){var pair=this.pairs[i];if(pair[1].apply(this,arguments)){if((pair[3])||(this.returnWrappers)){return pair[2]}else{return pair[2].apply(this,arguments)}}}throw new Error("No match found")},unregister:function(name){for(var i=0;i<this.pairs.length;i++){var pair=this.pairs[i];if(pair[0]==name){this.pairs.splice(i,1);return true}}return false}})}if(!dojo._hasResource["dijit._base.place"]){dojo._hasResource["dijit._base.place"]=true;dojo.provide("dijit._base.place");dijit.getViewport=function(){var scrollRoot=(dojo.doc.compatMode=="BackCompat")?dojo.body():dojo.doc.documentElement;var scroll=dojo._docScroll();return{w:scrollRoot.clientWidth,h:scrollRoot.clientHeight,l:scroll.x,t:scroll.y}};dijit.placeOnScreen=function(node,pos,corners,padding){var choices=dojo.map(corners,function(corner){var c={corner:corner,pos:{x:pos.x,y:pos.y}};if(padding){c.pos.x+=corner.charAt(1)=="L"?padding.x:-padding.x;c.pos.y+=corner.charAt(0)=="T"?padding.y:-padding.y}return c});return dijit._place(node,choices)};dijit._place=function(node,choices,layoutNode){var view=dijit.getViewport();if(!node.parentNode||String(node.parentNode.tagName).toLowerCase()!="body"){dojo.body().appendChild(node)}var best=null;dojo.some(choices,function(choice){var corner=choice.corner;var pos=choice.pos;if(layoutNode){layoutNode(node,choice.aroundCorner,corner)}var style=node.style;var oldDisplay=style.display;var oldVis=style.visibility;style.visibility="hidden";style.display="";var mb=dojo.marginBox(node);style.display=oldDisplay;style.visibility=oldVis;var startX=(corner.charAt(1)=="L"?pos.x:Math.max(view.l,pos.x-mb.w)),startY=(corner.charAt(0)=="T"?pos.y:Math.max(view.t,pos.y-mb.h)),endX=(corner.charAt(1)=="L"?Math.min(view.l+view.w,startX+mb.w):pos.x),endY=(corner.charAt(0)=="T"?Math.min(view.t+view.h,startY+mb.h):pos.y),width=endX-startX,height=endY-startY,overflow=(mb.w-width)+(mb.h-height);if(best==null||overflow<best.overflow){best={corner:corner,aroundCorner:choice.aroundCorner,x:startX,y:startY,w:width,h:height,overflow:overflow}}return !overflow});if(!dojo._isBodyLtr()){node.style.right=(dojo.coords(dojo.body()).w-best.x)+"px"}else{node.style.left=best.x+"px"}node.style.top=best.y+"px";if(best.overflow&&layoutNode){layoutNode(node,best.aroundCorner,best.corner)}return best};dijit.placeOnScreenAroundNode=function(node,aroundNode,aroundCorners,layoutNode){aroundNode=dojo.byId(aroundNode);var oldDisplay=aroundNode.style.display;aroundNode.style.display="";var aroundNodeW=aroundNode.offsetWidth;var aroundNodeH=aroundNode.offsetHeight;var aroundNodePos=dojo.coords(aroundNode,true);aroundNode.style.display=oldDisplay;return dijit._placeOnScreenAroundRect(node,aroundNodePos.x,aroundNodePos.y,aroundNodeW,aroundNodeH,aroundCorners,layoutNode)};dijit.placeOnScreenAroundRectangle=function(node,aroundRect,aroundCorners,layoutNode){return dijit._placeOnScreenAroundRect(node,aroundRect.x,aroundRect.y,aroundRect.width,aroundRect.height,aroundCorners,layoutNode)};dijit._placeOnScreenAroundRect=function(node,x,y,width,height,aroundCorners,layoutNode){var choices=[];for(var nodeCorner in aroundCorners){choices.push({aroundCorner:nodeCorner,corner:aroundCorners[nodeCorner],pos:{x:x+(nodeCorner.charAt(1)=="L"?0:width),y:y+(nodeCorner.charAt(0)=="T"?0:height)}})}return dijit._place(node,choices,layoutNode)};dijit.placementRegistry=new dojo.AdapterRegistry();dijit.placementRegistry.register("node",function(n,x){return typeof x=="object"&&typeof x.offsetWidth!="undefined"&&typeof x.offsetHeight!="undefined"},dijit.placeOnScreenAroundNode);dijit.placementRegistry.register("rect",function(n,x){return typeof x=="object"&&"x" in x&&"y" in x&&"width" in x&&"height" in x},dijit.placeOnScreenAroundRectangle);dijit.placeOnScreenAroundElement=function(node,aroundElement,aroundCorners,layoutNode){return dijit.placementRegistry.match.apply(dijit.placementRegistry,arguments)}}if(!dojo._hasResource["dijit._base.window"]){dojo._hasResource["dijit._base.window"]=true;dojo.provide("dijit._base.window");dijit.getDocumentWindow=function(doc){if(dojo.isIE&&window!==document.parentWindow&&!doc._parentWindow){doc.parentWindow.execScript("document._parentWindow = window;","Javascript");var win=doc._parentWindow;doc._parentWindow=null;return win}return doc._parentWindow||doc.parentWindow||doc.defaultView}}if(!dojo._hasResource["dijit._base.popup"]){dojo._hasResource["dijit._base.popup"]=true;dojo.provide("dijit._base.popup");dijit.popup=new function(){var stack=[],beginZIndex=1000,idGen=1;this.prepare=function(node){var s=node.style;s.visibility="hidden";s.position="absolute";s.top="-9999px";if(s.display=="none"){s.display=""}dojo.body().appendChild(node)};this.open=function(args){var widget=args.popup,orient=args.orient||{"BL":"TL","TL":"BL"},around=args.around,id=(args.around&&args.around.id)?(args.around.id+"_dropdown"):("popup_"+idGen++);var wrapper=dojo.create("div",{id:id,"class":"dijitPopup",style:{zIndex:beginZIndex+stack.length,visibility:"hidden"}},dojo.body());dijit.setWaiRole(wrapper,"presentation");wrapper.style.left=wrapper.style.top="0px";if(args.parent){wrapper.dijitPopupParent=args.parent.id}var s=widget.domNode.style;s.display="";s.visibility="";s.position="";s.top="0px";wrapper.appendChild(widget.domNode);var iframe=new dijit.BackgroundIframe(wrapper);var best=around?dijit.placeOnScreenAroundElement(wrapper,around,orient,widget.orient?dojo.hitch(widget,"orient"):null):dijit.placeOnScreen(wrapper,args,orient=="R"?["TR","BR","TL","BL"]:["TL","BL","TR","BR"],args.padding);wrapper.style.visibility="visible";var handlers=[];var getTopPopup=function(){for(var pi=stack.length-1;pi>0&&stack[pi].parent===stack[pi-1].widget;pi--){}return stack[pi]};handlers.push(dojo.connect(wrapper,"onkeypress",this,function(evt){if(evt.charOrCode==dojo.keys.ESCAPE&&args.onCancel){dojo.stopEvent(evt);args.onCancel()}else{if(evt.charOrCode===dojo.keys.TAB){dojo.stopEvent(evt);var topPopup=getTopPopup();if(topPopup&&topPopup.onCancel){topPopup.onCancel()}}}}));if(widget.onCancel){handlers.push(dojo.connect(widget,"onCancel",null,args.onCancel))}handlers.push(dojo.connect(widget,widget.onExecute?"onExecute":"onChange",null,function(){var topPopup=getTopPopup();if(topPopup&&topPopup.onExecute){topPopup.onExecute()}}));stack.push({wrapper:wrapper,iframe:iframe,widget:widget,parent:args.parent,onExecute:args.onExecute,onCancel:args.onCancel,onClose:args.onClose,handlers:handlers});if(widget.onOpen){widget.onOpen(best)}return best};this.close=function(popup){while(dojo.some(stack,function(elem){return elem.widget==popup})){var top=stack.pop(),wrapper=top.wrapper,iframe=top.iframe,widget=top.widget,onClose=top.onClose;if(widget.onClose){widget.onClose()}dojo.forEach(top.handlers,dojo.disconnect);if(!widget||!widget.domNode){return }this.prepare(widget.domNode);iframe.destroy();dojo.destroy(wrapper);if(onClose){onClose()}}}}();dijit._frames=new function(){var queue=[];this.pop=function(){var iframe;if(queue.length){iframe=queue.pop();iframe.style.display=""}else{if(dojo.isIE){var burl=dojo.config["dojoBlankHtmlUrl"]||(dojo.moduleUrl("dojo","resources/blank.html")+"")||'javascript:""';var html="<iframe src='"+burl+"' style='position: absolute; left: 0px; top: 0px;z-index: -1; filter:Alpha(Opacity=\"0\");'>";iframe=dojo.doc.createElement(html)}else{iframe=dojo.create("iframe");iframe.src='javascript:""';iframe.className="dijitBackgroundIframe"}iframe.tabIndex=-1;dojo.body().appendChild(iframe)}return iframe};this.push=function(iframe){iframe.style.display="none";if(dojo.isIE){iframe.style.removeExpression("width");iframe.style.removeExpression("height")}queue.push(iframe)}}();dijit.BackgroundIframe=function(node){if(!node.id){throw new Error("no id")}if(dojo.isIE<7||(dojo.isFF<3&&dojo.hasClass(dojo.body(),"dijit_a11y"))){var iframe=dijit._frames.pop();node.appendChild(iframe);if(dojo.isIE){iframe.style.setExpression("width",dojo._scopeName+".doc.getElementById('"+node.id+"').offsetWidth");iframe.style.setExpression("height",dojo._scopeName+".doc.getElementById('"+node.id+"').offsetHeight")}this.iframe=iframe}};dojo.extend(dijit.BackgroundIframe,{destroy:function(){if(this.iframe){dijit._frames.push(this.iframe);delete this.iframe}}})}if(!dojo._hasResource["dijit._base.scroll"]){dojo._hasResource["dijit._base.scroll"]=true;dojo.provide("dijit._base.scroll");dijit.scrollIntoView=function(node){try{node=dojo.byId(node);var doc=dojo.doc;var body=dojo.body();var html=body.parentNode;if((!(dojo.isFF>=3||dojo.isIE||dojo.isWebKit)||node==body||node==html)&&(typeof node.scrollIntoView=="function")){node.scrollIntoView(false);return }var ltr=dojo._isBodyLtr();var isIE8strict=dojo.isIE>=8&&!compatMode;var rtl=!ltr&&!isIE8strict;var scrollRoot=body;var compatMode=doc.compatMode=="BackCompat";if(compatMode){html._offsetWidth=html._clientWidth=body._offsetWidth=body.clientWidth;html._offsetHeight=html._clientHeight=body._offsetHeight=body.clientHeight}else{if(dojo.isWebKit){body._offsetWidth=body._clientWidth=html.clientWidth;body._offsetHeight=body._clientHeight=html.clientHeight}else{scrollRoot=html}html._offsetHeight=html.clientHeight;html._offsetWidth=html.clientWidth}function isFixedPosition(element){var ie=dojo.isIE;return((ie<=6||(ie>=7&&compatMode))?false:(dojo.style(element,"position").toLowerCase()=="fixed"))}function addPseudoAttrs(element){var parent=element.parentNode;var offsetParent=element.offsetParent;if(offsetParent==null||isFixedPosition(element)){offsetParent=html;parent=(element==body)?html:null}element._offsetParent=offsetParent;element._parent=parent;var bp=dojo._getBorderExtents(element);element._borderStart={H:(isIE8strict&&!ltr)?(bp.w-bp.l):bp.l,V:bp.t};element._borderSize={H:bp.w,V:bp.h};element._scrolledAmount={H:element.scrollLeft,V:element.scrollTop};element._offsetSize={H:element._offsetWidth||element.offsetWidth,V:element._offsetHeight||element.offsetHeight};element._offsetStart={H:(isIE8strict&&!ltr)?offsetParent.clientWidth-element.offsetLeft-element._offsetSize.H:element.offsetLeft,V:element.offsetTop};element._clientSize={H:element._clientWidth||element.clientWidth,V:element._clientHeight||element.clientHeight};if(element!=body&&element!=html&&element!=node){for(var dir in element._offsetSize){var scrollBarSize=element._offsetSize[dir]-element._clientSize[dir]-element._borderSize[dir];var hasScrollBar=element._clientSize[dir]>0&&scrollBarSize>0;if(hasScrollBar){element._offsetSize[dir]-=scrollBarSize;if(dojo.isIE&&rtl&&dir=="H"){element._offsetStart[dir]+=scrollBarSize}}}}}var element=node;while(element!=null){if(isFixedPosition(element)){node.scrollIntoView(false);return }addPseudoAttrs(element);element=element._parent}if(dojo.isIE&&node._parent){var offsetParent=node._offsetParent;node._offsetStart.H+=offsetParent._borderStart.H;node._offsetStart.V+=offsetParent._borderStart.V}if(dojo.isIE>=7&&scrollRoot==html&&rtl&&body._offsetStart&&body._offsetStart.H==0){var scroll=html.scrollWidth-html._offsetSize.H;if(scroll>0){body._offsetStart.H=-scroll}}if(dojo.isIE<=6&&!compatMode){html._offsetSize.H+=html._borderSize.H;html._offsetSize.V+=html._borderSize.V}if(rtl&&body._offsetStart&&scrollRoot==html&&html._scrolledAmount){var ofs=body._offsetStart.H;if(ofs<0){html._scrolledAmount.H+=ofs;body._offsetStart.H=0}}element=node;while(element){var parent=element._parent;if(!parent){break}if(parent.tagName=="TD"){var table=parent._parent._parent._parent;if(parent!=element._offsetParent&&parent._offsetParent!=element._offsetParent){parent=table}}var relative=element._offsetParent==parent;for(var dir in element._offsetStart){var otherDir=dir=="H"?"V":"H";if(rtl&&dir=="H"&&(parent!=html)&&(parent!=body)&&(dojo.isIE||dojo.isWebKit)&&parent._clientSize.H>0&&parent.scrollWidth>parent._clientSize.H){var delta=parent.scrollWidth-parent._clientSize.H;if(delta>0){parent._scrolledAmount.H-=delta}}if(parent._offsetParent.tagName=="TABLE"){if(dojo.isIE){parent._offsetStart[dir]-=parent._offsetParent._borderStart[dir];parent._borderStart[dir]=parent._borderSize[dir]=0}else{parent._offsetStart[dir]+=parent._offsetParent._borderStart[dir]}}if(dojo.isIE){parent._offsetStart[dir]+=parent._offsetParent._borderStart[dir]}var underflow=element._offsetStart[dir]-parent._scrolledAmount[dir]-(relative?0:parent._offsetStart[dir])-parent._borderStart[dir];var overflow=underflow+element._offsetSize[dir]-parent._offsetSize[dir]+parent._borderSize[dir];var scrollAttr=(dir=="H")?"scrollLeft":"scrollTop";var reverse=dir=="H"&&rtl;var underflowScroll=reverse?-overflow:underflow;var overflowScroll=reverse?-underflow:overflow;var scrollAmount=(underflowScroll*overflowScroll<=0)?0:Math[(underflowScroll<0)?"max":"min"](underflowScroll,overflowScroll);if(scrollAmount!=0){var oldScroll=parent[scrollAttr];parent[scrollAttr]+=(reverse)?-scrollAmount:scrollAmount;var scrolledAmount=parent[scrollAttr]-oldScroll}if(relative){element._offsetStart[dir]+=parent._offsetStart[dir]}element._offsetStart[dir]-=parent[scrollAttr]}element._parent=parent._parent;element._offsetParent=parent._offsetParent}parent=node;var next;while(parent&&parent.removeAttribute){next=parent.parentNode;parent.removeAttribute("_offsetParent");parent.removeAttribute("_parent");parent=next}}catch(error){console.error("scrollIntoView: "+error);node.scrollIntoView(false)}}}if(!dojo._hasResource["dijit._base.sniff"]){dojo._hasResource["dijit._base.sniff"]=true;dojo.provide("dijit._base.sniff");(function(){var d=dojo,html=d.doc.documentElement,ie=d.isIE,opera=d.isOpera,maj=Math.floor,ff=d.isFF,boxModel=d.boxModel.replace(/-/,""),classes={dj_ie:ie,dj_ie6:maj(ie)==6,dj_ie7:maj(ie)==7,dj_iequirks:ie&&d.isQuirks,dj_opera:opera,dj_opera8:maj(opera)==8,dj_opera9:maj(opera)==9,dj_khtml:d.isKhtml,dj_webkit:d.isWebKit,dj_safari:d.isSafari,dj_gecko:d.isMozilla,dj_ff2:maj(ff)==2,dj_ff3:maj(ff)==3};classes["dj_"+boxModel]=true;for(var p in classes){if(classes[p]){if(html.className){html.className+=" "+p}else{html.className=p}}}dojo._loaders.unshift(function(){if(!dojo._isBodyLtr()){html.className+=" dijitRtl";for(var p in classes){if(classes[p]){html.className+=" "+p+"-rtl"}}}})})()}if(!dojo._hasResource["dijit._base.typematic"]){dojo._hasResource["dijit._base.typematic"]=true;dojo.provide("dijit._base.typematic");dijit.typematic={_fireEventAndReload:function(){this._timer=null;this._callback(++this._count,this._node,this._evt);this._currentTimeout=(this._currentTimeout<0)?this._initialDelay:((this._subsequentDelay>1)?this._subsequentDelay:Math.round(this._currentTimeout*this._subsequentDelay));this._timer=setTimeout(dojo.hitch(this,"_fireEventAndReload"),this._currentTimeout)},trigger:function(evt,_this,node,callback,obj,subsequentDelay,initialDelay){if(obj!=this._obj){this.stop();this._initialDelay=initialDelay||500;this._subsequentDelay=subsequentDelay||0.9;this._obj=obj;this._evt=evt;this._node=node;this._currentTimeout=-1;this._count=-1;this._callback=dojo.hitch(_this,callback);this._fireEventAndReload()}},stop:function(){if(this._timer){clearTimeout(this._timer);this._timer=null}if(this._obj){this._callback(-1,this._node,this._evt);this._obj=null}},addKeyListener:function(node,keyObject,_this,callback,subsequentDelay,initialDelay){if(keyObject.keyCode){keyObject.charOrCode=keyObject.keyCode;dojo.deprecated("keyCode attribute parameter for dijit.typematic.addKeyListener is deprecated. Use charOrCode instead.","","2.0")}else{if(keyObject.charCode){keyObject.charOrCode=String.fromCharCode(keyObject.charCode);dojo.deprecated("charCode attribute parameter for dijit.typematic.addKeyListener is deprecated. Use charOrCode instead.","","2.0")}}return[dojo.connect(node,"onkeypress",this,function(evt){if(evt.charOrCode==keyObject.charOrCode&&(keyObject.ctrlKey===undefined||keyObject.ctrlKey==evt.ctrlKey)&&(keyObject.altKey===undefined||keyObject.altKey==evt.ctrlKey)&&(keyObject.shiftKey===undefined||keyObject.shiftKey==evt.ctrlKey)){dojo.stopEvent(evt);dijit.typematic.trigger(keyObject,_this,node,callback,keyObject,subsequentDelay,initialDelay)}else{if(dijit.typematic._obj==keyObject){dijit.typematic.stop()}}}),dojo.connect(node,"onkeyup",this,function(evt){if(dijit.typematic._obj==keyObject){dijit.typematic.stop()}})]},addMouseListener:function(node,_this,callback,subsequentDelay,initialDelay){var dc=dojo.connect;return[dc(node,"mousedown",this,function(evt){dojo.stopEvent(evt);dijit.typematic.trigger(evt,_this,node,callback,node,subsequentDelay,initialDelay)}),dc(node,"mouseup",this,function(evt){dojo.stopEvent(evt);dijit.typematic.stop()}),dc(node,"mouseout",this,function(evt){dojo.stopEvent(evt);dijit.typematic.stop()}),dc(node,"mousemove",this,function(evt){dojo.stopEvent(evt)}),dc(node,"dblclick",this,function(evt){dojo.stopEvent(evt);if(dojo.isIE){dijit.typematic.trigger(evt,_this,node,callback,node,subsequentDelay,initialDelay);setTimeout(dojo.hitch(this,dijit.typematic.stop),50)}})]},addListener:function(mouseNode,keyNode,keyObject,_this,callback,subsequentDelay,initialDelay){return this.addKeyListener(keyNode,keyObject,_this,callback,subsequentDelay,initialDelay).concat(this.addMouseListener(mouseNode,_this,callback,subsequentDelay,initialDelay))}}}if(!dojo._hasResource["dijit._base.wai"]){dojo._hasResource["dijit._base.wai"]=true;dojo.provide("dijit._base.wai");dijit.wai={onload:function(){var div=dojo.create("div",{id:"a11yTestNode",style:{cssText:'border: 1px solid;border-color:red green;position: absolute;height: 5px;top: -999px;background-image: url("'+(dojo.config.blankGif||dojo.moduleUrl("dojo","resources/blank.gif"))+'");'}},dojo.body());var cs=dojo.getComputedStyle(div);if(cs){var bkImg=cs.backgroundImage;var needsA11y=(cs.borderTopColor==cs.borderRightColor)||(bkImg!=null&&(bkImg=="none"||bkImg=="url(invalid-url:)"));dojo[needsA11y?"addClass":"removeClass"](dojo.body(),"dijit_a11y");if(dojo.isIE){div.outerHTML=""}else{dojo.body().removeChild(div)}}}};if(dojo.isIE||dojo.isMoz){dojo._loaders.unshift(dijit.wai.onload)}dojo.mixin(dijit,{_XhtmlRoles:/banner|contentinfo|definition|main|navigation|search|note|secondary|seealso/,hasWaiRole:function(elem,role){var waiRole=this.getWaiRole(elem);return role?(waiRole.indexOf(role)>-1):(waiRole.length>0)},getWaiRole:function(elem){return dojo.trim((dojo.attr(elem,"role")||"").replace(this._XhtmlRoles,"").replace("wairole:",""))},setWaiRole:function(elem,role){var curRole=dojo.attr(elem,"role")||"";if(dojo.isFF<3||!this._XhtmlRoles.test(curRole)){dojo.attr(elem,"role",dojo.isFF<3?"wairole:"+role:role)}else{if((" "+curRole+" ").indexOf(" "+role+" ")<0){var clearXhtml=dojo.trim(curRole.replace(this._XhtmlRoles,""));var cleanRole=dojo.trim(curRole.replace(clearXhtml,""));dojo.attr(elem,"role",cleanRole+(cleanRole?" ":"")+role)}}},removeWaiRole:function(elem,role){var roleValue=dojo.attr(elem,"role");if(!roleValue){return }if(role){var searchRole=dojo.isFF<3?"wairole:"+role:role;var t=dojo.trim((" "+roleValue+" ").replace(" "+searchRole+" "," "));dojo.attr(elem,"role",t)}else{elem.removeAttribute("role")}},hasWaiState:function(elem,state){if(dojo.isFF<3){return elem.hasAttributeNS("http://www.w3.org/2005/07/aaa",state)}return elem.hasAttribute?elem.hasAttribute("aria-"+state):!!elem.getAttribute("aria-"+state)},getWaiState:function(elem,state){if(dojo.isFF<3){return elem.getAttributeNS("http://www.w3.org/2005/07/aaa",state)}return elem.getAttribute("aria-"+state)||""},setWaiState:function(elem,state,value){if(dojo.isFF<3){elem.setAttributeNS("http://www.w3.org/2005/07/aaa","aaa:"+state,value)}else{elem.setAttribute("aria-"+state,value)}},removeWaiState:function(elem,state){if(dojo.isFF<3){elem.removeAttributeNS("http://www.w3.org/2005/07/aaa",state)}else{elem.removeAttribute("aria-"+state)}}})}if(!dojo._hasResource["dijit._base"]){dojo._hasResource["dijit._base"]=true;dojo.provide("dijit._base")}if(!dojo._hasResource["dijit._Widget"]){dojo._hasResource["dijit._Widget"]=true;dojo.provide("dijit._Widget");dojo.require("dijit._base");dojo.connect(dojo,"connect",function(widget,event){if(widget&&dojo.isFunction(widget._onConnect)){widget._onConnect(event)}});dijit._connectOnUseEventHandler=function(event){};(function(){var _attrReg={};var getAttrReg=function(dc){if(!_attrReg[dc]){var r=[];var attrs;var proto=dojo.getObject(dc).prototype;for(var fxName in proto){if(dojo.isFunction(proto[fxName])&&(attrs=fxName.match(/^_set([a-zA-Z]*)Attr$/))&&attrs[1]){r.push(attrs[1].charAt(0).toLowerCase()+attrs[1].substr(1))}}_attrReg[dc]=r}return _attrReg[dc]||[]};dojo.declare("dijit._Widget",null,{id:"",lang:"",dir:"","class":"",style:"",title:"",srcNodeRef:null,domNode:null,containerNode:null,attributeMap:{id:"",dir:"",lang:"","class":"",style:"",title:""},_deferredConnects:{onClick:"",onDblClick:"",onKeyDown:"",onKeyPress:"",onKeyUp:"",onMouseMove:"",onMouseDown:"",onMouseOut:"",onMouseOver:"",onMouseLeave:"",onMouseEnter:"",onMouseUp:""},onClick:dijit._connectOnUseEventHandler,onDblClick:dijit._connectOnUseEventHandler,onKeyDown:dijit._connectOnUseEventHandler,onKeyPress:dijit._connectOnUseEventHandler,onKeyUp:dijit._connectOnUseEventHandler,onMouseDown:dijit._connectOnUseEventHandler,onMouseMove:dijit._connectOnUseEventHandler,onMouseOut:dijit._connectOnUseEventHandler,onMouseOver:dijit._connectOnUseEventHandler,onMouseLeave:dijit._connectOnUseEventHandler,onMouseEnter:dijit._connectOnUseEventHandler,onMouseUp:dijit._connectOnUseEventHandler,_blankGif:(dojo.config.blankGif||dojo.moduleUrl("dojo","resources/blank.gif")),postscript:function(params,srcNodeRef){this.create(params,srcNodeRef)},create:function(params,srcNodeRef){this.srcNodeRef=dojo.byId(srcNodeRef);this._connects=[];this._deferredConnects=dojo.clone(this._deferredConnects);for(var attr in this.attributeMap){delete this._deferredConnects[attr]}for(attr in this._deferredConnects){if(this[attr]!==dijit._connectOnUseEventHandler){delete this._deferredConnects[attr]}}if(this.srcNodeRef&&(typeof this.srcNodeRef.id=="string")){this.id=this.srcNodeRef.id}if(params){this.params=params;dojo.mixin(this,params)}this.postMixInProperties();if(!this.id){this.id=dijit.getUniqueId(this.declaredClass.replace(/\./g,"_"))}dijit.registry.add(this);this.buildRendering();if(this.domNode){this._applyAttributes();var source=this.srcNodeRef;if(source&&source.parentNode){source.parentNode.replaceChild(this.domNode,source)}for(attr in this.params){this._onConnect(attr)}}if(this.domNode){this.domNode.setAttribute("widgetId",this.id)}this.postCreate();if(this.srcNodeRef&&!this.srcNodeRef.parentNode){delete this.srcNodeRef}this._created=true},_applyAttributes:function(){var condAttrApply=function(attr,scope){if((scope.params&&attr in scope.params)||scope[attr]){scope.attr(attr,scope[attr])}};for(var attr in this.attributeMap){condAttrApply(attr,this)}dojo.forEach(getAttrReg(this.declaredClass),function(a){if(!(a in this.attributeMap)){condAttrApply(a,this)}},this)},postMixInProperties:function(){},buildRendering:function(){this.domNode=this.srcNodeRef||dojo.create("div")},postCreate:function(){},startup:function(){this._started=true},destroyRecursive:function(preserveDom){this.destroyDescendants(preserveDom);this.destroy(preserveDom)},destroy:function(preserveDom){this.uninitialize();dojo.forEach(this._connects,function(array){dojo.forEach(array,dojo.disconnect)});dojo.forEach(this._supportingWidgets||[],function(w){if(w.destroy){w.destroy()}});this.destroyRendering(preserveDom);dijit.registry.remove(this.id)},destroyRendering:function(preserveDom){if(this.bgIframe){this.bgIframe.destroy(preserveDom);delete this.bgIframe}if(this.domNode){if(preserveDom){dojo.removeAttr(this.domNode,"widgetId")}else{dojo.destroy(this.domNode)}delete this.domNode}if(this.srcNodeRef){if(!preserveDom){dojo.destroy(this.srcNodeRef)}delete this.srcNodeRef}},destroyDescendants:function(preserveDom){dojo.forEach(this.getChildren(),function(widget){if(widget.destroyRecursive){widget.destroyRecursive(preserveDom)}})},uninitialize:function(){return false},onFocus:function(){},onBlur:function(){},_onFocus:function(e){this.onFocus()},_onBlur:function(){this.onBlur()},_onConnect:function(event){if(event in this._deferredConnects){var mapNode=this[this._deferredConnects[event]||"domNode"];this.connect(mapNode,event.toLowerCase(),event);delete this._deferredConnects[event]}},_setClassAttr:function(value){var mapNode=this[this.attributeMap["class"]||"domNode"];dojo.removeClass(mapNode,this["class"]);this["class"]=value;dojo.addClass(mapNode,value)},_setStyleAttr:function(value){var mapNode=this[this.attributeMap["style"]||"domNode"];if(dojo.isObject(value)){dojo.style(mapNode,value)}else{if(mapNode.style.cssText){mapNode.style.cssText+="; "+value}else{mapNode.style.cssText=value}}this["style"]=value},setAttribute:function(attr,value){dojo.deprecated(this.declaredClass+"::setAttribute() is deprecated. Use attr() instead.","","2.0");this.attr(attr,value)},_attrToDom:function(attr,value){var commands=this.attributeMap[attr];dojo.forEach(dojo.isArray(commands)?commands:[commands],function(command){var mapNode=this[command.node||command||"domNode"];var type=command.type||"attribute";switch(type){case"attribute":if(dojo.isFunction(value)){value=dojo.hitch(this,value)}if(/^on[A-Z][a-zA-Z]*$/.test(attr)){attr=attr.toLowerCase()}dojo.attr(mapNode,attr,value);break;case"innerHTML":mapNode.innerHTML=value;break;case"class":dojo.removeClass(mapNode,this[attr]);dojo.addClass(mapNode,value);break}},this);this[attr]=value},attr:function(name,value){var args=arguments.length;if(args==1&&!dojo.isString(name)){for(var x in name){this.attr(x,name[x])}return this}var names=this._getAttrNames(name);if(args==2){if(this[names.s]){return this[names.s](value)||this}else{if(name in this.attributeMap){this._attrToDom(name,value)}this[name]=value}return this}else{if(this[names.g]){return this[names.g]()}else{return this[name]}}},_attrPairNames:{},_getAttrNames:function(name){var apn=this._attrPairNames;if(apn[name]){return apn[name]}var uc=name.charAt(0).toUpperCase()+name.substr(1);return apn[name]={n:name+"Node",s:"_set"+uc+"Attr",g:"_get"+uc+"Attr"}},toString:function(){return"[Widget "+this.declaredClass+", "+(this.id||"NO ID")+"]"},getDescendants:function(){if(this.containerNode){var list=dojo.query("[widgetId]",this.containerNode);return list.map(dijit.byNode)}else{return[]}},getChildren:function(){if(this.containerNode){return dijit.findWidgets(this.containerNode)}else{return[]}},nodesWithKeyClick:["input","button"],connect:function(obj,event,method){var d=dojo;var dc=dojo.connect;var handles=[];if(event=="ondijitclick"){if(!this.nodesWithKeyClick[obj.nodeName]){var m=d.hitch(this,method);handles.push(dc(obj,"onkeydown",this,function(e){if(!d.isFF&&e.keyCode==d.keys.ENTER&&!e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey){return m(e)}else{if(e.keyCode==d.keys.SPACE){d.stopEvent(e)}}}),dc(obj,"onkeyup",this,function(e){if(e.keyCode==d.keys.SPACE&&!e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey){return m(e)}}));if(d.isFF){handles.push(dc(obj,"onkeypress",this,function(e){if(e.keyCode==d.keys.ENTER&&!e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey){return m(e)}}))}}event="onclick"}handles.push(dc(obj,event,this,method));this._connects.push(handles);return handles},disconnect:function(handles){for(var i=0;i<this._connects.length;i++){if(this._connects[i]==handles){dojo.forEach(handles,dojo.disconnect);this._connects.splice(i,1);return }}},isLeftToRight:function(){return dojo._isBodyLtr()},isFocusable:function(){return this.focus&&(dojo.style(this.domNode,"display")!="none")},placeAt:function(reference,position){if(reference["declaredClass"]&&reference["addChild"]){reference.addChild(this,position)}else{dojo.place(this.domNode,reference,position)}return this}})})()}if(!dojo._hasResource["dijit._Contained"]){dojo._hasResource["dijit._Contained"]=true;dojo.provide("dijit._Contained");dojo.declare("dijit._Contained",null,{getParent:function(){for(var p=this.domNode.parentNode;p;p=p.parentNode){var id=p.getAttribute&&p.getAttribute("widgetId");if(id){var parent=dijit.byId(id);return parent.isContainer?parent:null}}return null},_getSibling:function(which){var node=this.domNode;do{node=node[which+"Sibling"]}while(node&&node.nodeType!=1);if(!node){return null}var id=node.getAttribute("widgetId");return dijit.byId(id)},getPreviousSibling:function(){return this._getSibling("previous")},getNextSibling:function(){return this._getSibling("next")},getIndexInParent:function(){var p=this.getParent();if(!p||!p.getIndexOfChild){return -1}return p.getIndexOfChild(this)}})}if(!dojo._hasResource["dijit._Container"]){dojo._hasResource["dijit._Container"]=true;dojo.provide("dijit._Container");dojo.declare("dijit._Container",null,{isContainer:true,buildRendering:function(){this.inherited(arguments);if(!this.containerNode){this.containerNode=this.domNode}},addChild:function(widget,insertIndex){var refNode=this.containerNode;if(insertIndex&&typeof insertIndex=="number"){var children=this.getChildren();if(children&&children.length>=insertIndex){refNode=children[insertIndex-1].domNode;insertIndex="after"}}dojo.place(widget.domNode,refNode,insertIndex);if(this._started&&!widget._started){widget.startup()}},removeChild:function(widget){if(typeof widget=="number"&&widget>0){widget=this.getChildren()[widget]}if(!widget||!widget.domNode){return }var node=widget.domNode;node.parentNode.removeChild(node)},_nextElement:function(node){do{node=node.nextSibling}while(node&&node.nodeType!=1);return node},_firstElement:function(node){node=node.firstChild;if(node&&node.nodeType!=1){node=this._nextElement(node)}return node},getChildren:function(){return dojo.query("> [widgetId]",this.containerNode).map(dijit.byNode)},hasChildren:function(){return !!this._firstElement(this.containerNode)},destroyDescendants:function(preserveDom){dojo.forEach(this.getChildren(),function(child){child.destroyRecursive(preserveDom)})},_getSiblingOfChild:function(child,dir){var node=child.domNode;var which=(dir>0?"nextSibling":"previousSibling");do{node=node[which]}while(node&&(node.nodeType!=1||!dijit.byNode(node)));return node?dijit.byNode(node):null},getIndexOfChild:function(child){var children=this.getChildren();for(var i=0,c;c=children[i];i++){if(c==child){return i}}return -1}})}if(!dojo._hasResource["dijit.layout._LayoutWidget"]){dojo._hasResource["dijit.layout._LayoutWidget"]=true;dojo.provide("dijit.layout._LayoutWidget");dojo.declare("dijit.layout._LayoutWidget",[dijit._Widget,dijit._Container,dijit._Contained],{baseClass:"dijitLayoutContainer",isLayoutContainer:true,postCreate:function(){dojo.addClass(this.domNode,"dijitContainer");dojo.addClass(this.domNode,this.baseClass)},startup:function(){if(this._started){return }dojo.forEach(this.getChildren(),function(child){child.startup()});if(!this.getParent||!this.getParent()){this.resize();this._viewport=dijit.getViewport();this.connect(dojo.global,"onresize",function(){var newViewport=dijit.getViewport();if(newViewport.w!=this._viewport.w||newViewport.h!=this._viewport.h){this._viewport=newViewport;this.resize()}})}this.inherited(arguments)},resize:function(changeSize,resultSize){var node=this.domNode;if(changeSize){dojo.marginBox(node,changeSize);if(changeSize.t){node.style.top=changeSize.t+"px"}if(changeSize.l){node.style.left=changeSize.l+"px"}}var mb=resultSize||{};dojo.mixin(mb,changeSize||{});if(!("h" in mb)||!("w" in mb)){mb=dojo.mixin(dojo.marginBox(node),mb)}var cs=dojo.getComputedStyle(node);var me=dojo._getMarginExtents(node,cs);var be=dojo._getBorderExtents(node,cs);var bb=(this._borderBox={w:mb.w-(me.w+be.w),h:mb.h-(me.h+be.h)});var pe=dojo._getPadExtents(node,cs);this._contentBox={l:dojo._toPixelValue(node,cs.paddingLeft),t:dojo._toPixelValue(node,cs.paddingTop),w:bb.w-pe.w,h:bb.h-pe.h};this.layout()},layout:function(){},_setupChild:function(child){dojo.addClass(child.domNode,this.baseClass+"-child");if(child.baseClass){dojo.addClass(child.domNode,this.baseClass+"-"+child.baseClass)}},addChild:function(child,insertIndex){this.inherited(arguments);if(this._started){this._setupChild(child)}},removeChild:function(child){dojo.removeClass(child.domNode,this.baseClass+"-child");if(child.baseClass){dojo.removeClass(child.domNode,this.baseClass+"-"+child.baseClass)}this.inherited(arguments)}});dijit.layout.marginBox2contentBox=function(node,mb){var cs=dojo.getComputedStyle(node);var me=dojo._getMarginExtents(node,cs);var pb=dojo._getPadBorderExtents(node,cs);return{l:dojo._toPixelValue(node,cs.paddingLeft),t:dojo._toPixelValue(node,cs.paddingTop),w:mb.w-(me.w+pb.w),h:mb.h-(me.h+pb.h)}};(function(){var capitalize=function(word){return word.substring(0,1).toUpperCase()+word.substring(1)};var size=function(widget,dim){widget.resize?widget.resize(dim):dojo.marginBox(widget.domNode,dim);dojo.mixin(widget,dojo.marginBox(widget.domNode));dojo.mixin(widget,dim)};dijit.layout.layoutChildren=function(container,dim,children){dim=dojo.mixin({},dim);dojo.addClass(container,"dijitLayoutContainer");children=dojo.filter(children,function(item){return item.layoutAlign!="client"}).concat(dojo.filter(children,function(item){return item.layoutAlign=="client"}));dojo.forEach(children,function(child){var elm=child.domNode,pos=child.layoutAlign;var elmStyle=elm.style;elmStyle.left=dim.l+"px";elmStyle.top=dim.t+"px";elmStyle.bottom=elmStyle.right="auto";dojo.addClass(elm,"dijitAlign"+capitalize(pos));if(pos=="top"||pos=="bottom"){size(child,{w:dim.w});dim.h-=child.h;if(pos=="top"){dim.t+=child.h}else{elmStyle.top=dim.t+dim.h+"px"}}else{if(pos=="left"||pos=="right"){size(child,{h:dim.h});dim.w-=child.w;if(pos=="left"){dim.l+=child.w}else{elmStyle.left=dim.l+dim.w+"px"}}else{if(pos=="client"){size(child,dim)}}}})}})()}if(!dojo._hasResource["dojo.date.stamp"]){dojo._hasResource["dojo.date.stamp"]=true;dojo.provide("dojo.date.stamp");dojo.date.stamp.fromISOString=function(formattedString,defaultTime){if(!dojo.date.stamp._isoRegExp){dojo.date.stamp._isoRegExp=/^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:T(\d{2}):(\d{2})(?::(\d{2})(.\d+)?)?((?:[+-](\d{2}):(\d{2}))|Z)?)?$/}var match=dojo.date.stamp._isoRegExp.exec(formattedString);var result=null;if(match){match.shift();if(match[1]){match[1]--}if(match[6]){match[6]*=1000}if(defaultTime){defaultTime=new Date(defaultTime);dojo.map(["FullYear","Month","Date","Hours","Minutes","Seconds","Milliseconds"],function(prop){return defaultTime["get"+prop]()}).forEach(function(value,index){if(match[index]===undefined){match[index]=value}})}result=new Date(match[0]||1970,match[1]||0,match[2]||1,match[3]||0,match[4]||0,match[5]||0,match[6]||0);var offset=0;var zoneSign=match[7]&&match[7].charAt(0);if(zoneSign!="Z"){offset=((match[8]||0)*60)+(Number(match[9])||0);if(zoneSign!="-"){offset*=-1}}if(zoneSign){offset-=result.getTimezoneOffset()}if(offset){result.setTime(result.getTime()+offset*60000)}}return result};dojo.date.stamp.toISOString=function(dateObject,options){var _=function(n){return(n<10)?"0"+n:n};options=options||{};var formattedDate=[];var getter=options.zulu?"getUTC":"get";var date="";if(options.selector!="time"){var year=dateObject[getter+"FullYear"]();date=["0000".substr((year+"").length)+year,_(dateObject[getter+"Month"]()+1),_(dateObject[getter+"Date"]())].join("-")}formattedDate.push(date);if(options.selector!="date"){var time=[_(dateObject[getter+"Hours"]()),_(dateObject[getter+"Minutes"]()),_(dateObject[getter+"Seconds"]())].join(":");var millis=dateObject[getter+"Milliseconds"]();if(options.milliseconds){time+="."+(millis<100?"0":"")+_(millis)}if(options.zulu){time+="Z"}else{if(options.selector!="time"){var timezoneOffset=dateObject.getTimezoneOffset();var absOffset=Math.abs(timezoneOffset);time+=(timezoneOffset>0?"-":"+")+_(Math.floor(absOffset/60))+":"+_(absOffset%60)}}formattedDate.push(time)}return formattedDate.join("T")}}if(!dojo._hasResource["dojo.parser"]){dojo._hasResource["dojo.parser"]=true;dojo.provide("dojo.parser");dojo.parser=new function(){var d=dojo;var dtName=d._scopeName+"Type";var qry="["+dtName+"]";var _anonCtr=0,_anon={};var nameAnonFunc=function(anonFuncPtr,thisObj){var nso=thisObj||_anon;if(dojo.isIE){var cn=anonFuncPtr["__dojoNameCache"];if(cn&&nso[cn]===anonFuncPtr){return cn}}var name;do{name="__"+_anonCtr++}while(name in nso);nso[name]=anonFuncPtr;return name};function val2type(value){if(d.isString(value)){return"string"}if(typeof value=="number"){return"number"}if(typeof value=="boolean"){return"boolean"}if(d.isFunction(value)){return"function"}if(d.isArray(value)){return"array"}if(value instanceof Date){return"date"}if(value instanceof d._Url){return"url"}return"object"}function str2obj(value,type){switch(type){case"string":return value;case"number":return value.length?Number(value):NaN;case"boolean":return typeof value=="boolean"?value:!(value.toLowerCase()=="false");case"function":if(d.isFunction(value)){value=value.toString();value=d.trim(value.substring(value.indexOf("{")+1,value.length-1))}try{if(value.search(/[^\w\.]+/i)!=-1){value=nameAnonFunc(new Function(value),this)}return d.getObject(value,false)}catch(e){return new Function()}case"array":return value?value.split(/\s*,\s*/):[];case"date":switch(value){case"":return new Date("");case"now":return new Date();default:return d.date.stamp.fromISOString(value)}case"url":return d.baseUrl+value;default:return d.fromJson(value)}}var instanceClasses={};function getClassInfo(className){if(!instanceClasses[className]){var cls=d.getObject(className);if(!d.isFunction(cls)){throw new Error("Could not load class '"+className+"'. Did you spell the name correctly and use a full path, like 'dijit.form.Button'?")}var proto=cls.prototype;var params={},dummyClass={};for(var name in proto){if(name.charAt(0)=="_"){continue}if(name in dummyClass){continue}var defVal=proto[name];params[name]=val2type(defVal)}instanceClasses[className]={cls:cls,params:params}}return instanceClasses[className]}this._functionFromScript=function(script){var preamble="";var suffix="";var argsStr=script.getAttribute("args");if(argsStr){d.forEach(argsStr.split(/\s*,\s*/),function(part,idx){preamble+="var "+part+" = arguments["+idx+"]; "})}var withStr=script.getAttribute("with");if(withStr&&withStr.length){d.forEach(withStr.split(/\s*,\s*/),function(part){preamble+="with("+part+"){";suffix+="}"})}return new Function(preamble+script.innerHTML+suffix)};this.instantiate=function(nodes,mixin){var thelist=[];mixin=mixin||{};d.forEach(nodes,function(node){if(!node){return }var type=dtName in mixin?mixin[dtName]:node.getAttribute(dtName);if(!type||!type.length){return }var clsInfo=getClassInfo(type),clazz=clsInfo.cls,ps=clazz._noScript||clazz.prototype._noScript;var params={},attributes=node.attributes;for(var name in clsInfo.params){var item=name in mixin?{value:mixin[name],specified:true}:attributes.getNamedItem(name);if(!item||(!item.specified&&(!dojo.isIE||name.toLowerCase()!="value"))){continue}var value=item.value;switch(name){case"class":value="className" in mixin?mixin.className:node.className;break;case"style":value="style" in mixin?mixin.style:(node.style&&node.style.cssText)}var _type=clsInfo.params[name];if(typeof value=="string"){params[name]=str2obj(value,_type)}else{params[name]=value}}if(!ps){var connects=[],calls=[];d.query("> script[type^='dojo/']",node).orphan().forEach(function(script){var event=script.getAttribute("event"),type=script.getAttribute("type"),nf=d.parser._functionFromScript(script);if(event){if(type=="dojo/connect"){connects.push({event:event,func:nf})}else{params[event]=nf}}else{calls.push(nf)}})}var markupFactory=clazz["markupFactory"];if(!markupFactory&&clazz["prototype"]){markupFactory=clazz.prototype["markupFactory"]}var instance=markupFactory?markupFactory(params,node,clazz):new clazz(params,node);thelist.push(instance);var jsname=node.getAttribute("jsId");if(jsname){d.setObject(jsname,instance)}if(!ps){d.forEach(connects,function(connect){d.connect(instance,connect.event,null,connect.func)});d.forEach(calls,function(func){func.call(instance)})}});d.forEach(thelist,function(instance){if(instance&&instance.startup&&!instance._started&&(!instance.getParent||!instance.getParent())){instance.startup()}});return thelist};this.parse=function(rootNode){var list=d.query(qry,rootNode);var instances=this.instantiate(list);return instances}}();(function(){var parseRunner=function(){if(dojo.config["parseOnLoad"]==true){dojo.parser.parse()}};if(dojo.exists("dijit.wai.onload")&&(dijit.wai.onload===dojo._loaders[0])){dojo._loaders.splice(1,0,parseRunner)}else{dojo._loaders.unshift(parseRunner)}})()}if(!dojo._hasResource["dojo.string"]){dojo._hasResource["dojo.string"]=true;dojo.provide("dojo.string");dojo.string.rep=function(str,num){if(num<=0||!str){return""}var buf=[];for(;;){if(num&1){buf.push(str)}if(!(num>>=1)){break}str+=str}return buf.join("")};dojo.string.pad=function(text,size,ch,end){if(!ch){ch="0"}var out=String(text),pad=dojo.string.rep(ch,Math.ceil((size-out.length)/ch.length));return end?out+pad:pad+out};dojo.string.substitute=function(template,map,transform,thisObject){thisObject=thisObject||dojo.global;transform=(!transform)?function(v){return v}:dojo.hitch(thisObject,transform);return template.replace(/\$\{([^\s\:\}]+)(?:\:([^\s\:\}]+))?\}/g,function(match,key,format){var value=dojo.getObject(key,false,map);if(format){value=dojo.getObject(format,false,thisObject).call(thisObject,value,key)}return transform(value,key).toString()})};dojo.string.trim=String.prototype.trim?dojo.trim:function(str){str=str.replace(/^\s+/,"");for(var i=str.length-1;i>=0;i--){if(/\S/.test(str.charAt(i))){str=str.substring(0,i+1);break}}return str}}if(!dojo._hasResource["dojo.html"]){dojo._hasResource["dojo.html"]=true;dojo.provide("dojo.html");(function(){var idCounter=0;dojo.html._secureForInnerHtml=function(cont){return cont.replace(/(?:\s*<!DOCTYPE\s[^>]+>|<title[^>]*>[\s\S]*?<\/title>)/ig,"")};dojo.html._emptyNode=dojo.empty;dojo.html._setNodeContent=function(node,cont,shouldEmptyFirst){if(shouldEmptyFirst){dojo.html._emptyNode(node)}if(typeof cont=="string"){var pre="",post="",walk=0,name=node.nodeName.toLowerCase();switch(name){case"tr":pre="<tr>";post="</tr>";walk+=1;case"tbody":case"thead":pre="<tbody>"+pre;post+="</tbody>";walk+=1;case"table":pre="<table>"+pre;post+="</table>";walk+=1;break}if(walk){var n=node.ownerDocument.createElement("div");n.innerHTML=pre+cont+post;do{n=n.firstChild}while(--walk);dojo.forEach(n.childNodes,function(n){node.appendChild(n.cloneNode(true))})}else{node.innerHTML=cont}}else{if(cont.nodeType){node.appendChild(cont)}else{dojo.forEach(cont,function(n){node.appendChild(n.cloneNode(true))})}}return node};dojo.declare("dojo.html._ContentSetter",null,{node:"",content:"",id:"",cleanContent:false,extractContent:false,parseContent:false,constructor:function(params,node){dojo.mixin(this,params||{});node=this.node=dojo.byId(this.node||node);if(!this.id){this.id=["Setter",(node)?node.id||node.tagName:"",idCounter++].join("_")}if(!(this.node||node)){new Error(this.declaredClass+": no node provided to "+this.id)}},set:function(cont,params){if(undefined!==cont){this.content=cont}if(params){this._mixin(params)}this.onBegin();this.setContent();this.onEnd();return this.node},setContent:function(){var node=this.node;if(!node){console.error("setContent given no node")}try{node=dojo.html._setNodeContent(node,this.content)}catch(e){var errMess=this.onContentError(e);try{node.innerHTML=errMess}catch(e){console.error("Fatal "+this.declaredClass+".setContent could not change content due to "+e.message,e)}}this.node=node},empty:function(){if(this.parseResults&&this.parseResults.length){dojo.forEach(this.parseResults,function(w){if(w.destroy){w.destroy()}});delete this.parseResults}dojo.html._emptyNode(this.node)},onBegin:function(){var cont=this.content;if(dojo.isString(cont)){if(this.cleanContent){cont=dojo.html._secureForInnerHtml(cont)}if(this.extractContent){var match=cont.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im);if(match){cont=match[1]}}}this.empty();this.content=cont;return this.node},onEnd:function(){if(this.parseContent){this._parse()}return this.node},tearDown:function(){delete this.parseResults;delete this.node;delete this.content},onContentError:function(err){return"Error occured setting content: "+err},_mixin:function(params){var empty={},key;for(key in params){if(key in empty){continue}this[key]=params[key]}},_parse:function(){var rootNode=this.node;try{this.parseResults=dojo.parser.parse(rootNode,true)}catch(e){this._onError("Content",e,"Error parsing in _ContentSetter#"+this.id)}},_onError:function(type,err,consoleText){var errText=this["on"+type+"Error"].call(this,err);if(consoleText){console.error(consoleText,err)}else{if(errText){dojo.html._setNodeContent(this.node,errText,true)}}}});dojo.html.set=function(node,cont,params){if(undefined==cont){console.warn("dojo.html.set: no cont argument provided, using empty string");cont=""}if(!params){return dojo.html._setNodeContent(node,cont,true)}else{var op=new dojo.html._ContentSetter(dojo.mixin(params,{content:cont,node:node}));return op.set()}}})()}if(!dojo._hasResource["dojo.i18n"]){dojo._hasResource["dojo.i18n"]=true;dojo.provide("dojo.i18n");dojo.i18n.getLocalization=function(packageName,bundleName,locale){locale=dojo.i18n.normalizeLocale(locale);var elements=locale.split("-");var module=[packageName,"nls",bundleName].join(".");var bundle=dojo._loadedModules[module];if(bundle){var localization;for(var i=elements.length;i>0;i--){var loc=elements.slice(0,i).join("_");if(bundle[loc]){localization=bundle[loc];break}}if(!localization){localization=bundle.ROOT}if(localization){var clazz=function(){};clazz.prototype=localization;return new clazz()}}throw new Error("Bundle not found: "+bundleName+" in "+packageName+" , locale="+locale)};dojo.i18n.normalizeLocale=function(locale){var result=locale?locale.toLowerCase():dojo.locale;if(result=="root"){result="ROOT"}return result};dojo.i18n._requireLocalization=function(moduleName,bundleName,locale,availableFlatLocales){var targetLocale=dojo.i18n.normalizeLocale(locale);var bundlePackage=[moduleName,"nls",bundleName].join(".");var bestLocale="";if(availableFlatLocales){var flatLocales=availableFlatLocales.split(",");for(var i=0;i<flatLocales.length;i++){if(targetLocale["indexOf"](flatLocales[i])==0){if(flatLocales[i].length>bestLocale.length){bestLocale=flatLocales[i]}}}if(!bestLocale){bestLocale="ROOT"}}var tempLocale=availableFlatLocales?bestLocale:targetLocale;var bundle=dojo._loadedModules[bundlePackage];var localizedBundle=null;if(bundle){if(dojo.config.localizationComplete&&bundle._built){return }var jsLoc=tempLocale.replace(/-/g,"_");var translationPackage=bundlePackage+"."+jsLoc;localizedBundle=dojo._loadedModules[translationPackage]}if(!localizedBundle){bundle=dojo["provide"](bundlePackage);var syms=dojo._getModuleSymbols(moduleName);var modpath=syms.concat("nls").join("/");var parent;dojo.i18n._searchLocalePath(tempLocale,availableFlatLocales,function(loc){var jsLoc=loc.replace(/-/g,"_");var translationPackage=bundlePackage+"."+jsLoc;var loaded=false;if(!dojo._loadedModules[translationPackage]){dojo["provide"](translationPackage);var module=[modpath];if(loc!="ROOT"){module.push(loc)}module.push(bundleName);var filespec=module.join("/")+".js";loaded=dojo._loadPath(filespec,null,function(hash){var clazz=function(){};clazz.prototype=parent;bundle[jsLoc]=new clazz();for(var j in hash){bundle[jsLoc][j]=hash[j]}})}else{loaded=true}if(loaded&&bundle[jsLoc]){parent=bundle[jsLoc]}else{bundle[jsLoc]=parent}if(availableFlatLocales){return true}})}if(availableFlatLocales&&targetLocale!=bestLocale){bundle[targetLocale.replace(/-/g,"_")]=bundle[bestLocale.replace(/-/g,"_")]}};(function(){var extra=dojo.config.extraLocale;if(extra){if(!extra instanceof Array){extra=[extra]}var req=dojo.i18n._requireLocalization;dojo.i18n._requireLocalization=function(m,b,locale,availableFlatLocales){req(m,b,locale,availableFlatLocales);if(locale){return }for(var i=0;i<extra.length;i++){req(m,b,extra[i],availableFlatLocales)}}}})();dojo.i18n._searchLocalePath=function(locale,down,searchFunc){locale=dojo.i18n.normalizeLocale(locale);var elements=locale.split("-");var searchlist=[];for(var i=elements.length;i>0;i--){searchlist.push(elements.slice(0,i).join("-"))}searchlist.push(false);if(down){searchlist.reverse()}for(var j=searchlist.length-1;j>=0;j--){var loc=searchlist[j]||"ROOT";var stop=searchFunc(loc);if(stop){break}}};dojo.i18n._preloadLocalizations=function(bundlePrefix,localesGenerated){function preload(locale){locale=dojo.i18n.normalizeLocale(locale);dojo.i18n._searchLocalePath(locale,true,function(loc){for(var i=0;i<localesGenerated.length;i++){if(localesGenerated[i]==loc){dojo["require"](bundlePrefix+"_"+loc);return true}}return false})}preload();var extra=dojo.config.extraLocale||[];for(var i=0;i<extra.length;i++){preload(extra[i])}}}if(!dojo._hasResource["dijit.layout.ContentPane"]){dojo._hasResource["dijit.layout.ContentPane"]=true;dojo.provide("dijit.layout.ContentPane");dojo.declare("dijit.layout.ContentPane",dijit._Widget,{href:"",extractContent:false,parseOnLoad:true,preventCache:false,preload:false,refreshOnShow:false,loadingMessage:"<span class='dijitContentPaneLoading'>${loadingState}</span>",errorMessage:"<span class='dijitContentPaneError'>${errorState}</span>",isLoaded:false,baseClass:"dijitContentPane",doLayout:true,ioArgs:{},isContainer:true,postMixInProperties:function(){this.inherited(arguments);var messages=dojo.i18n.getLocalization("dijit","loading",this.lang);this.loadingMessage=dojo.string.substitute(this.loadingMessage,messages);this.errorMessage=dojo.string.substitute(this.errorMessage,messages);if(!this.href&&this.srcNodeRef&&this.srcNodeRef.innerHTML){this.isLoaded=true}},buildRendering:function(){this.inherited(arguments);if(!this.containerNode){this.containerNode=this.domNode}},postCreate:function(){this.domNode.title="";if(!dojo.attr(this.domNode,"role")){dijit.setWaiRole(this.domNode,"group")}dojo.addClass(this.domNode,this.baseClass)},startup:function(){if(this._started){return }if(this.isLoaded){dojo.forEach(this.getChildren(),function(child){child.startup()});if(this.doLayout){this._checkIfSingleChild()}if(!this._singleChild||!dijit._Contained.prototype.getParent.call(this)){this._scheduleLayout()}}this._loadCheck();this.inherited(arguments)},_checkIfSingleChild:function(){var childNodes=dojo.query(">",this.containerNode),childWidgetNodes=childNodes.filter(function(node){return dojo.hasAttr(node,"dojoType")||dojo.hasAttr(node,"widgetId")}),candidateWidgets=dojo.filter(childWidgetNodes.map(dijit.byNode),function(widget){return widget&&widget.domNode&&widget.resize});if(childNodes.length==childWidgetNodes.length&&candidateWidgets.length==1){this._singleChild=candidateWidgets[0]}else{delete this._singleChild}},setHref:function(href){dojo.deprecated("dijit.layout.ContentPane.setHref() is deprecated. Use attr('href', ...) instead.","","2.0");return this.attr("href",href)},_setHrefAttr:function(href){this.cancel();this.href=href;if(this._created&&(this.preload||this._isShown())){return this.refresh()}else{this._hrefChanged=true}},setContent:function(data){dojo.deprecated("dijit.layout.ContentPane.setContent() is deprecated.  Use attr('content', ...) instead.","","2.0");this.attr("content",data)},_setContentAttr:function(data){this.href="";this.cancel();this._setContent(data||"");this._isDownloaded=false},_getContentAttr:function(){return this.containerNode.innerHTML},cancel:function(){if(this._xhrDfd&&(this._xhrDfd.fired==-1)){this._xhrDfd.cancel()}delete this._xhrDfd},uninitialize:function(){if(this._beingDestroyed){this.cancel()}},destroyRecursive:function(preserveDom){if(this._beingDestroyed){return }this._beingDestroyed=true;this.inherited(arguments)},resize:function(size){dojo.marginBox(this.domNode,size);var node=this.containerNode,mb=dojo.mixin(dojo.marginBox(node),size||{});var cb=(this._contentBox=dijit.layout.marginBox2contentBox(node,mb));if(this._singleChild&&this._singleChild.resize){this._singleChild.resize({w:cb.w,h:cb.h})}},_isShown:function(){if("open" in this){return this.open}else{var node=this.domNode;return(node.style.display!="none")&&(node.style.visibility!="hidden")&&!dojo.hasClass(node,"dijitHidden")}},_onShow:function(){if(this._needLayout){this._layoutChildren()}this._loadCheck();if(this.onShow){this.onShow()}},_loadCheck:function(){if((this.href&&!this._xhrDfd)&&(!this.isLoaded||this._hrefChanged||this.refreshOnShow)&&(this.preload||this._isShown())){delete this._hrefChanged;this.refresh()}},refresh:function(){this.cancel();this._setContent(this.onDownloadStart(),true);var self=this;var getArgs={preventCache:(this.preventCache||this.refreshOnShow),url:this.href,handleAs:"text"};if(dojo.isObject(this.ioArgs)){dojo.mixin(getArgs,this.ioArgs)}var hand=(this._xhrDfd=(this.ioMethod||dojo.xhrGet)(getArgs));hand.addCallback(function(html){try{self._isDownloaded=true;self._setContent(html,false);self.onDownloadEnd()}catch(err){self._onError("Content",err)}delete self._xhrDfd;return html});hand.addErrback(function(err){if(!hand.canceled){self._onError("Download",err)}delete self._xhrDfd;return err})},_onLoadHandler:function(data){this.isLoaded=true;try{this.onLoad(data)}catch(e){console.error("Error "+this.widgetId+" running custom onLoad code: "+e.message)}},_onUnloadHandler:function(){this.isLoaded=false;try{this.onUnload()}catch(e){console.error("Error "+this.widgetId+" running custom onUnload code: "+e.message)}},destroyDescendants:function(){if(this.isLoaded){this._onUnloadHandler()}var setter=this._contentSetter;dojo.forEach(this.getChildren(),function(widget){if(widget.destroyRecursive){widget.destroyRecursive()}});if(setter){dojo.forEach(setter.parseResults,function(widget){if(widget.destroyRecursive&&widget.domNode&&widget.domNode.parentNode==dojo.body()){widget.destroyRecursive()}});delete setter.parseResults}dojo.html._emptyNode(this.containerNode)},_setContent:function(cont,isFakeContent){this.destroyDescendants();delete this._singleChild;var setter=this._contentSetter;if(!(setter&&setter instanceof dojo.html._ContentSetter)){setter=this._contentSetter=new dojo.html._ContentSetter({node:this.containerNode,_onError:dojo.hitch(this,this._onError),onContentError:dojo.hitch(this,function(e){var errMess=this.onContentError(e);try{this.containerNode.innerHTML=errMess}catch(e){console.error("Fatal "+this.id+" could not change content due to "+e.message,e)}})})}var setterParams=dojo.mixin({cleanContent:this.cleanContent,extractContent:this.extractContent,parseContent:this.parseOnLoad},this._contentSetterParams||{});dojo.mixin(setter,setterParams);setter.set((dojo.isObject(cont)&&cont.domNode)?cont.domNode:cont);delete this._contentSetterParams;if(!isFakeContent){dojo.forEach(this.getChildren(),function(child){child.startup()});if(this.doLayout){this._checkIfSingleChild()}this._scheduleLayout();this._onLoadHandler(cont)}},_onError:function(type,err,consoleText){var errText=this["on"+type+"Error"].call(this,err);if(consoleText){console.error(consoleText,err)}else{if(errText){this._setContent(errText,true)}}},_scheduleLayout:function(){if(this._isShown()){this._layoutChildren()}else{this._needLayout=true}},_layoutChildren:function(){if(this._singleChild&&this._singleChild.resize){var cb=this._contentBox||dojo.contentBox(this.containerNode);this._singleChild.resize({w:cb.w,h:cb.h})}else{dojo.forEach(this.getChildren(),function(widget){if(widget.resize){widget.resize()}})}delete this._needLayout},onLoad:function(data){},onUnload:function(){},onDownloadStart:function(){return this.loadingMessage},onContentError:function(error){},onDownloadError:function(error){return this.errorMessage},onDownloadEnd:function(){}})}if(!dojo._hasResource["dijit.layout.LayoutContainer"]){dojo._hasResource["dijit.layout.LayoutContainer"]=true;dojo.provide("dijit.layout.LayoutContainer");dojo.declare("dijit.layout.LayoutContainer",dijit.layout._LayoutWidget,{baseClass:"dijitLayoutContainer",constructor:function(){dojo.deprecated("dijit.layout.LayoutContainer is deprecated","use BorderContainer instead",2)},layout:function(){dijit.layout.layoutChildren(this.domNode,this._contentBox,this.getChildren())},addChild:function(child,insertIndex){this.inherited(arguments);if(this._started){dijit.layout.layoutChildren(this.domNode,this._contentBox,this.getChildren())}},removeChild:function(widget){this.inherited(arguments);if(this._started){dijit.layout.layoutChildren(this.domNode,this._contentBox,this.getChildren())}}});dojo.extend(dijit._Widget,{layoutAlign:"none"})}if(!dojo._hasResource["dijit._Templated"]){dojo._hasResource["dijit._Templated"]=true;dojo.provide("dijit._Templated");dojo.declare("dijit._Templated",null,{templateString:null,templatePath:null,widgetsInTemplate:false,_skipNodeCache:false,_stringRepl:function(tmpl){var className=this.declaredClass,_this=this;return dojo.string.substitute(tmpl,this,function(value,key){if(key.charAt(0)=="!"){value=dojo.getObject(key.substr(1),false,_this)}if(typeof value=="undefined"){throw new Error(className+" template:"+key)}if(value==null){return""}return key.charAt(0)=="!"?value:value.toString().replace(/"/g,"&quot;")},this)},buildRendering:function(){var cached=dijit._Templated.getCachedTemplate(this.templatePath,this.templateString,this._skipNodeCache);var node;if(dojo.isString(cached)){node=dojo._toDom(this._stringRepl(cached))}else{node=cached.cloneNode(true)}this.domNode=node;this._attachTemplateNodes(node);if(this.widgetsInTemplate){var cw=(this._supportingWidgets=dojo.parser.parse(node));this._attachTemplateNodes(cw,function(n,p){return n[p]})}this._fillContent(this.srcNodeRef)},_fillContent:function(source){var dest=this.containerNode;if(source&&dest){while(source.hasChildNodes()){dest.appendChild(source.firstChild)}}},_attachTemplateNodes:function(rootNode,getAttrFunc){getAttrFunc=getAttrFunc||function(n,p){return n.getAttribute(p)};var nodes=dojo.isArray(rootNode)?rootNode:(rootNode.all||rootNode.getElementsByTagName("*"));var x=dojo.isArray(rootNode)?0:-1;for(;x<nodes.length;x++){var baseNode=(x==-1)?rootNode:nodes[x];if(this.widgetsInTemplate&&getAttrFunc(baseNode,"dojoType")){continue}var attachPoint=getAttrFunc(baseNode,"dojoAttachPoint");if(attachPoint){var point,points=attachPoint.split(/\s*,\s*/);while((point=points.shift())){if(dojo.isArray(this[point])){this[point].push(baseNode)}else{this[point]=baseNode}}}var attachEvent=getAttrFunc(baseNode,"dojoAttachEvent");if(attachEvent){var event,events=attachEvent.split(/\s*,\s*/);var trim=dojo.trim;while((event=events.shift())){if(event){var thisFunc=null;if(event.indexOf(":")!=-1){var funcNameArr=event.split(":");event=trim(funcNameArr[0]);thisFunc=trim(funcNameArr[1])}else{event=trim(event)}if(!thisFunc){thisFunc=event}this.connect(baseNode,event,thisFunc)}}}var role=getAttrFunc(baseNode,"waiRole");if(role){dijit.setWaiRole(baseNode,role)}var values=getAttrFunc(baseNode,"waiState");if(values){dojo.forEach(values.split(/\s*,\s*/),function(stateValue){if(stateValue.indexOf("-")!=-1){var pair=stateValue.split("-");dijit.setWaiState(baseNode,pair[0],pair[1])}})}}}});dijit._Templated._templateCache={};dijit._Templated.getCachedTemplate=function(templatePath,templateString,alwaysUseString){var tmplts=dijit._Templated._templateCache;var key=templateString||templatePath;var cached=tmplts[key];if(cached){if(!cached.ownerDocument||cached.ownerDocument==dojo.doc){return cached}dojo.destroy(cached)}if(!templateString){templateString=dijit._Templated._sanitizeTemplateString(dojo.trim(dojo._getText(templatePath)))}templateString=dojo.string.trim(templateString);if(alwaysUseString||templateString.match(/\$\{([^\}]+)\}/g)){return(tmplts[key]=templateString)}else{return(tmplts[key]=dojo._toDom(templateString))}};dijit._Templated._sanitizeTemplateString=function(tString){if(tString){tString=tString.replace(/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,"");var matches=tString.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im);if(matches){tString=matches[1]}}else{tString=""}return tString};if(dojo.isIE){dojo.addOnWindowUnload(function(){var cache=dijit._Templated._templateCache;for(var key in cache){var value=cache[key];if(!isNaN(value.nodeType)){dojo.destroy(value)}delete cache[key]}})}dojo.extend(dijit._Widget,{dojoAttachEvent:"",dojoAttachPoint:"",waiRole:"",waiState:""})}if(!dojo._hasResource["dojo.regexp"]){dojo._hasResource["dojo.regexp"]=true;dojo.provide("dojo.regexp");dojo.regexp.escapeString=function(str,except){return str.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,function(ch){if(except&&except.indexOf(ch)!=-1){return ch}return"\\"+ch})};dojo.regexp.buildGroupRE=function(arr,re,nonCapture){if(!(arr instanceof Array)){return re(arr)}var b=[];for(var i=0;i<arr.length;i++){b.push(re(arr[i]))}return dojo.regexp.group(b.join("|"),nonCapture)};dojo.regexp.group=function(expression,nonCapture){return"("+(nonCapture?"?:":"")+expression+")"}}if(!dojo._hasResource["dojo.cookie"]){dojo._hasResource["dojo.cookie"]=true;dojo.provide("dojo.cookie");dojo.cookie=function(name,value,props){var c=document.cookie;if(arguments.length==1){var matches=c.match(new RegExp("(?:^|; )"+dojo.regexp.escapeString(name)+"=([^;]*)"));return matches?decodeURIComponent(matches[1]):undefined}else{props=props||{};var exp=props.expires;if(typeof exp=="number"){var d=new Date();d.setTime(d.getTime()+exp*24*60*60*1000);exp=props.expires=d}if(exp&&exp.toUTCString){props.expires=exp.toUTCString()}value=encodeURIComponent(value);var updatedCookie=name+"="+value,propName;for(propName in props){updatedCookie+="; "+propName;var propValue=props[propName];if(propValue!==true){updatedCookie+="="+propValue}}document.cookie=updatedCookie}};dojo.cookie.isSupported=function(){if(!("cookieEnabled" in navigator)){this("__djCookieTest__","CookiesAllowed");navigator.cookieEnabled=this("__djCookieTest__")=="CookiesAllowed";if(navigator.cookieEnabled){this("__djCookieTest__","",{expires:-1})}}return navigator.cookieEnabled}}if(!dojo._hasResource["dijit.form._FormWidget"]){dojo._hasResource["dijit.form._FormWidget"]=true;dojo.provide("dijit.form._FormWidget");dojo.declare("dijit.form._FormWidget",[dijit._Widget,dijit._Templated],{baseClass:"",name:"",alt:"",value:"",type:"text",tabIndex:"0",disabled:false,readOnly:false,intermediateChanges:false,scrollOnFocus:true,attributeMap:dojo.delegate(dijit._Widget.prototype.attributeMap,{value:"focusNode",disabled:"focusNode",readOnly:"focusNode",id:"focusNode",tabIndex:"focusNode",alt:"focusNode"}),postMixInProperties:function(){this.nameAttrSetting=this.name?("name='"+this.name+"'"):"";this.inherited(arguments)},_setDisabledAttr:function(value){this.disabled=value;dojo.attr(this.focusNode,"disabled",value);dijit.setWaiState(this.focusNode,"disabled",value);if(value){this._hovering=false;this._active=false;this.focusNode.removeAttribute("tabIndex")}else{this.focusNode.setAttribute("tabIndex",this.tabIndex)}this._setStateClass()},setDisabled:function(disabled){dojo.deprecated("setDisabled("+disabled+") is deprecated. Use attr('disabled',"+disabled+") instead.","","2.0");this.attr("disabled",disabled)},_onFocus:function(e){if(this.scrollOnFocus){dijit.scrollIntoView(this.domNode)}this.inherited(arguments)},_onMouse:function(event){var mouseNode=event.currentTarget;if(mouseNode&&mouseNode.getAttribute){this.stateModifier=mouseNode.getAttribute("stateModifier")||""}if(!this.disabled){switch(event.type){case"mouseenter":case"mouseover":this._hovering=true;this._active=this._mouseDown;break;case"mouseout":case"mouseleave":this._hovering=false;this._active=false;break;case"mousedown":this._active=true;this._mouseDown=true;var mouseUpConnector=this.connect(dojo.body(),"onmouseup",function(){if(this._mouseDown&&this.isFocusable()){this.focus()}this._active=false;this._mouseDown=false;this._setStateClass();this.disconnect(mouseUpConnector)});break}this._setStateClass()}},isFocusable:function(){return !this.disabled&&!this.readOnly&&this.focusNode&&(dojo.style(this.domNode,"display")!="none")},focus:function(){dijit.focus(this.focusNode)},_setStateClass:function(){var newStateClasses=this.baseClass.split(" ");function multiply(modifier){newStateClasses=newStateClasses.concat(dojo.map(newStateClasses,function(c){return c+modifier}),"dijit"+modifier)}if(this.checked){multiply("Checked")}if(this.state){multiply(this.state)}if(this.selected){multiply("Selected")}if(this.disabled){multiply("Disabled")}else{if(this.readOnly){multiply("ReadOnly")}else{if(this._active){multiply(this.stateModifier+"Active")}else{if(this._focused){multiply("Focused")}if(this._hovering){multiply(this.stateModifier+"Hover")}}}}var tn=this.stateNode||this.domNode,classHash={};dojo.forEach(tn.className.split(" "),function(c){classHash[c]=true});if("_stateClasses" in this){dojo.forEach(this._stateClasses,function(c){delete classHash[c]})}dojo.forEach(newStateClasses,function(c){classHash[c]=true});var newClasses=[];for(var c in classHash){newClasses.push(c)}tn.className=newClasses.join(" ");this._stateClasses=newStateClasses},compare:function(val1,val2){if((typeof val1=="number")&&(typeof val2=="number")){return(isNaN(val1)&&isNaN(val2))?0:(val1-val2)}else{if(val1>val2){return 1}else{if(val1<val2){return -1}else{return 0}}}},onChange:function(newValue){},_onChangeActive:false,_handleOnChange:function(newValue,priorityChange){this._lastValue=newValue;if(this._lastValueReported==undefined&&(priorityChange===null||!this._onChangeActive)){this._resetValue=this._lastValueReported=newValue}if((this.intermediateChanges||priorityChange||priorityChange===undefined)&&((typeof newValue!=typeof this._lastValueReported)||this.compare(newValue,this._lastValueReported)!=0)){this._lastValueReported=newValue;if(this._onChangeActive){this.onChange(newValue)}}},create:function(){this.inherited(arguments);this._onChangeActive=true;this._setStateClass()},destroy:function(){if(this._layoutHackHandle){clearTimeout(this._layoutHackHandle)}this.inherited(arguments)},setValue:function(value){dojo.deprecated("dijit.form._FormWidget:setValue("+value+") is deprecated.  Use attr('value',"+value+") instead.","","2.0");this.attr("value",value)},getValue:function(){dojo.deprecated(this.declaredClass+"::getValue() is deprecated. Use attr('value') instead.","","2.0");return this.attr("value")},_layoutHack:function(){if(dojo.isFF==2&&!this._layoutHackHandle){var node=this.domNode;var old=node.style.opacity;node.style.opacity="0.999";this._layoutHackHandle=setTimeout(dojo.hitch(this,function(){this._layoutHackHandle=null;node.style.opacity=old}),0)}}});dojo.declare("dijit.form._FormValueWidget",dijit.form._FormWidget,{attributeMap:dojo.delegate(dijit.form._FormWidget.prototype.attributeMap,{value:""}),postCreate:function(){if(dojo.isIE||dojo.isWebKit){this.connect(this.focusNode||this.domNode,"onkeydown",this._onKeyDown)}if(this._resetValue===undefined){this._resetValue=this.value}},_setValueAttr:function(newValue,priorityChange){this.value=newValue;this._handleOnChange(newValue,priorityChange)},_getValueAttr:function(value){return this._lastValue},undo:function(){this._setValueAttr(this._lastValueReported,false)},reset:function(){this._hasBeenBlurred=false;this._setValueAttr(this._resetValue,true)},_onKeyDown:function(e){if(e.keyCode==dojo.keys.ESCAPE&&!e.ctrlKey&&!e.altKey){var te;if(dojo.isIE){e.preventDefault();te=document.createEventObject();te.keyCode=dojo.keys.ESCAPE;te.shiftKey=e.shiftKey;e.srcElement.fireEvent("onkeypress",te)}else{if(dojo.isWebKit){te=document.createEvent("Events");te.initEvent("keypress",true,true);te.keyCode=dojo.keys.ESCAPE;te.shiftKey=e.shiftKey;e.target.dispatchEvent(te)}}}}})}if(!dojo._hasResource["dijit.form.Button"]){dojo._hasResource["dijit.form.Button"]=true;dojo.provide("dijit.form.Button");dojo.declare("dijit.form.Button",dijit.form._FormWidget,{label:"",showLabel:true,iconClass:"",type:"button",baseClass:"dijitButton",templateString:'<span class="dijit dijitReset dijitLeft dijitInline"\r\n\tdojoAttachEvent="ondijitclick:_onButtonClick,onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse"\r\n\t><span class="dijitReset dijitRight dijitInline"\r\n\t\t><span class="dijitReset dijitInline dijitButtonNode"\r\n\t\t\t><button class="dijitReset dijitStretch dijitButtonContents"\r\n\t\t\t\tdojoAttachPoint="titleNode,focusNode" \r\n\t\t\t\t${nameAttrSetting} type="${type}" value="${value}" waiRole="button" waiState="labelledby-${id}_label"\r\n\t\t\t\t><span class="dijitReset dijitInline" dojoAttachPoint="iconNode" \r\n\t\t\t\t\t><span class="dijitReset dijitToggleButtonIconChar">&#10003;</span \r\n\t\t\t\t></span \r\n\t\t\t\t><span class="dijitReset dijitInline dijitButtonText" \r\n\t\t\t\t\tid="${id}_label"  \r\n\t\t\t\t\tdojoAttachPoint="containerNode"\r\n\t\t\t\t></span\r\n\t\t\t></button\r\n\t\t></span\r\n\t></span\r\n></span>\r\n',attributeMap:dojo.delegate(dijit.form._FormWidget.prototype.attributeMap,{label:{node:"containerNode",type:"innerHTML"},iconClass:{node:"iconNode",type:"class"}}),_onClick:function(e){if(this.disabled||this.readOnly){return false}this._clicked();return this.onClick(e)},_onButtonClick:function(e){if(e.type!="click"&&!(this.type=="submit"||this.type=="reset")){dojo.stopEvent(e)}if(this._onClick(e)===false){e.preventDefault()}else{if(this.type=="submit"&&!this.focusNode.form){for(var node=this.domNode;node.parentNode;node=node.parentNode){var widget=dijit.byNode(node);if(widget&&typeof widget._onSubmit=="function"){widget._onSubmit(e);break}}}}},_setValueAttr:function(value){var attr=this.attributeMap.value||"";if(this[attr.node||attr||"domNode"].tagName=="BUTTON"){if(value!=this.value){console.debug("Cannot change the value attribute on a Button widget.")}}},_fillContent:function(source){if(source&&!("label" in this.params)){this.attr("label",source.innerHTML)}},postCreate:function(){if(this.showLabel==false){dojo.addClass(this.containerNode,"dijitDisplayNone")}dojo.setSelectable(this.focusNode,false);this.inherited(arguments)},onClick:function(e){return true},_clicked:function(e){},setLabel:function(content){dojo.deprecated("dijit.form.Button.setLabel() is deprecated.  Use attr('label', ...) instead.","","2.0");this.attr("label",content)},_setLabelAttr:function(content){this.containerNode.innerHTML=this.label=content;this._layoutHack();if(this.showLabel==false&&!this.params.title){this.titleNode.title=dojo.trim(this.containerNode.innerText||this.containerNode.textContent||"")}}});dojo.declare("dijit.form.DropDownButton",[dijit.form.Button,dijit._Container],{baseClass:"dijitDropDownButton",templateString:'<span class="dijit dijitReset dijitLeft dijitInline"\r\n\tdojoAttachEvent="onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse,onclick:_onDropDownClick,onkeydown:_onDropDownKeydown,onblur:_onDropDownBlur,onkeypress:_onKey"\r\n\t><span class=\'dijitReset dijitRight dijitInline\'\r\n\t\t><span class=\'dijitReset dijitInline dijitButtonNode\'\r\n\t\t\t><button class="dijitReset dijitStretch dijitButtonContents" \r\n\t\t\t\t${nameAttrSetting} type="${type}" value="${value}"\r\n\t\t\t\tdojoAttachPoint="focusNode,titleNode" \r\n\t\t\t\twaiRole="button" waiState="haspopup-true,labelledby-${id}_label"\r\n\t\t\t\t><span class="dijitReset dijitInline" \r\n\t\t\t\t\tdojoAttachPoint="iconNode"\r\n\t\t\t\t></span\r\n\t\t\t\t><span class="dijitReset dijitInline dijitButtonText"  \r\n\t\t\t\t\tdojoAttachPoint="containerNode,popupStateNode" \r\n\t\t\t\t\tid="${id}_label"\r\n\t\t\t\t></span\r\n\t\t\t\t><span class="dijitReset dijitInline dijitArrowButtonInner">&thinsp;</span\r\n\t\t\t\t><span class="dijitReset dijitInline dijitArrowButtonChar">&#9660;</span\r\n\t\t\t></button\r\n\t\t></span\r\n\t></span\r\n></span>\r\n',_fillContent:function(){if(this.srcNodeRef){var nodes=dojo.query("*",this.srcNodeRef);dijit.form.DropDownButton.superclass._fillContent.call(this,nodes[0]);this.dropDownContainer=this.srcNodeRef}},startup:function(){if(this._started){return }if(!this.dropDown){var dropDownNode=dojo.query("[widgetId]",this.dropDownContainer)[0];this.dropDown=dijit.byNode(dropDownNode);delete this.dropDownContainer}dijit.popup.prepare(this.dropDown.domNode);this.inherited(arguments)},destroyDescendants:function(){if(this.dropDown){this.dropDown.destroyRecursive();delete this.dropDown}this.inherited(arguments)},_onArrowClick:function(e){if(this.disabled||this.readOnly){return }this._toggleDropDown()},_onDropDownClick:function(e){var isMacFFlessThan3=dojo.isFF&&dojo.isFF<3&&navigator.appVersion.indexOf("Macintosh")!=-1;if(!isMacFFlessThan3||e.detail!=0||this._seenKeydown){this._onArrowClick(e)}this._seenKeydown=false},_onDropDownKeydown:function(e){this._seenKeydown=true},_onDropDownBlur:function(e){this._seenKeydown=false},_onKey:function(e){if(this.disabled||this.readOnly){return }if(e.charOrCode==dojo.keys.DOWN_ARROW){if(!this.dropDown||this.dropDown.domNode.style.visibility=="hidden"){dojo.stopEvent(e);this._toggleDropDown()}}},_onBlur:function(){this._closeDropDown();this.inherited(arguments)},_toggleDropDown:function(){if(this.disabled||this.readOnly){return }dijit.focus(this.popupStateNode);var dropDown=this.dropDown;if(!dropDown){return }if(!this._opened){if(dropDown.href&&!dropDown.isLoaded){var self=this;var handler=dojo.connect(dropDown,"onLoad",function(){dojo.disconnect(handler);self._openDropDown()});dropDown.refresh();return }else{this._openDropDown()}}else{this._closeDropDown()}},_openDropDown:function(){var dropDown=this.dropDown;var oldWidth=dropDown.domNode.style.width;var self=this;dijit.popup.open({parent:this,popup:dropDown,around:this.domNode,orient:this.isLeftToRight()?{"BL":"TL","BR":"TR","TL":"BL","TR":"BR"}:{"BR":"TR","BL":"TL","TR":"BR","TL":"BL"},onExecute:function(){self._closeDropDown(true)},onCancel:function(){self._closeDropDown(true)},onClose:function(){dropDown.domNode.style.width=oldWidth;self.popupStateNode.removeAttribute("popupActive");self._opened=false}});if(this.domNode.offsetWidth>dropDown.domNode.offsetWidth){var adjustNode=null;if(!this.isLeftToRight()){adjustNode=dropDown.domNode.parentNode;var oldRight=adjustNode.offsetLeft+adjustNode.offsetWidth}dojo.marginBox(dropDown.domNode,{w:this.domNode.offsetWidth});if(adjustNode){adjustNode.style.left=oldRight-this.domNode.offsetWidth+"px"}}this.popupStateNode.setAttribute("popupActive","true");this._opened=true;if(dropDown.focus){dropDown.focus()}},_closeDropDown:function(focus){if(this._opened){dijit.popup.close(this.dropDown);if(focus){this.focus()}this._opened=false}}});dojo.declare("dijit.form.ComboButton",dijit.form.DropDownButton,{templateString:'<table class=\'dijit dijitReset dijitInline dijitLeft\'\r\n\tcellspacing=\'0\' cellpadding=\'0\' waiRole="presentation"\r\n\t><tbody waiRole="presentation"><tr waiRole="presentation"\r\n\t\t><td class="dijitReset dijitStretch dijitButtonContents dijitButtonNode"\r\n\t\t\tdojoAttachEvent="ondijitclick:_onButtonClick,onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse"  dojoAttachPoint="titleNode"\r\n\t\t\twaiRole="button" waiState="labelledby-${id}_label"\r\n\t\t\t><div class="dijitReset dijitInline" dojoAttachPoint="iconNode" waiRole="presentation"></div\r\n\t\t\t><div class="dijitReset dijitInline dijitButtonText" id="${id}_label" dojoAttachPoint="containerNode" waiRole="presentation"></div\r\n\t\t></td\r\n\t\t><td class=\'dijitReset dijitRight dijitButtonNode dijitArrowButton dijitDownArrowButton\'\r\n\t\t\tdojoAttachPoint="popupStateNode,focusNode"\r\n\t\t\tdojoAttachEvent="ondijitclick:_onArrowClick, onkeypress:_onKey,onmouseenter:_onMouse,onmouseleave:_onMouse"\r\n\t\t\tstateModifier="DownArrow"\r\n\t\t\ttitle="${optionsTitle}" ${nameAttrSetting}\r\n\t\t\twaiRole="button" waiState="haspopup-true"\r\n\t\t\t><div class="dijitReset dijitArrowButtonInner" waiRole="presentation">&thinsp;</div\r\n\t\t\t><div class="dijitReset dijitArrowButtonChar" waiRole="presentation">&#9660;</div\r\n\t\t></td\r\n\t></tr></tbody\r\n></table>\r\n',attributeMap:dojo.mixin(dojo.clone(dijit.form.Button.prototype.attributeMap),{id:"",tabIndex:["focusNode","titleNode"]}),optionsTitle:"",baseClass:"dijitComboButton",_focusedNode:null,postCreate:function(){this.inherited(arguments);this._focalNodes=[this.titleNode,this.popupStateNode];dojo.forEach(this._focalNodes,dojo.hitch(this,function(node){if(dojo.isIE){this.connect(node,"onactivate",this._onNodeFocus);this.connect(node,"ondeactivate",this._onNodeBlur)}else{this.connect(node,"onfocus",this._onNodeFocus);this.connect(node,"onblur",this._onNodeBlur)}}))},focusFocalNode:function(node){this._focusedNode=node;dijit.focus(node)},hasNextFocalNode:function(){return this._focusedNode!==this.getFocalNodes()[1]},focusNext:function(){this._focusedNode=this.getFocalNodes()[this._focusedNode?1:0];dijit.focus(this._focusedNode)},hasPrevFocalNode:function(){return this._focusedNode!==this.getFocalNodes()[0]},focusPrev:function(){this._focusedNode=this.getFocalNodes()[this._focusedNode?0:1];dijit.focus(this._focusedNode)},getFocalNodes:function(){return this._focalNodes},_onNodeFocus:function(evt){this._focusedNode=evt.currentTarget;var fnc=this._focusedNode==this.focusNode?"dijitDownArrowButtonFocused":"dijitButtonContentsFocused";dojo.addClass(this._focusedNode,fnc)},_onNodeBlur:function(evt){var fnc=evt.currentTarget==this.focusNode?"dijitDownArrowButtonFocused":"dijitButtonContentsFocused";dojo.removeClass(evt.currentTarget,fnc)},_onBlur:function(){this.inherited(arguments);this._focusedNode=null}});dojo.declare("dijit.form.ToggleButton",dijit.form.Button,{baseClass:"dijitToggleButton",checked:false,attributeMap:dojo.mixin(dojo.clone(dijit.form.Button.prototype.attributeMap),{checked:"focusNode"}),_clicked:function(evt){this.attr("checked",!this.checked)},_setCheckedAttr:function(value){this.checked=value;dojo.attr(this.focusNode||this.domNode,"checked",value);dijit.setWaiState(this.focusNode||this.domNode,"pressed",value);this._setStateClass();this._handleOnChange(value,true)},setChecked:function(checked){dojo.deprecated("setChecked("+checked+") is deprecated. Use attr('checked',"+checked+") instead.","","2.0");this.attr("checked",checked)},reset:function(){this._hasBeenBlurred=false;this.attr("checked",this.params.checked||false)}})}if(!dojo._hasResource["dijit.form.ToggleButton"]){dojo._hasResource["dijit.form.ToggleButton"]=true;dojo.provide("dijit.form.ToggleButton")}if(!dojo._hasResource["dijit._KeyNavContainer"]){dojo._hasResource["dijit._KeyNavContainer"]=true;dojo.provide("dijit._KeyNavContainer");dojo.declare("dijit._KeyNavContainer",[dijit._Container],{tabIndex:"0",_keyNavCodes:{},connectKeyNavHandlers:function(prevKeyCodes,nextKeyCodes){var keyCodes=this._keyNavCodes={};var prev=dojo.hitch(this,this.focusPrev);var next=dojo.hitch(this,this.focusNext);dojo.forEach(prevKeyCodes,function(code){keyCodes[code]=prev});dojo.forEach(nextKeyCodes,function(code){keyCodes[code]=next});this.connect(this.domNode,"onkeypress","_onContainerKeypress");this.connect(this.domNode,"onfocus","_onContainerFocus")},startupKeyNavChildren:function(){dojo.forEach(this.getChildren(),dojo.hitch(this,"_startupChild"))},addChild:function(widget,insertIndex){dijit._KeyNavContainer.superclass.addChild.apply(this,arguments);this._startupChild(widget)},focus:function(){this.focusFirstChild()},focusFirstChild:function(){this.focusChild(this._getFirstFocusableChild())},focusNext:function(){if(this.focusedChild&&this.focusedChild.hasNextFocalNode&&this.focusedChild.hasNextFocalNode()){this.focusedChild.focusNext();return }var child=this._getNextFocusableChild(this.focusedChild,1);if(child.getFocalNodes){this.focusChild(child,child.getFocalNodes()[0])}else{this.focusChild(child)}},focusPrev:function(){if(this.focusedChild&&this.focusedChild.hasPrevFocalNode&&this.focusedChild.hasPrevFocalNode()){this.focusedChild.focusPrev();return }var child=this._getNextFocusableChild(this.focusedChild,-1);if(child.getFocalNodes){var nodes=child.getFocalNodes();this.focusChild(child,nodes[nodes.length-1])}else{this.focusChild(child)}},focusChild:function(widget,node){if(widget){if(this.focusedChild&&widget!==this.focusedChild){this._onChildBlur(this.focusedChild)}this.focusedChild=widget;if(node&&widget.focusFocalNode){widget.focusFocalNode(node)}else{widget.focus()}}},_startupChild:function(widget){if(widget.getFocalNodes){dojo.forEach(widget.getFocalNodes(),function(node){dojo.attr(node,"tabindex",-1);this._connectNode(node)},this)}else{var node=widget.focusNode||widget.domNode;if(widget.isFocusable()){dojo.attr(node,"tabindex",-1)}this._connectNode(node)}},_connectNode:function(node){this.connect(node,"onfocus","_onNodeFocus");this.connect(node,"onblur","_onNodeBlur")},_onContainerFocus:function(evt){if(evt.target!==this.domNode){return }this.focusFirstChild();dojo.removeAttr(this.domNode,"tabIndex")},_onBlur:function(evt){if(this.tabIndex){dojo.attr(this.domNode,"tabindex",this.tabIndex)}},_onContainerKeypress:function(evt){if(evt.ctrlKey||evt.altKey){return }var func=this._keyNavCodes[evt.charOrCode];if(func){func();dojo.stopEvent(evt)}},_onNodeFocus:function(evt){var widget=dijit.getEnclosingWidget(evt.target);if(widget&&widget.isFocusable()){this.focusedChild=widget}dojo.stopEvent(evt)},_onNodeBlur:function(evt){dojo.stopEvent(evt)},_onChildBlur:function(widget){},_getFirstFocusableChild:function(){return this._getNextFocusableChild(null,1)},_getNextFocusableChild:function(child,dir){if(child){child=this._getSiblingOfChild(child,dir)}var children=this.getChildren();for(var i=0;i<children.length;i++){if(!child){child=children[(dir>0)?0:(children.length-1)]}if(child.isFocusable()){return child}child=this._getSiblingOfChild(child,dir)}return null}})}if(!dojo._hasResource["dijit.MenuItem"]){dojo._hasResource["dijit.MenuItem"]=true;dojo.provide("dijit.MenuItem");dojo.declare("dijit.MenuItem",[dijit._Widget,dijit._Templated,dijit._Contained],{templateString:'<tr class="dijitReset dijitMenuItem" dojoAttachPoint="focusNode" waiRole="menuitem" tabIndex="-1"\r\n\t\tdojoAttachEvent="onmouseenter:_onHover,onmouseleave:_onUnhover,ondijitclick:_onClick">\r\n\t<td class="dijitReset" waiRole="presentation">\r\n\t\t<img src="${_blankGif}" alt="" class="dijitMenuItemIcon" dojoAttachPoint="iconNode">\r\n\t</td>\r\n\t<td class="dijitReset dijitMenuItemLabel" colspan="2" dojoAttachPoint="containerNode"></td>\r\n\t<td class="dijitReset dijitMenuItemAccelKey" style="display: none" dojoAttachPoint="accelKeyNode"></td>\r\n\t<td class="dijitReset dijitMenuArrowCell" waiRole="presentation">\r\n\t\t<div dojoAttachPoint="arrowWrapper" style="visibility: hidden">\r\n\t\t\t<img src="${_blankGif}" alt="" class="dijitMenuExpand">\r\n\t\t\t<span class="dijitMenuExpandA11y">+</span>\r\n\t\t</div>\r\n\t</td>\r\n</tr>\r\n',attributeMap:dojo.delegate(dijit._Widget.prototype.attributeMap,{label:{node:"containerNode",type:"innerHTML"},iconClass:{node:"iconNode",type:"class"}}),label:"",iconClass:"",accelKey:"",disabled:false,_fillContent:function(source){if(source&&!("label" in this.params)){this.attr("label",source.innerHTML)}},postCreate:function(){dojo.setSelectable(this.domNode,false);dojo.attr(this.containerNode,"id",this.id+"_text");dijit.setWaiState(this.domNode,"labelledby",this.id+"_text")},_onHover:function(){dojo.addClass(this.domNode,"dijitMenuItemHover");this.getParent().onItemHover(this)},_onUnhover:function(){dojo.removeClass(this.domNode,"dijitMenuItemHover");this.getParent().onItemUnhover(this)},_onClick:function(evt){this.getParent().onItemClick(this,evt);dojo.stopEvent(evt)},onClick:function(evt){},focus:function(){try{dijit.focus(this.focusNode)}catch(e){}},_onFocus:function(){this._setSelected(true)},_setSelected:function(selected){dojo.toggleClass(this.domNode,"dijitMenuItemSelected",selected)},setLabel:function(content){dojo.deprecated("dijit.MenuItem.setLabel() is deprecated.  Use attr('label', ...) instead.","","2.0");this.attr("label",content)},setDisabled:function(disabled){dojo.deprecated("dijit.Menu.setDisabled() is deprecated.  Use attr('disabled', bool) instead.","","2.0");this.attr("disabled",disabled)},_setDisabledAttr:function(value){this.disabled=value;dojo[value?"addClass":"removeClass"](this.domNode,"dijitMenuItemDisabled");dijit.setWaiState(this.focusNode,"disabled",value?"true":"false")},_setAccelKeyAttr:function(value){this.accelKey=value;this.accelKeyNode.style.display=value?"":"none";this.accelKeyNode.innerHTML=value;dojo.attr(this.containerNode,"colSpan",value?"1":"2")}})}if(!dojo._hasResource["dijit.PopupMenuItem"]){dojo._hasResource["dijit.PopupMenuItem"]=true;dojo.provide("dijit.PopupMenuItem");dojo.declare("dijit.PopupMenuItem",dijit.MenuItem,{_fillContent:function(){if(this.srcNodeRef){var nodes=dojo.query("*",this.srcNodeRef);dijit.PopupMenuItem.superclass._fillContent.call(this,nodes[0]);this.dropDownContainer=this.srcNodeRef}},startup:function(){if(this._started){return }this.inherited(arguments);if(!this.popup){var node=dojo.query("[widgetId]",this.dropDownContainer)[0];this.popup=dijit.byNode(node)}dojo.body().appendChild(this.popup.domNode);this.popup.domNode.style.display="none";if(this.arrowWrapper){dojo.style(this.arrowWrapper,"visibility","")}dijit.setWaiState(this.focusNode,"haspopup","true")},destroyDescendants:function(){if(this.popup){this.popup.destroyRecursive();delete this.popup}this.inherited(arguments)}})}if(!dojo._hasResource["dijit.CheckedMenuItem"]){dojo._hasResource["dijit.CheckedMenuItem"]=true;dojo.provide("dijit.CheckedMenuItem");dojo.declare("dijit.CheckedMenuItem",dijit.MenuItem,{templateString:'<tr class="dijitReset dijitMenuItem" dojoAttachPoint="focusNode" waiRole="menuitemcheckbox" tabIndex="-1"\r\n\t\tdojoAttachEvent="onmouseenter:_onHover,onmouseleave:_onUnhover,ondijitclick:_onClick">\r\n\t<td class="dijitReset" waiRole="presentation">\r\n\t\t<img src="${_blankGif}" alt="" class="dijitMenuItemIcon dijitCheckedMenuItemIcon" dojoAttachPoint="iconNode">\r\n\t\t<span class="dijitCheckedMenuItemIconChar">&#10003;</span>\r\n\t</td>\r\n\t<td class="dijitReset dijitMenuItemLabel" colspan="2" dojoAttachPoint="containerNode,labelNode"></td>\r\n\t<td class="dijitReset dijitMenuItemAccelKey" style="display: none" dojoAttachPoint="accelKeyNode"></td>\r\n\t<td class="dijitReset dijitMenuArrowCell" waiRole="presentation">\r\n\t</td>\r\n</tr>\r\n',checked:false,_setCheckedAttr:function(checked){dojo.toggleClass(this.domNode,"dijitCheckedMenuItemChecked",checked);dijit.setWaiState(this.domNode,"checked",checked);this.checked=checked},onChange:function(checked){},_onClick:function(e){if(!this.disabled){this.attr("checked",!this.checked);this.onChange(this.checked)}this.inherited(arguments)}})}if(!dojo._hasResource["dijit.MenuSeparator"]){dojo._hasResource["dijit.MenuSeparator"]=true;dojo.provide("dijit.MenuSeparator");dojo.declare("dijit.MenuSeparator",[dijit._Widget,dijit._Templated,dijit._Contained],{templateString:'<tr class="dijitMenuSeparator">\r\n\t<td colspan="4">\r\n\t\t<div class="dijitMenuSeparatorTop"></div>\r\n\t\t<div class="dijitMenuSeparatorBottom"></div>\r\n\t</td>\r\n</tr>\r\n',postCreate:function(){dojo.setSelectable(this.domNode,false)},isFocusable:function(){return false}})}if(!dojo._hasResource["dijit.Menu"]){dojo._hasResource["dijit.Menu"]=true;dojo.provide("dijit.Menu");dojo.declare("dijit._MenuBase",[dijit._Widget,dijit._Templated,dijit._KeyNavContainer],{parentMenu:null,popupDelay:500,startup:function(){if(this._started){return }dojo.forEach(this.getChildren(),function(child){child.startup()});this.startupKeyNavChildren();this.inherited(arguments)},onExecute:function(){},onCancel:function(closeAll){},_moveToPopup:function(evt){if(this.focusedChild&&this.focusedChild.popup&&!this.focusedChild.disabled){this.focusedChild._onClick(evt)}else{var topMenu=this._getTopMenu();if(topMenu&&topMenu._isMenuBar){topMenu.focusNext()}}},onItemHover:function(item){if(this.isActive){this.focusChild(item);if(this.focusedChild.popup&&!this.focusedChild.disabled&&!this.hover_timer){this.hover_timer=setTimeout(dojo.hitch(this,"_openPopup"),this.popupDelay)}}},_onChildBlur:function(item){item._setSelected(false);dijit.popup.close(item.popup);this._stopPopupTimer()},onItemUnhover:function(item){if(this.isActive){this._stopPopupTimer()}},_stopPopupTimer:function(){if(this.hover_timer){clearTimeout(this.hover_timer);this.hover_timer=null}},_getTopMenu:function(){for(var top=this;top.parentMenu;top=top.parentMenu){}return top},onItemClick:function(item,evt){if(item.disabled){return false}this.focusChild(item);if(item.popup){if(!this.is_open){this._openPopup()}}else{this.onExecute();item.onClick(evt)}},_openPopup:function(){this._stopPopupTimer();var from_item=this.focusedChild;var popup=from_item.popup;if(popup.isShowingNow){return }popup.parentMenu=this;var self=this;dijit.popup.open({parent:this,popup:popup,around:from_item.domNode,orient:this._orient||(this.isLeftToRight()?{"TR":"TL","TL":"TR"}:{"TL":"TR","TR":"TL"}),onCancel:function(){dijit.popup.close(popup);from_item.focus();self.currentPopup=null},onExecute:dojo.hitch(this,"_onDescendantExecute")});this.currentPopup=popup;if(popup.focus){setTimeout(dojo.hitch(popup,"focus"),0)}},onOpen:function(e){this.isShowingNow=true},onClose:function(){this._stopPopupTimer();this.parentMenu=null;this.isShowingNow=false;this.currentPopup=null;if(this.focusedChild){this._onChildBlur(this.focusedChild);this.focusedChild=null}},_onFocus:function(){this.isActive=true;dojo.addClass(this.domNode,"dijitMenuActive");dojo.removeClass(this.domNode,"dijitMenuPassive");this.inherited(arguments)},_onBlur:function(){this.isActive=false;dojo.removeClass(this.domNode,"dijitMenuActive");dojo.addClass(this.domNode,"dijitMenuPassive");this.onClose();this.inherited(arguments)},_onDescendantExecute:function(){this.onClose()}});dojo.declare("dijit.Menu",dijit._MenuBase,{constructor:function(){this._bindings=[]},templateString:'<table class="dijit dijitMenu dijitMenuPassive dijitReset dijitMenuTable" waiRole="menu" tabIndex="${tabIndex}" dojoAttachEvent="onkeypress:_onKeyPress">\r\n\t<tbody class="dijitReset" dojoAttachPoint="containerNode"></tbody>\r\n</table>\r\n',targetNodeIds:[],contextMenuForWindow:false,leftClickToOpen:false,_contextMenuWithMouse:false,postCreate:function(){if(this.contextMenuForWindow){this.bindDomNode(dojo.body())}else{dojo.forEach(this.targetNodeIds,this.bindDomNode,this)}var k=dojo.keys,l=this.isLeftToRight();this._openSubMenuKey=l?k.RIGHT_ARROW:k.LEFT_ARROW;this._closeSubMenuKey=l?k.LEFT_ARROW:k.RIGHT_ARROW;this.connectKeyNavHandlers([k.UP_ARROW],[k.DOWN_ARROW])},_onKeyPress:function(evt){if(evt.ctrlKey||evt.altKey){return }switch(evt.charOrCode){case this._openSubMenuKey:this._moveToPopup(evt);dojo.stopEvent(evt);break;case this._closeSubMenuKey:if(this.parentMenu){if(this.parentMenu._isMenuBar){this.parentMenu.focusPrev()}else{this.onCancel(false)}}else{dojo.stopEvent(evt)}break}},_iframeContentWindow:function(iframe_el){var win=dijit.getDocumentWindow(dijit.Menu._iframeContentDocument(iframe_el))||dijit.Menu._iframeContentDocument(iframe_el)["__parent__"]||(iframe_el.name&&dojo.doc.frames[iframe_el.name])||null;return win},_iframeContentDocument:function(iframe_el){var doc=iframe_el.contentDocument||(iframe_el.contentWindow&&iframe_el.contentWindow.document)||(iframe_el.name&&dojo.doc.frames[iframe_el.name]&&dojo.doc.frames[iframe_el.name].document)||null;return doc},bindDomNode:function(node){node=dojo.byId(node);var win=dijit.getDocumentWindow(node.ownerDocument);if(node.tagName.toLowerCase()=="iframe"){win=this._iframeContentWindow(node);node=dojo.withGlobal(win,dojo.body)}var cn=(node==dojo.body()?dojo.doc:node);node[this.id]=this._bindings.push([dojo.connect(cn,(this.leftClickToOpen)?"onclick":"oncontextmenu",this,"_openMyself"),dojo.connect(cn,"onkeydown",this,"_contextKey"),dojo.connect(cn,"onmousedown",this,"_contextMouse")])},unBindDomNode:function(nodeName){var node=dojo.byId(nodeName);if(node){var bid=node[this.id]-1,b=this._bindings[bid];dojo.forEach(b,dojo.disconnect);delete this._bindings[bid]}},_contextKey:function(e){this._contextMenuWithMouse=false;if(e.keyCode==dojo.keys.F10){dojo.stopEvent(e);if(e.shiftKey&&e.type=="keydown"){var _e={target:e.target,pageX:e.pageX,pageY:e.pageY};_e.preventDefault=_e.stopPropagation=function(){};window.setTimeout(dojo.hitch(this,function(){this._openMyself(_e)}),1)}}},_contextMouse:function(e){this._contextMenuWithMouse=true},_openMyself:function(e){if(this.leftClickToOpen&&e.button>0){return }dojo.stopEvent(e);var x,y;if(dojo.isSafari||this._contextMenuWithMouse){x=e.pageX;y=e.pageY}else{var coords=dojo.coords(e.target,true);x=coords.x+10;y=coords.y+10}var self=this;var savedFocus=dijit.getFocus(this);function closeAndRestoreFocus(){dijit.focus(savedFocus);dijit.popup.close(self)}dijit.popup.open({popup:this,x:x,y:y,onExecute:closeAndRestoreFocus,onCancel:closeAndRestoreFocus,orient:this.isLeftToRight()?"L":"R"});this.focus();this._onBlur=function(){this.inherited("_onBlur",arguments);dijit.popup.close(this)}},uninitialize:function(){dojo.forEach(this.targetNodeIds,this.unBindDomNode,this);this.inherited(arguments)}})}if(!dojo._hasResource["dijit.layout.StackController"]){dojo._hasResource["dijit.layout.StackController"]=true;dojo.provide("dijit.layout.StackController");dojo.declare("dijit.layout.StackController",[dijit._Widget,dijit._Templated,dijit._Container],{templateString:"<span wairole='tablist' dojoAttachEvent='onkeypress' class='dijitStackController'></span>",containerId:"",buttonWidget:"dijit.layout._StackButton",postCreate:function(){dijit.setWaiRole(this.domNode,"tablist");this.pane2button={};this.pane2handles={};this.pane2menu={};this._subscriptions=[dojo.subscribe(this.containerId+"-startup",this,"onStartup"),dojo.subscribe(this.containerId+"-addChild",this,"onAddChild"),dojo.subscribe(this.containerId+"-removeChild",this,"onRemoveChild"),dojo.subscribe(this.containerId+"-selectChild",this,"onSelectChild"),dojo.subscribe(this.containerId+"-containerKeyPress",this,"onContainerKeyPress")]},onStartup:function(info){dojo.forEach(info.children,this.onAddChild,this);this.onSelectChild(info.selected)},destroy:function(){for(var pane in this.pane2button){this.onRemoveChild(pane)}dojo.forEach(this._subscriptions,dojo.unsubscribe);this.inherited(arguments)},onAddChild:function(page,insertIndex){var refNode=dojo.doc.createElement("span");this.domNode.appendChild(refNode);var cls=dojo.getObject(this.buttonWidget);var button=new cls({label:page.title,closeButton:page.closable},refNode);this.addChild(button,insertIndex);this.pane2button[page]=button;page.controlButton=button;var handles=[];handles.push(dojo.connect(button,"onClick",dojo.hitch(this,"onButtonClick",page)));if(page.closable){handles.push(dojo.connect(button,"onClickCloseButton",dojo.hitch(this,"onCloseButtonClick",page)));var _nlsResources=dojo.i18n.getLocalization("dijit","common");var closeMenu=new dijit.Menu({targetNodeIds:[button.id],id:button.id+"_Menu"});var mItem=new dijit.MenuItem({label:_nlsResources.itemClose});handles.push(dojo.connect(mItem,"onClick",dojo.hitch(this,"onCloseButtonClick",page)));closeMenu.addChild(mItem);this.pane2menu[page]=closeMenu}this.pane2handles[page]=handles;if(!this._currentChild){button.focusNode.setAttribute("tabIndex","0");this._currentChild=page}if(!this.isLeftToRight()&&dojo.isIE&&this._rectifyRtlTabList){this._rectifyRtlTabList()}},onRemoveChild:function(page){if(this._currentChild===page){this._currentChild=null}dojo.forEach(this.pane2handles[page],dojo.disconnect);delete this.pane2handles[page];var menu=this.pane2menu[page];if(menu){menu.destroyRecursive();delete this.pane2menu[page]}var button=this.pane2button[page];if(button){button.destroy();delete this.pane2button[page]}},onSelectChild:function(page){if(!page){return }if(this._currentChild){var oldButton=this.pane2button[this._currentChild];oldButton.attr("checked",false);oldButton.focusNode.setAttribute("tabIndex","-1")}var newButton=this.pane2button[page];newButton.attr("checked",true);this._currentChild=page;newButton.focusNode.setAttribute("tabIndex","0");var container=dijit.byId(this.containerId);dijit.setWaiState(container.containerNode,"labelledby",newButton.id)},onButtonClick:function(page){var container=dijit.byId(this.containerId);container.selectChild(page)},onCloseButtonClick:function(page){var container=dijit.byId(this.containerId);container.closeChild(page);var b=this.pane2button[this._currentChild];if(b){dijit.focus(b.focusNode||b.domNode)}},adjacent:function(forward){if(!this.isLeftToRight()&&(!this.tabPosition||/top|bottom/.test(this.tabPosition))){forward=!forward}var children=this.getChildren();var current=dojo.indexOf(children,this.pane2button[this._currentChild]);var offset=forward?1:children.length-1;return children[(current+offset)%children.length]},onkeypress:function(e){if(this.disabled||e.altKey){return }var forward=null;if(e.ctrlKey||!e._djpage){var k=dojo.keys;switch(e.charOrCode){case k.LEFT_ARROW:case k.UP_ARROW:if(!e._djpage){forward=false}break;case k.PAGE_UP:if(e.ctrlKey){forward=false}break;case k.RIGHT_ARROW:case k.DOWN_ARROW:if(!e._djpage){forward=true}break;case k.PAGE_DOWN:if(e.ctrlKey){forward=true}break;case k.DELETE:if(this._currentChild.closable){this.onCloseButtonClick(this._currentChild)}dojo.stopEvent(e);break;default:if(e.ctrlKey){if(e.charOrCode===k.TAB){this.adjacent(!e.shiftKey).onClick();dojo.stopEvent(e)}else{if(e.charOrCode=="w"){if(this._currentChild.closable){this.onCloseButtonClick(this._currentChild)}dojo.stopEvent(e)}}}}if(forward!==null){this.adjacent(forward).onClick();dojo.stopEvent(e)}}},onContainerKeyPress:function(info){info.e._djpage=info.page;this.onkeypress(info.e)}});dojo.declare("dijit.layout._StackButton",dijit.form.ToggleButton,{tabIndex:"-1",postCreate:function(evt){dijit.setWaiRole((this.focusNode||this.domNode),"tab");this.inherited(arguments)},onClick:function(evt){dijit.focus(this.focusNode)},onClickCloseButton:function(evt){evt.stopPropagation()}})}if(!dojo._hasResource["dijit.layout.StackContainer"]){dojo._hasResource["dijit.layout.StackContainer"]=true;dojo.provide("dijit.layout.StackContainer");dojo.declare("dijit.layout.StackContainer",dijit.layout._LayoutWidget,{doLayout:true,persist:false,baseClass:"dijitStackContainer",_started:false,postCreate:function(){this.inherited(arguments);dojo.addClass(this.domNode,"dijitLayoutContainer");dijit.setWaiRole(this.containerNode,"tabpanel");this.connect(this.domNode,"onkeypress",this._onKeyPress)},startup:function(){if(this._started){return }var children=this.getChildren();dojo.forEach(children,this._setupChild,this);if(this.persist){this.selectedChildWidget=dijit.byId(dojo.cookie(this.id+"_selectedChild"))}else{dojo.some(children,function(child){if(child.selected){this.selectedChildWidget=child}return child.selected},this)}var selected=this.selectedChildWidget;if(!selected&&children[0]){selected=this.selectedChildWidget=children[0];selected.selected=true}dojo.publish(this.id+"-startup",[{children:children,selected:selected}]);if(selected){this._showChild(selected)}this.inherited(arguments)},_setupChild:function(child){this.inherited(arguments);dojo.removeClass(child.domNode,"dijitVisible");dojo.addClass(child.domNode,"dijitHidden");child.domNode.title="";return child},addChild:function(child,insertIndex){this.inherited(arguments);if(this._started){dojo.publish(this.id+"-addChild",[child,insertIndex]);this.layout();if(!this.selectedChildWidget){this.selectChild(child)}}},removeChild:function(page){this.inherited(arguments);if(this._beingDestroyed){return }if(this._started){dojo.publish(this.id+"-removeChild",[page]);this.layout()}if(this.selectedChildWidget===page){this.selectedChildWidget=undefined;if(this._started){var children=this.getChildren();if(children.length){this.selectChild(children[0])}}}},selectChild:function(page){page=dijit.byId(page);if(this.selectedChildWidget!=page){this._transition(page,this.selectedChildWidget);this.selectedChildWidget=page;dojo.publish(this.id+"-selectChild",[page]);if(this.persist){dojo.cookie(this.id+"_selectedChild",this.selectedChildWidget.id)}}},_transition:function(newWidget,oldWidget){if(oldWidget){this._hideChild(oldWidget)}this._showChild(newWidget);if(this.doLayout&&newWidget.resize){newWidget.resize(this._containerContentBox||this._contentBox)}},_adjacent:function(forward){var children=this.getChildren();var index=dojo.indexOf(children,this.selectedChildWidget);index+=forward?1:children.length-1;return children[index%children.length]},forward:function(){this.selectChild(this._adjacent(true))},back:function(){this.selectChild(this._adjacent(false))},_onKeyPress:function(e){dojo.publish(this.id+"-containerKeyPress",[{e:e,page:this}])},layout:function(){if(this.doLayout&&this.selectedChildWidget&&this.selectedChildWidget.resize){this.selectedChildWidget.resize(this._contentBox)}},_showChild:function(page){var children=this.getChildren();page.isFirstChild=(page==children[0]);page.isLastChild=(page==children[children.length-1]);page.selected=true;dojo.removeClass(page.domNode,"dijitHidden");dojo.addClass(page.domNode,"dijitVisible");if(page._onShow){page._onShow()}else{if(page.onShow){page.onShow()}}},_hideChild:function(page){page.selected=false;dojo.removeClass(page.domNode,"dijitVisible");dojo.addClass(page.domNode,"dijitHidden");if(page.onHide){page.onHide()}},closeChild:function(page){var remove=page.onClose(this,page);if(remove){this.removeChild(page);page.destroyRecursive()}},destroy:function(){this._beingDestroyed=true;this.inherited(arguments)}});dojo.extend(dijit._Widget,{title:"",selected:false,closable:false,onClose:function(){return true}})}if(!dojo._hasResource["dijit.layout.TabController"]){dojo._hasResource["dijit.layout.TabController"]=true;dojo.provide("dijit.layout.TabController");dojo.declare("dijit.layout.TabController",dijit.layout.StackController,{templateString:"<div wairole='tablist' dojoAttachEvent='onkeypress:onkeypress'></div>",tabPosition:"top",doLayout:true,buttonWidget:"dijit.layout._TabButton",_rectifyRtlTabList:function(){if(0>=this.tabPosition.indexOf("-h")){return }if(!this.pane2button){return }var maxWidth=0;for(var pane in this.pane2button){var ow=this.pane2button[pane].innerDiv.scrollWidth;maxWidth=Math.max(maxWidth,ow)}for(pane in this.pane2button){this.pane2button[pane].innerDiv.style.width=maxWidth+"px"}}});dojo.declare("dijit.layout._TabButton",dijit.layout._StackButton,{baseClass:"dijitTab",templateString:"<div waiRole=\"presentation\" dojoAttachEvent='onclick:onClick,onmouseenter:_onMouse,onmouseleave:_onMouse'>\r\n    <div waiRole=\"presentation\" class='dijitTabInnerDiv' dojoAttachPoint='innerDiv'>\r\n        <div waiRole=\"presentation\" class='dijitTabContent' dojoAttachPoint='tabContent'>\r\n\t        <span dojoAttachPoint='containerNode,focusNode' class='tabLabel'>${!label}</span><img class =\"dijitTabButtonSpacer\" src=\"${_blankGif}\" />\r\n\t        <span class=\"closeButton\" dojoAttachPoint='closeNode'\r\n\t        \t\tdojoAttachEvent='onclick: onClickCloseButton, onmouseenter: _onCloseButtonEnter, onmouseleave: _onCloseButtonLeave'>\r\n\t        \t<img src=\"${_blankGif}\" alt=\"\" dojoAttachPoint='closeIcon' class='closeImage' waiRole=\"presentation\"/>\r\n\t            <span dojoAttachPoint='closeText' class='closeText'>x</span>\r\n\t        </span>\r\n        </div>\r\n    </div>\r\n</div>\r\n",scrollOnFocus:false,postCreate:function(){if(this.closeButton){dojo.addClass(this.innerDiv,"dijitClosable");var _nlsResources=dojo.i18n.getLocalization("dijit","common");if(this.closeNode){dojo.attr(this.closeNode,"title",_nlsResources.itemClose);dojo.attr(this.closeIcon,"title",_nlsResources.itemClose)}}else{this.closeNode.style.display="none"}this.inherited(arguments);dojo.setSelectable(this.containerNode,false)},_onCloseButtonEnter:function(){dojo.addClass(this.closeNode,"closeButton-hover")},_onCloseButtonLeave:function(){dojo.removeClass(this.closeNode,"closeButton-hover")}})}if(!dojo._hasResource["dijit.layout.TabContainer"]){dojo._hasResource["dijit.layout.TabContainer"]=true;dojo.provide("dijit.layout.TabContainer");dojo.declare("dijit.layout.TabContainer",[dijit.layout.StackContainer,dijit._Templated],{tabPosition:"top",baseClass:"dijitTabContainer",tabStrip:false,nested:false,templateString:null,templateString:'<div class="dijitTabContainer">\r\n\t<div dojoAttachPoint="tablistNode"></div>\r\n\t<div dojoAttachPoint="tablistSpacer" class="dijitTabSpacer ${baseClass}-spacer"></div>\r\n\t<div class="dijitTabPaneWrapper ${baseClass}-container" dojoAttachPoint="containerNode"></div>\r\n</div>\r\n',_controllerWidget:"dijit.layout.TabController",postMixInProperties:function(){this.baseClass+=this.tabPosition.charAt(0).toUpperCase()+this.tabPosition.substr(1).replace(/-.*/,"");this.inherited(arguments)},postCreate:function(){this.inherited(arguments);var TabController=dojo.getObject(this._controllerWidget);this.tablist=new TabController({id:this.id+"_tablist",tabPosition:this.tabPosition,doLayout:this.doLayout,containerId:this.id,"class":this.baseClass+"-tabs"+(this.doLayout?"":" dijitTabNoLayout")},this.tablistNode);if(this.tabStrip){dojo.addClass(this.tablist.domNode,this.baseClass+"Strip")}if(!this.doLayout){dojo.addClass(this.domNode,"dijitTabContainerNoLayout")}if(this.nested){dojo.addClass(this.domNode,"dijitTabContainerNested");dojo.addClass(this.tablist.domNode,"dijitTabContainerTabListNested");dojo.addClass(this.tablistSpacer,"dijitTabContainerSpacerNested");dojo.addClass(this.containerNode,"dijitTabPaneWrapperNested")}},_setupChild:function(tab){dojo.addClass(tab.domNode,"dijitTabPane");this.inherited(arguments);return tab},startup:function(){if(this._started){return }this.tablist.startup();this.inherited(arguments)},layout:function(){if(!this.doLayout){return }var titleAlign=this.tabPosition.replace(/-h/,"");var children=[{domNode:this.tablist.domNode,layoutAlign:titleAlign},{domNode:this.tablistSpacer,layoutAlign:titleAlign},{domNode:this.containerNode,layoutAlign:"client"}];dijit.layout.layoutChildren(this.domNode,this._contentBox,children);this._containerContentBox=dijit.layout.marginBox2contentBox(this.containerNode,children[2]);if(this.selectedChildWidget){this._showChild(this.selectedChildWidget);if(this.doLayout&&this.selectedChildWidget.resize){this.selectedChildWidget.resize(this._containerContentBox)}}},destroy:function(){if(this.tablist){this.tablist.destroy()}this.inherited(arguments)}})}if(!dojo._hasResource["dijit.layout.SplitContainer"]){dojo._hasResource["dijit.layout.SplitContainer"]=true;dojo.provide("dijit.layout.SplitContainer");dojo.declare("dijit.layout.SplitContainer",dijit.layout._LayoutWidget,{constructor:function(){dojo.deprecated("dijit.layout.SplitContainer is deprecated","use BorderContainer with splitter instead",2)},activeSizing:false,sizerWidth:7,orientation:"horizontal",persist:true,baseClass:"dijitSplitContainer",postMixInProperties:function(){this.inherited("postMixInProperties",arguments);this.isHorizontal=(this.orientation=="horizontal")},postCreate:function(){this.inherited(arguments);this.sizers=[];if(dojo.isMozilla){this.domNode.style.overflow="-moz-scrollbars-none"}if(typeof this.sizerWidth=="object"){try{this.sizerWidth=parseInt(this.sizerWidth.toString())}catch(e){this.sizerWidth=7}}var sizer=dojo.doc.createElement("div");this.virtualSizer=sizer;sizer.style.position="relative";sizer.style.zIndex=10;sizer.className=this.isHorizontal?"dijitSplitContainerVirtualSizerH":"dijitSplitContainerVirtualSizerV";this.domNode.appendChild(sizer);dojo.setSelectable(sizer,false)},destroy:function(){delete this.virtualSizer;dojo.forEach(this._ownconnects,dojo.disconnect);this.inherited(arguments)},startup:function(){if(this._started){return }dojo.forEach(this.getChildren(),function(child,i,children){this._setupChild(child);if(i<children.length-1){this._addSizer()}},this);if(this.persist){this._restoreState()}this.inherited(arguments)},_setupChild:function(child){this.inherited(arguments);child.domNode.style.position="absolute";dojo.addClass(child.domNode,"dijitSplitPane")},_onSizerMouseDown:function(e){if(e.target.id){for(var i=0;i<this.sizers.length;i++){if(this.sizers[i].id==e.target.id){break}}if(i<this.sizers.length){this.beginSizing(e,i)}}},_addSizer:function(index){index=index===undefined?this.sizers.length:index;var sizer=dojo.doc.createElement("div");sizer.id=dijit.getUniqueId("dijit_layout_SplitterContainer_Splitter");this.sizers.splice(index,0,sizer);this.domNode.appendChild(sizer);sizer.className=this.isHorizontal?"dijitSplitContainerSizerH":"dijitSplitContainerSizerV";var thumb=dojo.doc.createElement("div");thumb.className="thumb";thumb.id=sizer.id;sizer.appendChild(thumb);this.connect(sizer,"onmousedown","_onSizerMouseDown");dojo.setSelectable(sizer,false)},removeChild:function(widget){if(this.sizers.length){var i=dojo.indexOf(this.getChildren(),widget);if(i!=-1){if(i==this.sizers.length){i--}dojo.destroy(this.sizers[i]);this.sizers.splice(i,1)}}this.inherited(arguments);if(this._started){this.layout()}},addChild:function(child,insertIndex){this.inherited(arguments);if(this._started){var children=this.getChildren();if(children.length>1){this._addSizer(insertIndex)}this.layout()}},layout:function(){this.paneWidth=this._contentBox.w;this.paneHeight=this._contentBox.h;var children=this.getChildren();if(!children.length){return }var space=this.isHorizontal?this.paneWidth:this.paneHeight;if(children.length>1){space-=this.sizerWidth*(children.length-1)}var outOf=0;dojo.forEach(children,function(child){outOf+=child.sizeShare});var pixPerUnit=space/outOf;var totalSize=0;dojo.forEach(children.slice(0,children.length-1),function(child){var size=Math.round(pixPerUnit*child.sizeShare);child.sizeActual=size;totalSize+=size});children[children.length-1].sizeActual=space-totalSize;this._checkSizes();var pos=0;var size=children[0].sizeActual;this._movePanel(children[0],pos,size);children[0].position=pos;pos+=size;if(!this.sizers){return }dojo.some(children.slice(1),function(child,i){if(!this.sizers[i]){return true}this._moveSlider(this.sizers[i],pos,this.sizerWidth);this.sizers[i].position=pos;pos+=this.sizerWidth;size=child.sizeActual;this._movePanel(child,pos,size);child.position=pos;pos+=size},this)},_movePanel:function(panel,pos,size){if(this.isHorizontal){panel.domNode.style.left=pos+"px";panel.domNode.style.top=0;var box={w:size,h:this.paneHeight};if(panel.resize){panel.resize(box)}else{dojo.marginBox(panel.domNode,box)}}else{panel.domNode.style.left=0;panel.domNode.style.top=pos+"px";var box={w:this.paneWidth,h:size};if(panel.resize){panel.resize(box)}else{dojo.marginBox(panel.domNode,box)}}},_moveSlider:function(slider,pos,size){if(this.isHorizontal){slider.style.left=pos+"px";slider.style.top=0;dojo.marginBox(slider,{w:size,h:this.paneHeight})}else{slider.style.left=0;slider.style.top=pos+"px";dojo.marginBox(slider,{w:this.paneWidth,h:size})}},_growPane:function(growth,pane){if(growth>0){if(pane.sizeActual>pane.sizeMin){if((pane.sizeActual-pane.sizeMin)>growth){pane.sizeActual=pane.sizeActual-growth;growth=0}else{growth-=pane.sizeActual-pane.sizeMin;pane.sizeActual=pane.sizeMin}}}return growth},_checkSizes:function(){var totalMinSize=0;var totalSize=0;var children=this.getChildren();dojo.forEach(children,function(child){totalSize+=child.sizeActual;totalMinSize+=child.sizeMin});if(totalMinSize<=totalSize){var growth=0;dojo.forEach(children,function(child){if(child.sizeActual<child.sizeMin){growth+=child.sizeMin-child.sizeActual;child.sizeActual=child.sizeMin}});if(growth>0){var list=this.isDraggingLeft?children.reverse():children;dojo.forEach(list,function(child){growth=this._growPane(growth,child)},this)}}else{dojo.forEach(children,function(child){child.sizeActual=Math.round(totalSize*(child.sizeMin/totalMinSize))})}},beginSizing:function(e,i){var children=this.getChildren();this.paneBefore=children[i];this.paneAfter=children[i+1];this.isSizing=true;this.sizingSplitter=this.sizers[i];if(!this.cover){this.cover=dojo.create("div",{style:{position:"absolute",zIndex:5,top:0,left:0,width:"100%",height:"100%"}},this.domNode)}else{this.cover.style.zIndex=5}this.sizingSplitter.style.zIndex=6;this.originPos=dojo.coords(children[0].domNode,true);if(this.isHorizontal){var client=e.layerX||e.offsetX||0;var screen=e.pageX;this.originPos=this.originPos.x}else{var client=e.layerY||e.offsetY||0;var screen=e.pageY;this.originPos=this.originPos.y}this.startPoint=this.lastPoint=screen;this.screenToClientOffset=screen-client;this.dragOffset=this.lastPoint-this.paneBefore.sizeActual-this.originPos-this.paneBefore.position;if(!this.activeSizing){this._showSizingLine()}this._ownconnects=[];this._ownconnects.push(dojo.connect(dojo.doc.documentElement,"onmousemove",this,"changeSizing"));this._ownconnects.push(dojo.connect(dojo.doc.documentElement,"onmouseup",this,"endSizing"));dojo.stopEvent(e)},changeSizing:function(e){if(!this.isSizing){return }this.lastPoint=this.isHorizontal?e.pageX:e.pageY;this.movePoint();if(this.activeSizing){this._updateSize()}else{this._moveSizingLine()}dojo.stopEvent(e)},endSizing:function(e){if(!this.isSizing){return }if(this.cover){this.cover.style.zIndex=-1}if(!this.activeSizing){this._hideSizingLine()}this._updateSize();this.isSizing=false;if(this.persist){this._saveState(this)}dojo.forEach(this._ownconnects,dojo.disconnect)},movePoint:function(){var p=this.lastPoint-this.screenToClientOffset;var a=p-this.dragOffset;a=this.legaliseSplitPoint(a);p=a+this.dragOffset;this.lastPoint=p+this.screenToClientOffset},legaliseSplitPoint:function(a){a+=this.sizingSplitter.position;this.isDraggingLeft=!!(a>0);if(!this.activeSizing){var min=this.paneBefore.position+this.paneBefore.sizeMin;if(a<min){a=min}var max=this.paneAfter.position+(this.paneAfter.sizeActual-(this.sizerWidth+this.paneAfter.sizeMin));if(a>max){a=max}}a-=this.sizingSplitter.position;this._checkSizes();return a},_updateSize:function(){var pos=this.lastPoint-this.dragOffset-this.originPos;var start_region=this.paneBefore.position;var end_region=this.paneAfter.position+this.paneAfter.sizeActual;this.paneBefore.sizeActual=pos-start_region;this.paneAfter.position=pos+this.sizerWidth;this.paneAfter.sizeActual=end_region-this.paneAfter.position;dojo.forEach(this.getChildren(),function(child){child.sizeShare=child.sizeActual});if(this._started){this.layout()}},_showSizingLine:function(){this._moveSizingLine();dojo.marginBox(this.virtualSizer,this.isHorizontal?{w:this.sizerWidth,h:this.paneHeight}:{w:this.paneWidth,h:this.sizerWidth});this.virtualSizer.style.display="block"},_hideSizingLine:function(){this.virtualSizer.style.display="none"},_moveSizingLine:function(){var pos=(this.lastPoint-this.startPoint)+this.sizingSplitter.position;dojo.style(this.virtualSizer,(this.isHorizontal?"left":"top"),pos+"px")},_getCookieName:function(i){return this.id+"_"+i},_restoreState:function(){dojo.forEach(this.getChildren(),function(child,i){var cookieName=this._getCookieName(i);var cookieValue=dojo.cookie(cookieName);if(cookieValue){var pos=parseInt(cookieValue);if(typeof pos=="number"){child.sizeShare=pos}}},this)},_saveState:function(){if(!this.persist){return }dojo.forEach(this.getChildren(),function(child,i){dojo.cookie(this._getCookieName(i),child.sizeShare,{expires:365})},this)}});dojo.extend(dijit._Widget,{sizeMin:10,sizeShare:10})}if(!dojo._hasResource["dijit._editor.selection"]){dojo._hasResource["dijit._editor.selection"]=true;dojo.provide("dijit._editor.selection");dojo.mixin(dijit._editor.selection,{getType:function(){if(dojo.doc.selection){return dojo.doc.selection.type.toLowerCase()}else{var stype="text";var oSel;try{oSel=dojo.global.getSelection()}catch(e){}if(oSel&&oSel.rangeCount==1){var oRange=oSel.getRangeAt(0);if((oRange.startContainer==oRange.endContainer)&&((oRange.endOffset-oRange.startOffset)==1)&&(oRange.startContainer.nodeType!=3)){stype="control"}}return stype}},getSelectedText:function(){if(dojo.doc.selection){if(dijit._editor.selection.getType()=="control"){return null}return dojo.doc.selection.createRange().text}else{var selection=dojo.global.getSelection();if(selection){return selection.toString()}}return""},getSelectedHtml:function(){if(dojo.doc.selection){if(dijit._editor.selection.getType()=="control"){return null}return dojo.doc.selection.createRange().htmlText}else{var selection=dojo.global.getSelection();if(selection&&selection.rangeCount){var frag=selection.getRangeAt(0).cloneContents();var div=dojo.doc.createElement("div");div.appendChild(frag);return div.innerHTML}return null}},getSelectedElement:function(){if(dijit._editor.selection.getType()=="control"){if(dojo.doc.selection){var range=dojo.doc.selection.createRange();if(range&&range.item){return dojo.doc.selection.createRange().item(0)}}else{var selection=dojo.global.getSelection();return selection.anchorNode.childNodes[selection.anchorOffset]}}return null},getParentElement:function(){if(dijit._editor.selection.getType()=="control"){var p=this.getSelectedElement();if(p){return p.parentNode}}else{if(dojo.doc.selection){var r=dojo.doc.selection.createRange();r.collapse(true);return r.parentElement()}else{var selection=dojo.global.getSelection();if(selection){var node=selection.anchorNode;while(node&&(node.nodeType!=1)){node=node.parentNode}return node}}}return null},hasAncestorElement:function(tagName){return this.getAncestorElement.apply(this,arguments)!=null},getAncestorElement:function(tagName){var node=this.getSelectedElement()||this.getParentElement();return this.getParentOfType(node,arguments)},isTag:function(node,tags){if(node&&node.tagName){var _nlc=node.tagName.toLowerCase();for(var i=0;i<tags.length;i++){var _tlc=String(tags[i]).toLowerCase();if(_nlc==_tlc){return _tlc}}}return""},getParentOfType:function(node,tags){while(node){if(this.isTag(node,tags).length){return node}node=node.parentNode}return null},collapse:function(beginning){if(window["getSelection"]){var selection=dojo.global.getSelection();if(selection.removeAllRanges){if(beginning){selection.collapseToStart()}else{selection.collapseToEnd()}}else{selection.collapse(beginning)}}else{if(dojo.doc.selection){var range=dojo.doc.selection.createRange();range.collapse(beginning);range.select()}}},remove:function(){var _s=dojo.doc.selection;if(_s){if(_s.type.toLowerCase()!="none"){_s.clear()}return _s}else{_s=dojo.global.getSelection();_s.deleteFromDocument();return _s}},selectElementChildren:function(element,nochangefocus){var _window=dojo.global;var _document=dojo.doc;element=dojo.byId(element);if(_document.selection&&dojo.body().createTextRange){var range=element.ownerDocument.body.createTextRange();range.moveToElementText(element);if(!nochangefocus){try{range.select()}catch(e){}}}else{if(_window.getSelection){var selection=_window.getSelection();if(selection.setBaseAndExtent){selection.setBaseAndExtent(element,0,element,element.innerText.length-1)}else{if(selection.selectAllChildren){selection.selectAllChildren(element)}}}}},selectElement:function(element,nochangefocus){var range,_document=dojo.doc;element=dojo.byId(element);if(_document.selection&&dojo.body().createTextRange){try{range=dojo.body().createControlRange();range.addElement(element);if(!nochangefocus){range.select()}}catch(e){this.selectElementChildren(element,nochangefocus)}}else{if(dojo.global.getSelection){var selection=dojo.global.getSelection();if(selection.removeAllRanges){range=_document.createRange();range.selectNode(element);selection.removeAllRanges();selection.addRange(range)}}}}})}if(!dojo._hasResource["dijit._editor.range"]){dojo._hasResource["dijit._editor.range"]=true;dojo.provide("dijit._editor.range");dijit.range={};dijit.range.getIndex=function(node,parent){var ret=[],retR=[];var stop=parent;var onode=node;var pnode,n;while(node!=stop){var i=0;pnode=node.parentNode;while((n=pnode.childNodes[i++])){if(n===node){--i;break}}if(i>=pnode.childNodes.length){dojo.debug("Error finding index of a node in dijit.range.getIndex")}ret.unshift(i);retR.unshift(i-pnode.childNodes.length);node=pnode}if(ret.length>0&&onode.nodeType==3){n=onode.previousSibling;while(n&&n.nodeType==3){ret[ret.length-1]--;n=n.previousSibling}n=onode.nextSibling;while(n&&n.nodeType==3){retR[retR.length-1]++;n=n.nextSibling}}return{o:ret,r:retR}};dijit.range.getNode=function(index,parent){if(!dojo.isArray(index)||index.length==0){return parent}var node=parent;dojo.every(index,function(i){if(i>=0&&i<node.childNodes.length){node=node.childNodes[i]}else{node=null;console.debug("Error: can not find node with index",index,"under parent node",parent);return false}return true});return node};dijit.range.getCommonAncestor=function(n1,n2){var getAncestors=function(n){var as=[];while(n){as.unshift(n);if(n.nodeName!="BODY"){n=n.parentNode}else{break}}return as};var n1as=getAncestors(n1);var n2as=getAncestors(n2);var m=Math.min(n1as.length,n2as.length);var com=n1as[0];for(var i=1;i<m;i++){if(n1as[i]===n2as[i]){com=n1as[i]}else{break}}return com};dijit.range.getAncestor=function(node,regex,root){root=root||node.ownerDocument.body;while(node&&node!==root){var name=node.nodeName.toUpperCase();if(regex.test(name)){return node}node=node.parentNode}return null};dijit.range.BlockTagNames=/^(?:P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|DT|DE)$/;dijit.range.getBlockAncestor=function(node,regex,root){root=root||node.ownerDocument.body;regex=regex||dijit.range.BlockTagNames;var block=null,blockContainer;while(node&&node!==root){var name=node.nodeName.toUpperCase();if(!block&&regex.test(name)){block=node}if(!blockContainer&&(/^(?:BODY|TD|TH|CAPTION)$/).test(name)){blockContainer=node}node=node.parentNode}return{blockNode:block,blockContainer:blockContainer||node.ownerDocument.body}};dijit.range.atBeginningOfContainer=function(container,node,offset){var atBeginning=false;var offsetAtBeginning=(offset==0);if(!offsetAtBeginning&&node.nodeType==3){if(dojo.trim(node.nodeValue.substr(0,offset))==0){offsetAtBeginning=true}}if(offsetAtBeginning){var cnode=node;atBeginning=true;while(cnode&&cnode!==container){if(cnode.previousSibling){atBeginning=false;break}cnode=cnode.parentNode}}return atBeginning};dijit.range.atEndOfContainer=function(container,node,offset){var atEnd=false;var offsetAtEnd=(offset==(node.length||node.childNodes.length));if(!offsetAtEnd&&node.nodeType==3){if(dojo.trim(node.nodeValue.substr(offset))==0){offsetAtEnd=true}}if(offsetAtEnd){var cnode=node;atEnd=true;while(cnode&&cnode!==container){if(cnode.nextSibling){atEnd=false;break}cnode=cnode.parentNode}}return atEnd};dijit.range.adjacentNoneTextNode=function(startnode,next){var node=startnode;var len=(0-startnode.length)||0;var prop=next?"nextSibling":"previousSibling";while(node){if(node.nodeType!=3){break}len+=node.length;node=node[prop]}return[node,len]};dijit.range._w3c=Boolean(window["getSelection"]);dijit.range.create=function(){if(dijit.range._w3c){return dojo.doc.createRange()}else{return new dijit.range.W3CRange}};dijit.range.getSelection=function(win,ignoreUpdate){if(dijit.range._w3c){return win.getSelection()}else{var s=new dijit.range.ie.selection(win);if(!ignoreUpdate){s._getCurrentSelection()}return s}};if(!dijit.range._w3c){dijit.range.ie={cachedSelection:{},selection:function(win){this._ranges=[];this.addRange=function(r,internal){this._ranges.push(r);if(!internal){r._select()}this.rangeCount=this._ranges.length};this.removeAllRanges=function(){this._ranges=[];this.rangeCount=0};var _initCurrentRange=function(){var r=win.document.selection.createRange();var type=win.document.selection.type.toUpperCase();if(type=="CONTROL"){return new dijit.range.W3CRange(dijit.range.ie.decomposeControlRange(r))}else{return new dijit.range.W3CRange(dijit.range.ie.decomposeTextRange(r))}};this.getRangeAt=function(i){return this._ranges[i]};this._getCurrentSelection=function(){this.removeAllRanges();var r=_initCurrentRange();if(r){this.addRange(r,true)}}},decomposeControlRange:function(range){var firstnode=range.item(0),lastnode=range.item(range.length-1);var startContainer=firstnode.parentNode,endContainer=lastnode.parentNode;var startOffset=dijit.range.getIndex(firstnode,startContainer).o;var endOffset=dijit.range.getIndex(lastnode,endContainer).o+1;return[startContainer,startOffset,endContainer,endOffset]},getEndPoint:function(range,end){var atmrange=range.duplicate();atmrange.collapse(!end);var cmpstr="EndTo"+(end?"End":"Start");var parentNode=atmrange.parentElement();var startnode,startOffset,lastNode;if(parentNode.childNodes.length>0){dojo.every(parentNode.childNodes,function(node,i){var calOffset;if(node.nodeType!=3){atmrange.moveToElementText(node);if(atmrange.compareEndPoints(cmpstr,range)>0){startnode=node.previousSibling;if(lastNode&&lastNode.nodeType==3){startnode=lastNode;calOffset=true}else{startnode=parentNode;startOffset=i;return false}}else{if(i==parentNode.childNodes.length-1){startnode=parentNode;startOffset=parentNode.childNodes.length;return false}}}else{if(i==parentNode.childNodes.length-1){startnode=node;calOffset=true}}if(calOffset&&startnode){var prevnode=dijit.range.adjacentNoneTextNode(startnode)[0];if(prevnode){startnode=prevnode.nextSibling}else{startnode=parentNode.firstChild}var prevnodeobj=dijit.range.adjacentNoneTextNode(startnode);prevnode=prevnodeobj[0];var lenoffset=prevnodeobj[1];if(prevnode){atmrange.moveToElementText(prevnode);atmrange.collapse(false)}else{atmrange.moveToElementText(parentNode)}atmrange.setEndPoint(cmpstr,range);startOffset=atmrange.text.length-lenoffset;return false}lastNode=node;return true})}else{startnode=parentNode;startOffset=0}if(!end&&startnode.nodeType!=3&&startOffset==startnode.childNodes.length){if(startnode.nextSibling&&startnode.nextSibling.nodeType==3){startnode=startnode.nextSibling;startOffset=0}}return[startnode,startOffset]},setEndPoint:function(range,container,offset){var atmrange=range.duplicate(),node,len;if(container.nodeType!=3){if(offset>0){node=container.childNodes[offset-1];if(node.nodeType==3){container=node;offset=node.length}else{if(node.nextSibling&&node.nextSibling.nodeType==3){container=node.nextSibling;offset=0}else{atmrange.moveToElementText(node.nextSibling?node:container);var tempnode=node.parentNode.insertBefore(document.createTextNode(" "),node.nextSibling);atmrange.collapse(false);tempnode.parentNode.removeChild(tempnode)}}}else{atmrange.moveToElementText(container);atmrange.collapse(true)}}if(container.nodeType==3){var prevnodeobj=dijit.range.adjacentNoneTextNode(container);var prevnode=prevnodeobj[0];len=prevnodeobj[1];if(prevnode){atmrange.moveToElementText(prevnode);atmrange.collapse(false);if(prevnode.contentEditable!="inherit"){len++}}else{atmrange.moveToElementText(container.parentNode);atmrange.collapse(true)}offset+=len;if(offset>0){if(atmrange.move("character",offset)!=offset){console.error("Error when moving!")}}}return atmrange},decomposeTextRange:function(range){var tmpary=dijit.range.ie.getEndPoint(range);var startContainter=tmpary[0],startOffset=tmpary[1];var endContainter=tmpary[0],endOffset=tmpary[1];if(range.htmlText.length){if(range.htmlText==range.text){endOffset=startOffset+range.text.length}else{tmpary=dijit.range.ie.getEndPoint(range,true);endContainter=tmpary[0],endOffset=tmpary[1]}}return[startContainter,startOffset,endContainter,endOffset]},setRange:function(range,startContainter,startOffset,endContainter,endOffset,collapsed){var start=dijit.range.ie.setEndPoint(range,startContainter,startOffset);range.setEndPoint("StartToStart",start);if(!collapsed){var end=dijit.range.ie.setEndPoint(range,endContainter,endOffset)}range.setEndPoint("EndToEnd",end||start);return range}};dojo.declare("dijit.range.W3CRange",null,{constructor:function(){if(arguments.length>0){this.setStart(arguments[0][0],arguments[0][1]);this.setEnd(arguments[0][2],arguments[0][3])}else{this.commonAncestorContainer=null;this.startContainer=null;this.startOffset=0;this.endContainer=null;this.endOffset=0;this.collapsed=true}},_updateInternal:function(){if(this.startContainer!==this.endContainer){this.commonAncestorContainer=dijit.range.getCommonAncestor(this.startContainer,this.endContainer)}else{this.commonAncestorContainer=this.startContainer}this.collapsed=(this.startContainer===this.endContainer)&&(this.startOffset==this.endOffset)},setStart:function(node,offset){offset=parseInt(offset);if(this.startContainer===node&&this.startOffset==offset){return }delete this._cachedBookmark;this.startContainer=node;this.startOffset=offset;if(!this.endContainer){this.setEnd(node,offset)}else{this._updateInternal()}},setEnd:function(node,offset){offset=parseInt(offset);if(this.endContainer===node&&this.endOffset==offset){return }delete this._cachedBookmark;this.endContainer=node;this.endOffset=offset;if(!this.startContainer){this.setStart(node,offset)}else{this._updateInternal()}},setStartAfter:function(node,offset){this._setPoint("setStart",node,offset,1)},setStartBefore:function(node,offset){this._setPoint("setStart",node,offset,0)},setEndAfter:function(node,offset){this._setPoint("setEnd",node,offset,1)},setEndBefore:function(node,offset){this._setPoint("setEnd",node,offset,0)},_setPoint:function(what,node,offset,ext){var index=dijit.range.getIndex(node,node.parentNode).o;this[what](node.parentNode,index.pop()+ext)},_getIERange:function(){var r=(this._body||this.endContainer.ownerDocument.body).createTextRange();dijit.range.ie.setRange(r,this.startContainer,this.startOffset,this.endContainer,this.endOffset,this.collapsed);return r},getBookmark:function(body){this._getIERange();return this._cachedBookmark},_select:function(){var r=this._getIERange();r.select()},deleteContents:function(){var r=this._getIERange();r.pasteHTML("");this.endContainer=this.startContainer;this.endOffset=this.startOffset;this.collapsed=true},cloneRange:function(){var r=new dijit.range.W3CRange([this.startContainer,this.startOffset,this.endContainer,this.endOffset]);r._body=this._body;return r},detach:function(){this._body=null;this.commonAncestorContainer=null;this.startContainer=null;this.startOffset=0;this.endContainer=null;this.endOffset=0;this.collapsed=true}})}}if(!dojo._hasResource["dijit._editor.html"]){dojo._hasResource["dijit._editor.html"]=true;dojo.provide("dijit._editor.html");dijit._editor.escapeXml=function(str,noSingleQuotes){str=str.replace(/&/gm,"&amp;").replace(/</gm,"&lt;").replace(/>/gm,"&gt;").replace(/"/gm,"&quot;");if(!noSingleQuotes){str=str.replace(/'/gm,"&#39;")}return str};dijit._editor.getNodeHtml=function(node){var output;switch(node.nodeType){case 1:output="<"+node.nodeName.toLowerCase();var attrarray=[];if(dojo.isIE&&node.outerHTML){var s=node.outerHTML;s=s.substr(0,s.indexOf(">")).replace(/(['"])[^"']*\1/g,"");var reg=/([^\s=]+)=/g;var m,key;while((m=reg.exec(s))){key=m[1];if(key.substr(0,3)!="_dj"){if(key=="src"||key=="href"){if(node.getAttribute("_djrealurl")){attrarray.push([key,node.getAttribute("_djrealurl")]);continue}}var val;switch(key){case"style":val=node.style.cssText.toLowerCase();break;case"class":val=node.className;break;default:val=node.getAttribute(key)}attrarray.push([key,val.toString()])}}}else{var attr,i=0;while((attr=node.attributes[i++])){var n=attr.name;if(n.substr(0,3)!="_dj"){var v=attr.value;if(n=="src"||n=="href"){if(node.getAttribute("_djrealurl")){v=node.getAttribute("_djrealurl")}}attrarray.push([n,v])}}}attrarray.sort(function(a,b){return a[0]<b[0]?-1:(a[0]==b[0]?0:1)});var j=0;while((attr=attrarray[j++])){output+=" "+attr[0]+'="'+(dojo.isString(attr[1])?dijit._editor.escapeXml(attr[1],true):attr[1])+'"'}if(node.childNodes.length){output+=">"+dijit._editor.getChildrenHtml(node)+"</"+node.nodeName.toLowerCase()+">"}else{output+=" />"}break;case 3:output=dijit._editor.escapeXml(node.nodeValue,true);break;case 8:output="<!--"+dijit._editor.escapeXml(node.nodeValue,true)+"-->";break;default:output="<!-- Element not recognized - Type: "+node.nodeType+" Name: "+node.nodeName+"-->"}return output};dijit._editor.getChildrenHtml=function(dom){var out="";if(!dom){return out}var nodes=dom["childNodes"]||dom;var checkParent=!dojo.isIE||nodes!==dom;var node,i=0;while((node=nodes[i++])){if(!checkParent||node.parentNode==dom){out+=dijit._editor.getNodeHtml(node)}}return out}}if(!dojo._hasResource["dijit._editor.RichText"]){dojo._hasResource["dijit._editor.RichText"]=true;dojo.provide("dijit._editor.RichText");if(!dojo.config["useXDomain"]||dojo.config["allowXdRichTextSave"]){if(dojo._postLoad){(function(){var savetextarea=dojo.doc.createElement("textarea");savetextarea.id=dijit._scopeName+"._editor.RichText.savedContent";dojo.style(savetextarea,{display:"none",position:"absolute",top:"-100px",height:"3px",width:"3px"});dojo.body().appendChild(savetextarea)})()}else{try{dojo.doc.write('<textarea id="'+dijit._scopeName+'._editor.RichText.savedContent" style="display:none;position:absolute;top:-100px;left:-100px;height:3px;width:3px;overflow:hidden;"></textarea>')}catch(e){}}}dojo.declare("dijit._editor.RichText",dijit._Widget,{constructor:function(params){this.contentPreFilters=[];this.contentPostFilters=[];this.contentDomPreFilters=[];this.contentDomPostFilters=[];this.editingAreaStyleSheets=[];this._keyHandlers={};this.contentPreFilters.push(dojo.hitch(this,"_preFixUrlAttributes"));if(dojo.isMoz){this.contentPreFilters.push(this._fixContentForMoz);this.contentPostFilters.push(this._removeMozBogus)}if(dojo.isSafari){this.contentPostFilters.push(this._removeSafariBogus)}this.onLoadDeferred=new dojo.Deferred()},inheritWidth:false,focusOnLoad:false,name:"",styleSheets:"",_content:"",height:"300px",minHeight:"1em",isClosed:true,isLoaded:false,_SEPARATOR:"@@**%%__RICHTEXTBOUNDRY__%%**@@",onLoadDeferred:null,isTabIndent:false,disableSpellCheck:false,postCreate:function(){if("textarea"==this.domNode.tagName.toLowerCase()){console.warn("RichText should not be used with the TEXTAREA tag.  See dijit._editor.RichText docs.")}dojo.publish(dijit._scopeName+"._editor.RichText::init",[this]);this.open();this.setupDefaultShortcuts()},setupDefaultShortcuts:function(){var exec=dojo.hitch(this,function(cmd,arg){return function(){return !this.execCommand(cmd,arg)}});var ctrlKeyHandlers={b:exec("bold"),i:exec("italic"),u:exec("underline"),a:exec("selectall"),s:function(){this.save(true)},m:function(){this.isTabIndent=!this.isTabIndent},"1":exec("formatblock","h1"),"2":exec("formatblock","h2"),"3":exec("formatblock","h3"),"4":exec("formatblock","h4"),"\\":exec("insertunorderedlist")};if(!dojo.isIE){ctrlKeyHandlers.Z=exec("redo")}for(var key in ctrlKeyHandlers){this.addKeyHandler(key,true,false,ctrlKeyHandlers[key])}},events:["onKeyPress","onKeyDown","onKeyUp","onClick"],captureEvents:[],_editorCommandsLocalized:false,_localizeEditorCommands:function(){if(this._editorCommandsLocalized){return }this._editorCommandsLocalized=true;var formats=["div","p","pre","h1","h2","h3","h4","h5","h6","ol","ul","address"];var localhtml="",format,i=0;while((format=formats[i++])){if(format.charAt(1)!="l"){localhtml+="<"+format+"><span>content</span></"+format+"><br/>"}else{localhtml+="<"+format+"><li>content</li></"+format+"><br/>"}}var div=dojo.doc.createElement("div");dojo.style(div,{position:"absolute",top:"-2000px"});dojo.doc.body.appendChild(div);div.innerHTML=localhtml;var node=div.firstChild;while(node){dijit._editor.selection.selectElement(node.firstChild);dojo.withGlobal(this.window,"selectElement",dijit._editor.selection,[node.firstChild]);var nativename=node.tagName.toLowerCase();this._local2NativeFormatNames[nativename]=document.queryCommandValue("formatblock");this._native2LocalFormatNames[this._local2NativeFormatNames[nativename]]=nativename;node=node.nextSibling.nextSibling}dojo.body().removeChild(div)},open:function(element){if(!this.onLoadDeferred||this.onLoadDeferred.fired>=0){this.onLoadDeferred=new dojo.Deferred()}if(!this.isClosed){this.close()}dojo.publish(dijit._scopeName+"._editor.RichText::open",[this]);this._content="";if(arguments.length==1&&element.nodeName){this.domNode=element}var dn=this.domNode;var html;if(dn.nodeName&&dn.nodeName.toLowerCase()=="textarea"){var ta=(this.textarea=dn);this.name=ta.name;html=this._preFilterContent(ta.value);dn=this.domNode=dojo.doc.createElement("div");dn.setAttribute("widgetId",this.id);ta.removeAttribute("widgetId");dn.cssText=ta.cssText;dn.className+=" "+ta.className;dojo.place(dn,ta,"before");var tmpFunc=dojo.hitch(this,function(){dojo.style(ta,{display:"block",position:"absolute",top:"-1000px"});if(dojo.isIE){var s=ta.style;this.__overflow=s.overflow;s.overflow="hidden"}});if(dojo.isIE){setTimeout(tmpFunc,10)}else{tmpFunc()}if(ta.form){dojo.connect(ta.form,"onsubmit",this,function(){ta.value=this.getValue()})}}else{html=this._preFilterContent(dijit._editor.getChildrenHtml(dn));dn.innerHTML=""}var content=dojo.contentBox(dn);this._oldHeight=content.h;this._oldWidth=content.w;this.savedContent=html;if(dn.nodeName&&dn.nodeName=="LI"){dn.innerHTML=" <br>"}this.editingArea=dn.ownerDocument.createElement("div");dn.appendChild(this.editingArea);if(this.name!=""&&(!dojo.config["useXDomain"]||dojo.config["allowXdRichTextSave"])){var saveTextarea=dojo.byId(dijit._scopeName+"._editor.RichText.savedContent");if(saveTextarea.value!=""){var datas=saveTextarea.value.split(this._SEPARATOR),i=0,dat;while((dat=datas[i++])){var data=dat.split(":");if(data[0]==this.name){html=data[1];datas.splice(i,1);break}}}this.connect(window,"onbeforeunload","_saveContent")}this.isClosed=false;if(dojo.isIE||dojo.isWebKit||dojo.isOpera){var ifr=(this.editorObject=this.iframe=dojo.doc.createElement("iframe"));ifr.id=this.id+"_iframe";this._iframeSrc=this._getIframeDocTxt(html);ifr.style.border="none";ifr.style.width="100%";if(this._layoutMode){ifr.style.height="100%"}else{if(dojo.isIE>=7){if(this.height){ifr.style.height=this.height}if(this.minHeight){ifr.style.minHeight=this.minHeight}}else{ifr.style.height=this.height?this.height:this.minHeight}}ifr.frameBorder=0;ifr._loadFunc=dojo.hitch(this,function(win){this.window=win;this.document=this.window.document;if(dojo.isIE){this._localizeEditorCommands()}this.onLoad();this.savedContent=this.getValue(true)});var s='javascript:parent.dijit.byId("'+this.id+'")._iframeSrc';ifr.setAttribute("src",s);this.editingArea.appendChild(ifr);if(dojo.isWebKit){setTimeout(function(){ifr.setAttribute("src",s)},0)}}else{this._drawIframe(html);this.savedContent=this.getValue(true)}if(dn.nodeName=="LI"){dn.lastChild.style.marginTop="-1.2em"}if(this.domNode.nodeName=="LI"){this.domNode.lastChild.style.marginTop="-1.2em"}dojo.addClass(this.domNode,"RichTextEditable")},_local2NativeFormatNames:{},_native2LocalFormatNames:{},_localizedIframeTitles:null,_getIframeDocTxt:function(html){var _cs=dojo.getComputedStyle(this.domNode);if(dojo.isIE||(!this.height&&!dojo.isMoz)){html="<div>"+html+"</div>"}var font=[_cs.fontWeight,_cs.fontSize,_cs.fontFamily].join(" ");var lineHeight=_cs.lineHeight;if(lineHeight.indexOf("px")>=0){lineHeight=parseFloat(lineHeight)/parseFloat(_cs.fontSize)}else{if(lineHeight.indexOf("em")>=0){lineHeight=parseFloat(lineHeight)}else{lineHeight="1.0"}}var userStyle="";this.style.replace(/(^|;)(line-|font-?)[^;]+/g,function(match){userStyle+=match.replace(/^;/g,"")+";"});return[this.isLeftToRight()?"<html><head>":"<html dir='rtl'><head>",(dojo.isMoz?"<title>"+this._localizedIframeTitles.iframeEditTitle+"</title>":""),"<style>","body,html {","\tbackground:transparent;","\tpadding: 1em 0 0 0;","\tmargin: -1em 0 0 0;","}","body{","\ttop:0px; left:0px; right:0px;","\tfont:",font,";",((this.height||dojo.isOpera)?"":"position: fixed;"),"\tmin-height:",this.minHeight,";","\tline-height:",lineHeight,"}","p{ margin: 1em 0 !important; }",(this.height?"":"body,html{overflow-y:hidden;/*for IE*/} body > div {overflow-x:auto;/*FF:horizontal scrollbar*/ overflow-y:hidden;/*safari*/ min-height:"+this.minHeight+";/*safari*/}"),"li > ul:-moz-first-node, li > ol:-moz-first-node{ padding-top: 1.2em; } ","li{ min-height:1.2em; }","</style>",this._applyEditingAreaStyleSheets(),"</head><body onload='frameElement._loadFunc(window,document)' style='"+userStyle+"'>"+html+"</body></html>"].join("")},_drawIframe:function(html){if(!this.iframe){var ifr=(this.iframe=dojo.doc.createElement("iframe"));ifr.id=this.id+"_iframe";var ifrs=ifr.style;ifrs.border="none";ifrs.lineHeight="0";ifrs.verticalAlign="bottom";this.editorObject=this.iframe;this._localizedIframeTitles=dojo.i18n.getLocalization("dijit.form","Textarea");var label=dojo.query('label[for="'+this.id+'"]');if(label.length){this._localizedIframeTitles.iframeEditTitle=label[0].innerHTML+" "+this._localizedIframeTitles.iframeEditTitle}ifr._loadFunc=function(win){}}this.iframe.style.width=this.inheritWidth?this._oldWidth:"100%";if(this._layoutMode){this.iframe.style.height="100%"}else{if(this.height){this.iframe.style.height=this.height}else{this.iframe.height=this._oldHeight}}var tmpContent;if(this.textarea){tmpContent=this.srcNodeRef}else{tmpContent=dojo.doc.createElement("div");tmpContent.style.display="none";tmpContent.innerHTML=html;this.editingArea.appendChild(tmpContent)}this.editingArea.appendChild(this.iframe);var ifrFunc=dojo.hitch(this,function(){if(!this.editNode){if(!this.document){try{if(this.iframe.contentWindow){this.window=this.iframe.contentWindow;this.document=this.iframe.contentWindow.document}else{if(this.iframe.contentDocument){this.window=this.iframe.contentDocument.window;this.document=this.iframe.contentDocument}}}catch(e){}if(!this.document){setTimeout(ifrFunc,50);return }var contentDoc=this.document;contentDoc.open();if(dojo.isAIR){contentDoc.body.innerHTML=html}else{contentDoc.write(this._getIframeDocTxt(html))}contentDoc.close();dojo.destroy(tmpContent)}if(!this.document.body){setTimeout(ifrFunc,50);return }this.onLoad()}else{dojo.destroy(tmpContent);this.editNode.innerHTML=html;this.onDisplayChanged()}this._preDomFilterContent(this.editNode)});ifrFunc()},_applyEditingAreaStyleSheets:function(){var files=[];if(this.styleSheets){files=this.styleSheets.split(";");this.styleSheets=""}files=files.concat(this.editingAreaStyleSheets);this.editingAreaStyleSheets=[];var text="",i=0,url;while((url=files[i++])){var abstring=(new dojo._Url(dojo.global.location,url)).toString();this.editingAreaStyleSheets.push(abstring);text+='<link rel="stylesheet" type="text/css" href="'+abstring+'"/>'}return text},addStyleSheet:function(uri){var url=uri.toString();if(url.charAt(0)=="."||(url.charAt(0)!="/"&&!uri.host)){url=(new dojo._Url(dojo.global.location,url)).toString()}if(dojo.indexOf(this.editingAreaStyleSheets,url)>-1){return }this.editingAreaStyleSheets.push(url);if(this.document.createStyleSheet){this.document.createStyleSheet(url)}else{var head=this.document.getElementsByTagName("head")[0];var stylesheet=this.document.createElement("link");stylesheet.rel="stylesheet";stylesheet.type="text/css";stylesheet.href=url;head.appendChild(stylesheet)}},removeStyleSheet:function(uri){var url=uri.toString();if(url.charAt(0)=="."||(url.charAt(0)!="/"&&!uri.host)){url=(new dojo._Url(dojo.global.location,url)).toString()}var index=dojo.indexOf(this.editingAreaStyleSheets,url);if(index==-1){return }delete this.editingAreaStyleSheets[index];dojo.withGlobal(this.window,"query",dojo,['link:[href="'+url+'"]']).orphan()},disabled:false,_mozSettingProps:["styleWithCSS","insertBrOnReturn"],_setDisabledAttr:function(value){this.disabled=value;if(!this.isLoaded){return }value=!!value;if(dojo.isIE||dojo.isWebKit||dojo.isOpera){var preventIEfocus=dojo.isIE&&(this.isLoaded||!this.focusOnLoad);if(preventIEfocus){this.editNode.unselectable="on"}this.editNode.contentEditable=!value;if(preventIEfocus){var _this=this;setTimeout(function(){_this.editNode.unselectable="off"},0)}}else{if(value){this._mozSettings=[false,this.blockNodeForEnter==="BR"]}try{this.document.designMode=(value?"off":"on")}catch(e){return }if(!value&&this._mozSettingProps){var ps=this._mozSettingProps;for(var n in ps){if(ps.hasOwnProperty(n)){try{this.document.execCommand(n,false,ps[n])}catch(e){}}}}}this._disabledOK=true},_isResized:function(){return false},onLoad:function(e){if(!this.window.__registeredWindow){this.window.__registeredWindow=true;dijit.registerIframe(this.iframe)}if(!dojo.isIE&&(this.height||dojo.isMoz)){this.editNode=this.document.body}else{this.editNode=this.document.body.firstChild;var _this=this;if(dojo.isIE){var tabStop=(this.tabStop=dojo.doc.createElement("<div tabIndex=-1>"));this.editingArea.appendChild(tabStop);this.iframe.onfocus=function(){_this.editNode.setActive()}}}this.focusNode=this.editNode;this._preDomFilterContent(this.editNode);var events=this.events.concat(this.captureEvents);var ap=this.iframe?this.document:this.editNode;dojo.forEach(events,function(item){this.connect(ap,item.toLowerCase(),item)},this);if(dojo.isIE){this.connect(this.document,"onmousedown","_onIEMouseDown");this.editNode.style.zoom=1}this.isLoaded=true;this.attr("disabled",this.disabled);if(this.onLoadDeferred){this.onLoadDeferred.callback(true)}this.onDisplayChanged(e);if(this.focusOnLoad){dojo.addOnLoad(dojo.hitch(this,function(){setTimeout(dojo.hitch(this,"focus"),this.updateInterval)}))}},onKeyDown:function(e){if(e.keyCode===dojo.keys.TAB&&this.isTabIndent){dojo.stopEvent(e);if(this.queryCommandEnabled((e.shiftKey?"outdent":"indent"))){this.execCommand((e.shiftKey?"outdent":"indent"))}}if(dojo.isIE){if(e.keyCode==dojo.keys.TAB&&!this.isTabIndent){if(e.shiftKey&&!e.ctrlKey&&!e.altKey){this.iframe.focus()}else{if(!e.shiftKey&&!e.ctrlKey&&!e.altKey){this.tabStop.focus()}}}else{if(e.keyCode===dojo.keys.BACKSPACE&&this.document.selection.type==="Control"){dojo.stopEvent(e);this.execCommand("delete")}else{if((65<=e.keyCode&&e.keyCode<=90)||(e.keyCode>=37&&e.keyCode<=40)){e.charCode=e.keyCode;this.onKeyPress(e)}}}}else{if(dojo.isMoz&&!this.isTabIndent){if(e.keyCode==dojo.keys.TAB&&!e.shiftKey&&!e.ctrlKey&&!e.altKey&&this.iframe){var titleObj=dojo.isFF<3?this.iframe.contentDocument:this.iframe;titleObj.title=this._localizedIframeTitles.iframeFocusTitle;this.iframe.focus();dojo.stopEvent(e)}else{if(e.keyCode==dojo.keys.TAB&&e.shiftKey){if(this.toolbar){this.toolbar.focus()}dojo.stopEvent(e)}}}}return true},onKeyUp:function(e){return },setDisabled:function(disabled){dojo.deprecated("dijit.Editor::setDisabled is deprecated",'use dijit.Editor::attr("disabled",boolean) instead',2);this.attr("disabled",disabled)},_setValueAttr:function(value){this.setValue(value)},_getDisableSpellCheckAttr:function(){return !dojo.attr(this.document.body,"spellcheck")},_setDisableSpellCheckAttr:function(disabled){if(this.document){dojo.attr(this.document.body,"spellcheck",!disabled)}else{this.onLoadDeferred.addCallback(dojo.hitch(this,function(){dojo.attr(this.document.body,"spellcheck",!disabled)}))}},onKeyPress:function(e){var c=(e.keyChar&&e.keyChar.toLowerCase())||e.keyCode;var handlers=this._keyHandlers[c];var args=arguments;if(handlers&&!e.altKey){dojo.forEach(handlers,function(h){if((!!h.shift==!!e.shiftKey)&&(!!h.ctrl==!!e.ctrlKey)){if(!h.handler.apply(this,args)){e.preventDefault()}}},this)}if(!this._onKeyHitch){this._onKeyHitch=dojo.hitch(this,"onKeyPressed")}setTimeout(this._onKeyHitch,1);return true},addKeyHandler:function(key,ctrl,shift,handler){if(!dojo.isArray(this._keyHandlers[key])){this._keyHandlers[key]=[]}this._keyHandlers[key].push({shift:shift||false,ctrl:ctrl||false,handler:handler})},onKeyPressed:function(){this.onDisplayChanged()},onClick:function(e){this.onDisplayChanged(e)},_onIEMouseDown:function(e){if(!this._focused&&!this.disabled){this.focus()}},_onBlur:function(e){this.inherited(arguments);var _c=this.getValue(true);if(_c!=this.savedContent){this.onChange(_c);this.savedContent=_c}if(dojo.isMoz&&this.iframe){var titleObj=dojo.isFF<3?this.iframe.contentDocument:this.iframe;titleObj.title=this._localizedIframeTitles.iframeEditTitle}},_onFocus:function(e){if(!this.disabled){if(!this._disabledOK){this.attr("disabled",false)}this.inherited(arguments)}},blur:function(){if(!dojo.isIE&&this.window.document.documentElement&&this.window.document.documentElement.focus){this.window.document.documentElement.focus()}else{if(dojo.doc.body.focus){dojo.doc.body.focus()}}},focus:function(){if(!dojo.isIE){dijit.focus(this.iframe)}else{if(this.editNode&&this.editNode.focus){this.iframe.fireEvent("onfocus",document.createEventObject())}}},updateInterval:200,_updateTimer:null,onDisplayChanged:function(e){if(this._updateTimer){clearTimeout(this._updateTimer)}if(!this._updateHandler){this._updateHandler=dojo.hitch(this,"onNormalizedDisplayChanged")}this._updateTimer=setTimeout(this._updateHandler,this.updateInterval)},onNormalizedDisplayChanged:function(){delete this._updateTimer},onChange:function(newContent){},_normalizeCommand:function(cmd){var command=cmd.toLowerCase();if(command=="formatblock"){if(dojo.isSafari){command="heading"}}else{if(command=="hilitecolor"&&!dojo.isMoz){command="backcolor"}}return command},_qcaCache:{},queryCommandAvailable:function(command){var ca=this._qcaCache[command];if(ca!=undefined){return ca}return(this._qcaCache[command]=this._queryCommandAvailable(command))},_queryCommandAvailable:function(command){var ie=1;var mozilla=1<<1;var webkit=1<<2;var opera=1<<3;var webkit420=1<<4;var gt420=dojo.isWebKit;function isSupportedBy(browsers){return{ie:Boolean(browsers&ie),mozilla:Boolean(browsers&mozilla),webkit:Boolean(browsers&webkit),webkit420:Boolean(browsers&webkit420),opera:Boolean(browsers&opera)}}var supportedBy=null;switch(command.toLowerCase()){case"bold":case"italic":case"underline":case"subscript":case"superscript":case"fontname":case"fontsize":case"forecolor":case"hilitecolor":case"justifycenter":case"justifyfull":case"justifyleft":case"justifyright":case"delete":case"selectall":case"toggledir":supportedBy=isSupportedBy(mozilla|ie|webkit|opera);break;case"createlink":case"unlink":case"removeformat":case"inserthorizontalrule":case"insertimage":case"insertorderedlist":case"insertunorderedlist":case"indent":case"outdent":case"formatblock":case"inserthtml":case"undo":case"redo":case"strikethrough":case"tabindent":supportedBy=isSupportedBy(mozilla|ie|opera|webkit420);break;case"blockdirltr":case"blockdirrtl":case"dirltr":case"dirrtl":case"inlinedirltr":case"inlinedirrtl":supportedBy=isSupportedBy(ie);break;case"cut":case"copy":case"paste":supportedBy=isSupportedBy(ie|mozilla|webkit420);break;case"inserttable":supportedBy=isSupportedBy(mozilla|ie);break;case"insertcell":case"insertcol":case"insertrow":case"deletecells":case"deletecols":case"deleterows":case"mergecells":case"splitcell":supportedBy=isSupportedBy(ie|mozilla);break;default:return false}return(dojo.isIE&&supportedBy.ie)||(dojo.isMoz&&supportedBy.mozilla)||(dojo.isWebKit&&supportedBy.webkit)||(dojo.isWebKit>420&&supportedBy.webkit420)||(dojo.isOpera&&supportedBy.opera)},execCommand:function(command,argument){var returnValue;this.focus();command=this._normalizeCommand(command);if(argument!=undefined){if(command=="heading"){throw new Error("unimplemented")}else{if((command=="formatblock")&&dojo.isIE){argument="<"+argument+">"}}}if(command=="inserthtml"){argument=this._preFilterContent(argument);returnValue=true;if(dojo.isIE){var insertRange=this.document.selection.createRange();if(this.document.selection.type.toUpperCase()=="CONTROL"){var n=insertRange.item(0);while(insertRange.length){insertRange.remove(insertRange.item(0))}n.outerHTML=argument}else{insertRange.pasteHTML(argument)}insertRange.select()}else{if(dojo.isMoz&&!argument.length){this._sCall("remove")}else{returnValue=this.document.execCommand(command,false,argument)}}}else{if((command=="unlink")&&(this.queryCommandEnabled("unlink"))&&(dojo.isMoz||dojo.isWebKit)){var a=this._sCall("getAncestorElement",["a"]);this._sCall("selectElement",[a]);returnValue=this.document.execCommand("unlink",false,null)}else{if((command=="hilitecolor")&&(dojo.isMoz)){this.document.execCommand("styleWithCSS",false,true);returnValue=this.document.execCommand(command,false,argument);this.document.execCommand("styleWithCSS",false,false)}else{if((dojo.isIE)&&((command=="backcolor")||(command=="forecolor"))){argument=arguments.length>1?argument:null;returnValue=this.document.execCommand(command,false,argument)}else{argument=arguments.length>1?argument:null;if(argument||command!="createlink"){returnValue=this.document.execCommand(command,false,argument)}}}}}this.onDisplayChanged();return returnValue},queryCommandEnabled:function(command){if(this.disabled||!this._disabledOK){return false}command=this._normalizeCommand(command);if(dojo.isMoz||dojo.isWebKit){if(command=="unlink"){this._sCall("hasAncestorElement",["a"])}else{if(command=="inserttable"){return true}}}if(dojo.isWebKit){if(command=="copy"){command="cut"}else{if(command=="paste"){return true}}}if(command=="indent"){var li=this._sCall("getAncestorElement",["li"]);var n=li&&li.previousSibling;while(n){if(n.nodeType==1){return true}n=n.previousSibling}return false}else{if(command=="outdent"){return this._sCall("hasAncestorElement",["li"])}}var elem=dojo.isIE?this.document.selection.createRange():this.document;return elem.queryCommandEnabled(command)},queryCommandState:function(command){if(this.disabled||!this._disabledOK){return false}command=this._normalizeCommand(command);return this.document.queryCommandState(command)},queryCommandValue:function(command){if(this.disabled||!this._disabledOK){return false}var r;command=this._normalizeCommand(command);if(dojo.isIE&&command=="formatblock"){r=this._native2LocalFormatNames[this.document.queryCommandValue(command)]}else{r=this.document.queryCommandValue(command)}return r},_sCall:function(name,args){return dojo.withGlobal(this.window,name,dijit._editor.selection,args)},placeCursorAtStart:function(){this.focus();var isvalid=false;if(dojo.isMoz){var first=this.editNode.firstChild;while(first){if(first.nodeType==3){if(first.nodeValue.replace(/^\s+|\s+$/g,"").length>0){isvalid=true;this._sCall("selectElement",[first]);break}}else{if(first.nodeType==1){isvalid=true;this._sCall("selectElementChildren",[first]);break}}first=first.nextSibling}}else{isvalid=true;this._sCall("selectElementChildren",[this.editNode])}if(isvalid){this._sCall("collapse",[true])}},placeCursorAtEnd:function(){this.focus();var isvalid=false;if(dojo.isMoz){var last=this.editNode.lastChild;while(last){if(last.nodeType==3){if(last.nodeValue.replace(/^\s+|\s+$/g,"").length>0){isvalid=true;this._sCall("selectElement",[last]);break}}else{if(last.nodeType==1){isvalid=true;if(last.lastChild){this._sCall("selectElement",[last.lastChild])}else{this._sCall("selectElement",[last])}break}}last=last.previousSibling}}else{isvalid=true;this._sCall("selectElementChildren",[this.editNode])}if(isvalid){this._sCall("collapse",[false])}},getValue:function(nonDestructive){if(this.textarea){if(this.isClosed||!this.isLoaded){return this.textarea.value}}return this._postFilterContent(null,nonDestructive)},_getValueAttr:function(){return this.getValue()},setValue:function(html){if(!this.isLoaded){this.onLoadDeferred.addCallback(dojo.hitch(this,function(){this.setValue(html)}));return }if(this.textarea&&(this.isClosed||!this.isLoaded)){this.textarea.value=html}else{html=this._preFilterContent(html);var node=this.isClosed?this.domNode:this.editNode;node.innerHTML=html;this._preDomFilterContent(node)}this.onDisplayChanged()},replaceValue:function(html){if(this.isClosed){this.setValue(html)}else{if(this.window&&this.window.getSelection&&!dojo.isMoz){this.setValue(html)}else{if(this.window&&this.window.getSelection){html=this._preFilterContent(html);this.execCommand("selectall");if(dojo.isMoz&&!html){html="&nbsp;"}this.execCommand("inserthtml",html);this._preDomFilterContent(this.editNode)}else{if(this.document&&this.document.selection){this.setValue(html)}}}}},_preFilterContent:function(html){var ec=html;dojo.forEach(this.contentPreFilters,function(ef){if(ef){ec=ef(ec)}});return ec},_preDomFilterContent:function(dom){dom=dom||this.editNode;dojo.forEach(this.contentDomPreFilters,function(ef){if(ef&&dojo.isFunction(ef)){ef(dom)}},this)},_postFilterContent:function(dom,nonDestructive){var ec;if(!dojo.isString(dom)){dom=dom||this.editNode;if(this.contentDomPostFilters.length){if(nonDestructive){dom=dojo.clone(dom)}dojo.forEach(this.contentDomPostFilters,function(ef){dom=ef(dom)})}ec=dijit._editor.getChildrenHtml(dom)}else{ec=dom}if(!dojo.trim(ec.replace(/^\xA0\xA0*/,"").replace(/\xA0\xA0*$/,"")).length){ec=""}dojo.forEach(this.contentPostFilters,function(ef){ec=ef(ec)});return ec},_saveContent:function(e){var saveTextarea=dojo.byId(dijit._scopeName+"._editor.RichText.savedContent");saveTextarea.value+=this._SEPARATOR+this.name+":"+this.getValue()},escapeXml:function(str,noSingleQuotes){str=str.replace(/&/gm,"&amp;").replace(/</gm,"&lt;").replace(/>/gm,"&gt;").replace(/"/gm,"&quot;");if(!noSingleQuotes){str=str.replace(/'/gm,"&#39;")}return str},getNodeHtml:function(node){dojo.deprecated("dijit.Editor::getNodeHtml is deprecated","use dijit._editor.getNodeHtml instead",2);return dijit._editor.getNodeHtml(node)},getNodeChildrenHtml:function(dom){dojo.deprecated("dijit.Editor::getNodeChildrenHtml is deprecated","use dijit._editor.getChildrenHtml instead",2);return dijit._editor.getChildrenHtml(dom)},close:function(save,force){if(this.isClosed){return false}if(!arguments.length){save=true}this._content=this.getValue();var changed=(this.savedContent!=this._content);if(this.interval){clearInterval(this.interval)}if(this.textarea){var s=this.textarea.style;s.position="";s.left=s.top="";if(dojo.isIE){s.overflow=this.__overflow;this.__overflow=null}this.textarea.value=save?this._content:this.savedContent;dojo.destroy(this.domNode);this.domNode=this.textarea}else{this.domNode.innerHTML=save?this._content:this.savedContent}dojo.removeClass(this.domNode,"RichTextEditable");this.isClosed=true;this.isLoaded=false;delete this.editNode;if(this.window&&this.window._frameElement){this.window._frameElement=null}this.window=null;this.document=null;this.editingArea=null;this.editorObject=null;return changed},destroyRendering:function(){},destroy:function(){this.destroyRendering();if(!this.isClosed){this.close(false)}this.inherited(arguments)},_removeMozBogus:function(html){return html.replace(/\stype="_moz"/gi,"").replace(/\s_moz_dirty=""/gi,"")},_removeSafariBogus:function(html){return html.replace(/\sclass="webkit-block-placeholder"/gi,"")},_fixContentForMoz:function(html){return html.replace(/<(\/)?strong([ \>])/gi,"<$1b$2").replace(/<(\/)?em([ \>])/gi,"<$1i$2")},_preFixUrlAttributes:function(html){return html.replace(/(?:(<a(?=\s).*?\shref=)("|')(.*?)\2)|(?:(<a\s.*?href=)([^"'][^ >]+))/gi,"$1$4$2$3$5$2 _djrealurl=$2$3$5$2").replace(/(?:(<img(?=\s).*?\ssrc=)("|')(.*?)\2)|(?:(<img\s.*?src=)([^"'][^ >]+))/gi,"$1$4$2$3$5$2 _djrealurl=$2$3$5$2")}})}if(!dojo._hasResource["dijit.ToolbarSeparator"]){dojo._hasResource["dijit.ToolbarSeparator"]=true;dojo.provide("dijit.ToolbarSeparator");dojo.declare("dijit.ToolbarSeparator",[dijit._Widget,dijit._Templated],{templateString:'<div class="dijitToolbarSeparator dijitInline"></div>',postCreate:function(){dojo.setSelectable(this.domNode,false)},isFocusable:function(){return false}})}if(!dojo._hasResource["dijit.Toolbar"]){dojo._hasResource["dijit.Toolbar"]=true;dojo.provide("dijit.Toolbar");dojo.declare("dijit.Toolbar",[dijit._Widget,dijit._Templated,dijit._KeyNavContainer],{templateString:'<div class="dijit dijitToolbar" waiRole="toolbar" tabIndex="${tabIndex}" dojoAttachPoint="containerNode"></div>',postCreate:function(){this.connectKeyNavHandlers(this.isLeftToRight()?[dojo.keys.LEFT_ARROW]:[dojo.keys.RIGHT_ARROW],this.isLeftToRight()?[dojo.keys.RIGHT_ARROW]:[dojo.keys.LEFT_ARROW])},startup:function(){if(this._started){return }this.startupKeyNavChildren();this.inherited(arguments)}})}if(!dojo._hasResource["dijit._editor._Plugin"]){dojo._hasResource["dijit._editor._Plugin"]=true;dojo.provide("dijit._editor._Plugin");dojo.declare("dijit._editor._Plugin",null,{constructor:function(args,node){if(args){dojo.mixin(this,args)}this._connects=[]},editor:null,iconClassPrefix:"dijitEditorIcon",button:null,queryCommand:null,command:"",commandArg:null,useDefaultCommand:true,buttonClass:dijit.form.Button,getLabel:function(key){return this.editor.commands[key]},_initButton:function(props){if(this.command.length){var label=this.getLabel(this.command);var className=this.iconClassPrefix+" "+this.iconClassPrefix+this.command.charAt(0).toUpperCase()+this.command.substr(1);if(!this.button){props=dojo.mixin({label:label,showLabel:false,iconClass:className,dropDown:this.dropDown,tabIndex:"-1"},props||{});this.button=new this.buttonClass(props)}}},destroy:function(f){dojo.forEach(this._connects,dojo.disconnect);if(this.dropDown){this.dropDown.destroyRecursive()}},connect:function(o,f,tf){this._connects.push(dojo.connect(o,f,this,tf))},updateState:function(){var e=this.editor,c=this.command,checked,enabled;if(!e||!e.isLoaded||!c.length){return }if(this.button){try{enabled=e.queryCommandEnabled(c);if(this.enabled!==enabled){this.enabled=enabled;this.button.attr("disabled",!enabled)}if(typeof this.button.checked=="boolean"){checked=e.queryCommandState(c);if(this.checked!==checked){this.checked=checked;this.button.attr("checked",e.queryCommandState(c))}}}catch(e){console.log(e)}}},setEditor:function(editor){this.editor=editor;this._initButton();if(this.command.length&&!this.editor.queryCommandAvailable(this.command)){if(this.button){this.button.domNode.style.display="none"}}if(this.button&&this.useDefaultCommand){this.connect(this.button,"onClick",dojo.hitch(this.editor,"execCommand",this.command,this.commandArg))}this.connect(this.editor,"onNormalizedDisplayChanged","updateState")},setToolbar:function(toolbar){if(this.button){toolbar.addChild(this.button)}}})}if(!dojo._hasResource["dijit._editor.plugins.EnterKeyHandling"]){dojo._hasResource["dijit._editor.plugins.EnterKeyHandling"]=true;dojo.provide("dijit._editor.plugins.EnterKeyHandling");dojo.declare("dijit._editor.plugins.EnterKeyHandling",dijit._editor._Plugin,{blockNodeForEnter:"BR",constructor:function(args){if(args){dojo.mixin(this,args)}},setEditor:function(editor){this.editor=editor;if(this.blockNodeForEnter=="BR"){if(dojo.isIE){editor.contentDomPreFilters.push(dojo.hitch(this,"regularPsToSingleLinePs"));editor.contentDomPostFilters.push(dojo.hitch(this,"singleLinePsToRegularPs"));editor.onLoadDeferred.addCallback(dojo.hitch(this,"_fixNewLineBehaviorForIE"))}else{editor.onLoadDeferred.addCallback(dojo.hitch(this,function(d){try{this.editor.document.execCommand("insertBrOnReturn",false,true)}catch(e){}return d}))}}else{if(this.blockNodeForEnter){dojo["require"]("dijit._editor.range");var h=dojo.hitch(this,this.handleEnterKey);editor.addKeyHandler(13,0,0,h);editor.addKeyHandler(13,0,1,h);this.connect(this.editor,"onKeyPressed","onKeyPressed")}}},connect:function(o,f,tf){if(!this._connects){this._connects=[]}this._connects.push(dojo.connect(o,f,this,tf))},destroy:function(){dojo.forEach(this._connects,dojo.disconnect);this._connects=[]},onKeyPressed:function(e){if(this._checkListLater){if(dojo.withGlobal(this.editor.window,"isCollapsed",dijit)){var liparent=dojo.withGlobal(this.editor.window,"getAncestorElement",dijit._editor.selection,["LI"]);if(!liparent){dijit._editor.RichText.prototype.execCommand.call(this.editor,"formatblock",this.blockNodeForEnter);var block=dojo.withGlobal(this.editor.window,"getAncestorElement",dijit._editor.selection,[this.blockNodeForEnter]);if(block){block.innerHTML=this.bogusHtmlContent;if(dojo.isIE){var r=this.editor.document.selection.createRange();r.move("character",-1);r.select()}}else{alert("onKeyPressed: Can not find the new block node")}}else{if(dojo.isMoz){if(liparent.parentNode.parentNode.nodeName=="LI"){liparent=liparent.parentNode.parentNode}}var fc=liparent.firstChild;if(fc&&fc.nodeType==1&&(fc.nodeName=="UL"||fc.nodeName=="OL")){liparent.insertBefore(fc.ownerDocument.createTextNode("\xA0"),fc);var newrange=dijit.range.create();newrange.setStart(liparent.firstChild,0);var selection=dijit.range.getSelection(this.editor.window,true);selection.removeAllRanges();selection.addRange(newrange)}}}this._checkListLater=false}if(this._pressedEnterInBlock){if(this._pressedEnterInBlock.previousSibling){this.removeTrailingBr(this._pressedEnterInBlock.previousSibling)}delete this._pressedEnterInBlock}},bogusHtmlContent:"&nbsp;",blockNodes:/^(?:P|H1|H2|H3|H4|H5|H6|LI)$/,handleEnterKey:function(e){if(!this.blockNodeForEnter){return true}var selection,range,newrange,doc=this.editor.document,br;if(e.shiftKey||this.blockNodeForEnter=="BR"){var parent=dojo.withGlobal(this.editor.window,"getParentElement",dijit._editor.selection);var header=dijit.range.getAncestor(parent,this.blockNodes);if(header){if(!e.shiftKey&&header.tagName=="LI"){return true}selection=dijit.range.getSelection(this.editor.window);range=selection.getRangeAt(0);if(!range.collapsed){range.deleteContents()}if(dijit.range.atBeginningOfContainer(header,range.startContainer,range.startOffset)){if(e.shiftKey){br=doc.createElement("br");newrange=dijit.range.create();header.insertBefore(br,header.firstChild);newrange.setStartBefore(br.nextSibling);selection.removeAllRanges();selection.addRange(newrange)}else{dojo.place(br,header,"before")}}else{if(dijit.range.atEndOfContainer(header,range.startContainer,range.startOffset)){newrange=dijit.range.create();br=doc.createElement("br");if(e.shiftKey){header.appendChild(br);header.appendChild(doc.createTextNode("\xA0"));newrange.setStart(header.lastChild,0)}else{dojo.place(br,header,"after");newrange.setStartAfter(header)}selection.removeAllRanges();selection.addRange(newrange)}else{return true}}}else{dijit._editor.RichText.prototype.execCommand.call(this.editor,"inserthtml","<br>")}return false}var _letBrowserHandle=true;selection=dijit.range.getSelection(this.editor.window);range=selection.getRangeAt(0);if(!range.collapsed){range.deleteContents()}var block=dijit.range.getBlockAncestor(range.endContainer,null,this.editor.editNode);var blockNode=block.blockNode;if((this._checkListLater=(blockNode&&(blockNode.nodeName=="LI"||blockNode.parentNode.nodeName=="LI")))){if(dojo.isMoz){this._pressedEnterInBlock=blockNode}if(/^(?:\s|&nbsp;)$/.test(blockNode.innerHTML)){blockNode.innerHTML=""}return true}if(!block.blockNode||block.blockNode===this.editor.editNode){dijit._editor.RichText.prototype.execCommand.call(this.editor,"formatblock",this.blockNodeForEnter);block={blockNode:dojo.withGlobal(this.editor.window,"getAncestorElement",dijit._editor.selection,[this.blockNodeForEnter]),blockContainer:this.editor.editNode};if(block.blockNode){if(!(block.blockNode.textContent||block.blockNode.innerHTML).replace(/^\s+|\s+$/g,"").length){this.removeTrailingBr(block.blockNode);return false}}else{block.blockNode=this.editor.editNode}selection=dijit.range.getSelection(this.editor.window);range=selection.getRangeAt(0)}var newblock=doc.createElement(this.blockNodeForEnter);newblock.innerHTML=this.bogusHtmlContent;this.removeTrailingBr(block.blockNode);if(dijit.range.atEndOfContainer(block.blockNode,range.endContainer,range.endOffset)){if(block.blockNode===block.blockContainer){block.blockNode.appendChild(newblock)}else{dojo.place(newblock,block.blockNode,"after")}_letBrowserHandle=false;newrange=dijit.range.create();newrange.setStart(newblock,0);selection.removeAllRanges();selection.addRange(newrange);if(this.editor.height){newblock.scrollIntoView(false)}}else{if(dijit.range.atBeginningOfContainer(block.blockNode,range.startContainer,range.startOffset)){dojo.place(newblock,block.blockNode,block.blockNode===block.blockContainer?"first":"before");if(newblock.nextSibling&&this.editor.height){newblock.nextSibling.scrollIntoView(false)}_letBrowserHandle=false}else{if(dojo.isMoz){this._pressedEnterInBlock=block.blockNode}}}return _letBrowserHandle},removeTrailingBr:function(container){var para=/P|DIV|LI/i.test(container.tagName)?container:dijit._editor.selection.getParentOfType(container,["P","DIV","LI"]);if(!para){return }if(para.lastChild){if((para.childNodes.length>1&&para.lastChild.nodeType==3&&/^[\s\xAD]*$/.test(para.lastChild.nodeValue))||(para.lastChild&&para.lastChild.tagName=="BR")){dojo.destroy(para.lastChild)}}if(!para.childNodes.length){para.innerHTML=this.bogusHtmlContent}},_fixNewLineBehaviorForIE:function(d){if(this.editor.document.__INSERTED_EDITIOR_NEWLINE_CSS===undefined){var lineFixingStyles="p{margin:0 !important;}";var insertCssText=function(cssStr,doc,URI){if(!cssStr){return null}if(!doc){doc=document}var style=doc.createElement("style");style.setAttribute("type","text/css");var head=doc.getElementsByTagName("head")[0];if(!head){console.debug("No head tag in document, aborting styles");return null}else{head.appendChild(style)}if(style.styleSheet){var setFunc=function(){try{style.styleSheet.cssText=cssStr}catch(e){console.debug(e)}};if(style.styleSheet.disabled){setTimeout(setFunc,10)}else{setFunc()}}else{var cssText=doc.createTextNode(cssStr);style.appendChild(cssText)}return style};insertCssText(lineFixingStyles,this.editor.document);this.editor.document.__INSERTED_EDITIOR_NEWLINE_CSS=true;return d}return null},regularPsToSingleLinePs:function(element,noWhiteSpaceInEmptyP){function wrapLinesInPs(el){function wrapNodes(nodes){var newP=nodes[0].ownerDocument.createElement("p");nodes[0].parentNode.insertBefore(newP,nodes[0]);dojo.forEach(nodes,function(node){newP.appendChild(node)})}var currentNodeIndex=0;var nodesInLine=[];var currentNode;while(currentNodeIndex<el.childNodes.length){currentNode=el.childNodes[currentNodeIndex];if(currentNode.nodeType==3||(currentNode.nodeType==1&&currentNode.nodeName!="BR"&&dojo.style(currentNode,"display")!="block")){nodesInLine.push(currentNode)}else{var nextCurrentNode=currentNode.nextSibling;if(nodesInLine.length){wrapNodes(nodesInLine);currentNodeIndex=(currentNodeIndex+1)-nodesInLine.length;if(currentNode.nodeName=="BR"){dojo.destroy(currentNode)}}nodesInLine=[]}currentNodeIndex++}if(nodesInLine.length){wrapNodes(nodesInLine)}}function splitP(el){var currentNode=null;var trailingNodes=[];var lastNodeIndex=el.childNodes.length-1;for(var i=lastNodeIndex;i>=0;i--){currentNode=el.childNodes[i];if(currentNode.nodeName=="BR"){var newP=currentNode.ownerDocument.createElement("p");dojo.place(newP,el,"after");if(trailingNodes.length==0&&i!=lastNodeIndex){newP.innerHTML="&nbsp;"}dojo.forEach(trailingNodes,function(node){newP.appendChild(node)});dojo.destroy(currentNode);trailingNodes=[]}else{trailingNodes.unshift(currentNode)}}}var pList=[];var ps=element.getElementsByTagName("p");dojo.forEach(ps,function(p){pList.push(p)});dojo.forEach(pList,function(p){if((p.previousSibling)&&(p.previousSibling.nodeName=="P"||dojo.style(p.previousSibling,"display")!="block")){var newP=p.parentNode.insertBefore(this.document.createElement("p"),p);newP.innerHTML=noWhiteSpaceInEmptyP?"":"&nbsp;"}splitP(p)},this.editor);wrapLinesInPs(element);return element},singleLinePsToRegularPs:function(element){function getParagraphParents(node){var ps=node.getElementsByTagName("p");var parents=[];for(var i=0;i<ps.length;i++){var p=ps[i];var knownParent=false;for(var k=0;k<parents.length;k++){if(parents[k]===p.parentNode){knownParent=true;break}}if(!knownParent){parents.push(p.parentNode)}}return parents}function isParagraphDelimiter(node){if(node.nodeType!=1||node.tagName!="P"){return dojo.style(node,"display")=="block"}else{if(!node.childNodes.length||node.innerHTML=="&nbsp;"){return true}}return false}var paragraphContainers=getParagraphParents(element);for(var i=0;i<paragraphContainers.length;i++){var container=paragraphContainers[i];var firstPInBlock=null;var node=container.firstChild;var deleteNode=null;while(node){if(node.nodeType!="1"||node.tagName!="P"){firstPInBlock=null}else{if(isParagraphDelimiter(node)){deleteNode=node;firstPInBlock=null}else{if(firstPInBlock==null){firstPInBlock=node}else{if((!firstPInBlock.lastChild||firstPInBlock.lastChild.nodeName!="BR")&&(node.firstChild)&&(node.firstChild.nodeName!="BR")){firstPInBlock.appendChild(this.editor.document.createElement("br"))}while(node.firstChild){firstPInBlock.appendChild(node.firstChild)}deleteNode=node}}}node=node.nextSibling;if(deleteNode){dojo.destroy(deleteNode);deleteNode=null}}}return element}})}if(!dojo._hasResource["dijit.Editor"]){dojo._hasResource["dijit.Editor"]=true;dojo.provide("dijit.Editor");dojo.declare("dijit.Editor",dijit._editor.RichText,{plugins:null,extraPlugins:null,constructor:function(){if(!dojo.isArray(this.plugins)){this.plugins=["undo","redo","|","cut","copy","paste","|","bold","italic","underline","strikethrough","|","insertOrderedList","insertUnorderedList","indent","outdent","|","justifyLeft","justifyRight","justifyCenter","justifyFull","dijit._editor.plugins.EnterKeyHandling"]}this._plugins=[];this._editInterval=this.editActionInterval*1000;if(dojo.isIE){this.events.push("onBeforeDeactivate")}},postCreate:function(){if(this.customUndo){dojo["require"]("dijit._editor.range");this._steps=this._steps.slice(0);this._undoedSteps=this._undoedSteps.slice(0)}if(dojo.isArray(this.extraPlugins)){this.plugins=this.plugins.concat(this.extraPlugins)}this.inherited(arguments);this.commands=dojo.i18n.getLocalization("dijit._editor","commands",this.lang);if(!this.toolbar){this.toolbar=new dijit.Toolbar({});dojo.place(this.toolbar.domNode,this.editingArea,"before")}dojo.forEach(this.plugins,this.addPlugin,this);this.onNormalizedDisplayChanged();this.toolbar.startup()},destroy:function(){dojo.forEach(this._plugins,function(p){if(p&&p.destroy){p.destroy()}});this._plugins=[];this.toolbar.destroyRecursive();delete this.toolbar;this.inherited(arguments)},addPlugin:function(plugin,index){var args=dojo.isString(plugin)?{name:plugin}:plugin;if(!args.setEditor){var o={"args":args,"plugin":null,"editor":this};dojo.publish(dijit._scopeName+".Editor.getPlugin",[o]);if(!o.plugin){var pc=dojo.getObject(args.name);if(pc){o.plugin=new pc(args)}}if(!o.plugin){console.warn("Cannot find plugin",plugin);return }plugin=o.plugin}if(arguments.length>1){this._plugins[index]=plugin}else{this._plugins.push(plugin)}plugin.setEditor(this);if(dojo.isFunction(plugin.setToolbar)){plugin.setToolbar(this.toolbar)}},startup:function(){},resize:function(size){dijit.layout._LayoutWidget.prototype.resize.apply(this,arguments)},layout:function(){this.editingArea.style.height=(this._contentBox.h-dojo.marginBox(this.toolbar.domNode).h)+"px";if(this.iframe){this.iframe.style.height="100%"}this._layoutMode=true},_onIEMouseDown:function(e){delete this._savedSelection;if(e.target.tagName=="BODY"){setTimeout(dojo.hitch(this,"placeCursorAtEnd"),0)}this.inherited(arguments)},onBeforeDeactivate:function(e){if(this.customUndo){this.endEditing(true)}this._saveSelection()},customUndo:dojo.isIE,editActionInterval:3,beginEditing:function(cmd){if(!this._inEditing){this._inEditing=true;this._beginEditing(cmd)}if(this.editActionInterval>0){if(this._editTimer){clearTimeout(this._editTimer)}this._editTimer=setTimeout(dojo.hitch(this,this.endEditing),this._editInterval)}},_steps:[],_undoedSteps:[],execCommand:function(cmd){if(this.customUndo&&(cmd=="undo"||cmd=="redo")){return this[cmd]()}else{if(this.customUndo){this.endEditing();this._beginEditing()}try{var r=this.inherited("execCommand",arguments);if(dojo.isWebKit&&cmd=="paste"&&!r){throw {code:1011}}}catch(e){if(e.code==1011&&/copy|cut|paste/.test(cmd)){var sub=dojo.string.substitute,accel={cut:"X",copy:"C",paste:"V"},isMac=navigator.userAgent.indexOf("Macintosh")!=-1;alert(sub(this.commands.systemShortcut,[this.commands[cmd],sub(this.commands[isMac?"appleKey":"ctrlKey"],[accel[cmd]])]))}r=false}if(this.customUndo){this._endEditing()}return r}},queryCommandEnabled:function(cmd){if(this.customUndo&&(cmd=="undo"||cmd=="redo")){return cmd=="undo"?(this._steps.length>1):(this._undoedSteps.length>0)}else{return this.inherited("queryCommandEnabled",arguments)}},focus:function(){var restore=0;if(this._savedSelection&&dojo.isIE){restore=dijit._curFocus!=this.editNode}this.inherited(arguments);if(restore){this._restoreSelection()}},_moveToBookmark:function(b){var bookmark=b;if(dojo.isIE){if(dojo.isArray(b)){bookmark=[];dojo.forEach(b,function(n){bookmark.push(dijit.range.getNode(n,this.editNode))},this)}}else{var r=dijit.range.create();r.setStart(dijit.range.getNode(b.startContainer,this.editNode),b.startOffset);r.setEnd(dijit.range.getNode(b.endContainer,this.editNode),b.endOffset);bookmark=r}dojo.withGlobal(this.window,"moveToBookmark",dijit,[bookmark])},_changeToStep:function(from,to){this.setValue(to.text);var b=to.bookmark;if(!b){return }this._moveToBookmark(b)},undo:function(){this.endEditing(true);var s=this._steps.pop();if(this._steps.length>0){this.focus();this._changeToStep(s,this._steps[this._steps.length-1]);this._undoedSteps.push(s);this.onDisplayChanged();return true}return false},redo:function(){this.endEditing(true);var s=this._undoedSteps.pop();if(s&&this._steps.length>0){this.focus();this._changeToStep(this._steps[this._steps.length-1],s);this._steps.push(s);this.onDisplayChanged();return true}return false},endEditing:function(ignore_caret){if(this._editTimer){clearTimeout(this._editTimer)}if(this._inEditing){this._endEditing(ignore_caret);this._inEditing=false}},_getBookmark:function(){var b=dojo.withGlobal(this.window,dijit.getBookmark);var tmp=[];if(dojo.isIE){if(dojo.isArray(b)){dojo.forEach(b,function(n){tmp.push(dijit.range.getIndex(n,this.editNode).o)},this);b=tmp}}else{tmp=dijit.range.getIndex(b.startContainer,this.editNode).o;b={startContainer:tmp,startOffset:b.startOffset,endContainer:b.endContainer===b.startContainer?tmp:dijit.range.getIndex(b.endContainer,this.editNode).o,endOffset:b.endOffset}}return b},_beginEditing:function(cmd){if(this._steps.length===0){this._steps.push({"text":this.savedContent,"bookmark":this._getBookmark()})}},_endEditing:function(ignore_caret){var v=this.getValue(true);this._undoedSteps=[];this._steps.push({text:v,bookmark:this._getBookmark()})},onKeyDown:function(e){if(!dojo.isIE&&!this.iframe&&e.keyCode==dojo.keys.TAB&&!this.tabIndent){this._saveSelection()}if(!this.customUndo){this.inherited(arguments);return }var k=e.keyCode,ks=dojo.keys;if(e.ctrlKey&&!e.altKey){if(k==90||k==122){dojo.stopEvent(e);this.undo();return }else{if(k==89||k==121){dojo.stopEvent(e);this.redo();return }}}this.inherited(arguments);switch(k){case ks.ENTER:case ks.BACKSPACE:case ks.DELETE:this.beginEditing();break;case 88:case 86:if(e.ctrlKey&&!e.altKey&&!e.metaKey){this.endEditing();if(e.keyCode==88){this.beginEditing("cut");setTimeout(dojo.hitch(this,this.endEditing),1)}else{this.beginEditing("paste");setTimeout(dojo.hitch(this,this.endEditing),1)}break}default:if(!e.ctrlKey&&!e.altKey&&!e.metaKey&&(e.keyCode<dojo.keys.F1||e.keyCode>dojo.keys.F15)){this.beginEditing();break}case ks.ALT:this.endEditing();break;case ks.UP_ARROW:case ks.DOWN_ARROW:case ks.LEFT_ARROW:case ks.RIGHT_ARROW:case ks.HOME:case ks.END:case ks.PAGE_UP:case ks.PAGE_DOWN:this.endEditing(true);break;case ks.CTRL:case ks.SHIFT:case ks.TAB:break}},_onBlur:function(){this.inherited("_onBlur",arguments);this.endEditing(true)},_saveSelection:function(){this._savedSelection=this._getBookmark()},_restoreSelection:function(){if(this._savedSelection){this._moveToBookmark(this._savedSelection);delete this._savedSelection}},_onFocus:function(){setTimeout(dojo.hitch(this,"_restoreSelection"),0);this.inherited(arguments)},onClick:function(){this.endEditing(true);this.inherited(arguments)}});dojo.subscribe(dijit._scopeName+".Editor.getPlugin",null,function(o){if(o.plugin){return }var args=o.args,p;var _p=dijit._editor._Plugin;var name=args.name;switch(name){case"undo":case"redo":case"cut":case"copy":case"paste":case"insertOrderedList":case"insertUnorderedList":case"indent":case"outdent":case"justifyCenter":case"justifyFull":case"justifyLeft":case"justifyRight":case"delete":case"selectAll":case"removeFormat":case"unlink":case"insertHorizontalRule":p=new _p({command:name});break;case"bold":case"italic":case"underline":case"strikethrough":case"subscript":case"superscript":p=new _p({buttonClass:dijit.form.ToggleButton,command:name});break;case"|":p=new _p({button:new dijit.ToolbarSeparator()})}o.plugin=p})}if(!dojo._hasResource["dojo.fx.Toggler"]){dojo._hasResource["dojo.fx.Toggler"]=true;dojo.provide("dojo.fx.Toggler");dojo.declare("dojo.fx.Toggler",null,{constructor:function(args){var _t=this;dojo.mixin(_t,args);_t.node=args.node;_t._showArgs=dojo.mixin({},args);_t._showArgs.node=_t.node;_t._showArgs.duration=_t.showDuration;_t.showAnim=_t.showFunc(_t._showArgs);_t._hideArgs=dojo.mixin({},args);_t._hideArgs.node=_t.node;_t._hideArgs.duration=_t.hideDuration;_t.hideAnim=_t.hideFunc(_t._hideArgs);dojo.connect(_t.showAnim,"beforeBegin",dojo.hitch(_t.hideAnim,"stop",true));dojo.connect(_t.hideAnim,"beforeBegin",dojo.hitch(_t.showAnim,"stop",true))},node:null,showFunc:dojo.fadeIn,hideFunc:dojo.fadeOut,showDuration:200,hideDuration:200,show:function(delay){return this.showAnim.play(delay||0)},hide:function(delay){return this.hideAnim.play(delay||0)}})}if(!dojo._hasResource["dojo.fx"]){dojo._hasResource["dojo.fx"]=true;dojo.provide("dojo.fx");(function(){var d=dojo,_baseObj={_fire:function(evt,args){if(this[evt]){this[evt].apply(this,args||[])}return this}};var _chain=function(animations){this._index=-1;this._animations=animations||[];this._current=this._onAnimateCtx=this._onEndCtx=null;this.duration=0;d.forEach(this._animations,function(a){this.duration+=a.duration;if(a.delay){this.duration+=a.delay}},this)};d.extend(_chain,{_onAnimate:function(){this._fire("onAnimate",arguments)},_onEnd:function(){d.disconnect(this._onAnimateCtx);d.disconnect(this._onEndCtx);this._onAnimateCtx=this._onEndCtx=null;if(this._index+1==this._animations.length){this._fire("onEnd")}else{this._current=this._animations[++this._index];this._onAnimateCtx=d.connect(this._current,"onAnimate",this,"_onAnimate");this._onEndCtx=d.connect(this._current,"onEnd",this,"_onEnd");this._current.play(0,true)}},play:function(delay,gotoStart){if(!this._current){this._current=this._animations[this._index=0]}if(!gotoStart&&this._current.status()=="playing"){return this}var beforeBegin=d.connect(this._current,"beforeBegin",this,function(){this._fire("beforeBegin")}),onBegin=d.connect(this._current,"onBegin",this,function(arg){this._fire("onBegin",arguments)}),onPlay=d.connect(this._current,"onPlay",this,function(arg){this._fire("onPlay",arguments);d.disconnect(beforeBegin);d.disconnect(onBegin);d.disconnect(onPlay)});if(this._onAnimateCtx){d.disconnect(this._onAnimateCtx)}this._onAnimateCtx=d.connect(this._current,"onAnimate",this,"_onAnimate");if(this._onEndCtx){d.disconnect(this._onEndCtx)}this._onEndCtx=d.connect(this._current,"onEnd",this,"_onEnd");this._current.play.apply(this._current,arguments);return this},pause:function(){if(this._current){var e=d.connect(this._current,"onPause",this,function(arg){this._fire("onPause",arguments);d.disconnect(e)});this._current.pause()}return this},gotoPercent:function(percent,andPlay){this.pause();var offset=this.duration*percent;this._current=null;d.some(this._animations,function(a){if(a.duration<=offset){this._current=a;return true}offset-=a.duration;return false});if(this._current){this._current.gotoPercent(offset/this._current.duration,andPlay)}return this},stop:function(gotoEnd){if(this._current){if(gotoEnd){for(;this._index+1<this._animations.length;++this._index){this._animations[this._index].stop(true)}this._current=this._animations[this._index]}var e=d.connect(this._current,"onStop",this,function(arg){this._fire("onStop",arguments);d.disconnect(e)});this._current.stop()}return this},status:function(){return this._current?this._current.status():"stopped"},destroy:function(){if(this._onAnimateCtx){d.disconnect(this._onAnimateCtx)}if(this._onEndCtx){d.disconnect(this._onEndCtx)}}});d.extend(_chain,_baseObj);dojo.fx.chain=function(animations){return new _chain(animations)};var _combine=function(animations){this._animations=animations||[];this._connects=[];this._finished=0;this.duration=0;d.forEach(animations,function(a){var duration=a.duration;if(a.delay){duration+=a.delay}if(this.duration<duration){this.duration=duration}this._connects.push(d.connect(a,"onEnd",this,"_onEnd"))},this);this._pseudoAnimation=new d._Animation({curve:[0,1],duration:this.duration});var self=this;d.forEach(["beforeBegin","onBegin","onPlay","onAnimate","onPause","onStop"],function(evt){self._connects.push(d.connect(self._pseudoAnimation,evt,function(){self._fire(evt,arguments)}))})};d.extend(_combine,{_doAction:function(action,args){d.forEach(this._animations,function(a){a[action].apply(a,args)});return this},_onEnd:function(){if(++this._finished==this._animations.length){this._fire("onEnd")}},_call:function(action,args){var t=this._pseudoAnimation;t[action].apply(t,args)},play:function(delay,gotoStart){this._finished=0;this._doAction("play",arguments);this._call("play",arguments);return this},pause:function(){this._doAction("pause",arguments);this._call("pause",arguments);return this},gotoPercent:function(percent,andPlay){var ms=this.duration*percent;d.forEach(this._animations,function(a){a.gotoPercent(a.duration<ms?1:(ms/a.duration),andPlay)});this._call("gotoPercent",arguments);return this},stop:function(gotoEnd){this._doAction("stop",arguments);this._call("stop",arguments);return this},status:function(){return this._pseudoAnimation.status()},destroy:function(){d.forEach(this._connects,dojo.disconnect)}});d.extend(_combine,_baseObj);dojo.fx.combine=function(animations){return new _combine(animations)};dojo.fx.wipeIn=function(args){args.node=d.byId(args.node);var node=args.node,s=node.style,o;var anim=d.animateProperty(d.mixin({properties:{height:{start:function(){o=s.overflow;s.overflow="hidden";if(s.visibility=="hidden"||s.display=="none"){s.height="1px";s.display="";s.visibility="";return 1}else{var height=d.style(node,"height");return Math.max(height,1)}},end:function(){return node.scrollHeight}}}},args));d.connect(anim,"onEnd",function(){s.height="auto";s.overflow=o});return anim};dojo.fx.wipeOut=function(args){var node=args.node=d.byId(args.node),s=node.style,o;var anim=d.animateProperty(d.mixin({properties:{height:{end:1}}},args));d.connect(anim,"beforeBegin",function(){o=s.overflow;s.overflow="hidden";s.display=""});d.connect(anim,"onEnd",function(){s.overflow=o;s.height="auto";s.display="none"});return anim};dojo.fx.slideTo=function(args){var node=args.node=d.byId(args.node),top=null,left=null;var init=(function(n){return function(){var cs=d.getComputedStyle(n);var pos=cs.position;top=(pos=="absolute"?n.offsetTop:parseInt(cs.top)||0);left=(pos=="absolute"?n.offsetLeft:parseInt(cs.left)||0);if(pos!="absolute"&&pos!="relative"){var ret=d.coords(n,true);top=ret.y;left=ret.x;n.style.position="absolute";n.style.top=top+"px";n.style.left=left+"px"}}})(node);init();var anim=d.animateProperty(d.mixin({properties:{top:args.top||0,left:args.left||0}},args));d.connect(anim,"beforeBegin",anim,init);return anim}})()}if(!dojo._hasResource["dijit.tree.TreeStoreModel"]){dojo._hasResource["dijit.tree.TreeStoreModel"]=true;dojo.provide("dijit.tree.TreeStoreModel");dojo.declare("dijit.tree.TreeStoreModel",null,{store:null,childrenAttrs:["children"],labelAttr:"",root:null,query:null,constructor:function(args){dojo.mixin(this,args);this.connects=[];var store=this.store;if(!store.getFeatures()["dojo.data.api.Identity"]){throw new Error("dijit.Tree: store must support dojo.data.Identity")}if(store.getFeatures()["dojo.data.api.Notification"]){this.connects=this.connects.concat([dojo.connect(store,"onNew",this,"_onNewItem"),dojo.connect(store,"onDelete",this,"_onDeleteItem"),dojo.connect(store,"onSet",this,"_onSetItem")])}},destroy:function(){dojo.forEach(this.connects,dojo.disconnect)},getRoot:function(onItem,onError){if(this.root){onItem(this.root)}else{this.store.fetch({query:this.query,onComplete:dojo.hitch(this,function(items){if(items.length!=1){throw new Error(this.declaredClass+": query "+dojo.toJson(this.query)+" returned "+items.length+" items, but must return exactly one item")}this.root=items[0];onItem(this.root)}),onError:onError})}},mayHaveChildren:function(item){return dojo.some(this.childrenAttrs,function(attr){return this.store.hasAttribute(item,attr)},this)},getChildren:function(parentItem,onComplete,onError){var store=this.store;var childItems=[];for(var i=0;i<this.childrenAttrs.length;i++){var vals=store.getValues(parentItem,this.childrenAttrs[i]);childItems=childItems.concat(vals)}var _waitCount=0;dojo.forEach(childItems,function(item){if(!store.isItemLoaded(item)){_waitCount++}});if(_waitCount==0){onComplete(childItems)}else{var onItem=function onItem(item){if(--_waitCount==0){onComplete(childItems)}};dojo.forEach(childItems,function(item){if(!store.isItemLoaded(item)){store.loadItem({item:item,onItem:onItem,onError:onError})}})}},getIdentity:function(item){return this.store.getIdentity(item)},getLabel:function(item){if(this.labelAttr){return this.store.getValue(item,this.labelAttr)}else{return this.store.getLabel(item)}},newItem:function(args,parent){var pInfo={parent:parent,attribute:this.childrenAttrs[0]};return this.store.newItem(args,pInfo)},pasteItem:function(childItem,oldParentItem,newParentItem,bCopy,insertIndex){var store=this.store,parentAttr=this.childrenAttrs[0];if(oldParentItem){dojo.forEach(this.childrenAttrs,function(attr){if(store.containsValue(oldParentItem,attr,childItem)){if(!bCopy){var values=dojo.filter(store.getValues(oldParentItem,attr),function(x){return x!=childItem});store.setValues(oldParentItem,attr,values)}parentAttr=attr}})}if(newParentItem){if(typeof insertIndex=="number"){var childItems=store.getValues(newParentItem,parentAttr);childItems.splice(insertIndex,0,childItem);store.setValues(newParentItem,parentAttr,childItems)}else{store.setValues(newParentItem,parentAttr,store.getValues(newParentItem,parentAttr).concat(childItem))}}},onChange:function(item){},onChildrenChange:function(parent,newChildrenList){},onDelete:function(parent,newChildrenList){},_onNewItem:function(item,parentInfo){if(!parentInfo){return }this.getChildren(parentInfo.item,dojo.hitch(this,function(children){this.onChildrenChange(parentInfo.item,children)}))},_onDeleteItem:function(item){this.onDelete(item)},_onSetItem:function(item,attribute,oldValue,newValue){if(dojo.indexOf(this.childrenAttrs,attribute)!=-1){this.getChildren(item,dojo.hitch(this,function(children){this.onChildrenChange(item,children)}))}else{this.onChange(item)}}})}if(!dojo._hasResource["dijit.tree.ForestStoreModel"]){dojo._hasResource["dijit.tree.ForestStoreModel"]=true;dojo.provide("dijit.tree.ForestStoreModel");dojo.declare("dijit.tree.ForestStoreModel",dijit.tree.TreeStoreModel,{rootId:"$root$",rootLabel:"ROOT",query:null,constructor:function(params){this.root={store:this,root:true,id:params.rootId,label:params.rootLabel,children:params.rootChildren}},mayHaveChildren:function(item){return item===this.root||this.inherited(arguments)},getChildren:function(parentItem,callback,onError){if(parentItem===this.root){if(this.root.children){callback(this.root.children)}else{this.store.fetch({query:this.query,onComplete:dojo.hitch(this,function(items){this.root.children=items;callback(items)}),onError:onError})}}else{this.inherited(arguments)}},getIdentity:function(item){return(item===this.root)?this.root.id:this.inherited(arguments)},getLabel:function(item){return(item===this.root)?this.root.label:this.inherited(arguments)},newItem:function(args,parent){if(parent===this.root){this.onNewRootItem(args);return this.store.newItem(args)}else{return this.inherited(arguments)}},onNewRootItem:function(args){},pasteItem:function(childItem,oldParentItem,newParentItem,bCopy,insertIndex){if(oldParentItem===this.root){if(!bCopy){this.onLeaveRoot(childItem)}}dijit.tree.TreeStoreModel.prototype.pasteItem.call(this,childItem,oldParentItem===this.root?null:oldParentItem,newParentItem===this.root?null:newParentItem,bCopy,insertIndex);if(newParentItem===this.root){this.onAddToRoot(childItem)}},onAddToRoot:function(item){console.log(this,": item ",item," added to root")},onLeaveRoot:function(item){console.log(this,": item ",item," removed from root")},_requeryTop:function(){var oldChildren=this.root.children||[];this.store.fetch({query:this.query,onComplete:dojo.hitch(this,function(newChildren){this.root.children=newChildren;if(oldChildren.length!=newChildren.length||dojo.some(oldChildren,function(item,idx){return newChildren[idx]!=item})){this.onChildrenChange(this.root,newChildren)}})})},_onNewItem:function(item,parentInfo){this._requeryTop();this.inherited(arguments)},_onDeleteItem:function(item){if(dojo.indexOf(this.root.children,item)!=-1){this._requeryTop()}this.inherited(arguments)}})}if(!dojo._hasResource["dijit.Tree"]){dojo._hasResource["dijit.Tree"]=true;dojo.provide("dijit.Tree");dojo.declare("dijit._TreeNode",[dijit._Widget,dijit._Templated,dijit._Container,dijit._Contained],{item:null,isTreeNode:true,label:"",isExpandable:null,isExpanded:false,state:"UNCHECKED",templateString:'<div class="dijitTreeNode" waiRole="presentation"\r\n\t><div dojoAttachPoint="rowNode" class="dijitTreeRow" waiRole="presentation" dojoAttachEvent="onmouseenter:_onMouseEnter, onmouseleave:_onMouseLeave"\r\n\t\t><img src="${_blankGif}" alt="" dojoAttachPoint="expandoNode" class="dijitTreeExpando" waiRole="presentation"\r\n\t\t><span dojoAttachPoint="expandoNodeText" class="dijitExpandoText" waiRole="presentation"\r\n\t\t></span\r\n\t\t><span dojoAttachPoint="contentNode"\r\n\t\t\tclass="dijitTreeContent" waiRole="presentation">\r\n\t\t\t<img src="${_blankGif}" alt="" dojoAttachPoint="iconNode" class="dijitTreeIcon" waiRole="presentation"\r\n\t\t\t><span dojoAttachPoint="labelNode" class="dijitTreeLabel" wairole="treeitem" tabindex="-1" waiState="selected-false" dojoAttachEvent="onfocus:_onLabelFocus, onblur:_onLabelBlur"></span>\r\n\t\t</span\r\n\t></div>\r\n\t<div dojoAttachPoint="containerNode" class="dijitTreeContainer" waiRole="presentation" style="display: none;"></div>\r\n</div>\r\n',postCreate:function(){this.setLabelNode(this.label);this._setExpando();this._updateItemClasses(this.item);if(this.isExpandable){dijit.setWaiState(this.labelNode,"expanded",this.isExpanded);if(this==this.tree.rootNode){dijit.setWaitState(this.tree.domNode,"expanded",this.isExpanded)}}},_setIndentAttr:function(indent){this.indent=indent;var pixels=(Math.max(indent,0)*19)+"px";dojo.style(this.domNode,"backgroundPosition",pixels+" 0px");dojo.style(this.rowNode,dojo._isBodyLtr()?"paddingLeft":"paddingRight",pixels);dojo.forEach(this.getChildren(),function(child){child.attr("indent",indent+1)})},markProcessing:function(){this.state="LOADING";this._setExpando(true)},unmarkProcessing:function(){this._setExpando(false)},_updateItemClasses:function(item){var tree=this.tree,model=tree.model;if(tree._v10Compat&&item===model.root){item=null}if(this._iconClass){dojo.removeClass(this.iconNode,this._iconClass)}this._iconClass=tree.getIconClass(item,this.isExpanded);if(this._iconClass){dojo.addClass(this.iconNode,this._iconClass)}dojo.style(this.iconNode,tree.getIconStyle(item,this.isExpanded)||{});if(this._labelClass){dojo.removeClass(this.labelNode,this._labelClass)}this._labelClass=tree.getLabelClass(item,this.isExpanded);if(this._labelClass){dojo.addClass(this.labelNode,this._labelClass)}dojo.style(this.labelNode,tree.getLabelStyle(item,this.isExpanded)||{})},_updateLayout:function(){var parent=this.getParent();if(!parent||parent.rowNode.style.display=="none"){dojo.addClass(this.domNode,"dijitTreeIsRoot")}else{dojo.toggleClass(this.domNode,"dijitTreeIsLast",!this.getNextSibling())}},_setExpando:function(processing){var styles=["dijitTreeExpandoLoading","dijitTreeExpandoOpened","dijitTreeExpandoClosed","dijitTreeExpandoLeaf"];var _a11yStates=["*","-","+","*"];var idx=processing?0:(this.isExpandable?(this.isExpanded?1:2):3);dojo.forEach(styles,function(s){dojo.removeClass(this.expandoNode,s)},this);dojo.addClass(this.expandoNode,styles[idx]);this.expandoNodeText.innerHTML=_a11yStates[idx]},expand:function(){if(this.isExpanded){return }this._wipeOut&&this._wipeOut.stop();this.isExpanded=true;dijit.setWaiState(this.labelNode,"expanded","true");dijit.setWaiRole(this.containerNode,"group");dojo.addClass(this.contentNode,"dijitTreeContentExpanded");this._setExpando();this._updateItemClasses(this.item);if(this==this.tree.rootNode){dijit.setWaiState(this.tree.domNode,"expanded","true")}if(!this._wipeIn){this._wipeIn=dojo.fx.wipeIn({node:this.containerNode,duration:dijit.defaultDuration})}this._wipeIn.play()},collapse:function(){if(!this.isExpanded){return }this._wipeIn&&this._wipeIn.stop();this.isExpanded=false;dijit.setWaiState(this.labelNode,"expanded","false");if(this==this.tree.rootNode){dijit.setWaiState(this.tree.domNode,"expanded","false")}dojo.removeClass(this.contentNode,"dijitTreeContentExpanded");this._setExpando();this._updateItemClasses(this.item);if(!this._wipeOut){this._wipeOut=dojo.fx.wipeOut({node:this.containerNode,duration:dijit.defaultDuration})}this._wipeOut.play()},setLabelNode:function(label){this.labelNode.innerHTML="";this.labelNode.appendChild(dojo.doc.createTextNode(label))},indent:0,setChildItems:function(items){var tree=this.tree,model=tree.model;this.getChildren().forEach(function(child){dijit._Container.prototype.removeChild.call(this,child)},this);this.state="LOADED";if(items&&items.length>0){this.isExpandable=true;dojo.forEach(items,function(item){var id=model.getIdentity(item),existingNode=tree._itemNodeMap[id],node=(existingNode&&!existingNode.getParent())?existingNode:this.tree._createTreeNode({item:item,tree:tree,isExpandable:model.mayHaveChildren(item),label:tree.getLabel(item),indent:this.indent+1});if(existingNode){existingNode.attr("indent",this.indent+1)}this.addChild(node);tree._itemNodeMap[id]=node;if(this.tree._state(item)){tree._expandNode(node)}},this);dojo.forEach(this.getChildren(),function(child,idx){child._updateLayout()})}else{this.isExpandable=false}if(this._setExpando){this._setExpando(false)}if(this==tree.rootNode){var fc=this.tree.showRoot?this:this.getChildren()[0];if(fc){fc.setSelected(true);tree.lastFocused=fc}else{tree.domNode.setAttribute("tabIndex","0")}}},removeChild:function(node){this.inherited(arguments);var children=this.getChildren();if(children.length==0){this.isExpandable=false;this.collapse()}dojo.forEach(children,function(child){child._updateLayout()})},makeExpandable:function(){this.isExpandable=true;this._setExpando(false)},_onLabelFocus:function(evt){dojo.addClass(this.labelNode,"dijitTreeLabelFocused");this.tree._onNodeFocus(this)},_onLabelBlur:function(evt){dojo.removeClass(this.labelNode,"dijitTreeLabelFocused")},setSelected:function(selected){var labelNode=this.labelNode;labelNode.setAttribute("tabIndex",selected?"0":"-1");dijit.setWaiState(labelNode,"selected",selected);dojo.toggleClass(this.rowNode,"dijitTreeNodeSelected",selected)},_onMouseEnter:function(evt){dojo.addClass(this.rowNode,"dijitTreeNodeHover");this.tree._onNodeMouseEnter(this,evt)},_onMouseLeave:function(evt){dojo.removeClass(this.rowNode,"dijitTreeNodeHover");this.tree._onNodeMouseLeave(this,evt)}});dojo.declare("dijit.Tree",[dijit._Widget,dijit._Templated],{store:null,model:null,query:null,label:"",showRoot:true,childrenAttr:["children"],openOnClick:false,openOnDblClick:false,templateString:'<div class="dijitTreeContainer" waiRole="tree"\r\n\tdojoAttachEvent="onclick:_onClick,onkeypress:_onKeyPress,ondblclick:_onDblClick">\r\n</div>\r\n',isExpandable:true,isTree:true,persist:true,dndController:null,dndParams:["onDndDrop","itemCreator","onDndCancel","checkAcceptance","checkItemAcceptance","dragThreshold","betweenThreshold"],onDndDrop:null,itemCreator:null,onDndCancel:null,checkAcceptance:null,checkItemAcceptance:null,dragThreshold:0,betweenThreshold:0,_publish:function(topicName,message){dojo.publish(this.id,[dojo.mixin({tree:this,event:topicName},message||{})])},postMixInProperties:function(){this.tree=this;this._itemNodeMap={};if(!this.cookieName){this.cookieName=this.id+"SaveStateCookie"}},postCreate:function(){this._initState();if(!this.model){this._store2model()}this.connect(this.model,"onChange","_onItemChange");this.connect(this.model,"onChildrenChange","_onItemChildrenChange");this.connect(this.model,"onDelete","_onItemDelete");this._load();this.inherited(arguments);if(this.dndController){if(dojo.isString(this.dndController)){this.dndController=dojo.getObject(this.dndController)}var params={};for(var i=0;i<this.dndParams.length;i++){if(this[this.dndParams[i]]){params[this.dndParams[i]]=this[this.dndParams[i]]}}this.dndController=new this.dndController(this,params)}},_store2model:function(){this._v10Compat=true;dojo.deprecated("Tree: from version 2.0, should specify a model object rather than a store/query");var modelParams={id:this.id+"_ForestStoreModel",store:this.store,query:this.query,childrenAttrs:this.childrenAttr};if(this.params.mayHaveChildren){modelParams.mayHaveChildren=dojo.hitch(this,"mayHaveChildren")}if(this.params.getItemChildren){modelParams.getChildren=dojo.hitch(this,function(item,onComplete,onError){this.getItemChildren((this._v10Compat&&item===this.model.root)?null:item,onComplete,onError)})}this.model=new dijit.tree.ForestStoreModel(modelParams);this.showRoot=Boolean(this.label)},_load:function(){this.model.getRoot(dojo.hitch(this,function(item){var rn=this.rootNode=this.tree._createTreeNode({item:item,tree:this,isExpandable:true,label:this.label||this.getLabel(item),indent:this.showRoot?0:-1});if(!this.showRoot){rn.rowNode.style.display="none"}this.domNode.appendChild(rn.domNode);this._itemNodeMap[this.model.getIdentity(item)]=rn;rn._updateLayout();this._expandNode(rn)}),function(err){console.error(this,": error loading root: ",err)})},mayHaveChildren:function(item){},getItemChildren:function(parentItem,onComplete){},getLabel:function(item){return this.model.getLabel(item)},getIconClass:function(item,opened){return(!item||this.model.mayHaveChildren(item))?(opened?"dijitFolderOpened":"dijitFolderClosed"):"dijitLeaf"},getLabelClass:function(item,opened){},getIconStyle:function(item,opened){},getLabelStyle:function(item,opened){},_onKeyPress:function(e){if(e.altKey){return }var dk=dojo.keys;var treeNode=dijit.getEnclosingWidget(e.target);if(!treeNode){return }var key=e.charOrCode;if(typeof key=="string"){if(!e.altKey&&!e.ctrlKey&&!e.shiftKey&&!e.metaKey){this._onLetterKeyNav({node:treeNode,key:key.toLowerCase()});dojo.stopEvent(e)}}else{var map=this._keyHandlerMap;if(!map){map={};map[dk.ENTER]="_onEnterKey";map[this.isLeftToRight()?dk.LEFT_ARROW:dk.RIGHT_ARROW]="_onLeftArrow";map[this.isLeftToRight()?dk.RIGHT_ARROW:dk.LEFT_ARROW]="_onRightArrow";map[dk.UP_ARROW]="_onUpArrow";map[dk.DOWN_ARROW]="_onDownArrow";map[dk.HOME]="_onHomeKey";map[dk.END]="_onEndKey";this._keyHandlerMap=map}if(this._keyHandlerMap[key]){this[this._keyHandlerMap[key]]({node:treeNode,item:treeNode.item});dojo.stopEvent(e)}}},_onEnterKey:function(message){this._publish("execute",{item:message.item,node:message.node});this.onClick(message.item,message.node)},_onDownArrow:function(message){var node=this._getNextNode(message.node);if(node&&node.isTreeNode){this.focusNode(node)}},_onUpArrow:function(message){var node=message.node;var previousSibling=node.getPreviousSibling();if(previousSibling){node=previousSibling;while(node.isExpandable&&node.isExpanded&&node.hasChildren()){var children=node.getChildren();node=children[children.length-1]}}else{var parent=node.getParent();if(!(!this.showRoot&&parent===this.rootNode)){node=parent}}if(node&&node.isTreeNode){this.focusNode(node)}},_onRightArrow:function(message){var node=message.node;if(node.isExpandable&&!node.isExpanded){this._expandNode(node)}else{if(node.hasChildren()){node=node.getChildren()[0];if(node&&node.isTreeNode){this.focusNode(node)}}}},_onLeftArrow:function(message){var node=message.node;if(node.isExpandable&&node.isExpanded){this._collapseNode(node)}else{var parent=node.getParent();if(parent&&parent.isTreeNode&&!(!this.showRoot&&parent===this.rootNode)){this.focusNode(parent)}}},_onHomeKey:function(){var node=this._getRootOrFirstNode();if(node){this.focusNode(node)}},_onEndKey:function(message){var node=this.rootNode;while(node.isExpanded){var c=node.getChildren();node=c[c.length-1]}if(node&&node.isTreeNode){this.focusNode(node)}},_onLetterKeyNav:function(message){var node=message.node,startNode=node,key=message.key;do{node=this._getNextNode(node);if(!node){node=this._getRootOrFirstNode()}}while(node!==startNode&&(node.label.charAt(0).toLowerCase()!=key));if(node&&node.isTreeNode){if(node!==startNode){this.focusNode(node)}}},_onClick:function(e){var domElement=e.target;var nodeWidget=dijit.getEnclosingWidget(domElement);if(!nodeWidget||!nodeWidget.isTreeNode){return }if((this.openOnClick&&nodeWidget.isExpandable)||(domElement==nodeWidget.expandoNode||domElement==nodeWidget.expandoNodeText)){if(nodeWidget.isExpandable){this._onExpandoClick({node:nodeWidget})}}else{this._publish("execute",{item:nodeWidget.item,node:nodeWidget});this.onClick(nodeWidget.item,nodeWidget);this.focusNode(nodeWidget)}dojo.stopEvent(e)},_onDblClick:function(e){var domElement=e.target;var nodeWidget=dijit.getEnclosingWidget(domElement);if(!nodeWidget||!nodeWidget.isTreeNode){return }if((this.openOnDblClick&&nodeWidget.isExpandable)||(domElement==nodeWidget.expandoNode||domElement==nodeWidget.expandoNodeText)){if(nodeWidget.isExpandable){this._onExpandoClick({node:nodeWidget})}}else{this._publish("execute",{item:nodeWidget.item,node:nodeWidget});this.onDblClick(nodeWidget.item,nodeWidget);this.focusNode(nodeWidget)}dojo.stopEvent(e)},_onExpandoClick:function(message){var node=message.node;this.focusNode(node);if(node.isExpanded){this._collapseNode(node)}else{this._expandNode(node)}},onClick:function(item,node){},onDblClick:function(item,node){},onOpen:function(item,node){},onClose:function(item,node){},_getNextNode:function(node){if(node.isExpandable&&node.isExpanded&&node.hasChildren()){return node.getChildren()[0]}else{while(node&&node.isTreeNode){var returnNode=node.getNextSibling();if(returnNode){return returnNode}node=node.getParent()}return null}},_getRootOrFirstNode:function(){return this.showRoot?this.rootNode:this.rootNode.getChildren()[0]},_collapseNode:function(node){if(node.isExpandable){if(node.state=="LOADING"){return }node.collapse();this.onClose(node.item,node);if(node.item){this._state(node.item,false);this._saveState()}}},_expandNode:function(node){if(!node.isExpandable){return }var model=this.model,item=node.item;switch(node.state){case"LOADING":return ;case"UNCHECKED":node.markProcessing();var _this=this;model.getChildren(item,function(items){node.unmarkProcessing();node.setChildItems(items);_this._expandNode(node)},function(err){console.error(_this,": error loading root children: ",err)});break;default:node.expand();this.onOpen(node.item,node);if(item){this._state(item,true);this._saveState()}}},focusNode:function(node){node.labelNode.focus()},_onNodeFocus:function(node){if(node){if(node!=this.lastFocused&&!!this.lastFocused){this.lastFocused.setSelected(false)}node.setSelected(true);this.lastFocused=node}},_onNodeMouseEnter:function(node){},_onNodeMouseLeave:function(node){},_onItemChange:function(item){var model=this.model,identity=model.getIdentity(item),node=this._itemNodeMap[identity];if(node){node.setLabelNode(this.getLabel(item));node._updateItemClasses(item)}},_onItemChildrenChange:function(parent,newChildrenList){var model=this.model,identity=model.getIdentity(parent),parentNode=this._itemNodeMap[identity];if(parentNode){parentNode.setChildItems(newChildrenList)}},_onItemDelete:function(item){var model=this.model,identity=model.getIdentity(item),node=this._itemNodeMap[identity];if(node){var parent=node.getParent();if(parent){parent.removeChild(node)}node.destroyRecursive();delete this._itemNodeMap[identity]}},_initState:function(){if(this.persist){var cookie=dojo.cookie(this.cookieName);this._openedItemIds={};if(cookie){dojo.forEach(cookie.split(","),function(item){this._openedItemIds[item]=true},this)}}},_state:function(item,expanded){if(!this.persist){return false}var id=this.model.getIdentity(item);if(arguments.length===1){return this._openedItemIds[id]}if(expanded){this._openedItemIds[id]=true}else{delete this._openedItemIds[id]}},_saveState:function(){if(!this.persist){return }var ary=[];for(var id in this._openedItemIds){ary.push(id)}dojo.cookie(this.cookieName,ary.join(","),{expires:365})},destroy:function(){if(this.rootNode){this.rootNode.destroyRecursive()}if(this.dndController&&!dojo.isString(this.dndController)){this.dndController.destroy()}this.rootNode=null;this.inherited(arguments)},destroyRecursive:function(){this.destroy()},_createTreeNode:function(args){return new dijit._TreeNode(args)}})}if(!dojo._hasResource["dojox.grid.compat._grid.lib"]){dojo._hasResource["dojox.grid.compat._grid.lib"]=true;dojo.provide("dojox.grid.compat._grid.lib");dojo.mixin(dojox.grid,{na:"...",nop:function(){},getTdIndex:function(td){return td.cellIndex>=0?td.cellIndex:dojo.indexOf(td.parentNode.cells,td)},getTrIndex:function(tr){return tr.rowIndex>=0?tr.rowIndex:dojo.indexOf(tr.parentNode.childNodes,tr)},getTr:function(rowOwner,index){return rowOwner&&((rowOwner.rows||0)[index]||rowOwner.childNodes[index])},getTd:function(rowOwner,rowIndex,cellIndex){return(dojox.grid.getTr(rowOwner,rowIndex)||0)[cellIndex]},findTable:function(node){for(var n=node;n&&n.tagName!="TABLE";n=n.parentNode){}return n},ascendDom:function(inNode,inWhile){for(var n=inNode;n&&inWhile(n);n=n.parentNode){}return n},makeNotTagName:function(inTagName){var name=inTagName.toUpperCase();return function(node){return node.tagName!=name}},fire:function(ob,ev,args){var fn=ob&&ev&&ob[ev];return fn&&(args?fn.apply(ob,args):ob[ev]())},setStyleText:function(inNode,inStyleText){if(inNode.style.cssText==undefined){inNode.setAttribute("style",inStyleText)}else{inNode.style.cssText=inStyleText}},getStyleText:function(inNode,inStyleText){return(inNode.style.cssText==undefined?inNode.getAttribute("style"):inNode.style.cssText)},setStyle:function(inElement,inStyle,inValue){if(inElement&&inElement.style[inStyle]!=inValue){inElement.style[inStyle]=inValue}},setStyleHeightPx:function(inElement,inHeight){if(inHeight>=0){dojox.grid.setStyle(inElement,"height",inHeight+"px")}},mouseEvents:["mouseover","mouseout","mousedown","mouseup","click","dblclick","contextmenu"],keyEvents:["keyup","keydown","keypress"],funnelEvents:function(inNode,inObject,inMethod,inEvents){var evts=(inEvents?inEvents:dojox.grid.mouseEvents.concat(dojox.grid.keyEvents));for(var i=0,l=evts.length;i<l;i++){dojo.connect(inNode,"on"+evts[i],inObject,inMethod)}},removeNode:function(inNode){inNode=dojo.byId(inNode);inNode&&inNode.parentNode&&inNode.parentNode.removeChild(inNode);return inNode},getScrollbarWidth:function(){if(this._scrollBarWidth){return this._scrollBarWidth}this._scrollBarWidth=18;try{var e=document.createElement("div");e.style.cssText="top:0;left:0;width:100px;height:100px;overflow:scroll;position:absolute;visibility:hidden;";document.body.appendChild(e);this._scrollBarWidth=e.offsetWidth-e.clientWidth;document.body.removeChild(e);delete e}catch(ex){}return this._scrollBarWidth},getRef:function(name,create,context){var obj=context||dojo.global,parts=name.split("."),prop=parts.pop();for(var i=0,p;obj&&(p=parts[i]);i++){obj=(p in obj?obj[p]:(create?obj[p]={}:undefined))}return{obj:obj,prop:prop}},getProp:function(name,create,context){with(dojox.grid.getRef(name,create,context)){return(obj)&&(prop)&&(prop in obj?obj[prop]:(create?obj[prop]={}:undefined))}},indexInParent:function(inNode){var i=0,n,p=inNode.parentNode;while((n=p.childNodes[i++])){if(n==inNode){return i-1}}return -1},cleanNode:function(inNode){if(!inNode){return }var filter=function(inW){return inW.domNode&&dojo.isDescendant(inW.domNode,inNode,true)};var ws=dijit.registry.filter(filter);for(var i=0,w;(w=ws[i]);i++){w.destroy()}delete ws},getTagName:function(inNodeOrId){var node=dojo.byId(inNodeOrId);return(node&&node.tagName?node.tagName.toLowerCase():"")},nodeKids:function(inNode,inTag){var result=[];var i=0,n;while((n=inNode.childNodes[i++])){if(dojox.grid.getTagName(n)==inTag){result.push(n)}}return result},divkids:function(inNode){return dojox.grid.nodeKids(inNode,"div")},focusSelectNode:function(inNode){try{dojox.grid.fire(inNode,"focus");dojox.grid.fire(inNode,"select")}catch(e){}},whenIdle:function(){setTimeout(dojo.hitch.apply(dojo,arguments),0)},arrayCompare:function(inA,inB){for(var i=0,l=inA.length;i<l;i++){if(inA[i]!=inB[i]){return false}}return(inA.length==inB.length)},arrayInsert:function(inArray,inIndex,inValue){if(inArray.length<=inIndex){inArray[inIndex]=inValue}else{inArray.splice(inIndex,0,inValue)}},arrayRemove:function(inArray,inIndex){inArray.splice(inIndex,1)},arraySwap:function(inArray,inI,inJ){var cache=inArray[inI];inArray[inI]=inArray[inJ];inArray[inJ]=cache},initTextSizePoll:function(inInterval){var f=document.createElement("div");with(f.style){top="0px";left="0px";position="absolute";visibility="hidden"}f.innerHTML="TheQuickBrownFoxJumpedOverTheLazyDog";document.body.appendChild(f);var fw=f.offsetWidth;var job=function(){if(f.offsetWidth!=fw){fw=f.offsetWidth;dojox.grid.textSizeChanged()}};window.setInterval(job,inInterval||200);dojox.grid.initTextSizePoll=dojox.grid.nop},textSizeChanged:function(){}});dojox.grid.jobs={cancel:function(inHandle){if(inHandle){window.clearTimeout(inHandle)}},jobs:[],job:function(inName,inDelay,inJob){dojox.grid.jobs.cancelJob(inName);var job=function(){delete dojox.grid.jobs.jobs[inName];inJob()};dojox.grid.jobs.jobs[inName]=setTimeout(job,inDelay)},cancelJob:function(inName){dojox.grid.jobs.cancel(dojox.grid.jobs.jobs[inName])}}}if(!dojo._hasResource["dojox.grid.compat._grid.scroller"]){dojo._hasResource["dojox.grid.compat._grid.scroller"]=true;dojo.provide("dojox.grid.compat._grid.scroller");dojo.declare("dojox.grid.scroller.base",null,{constructor:function(){this.pageHeights=[];this.stack=[]},rowCount:0,defaultRowHeight:10,keepRows:100,contentNode:null,scrollboxNode:null,defaultPageHeight:0,keepPages:10,pageCount:0,windowHeight:0,firstVisibleRow:0,lastVisibleRow:0,page:0,pageTop:0,init:function(inRowCount,inKeepRows,inRowsPerPage){switch(arguments.length){case 3:this.rowsPerPage=inRowsPerPage;case 2:this.keepRows=inKeepRows;case 1:this.rowCount=inRowCount}this.defaultPageHeight=this.defaultRowHeight*this.rowsPerPage;this.pageCount=Math.ceil(this.rowCount/this.rowsPerPage);this.setKeepInfo(this.keepRows);this.invalidate();if(this.scrollboxNode){this.scrollboxNode.scrollTop=0;this.scroll(0);this.scrollboxNode.onscroll=dojo.hitch(this,"onscroll")}},setKeepInfo:function(inKeepRows){this.keepRows=inKeepRows;this.keepPages=!this.keepRows?this.keepRows:Math.max(Math.ceil(this.keepRows/this.rowsPerPage),2)},invalidate:function(){this.invalidateNodes();this.pageHeights=[];this.height=(this.pageCount?(this.pageCount-1)*this.defaultPageHeight+this.calcLastPageHeight():0);this.resize()},updateRowCount:function(inRowCount){this.invalidateNodes();this.rowCount=inRowCount;var oldPageCount=this.pageCount;this.pageCount=Math.ceil(this.rowCount/this.rowsPerPage);if(this.pageCount<oldPageCount){for(var i=oldPageCount-1;i>=this.pageCount;i--){this.height-=this.getPageHeight(i);delete this.pageHeights[i]}}else{if(this.pageCount>oldPageCount){this.height+=this.defaultPageHeight*(this.pageCount-oldPageCount-1)+this.calcLastPageHeight()}}this.resize()},pageExists:function(inPageIndex){},measurePage:function(inPageIndex){},positionPage:function(inPageIndex,inPos){},repositionPages:function(inPageIndex){},installPage:function(inPageIndex){},preparePage:function(inPageIndex,inPos,inReuseNode){},renderPage:function(inPageIndex){},removePage:function(inPageIndex){},pacify:function(inShouldPacify){},pacifying:false,pacifyTicks:200,setPacifying:function(inPacifying){if(this.pacifying!=inPacifying){this.pacifying=inPacifying;this.pacify(this.pacifying)}},startPacify:function(){this.startPacifyTicks=new Date().getTime()},doPacify:function(){var result=(new Date().getTime()-this.startPacifyTicks)>this.pacifyTicks;this.setPacifying(true);this.startPacify();return result},endPacify:function(){this.setPacifying(false)},resize:function(){if(this.scrollboxNode){this.windowHeight=this.scrollboxNode.clientHeight}dojox.grid.setStyleHeightPx(this.contentNode,this.height)},calcLastPageHeight:function(){if(!this.pageCount){return 0}var lastPage=this.pageCount-1;var lastPageHeight=((this.rowCount%this.rowsPerPage)||(this.rowsPerPage))*this.defaultRowHeight;this.pageHeights[lastPage]=lastPageHeight;return lastPageHeight},updateContentHeight:function(inDh){this.height+=inDh;this.resize()},updatePageHeight:function(inPageIndex){if(this.pageExists(inPageIndex)){var oh=this.getPageHeight(inPageIndex);var h=(this.measurePage(inPageIndex))||(oh);this.pageHeights[inPageIndex]=h;if((h)&&(oh!=h)){this.updateContentHeight(h-oh);this.repositionPages(inPageIndex)}}},rowHeightChanged:function(inRowIndex){this.updatePageHeight(Math.floor(inRowIndex/this.rowsPerPage))},invalidateNodes:function(){while(this.stack.length){this.destroyPage(this.popPage())}},createPageNode:function(){var p=document.createElement("div");p.style.position="absolute";p.style[dojo._isBodyLtr()?"left":"right"]="0";return p},getPageHeight:function(inPageIndex){var ph=this.pageHeights[inPageIndex];return(ph!==undefined?ph:this.defaultPageHeight)},pushPage:function(inPageIndex){return this.stack.push(inPageIndex)},popPage:function(){return this.stack.shift()},findPage:function(inTop){var i=0,h=0;for(var ph=0;i<this.pageCount;i++,h+=ph){ph=this.getPageHeight(i);if(h+ph>=inTop){break}}this.page=i;this.pageTop=h},buildPage:function(inPageIndex,inReuseNode,inPos){this.preparePage(inPageIndex,inReuseNode);this.positionPage(inPageIndex,inPos);this.installPage(inPageIndex);this.renderPage(inPageIndex);this.pushPage(inPageIndex)},needPage:function(inPageIndex,inPos){var h=this.getPageHeight(inPageIndex),oh=h;if(!this.pageExists(inPageIndex)){this.buildPage(inPageIndex,this.keepPages&&(this.stack.length>=this.keepPages),inPos);h=this.measurePage(inPageIndex)||h;this.pageHeights[inPageIndex]=h;if(h&&(oh!=h)){this.updateContentHeight(h-oh)}}else{this.positionPage(inPageIndex,inPos)}return h},onscroll:function(){this.scroll(this.scrollboxNode.scrollTop)},scroll:function(inTop){this.startPacify();this.findPage(inTop);var h=this.height;var b=this.getScrollBottom(inTop);for(var p=this.page,y=this.pageTop;(p<this.pageCount)&&((b<0)||(y<b));p++){y+=this.needPage(p,y)}this.firstVisibleRow=this.getFirstVisibleRow(this.page,this.pageTop,inTop);this.lastVisibleRow=this.getLastVisibleRow(p-1,y,b);if(h!=this.height){this.repositionPages(p-1)}this.endPacify()},getScrollBottom:function(inTop){return(this.windowHeight>=0?inTop+this.windowHeight:-1)},processNodeEvent:function(e,inNode){var t=e.target;while(t&&(t!=inNode)&&t.parentNode&&(t.parentNode.parentNode!=inNode)){t=t.parentNode}if(!t||!t.parentNode||(t.parentNode.parentNode!=inNode)){return false}var page=t.parentNode;e.topRowIndex=page.pageIndex*this.rowsPerPage;e.rowIndex=e.topRowIndex+dojox.grid.indexInParent(t);e.rowTarget=t;return true},processEvent:function(e){return this.processNodeEvent(e,this.contentNode)},dummy:0});dojo.declare("dojox.grid.scroller",dojox.grid.scroller.base,{constructor:function(){this.pageNodes=[]},renderRow:function(inRowIndex,inPageNode){},removeRow:function(inRowIndex){},getDefaultNodes:function(){return this.pageNodes},getDefaultPageNode:function(inPageIndex){return this.getDefaultNodes()[inPageIndex]},positionPageNode:function(inNode,inPos){inNode.style.top=inPos+"px"},getPageNodePosition:function(inNode){return inNode.offsetTop},repositionPageNodes:function(inPageIndex,inNodes){var last=0;for(var i=0;i<this.stack.length;i++){last=Math.max(this.stack[i],last)}var n=inNodes[inPageIndex];var y=(n?this.getPageNodePosition(n)+this.getPageHeight(inPageIndex):0);for(var p=inPageIndex+1;p<=last;p++){n=inNodes[p];if(n){if(this.getPageNodePosition(n)==y){return }this.positionPage(p,y)}y+=this.getPageHeight(p)}},invalidatePageNode:function(inPageIndex,inNodes){var p=inNodes[inPageIndex];if(p){delete inNodes[inPageIndex];this.removePage(inPageIndex,p);dojox.grid.cleanNode(p);p.innerHTML=""}return p},preparePageNode:function(inPageIndex,inReusePageIndex,inNodes){var p=(inReusePageIndex===null?this.createPageNode():this.invalidatePageNode(inReusePageIndex,inNodes));p.pageIndex=inPageIndex;p.id=(this._pageIdPrefix||"")+"page-"+inPageIndex;inNodes[inPageIndex]=p},pageExists:function(inPageIndex){return Boolean(this.getDefaultPageNode(inPageIndex))},measurePage:function(inPageIndex){var p=this.getDefaultPageNode(inPageIndex);var h=p.offsetHeight;if(!this._defaultRowHeight){if(p){this._defaultRowHeight=8;var fr=p.firstChild;if(fr){var text=dojo.doc.createTextNode("T");fr.appendChild(text);this._defaultRowHeight=fr.offsetHeight;fr.removeChild(text)}}}return(this.rowsPerPage==h)?(h*this._defaultRowHeight):h},positionPage:function(inPageIndex,inPos){this.positionPageNode(this.getDefaultPageNode(inPageIndex),inPos)},repositionPages:function(inPageIndex){this.repositionPageNodes(inPageIndex,this.getDefaultNodes())},preparePage:function(inPageIndex,inReuseNode){this.preparePageNode(inPageIndex,(inReuseNode?this.popPage():null),this.getDefaultNodes())},installPage:function(inPageIndex){this.contentNode.appendChild(this.getDefaultPageNode(inPageIndex))},destroyPage:function(inPageIndex){var p=this.invalidatePageNode(inPageIndex,this.getDefaultNodes());dojox.grid.removeNode(p)},renderPage:function(inPageIndex){var node=this.pageNodes[inPageIndex];for(var i=0,j=inPageIndex*this.rowsPerPage;(i<this.rowsPerPage)&&(j<this.rowCount);i++,j++){this.renderRow(j,node)}},removePage:function(inPageIndex){for(var i=0,j=inPageIndex*this.rowsPerPage;i<this.rowsPerPage;i++,j++){this.removeRow(j)}},getPageRow:function(inPage){return inPage*this.rowsPerPage},getLastPageRow:function(inPage){return Math.min(this.rowCount,this.getPageRow(inPage+1))-1},getFirstVisibleRowNodes:function(inPage,inPageTop,inScrollTop,inNodes){var row=this.getPageRow(inPage);var rows=dojox.grid.divkids(inNodes[inPage]);for(var i=0,l=rows.length;i<l&&inPageTop<inScrollTop;i++,row++){inPageTop+=rows[i].offsetHeight}return(row?row-1:row)},getFirstVisibleRow:function(inPage,inPageTop,inScrollTop){if(!this.pageExists(inPage)){return 0}return this.getFirstVisibleRowNodes(inPage,inPageTop,inScrollTop,this.getDefaultNodes())},getLastVisibleRowNodes:function(inPage,inBottom,inScrollBottom,inNodes){var row=this.getLastPageRow(inPage);var rows=dojox.grid.divkids(inNodes[inPage]);for(var i=rows.length-1;i>=0&&inBottom>inScrollBottom;i--,row--){inBottom-=rows[i].offsetHeight}return row+1},getLastVisibleRow:function(inPage,inBottom,inScrollBottom){if(!this.pageExists(inPage)){return 0}return this.getLastVisibleRowNodes(inPage,inBottom,inScrollBottom,this.getDefaultNodes())},findTopRowForNodes:function(inScrollTop,inNodes){var rows=dojox.grid.divkids(inNodes[this.page]);for(var i=0,l=rows.length,t=this.pageTop,h;i<l;i++){h=rows[i].offsetHeight;t+=h;if(t>=inScrollTop){this.offset=h-(t-inScrollTop);return i+this.page*this.rowsPerPage}}return -1},findScrollTopForNodes:function(inRow,inNodes){var rowPage=Math.floor(inRow/this.rowsPerPage);var t=0;for(var i=0;i<rowPage;i++){t+=this.getPageHeight(i)}this.pageTop=t;this.needPage(rowPage,this.pageTop);var rows=dojox.grid.divkids(inNodes[rowPage]);var r=inRow-this.rowsPerPage*rowPage;for(var i=0,l=rows.length;i<l&&i<r;i++){t+=rows[i].offsetHeight}return t},findTopRow:function(inScrollTop){return this.findTopRowForNodes(inScrollTop,this.getDefaultNodes())},findScrollTop:function(inRow){return this.findScrollTopForNodes(inRow,this.getDefaultNodes())},dummy:0});dojo.declare("dojox.grid.scroller.columns",dojox.grid.scroller,{constructor:function(inContentNodes){this.setContentNodes(inContentNodes)},setContentNodes:function(inNodes){this.contentNodes=inNodes;this.colCount=(this.contentNodes?this.contentNodes.length:0);this.pageNodes=[];for(var i=0;i<this.colCount;i++){this.pageNodes[i]=[]}},getDefaultNodes:function(){return this.pageNodes[0]||[]},scroll:function(inTop){if(this.colCount){dojox.grid.scroller.prototype.scroll.call(this,inTop)}},resize:function(){if(this.scrollboxNode){this.windowHeight=this.scrollboxNode.clientHeight}for(var i=0;i<this.colCount;i++){dojox.grid.setStyleHeightPx(this.contentNodes[i],this.height)}},positionPage:function(inPageIndex,inPos){for(var i=0;i<this.colCount;i++){this.positionPageNode(this.pageNodes[i][inPageIndex],inPos)}},preparePage:function(inPageIndex,inReuseNode){var p=(inReuseNode?this.popPage():null);for(var i=0;i<this.colCount;i++){this.preparePageNode(inPageIndex,p,this.pageNodes[i])}},installPage:function(inPageIndex){for(var i=0;i<this.colCount;i++){this.contentNodes[i].appendChild(this.pageNodes[i][inPageIndex])}},destroyPage:function(inPageIndex){for(var i=0;i<this.colCount;i++){dojox.grid.removeNode(this.invalidatePageNode(inPageIndex,this.pageNodes[i]))}},renderPage:function(inPageIndex){var nodes=[];for(var i=0;i<this.colCount;i++){nodes[i]=this.pageNodes[i][inPageIndex]}for(var i=0,j=inPageIndex*this.rowsPerPage;(i<this.rowsPerPage)&&(j<this.rowCount);i++,j++){this.renderRow(j,nodes)}}})}if(!dojo._hasResource["dojox.grid.compat._grid.drag"]){dojo._hasResource["dojox.grid.compat._grid.drag"]=true;dojo.provide("dojox.grid.compat._grid.drag");(function(){var dgdrag=dojox.grid.drag={};dgdrag.dragging=false;dgdrag.hysteresis=2;dgdrag.capture=function(inElement){if(inElement.setCapture){inElement.setCapture()}else{document.addEventListener("mousemove",inElement.onmousemove,true);document.addEventListener("mouseup",inElement.onmouseup,true);document.addEventListener("click",inElement.onclick,true)}};dgdrag.release=function(inElement){if(inElement.releaseCapture){inElement.releaseCapture()}else{document.removeEventListener("click",inElement.onclick,true);document.removeEventListener("mouseup",inElement.onmouseup,true);document.removeEventListener("mousemove",inElement.onmousemove,true)}};dgdrag.start=function(inElement,inOnDrag,inOnEnd,inEvent,inOnStart){if(!inElement||dgdrag.dragging){console.debug("failed to start drag: bad input node or already dragging");return }dgdrag.dragging=true;dgdrag.elt=inElement;dgdrag.events={drag:inOnDrag||dojox.grid.nop,end:inOnEnd||dojox.grid.nop,start:inOnStart||dojox.grid.nop,oldmove:inElement.onmousemove,oldup:inElement.onmouseup,oldclick:inElement.onclick};dgdrag.positionX=(inEvent&&("screenX" in inEvent)?inEvent.screenX:false);dgdrag.positionY=(inEvent&&("screenY" in inEvent)?inEvent.screenY:false);dgdrag.started=(dgdrag.position===false);inElement.onmousemove=dgdrag.mousemove;inElement.onmouseup=dgdrag.mouseup;inElement.onclick=dgdrag.click;dgdrag.capture(dgdrag.elt)};dgdrag.end=function(){dgdrag.release(dgdrag.elt);dgdrag.elt.onmousemove=dgdrag.events.oldmove;dgdrag.elt.onmouseup=dgdrag.events.oldup;dgdrag.elt.onclick=dgdrag.events.oldclick;dgdrag.elt=null;try{if(dgdrag.started){dgdrag.events.end()}}finally{dgdrag.dragging=false}};dgdrag.calcDelta=function(inEvent){inEvent.deltaX=inEvent.screenX-dgdrag.positionX;inEvent.deltaY=inEvent.screenY-dgdrag.positionY};dgdrag.hasMoved=function(inEvent){return Math.abs(inEvent.deltaX)+Math.abs(inEvent.deltaY)>dgdrag.hysteresis};dgdrag.mousemove=function(inEvent){inEvent=dojo.fixEvent(inEvent);dojo.stopEvent(inEvent);dgdrag.calcDelta(inEvent);if((!dgdrag.started)&&(dgdrag.hasMoved(inEvent))){dgdrag.events.start(inEvent);dgdrag.started=true}if(dgdrag.started){dgdrag.events.drag(inEvent)}};dgdrag.mouseup=function(inEvent){dojo.stopEvent(dojo.fixEvent(inEvent));dgdrag.end()};dgdrag.click=function(inEvent){dojo.stopEvent(dojo.fixEvent(inEvent))}})()}if(!dojo._hasResource["dojox.grid.compat._grid.builder"]){dojo._hasResource["dojox.grid.compat._grid.builder"]=true;dojo.provide("dojox.grid.compat._grid.builder");dojo.declare("dojox.grid.Builder",null,{constructor:function(inView){this.view=inView;this.grid=inView.grid},view:null,_table:'<table class="dojoxGrid-row-table" border="0" cellspacing="0" cellpadding="0" role="wairole:presentation">',generateCellMarkup:function(inCell,inMoreStyles,inMoreClasses,isHeader){var result=[],html;if(isHeader){html=['<th tabIndex="-1" role="wairole:columnheader"']}else{html=['<td tabIndex="-1" role="wairole:gridcell"']}inCell.colSpan&&html.push(' colspan="',inCell.colSpan,'"');inCell.rowSpan&&html.push(' rowspan="',inCell.rowSpan,'"');html.push(' class="dojoxGrid-cell ');inCell.classes&&html.push(inCell.classes," ");inMoreClasses&&html.push(inMoreClasses," ");result.push(html.join(""));result.push("");html=['" idx="',inCell.index,'" style="'];html.push(inCell.styles,inMoreStyles||"");inCell.unitWidth&&html.push("width:",inCell.unitWidth,";");result.push(html.join(""));result.push("");html=['"'];inCell.attrs&&html.push(" ",inCell.attrs);html.push(">");result.push(html.join(""));result.push("");result.push("</td>");return result},isCellNode:function(inNode){return Boolean(inNode&&inNode.getAttribute&&inNode.getAttribute("idx"))},getCellNodeIndex:function(inCellNode){return inCellNode?Number(inCellNode.getAttribute("idx")):-1},getCellNode:function(inRowNode,inCellIndex){for(var i=0,row;row=dojox.grid.getTr(inRowNode.firstChild,i);i++){for(var j=0,cell;cell=row.cells[j];j++){if(this.getCellNodeIndex(cell)==inCellIndex){return cell}}}},findCellTarget:function(inSourceNode,inTopNode){var n=inSourceNode;while(n&&(!this.isCellNode(n)||(dojox.grid.gridViewTag in n.offsetParent.parentNode&&n.offsetParent.parentNode[dojox.grid.gridViewTag]!=this.view.id))&&(n!=inTopNode)){n=n.parentNode}return n!=inTopNode?n:null},baseDecorateEvent:function(e){e.dispatch="do"+e.type;e.grid=this.grid;e.sourceView=this.view;e.cellNode=this.findCellTarget(e.target,e.rowNode);e.cellIndex=this.getCellNodeIndex(e.cellNode);e.cell=(e.cellIndex>=0?this.grid.getCell(e.cellIndex):null)},findTarget:function(inSource,inTag){var n=inSource;while(n&&(n!=this.domNode)&&(!(inTag in n)||(dojox.grid.gridViewTag in n&&n[dojox.grid.gridViewTag]!=this.view.id))){n=n.parentNode}return(n!=this.domNode)?n:null},findRowTarget:function(inSource){return this.findTarget(inSource,dojox.grid.rowIndexTag)},isIntraNodeEvent:function(e){try{return(e.cellNode&&e.relatedTarget&&dojo.isDescendant(e.relatedTarget,e.cellNode))}catch(x){return false}},isIntraRowEvent:function(e){try{var row=e.relatedTarget&&this.findRowTarget(e.relatedTarget);return !row&&(e.rowIndex==-1)||row&&(e.rowIndex==row.gridRowIndex)}catch(x){return false}},dispatchEvent:function(e){if(e.dispatch in this){return this[e.dispatch](e)}},domouseover:function(e){if(e.cellNode&&(e.cellNode!=this.lastOverCellNode)){this.lastOverCellNode=e.cellNode;this.grid.onMouseOver(e)}this.grid.onMouseOverRow(e)},domouseout:function(e){if(e.cellNode&&(e.cellNode==this.lastOverCellNode)&&!this.isIntraNodeEvent(e,this.lastOverCellNode)){this.lastOverCellNode=null;this.grid.onMouseOut(e);if(!this.isIntraRowEvent(e)){this.grid.onMouseOutRow(e)}}},domousedown:function(e){if(e.cellNode){this.grid.onMouseDown(e)}this.grid.onMouseDownRow(e)}});dojo.declare("dojox.grid.contentBuilder",dojox.grid.Builder,{update:function(){this.prepareHtml()},prepareHtml:function(){var defaultGet=this.grid.get,rows=this.view.structure.rows;for(var j=0,row;(row=rows[j]);j++){for(var i=0,cell;(cell=row[i]);i++){cell.get=cell.get||(cell.value==undefined)&&defaultGet;cell.markup=this.generateCellMarkup(cell,cell.cellStyles,cell.cellClasses,false)}}},generateHtml:function(inDataIndex,inRowIndex){var html=[this._table],v=this.view,obr=v.onBeforeRow,rows=v.structure.rows;obr&&obr(inRowIndex,rows);for(var j=0,row;(row=rows[j]);j++){if(row.hidden||row.header){continue}html.push(!row.invisible?"<tr>":'<tr class="dojoxGrid-invisible">');for(var i=0,cell,m,cc,cs;(cell=row[i]);i++){m=cell.markup,cc=cell.customClasses=[],cs=cell.customStyles=[];m[5]=cell.format(inDataIndex);m[1]=cc.join(" ");m[3]=cs.join(";");html.push.apply(html,m)}html.push("</tr>")}html.push("</table>");return html.join("")},decorateEvent:function(e){e.rowNode=this.findRowTarget(e.target);if(!e.rowNode){return false}e.rowIndex=e.rowNode[dojox.grid.rowIndexTag];this.baseDecorateEvent(e);e.cell=this.grid.getCell(e.cellIndex);return true}});dojo.declare("dojox.grid.headerBuilder",dojox.grid.Builder,{bogusClickTime:0,overResizeWidth:4,minColWidth:1,_table:'<table class="dojoxGrid-row-table" border="0" cellspacing="0" cellpadding="0" role="wairole:presentation"',update:function(){this.tableMap=new dojox.grid.tableMap(this.view.structure.rows)},generateHtml:function(inGetValue,inValue){var html=[this._table],rows=this.view.structure.rows;if(this.view.viewWidth){html.push([' style="width:',this.view.viewWidth,';"'].join(""))}html.push(">");dojox.grid.fire(this.view,"onBeforeRow",[-1,rows]);for(var j=0,row;(row=rows[j]);j++){if(row.hidden){continue}html.push(!row.invisible?"<tr>":'<tr class="dojoxGrid-invisible">');for(var i=0,cell,markup;(cell=row[i]);i++){cell.customClasses=[];cell.customStyles=[];markup=this.generateCellMarkup(cell,cell.headerStyles,cell.headerClasses,true);markup[5]=(inValue!=undefined?inValue:inGetValue(cell));markup[3]=cell.customStyles.join(";");markup[1]=cell.customClasses.join(" ");html.push(markup.join(""))}html.push("</tr>")}html.push("</table>");return html.join("")},getCellX:function(e){var x=e.layerX;if(dojo.isMoz){var n=dojox.grid.ascendDom(e.target,dojox.grid.makeNotTagName("th"));x-=(n&&n.offsetLeft)||0;var t=e.sourceView.getScrollbarWidth();if(!dojo._isBodyLtr()&&e.sourceView.headerNode.scrollLeft<t){x-=t}}var n=dojox.grid.ascendDom(e.target,function(){if(!n||n==e.cellNode){return false}x+=(n.offsetLeft<0?0:n.offsetLeft);return true});return x},decorateEvent:function(e){this.baseDecorateEvent(e);e.rowIndex=-1;e.cellX=this.getCellX(e);return true},prepareResize:function(e,mod){var i=dojox.grid.getTdIndex(e.cellNode);e.cellNode=(i?e.cellNode.parentNode.cells[i+mod]:null);e.cellIndex=(e.cellNode?this.getCellNodeIndex(e.cellNode):-1);return Boolean(e.cellNode)},canResize:function(e){if(!e.cellNode||e.cellNode.colSpan>1){return false}var cell=this.grid.getCell(e.cellIndex);return !cell.noresize&&!cell.isFlex()},overLeftResizeArea:function(e){if(dojo._isBodyLtr()){return(e.cellIndex>0)&&(e.cellX<this.overResizeWidth)&&this.prepareResize(e,-1)}var t=e.cellNode&&(e.cellX<this.overResizeWidth);return t},overRightResizeArea:function(e){if(dojo._isBodyLtr()){return e.cellNode&&(e.cellX>=e.cellNode.offsetWidth-this.overResizeWidth)}return(e.cellIndex>0)&&(e.cellX>=e.cellNode.offsetWidth-this.overResizeWidth)&&this.prepareResize(e,-1)},domousemove:function(e){var c=(this.overRightResizeArea(e)?"e-resize":(this.overLeftResizeArea(e)?"w-resize":""));if(c&&!this.canResize(e)){c="not-allowed"}e.sourceView.headerNode.style.cursor=c||"";if(c){dojo.stopEvent(e)}},domousedown:function(e){if(!dojox.grid.drag.dragging){if((this.overRightResizeArea(e)||this.overLeftResizeArea(e))&&this.canResize(e)){this.beginColumnResize(e)}else{this.grid.onMouseDown(e);this.grid.onMouseOverRow(e)}}},doclick:function(e){if(new Date().getTime()<this.bogusClickTime){dojo.stopEvent(e);return true}},beginColumnResize:function(e){dojo.stopEvent(e);var spanners=[],nodes=this.tableMap.findOverlappingNodes(e.cellNode);for(var i=0,cell;(cell=nodes[i]);i++){spanners.push({node:cell,index:this.getCellNodeIndex(cell),width:cell.offsetWidth})}var drag={scrollLeft:e.sourceView.headerNode.scrollLeft,view:e.sourceView,node:e.cellNode,index:e.cellIndex,w:e.cellNode.clientWidth,spanners:spanners};dojox.grid.drag.start(e.cellNode,dojo.hitch(this,"doResizeColumn",drag),dojo.hitch(this,"endResizeColumn",drag),e)},doResizeColumn:function(inDrag,inEvent){var isLtr=dojo._isBodyLtr();if(isLtr){var w=inDrag.w+inEvent.deltaX}else{var w=inDrag.w-inEvent.deltaX}if(w>=this.minColWidth){for(var i=0,s,sw;(s=inDrag.spanners[i]);i++){if(isLtr){sw=s.width+inEvent.deltaX}else{sw=s.width-inEvent.deltaX}s.node.style.width=sw+"px";inDrag.view.setColWidth(s.index,sw)}inDrag.node.style.width=w+"px";inDrag.view.setColWidth(inDrag.index,w);if(!isLtr){inDrag.view.headerNode.scrollLeft=(inDrag.scrollLeft-inEvent.deltaX)}}if(inDrag.view.flexCells&&!inDrag.view.testFlexCells()){var t=dojox.grid.findTable(inDrag.node);t&&(t.style.width="")}},endResizeColumn:function(inDrag){this.bogusClickTime=new Date().getTime()+30;setTimeout(dojo.hitch(inDrag.view,"update"),50)}});dojo.declare("dojox.grid.tableMap",null,{constructor:function(inRows){this.mapRows(inRows)},map:null,mapRows:function(inRows){var rowCount=inRows.length;if(!rowCount){return }this.map=[];for(var j=0,row;(row=inRows[j]);j++){this.map[j]=[]}for(var j=0,row;(row=inRows[j]);j++){for(var i=0,x=0,cell,colSpan,rowSpan;(cell=row[i]);i++){while(this.map[j][x]){x++}this.map[j][x]={c:i,r:j};rowSpan=cell.rowSpan||1;colSpan=cell.colSpan||1;for(var y=0;y<rowSpan;y++){for(var s=0;s<colSpan;s++){this.map[j+y][x+s]=this.map[j][x]}}x+=colSpan}}},dumpMap:function(){for(var j=0,row,h="";(row=this.map[j]);j++,h=""){for(var i=0,cell;(cell=row[i]);i++){h+=cell.r+","+cell.c+"   "}console.log(h)}},getMapCoords:function(inRow,inCol){for(var j=0,row;(row=this.map[j]);j++){for(var i=0,cell;(cell=row[i]);i++){if(cell.c==inCol&&cell.r==inRow){return{j:j,i:i}}}}return{j:-1,i:-1}},getNode:function(inTable,inRow,inCol){var row=inTable&&inTable.rows[inRow];return row&&row.cells[inCol]},_findOverlappingNodes:function(inTable,inRow,inCol){var nodes=[];var m=this.getMapCoords(inRow,inCol);var row=this.map[m.j];for(var j=0,row;(row=this.map[j]);j++){if(j==m.j){continue}with(row[m.i]){var n=this.getNode(inTable,r,c);if(n){nodes.push(n)}}}return nodes},findOverlappingNodes:function(inNode){return this._findOverlappingNodes(dojox.grid.findTable(inNode),dojox.grid.getTrIndex(inNode.parentNode),dojox.grid.getTdIndex(inNode))}});dojox.grid.rowIndexTag="gridRowIndex";dojox.grid.gridViewTag="gridView"}if(!dojo._hasResource["dojox.grid.compat._grid.view"]){dojo._hasResource["dojox.grid.compat._grid.view"]=true;dojo.provide("dojox.grid.compat._grid.view");dojo.declare("dojox.GridView",[dijit._Widget,dijit._Templated],{defaultWidth:"18em",viewWidth:"",templateString:'<div class="dojoxGrid-view">\r\n\t<div class="dojoxGrid-header" dojoAttachPoint="headerNode">\r\n\t\t<div dojoAttachPoint="headerNodeContainer" style="width:9000em">\r\n\t\t\t<div dojoAttachPoint="headerContentNode"></div>\r\n\t\t</div>\r\n\t</div>\r\n\t<input type="checkbox" class="dojoxGrid-hidden-focus" dojoAttachPoint="hiddenFocusNode" />\r\n\t<input type="checkbox" class="dojoxGrid-hidden-focus" />\r\n\t<div class="dojoxGrid-scrollbox" dojoAttachPoint="scrollboxNode">\r\n\t\t<div class="dojoxGrid-content" dojoAttachPoint="contentNode" hidefocus="hidefocus"></div>\r\n\t</div>\r\n</div>\r\n',themeable:false,classTag:"dojoxGrid",marginBottom:0,rowPad:2,postMixInProperties:function(){this.rowNodes=[]},postCreate:function(){this.connect(this.scrollboxNode,"onscroll","doscroll");dojox.grid.funnelEvents(this.contentNode,this,"doContentEvent",["mouseover","mouseout","click","dblclick","contextmenu","mousedown"]);dojox.grid.funnelEvents(this.headerNode,this,"doHeaderEvent",["dblclick","mouseover","mouseout","mousemove","mousedown","click","contextmenu"]);this.content=new dojox.grid.contentBuilder(this);this.header=new dojox.grid.headerBuilder(this);if(!dojo._isBodyLtr()){this.headerNodeContainer.style.width=""}},destroy:function(){dojox.grid.removeNode(this.headerNode);this.inherited("destroy",arguments)},focus:function(){if(dojo.isWebKit||dojo.isOpera){this.hiddenFocusNode.focus()}else{this.scrollboxNode.focus()}},setStructure:function(inStructure){var vs=(this.structure=inStructure);if(vs.width&&!isNaN(vs.width)){this.viewWidth=vs.width+"em"}else{this.viewWidth=vs.width||this.viewWidth}this.onBeforeRow=vs.onBeforeRow;this.noscroll=vs.noscroll;if(this.noscroll){this.scrollboxNode.style.overflow="hidden"}this.testFlexCells();this.updateStructure()},testFlexCells:function(){this.flexCells=false;for(var j=0,row;(row=this.structure.rows[j]);j++){for(var i=0,cell;(cell=row[i]);i++){cell.view=this;this.flexCells=this.flexCells||cell.isFlex()}}return this.flexCells},updateStructure:function(){this.header.update();this.content.update()},getScrollbarWidth:function(){return(this.noscroll?0:dojox.grid.getScrollbarWidth())},getColumnsWidth:function(){return this.headerContentNode.firstChild.offsetWidth},getWidth:function(){return this.viewWidth||(this.getColumnsWidth()+this.getScrollbarWidth())+"px"},getContentWidth:function(){return Math.max(0,dojo._getContentBox(this.domNode).w-this.getScrollbarWidth())+"px"},render:function(){this.scrollboxNode.style.height="";this.renderHeader()},renderHeader:function(){this.headerContentNode.innerHTML=this.header.generateHtml(this._getHeaderContent)},_getHeaderContent:function(inCell){var n=inCell.name||inCell.grid.getCellName(inCell);if(inCell.index!=inCell.grid.getSortIndex()){return n}return['<div class="',inCell.grid.sortInfo>0?"dojoxGrid-sort-down":"dojoxGrid-sort-up",'"><div class="gridArrowButtonChar">',inCell.grid.sortInfo>0?"&#9660;":"&#9650;","</div>",n,"</div>"].join("")},resize:function(){this.adaptHeight();this.adaptWidth()},hasScrollbar:function(){return(this.scrollboxNode.clientHeight!=this.scrollboxNode.offsetHeight)},adaptHeight:function(){if(!this.grid.autoHeight){var h=this.domNode.clientHeight;if(!this.hasScrollbar()){h-=dojox.grid.getScrollbarWidth()}dojox.grid.setStyleHeightPx(this.scrollboxNode,h)}},adaptWidth:function(){if(this.flexCells){this.contentWidth=this.getContentWidth();this.headerContentNode.firstChild.style.width=this.contentWidth}var w=this.scrollboxNode.offsetWidth-this.getScrollbarWidth();w=Math.max(w,this.getColumnsWidth())+"px";with(this.contentNode){style.width="";style.width=w}},setSize:function(w,h){with(this.domNode.style){if(w){width=w}height=(h>=0?h+"px":"")}with(this.headerNode.style){if(w){width=w}}},renderRow:function(inRowIndex,inHeightPx){var rowNode=this.createRowNode(inRowIndex);this.buildRow(inRowIndex,rowNode,inHeightPx);this.grid.edit.restore(this,inRowIndex);return rowNode},createRowNode:function(inRowIndex){var node=document.createElement("div");node.className=this.classTag+"-row";node[dojox.grid.gridViewTag]=this.id;node[dojox.grid.rowIndexTag]=inRowIndex;this.rowNodes[inRowIndex]=node;return node},buildRow:function(inRowIndex,inRowNode){this.buildRowContent(inRowIndex,inRowNode);this.styleRow(inRowIndex,inRowNode)},buildRowContent:function(inRowIndex,inRowNode){inRowNode.innerHTML=this.content.generateHtml(inRowIndex,inRowIndex);if(this.flexCells){inRowNode.firstChild.style.width=this.contentWidth}},rowRemoved:function(inRowIndex){this.grid.edit.save(this,inRowIndex);delete this.rowNodes[inRowIndex]},getRowNode:function(inRowIndex){return this.rowNodes[inRowIndex]},getCellNode:function(inRowIndex,inCellIndex){var row=this.getRowNode(inRowIndex);if(row){return this.content.getCellNode(row,inCellIndex)}},styleRow:function(inRowIndex,inRowNode){inRowNode._style=dojox.grid.getStyleText(inRowNode);this.styleRowNode(inRowIndex,inRowNode)},styleRowNode:function(inRowIndex,inRowNode){if(inRowNode){this.doStyleRowNode(inRowIndex,inRowNode)}},doStyleRowNode:function(inRowIndex,inRowNode){this.grid.styleRowNode(inRowIndex,inRowNode)},updateRow:function(inRowIndex,inHeightPx,inPageNode){var rowNode=this.getRowNode(inRowIndex);if(rowNode){rowNode.style.height="";this.buildRow(inRowIndex,rowNode)}return rowNode},updateRowStyles:function(inRowIndex){this.styleRowNode(inRowIndex,this.getRowNode(inRowIndex))},lastTop:0,firstScroll:0,doscroll:function(inEvent){var isLtr=dojo._isBodyLtr();if(this.firstScroll<2){if((!isLtr&&this.firstScroll==1)||(isLtr&&this.firstScroll==0)){var s=dojo.marginBox(this.headerNodeContainer);if(dojo.isIE){this.headerNodeContainer.style.width=s.w+this.getScrollbarWidth()+"px"}else{if(dojo.isMoz){this.headerNodeContainer.style.width=s.w-this.getScrollbarWidth()+"px";if(isLtr){}else{this.scrollboxNode.scrollLeft=this.scrollboxNode.clientWidth-this.scrollboxNode.scrollWidth}}}}this.firstScroll++}this.headerNode.scrollLeft=this.scrollboxNode.scrollLeft;var top=this.scrollboxNode.scrollTop;if(top!=this.lastTop){this.grid.scrollTo(top)}},setScrollTop:function(inTop){this.lastTop=inTop;this.scrollboxNode.scrollTop=inTop;return this.scrollboxNode.scrollTop},doContentEvent:function(e){if(this.content.decorateEvent(e)){this.grid.onContentEvent(e)}},doHeaderEvent:function(e){if(this.header.decorateEvent(e)){this.grid.onHeaderEvent(e)}},dispatchContentEvent:function(e){return this.content.dispatchEvent(e)},dispatchHeaderEvent:function(e){return this.header.dispatchEvent(e)},setColWidth:function(inIndex,inWidth){this.grid.setCellWidth(inIndex,inWidth+"px")},update:function(){var left=this.scrollboxNode.scrollLeft;this.content.update();this.grid.update();this.scrollboxNode.scrollLeft=left;this.headerNode.scrollLeft=left},updateScroll:function(){var left=this.scrollboxNode.scrollLeft;this.scrollboxNode.scrollLeft=left;this.headerNode.scrollLeft=left}})}if(!dojo._hasResource["dojox.grid.compat._grid.views"]){dojo._hasResource["dojox.grid.compat._grid.views"]=true;dojo.provide("dojox.grid.compat._grid.views");dojo.declare("dojox.grid.views",null,{constructor:function(inGrid){this.grid=inGrid},defaultWidth:200,views:[],resize:function(){this.onEach("resize")},render:function(){this.onEach("render")},addView:function(inView){inView.idx=this.views.length;this.views.push(inView)},destroyViews:function(){for(var i=0,v;v=this.views[i];i++){v.destroy()}this.views=[]},getContentNodes:function(){var nodes=[];for(var i=0,v;v=this.views[i];i++){nodes.push(v.contentNode)}return nodes},forEach:function(inCallback){for(var i=0,v;v=this.views[i];i++){inCallback(v,i)}},onEach:function(inMethod,inArgs){inArgs=inArgs||[];for(var i=0,v;v=this.views[i];i++){if(inMethod in v){v[inMethod].apply(v,inArgs)}}},normalizeHeaderNodeHeight:function(){var rowNodes=[];for(var i=0,v;(v=this.views[i]);i++){if(v.headerContentNode.firstChild){rowNodes.push(v.headerContentNode)}}this.normalizeRowNodeHeights(rowNodes)},normalizeRowNodeHeights:function(inRowNodes){var h=0;for(var i=0,n,o;(n=inRowNodes[i]);i++){h=Math.max(h,(n.firstChild.clientHeight)||(n.firstChild.offsetHeight))}h=(h>=0?h:0);var hpx=h+"px";for(var i=0,n;(n=inRowNodes[i]);i++){if(n.firstChild.clientHeight!=h){n.firstChild.style.height=hpx}}if(inRowNodes&&inRowNodes[0]){inRowNodes[0].parentNode.offsetHeight}},resetHeaderNodeHeight:function(){for(var i=0,v,n;(v=this.views[i]);i++){n=v.headerContentNode.firstChild;if(n){n.style.height=""}}},renormalizeRow:function(inRowIndex){var rowNodes=[];for(var i=0,v,n;(v=this.views[i])&&(n=v.getRowNode(inRowIndex));i++){n.firstChild.style.height="";rowNodes.push(n)}this.normalizeRowNodeHeights(rowNodes)},getViewWidth:function(inIndex){return this.views[inIndex].getWidth()||this.defaultWidth},measureHeader:function(){this.resetHeaderNodeHeight();this.forEach(function(inView){inView.headerContentNode.style.height=""});var h=0;this.forEach(function(inView){h=Math.max(inView.headerNode.offsetHeight,h)});return h},measureContent:function(){var h=0;this.forEach(function(inView){h=Math.max(inView.domNode.offsetHeight,h)});return h},findClient:function(inAutoWidth){var c=this.grid.elasticView||-1;if(c<0){for(var i=1,v;(v=this.views[i]);i++){if(v.viewWidth){for(i=1;(v=this.views[i]);i++){if(!v.viewWidth){c=i;break}}break}}}if(c<0){c=Math.floor(this.views.length/2)}return c},arrange:function(l,w){var i,v,vw,len=this.views.length;var c=(w<=0?len:this.findClient());var setPosition=function(v,l){with(v.domNode.style){if(!dojo._isBodyLtr()){right=l+"px"}else{left=l+"px"}top=0+"px"}with(v.headerNode.style){if(!dojo._isBodyLtr()){right=l+"px"}else{left=l+"px"}top=0}};for(i=0;(v=this.views[i])&&(i<c);i++){vw=this.getViewWidth(i);v.setSize(vw,0);setPosition(v,l);vw=v.domNode.offsetWidth;l+=vw}i++;var r=w;for(var j=len-1;(v=this.views[j])&&(i<=j);j--){vw=this.getViewWidth(j);v.setSize(vw,0);vw=v.domNode.offsetWidth;r-=vw;setPosition(v,r)}if(c<len){v=this.views[c];vw=Math.max(1,r-l);v.setSize(vw+"px",0);setPosition(v,l)}return l},renderRow:function(inRowIndex,inNodes){var rowNodes=[];for(var i=0,v,n,rowNode;(v=this.views[i])&&(n=inNodes[i]);i++){rowNode=v.renderRow(inRowIndex);n.appendChild(rowNode);rowNodes.push(rowNode)}this.normalizeRowNodeHeights(rowNodes)},rowRemoved:function(inRowIndex){this.onEach("rowRemoved",[inRowIndex])},updateRow:function(inRowIndex,inHeight){for(var i=0,v;v=this.views[i];i++){v.updateRow(inRowIndex,inHeight)}this.renormalizeRow(inRowIndex)},updateRowStyles:function(inRowIndex){this.onEach("updateRowStyles",[inRowIndex])},setScrollTop:function(inTop){var top=inTop;for(var i=0,v;v=this.views[i];i++){top=v.setScrollTop(inTop)}return top},getFirstScrollingView:function(){for(var i=0,v;(v=this.views[i]);i++){if(v.hasScrollbar()){return v}}}})}if(!dojo._hasResource["dojox.grid.compat._grid.cell"]){dojo._hasResource["dojox.grid.compat._grid.cell"]=true;dojo.provide("dojox.grid.compat._grid.cell");dojo.declare("dojox.grid.cell",null,{styles:"",constructor:function(inProps){dojo.mixin(this,inProps);if(this.editor){this.editor=new this.editor(this)}},format:function(inRowIndex){var f,i=this.grid.edit.info,d=this.get?this.get(inRowIndex):this.value;d=(d&&d.replace)?d.replace(/</g,"&lt;"):d;if(this.editor&&(this.editor.alwaysOn||(i.rowIndex==inRowIndex&&i.cell==this))){return this.editor.format(d,inRowIndex)}else{return(f=this.formatter)?f.call(this,d,inRowIndex):d}},getNode:function(inRowIndex){return this.view.getCellNode(inRowIndex,this.index)},isFlex:function(){var uw=this.unitWidth;return uw&&(uw=="auto"||uw.slice(-1)=="%")},applyEdit:function(inValue,inRowIndex){this.grid.edit.applyCellEdit(inValue,this,inRowIndex)},cancelEdit:function(inRowIndex){this.grid.doCancelEdit(inRowIndex)},_onEditBlur:function(inRowIndex){if(this.grid.edit.isEditCell(inRowIndex,this.index)){this.grid.edit.apply()}},registerOnBlur:function(inNode,inRowIndex){if(this.commitOnBlur){dojo.connect(inNode,"onblur",function(e){setTimeout(dojo.hitch(this,"_onEditBlur",inRowIndex),250)})}}})}if(!dojo._hasResource["dojox.grid.compat._grid.layout"]){dojo._hasResource["dojox.grid.compat._grid.layout"]=true;dojo.provide("dojox.grid.compat._grid.layout");dojo.declare("dojox.grid.layout",null,{constructor:function(inGrid){this.grid=inGrid},cells:[],structure:null,defaultWidth:"6em",setStructure:function(inStructure){this.fieldIndex=0;this.cells=[];var s=this.structure=[];for(var i=0,viewDef,rows;(viewDef=inStructure[i]);i++){s.push(this.addViewDef(viewDef))}this.cellCount=this.cells.length},addViewDef:function(inDef){this._defaultCellProps=inDef.defaultCell||{};return dojo.mixin({},inDef,{rows:this.addRowsDef(inDef.rows||inDef.cells)})},addRowsDef:function(inDef){var result=[];for(var i=0,row;inDef&&(row=inDef[i]);i++){result.push(this.addRowDef(i,row))}return result},addRowDef:function(inRowIndex,inDef){var result=[];for(var i=0,def,cell;(def=inDef[i]);i++){cell=this.addCellDef(inRowIndex,i,def);result.push(cell);this.cells.push(cell)}return result},addCellDef:function(inRowIndex,inCellIndex,inDef){var w=0;if(inDef.colSpan>1){w=0}else{if(!isNaN(inDef.width)){w=inDef.width+"em"}else{w=inDef.width||this.defaultWidth}}var fieldIndex=inDef.field!=undefined?inDef.field:(inDef.get?-1:this.fieldIndex);if((inDef.field!=undefined)||!inDef.get){this.fieldIndex=(inDef.field>-1?inDef.field:this.fieldIndex)+1}return new dojox.grid.cell(dojo.mixin({},this._defaultCellProps,inDef,{grid:this.grid,subrow:inRowIndex,layoutIndex:inCellIndex,index:this.cells.length,fieldIndex:fieldIndex,unitWidth:w}))}})}if(!dojo._hasResource["dojox.grid.compat._grid.rows"]){dojo._hasResource["dojox.grid.compat._grid.rows"]=true;dojo.provide("dojox.grid.compat._grid.rows");dojo.declare("dojox.grid.rows",null,{constructor:function(inGrid){this.grid=inGrid},linesToEms:2,defaultRowHeight:1,overRow:-2,getHeight:function(inRowIndex){return""},getDefaultHeightPx:function(){return 32},prepareStylingRow:function(inRowIndex,inRowNode){return{index:inRowIndex,node:inRowNode,odd:Boolean(inRowIndex&1),selected:this.grid.selection.isSelected(inRowIndex),over:this.isOver(inRowIndex),customStyles:"",customClasses:"dojoxGrid-row"}},styleRowNode:function(inRowIndex,inRowNode){var row=this.prepareStylingRow(inRowIndex,inRowNode);this.grid.onStyleRow(row);this.applyStyles(row)},applyStyles:function(inRow){with(inRow){node.className=customClasses;var h=node.style.height;dojox.grid.setStyleText(node,customStyles+";"+(node._style||""));node.style.height=h}},updateStyles:function(inRowIndex){this.grid.updateRowStyles(inRowIndex)},setOverRow:function(inRowIndex){var last=this.overRow;this.overRow=inRowIndex;if((last!=this.overRow)&&(last>=0)){this.updateStyles(last)}this.updateStyles(this.overRow)},isOver:function(inRowIndex){return(this.overRow==inRowIndex)}})}if(!dojo._hasResource["dojox.grid.compat._grid.focus"]){dojo._hasResource["dojox.grid.compat._grid.focus"]=true;dojo.provide("dojox.grid.compat._grid.focus");dojo.declare("dojox.grid.focus",null,{constructor:function(inGrid){this.grid=inGrid;this.cell=null;this.rowIndex=-1;dojo.connect(this.grid.domNode,"onfocus",this,"doFocus")},tabbingOut:false,focusClass:"dojoxGrid-cell-focus",focusView:null,initFocusView:function(){this.focusView=this.grid.views.getFirstScrollingView()},isFocusCell:function(inCell,inRowIndex){return(this.cell==inCell)&&(this.rowIndex==inRowIndex)},isLastFocusCell:function(){return(this.rowIndex==this.grid.rowCount-1)&&(this.cell.index==this.grid.layout.cellCount-1)},isFirstFocusCell:function(){return(this.rowIndex==0)&&(this.cell.index==0)},isNoFocusCell:function(){return(this.rowIndex<0)||!this.cell},_focusifyCellNode:function(inBork){var n=this.cell&&this.cell.getNode(this.rowIndex);if(n){dojo.toggleClass(n,this.focusClass,inBork);if(inBork){this.scrollIntoView();try{if(!this.grid.edit.isEditing()){dojox.grid.fire(n,"focus")}}catch(e){}}}},scrollIntoView:function(){if(!this.cell){return }var c=this.cell,s=c.view.scrollboxNode,sr={w:s.clientWidth,l:s.scrollLeft,t:s.scrollTop,h:s.clientHeight},n=c.getNode(this.rowIndex),r=c.view.getRowNode(this.rowIndex),rt=this.grid.scroller.findScrollTop(this.rowIndex);if(n.offsetLeft+n.offsetWidth>sr.l+sr.w){s.scrollLeft=n.offsetLeft+n.offsetWidth-sr.w}else{if(n.offsetLeft<sr.l){s.scrollLeft=n.offsetLeft}}if(rt+r.offsetHeight>sr.t+sr.h){this.grid.setScrollTop(rt+r.offsetHeight-sr.h)}else{if(rt<sr.t){this.grid.setScrollTop(rt)}}},styleRow:function(inRow){return },setFocusIndex:function(inRowIndex,inCellIndex){this.setFocusCell(this.grid.getCell(inCellIndex),inRowIndex)},setFocusCell:function(inCell,inRowIndex){if(inCell&&!this.isFocusCell(inCell,inRowIndex)){this.tabbingOut=false;this.focusGridView();this._focusifyCellNode(false);this.cell=inCell;this.rowIndex=inRowIndex;this._focusifyCellNode(true)}if(dojo.isOpera){setTimeout(dojo.hitch(this.grid,"onCellFocus",this.cell,this.rowIndex),1)}else{this.grid.onCellFocus(this.cell,this.rowIndex)}},next:function(){var row=this.rowIndex,col=this.cell.index+1,cc=this.grid.layout.cellCount-1,rc=this.grid.rowCount-1;if(col>cc){col=0;row++}if(row>rc){col=cc;row=rc}this.setFocusIndex(row,col)},previous:function(){var row=(this.rowIndex||0),col=(this.cell.index||0)-1;if(col<0){col=this.grid.layout.cellCount-1;row--}if(row<0){row=0;col=0}this.setFocusIndex(row,col)},move:function(inRowDelta,inColDelta){var rc=this.grid.rowCount-1,cc=this.grid.layout.cellCount-1,r=this.rowIndex,i=this.cell.index,row=Math.min(rc,Math.max(0,r+inRowDelta)),col=Math.min(cc,Math.max(0,i+inColDelta));this.setFocusIndex(row,col);if(inRowDelta){this.grid.updateRow(r)}},previousKey:function(e){if(this.isFirstFocusCell()){this.tabOut(this.grid.domNode)}else{dojo.stopEvent(e);this.previous()}},nextKey:function(e){if(this.isLastFocusCell()){this.tabOut(this.grid.lastFocusNode)}else{dojo.stopEvent(e);this.next()}},tabOut:function(inFocusNode){this.tabbingOut=true;inFocusNode.focus()},focusGridView:function(){dojox.grid.fire(this.focusView,"focus")},focusGrid:function(inSkipFocusCell){this.focusGridView();this._focusifyCellNode(true)},doFocus:function(e){if(e&&e.target!=e.currentTarget){return }if(!this.tabbingOut&&this.isNoFocusCell()){this.setFocusIndex(0,0)}this.tabbingOut=false}})}if(!dojo._hasResource["dojox.grid.compat._grid.selection"]){dojo._hasResource["dojox.grid.compat._grid.selection"]=true;dojo.provide("dojox.grid.compat._grid.selection");dojo.declare("dojox.grid.selection",null,{constructor:function(inGrid){this.grid=inGrid;this.selected=[]},multiSelect:true,selected:null,updating:0,selectedIndex:-1,onCanSelect:function(inIndex){return this.grid.onCanSelect(inIndex)},onCanDeselect:function(inIndex){return this.grid.onCanDeselect(inIndex)},onSelected:function(inIndex){return this.grid.onSelected(inIndex)},onDeselected:function(inIndex){return this.grid.onDeselected(inIndex)},onChanging:function(){},onChanged:function(){return this.grid.onSelectionChanged()},isSelected:function(inIndex){return this.selected[inIndex]},getFirstSelected:function(){for(var i=0,l=this.selected.length;i<l;i++){if(this.selected[i]){return i}}return -1},getNextSelected:function(inPrev){for(var i=inPrev+1,l=this.selected.length;i<l;i++){if(this.selected[i]){return i}}return -1},getSelected:function(){var result=[];for(var i=0,l=this.selected.length;i<l;i++){if(this.selected[i]){result.push(i)}}return result},getSelectedCount:function(){var c=0;for(var i=0;i<this.selected.length;i++){if(this.selected[i]){c++}}return c},beginUpdate:function(){if(this.updating==0){this.onChanging()}this.updating++},endUpdate:function(){this.updating--;if(this.updating==0){this.onChanged()}},select:function(inIndex){this.unselectAll(inIndex);this.addToSelection(inIndex)},addToSelection:function(inIndex){inIndex=Number(inIndex);if(this.selected[inIndex]){this.selectedIndex=inIndex}else{if(this.onCanSelect(inIndex)!==false){this.selectedIndex=inIndex;this.beginUpdate();this.selected[inIndex]=true;this.grid.onSelected(inIndex);this.endUpdate()}}},deselect:function(inIndex){inIndex=Number(inIndex);if(this.selectedIndex==inIndex){this.selectedIndex=-1}if(this.selected[inIndex]){if(this.onCanDeselect(inIndex)===false){return }this.beginUpdate();delete this.selected[inIndex];this.grid.onDeselected(inIndex);this.endUpdate()}},setSelected:function(inIndex,inSelect){this[(inSelect?"addToSelection":"deselect")](inIndex)},toggleSelect:function(inIndex){this.setSelected(inIndex,!this.selected[inIndex])},insert:function(inIndex){this.selected.splice(inIndex,0,false);if(this.selectedIndex>=inIndex){this.selectedIndex++}},remove:function(inIndex){this.selected.splice(inIndex,1);if(this.selectedIndex>=inIndex){this.selectedIndex--}},unselectAll:function(inExcept){for(var i in this.selected){if((i!=inExcept)&&(this.selected[i]===true)){this.deselect(i)}}},shiftSelect:function(inFrom,inTo){var s=(inFrom>=0?inFrom:inTo),e=inTo;if(s>e){e=s;s=inTo}for(var i=s;i<=e;i++){this.addToSelection(i)}},clickSelect:function(inIndex,inCtrlKey,inShiftKey){this.beginUpdate();if(!this.multiSelect){this.select(inIndex)}else{var lastSelected=this.selectedIndex;if(!inCtrlKey){this.unselectAll(inIndex)}if(inShiftKey){this.shiftSelect(lastSelected,inIndex)}else{if(inCtrlKey){this.toggleSelect(inIndex)}else{this.addToSelection(inIndex)}}}this.endUpdate()},clickSelectEvent:function(e){this.clickSelect(e.rowIndex,dojo.dnd.getCopyKeyState(e),e.shiftKey)},clear:function(){this.beginUpdate();this.unselectAll();this.endUpdate()}})}if(!dojo._hasResource["dojox.grid.compat._grid.edit"]){dojo._hasResource["dojox.grid.compat._grid.edit"]=true;dojo.provide("dojox.grid.compat._grid.edit");dojo.declare("dojox.grid.edit",null,{constructor:function(inGrid){this.grid=inGrid;this.connections=[];if(dojo.isIE){this.connections.push(dojo.connect(document.body,"onfocus",dojo.hitch(this,"_boomerangFocus")))}},info:{},destroy:function(){dojo.forEach(this.connections,dojo.disconnect)},cellFocus:function(inCell,inRowIndex){if(this.grid.singleClickEdit||this.isEditRow(inRowIndex)){this.setEditCell(inCell,inRowIndex)}else{this.apply()}if(this.isEditing()||(inCell&&(inCell.editor||0).alwaysOn)){this._focusEditor(inCell,inRowIndex)}},rowClick:function(e){if(this.isEditing()&&!this.isEditRow(e.rowIndex)){this.apply()}},styleRow:function(inRow){if(inRow.index==this.info.rowIndex){inRow.customClasses+=" dojoxGrid-row-editing"}},dispatchEvent:function(e){var c=e.cell,ed=c&&c.editor;return ed&&ed.dispatchEvent(e.dispatch,e)},isEditing:function(){return this.info.rowIndex!==undefined},isEditCell:function(inRowIndex,inCellIndex){return(this.info.rowIndex===inRowIndex)&&(this.info.cell.index==inCellIndex)},isEditRow:function(inRowIndex){return this.info.rowIndex===inRowIndex},setEditCell:function(inCell,inRowIndex){if(!this.isEditCell(inRowIndex,inCell.index)&&this.grid.canEdit(inCell,inRowIndex)){this.start(inCell,inRowIndex,this.isEditRow(inRowIndex)||inCell.editor)}},_focusEditor:function(inCell,inRowIndex){dojox.grid.fire(inCell.editor,"focus",[inRowIndex])},focusEditor:function(){if(this.isEditing()){this._focusEditor(this.info.cell,this.info.rowIndex)}},_boomerangWindow:500,_shouldCatchBoomerang:function(){return this._catchBoomerang>new Date().getTime()},_boomerangFocus:function(){if(this._shouldCatchBoomerang()){this.grid.focus.focusGrid();this.focusEditor();this._catchBoomerang=0}},_doCatchBoomerang:function(){if(dojo.isIE){this._catchBoomerang=new Date().getTime()+this._boomerangWindow}},start:function(inCell,inRowIndex,inEditing){this.grid.beginUpdate();this.editorApply();if(this.isEditing()&&!this.isEditRow(inRowIndex)){this.applyRowEdit();this.grid.updateRow(inRowIndex)}if(inEditing){this.info={cell:inCell,rowIndex:inRowIndex};this.grid.doStartEdit(inCell,inRowIndex);this.grid.updateRow(inRowIndex)}else{this.info={}}this.grid.endUpdate();this.grid.focus.focusGrid();this._focusEditor(inCell,inRowIndex);this._doCatchBoomerang()},_editorDo:function(inMethod){var c=this.info.cell;c&&c.editor&&c.editor[inMethod](this.info.rowIndex)},editorApply:function(){this._editorDo("apply")},editorCancel:function(){this._editorDo("cancel")},applyCellEdit:function(inValue,inCell,inRowIndex){if(this.grid.canEdit(inCell,inRowIndex)){this.grid.doApplyCellEdit(inValue,inRowIndex,inCell.fieldIndex)}},applyRowEdit:function(){this.grid.doApplyEdit(this.info.rowIndex)},apply:function(){if(this.isEditing()){this.grid.beginUpdate();this.editorApply();this.applyRowEdit();this.info={};this.grid.endUpdate();this.grid.focus.focusGrid();this._doCatchBoomerang()}},cancel:function(){if(this.isEditing()){this.grid.beginUpdate();this.editorCancel();this.info={};this.grid.endUpdate();this.grid.focus.focusGrid();this._doCatchBoomerang()}},save:function(inRowIndex,inView){var c=this.info.cell;if(this.isEditRow(inRowIndex)&&(!inView||c.view==inView)&&c.editor){c.editor.save(c,this.info.rowIndex)}},restore:function(inView,inRowIndex){var c=this.info.cell;if(this.isEditRow(inRowIndex)&&c.view==inView&&c.editor){c.editor.restore(c,this.info.rowIndex)}}})}if(!dojo._hasResource["dojox.grid.compat._grid.rowbar"]){dojo._hasResource["dojox.grid.compat._grid.rowbar"]=true;dojo.provide("dojox.grid.compat._grid.rowbar");dojo.declare("dojox.GridRowView",dojox.GridView,{defaultWidth:"3em",noscroll:true,padBorderWidth:2,buildRendering:function(){this.inherited("buildRendering",arguments);this.scrollboxNode.style.overflow="hidden";this.headerNode.style.visibility="hidden"},getWidth:function(){return this.viewWidth||this.defaultWidth},buildRowContent:function(inRowIndex,inRowNode){var w=this.contentNode.offsetWidth-this.padBorderWidth;inRowNode.innerHTML='<table style="width:'+w+'px;" role="wairole:presentation"><tr><td class="dojoxGrid-rowbar-inner"></td></tr></table>'},renderHeader:function(){},resize:function(){this.adaptHeight()},adaptWidth:function(){},doStyleRowNode:function(inRowIndex,inRowNode){var n=["dojoxGrid-rowbar"];if(this.grid.rows.isOver(inRowIndex)){n.push("dojoxGrid-rowbar-over")}if(this.grid.selection.isSelected(inRowIndex)){n.push("dojoxGrid-rowbar-selected")}inRowNode.className=n.join(" ")},domouseover:function(e){this.grid.onMouseOverRow(e)},domouseout:function(e){if(!this.isIntraRowEvent(e)){this.grid.onMouseOutRow(e)}}})}if(!dojo._hasResource["dojox.grid.compat._grid.publicEvents"]){dojo._hasResource["dojox.grid.compat._grid.publicEvents"]=true;dojo.provide("dojox.grid.compat._grid.publicEvents");dojox.grid.publicEvents={cellOverClass:"dojoxGrid-cell-over",onKeyEvent:function(e){this.dispatchKeyEvent(e)},onContentEvent:function(e){this.dispatchContentEvent(e)},onHeaderEvent:function(e){this.dispatchHeaderEvent(e)},onStyleRow:function(inRow){with(inRow){customClasses+=(odd?" dojoxGrid-row-odd":"")+(selected?" dojoxGrid-row-selected":"")+(over?" dojoxGrid-row-over":"")}this.focus.styleRow(inRow);this.edit.styleRow(inRow)},onKeyDown:function(e){if(e.altKey||e.ctrlKey||e.metaKey){return }var dk=dojo.keys;switch(e.keyCode){case dk.ESCAPE:this.edit.cancel();break;case dk.ENTER:if(!e.shiftKey){var isEditing=this.edit.isEditing();this.edit.apply();if(!isEditing){this.edit.setEditCell(this.focus.cell,this.focus.rowIndex)}}break;case dk.TAB:this.focus[e.shiftKey?"previousKey":"nextKey"](e);break;case dk.LEFT_ARROW:case dk.RIGHT_ARROW:if(!this.edit.isEditing()){dojo.stopEvent(e);var offset=(e.keyCode==dk.LEFT_ARROW)?1:-1;if(dojo._isBodyLtr()){offset*=-1}this.focus.move(0,offset)}break;case dk.UP_ARROW:if(!this.edit.isEditing()&&this.focus.rowIndex!=0){dojo.stopEvent(e);this.focus.move(-1,0)}break;case dk.DOWN_ARROW:if(!this.edit.isEditing()&&this.focus.rowIndex+1!=this.model.count){dojo.stopEvent(e);this.focus.move(1,0)}break;case dk.PAGE_UP:if(!this.edit.isEditing()&&this.focus.rowIndex!=0){dojo.stopEvent(e);if(this.focus.rowIndex!=this.scroller.firstVisibleRow+1){this.focus.move(this.scroller.firstVisibleRow-this.focus.rowIndex,0)}else{this.setScrollTop(this.scroller.findScrollTop(this.focus.rowIndex-1));this.focus.move(this.scroller.firstVisibleRow-this.scroller.lastVisibleRow+1,0)}}break;case dk.PAGE_DOWN:if(!this.edit.isEditing()&&this.focus.rowIndex+1!=this.model.count){dojo.stopEvent(e);if(this.focus.rowIndex!=this.scroller.lastVisibleRow-1){this.focus.move(this.scroller.lastVisibleRow-this.focus.rowIndex-1,0)}else{this.setScrollTop(this.scroller.findScrollTop(this.focus.rowIndex+1));this.focus.move(this.scroller.lastVisibleRow-this.scroller.firstVisibleRow-1,0)}}break}},onMouseOver:function(e){e.rowIndex==-1?this.onHeaderCellMouseOver(e):this.onCellMouseOver(e)},onMouseOut:function(e){e.rowIndex==-1?this.onHeaderCellMouseOut(e):this.onCellMouseOut(e)},onMouseDown:function(e){e.rowIndex==-1?this.onHeaderCellMouseDown(e):this.onCellMouseDown(e)},onMouseOverRow:function(e){if(!this.rows.isOver(e.rowIndex)){this.rows.setOverRow(e.rowIndex);e.rowIndex==-1?this.onHeaderMouseOver(e):this.onRowMouseOver(e)}},onMouseOutRow:function(e){if(this.rows.isOver(-1)){this.onHeaderMouseOut(e)}else{if(!this.rows.isOver(-2)){this.rows.setOverRow(-2);this.onRowMouseOut(e)}}},onMouseDownRow:function(e){if(e.rowIndex!=-1){this.onRowMouseDown(e)}},onCellMouseOver:function(e){dojo.addClass(e.cellNode,this.cellOverClass)},onCellMouseOut:function(e){dojo.removeClass(e.cellNode,this.cellOverClass)},onCellMouseDown:function(e){},onCellClick:function(e){this._click[0]=this._click[1];this._click[1]=e;if(!this.edit.isEditCell(e.rowIndex,e.cellIndex)){this.focus.setFocusCell(e.cell,e.rowIndex)}this.onRowClick(e)},onCellDblClick:function(e){if(dojo.isIE){this.edit.setEditCell(this._click[1].cell,this._click[1].rowIndex)}else{if(this._click[0].rowIndex!=this._click[1].rowIndex){this.edit.setEditCell(this._click[0].cell,this._click[0].rowIndex)}else{this.edit.setEditCell(e.cell,e.rowIndex)}}this.onRowDblClick(e)},onCellContextMenu:function(e){this.onRowContextMenu(e)},onCellFocus:function(inCell,inRowIndex){this.edit.cellFocus(inCell,inRowIndex)},onRowClick:function(e){this.edit.rowClick(e);this.selection.clickSelectEvent(e)},onRowDblClick:function(e){},onRowMouseOver:function(e){},onRowMouseOut:function(e){},onRowMouseDown:function(e){},onRowContextMenu:function(e){dojo.stopEvent(e)},onHeaderMouseOver:function(e){},onHeaderMouseOut:function(e){},onHeaderCellMouseOver:function(e){dojo.addClass(e.cellNode,this.cellOverClass)},onHeaderCellMouseOut:function(e){dojo.removeClass(e.cellNode,this.cellOverClass)},onHeaderCellMouseDown:function(e){},onHeaderClick:function(e){},onHeaderCellClick:function(e){this.setSortIndex(e.cell.index);this.onHeaderClick(e)},onHeaderDblClick:function(e){},onHeaderCellDblClick:function(e){this.onHeaderDblClick(e)},onHeaderCellContextMenu:function(e){this.onHeaderContextMenu(e)},onHeaderContextMenu:function(e){dojo.stopEvent(e)},onStartEdit:function(inCell,inRowIndex){},onApplyCellEdit:function(inValue,inRowIndex,inFieldIndex){},onCancelEdit:function(inRowIndex){},onApplyEdit:function(inRowIndex){},onCanSelect:function(inRowIndex){return true},onCanDeselect:function(inRowIndex){return true},onSelected:function(inRowIndex){this.updateRowStyles(inRowIndex)},onDeselected:function(inRowIndex){this.updateRowStyles(inRowIndex)},onSelectionChanged:function(){}}}if(!dojo._hasResource["dojox.grid.compat.VirtualGrid"]){dojo._hasResource["dojox.grid.compat.VirtualGrid"]=true;dojo.provide("dojox.grid.compat.VirtualGrid");dojo.declare("dojox.VirtualGrid",[dijit._Widget,dijit._Templated],{templateString:'<div class="dojoxGrid" hidefocus="hidefocus" role="wairole:grid">\r\n\t<div class="dojoxGrid-master-header" dojoAttachPoint="viewsHeaderNode"></div>\r\n\t<div class="dojoxGrid-master-view" dojoAttachPoint="viewsNode"></div>\r\n\t<span dojoAttachPoint="lastFocusNode" tabindex="0"></span>\r\n</div>\r\n',classTag:"dojoxGrid",get:function(inRowIndex){},rowCount:5,keepRows:75,rowsPerPage:25,autoWidth:false,autoHeight:false,autoRender:true,defaultHeight:"15em",structure:"",elasticView:-1,singleClickEdit:false,_click:null,sortInfo:0,themeable:true,buildRendering:function(){this.inherited(arguments);if(this.get==dojox.VirtualGrid.prototype.get){this.get=null}if(!this.domNode.getAttribute("tabIndex")){this.domNode.tabIndex="0"}this.createScroller();this.createLayout();this.createViews();this.createManagers();dojox.grid.initTextSizePoll();this.connect(dojox.grid,"textSizeChanged","textSizeChanged");dojox.grid.funnelEvents(this.domNode,this,"doKeyEvent",dojox.grid.keyEvents);this.connect(this,"onShow","renderOnIdle")},postCreate:function(){this.styleChanged=this._styleChanged;this.setStructure(this.structure);this._click=[]},destroy:function(){this.domNode.onReveal=null;this.domNode.onSizeChange=null;this.edit.destroy();this.views.destroyViews();this.inherited(arguments)},styleChanged:function(){this.setStyledClass(this.domNode,"")},_styleChanged:function(){this.styleChanged();this.update()},textSizeChanged:function(){setTimeout(dojo.hitch(this,"_textSizeChanged"),1)},_textSizeChanged:function(){if(this.domNode){this.views.forEach(function(v){v.content.update()});this.render()}},sizeChange:function(){dojox.grid.jobs.job(this.id+"SizeChange",50,dojo.hitch(this,"update"))},renderOnIdle:function(){setTimeout(dojo.hitch(this,"render"),1)},createManagers:function(){this.rows=new dojox.grid.rows(this);this.focus=new dojox.grid.focus(this);this.selection=new dojox.grid.selection(this);this.edit=new dojox.grid.edit(this)},createScroller:function(){this.scroller=new dojox.grid.scroller.columns();this.scroller._pageIdPrefix=this.id+"-";this.scroller.renderRow=dojo.hitch(this,"renderRow");this.scroller.removeRow=dojo.hitch(this,"rowRemoved")},createLayout:function(){this.layout=new dojox.grid.layout(this)},createViews:function(){this.views=new dojox.grid.views(this);this.views.createView=dojo.hitch(this,"createView")},createView:function(inClass){if(dojo.isAIR){var obj=window;var names=inClass.split(".");for(var i=0;i<names.length;i++){if(typeof obj[names[i]]=="undefined"){var undefstring=names[0];for(var j=1;j<=i;j++){undefstring+="."+names[j]}throw new Error(undefstring+" is undefined")}obj=obj[names[i]]}var c=obj}else{var c=eval(inClass)}var view=new c({grid:this});this.viewsNode.appendChild(view.domNode);this.viewsHeaderNode.appendChild(view.headerNode);this.views.addView(view);return view},buildViews:function(){for(var i=0,vs;(vs=this.layout.structure[i]);i++){this.createView(vs.type||dojox._scopeName+".GridView").setStructure(vs)}this.scroller.setContentNodes(this.views.getContentNodes())},setStructure:function(inStructure){this.views.destroyViews();this.structure=inStructure;if((this.structure)&&(dojo.isString(this.structure))){this.structure=dojox.grid.getProp(this.structure)}if(!this.structure){this.structure=window["layout"]}if(!this.structure){return }this.layout.setStructure(this.structure);this._structureChanged()},_structureChanged:function(){this.buildViews();if(this.autoRender){this.render()}},hasLayout:function(){return this.layout.cells.length},resize:function(sizeBox){this._sizeBox=sizeBox;this._resize();this.sizeChange()},_getPadBorder:function(){this._padBorder=this._padBorder||dojo._getPadBorderExtents(this.domNode);return this._padBorder},_resize:function(){if(!this.domNode.parentNode||this.domNode.parentNode.nodeType!=1||!this.hasLayout()){return }var padBorder=this._getPadBorder();if(this.autoHeight){this.domNode.style.height="auto";this.viewsNode.style.height=""}else{if(this.flex>0){}else{if(this.domNode.clientHeight<=padBorder.h){if(this.domNode.parentNode==document.body){this.domNode.style.height=this.defaultHeight}else{this.fitTo="parent"}}}}if(this._sizeBox){dojo.contentBox(this.domNode,this._sizeBox)}else{if(this.fitTo=="parent"){var h=dojo._getContentBox(this.domNode.parentNode).h;dojo.marginBox(this.domNode,{h:Math.max(0,h)})}}var h=dojo._getContentBox(this.domNode).h;if(h==0&&!this.autoHeight){this.viewsHeaderNode.style.display="none"}else{this.viewsHeaderNode.style.display="block"}this.adaptWidth();this.adaptHeight();this.scroller.defaultRowHeight=this.rows.getDefaultHeightPx()+1;this.postresize()},adaptWidth:function(){var w=this.autoWidth?0:this.domNode.clientWidth||(this.domNode.offsetWidth-this._getPadBorder().w);var vw=this.views.arrange(1,w);this.views.onEach("adaptWidth");if(this.autoWidth){this.domNode.style.width=vw+"px"}},adaptHeight:function(){var vns=this.viewsHeaderNode.style,t=vns.display=="none"?0:this.views.measureHeader();vns.height=t+"px";this.views.normalizeHeaderNodeHeight();var h=(this.autoHeight?-1:Math.max(this.domNode.clientHeight-t,0)||0);this.views.onEach("setSize",[0,h]);this.views.onEach("adaptHeight");this.scroller.windowHeight=h},render:function(){if(!this.domNode){return }if(!this.hasLayout()){this.scroller.init(0,this.keepRows,this.rowsPerPage);return }this.update=this.defaultUpdate;this.scroller.init(this.rowCount,this.keepRows,this.rowsPerPage);this.prerender();this.setScrollTop(0);this.postrender()},prerender:function(){this.keepRows=this.autoHeight?0:this.constructor.prototype.keepRows;this.scroller.setKeepInfo(this.keepRows);this.views.render();this._resize()},postrender:function(){this.postresize();this.focus.initFocusView();dojo.setSelectable(this.domNode,false)},postresize:function(){if(this.autoHeight){this.viewsNode.style.height=this.views.measureContent()+"px"}},renderRow:function(inRowIndex,inNodes){this.views.renderRow(inRowIndex,inNodes)},rowRemoved:function(inRowIndex){this.views.rowRemoved(inRowIndex)},invalidated:null,updating:false,beginUpdate:function(){if(this.invalidated==null){this.invalidated={rows:[],count:1,all:false,rowCount:undefined}}else{this.invalidated.count++}this.updating=true},endUpdate:function(){var i=this.invalidated;if(--i.count===0){this.updating=false;if(i.rows.length>0){for(var r in i.rows){this.updateRow(Number(r))}this.invalidated.rows=[]}if(i.rowCount!=undefined){this.updateRowCount(i.rowCount);i.rowCount=undefined}if(i.all){this.update();i.all=false}}},defaultUpdate:function(){if(!this.domNode){return }if(this.updating){this.invalidated.all=true;return }this.prerender();this.scroller.invalidateNodes();this.setScrollTop(this.scrollTop);this.postrender()},update:function(){this.render()},updateRow:function(inRowIndex){inRowIndex=Number(inRowIndex);if(this.updating){this.invalidated.rows[inRowIndex]=true}else{this.views.updateRow(inRowIndex,this.rows.getHeight(inRowIndex));this.scroller.rowHeightChanged(inRowIndex)}},updateRowCount:function(inRowCount){if(this.updating){this.invalidated.rowCount=inRowCount}else{this.rowCount=inRowCount;if(this.layout.cells.length){this.scroller.updateRowCount(inRowCount);this.setScrollTop(this.scrollTop)}this.views.onEach("updateScroll");this._resize()}},updateRowStyles:function(inRowIndex){this.views.updateRowStyles(inRowIndex)},rowHeightChanged:function(inRowIndex){this.views.renormalizeRow(inRowIndex);this.scroller.rowHeightChanged(inRowIndex)},fastScroll:true,delayScroll:false,scrollRedrawThreshold:(dojo.isIE?100:50),scrollTo:function(inTop){if(!this.fastScroll){this.setScrollTop(inTop);return }var delta=Math.abs(this.lastScrollTop-inTop);this.lastScrollTop=inTop;if(delta>this.scrollRedrawThreshold||this.delayScroll){this.delayScroll=true;this.scrollTop=inTop;this.views.setScrollTop(inTop);dojox.grid.jobs.job("dojoxGrid-scroll",200,dojo.hitch(this,"finishScrollJob"))}else{this.setScrollTop(inTop)}},finishScrollJob:function(){this.delayScroll=false;this.setScrollTop(this.scrollTop)},setScrollTop:function(inTop){this.scrollTop=this.views.setScrollTop(inTop);this.scroller.scroll(this.scrollTop)},scrollToRow:function(inRowIndex){this.setScrollTop(this.scroller.findScrollTop(inRowIndex)+1)},styleRowNode:function(inRowIndex,inRowNode){if(inRowNode){this.rows.styleRowNode(inRowIndex,inRowNode)}},getCell:function(inIndex){return this.layout.cells[inIndex]},setCellWidth:function(inIndex,inUnitWidth){this.getCell(inIndex).unitWidth=inUnitWidth},getCellName:function(inCell){return"Cell "+inCell.index},canSort:function(inSortInfo){},sort:function(){},getSortAsc:function(inSortInfo){inSortInfo=inSortInfo==undefined?this.sortInfo:inSortInfo;return Boolean(inSortInfo>0)},getSortIndex:function(inSortInfo){inSortInfo=inSortInfo==undefined?this.sortInfo:inSortInfo;return Math.abs(inSortInfo)-1},setSortIndex:function(inIndex,inAsc){var si=inIndex+1;if(inAsc!=undefined){si*=(inAsc?1:-1)}else{if(this.getSortIndex()==inIndex){si=-this.sortInfo}}this.setSortInfo(si)},setSortInfo:function(inSortInfo){if(this.canSort(inSortInfo)){this.sortInfo=inSortInfo;this.sort();this.update()}},doKeyEvent:function(e){e.dispatch="do"+e.type;this.onKeyEvent(e)},_dispatch:function(m,e){if(m in this){return this[m](e)}},dispatchKeyEvent:function(e){this._dispatch(e.dispatch,e)},dispatchContentEvent:function(e){this.edit.dispatchEvent(e)||e.sourceView.dispatchContentEvent(e)||this._dispatch(e.dispatch,e)},dispatchHeaderEvent:function(e){e.sourceView.dispatchHeaderEvent(e)||this._dispatch("doheader"+e.type,e)},dokeydown:function(e){this.onKeyDown(e)},doclick:function(e){if(e.cellNode){this.onCellClick(e)}else{this.onRowClick(e)}},dodblclick:function(e){if(e.cellNode){this.onCellDblClick(e)}else{this.onRowDblClick(e)}},docontextmenu:function(e){if(e.cellNode){this.onCellContextMenu(e)}else{this.onRowContextMenu(e)}},doheaderclick:function(e){if(e.cellNode){this.onHeaderCellClick(e)}else{this.onHeaderClick(e)}},doheaderdblclick:function(e){if(e.cellNode){this.onHeaderCellDblClick(e)}else{this.onHeaderDblClick(e)}},doheadercontextmenu:function(e){if(e.cellNode){this.onHeaderCellContextMenu(e)}else{this.onHeaderContextMenu(e)}},doStartEdit:function(inCell,inRowIndex){this.onStartEdit(inCell,inRowIndex)},doApplyCellEdit:function(inValue,inRowIndex,inFieldIndex){this.onApplyCellEdit(inValue,inRowIndex,inFieldIndex)},doCancelEdit:function(inRowIndex){this.onCancelEdit(inRowIndex)},doApplyEdit:function(inRowIndex){this.onApplyEdit(inRowIndex)},addRow:function(){this.updateRowCount(this.rowCount+1)},removeSelectedRows:function(){this.updateRowCount(Math.max(0,this.rowCount-this.selection.getSelected().length));this.selection.clear()}});dojo.mixin(dojox.VirtualGrid.prototype,dojox.grid.publicEvents)}if(!dojo._hasResource["dojox.grid.compat._data.fields"]){dojo._hasResource["dojox.grid.compat._data.fields"]=true;dojo.provide("dojox.grid.compat._data.fields");dojo.declare("dojox.grid.data.Mixer",null,{constructor:function(){this.defaultValue={};this.values=[]},count:function(){return this.values.length},clear:function(){this.values=[]},build:function(inIndex){var result=dojo.mixin({owner:this},this.defaultValue);result.key=inIndex;this.values[inIndex]=result;return result},getDefault:function(){return this.defaultValue},setDefault:function(inField){for(var i=0,a;(a=arguments[i]);i++){dojo.mixin(this.defaultValue,a)}},get:function(inIndex){return this.values[inIndex]||this.build(inIndex)},_set:function(inIndex,inField){var v=this.get(inIndex);for(var i=1;i<arguments.length;i++){dojo.mixin(v,arguments[i])}this.values[inIndex]=v},set:function(){if(arguments.length<1){return }var a=arguments[0];if(!dojo.isArray(a)){this._set.apply(this,arguments)}else{if(a.length&&a[0]["default"]){this.setDefault(a.shift())}for(var i=0,l=a.length;i<l;i++){this._set(i,a[i])}}},insert:function(inIndex,inProps){if(inIndex>=this.values.length){this.values[inIndex]=inProps}else{this.values.splice(inIndex,0,inProps)}},remove:function(inIndex){this.values.splice(inIndex,1)},swap:function(inIndexA,inIndexB){dojox.grid.arraySwap(this.values,inIndexA,inIndexB)},move:function(inFromIndex,inToIndex){dojox.grid.arrayMove(this.values,inFromIndex,inToIndex)}});dojox.grid.data.compare=function(a,b){return(a>b?1:(a==b?0:-1))};dojo.declare("dojox.grid.data.Field",null,{constructor:function(inName){this.name=inName;this.compare=dojox.grid.data.compare},na:dojox.grid.na});dojo.declare("dojox.grid.data.Fields",dojox.grid.data.Mixer,{constructor:function(inFieldClass){var fieldClass=inFieldClass?inFieldClass:dojox.grid.data.Field;this.defaultValue=new fieldClass()},indexOf:function(inKey){for(var i=0;i<this.values.length;i++){var v=this.values[i];if(v&&v.key==inKey){return i}}return -1}})}if(!dojo._hasResource["dojox.grid.compat._data.model"]){dojo._hasResource["dojox.grid.compat._data.model"]=true;dojo.provide("dojox.grid.compat._data.model");dojo.declare("dojox.grid.data.Model",null,{constructor:function(inFields,inData){this.observers=[];this.fields=new dojox.grid.data.Fields();if(inFields){this.fields.set(inFields)}this.setData(inData)},count:0,updating:0,observer:function(inObserver,inPrefix){this.observers.push({o:inObserver,p:inPrefix||"model"})},notObserver:function(inObserver){for(var i=0,m,o;(o=this.observers[i]);i++){if(o.o==inObserver){this.observers.splice(i,1);return }}},notify:function(inMsg,inArgs){var a=inArgs||[];for(var i=0,m,o;(o=this.observers[i]);i++){m=o.p+inMsg;o=o.o;(m in o)&&(o[m].apply(o,a))}},clear:function(){this.fields.clear();this.clearData()},beginUpdate:function(){this.notify("BeginUpdate",arguments)},endUpdate:function(){this.notify("EndUpdate",arguments)},clearData:function(){this.setData(null)},change:function(){this.notify("Change",arguments)},insertion:function(){this.notify("Insertion",arguments);this.notify("Change",arguments)},removal:function(){this.notify("Removal",arguments);this.notify("Change",arguments)},insert:function(inData){if(!this._insert.apply(this,arguments)){return false}this.insertion.apply(this,dojo._toArray(arguments,1));return true},remove:function(inData){if(!this._remove.apply(this,arguments)){return false}this.removal.apply(this,arguments);return true},canSort:function(){return this.sort!=null},generateComparator:function(inCompare,inField,inTrueForAscend,inSubCompare){return function(a,b){var ineq=inCompare(a[inField],b[inField]);return ineq?(inTrueForAscend?ineq:-ineq):inSubCompare&&inSubCompare(a,b)}},makeComparator:function(inIndices){var idx,col,field,result=null;for(var i=inIndices.length-1;i>=0;i--){idx=inIndices[i];col=Math.abs(idx)-1;if(col>=0){field=this.fields.get(col);result=this.generateComparator(field.compare,field.key,idx>0,result)}}return result},sort:null,dummy:0});dojo.declare("dojox.grid.data.Rows",dojox.grid.data.Model,{allChange:function(){this.notify("AllChange",arguments);this.notify("Change",arguments)},rowChange:function(){this.notify("RowChange",arguments)},datumChange:function(){this.notify("DatumChange",arguments)},beginModifyRow:function(inRowIndex){if(!this.cache[inRowIndex]){this.cache[inRowIndex]=this.copyRow(inRowIndex)}},endModifyRow:function(inRowIndex){var cache=this.cache[inRowIndex];if(cache){var data=this.getRow(inRowIndex);if(!dojox.grid.arrayCompare(cache,data)){this.update(cache,data,inRowIndex)}delete this.cache[inRowIndex]}},cancelModifyRow:function(inRowIndex){var cache=this.cache[inRowIndex];if(cache){this.setRow(cache,inRowIndex);delete this.cache[inRowIndex]}}});dojo.declare("dojox.grid.data.Table",dojox.grid.data.Rows,{constructor:function(){this.cache=[]},colCount:0,data:null,cache:null,measure:function(){this.count=this.getRowCount();this.colCount=this.getColCount();this.allChange()},getRowCount:function(){return(this.data?this.data.length:0)},getColCount:function(){return(this.data&&this.data.length?this.data[0].length:this.fields.count())},badIndex:function(inCaller,inDescriptor){console.error("dojox.grid.data.Table: badIndex")},isGoodIndex:function(inRowIndex,inColIndex){return(inRowIndex>=0&&inRowIndex<this.count&&(arguments.length<2||(inColIndex>=0&&inColIndex<this.colCount)))},getRow:function(inRowIndex){return this.data[inRowIndex]},copyRow:function(inRowIndex){return this.getRow(inRowIndex).slice(0)},getDatum:function(inRowIndex,inColIndex){return this.data[inRowIndex][inColIndex]},get:function(){throw ('Plain "get" no longer supported. Use "getRow" or "getDatum".')},setData:function(inData){this.data=(inData||[]);this.allChange()},setRow:function(inData,inRowIndex){this.data[inRowIndex]=inData;this.rowChange(inData,inRowIndex);this.change()},setDatum:function(inDatum,inRowIndex,inColIndex){this.data[inRowIndex][inColIndex]=inDatum;this.datumChange(inDatum,inRowIndex,inColIndex)},set:function(){throw ('Plain "set" no longer supported. Use "setData", "setRow", or "setDatum".')},setRows:function(inData,inRowIndex){for(var i=0,l=inData.length,r=inRowIndex;i<l;i++,r++){this.setRow(inData[i],r)}},update:function(inOldData,inNewData,inRowIndex){return true},_insert:function(inData,inRowIndex){dojox.grid.arrayInsert(this.data,inRowIndex,inData);this.count++;return true},_remove:function(inKeys){for(var i=inKeys.length-1;i>=0;i--){dojox.grid.arrayRemove(this.data,inKeys[i])}this.count-=inKeys.length;return true},sort:function(){this.data.sort(this.makeComparator(arguments))},swap:function(inIndexA,inIndexB){dojox.grid.arraySwap(this.data,inIndexA,inIndexB);this.rowChange(this.getRow(inIndexA),inIndexA);this.rowChange(this.getRow(inIndexB),inIndexB);this.change()},dummy:0});dojo.declare("dojox.grid.data.Objects",dojox.grid.data.Table,{constructor:function(inFields,inData,inKey){if(!inFields){this.autoAssignFields()}},allChange:function(){this.notify("FieldsChange");this.inherited(arguments)},autoAssignFields:function(){var d=this.data[0],i=0,field;for(var f in d){field=this.fields.get(i++);if(!dojo.isString(field.key)){field.key=f}}},setData:function(inData){this.data=(inData||[]);this.autoAssignFields();this.allChange()},getDatum:function(inRowIndex,inColIndex){return this.data[inRowIndex][this.fields.get(inColIndex).key]}});dojo.declare("dojox.grid.data.Dynamic",dojox.grid.data.Table,{constructor:function(){this.page=[];this.pages=[]},page:null,pages:null,rowsPerPage:100,requests:0,bop:-1,eop:-1,clearData:function(){this.pages=[];this.bop=this.eop=-1;this.setData([])},getRowCount:function(){return this.count},getColCount:function(){return this.fields.count()},setRowCount:function(inCount){this.count=inCount;this.change()},requestsPending:function(inBoolean){},rowToPage:function(inRowIndex){return(this.rowsPerPage?Math.floor(inRowIndex/this.rowsPerPage):inRowIndex)},pageToRow:function(inPageIndex){return(this.rowsPerPage?this.rowsPerPage*inPageIndex:inPageIndex)},requestRows:function(inRowIndex,inCount){},rowsProvided:function(inRowIndex,inCount){this.requests--;if(this.requests==0){this.requestsPending(false)}},requestPage:function(inPageIndex){var row=this.pageToRow(inPageIndex);var count=Math.min(this.rowsPerPage,this.count-row);if(count>0){this.requests++;this.requestsPending(true);setTimeout(dojo.hitch(this,"requestRows",row,count),1)}},needPage:function(inPageIndex){if(!this.pages[inPageIndex]){this.pages[inPageIndex]=true;this.requestPage(inPageIndex)}},preparePage:function(inRowIndex,inColIndex){if(inRowIndex<this.bop||inRowIndex>=this.eop){var pageIndex=this.rowToPage(inRowIndex);this.needPage(pageIndex);this.bop=pageIndex*this.rowsPerPage;this.eop=this.bop+(this.rowsPerPage||this.count)}},isRowLoaded:function(inRowIndex){return Boolean(this.data[inRowIndex])},removePages:function(inRowIndexes){for(var i=0,r;((r=inRowIndexes[i])!=undefined);i++){this.pages[this.rowToPage(r)]=false}this.bop=this.eop=-1},remove:function(inRowIndexes){this.removePages(inRowIndexes);dojox.grid.data.Table.prototype.remove.apply(this,arguments)},getRow:function(inRowIndex){var row=this.data[inRowIndex];if(!row){this.preparePage(inRowIndex)}return row},getDatum:function(inRowIndex,inColIndex){var row=this.getRow(inRowIndex);return(row?row[inColIndex]:this.fields.get(inColIndex).na)},setDatum:function(inDatum,inRowIndex,inColIndex){var row=this.getRow(inRowIndex);if(row){row[inColIndex]=inDatum;this.datumChange(inDatum,inRowIndex,inColIndex)}else{console.error("["+this.declaredClass+"] dojox.grid.data.dynamic.set: cannot set data on a non-loaded row")}},canSort:function(){return false}});dojox.grid.data.table=dojox.grid.data.Table;dojox.grid.data.dynamic=dojox.grid.data.Dynamic;dojo.declare("dojox.grid.data.DojoData",dojox.grid.data.Dynamic,{constructor:function(inFields,inData,args){this.count=1;this._rowIdentities={};this._currentlyProcessing=[];if(args){dojo.mixin(this,args)}if(this.store){var f=this.store.getFeatures();this._canNotify=f["dojo.data.api.Notification"];this._canWrite=f["dojo.data.api.Write"];this._canIdentify=f["dojo.data.api.Identity"];if(this._canNotify){dojo.connect(this.store,"onSet",this,"_storeDatumChange");dojo.connect(this.store,"onDelete",this,"_storeDatumDelete");dojo.connect(this.store,"onNew",this,"_storeDatumNew")}if(this._canWrite){dojo.connect(this.store,"revert",this,"refresh")}}},markupFactory:function(args,node){return new dojox.grid.data.DojoData(null,null,args)},query:{name:"*"},store:null,_currentlyProcessing:null,_canNotify:false,_canWrite:false,_canIdentify:false,_rowIdentities:{},clientSort:false,sortFields:null,queryOptions:null,setData:function(inData){this.store=inData;this.data=[];this.allChange()},setRowCount:function(inCount){this.count=inCount;this.allChange()},beginReturn:function(inCount){if(this.count!=inCount){this.setRowCount(inCount)}},_setupFields:function(dataItem){if(this.fields._nameMaps){return }var m={};var fields=dojo.map(this.store.getAttributes(dataItem),function(item,idx){m[item]=idx;m[idx+".idx"]=item;return{name:item,key:item}},this);this.fields._nameMaps=m;this.fields.set(fields);this.notify("FieldsChange")},_getRowFromItem:function(item){},_createRow:function(item){var row={};row.__dojo_data_item=item;dojo.forEach(this.fields.values,function(a){var value=this.store.getValue(item,a.name);row[a.name]=(value===undefined||value===null)?"":value},this);return row},processRows:function(items,request){if(!items||items.length==0){return }this._setupFields(items[0]);dojo.forEach(items,function(item,idx){var row=this._createRow(item);this._setRowId(item,request.start,idx);this.setRow(row,request.start+idx)},this);this.endUpdate()},requestRows:function(inRowIndex,inCount){this.beginUpdate();var row=inRowIndex||0;var params={start:row,count:this.rowsPerPage,query:this.query,sort:this.sortFields,queryOptions:this.queryOptions,onBegin:dojo.hitch(this,"beginReturn"),onComplete:dojo.hitch(this,"processRows"),onError:dojo.hitch(this,"processError")};this.store.fetch(params)},getDatum:function(inRowIndex,inColIndex){var row=this.getRow(inRowIndex);var field=this.fields.values[inColIndex];return row&&field?row[field.name]:field?field.na:"?"},setDatum:function(inDatum,inRowIndex,inColIndex){var n=this.fields._nameMaps[inColIndex+".idx"];if(n){this.data[inRowIndex][n]=inDatum;this.datumChange(inDatum,inRowIndex,inColIndex)}},copyRow:function(inRowIndex){var row={};var backstop={};var src=this.getRow(inRowIndex);for(var x in src){if(src[x]!=backstop[x]){row[x]=src[x]}}return row},_attrCompare:function(cache,data){dojo.forEach(this.fields.values,function(a){if(cache[a.name]!=data[a.name]){return false}},this);return true},endModifyRow:function(inRowIndex){var cache=this.cache[inRowIndex];if(cache){var data=this.getRow(inRowIndex);if(!this._attrCompare(cache,data)){this.update(cache,data,inRowIndex)}delete this.cache[inRowIndex]}},cancelModifyRow:function(inRowIndex){var cache=this.cache[inRowIndex];if(cache){this.setRow(cache,inRowIndex);delete this.cache[inRowIndex]}},_setRowId:function(item,offset,idx){if(this._canIdentify){this._rowIdentities[this.store.getIdentity(item)]={rowId:offset+idx,item:item}}else{var identity=dojo.toJson(this.query)+":start:"+offset+":idx:"+idx+":sort:"+dojo.toJson(this.sortFields);this._rowIdentities[identity]={rowId:offset+idx,item:item}}},_getRowId:function(item,isNotItem){var rowId=null;if(this._canIdentify&&!isNotItem){var _rowId=this._rowIdentities[this.store.getIdentity(item)];if(_rowId){rowId=_rowId.rowId}}else{var id;for(id in this._rowIdentities){if(this._rowIdentities[id].item===item){rowId=this._rowIdentities[id].rowId;break}}}return rowId},_storeDatumChange:function(item,attr,oldVal,newVal){var rowId=this._getRowId(item);var row=this.getRow(rowId);if(row){row[attr]=newVal;var colId=this.fields._nameMaps[attr];this.notify("DatumChange",[newVal,rowId,colId])}},_storeDatumDelete:function(item){if(dojo.indexOf(this._currentlyProcessing,item)!=-1){return }var rowId=this._getRowId(item,true);if(rowId!=null){this._removeItems([rowId])}},_storeDatumNew:function(item){if(this._disableNew){return }this._insertItem(item,this.data.length)},insert:function(item,index){this._disableNew=true;var i=this.store.newItem(item);this._disableNew=false;this._insertItem(i,index)},_insertItem:function(storeItem,index){if(!this.fields._nameMaps){this._setupFields(storeItem)}var row=this._createRow(storeItem);for(var i in this._rowIdentities){var rowIdentity=this._rowIdentities[i];if(rowIdentity.rowId>=index){rowIdentity.rowId++}}this._setRowId(storeItem,0,index);dojox.grid.data.Dynamic.prototype.insert.apply(this,[row,index])},datumChange:function(value,rowIdx,colIdx){if(this._canWrite){var row=this.getRow(rowIdx);var field=this.fields._nameMaps[colIdx+".idx"];this.store.setValue(row.__dojo_data_item,field,value)}else{this.notify("DatumChange",arguments)}},insertion:function(){this.notify("Insertion",arguments);this.notify("Change",arguments)},removal:function(){this.notify("Removal",arguments);this.notify("Change",arguments)},remove:function(inRowIndexes){for(var i=inRowIndexes.length-1;i>=0;i--){var item=this.data[inRowIndexes[i]].__dojo_data_item;this._currentlyProcessing.push(item);this.store.deleteItem(item)}this._removeItems(inRowIndexes);this._currentlyProcessing=[]},_removeItems:function(inRowIndexes){dojox.grid.data.Dynamic.prototype.remove.apply(this,arguments);this._rowIdentities={};for(var i=0;i<this.data.length;i++){this._setRowId(this.data[i].__dojo_data_item,0,i)}},canSort:function(){return true},sort:function(colIndex){var col=Math.abs(colIndex)-1;this.sortFields=[{"attribute":this.fields.values[col].name,"descending":(colIndex>0)}];this.refresh()},refresh:function(){this.clearData(true);this.requestRows()},clearData:function(keepStore){this._rowIdentities={};this.pages=[];this.bop=this.eop=-1;this.count=0;this.setData((keepStore?this.store:[]))},processError:function(error,request){console.log(error)}})}if(!dojo._hasResource["dojox.grid.compat._data.editors"]){dojo._hasResource["dojox.grid.compat._data.editors"]=true;dojo.provide("dojox.grid.compat._data.editors");dojo.provide("dojox.grid.compat.editors");dojo.declare("dojox.grid.editors.Base",null,{constructor:function(inCell){this.cell=inCell},_valueProp:"value",_formatPending:false,format:function(inDatum,inRowIndex){},needFormatNode:function(inDatum,inRowIndex){this._formatPending=true;dojox.grid.whenIdle(this,"_formatNode",inDatum,inRowIndex)},cancelFormatNode:function(){this._formatPending=false},_formatNode:function(inDatum,inRowIndex){if(this._formatPending){this._formatPending=false;dojo.setSelectable(this.cell.grid.domNode,true);this.formatNode(this.getNode(inRowIndex),inDatum,inRowIndex)}},getNode:function(inRowIndex){return(this.cell.getNode(inRowIndex)||0).firstChild||0},formatNode:function(inNode,inDatum,inRowIndex){if(dojo.isIE){dojox.grid.whenIdle(this,"focus",inRowIndex,inNode)}else{this.focus(inRowIndex,inNode)}},dispatchEvent:function(m,e){if(m in this){return this[m](e)}},getValue:function(inRowIndex){return this.getNode(inRowIndex)[this._valueProp]},setValue:function(inRowIndex,inValue){var n=this.getNode(inRowIndex);if(n){n[this._valueProp]=inValue}},focus:function(inRowIndex,inNode){dojox.grid.focusSelectNode(inNode||this.getNode(inRowIndex))},save:function(inRowIndex){this.value=this.value||this.getValue(inRowIndex)},restore:function(inRowIndex){this.setValue(inRowIndex,this.value)},_finish:function(inRowIndex){dojo.setSelectable(this.cell.grid.domNode,false);this.cancelFormatNode(this.cell)},apply:function(inRowIndex){this.cell.applyEdit(this.getValue(inRowIndex),inRowIndex);this._finish(inRowIndex)},cancel:function(inRowIndex){this.cell.cancelEdit(inRowIndex);this._finish(inRowIndex)}});dojox.grid.editors.base=dojox.grid.editors.Base;dojo.declare("dojox.grid.editors.Input",dojox.grid.editors.Base,{constructor:function(inCell){this.keyFilter=this.keyFilter||this.cell.keyFilter},keyFilter:null,format:function(inDatum,inRowIndex){this.needFormatNode(inDatum,inRowIndex);return'<input class="dojoxGrid-input" type="text" value="'+inDatum+'">'},formatNode:function(inNode,inDatum,inRowIndex){this.inherited(arguments);this.cell.registerOnBlur(inNode,inRowIndex)},doKey:function(e){if(this.keyFilter){var key=String.fromCharCode(e.charCode);if(key.search(this.keyFilter)==-1){dojo.stopEvent(e)}}},_finish:function(inRowIndex){this.inherited(arguments);var n=this.getNode(inRowIndex);try{dojox.grid.fire(n,"blur")}catch(e){}}});dojox.grid.editors.input=dojox.grid.editors.Input;dojo.declare("dojox.grid.editors.Select",dojox.grid.editors.Input,{constructor:function(inCell){this.options=this.options||this.cell.options;this.values=this.values||this.cell.values||this.options},format:function(inDatum,inRowIndex){this.needFormatNode(inDatum,inRowIndex);var h=['<select class="dojoxGrid-select">'];for(var i=0,o,v;((o=this.options[i])!==undefined)&&((v=this.values[i])!==undefined);i++){h.push("<option",(inDatum==v?" selected":""),' value="'+v+'"',">",o,"</option>")}h.push("</select>");return h.join("")},getValue:function(inRowIndex){var n=this.getNode(inRowIndex);if(n){var i=n.selectedIndex,o=n.options[i];return this.cell.returnIndex?i:o.value||o.innerHTML}}});dojox.grid.editors.select=dojox.grid.editors.Select;dojo.declare("dojox.grid.editors.AlwaysOn",dojox.grid.editors.Input,{alwaysOn:true,_formatNode:function(inDatum,inRowIndex){this.formatNode(this.getNode(inRowIndex),inDatum,inRowIndex)},applyStaticValue:function(inRowIndex){var e=this.cell.grid.edit;e.applyCellEdit(this.getValue(inRowIndex),this.cell,inRowIndex);e.start(this.cell,inRowIndex,true)}});dojox.grid.editors.alwaysOn=dojox.grid.editors.AlwaysOn;dojo.declare("dojox.grid.editors.Bool",dojox.grid.editors.AlwaysOn,{_valueProp:"checked",format:function(inDatum,inRowIndex){return'<input class="dojoxGrid-input" type="checkbox"'+(inDatum?' checked="checked"':"")+' style="width: auto" />'},doclick:function(e){if(e.target.tagName=="INPUT"){this.applyStaticValue(e.rowIndex)}}});dojox.grid.editors.bool=dojox.grid.editors.Bool}if(!dojo._hasResource["dojo.cldr.supplemental"]){dojo._hasResource["dojo.cldr.supplemental"]=true;dojo.provide("dojo.cldr.supplemental");dojo.cldr.supplemental.getFirstDayOfWeek=function(locale){var firstDay={mv:5,ae:6,af:6,bh:6,dj:6,dz:6,eg:6,er:6,et:6,iq:6,ir:6,jo:6,ke:6,kw:6,lb:6,ly:6,ma:6,om:6,qa:6,sa:6,sd:6,so:6,tn:6,ye:6,as:0,au:0,az:0,bw:0,ca:0,cn:0,fo:0,ge:0,gl:0,gu:0,hk:0,ie:0,il:0,is:0,jm:0,jp:0,kg:0,kr:0,la:0,mh:0,mo:0,mp:0,mt:0,nz:0,ph:0,pk:0,sg:0,th:0,tt:0,tw:0,um:0,us:0,uz:0,vi:0,za:0,zw:0,et:0,mw:0,ng:0,tj:0,sy:4};var country=dojo.cldr.supplemental._region(locale);var dow=firstDay[country];return(dow===undefined)?1:dow};dojo.cldr.supplemental._region=function(locale){locale=dojo.i18n.normalizeLocale(locale);var tags=locale.split("-");var region=tags[1];if(!region){region={de:"de",en:"us",es:"es",fi:"fi",fr:"fr",he:"il",hu:"hu",it:"it",ja:"jp",ko:"kr",nl:"nl",pt:"br",sv:"se",zh:"cn"}[tags[0]]}else{if(region.length==4){region=tags[2]}}return region};dojo.cldr.supplemental.getWeekend=function(locale){var weekendStart={eg:5,il:5,sy:5,"in":0,ae:4,bh:4,dz:4,iq:4,jo:4,kw:4,lb:4,ly:4,ma:4,om:4,qa:4,sa:4,sd:4,tn:4,ye:4};var weekendEnd={ae:5,bh:5,dz:5,iq:5,jo:5,kw:5,lb:5,ly:5,ma:5,om:5,qa:5,sa:5,sd:5,tn:5,ye:5,af:5,ir:5,eg:6,il:6,sy:6};var country=dojo.cldr.supplemental._region(locale);var start=weekendStart[country];var end=weekendEnd[country];if(start===undefined){start=6}if(end===undefined){end=0}return{start:start,end:end}}}if(!dojo._hasResource["dojo.date"]){dojo._hasResource["dojo.date"]=true;dojo.provide("dojo.date");dojo.date.getDaysInMonth=function(dateObject){var month=dateObject.getMonth();var days=[31,28,31,30,31,30,31,31,30,31,30,31];if(month==1&&dojo.date.isLeapYear(dateObject)){return 29}return days[month]};dojo.date.isLeapYear=function(dateObject){var year=dateObject.getFullYear();return !(year%400)||(!(year%4)&&!!(year%100))};dojo.date.getTimezoneName=function(dateObject){var str=dateObject.toString();var tz="";var match;var pos=str.indexOf("(");if(pos>-1){tz=str.substring(++pos,str.indexOf(")"))}else{var pat=/([A-Z\/]+) \d{4}$/;if((match=str.match(pat))){tz=match[1]}else{str=dateObject.toLocaleString();pat=/ ([A-Z\/]+)$/;if((match=str.match(pat))){tz=match[1]}}}return(tz=="AM"||tz=="PM")?"":tz};dojo.date.compare=function(date1,date2,portion){date1=new Date(Number(date1));date2=new Date(Number(date2||new Date()));if(portion!=="undefined"){if(portion=="date"){date1.setHours(0,0,0,0);date2.setHours(0,0,0,0)}else{if(portion=="time"){date1.setFullYear(0,0,0);date2.setFullYear(0,0,0)}}}if(date1>date2){return 1}if(date1<date2){return -1}return 0};dojo.date.add=function(date,interval,amount){var sum=new Date(Number(date));var fixOvershoot=false;var property="Date";switch(interval){case"day":break;case"weekday":var days,weeks;var mod=amount%5;if(!mod){days=(amount>0)?5:-5;weeks=(amount>0)?((amount-5)/5):((amount+5)/5)}else{days=mod;weeks=parseInt(amount/5)}var strt=date.getDay();var adj=0;if(strt==6&&amount>0){adj=1}else{if(strt==0&&amount<0){adj=-1}}var trgt=strt+days;if(trgt==0||trgt==6){adj=(amount>0)?2:-2}amount=(7*weeks)+days+adj;break;case"year":property="FullYear";fixOvershoot=true;break;case"week":amount*=7;break;case"quarter":amount*=3;case"month":fixOvershoot=true;property="Month";break;case"hour":case"minute":case"second":case"millisecond":property="UTC"+interval.charAt(0).toUpperCase()+interval.substring(1)+"s"}if(property){sum["set"+property](sum["get"+property]()+amount)}if(fixOvershoot&&(sum.getDate()<date.getDate())){sum.setDate(0)}return sum};dojo.date.difference=function(date1,date2,interval){date2=date2||new Date();interval=interval||"day";var yearDiff=date2.getFullYear()-date1.getFullYear();var delta=1;switch(interval){case"quarter":var m1=date1.getMonth();var m2=date2.getMonth();var q1=Math.floor(m1/3)+1;var q2=Math.floor(m2/3)+1;q2+=(yearDiff*4);delta=q2-q1;break;case"weekday":var days=Math.round(dojo.date.difference(date1,date2,"day"));var weeks=parseInt(dojo.date.difference(date1,date2,"week"));var mod=days%7;if(mod==0){days=weeks*5}else{var adj=0;var aDay=date1.getDay();var bDay=date2.getDay();weeks=parseInt(days/7);mod=days%7;var dtMark=new Date(date1);dtMark.setDate(dtMark.getDate()+(weeks*7));var dayMark=dtMark.getDay();if(days>0){switch(true){case aDay==6:adj=-1;break;case aDay==0:adj=0;break;case bDay==6:adj=-1;break;case bDay==0:adj=-2;break;case (dayMark+mod)>5:adj=-2}}else{if(days<0){switch(true){case aDay==6:adj=0;break;case aDay==0:adj=1;break;case bDay==6:adj=2;break;case bDay==0:adj=1;break;case (dayMark+mod)<0:adj=2}}}days+=adj;days-=(weeks*2)}delta=days;break;case"year":delta=yearDiff;break;case"month":delta=(date2.getMonth()-date1.getMonth())+(yearDiff*12);break;case"week":delta=parseInt(dojo.date.difference(date1,date2,"day")/7);break;case"day":delta/=24;case"hour":delta/=60;case"minute":delta/=60;case"second":delta/=1000;case"millisecond":delta*=date2.getTime()-date1.getTime()}return Math.round(delta)}}if(!dojo._hasResource["dojo.date.locale"]){dojo._hasResource["dojo.date.locale"]=true;dojo.provide("dojo.date.locale");(function(){function formatPattern(dateObject,bundle,fullYear,pattern){return pattern.replace(/([a-z])\1*/ig,function(match){var s,pad;var c=match.charAt(0);var l=match.length;var widthList=["abbr","wide","narrow"];switch(c){case"G":s=bundle[(l<4)?"eraAbbr":"eraNames"][dateObject.getFullYear()<0?0:1];break;case"y":s=dateObject.getFullYear();switch(l){case 1:break;case 2:if(!fullYear){s=String(s);s=s.substr(s.length-2);break}default:pad=true}break;case"Q":case"q":s=Math.ceil((dateObject.getMonth()+1)/3);pad=true;break;case"M":var m=dateObject.getMonth();if(l<3){s=m+1;pad=true}else{var propM=["months","format",widthList[l-3]].join("-");s=bundle[propM][m]}break;case"w":var firstDay=0;s=dojo.date.locale._getWeekOfYear(dateObject,firstDay);pad=true;break;case"d":s=dateObject.getDate();pad=true;break;case"D":s=dojo.date.locale._getDayOfYear(dateObject);pad=true;break;case"E":var d=dateObject.getDay();if(l<3){s=d+1;pad=true}else{var propD=["days","format",widthList[l-3]].join("-");s=bundle[propD][d]}break;case"a":var timePeriod=(dateObject.getHours()<12)?"am":"pm";s=bundle[timePeriod];break;case"h":case"H":case"K":case"k":var h=dateObject.getHours();switch(c){case"h":s=(h%12)||12;break;case"H":s=h;break;case"K":s=(h%12);break;case"k":s=h||24;break}pad=true;break;case"m":s=dateObject.getMinutes();pad=true;break;case"s":s=dateObject.getSeconds();pad=true;break;case"S":s=Math.round(dateObject.getMilliseconds()*Math.pow(10,l-3));pad=true;break;case"v":case"z":s=dojo.date.getTimezoneName(dateObject);if(s){break}l=4;case"Z":var offset=dateObject.getTimezoneOffset();var tz=[(offset<=0?"+":"-"),dojo.string.pad(Math.floor(Math.abs(offset)/60),2),dojo.string.pad(Math.abs(offset)%60,2)];if(l==4){tz.splice(0,0,"GMT");tz.splice(3,0,":")}s=tz.join("");break;default:throw new Error("dojo.date.locale.format: invalid pattern char: "+pattern)}if(pad){s=dojo.string.pad(s,l)}return s})}dojo.date.locale.format=function(dateObject,options){options=options||{};var locale=dojo.i18n.normalizeLocale(options.locale);var formatLength=options.formatLength||"short";var bundle=dojo.date.locale._getGregorianBundle(locale);var str=[];var sauce=dojo.hitch(this,formatPattern,dateObject,bundle,options.fullYear);if(options.selector=="year"){var year=dateObject.getFullYear();if(locale.match(/^zh|^ja/)){year+="\u5E74"}return year}if(options.selector!="time"){var datePattern=options.datePattern||bundle["dateFormat-"+formatLength];if(datePattern){str.push(_processPattern(datePattern,sauce))}}if(options.selector!="date"){var timePattern=options.timePattern||bundle["timeFormat-"+formatLength];if(timePattern){str.push(_processPattern(timePattern,sauce))}}var result=str.join(" ");return result};dojo.date.locale.regexp=function(options){return dojo.date.locale._parseInfo(options).regexp};dojo.date.locale._parseInfo=function(options){options=options||{};var locale=dojo.i18n.normalizeLocale(options.locale);var bundle=dojo.date.locale._getGregorianBundle(locale);var formatLength=options.formatLength||"short";var datePattern=options.datePattern||bundle["dateFormat-"+formatLength];var timePattern=options.timePattern||bundle["timeFormat-"+formatLength];var pattern;if(options.selector=="date"){pattern=datePattern}else{if(options.selector=="time"){pattern=timePattern}else{pattern=datePattern+" "+timePattern}}var tokens=[];var re=_processPattern(pattern,dojo.hitch(this,_buildDateTimeRE,tokens,bundle,options));return{regexp:re,tokens:tokens,bundle:bundle}};dojo.date.locale.parse=function(value,options){var info=dojo.date.locale._parseInfo(options);var tokens=info.tokens,bundle=info.bundle;var re=new RegExp("^"+info.regexp+"$",info.strict?"":"i");var match=re.exec(value);if(!match){return null}var widthList=["abbr","wide","narrow"];var result=[1970,0,1,0,0,0,0];var amPm="";var valid=dojo.every(match,function(v,i){if(!i){return true}var token=tokens[i-1];var l=token.length;switch(token.charAt(0)){case"y":if(l!=2&&options.strict){result[0]=v}else{if(v<100){v=Number(v);var year=""+new Date().getFullYear();var century=year.substring(0,2)*100;var cutoff=Math.min(Number(year.substring(2,4))+20,99);var num=(v<cutoff)?century+v:century-100+v;result[0]=num}else{if(options.strict){return false}result[0]=v}}break;case"M":if(l>2){var months=bundle["months-format-"+widthList[l-3]].concat();if(!options.strict){v=v.replace(".","").toLowerCase();months=dojo.map(months,function(s){return s.replace(".","").toLowerCase()})}v=dojo.indexOf(months,v);if(v==-1){return false}}else{v--}result[1]=v;break;case"E":case"e":var days=bundle["days-format-"+widthList[l-3]].concat();if(!options.strict){v=v.toLowerCase();days=dojo.map(days,function(d){return d.toLowerCase()})}v=dojo.indexOf(days,v);if(v==-1){return false}break;case"D":result[1]=0;case"d":result[2]=v;break;case"a":var am=options.am||bundle.am;var pm=options.pm||bundle.pm;if(!options.strict){var period=/\./g;v=v.replace(period,"").toLowerCase();am=am.replace(period,"").toLowerCase();pm=pm.replace(period,"").toLowerCase()}if(options.strict&&v!=am&&v!=pm){return false}amPm=(v==pm)?"p":(v==am)?"a":"";break;case"K":if(v==24){v=0}case"h":case"H":case"k":if(v>23){return false}result[3]=v;break;case"m":result[4]=v;break;case"s":result[5]=v;break;case"S":result[6]=v}return true});var hours=+result[3];if(amPm==="p"&&hours<12){result[3]=hours+12}else{if(amPm==="a"&&hours==12){result[3]=0}}var dateObject=new Date(result[0],result[1],result[2],result[3],result[4],result[5],result[6]);if(options.strict){dateObject.setFullYear(result[0])}var allTokens=tokens.join("");if(!valid||(allTokens.indexOf("M")!=-1&&dateObject.getMonth()!=result[1])||(allTokens.indexOf("d")!=-1&&dateObject.getDate()!=result[2])){return null}return dateObject};function _processPattern(pattern,applyPattern,applyLiteral,applyAll){var identity=function(x){return x};applyPattern=applyPattern||identity;applyLiteral=applyLiteral||identity;applyAll=applyAll||identity;var chunks=pattern.match(/(''|[^'])+/g);var literal=pattern.charAt(0)=="'";dojo.forEach(chunks,function(chunk,i){if(!chunk){chunks[i]=""}else{chunks[i]=(literal?applyLiteral:applyPattern)(chunk);literal=!literal}});return applyAll(chunks.join(""))}function _buildDateTimeRE(tokens,bundle,options,pattern){pattern=dojo.regexp.escapeString(pattern);if(!options.strict){pattern=pattern.replace(" a"," ?a")}return pattern.replace(/([a-z])\1*/ig,function(match){var s;var c=match.charAt(0);var l=match.length;var p2="",p3="";if(options.strict){if(l>1){p2="0{"+(l-1)+"}"}if(l>2){p3="0{"+(l-2)+"}"}}else{p2="0?";p3="0{0,2}"}switch(c){case"y":s="\\d{2,4}";break;case"M":s=(l>2)?"\\S+?":p2+"[1-9]|1[0-2]";break;case"D":s=p2+"[1-9]|"+p3+"[1-9][0-9]|[12][0-9][0-9]|3[0-5][0-9]|36[0-6]";break;case"d":s="[12]\\d|"+p2+"[1-9]|3[01]";break;case"w":s=p2+"[1-9]|[1-4][0-9]|5[0-3]";break;case"E":s="\\S+";break;case"h":s=p2+"[1-9]|1[0-2]";break;case"k":s=p2+"\\d|1[01]";break;case"H":s=p2+"\\d|1\\d|2[0-3]";break;case"K":s=p2+"[1-9]|1\\d|2[0-4]";break;case"m":case"s":s="[0-5]\\d";break;case"S":s="\\d{"+l+"}";break;case"a":var am=options.am||bundle.am||"AM";var pm=options.pm||bundle.pm||"PM";if(options.strict){s=am+"|"+pm}else{s=am+"|"+pm;if(am!=am.toLowerCase()){s+="|"+am.toLowerCase()}if(pm!=pm.toLowerCase()){s+="|"+pm.toLowerCase()}if(s.indexOf(".")!=-1){s+="|"+s.replace(/\./g,"")}}s=s.replace(/\./g,"\\.");break;default:s=".*"}if(tokens){tokens.push(match)}return"("+s+")"}).replace(/[\xa0 ]/g,"[\\s\\xa0]")}})();(function(){var _customFormats=[];dojo.date.locale.addCustomFormats=function(packageName,bundleName){_customFormats.push({pkg:packageName,name:bundleName})};dojo.date.locale._getGregorianBundle=function(locale){var gregorian={};dojo.forEach(_customFormats,function(desc){var bundle=dojo.i18n.getLocalization(desc.pkg,desc.name,locale);gregorian=dojo.mixin(gregorian,bundle)},this);return gregorian}})();dojo.date.locale.addCustomFormats("dojo.cldr","gregorian");dojo.date.locale.getNames=function(item,type,context,locale){var label;var lookup=dojo.date.locale._getGregorianBundle(locale);var props=[item,context,type];if(context=="standAlone"){var key=props.join("-");label=lookup[key];if(label[0]==1){label=undefined}}props[1]="format";return(label||lookup[props.join("-")]).concat()};dojo.date.locale.displayPattern=function(fixedPattern,locale){var fixed="GyMdkHmsSEDFwWahKzYeugAZvcL",local=dojo.date.locale._getGregorianBundle(locale).patternChars;return dojo.map(fixedPattern,function(c){var i=fixed.indexOf(c);return i<0?c:local.charAt(i)}).join("")};dojo.date.locale.isWeekend=function(dateObject,locale){var weekend=dojo.cldr.supplemental.getWeekend(locale);var day=(dateObject||new Date()).getDay();if(weekend.end<weekend.start){weekend.end+=7;if(day<weekend.start){day+=7}}return day>=weekend.start&&day<=weekend.end};dojo.date.locale._getDayOfYear=function(dateObject){return dojo.date.difference(new Date(dateObject.getFullYear(),0,1,dateObject.getHours()),dateObject)+1};dojo.date.locale._getWeekOfYear=function(dateObject,firstDayOfWeek){if(arguments.length==1){firstDayOfWeek=0}var firstDayOfYear=new Date(dateObject.getFullYear(),0,1).getDay();var adj=(firstDayOfYear-firstDayOfWeek+7)%7;var week=Math.floor((dojo.date.locale._getDayOfYear(dateObject)+adj-1)/7);if(firstDayOfYear==firstDayOfWeek){week++}return week}}if(!dojo._hasResource["dijit._Calendar"]){dojo._hasResource["dijit._Calendar"]=true;dojo.provide("dijit._Calendar");dojo.declare("dijit._Calendar",[dijit._Widget,dijit._Templated],{templateString:'<table cellspacing="0" cellpadding="0" class="dijitCalendarContainer">\r\n\t<thead>\r\n\t\t<tr class="dijitReset dijitCalendarMonthContainer" valign="top">\r\n\t\t\t<th class=\'dijitReset\' dojoAttachPoint="decrementMonth">\r\n\t\t\t\t<img src="${_blankGif}" alt="" class="dijitCalendarIncrementControl dijitCalendarDecrease" waiRole="presentation">\r\n\t\t\t\t<span dojoAttachPoint="decreaseArrowNode" class="dijitA11ySideArrow">-</span>\r\n\t\t\t</th>\r\n\t\t\t<th class=\'dijitReset\' colspan="5">\r\n\t\t\t\t<div dojoAttachPoint="monthLabelSpacer" class="dijitCalendarMonthLabelSpacer"></div>\r\n\t\t\t\t<div dojoAttachPoint="monthLabelNode" class="dijitCalendarMonthLabel"></div>\r\n\t\t\t</th>\r\n\t\t\t<th class=\'dijitReset\' dojoAttachPoint="incrementMonth">\r\n\t\t\t\t<img src="${_blankGif}" alt="" class="dijitCalendarIncrementControl dijitCalendarIncrease" waiRole="presentation">\r\n\t\t\t\t<span dojoAttachPoint="increaseArrowNode" class="dijitA11ySideArrow">+</span>\r\n\t\t\t</th>\r\n\t\t</tr>\r\n\t\t<tr>\r\n\t\t\t<th class="dijitReset dijitCalendarDayLabelTemplate"><span class="dijitCalendarDayLabel"></span></th>\r\n\t\t</tr>\r\n\t</thead>\r\n\t<tbody dojoAttachEvent="onclick: _onDayClick, onmouseover: _onDayMouseOver, onmouseout: _onDayMouseOut" class="dijitReset dijitCalendarBodyContainer">\r\n\t\t<tr class="dijitReset dijitCalendarWeekTemplate">\r\n\t\t\t<td class="dijitReset dijitCalendarDateTemplate"><span class="dijitCalendarDateLabel"></span></td>\r\n\t\t</tr>\r\n\t</tbody>\r\n\t<tfoot class="dijitReset dijitCalendarYearContainer">\r\n\t\t<tr>\r\n\t\t\t<td class=\'dijitReset\' valign="top" colspan="7">\r\n\t\t\t\t<h3 class="dijitCalendarYearLabel">\r\n\t\t\t\t\t<span dojoAttachPoint="previousYearLabelNode" class="dijitInline dijitCalendarPreviousYear"></span>\r\n\t\t\t\t\t<span dojoAttachPoint="currentYearLabelNode" class="dijitInline dijitCalendarSelectedYear"></span>\r\n\t\t\t\t\t<span dojoAttachPoint="nextYearLabelNode" class="dijitInline dijitCalendarNextYear"></span>\r\n\t\t\t\t</h3>\r\n\t\t\t</td>\r\n\t\t</tr>\r\n\t</tfoot>\r\n</table>\t\r\n',value:new Date(),dayWidth:"narrow",setValue:function(value){dojo.deprecated("dijit.Calendar:setValue() is deprecated.  Use attr('value', ...) instead.","","2.0");this.attr("value",value)},_getValueAttr:function(value){var value=new Date(this.value);value.setHours(0,0,0,0);return value},_setValueAttr:function(value){if(!this.value||dojo.date.compare(value,this.value)){value=new Date(value);value.setHours(1);this.displayMonth=new Date(value);if(!this.isDisabledDate(value,this.lang)){this.value=value;this.onChange(this.attr("value"))}this._populateGrid()}},_setText:function(node,text){while(node.firstChild){node.removeChild(node.firstChild)}node.appendChild(dojo.doc.createTextNode(text))},_populateGrid:function(){var month=this.displayMonth;month.setDate(1);var firstDay=month.getDay();var daysInMonth=dojo.date.getDaysInMonth(month);var daysInPreviousMonth=dojo.date.getDaysInMonth(dojo.date.add(month,"month",-1));var today=new Date();var selected=this.value;var dayOffset=dojo.cldr.supplemental.getFirstDayOfWeek(this.lang);if(dayOffset>firstDay){dayOffset-=7}dojo.query(".dijitCalendarDateTemplate",this.domNode).forEach(function(template,i){i+=dayOffset;var date=new Date(month);var number,clazz="dijitCalendar",adj=0;if(i<firstDay){number=daysInPreviousMonth-firstDay+i+1;adj=-1;clazz+="Previous"}else{if(i>=(firstDay+daysInMonth)){number=i-firstDay-daysInMonth+1;adj=1;clazz+="Next"}else{number=i-firstDay+1;clazz+="Current"}}if(adj){date=dojo.date.add(date,"month",adj)}date.setDate(number);if(!dojo.date.compare(date,today,"date")){clazz="dijitCalendarCurrentDate "+clazz}if(!dojo.date.compare(date,selected,"date")){clazz="dijitCalendarSelectedDate "+clazz}if(this.isDisabledDate(date,this.lang)){clazz="dijitCalendarDisabledDate "+clazz}var clazz2=this.getClassForDate(date,this.lang);if(clazz2){clazz=clazz2+" "+clazz}template.className=clazz+"Month dijitCalendarDateTemplate";template.dijitDateValue=date.valueOf();var label=dojo.query(".dijitCalendarDateLabel",template)[0];this._setText(label,date.getDate())},this);var monthNames=dojo.date.locale.getNames("months","wide","standAlone",this.lang);this._setText(this.monthLabelNode,monthNames[month.getMonth()]);var y=month.getFullYear()-1;var d=new Date();dojo.forEach(["previous","current","next"],function(name){d.setFullYear(y++);this._setText(this[name+"YearLabelNode"],dojo.date.locale.format(d,{selector:"year",locale:this.lang}))},this);var _this=this;var typematic=function(nodeProp,dateProp,adj){_this._connects.push(dijit.typematic.addMouseListener(_this[nodeProp],_this,function(count){if(count>=0){_this._adjustDisplay(dateProp,adj)}},0.8,500))};typematic("incrementMonth","month",1);typematic("decrementMonth","month",-1);typematic("nextYearLabelNode","year",1);typematic("previousYearLabelNode","year",-1)},goToToday:function(){this.attr("value",new Date())},postCreate:function(){this.inherited(arguments);dojo.setSelectable(this.domNode,false);var cloneClass=dojo.hitch(this,function(clazz,n){var template=dojo.query(clazz,this.domNode)[0];for(var i=0;i<n;i++){template.parentNode.appendChild(template.cloneNode(true))}});cloneClass(".dijitCalendarDayLabelTemplate",6);cloneClass(".dijitCalendarDateTemplate",6);cloneClass(".dijitCalendarWeekTemplate",5);var dayNames=dojo.date.locale.getNames("days",this.dayWidth,"standAlone",this.lang);var dayOffset=dojo.cldr.supplemental.getFirstDayOfWeek(this.lang);dojo.query(".dijitCalendarDayLabel",this.domNode).forEach(function(label,i){this._setText(label,dayNames[(i+dayOffset)%7])},this);var monthNames=dojo.date.locale.getNames("months","wide","standAlone",this.lang);dojo.forEach(monthNames,function(name){var monthSpacer=dojo.create("div",null,this.monthLabelSpacer);this._setText(monthSpacer,name)},this);this.value=null;this.attr("value",new Date())},_adjustDisplay:function(part,amount){this.displayMonth=dojo.date.add(this.displayMonth,part,amount);this._populateGrid()},_onDayClick:function(evt){dojo.stopEvent(evt);for(var node=evt.target;node&&!node.dijitDateValue;node=node.parentNode){}if(node&&!dojo.hasClass(node,"dijitCalendarDisabledDate")){this.attr("value",node.dijitDateValue);this.onValueSelected(this.attr("value"))}},_onDayMouseOver:function(evt){var node=evt.target;if(node&&(node.dijitDateValue||node==this.previousYearLabelNode||node==this.nextYearLabelNode)){dojo.addClass(node,"dijitCalendarHoveredDate");this._currentNode=node}},_onDayMouseOut:function(evt){if(!this._currentNode){return }for(var node=evt.relatedTarget;node;){if(node==this._currentNode){return }try{node=node.parentNode}catch(x){node=null}}dojo.removeClass(this._currentNode,"dijitCalendarHoveredDate");this._currentNode=null},onValueSelected:function(date){},onChange:function(date){},isDisabledDate:function(dateObject,locale){},getClassForDate:function(dateObject,locale){}})}if(!dojo._hasResource["dijit.form.TextBox"]){dojo._hasResource["dijit.form.TextBox"]=true;dojo.provide("dijit.form.TextBox");dojo.declare("dijit.form.TextBox",dijit.form._FormValueWidget,{trim:false,uppercase:false,lowercase:false,propercase:false,maxLength:"",templateString:'<input class="dijit dijitReset dijitLeft" dojoAttachPoint=\'textbox,focusNode\'\r\n\tdojoAttachEvent=\'onmouseenter:_onMouse,onmouseleave:_onMouse\'\r\n\tautocomplete="off" type="${type}" ${nameAttrSetting}\r\n\t/>\r\n',baseClass:"dijitTextBox",attributeMap:dojo.delegate(dijit.form._FormValueWidget.prototype.attributeMap,{maxLength:"focusNode"}),_getValueAttr:function(){return this.parse(this.attr("displayedValue"),this.constraints)},_setValueAttr:function(value,priorityChange,formattedValue){var filteredValue;if(value!==undefined){filteredValue=this.filter(value);if(typeof formattedValue!="string"){if(filteredValue!==null&&((typeof filteredValue!="number")||!isNaN(filteredValue))){formattedValue=this.filter(this.format(filteredValue,this.constraints))}else{formattedValue=""}}}if(formattedValue!=null&&formattedValue!=undefined&&((typeof formattedValue)!="number"||!isNaN(formattedValue))&&this.textbox.value!=formattedValue){this.textbox.value=formattedValue}this.inherited(arguments,[filteredValue,priorityChange])},displayedValue:"",getDisplayedValue:function(){dojo.deprecated(this.declaredClass+"::getDisplayedValue() is deprecated. Use attr('displayedValue') instead.","","2.0");return this.attr("displayedValue")},_getDisplayedValueAttr:function(){return this.filter(this.textbox.value)},setDisplayedValue:function(value){dojo.deprecated(this.declaredClass+"::setDisplayedValue() is deprecated. Use attr('displayedValue', ...) instead.","","2.0");this.attr("displayedValue",value)},_setDisplayedValueAttr:function(value){if(value===null||value===undefined){value=""}else{if(typeof value!="string"){value=String(value)}}this.textbox.value=value;this._setValueAttr(this.attr("value"),undefined,value)},format:function(value,constraints){return((value==null||value==undefined)?"":(value.toString?value.toString():value))},parse:function(value,constraints){return value},_refreshState:function(){},_onInput:function(e){if(e&&e.type&&/key/i.test(e.type)&&e.keyCode){switch(e.keyCode){case dojo.keys.SHIFT:case dojo.keys.ALT:case dojo.keys.CTRL:case dojo.keys.TAB:return }}if(this.intermediateChanges){var _this=this;setTimeout(function(){_this._handleOnChange(_this.attr("value"),false)},0)}this._refreshState()},postCreate:function(){this.textbox.setAttribute("value",this.textbox.value);this.inherited(arguments);if(dojo.isMoz||dojo.isOpera){this.connect(this.textbox,"oninput",this._onInput)}else{this.connect(this.textbox,"onkeydown",this._onInput);this.connect(this.textbox,"onkeyup",this._onInput);this.connect(this.textbox,"onpaste",this._onInput);this.connect(this.textbox,"oncut",this._onInput)}this._layoutHack()},_blankValue:"",filter:function(val){if(val===null){return this._blankValue}if(typeof val!="string"){return val}if(this.trim){val=dojo.trim(val)}if(this.uppercase){val=val.toUpperCase()}if(this.lowercase){val=val.toLowerCase()}if(this.propercase){val=val.replace(/[^\s]+/g,function(word){return word.substring(0,1).toUpperCase()+word.substring(1)})}return val},_setBlurValue:function(){this._setValueAttr(this.attr("value"),true)},_onBlur:function(e){if(this.disabled){return }this._setBlurValue();this.inherited(arguments)},_onFocus:function(e){if(this.disabled){return }this._refreshState();this.inherited(arguments)},reset:function(){this.textbox.value="";this.inherited(arguments)}});dijit.selectInputText=function(element,start,stop){var _window=dojo.global;var _document=dojo.doc;element=dojo.byId(element);if(isNaN(start)){start=0}if(isNaN(stop)){stop=element.value?element.value.length:0}element.focus();if(_document["selection"]&&dojo.body()["createTextRange"]){if(element.createTextRange){var range=element.createTextRange();with(range){collapse(true);moveStart("character",start);moveEnd("character",stop);select()}}}else{if(_window["getSelection"]){var selection=_window.getSelection();if(element.setSelectionRange){element.setSelectionRange(start,stop)}}}}}if(!dojo._hasResource["dijit.Tooltip"]){dojo._hasResource["dijit.Tooltip"]=true;dojo.provide("dijit.Tooltip");dojo.declare("dijit._MasterTooltip",[dijit._Widget,dijit._Templated],{duration:dijit.defaultDuration,templateString:'<div class="dijitTooltip dijitTooltipLeft" id="dojoTooltip">\r\n\t<div class="dijitTooltipContainer dijitTooltipContents" dojoAttachPoint="containerNode" waiRole=\'alert\'></div>\r\n\t<div class="dijitTooltipConnector"></div>\r\n</div>\r\n',postCreate:function(){dojo.body().appendChild(this.domNode);this.bgIframe=new dijit.BackgroundIframe(this.domNode);this.fadeIn=dojo.fadeIn({node:this.domNode,duration:this.duration,onEnd:dojo.hitch(this,"_onShow")});this.fadeOut=dojo.fadeOut({node:this.domNode,duration:this.duration,onEnd:dojo.hitch(this,"_onHide")})},show:function(innerHTML,aroundNode,position){if(this.aroundNode&&this.aroundNode===aroundNode){return }if(this.fadeOut.status()=="playing"){this._onDeck=arguments;return }this.containerNode.innerHTML=innerHTML;this.domNode.style.top=(this.domNode.offsetTop+1)+"px";var align={};var ltr=this.isLeftToRight();dojo.forEach((position&&position.length)?position:dijit.Tooltip.defaultPosition,function(pos){switch(pos){case"after":align[ltr?"BR":"BL"]=ltr?"BL":"BR";break;case"before":align[ltr?"BL":"BR"]=ltr?"BR":"BL";break;case"below":align[ltr?"BL":"BR"]=ltr?"TL":"TR";align[ltr?"BR":"BL"]=ltr?"TR":"TL";break;case"above":default:align[ltr?"TL":"TR"]=ltr?"BL":"BR";align[ltr?"TR":"TL"]=ltr?"BR":"BL";break}});var pos=dijit.placeOnScreenAroundElement(this.domNode,aroundNode,align,dojo.hitch(this,"orient"));dojo.style(this.domNode,"opacity",0);this.fadeIn.play();this.isShowingNow=true;this.aroundNode=aroundNode},orient:function(node,aroundCorner,tooltipCorner){node.className="dijitTooltip "+{"BL-TL":"dijitTooltipBelow dijitTooltipABLeft","TL-BL":"dijitTooltipAbove dijitTooltipABLeft","BR-TR":"dijitTooltipBelow dijitTooltipABRight","TR-BR":"dijitTooltipAbove dijitTooltipABRight","BR-BL":"dijitTooltipRight","BL-BR":"dijitTooltipLeft"}[aroundCorner+"-"+tooltipCorner]},_onShow:function(){if(dojo.isIE){this.domNode.style.filter=""}},hide:function(aroundNode){if(this._onDeck&&this._onDeck[1]==aroundNode){this._onDeck=null}else{if(this.aroundNode===aroundNode){this.fadeIn.stop();this.isShowingNow=false;this.aroundNode=null;this.fadeOut.play()}else{}}},_onHide:function(){this.domNode.style.cssText="";if(this._onDeck){this.show.apply(this,this._onDeck);this._onDeck=null}}});dijit.showTooltip=function(innerHTML,aroundNode,position){if(!dijit._masterTT){dijit._masterTT=new dijit._MasterTooltip()}return dijit._masterTT.show(innerHTML,aroundNode,position)};dijit.hideTooltip=function(aroundNode){if(!dijit._masterTT){dijit._masterTT=new dijit._MasterTooltip()}return dijit._masterTT.hide(aroundNode)};dojo.declare("dijit.Tooltip",dijit._Widget,{label:"",showDelay:400,connectId:[],position:[],_setConnectIdAttr:function(ids){this._connectNodes=[];this.connectId=dojo.isArrayLike(ids)?ids:[ids];dojo.forEach(this.connectId,function(id){var node=dojo.byId(id);if(node){this._connectNodes.push(node);dojo.forEach(["onMouseEnter","onMouseLeave","onFocus","onBlur"],function(event){this.connect(node,event.toLowerCase(),"_"+event)},this);if(dojo.isIE){node.style.zoom=1}}},this)},postCreate:function(){dojo.addClass(this.domNode,"dijitTooltipData")},_onMouseEnter:function(e){this._onHover(e)},_onMouseLeave:function(e){this._onUnHover(e)},_onFocus:function(e){this._focus=true;this._onHover(e);this.inherited(arguments)},_onBlur:function(e){this._focus=false;this._onUnHover(e);this.inherited(arguments)},_onHover:function(e){if(!this._showTimer){var target=e.target;this._showTimer=setTimeout(dojo.hitch(this,function(){this.open(target)}),this.showDelay)}},_onUnHover:function(e){if(this._focus){return }if(this._showTimer){clearTimeout(this._showTimer);delete this._showTimer}this.close()},open:function(target){target=target||this._connectNodes[0];if(!target){return }if(this._showTimer){clearTimeout(this._showTimer);delete this._showTimer}dijit.showTooltip(this.label||this.domNode.innerHTML,target,this.position);this._connectNode=target},close:function(){if(this._connectNode){dijit.hideTooltip(this._connectNode);delete this._connectNode}if(this._showTimer){clearTimeout(this._showTimer);delete this._showTimer}},uninitialize:function(){this.close()}});dijit.Tooltip.defaultPosition=["after","before"]}if(!dojo._hasResource["dijit.form.ValidationTextBox"]){dojo._hasResource["dijit.form.ValidationTextBox"]=true;dojo.provide("dijit.form.ValidationTextBox");dojo.declare("dijit.form.ValidationTextBox",dijit.form.TextBox,{templateString:'<div class="dijit dijitReset dijitInlineTable dijitLeft"\r\n\tid="widget_${id}"\r\n\tdojoAttachEvent="onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse" waiRole="presentation"\r\n\t><div style="overflow:hidden;"\r\n\t\t><div class="dijitReset dijitValidationIcon"><br></div\r\n\t\t><div class="dijitReset dijitValidationIconText">&Chi;</div\r\n\t\t><div class="dijitReset dijitInputField"\r\n\t\t\t><input class="dijitReset" dojoAttachPoint=\'textbox,focusNode\' autocomplete="off"\r\n\t\t\t${nameAttrSetting} type=\'${type}\'\r\n\t\t/></div\r\n\t></div\r\n></div>\r\n',baseClass:"dijitTextBox",required:false,promptMessage:"",invalidMessage:"$_unset_$",constraints:{},regExp:".*",regExpGen:function(constraints){return this.regExp},state:"",tooltipPosition:[],_setValueAttr:function(){this.inherited(arguments);this.validate(this._focused)},validator:function(value,constraints){return(new RegExp("^(?:"+this.regExpGen(constraints)+")"+(this.required?"":"?")+"$")).test(value)&&(!this.required||!this._isEmpty(value))&&(this._isEmpty(value)||this.parse(value,constraints)!==undefined)},_isValidSubset:function(){return this.textbox.value.search(this._partialre)==0},isValid:function(isFocused){return this.validator(this.textbox.value,this.constraints)},_isEmpty:function(value){return/^\s*$/.test(value)},getErrorMessage:function(isFocused){return this.invalidMessage},getPromptMessage:function(isFocused){return this.promptMessage},_maskValidSubsetError:true,validate:function(isFocused){var message="";var isValid=this.disabled||this.isValid(isFocused);if(isValid){this._maskValidSubsetError=true}var isValidSubset=!isValid&&isFocused&&this._isValidSubset();var isEmpty=this._isEmpty(this.textbox.value);this.state=(isValid||(!this._hasBeenBlurred&&isEmpty)||isValidSubset)?"":"Error";if(this.state=="Error"){this._maskValidSubsetError=false}this._setStateClass();dijit.setWaiState(this.focusNode,"invalid",isValid?"false":"true");if(isFocused){if(isEmpty){message=this.getPromptMessage(true)}if(!message&&(this.state=="Error"||(isValidSubset&&!this._maskValidSubsetError))){message=this.getErrorMessage(true)}}this.displayMessage(message);return isValid},_message:"",displayMessage:function(message){if(this._message==message){return }this._message=message;dijit.hideTooltip(this.domNode);if(message){dijit.showTooltip(message,this.domNode,this.tooltipPosition)}},_refreshState:function(){this.validate(this._focused);this.inherited(arguments)},constructor:function(){this.constraints={}},postMixInProperties:function(){this.inherited(arguments);this.constraints.locale=this.lang;this.messages=dojo.i18n.getLocalization("dijit.form","validate",this.lang);if(this.invalidMessage=="$_unset_$"){this.invalidMessage=this.messages.invalidMessage}var p=this.regExpGen(this.constraints);this.regExp=p;var partialre="";if(p!=".*"){this.regExp.replace(/\\.|\[\]|\[.*?[^\\]{1}\]|\{.*?\}|\(\?[=:!]|./g,function(re){switch(re.charAt(0)){case"{":case"+":case"?":case"*":case"^":case"$":case"|":case"(":partialre+=re;break;case")":partialre+="|$)";break;default:partialre+="(?:"+re+"|$)";break}})}try{"".search(partialre)}catch(e){partialre=this.regExp;console.warn("RegExp error in "+this.declaredClass+": "+this.regExp)}this._partialre="^(?:"+partialre+")$"},_setDisabledAttr:function(value){this.inherited(arguments);if(this.valueNode){this.valueNode.disabled=value}this._refreshState()},_setRequiredAttr:function(value){this.required=value;dijit.setWaiState(this.focusNode,"required",value);this._refreshState()},postCreate:function(){if(dojo.isIE){var s=dojo.getComputedStyle(this.focusNode);if(s){var ff=s.fontFamily;if(ff){this.focusNode.style.fontFamily=ff}}}this.inherited(arguments)},reset:function(){this._maskValidSubsetError=true;this.inherited(arguments)}});dojo.declare("dijit.form.MappedTextBox",dijit.form.ValidationTextBox,{postMixInProperties:function(){this.inherited(arguments);this.nameAttrSetting=""},serialize:function(val,options){return val.toString?val.toString():""},toString:function(){var val=this.filter(this.attr("value"));return val!=null?(typeof val=="string"?val:this.serialize(val,this.constraints)):""},validate:function(){this.valueNode.value=this.toString();return this.inherited(arguments)},buildRendering:function(){this.inherited(arguments);this.valueNode=dojo.create("input",{style:{display:"none"},type:this.type,name:this.name},this.textbox,"after")},_setDisabledAttr:function(value){this.inherited(arguments);dojo.attr(this.valueNode,"disabled",value)},reset:function(){this.valueNode.value="";this.inherited(arguments)}});dojo.declare("dijit.form.RangeBoundTextBox",dijit.form.MappedTextBox,{rangeMessage:"",rangeCheck:function(primitive,constraints){var isMin="min" in constraints;var isMax="max" in constraints;if(isMin||isMax){return(!isMin||this.compare(primitive,constraints.min)>=0)&&(!isMax||this.compare(primitive,constraints.max)<=0)}return true},isInRange:function(isFocused){return this.rangeCheck(this.attr("value"),this.constraints)},_isDefinitelyOutOfRange:function(){var val=this.attr("value");var isTooLittle=false;var isTooMuch=false;if("min" in this.constraints){var min=this.constraints.min;val=this.compare(val,((typeof min=="number")&&min>=0&&val!=0)?0:min);isTooLittle=(typeof val=="number")&&val<0}if("max" in this.constraints){var max=this.constraints.max;val=this.compare(val,((typeof max!="number")||max>0)?max:0);isTooMuch=(typeof val=="number")&&val>0}return isTooLittle||isTooMuch},_isValidSubset:function(){return this.inherited(arguments)&&!this._isDefinitelyOutOfRange()},isValid:function(isFocused){return this.inherited(arguments)&&((this._isEmpty(this.textbox.value)&&!this.required)||this.isInRange(isFocused))},getErrorMessage:function(isFocused){if(dijit.form.RangeBoundTextBox.superclass.isValid.call(this,false)&&!this.isInRange(isFocused)){return this.rangeMessage}return this.inherited(arguments)},postMixInProperties:function(){this.inherited(arguments);if(!this.rangeMessage){this.messages=dojo.i18n.getLocalization("dijit.form","validate",this.lang);this.rangeMessage=this.messages.rangeMessage}},postCreate:function(){this.inherited(arguments);if(this.constraints.min!==undefined){dijit.setWaiState(this.focusNode,"valuemin",this.constraints.min)}if(this.constraints.max!==undefined){dijit.setWaiState(this.focusNode,"valuemax",this.constraints.max)}},_setValueAttr:function(value,priorityChange){dijit.setWaiState(this.focusNode,"valuenow",value);this.inherited(arguments)}})}if(!dojo._hasResource["dijit.form._DateTimeTextBox"]){dojo._hasResource["dijit.form._DateTimeTextBox"]=true;dojo.provide("dijit.form._DateTimeTextBox");dojo.declare("dijit.form._DateTimeTextBox",dijit.form.RangeBoundTextBox,{regExpGen:dojo.date.locale.regexp,compare:dojo.date.compare,format:function(value,constraints){if(!value){return""}return dojo.date.locale.format(value,constraints)},parse:function(value,constraints){return dojo.date.locale.parse(value,constraints)||(this._isEmpty(value)?null:undefined)},serialize:dojo.date.stamp.toISOString,value:new Date(""),_blankValue:null,popupClass:"",_selector:"",postMixInProperties:function(){this.inherited(arguments);if(!this.value||this.value.toString()==dijit.form._DateTimeTextBox.prototype.value.toString()){this.value=null}var constraints=this.constraints;constraints.selector=this._selector;constraints.fullYear=true;var fromISO=dojo.date.stamp.fromISOString;if(typeof constraints.min=="string"){constraints.min=fromISO(constraints.min)}if(typeof constraints.max=="string"){constraints.max=fromISO(constraints.max)}},_onFocus:function(evt){this._open()},_setValueAttr:function(value,priorityChange,formattedValue){this.inherited(arguments);if(this._picker){if(!value){value=new Date()}this._picker.attr("value",value)}},_open:function(){if(this.disabled||this.readOnly||!this.popupClass){return }var textBox=this;if(!this._picker){var PopupProto=dojo.getObject(this.popupClass,false);this._picker=new PopupProto({onValueSelected:function(value){if(textBox._tabbingAway){delete textBox._tabbingAway}else{textBox.focus()}setTimeout(dojo.hitch(textBox,"_close"),1);dijit.form._DateTimeTextBox.superclass._setValueAttr.call(textBox,value,true)},lang:textBox.lang,constraints:textBox.constraints,isDisabledDate:function(date){var compare=dojo.date.compare;var constraints=textBox.constraints;return constraints&&(constraints.min&&(compare(constraints.min,date,"date")>0)||(constraints.max&&compare(constraints.max,date,"date")<0))}});this._picker.attr("value",this.attr("value")||new Date())}if(!this._opened){dijit.popup.open({parent:this,popup:this._picker,around:this.domNode,onCancel:dojo.hitch(this,this._close),onClose:function(){textBox._opened=false}});this._opened=true}dojo.marginBox(this._picker.domNode,{w:this.domNode.offsetWidth})},_close:function(){if(this._opened){dijit.popup.close(this._picker);this._opened=false}},_onBlur:function(){this._close();if(this._picker){this._picker.destroy();delete this._picker}this.inherited(arguments)},_getDisplayedValueAttr:function(){return this.textbox.value},_setDisplayedValueAttr:function(value,priorityChange){this._setValueAttr(this.parse(value,this.constraints),priorityChange,value)},destroy:function(){if(this._picker){this._picker.destroy();delete this._picker}this.inherited(arguments)},postCreate:function(){this.inherited(arguments);this.connect(this.focusNode,"onkeypress",this._onKeyPress)},_onKeyPress:function(e){var p=this._picker,dk=dojo.keys;if(p&&this._opened&&p.handleKey){if(p.handleKey(e)===false){return }}if(this._opened&&e.charOrCode==dk.ESCAPE&&!e.shiftKey&&!e.ctrlKey&&!e.altKey){this._close();dojo.stopEvent(e)}else{if(!this._opened&&e.charOrCode==dk.DOWN_ARROW){this._open();dojo.stopEvent(e)}else{if(e.charOrCode===dk.TAB){this._tabbingAway=true}else{if(this._opened&&(e.keyChar||e.charOrCode===dk.BACKSPACE||e.charOrCode==dk.DELETE)){setTimeout(dojo.hitch(this,function(){dijit.placeOnScreenAroundElement(p.domNode.parentNode,this.domNode,{"BL":"TL","TL":"BL"},p.orient?dojo.hitch(p,"orient"):null)}),1)}}}}}})}if(!dojo._hasResource["dijit.form.DateTextBox"]){dojo._hasResource["dijit.form.DateTextBox"]=true;dojo.provide("dijit.form.DateTextBox");dojo.declare("dijit.form.DateTextBox",dijit.form._DateTimeTextBox,{baseClass:"dijitTextBox dijitDateTextBox",popupClass:"dijit._Calendar",_selector:"date",value:new Date("")})}if(!dojo._hasResource["dijit._TimePicker"]){dojo._hasResource["dijit._TimePicker"]=true;dojo.provide("dijit._TimePicker");dojo.declare("dijit._TimePicker",[dijit._Widget,dijit._Templated],{templateString:'<div id="widget_${id}" class="dijitMenu ${baseClass}"\r\n    ><div dojoAttachPoint="upArrow" class="dijitButtonNode dijitUpArrowButton" dojoAttachEvent="onmouseenter:_buttonMouse,onmouseleave:_buttonMouse"\r\n\t\t><div class="dijitReset dijitInline dijitArrowButtonInner" wairole="presentation" role="presentation">&nbsp;</div\r\n\t\t><div class="dijitArrowButtonChar">&#9650;</div></div\r\n    ><div dojoAttachPoint="timeMenu,focusNode" dojoAttachEvent="onclick:_onOptionSelected,onmouseover,onmouseout"></div\r\n    ><div dojoAttachPoint="downArrow" class="dijitButtonNode dijitDownArrowButton" dojoAttachEvent="onmouseenter:_buttonMouse,onmouseleave:_buttonMouse"\r\n\t\t><div class="dijitReset dijitInline dijitArrowButtonInner" wairole="presentation" role="presentation">&nbsp;</div\r\n\t\t><div class="dijitArrowButtonChar">&#9660;</div></div\r\n></div>\r\n',baseClass:"dijitTimePicker",clickableIncrement:"T00:15:00",visibleIncrement:"T01:00:00",visibleRange:"T05:00:00",value:new Date(),_visibleIncrement:2,_clickableIncrement:1,_totalIncrements:10,constraints:{},serialize:dojo.date.stamp.toISOString,_filterString:"",setValue:function(value){dojo.deprecated("dijit._TimePicker:setValue() is deprecated.  Use attr('value') instead.","","2.0");this.attr("value",value)},_setValueAttr:function(date){this.value=date;this._showText()},onOpen:function(best){if(this._beenOpened&&this.domNode.parentNode){var p=dijit.byId(this.domNode.parentNode.dijitPopupParent);if(p){var val=p.getDisplayedValue();if(val&&!p.parse(val,p.constraints)){this._filterString=val}else{this._filterString=""}this._showText()}}this._beenOpened=true},isDisabledDate:function(dateObject,locale){return false},_getFilteredNodes:function(start,maxNum,before){var nodes=[],n,i=start,max=this._maxIncrement+Math.abs(i),chk=before?-1:1,dec=before?1:0,inc=before?0:1;do{i=i-dec;n=this._createOption(i);if(n){nodes.push(n)}i=i+inc}while(nodes.length<maxNum&&(i*chk)<max);if(before){nodes.reverse()}return nodes},_showText:function(){this.timeMenu.innerHTML="";var fromIso=dojo.date.stamp.fromISOString;this._clickableIncrementDate=fromIso(this.clickableIncrement);this._visibleIncrementDate=fromIso(this.visibleIncrement);this._visibleRangeDate=fromIso(this.visibleRange);var sinceMidnight=function(date){return date.getHours()*60*60+date.getMinutes()*60+date.getSeconds()};var clickableIncrementSeconds=sinceMidnight(this._clickableIncrementDate);var visibleIncrementSeconds=sinceMidnight(this._visibleIncrementDate);var visibleRangeSeconds=sinceMidnight(this._visibleRangeDate);var time=this.value.getTime();this._refDate=new Date(time-time%(visibleIncrementSeconds*1000));this._refDate.setFullYear(1970,0,1);this._clickableIncrement=1;this._totalIncrements=visibleRangeSeconds/clickableIncrementSeconds;this._visibleIncrement=visibleIncrementSeconds/clickableIncrementSeconds;this._maxIncrement=(60*60*24)/clickableIncrementSeconds;var before=this._getFilteredNodes(0,this._totalIncrements>>1,true);var after=this._getFilteredNodes(0,this._totalIncrements>>1,false);if(before.length<this._totalIncrements>>1){before=before.slice(before.length/2);after=after.slice(0,after.length/2)}dojo.forEach(before.concat(after),function(n){this.timeMenu.appendChild(n)},this)},postCreate:function(){if(this.constraints===dijit._TimePicker.prototype.constraints){this.constraints={}}dojo.mixin(this,this.constraints);if(!this.constraints.locale){this.constraints.locale=this.lang}this.connect(this.timeMenu,dojo.isIE?"onmousewheel":"DOMMouseScroll","_mouseWheeled");var _this=this;var typematic=function(){_this._connects.push(dijit.typematic.addMouseListener.apply(null,arguments))};typematic(this.upArrow,this,this._onArrowUp,1,50);typematic(this.downArrow,this,this._onArrowDown,1,50);var triggerFx=function(cb){return function(cnt){if(cnt>0){cb.call(this,arguments)}}};var hoverFx=function(node,cb){return function(e){dojo.stopEvent(e);dijit.typematic.trigger(e,this,node,triggerFx(cb),node,1,50)}};this.connect(this.upArrow,"onmouseover",hoverFx(this.upArrow,this._onArrowUp));this.connect(this.downArrow,"onmouseover",hoverFx(this.downArrow,this._onArrowDown));this.inherited(arguments)},_buttonMouse:function(e){dojo.toggleClass(e.currentTarget,"dijitButtonNodeHover",e.type=="mouseover")},_createOption:function(index){var date=new Date(this._refDate);var incrementDate=this._clickableIncrementDate;date.setHours(date.getHours()+incrementDate.getHours()*index,date.getMinutes()+incrementDate.getMinutes()*index,date.getSeconds()+incrementDate.getSeconds()*index);var dateString=dojo.date.locale.format(date,this.constraints);if(this._filterString&&dateString.toLowerCase().indexOf(this._filterString)!==0){return null}var div=dojo.create("div",{"class":this.baseClass+"Item"});div.date=date;div.index=index;dojo.create("div",{"class":this.baseClass+"ItemInner",innerHTML:dateString},div);if(index%this._visibleIncrement<1&&index%this._visibleIncrement>-1){dojo.addClass(div,this.baseClass+"Marker")}else{if(!(index%this._clickableIncrement)){dojo.addClass(div,this.baseClass+"Tick")}}if(this.isDisabledDate(date)){dojo.addClass(div,this.baseClass+"ItemDisabled")}if(!dojo.date.compare(this.value,date,this.constraints.selector)){div.selected=true;dojo.addClass(div,this.baseClass+"ItemSelected");if(dojo.hasClass(div,this.baseClass+"Marker")){dojo.addClass(div,this.baseClass+"MarkerSelected")}else{dojo.addClass(div,this.baseClass+"TickSelected")}}return div},_onOptionSelected:function(tgt){var tdate=tgt.target.date||tgt.target.parentNode.date;if(!tdate||this.isDisabledDate(tdate)){return }this._highlighted_option=null;this.attr("value",tdate);this.onValueSelected(tdate)},onValueSelected:function(time){},_highlightOption:function(node,highlight){if(!node){return }if(highlight){if(this._highlighted_option){this._highlightOption(this._highlighted_option,false)}this._highlighted_option=node}else{if(this._highlighted_option!==node){return }else{this._highlighted_option=null}}dojo.toggleClass(node,this.baseClass+"ItemHover",highlight);if(dojo.hasClass(node,this.baseClass+"Marker")){dojo.toggleClass(node,this.baseClass+"MarkerHover",highlight)}else{dojo.toggleClass(node,this.baseClass+"TickHover",highlight)}},onmouseover:function(e){var tgr=(e.target.parentNode===this.timeMenu)?e.target:e.target.parentNode;if(!dojo.hasClass(tgr,this.baseClass+"Item")){return }this._highlightOption(tgr,true)},onmouseout:function(e){var tgr=(e.target.parentNode===this.timeMenu)?e.target:e.target.parentNode;this._highlightOption(tgr,false)},_mouseWheeled:function(e){dojo.stopEvent(e);var scrollAmount=(dojo.isIE?e.wheelDelta:-e.detail);this[(scrollAmount>0?"_onArrowUp":"_onArrowDown")]()},_onArrowUp:function(count){if(typeof count=="number"&&count==-1){return }if(!this.timeMenu.childNodes.length){return }var index=this.timeMenu.childNodes[0].index;var divs=this._getFilteredNodes(index,1,true);if(divs.length){this.timeMenu.removeChild(this.timeMenu.childNodes[this.timeMenu.childNodes.length-1]);this.timeMenu.insertBefore(divs[0],this.timeMenu.childNodes[0])}},_onArrowDown:function(count){if(typeof count=="number"&&count==-1){return }if(!this.timeMenu.childNodes.length){return }var index=this.timeMenu.childNodes[this.timeMenu.childNodes.length-1].index+1;var divs=this._getFilteredNodes(index,1,false);if(divs.length){this.timeMenu.removeChild(this.timeMenu.childNodes[0]);this.timeMenu.appendChild(divs[0])}},handleKey:function(e){var dk=dojo.keys;if(e.keyChar||e.charOrCode===dk.BACKSPACE||e.charOrCode==dk.DELETE){setTimeout(dojo.hitch(this,function(){this._filterString=e.target.value.toLowerCase();this._showText()}),1)}else{if(e.charOrCode==dk.DOWN_ARROW||e.charOrCode==dk.UP_ARROW){dojo.stopEvent(e);if(this._highlighted_option&&!this._highlighted_option.parentNode){this._highlighted_option=null}var timeMenu=this.timeMenu,tgt=this._highlighted_option||dojo.query("."+this.baseClass+"ItemSelected",timeMenu)[0];if(!tgt){tgt=timeMenu.childNodes[0]}else{if(timeMenu.childNodes.length){if(e.charOrCode==dk.DOWN_ARROW&&!tgt.nextSibling){this._onArrowDown()}else{if(e.charOrCode==dk.UP_ARROW&&!tgt.previousSibling){this._onArrowUp()}}if(e.charOrCode==dk.DOWN_ARROW){tgt=tgt.nextSibling}else{tgt=tgt.previousSibling}}}this._highlightOption(tgt,true)}else{if(this._highlighted_option&&(e.charOrCode==dk.ENTER||e.charOrCode===dk.TAB)){if(e.charOrCode==dk.ENTER){dojo.stopEvent(e)}setTimeout(dojo.hitch(this,function(){this._onOptionSelected({target:this._highlighted_option})}),1)}}}}})}if(!dojo._hasResource["dijit.form.TimeTextBox"]){dojo._hasResource["dijit.form.TimeTextBox"]=true;dojo.provide("dijit.form.TimeTextBox");dojo.declare("dijit.form.TimeTextBox",dijit.form._DateTimeTextBox,{baseClass:"dijitTextBox dijitTimeTextBox",popupClass:"dijit._TimePicker",_selector:"time",value:new Date("")})}if(!dojo._hasResource["dojo.data.util.sorter"]){dojo._hasResource["dojo.data.util.sorter"]=true;dojo.provide("dojo.data.util.sorter");dojo.data.util.sorter.basicComparator=function(a,b){var r=-1;if(a===null){a=undefined}if(b===null){b=undefined}if(a==b){r=0}else{if(a>b||a==null){r=1}}return r};dojo.data.util.sorter.createSortFunction=function(sortSpec,store){var sortFunctions=[];function createSortFunction(attr,dir){return function(itemA,itemB){var a=store.getValue(itemA,attr);var b=store.getValue(itemB,attr);var comparator=null;if(store.comparatorMap){if(typeof attr!=="string"){attr=store.getIdentity(attr)}comparator=store.comparatorMap[attr]||dojo.data.util.sorter.basicComparator}comparator=comparator||dojo.data.util.sorter.basicComparator;return dir*comparator(a,b)}}var sortAttribute;for(var i=0;i<sortSpec.length;i++){sortAttribute=sortSpec[i];if(sortAttribute.attribute){var direction=(sortAttribute.descending)?-1:1;sortFunctions.push(createSortFunction(sortAttribute.attribute,direction))}}return function(rowA,rowB){var i=0;while(i<sortFunctions.length){var ret=sortFunctions[i++](rowA,rowB);if(ret!==0){return ret}}return 0}}}if(!dojo._hasResource["dojo.data.util.simpleFetch"]){dojo._hasResource["dojo.data.util.simpleFetch"]=true;dojo.provide("dojo.data.util.simpleFetch");dojo.data.util.simpleFetch.fetch=function(request){request=request||{};if(!request.store){request.store=this}var self=this;var _errorHandler=function(errorData,requestObject){if(requestObject.onError){var scope=requestObject.scope||dojo.global;requestObject.onError.call(scope,errorData,requestObject)}};var _fetchHandler=function(items,requestObject){var oldAbortFunction=requestObject.abort||null;var aborted=false;var startIndex=requestObject.start?requestObject.start:0;var endIndex=(requestObject.count&&(requestObject.count!==Infinity))?(startIndex+requestObject.count):items.length;requestObject.abort=function(){aborted=true;if(oldAbortFunction){oldAbortFunction.call(requestObject)}};var scope=requestObject.scope||dojo.global;if(!requestObject.store){requestObject.store=self}if(requestObject.onBegin){requestObject.onBegin.call(scope,items.length,requestObject)}if(requestObject.sort){items.sort(dojo.data.util.sorter.createSortFunction(requestObject.sort,self))}if(requestObject.onItem){for(var i=startIndex;(i<items.length)&&(i<endIndex);++i){var item=items[i];if(!aborted){requestObject.onItem.call(scope,item,requestObject)}}}if(requestObject.onComplete&&!aborted){var subset=null;if(!requestObject.onItem){subset=items.slice(startIndex,endIndex)}requestObject.onComplete.call(scope,subset,requestObject)}};this._fetchItems(request,_fetchHandler,_errorHandler);return request}}if(!dojo._hasResource["dojo.data.util.filter"]){dojo._hasResource["dojo.data.util.filter"]=true;dojo.provide("dojo.data.util.filter");dojo.data.util.filter.patternToRegExp=function(pattern,ignoreCase){var rxp="^";var c=null;for(var i=0;i<pattern.length;i++){c=pattern.charAt(i);switch(c){case"\\":rxp+=c;i++;rxp+=pattern.charAt(i);break;case"*":rxp+=".*";break;case"?":rxp+=".";break;case"$":case"^":case"/":case"+":case".":case"|":case"(":case")":case"{":case"}":case"[":case"]":rxp+="\\";default:rxp+=c}}rxp+="$";if(ignoreCase){return new RegExp(rxp,"mi")}else{return new RegExp(rxp,"m")}}}if(!dojo._hasResource["dijit.form.ComboBox"]){dojo._hasResource["dijit.form.ComboBox"]=true;dojo.provide("dijit.form.ComboBox");dojo.declare("dijit.form.ComboBoxMixin",null,{item:null,pageSize:Infinity,store:null,fetchProperties:{},query:{},autoComplete:true,highlightMatch:"first",searchDelay:100,searchAttr:"name",labelAttr:"",labelType:"text",queryExpr:"${0}*",ignoreCase:true,hasDownArrow:true,templateString:'<div class="dijit dijitReset dijitInlineTable dijitLeft"\r\n\tid="widget_${id}"\r\n\tdojoAttachEvent="onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse" dojoAttachPoint="comboNode" waiRole="combobox" tabIndex="-1"\r\n\t><div style="overflow:hidden;"\r\n\t\t><div class=\'dijitReset dijitRight dijitButtonNode dijitArrowButton dijitDownArrowButton\'\r\n\t\t\tdojoAttachPoint="downArrowNode" waiRole="presentation"\r\n\t\t\tdojoAttachEvent="onmousedown:_onArrowMouseDown,onmouseup:_onMouse,onmouseenter:_onMouse,onmouseleave:_onMouse"\r\n\t\t\t><div class="dijitArrowButtonInner">&thinsp;</div\r\n\t\t\t><div class="dijitArrowButtonChar">&#9660;</div\r\n\t\t></div\r\n\t\t><div class="dijitReset dijitValidationIcon"><br></div\r\n\t\t><div class="dijitReset dijitValidationIconText">&Chi;</div\r\n\t\t><div class="dijitReset dijitInputField"\r\n\t\t\t><input ${nameAttrSetting} type="text" autocomplete="off" class=\'dijitReset\'\r\n\t\t\tdojoAttachEvent="onkeypress:_onKeyPress,compositionend"\r\n\t\t\tdojoAttachPoint="textbox,focusNode" waiRole="textbox" waiState="haspopup-true,autocomplete-list"\r\n\t\t/></div\r\n\t></div\r\n></div>\r\n',baseClass:"dijitComboBox",_getCaretPos:function(element){var pos=0;if(typeof (element.selectionStart)=="number"){pos=element.selectionStart}else{if(dojo.isIE){var tr=dojo.doc.selection.createRange().duplicate();var ntr=element.createTextRange();tr.move("character",0);ntr.move("character",0);try{ntr.setEndPoint("EndToEnd",tr);pos=String(ntr.text).replace(/\r/g,"").length}catch(e){}}}return pos},_setCaretPos:function(element,location){location=parseInt(location);dijit.selectInputText(element,location,location)},_setDisabledAttr:function(value){this.inherited(arguments);dijit.setWaiState(this.comboNode,"disabled",value)},_onKeyPress:function(evt){var key=evt.charOrCode;if(evt.altKey||(evt.ctrlKey&&(key!="x"&&key!="v"))||evt.key==dojo.keys.SHIFT){return }var doSearch=false;var pw=this._popupWidget;var dk=dojo.keys;var highlighted=null;if(this._isShowingNow){pw.handleKey(key);highlighted=pw.getHighlightedOption()}switch(key){case dk.PAGE_DOWN:case dk.DOWN_ARROW:if(!this._isShowingNow||this._prev_key_esc){this._arrowPressed();doSearch=true}else{if(highlighted){this._announceOption(highlighted)}}dojo.stopEvent(evt);this._prev_key_backspace=false;this._prev_key_esc=false;break;case dk.PAGE_UP:case dk.UP_ARROW:if(this._isShowingNow){this._announceOption(highlighted)}dojo.stopEvent(evt);this._prev_key_backspace=false;this._prev_key_esc=false;break;case dk.ENTER:if(highlighted){if(highlighted==pw.nextButton){this._nextSearch(1);dojo.stopEvent(evt);break}else{if(highlighted==pw.previousButton){this._nextSearch(-1);dojo.stopEvent(evt);break}}}else{this._setDisplayedValueAttr(this.attr("displayedValue"),true)}evt.preventDefault();case dk.TAB:var newvalue=this.attr("displayedValue");if(pw&&(newvalue==pw._messages["previousMessage"]||newvalue==pw._messages["nextMessage"])){break}if(this._isShowingNow){this._prev_key_backspace=false;this._prev_key_esc=false;if(highlighted){pw.attr("value",{target:highlighted})}this._lastQuery=null;this._hideResultList()}break;case" ":this._prev_key_backspace=false;this._prev_key_esc=false;if(highlighted){dojo.stopEvent(evt);this._selectOption();this._hideResultList()}else{doSearch=true}break;case dk.ESCAPE:this._prev_key_backspace=false;this._prev_key_esc=true;if(this._isShowingNow){dojo.stopEvent(evt);this._hideResultList()}break;case dk.DELETE:case dk.BACKSPACE:this._prev_key_esc=false;this._prev_key_backspace=true;doSearch=true;break;case dk.RIGHT_ARROW:case dk.LEFT_ARROW:this._prev_key_backspace=false;this._prev_key_esc=false;break;default:this._prev_key_backspace=false;this._prev_key_esc=false;doSearch=typeof key=="string"}if(this.searchTimer){clearTimeout(this.searchTimer)}if(doSearch){setTimeout(dojo.hitch(this,"_startSearchFromInput"),1)}},_autoCompleteText:function(text){var fn=this.focusNode;dijit.selectInputText(fn,fn.value.length);var caseFilter=this.ignoreCase?"toLowerCase":"substr";if(text[caseFilter](0).indexOf(this.focusNode.value[caseFilter](0))==0){var cpos=this._getCaretPos(fn);if((cpos+1)>fn.value.length){fn.value=text;dijit.selectInputText(fn,cpos)}}else{fn.value=text;dijit.selectInputText(fn)}},_openResultList:function(results,dataObject){if(this.disabled||this.readOnly||(dataObject.query[this.searchAttr]!=this._lastQuery)){return }this._popupWidget.clearResultList();if(!results.length){this._hideResultList();return }this.item=null;var zerothvalue=new String(this.store.getValue(results[0],this.searchAttr));if(zerothvalue&&this.autoComplete&&!this._prev_key_backspace&&(dataObject.query[this.searchAttr]!="*")){this.item=results[0];this._autoCompleteText(zerothvalue)}dataObject._maxOptions=this._maxOptions;this._popupWidget.createOptions(results,dataObject,dojo.hitch(this,"_getMenuLabelFromItem"));this._showResultList();if(dataObject.direction){if(1==dataObject.direction){this._popupWidget.highlightFirstOption()}else{if(-1==dataObject.direction){this._popupWidget.highlightLastOption()}}this._announceOption(this._popupWidget.getHighlightedOption())}},_showResultList:function(){this._hideResultList();var items=this._popupWidget.getItems(),visibleCount=Math.min(items.length,this.maxListLength);this._arrowPressed();this.displayMessage("");dojo.style(this._popupWidget.domNode,{width:"",height:""});var best=this.open();var popupbox=dojo.marginBox(this._popupWidget.domNode);this._popupWidget.domNode.style.overflow=((best.h==popupbox.h)&&(best.w==popupbox.w))?"hidden":"auto";var newwidth=best.w;if(best.h<this._popupWidget.domNode.scrollHeight){newwidth+=16}dojo.marginBox(this._popupWidget.domNode,{h:best.h,w:Math.max(newwidth,this.domNode.offsetWidth)});dijit.setWaiState(this.comboNode,"expanded","true")},_hideResultList:function(){if(this._isShowingNow){dijit.popup.close(this._popupWidget);this._arrowIdle();this._isShowingNow=false;dijit.setWaiState(this.comboNode,"expanded","false");dijit.removeWaiState(this.focusNode,"activedescendant")}},_setBlurValue:function(){var newvalue=this.attr("displayedValue");var pw=this._popupWidget;if(pw&&(newvalue==pw._messages["previousMessage"]||newvalue==pw._messages["nextMessage"])){this._setValueAttr(this._lastValueReported,true)}else{this.attr("displayedValue",newvalue)}},_onBlur:function(){this._hideResultList();this._arrowIdle();this.inherited(arguments)},_announceOption:function(node){if(node==null){return }var newValue;if(node==this._popupWidget.nextButton||node==this._popupWidget.previousButton){newValue=node.innerHTML}else{newValue=this.store.getValue(node.item,this.searchAttr)}this.focusNode.value=this.focusNode.value.substring(0,this._getCaretPos(this.focusNode));dijit.setWaiState(this.focusNode,"activedescendant",dojo.attr(node,"id"));this._autoCompleteText(newValue)},_selectOption:function(evt){var tgt=null;if(!evt){evt={target:this._popupWidget.getHighlightedOption()}}if(!evt.target){this.attr("displayedValue",this.attr("displayedValue"));return }else{tgt=evt.target}if(!evt.noHide){this._hideResultList();this._setCaretPos(this.focusNode,this.store.getValue(tgt.item,this.searchAttr).length)}this._doSelect(tgt)},_doSelect:function(tgt){this.item=tgt.item;this.attr("value",this.store.getValue(tgt.item,this.searchAttr))},_onArrowMouseDown:function(evt){if(this.disabled||this.readOnly){return }dojo.stopEvent(evt);this.focus();if(this._isShowingNow){this._hideResultList()}else{this._startSearch("")}},_startSearchFromInput:function(){this._startSearch(this.focusNode.value.replace(/([\\\*\?])/g,"\\$1"))},_getQueryString:function(text){return dojo.string.substitute(this.queryExpr,[text])},_startSearch:function(key){if(!this._popupWidget){var popupId=this.id+"_popup";this._popupWidget=new dijit.form._ComboBoxMenu({onChange:dojo.hitch(this,this._selectOption),id:popupId});dijit.removeWaiState(this.focusNode,"activedescendant");dijit.setWaiState(this.textbox,"owns",popupId)}this.item=null;var query=dojo.clone(this.query);this._lastInput=key;this._lastQuery=query[this.searchAttr]=this._getQueryString(key);this.searchTimer=setTimeout(dojo.hitch(this,function(query,_this){var fetch={queryOptions:{ignoreCase:this.ignoreCase,deep:true},query:query,onBegin:dojo.hitch(this,"_setMaxOptions"),onComplete:dojo.hitch(this,"_openResultList"),onError:function(errText){console.error("dijit.form.ComboBox: "+errText);dojo.hitch(_this,"_hideResultList")()},start:0,count:this.pageSize};dojo.mixin(fetch,_this.fetchProperties);var dataObject=_this.store.fetch(fetch);var nextSearch=function(dataObject,direction){dataObject.start+=dataObject.count*direction;dataObject.direction=direction;this.store.fetch(dataObject)};this._nextSearch=this._popupWidget.onPage=dojo.hitch(this,nextSearch,dataObject)},query,this),this.searchDelay)},_setMaxOptions:function(size,request){this._maxOptions=size},_getValueField:function(){return this.searchAttr},_arrowPressed:function(){if(!this.disabled&&!this.readOnly&&this.hasDownArrow){dojo.addClass(this.downArrowNode,"dijitArrowButtonActive")}},_arrowIdle:function(){if(!this.disabled&&!this.readOnly&&this.hasDownArrow){dojo.removeClass(this.downArrowNode,"dojoArrowButtonPushed")}},compositionend:function(evt){this._onKeyPress({charCode:-1})},constructor:function(){this.query={};this.fetchProperties={}},postMixInProperties:function(){if(!this.hasDownArrow){this.baseClass="dijitTextBox"}if(!this.store){var srcNodeRef=this.srcNodeRef;this.store=new dijit.form._ComboBoxDataStore(srcNodeRef);if(!this.value||((typeof srcNodeRef.selectedIndex=="number")&&srcNodeRef.selectedIndex.toString()===this.value)){var item=this.store.fetchSelectedItem();if(item){this.value=this.store.getValue(item,this._getValueField())}}}this.inherited(arguments)},postCreate:function(){var label=dojo.query('label[for="'+this.id+'"]');if(label.length){label[0].id=(this.id+"_label");var cn=this.comboNode;dijit.setWaiState(cn,"labelledby",label[0].id)}this.inherited(arguments)},uninitialize:function(){if(this._popupWidget){this._hideResultList();this._popupWidget.destroy()}},_getMenuLabelFromItem:function(item){var label=this.store.getValue(item,this.labelAttr||this.searchAttr);var labelType=this.labelType;if(this.highlightMatch!="none"&&this.labelType=="text"&&this._lastInput){label=this.doHighlight(label,this._escapeHtml(this._lastInput));labelType="html"}return{html:labelType=="html",label:label}},doHighlight:function(label,find){var modifiers="i"+(this.highlightMatch=="all"?"g":"");var escapedLabel=this._escapeHtml(label);find=dojo.regexp.escapeString(find);var ret=escapedLabel.replace(new RegExp("(^|\\s)("+find+")",modifiers),'$1<span class="dijitComboBoxHighlightMatch">$2</span>');return ret},_escapeHtml:function(str){str=String(str).replace(/&/gm,"&amp;").replace(/</gm,"&lt;").replace(/>/gm,"&gt;").replace(/"/gm,"&quot;");return str},open:function(){this._isShowingNow=true;return dijit.popup.open({popup:this._popupWidget,around:this.domNode,parent:this})},reset:function(){this.item=null;this.inherited(arguments)}});dojo.declare("dijit.form._ComboBoxMenu",[dijit._Widget,dijit._Templated],{templateString:"<ul class='dijitReset dijitMenu' dojoAttachEvent='onmousedown:_onMouseDown,onmouseup:_onMouseUp,onmouseover:_onMouseOver,onmouseout:_onMouseOut' tabIndex='-1' style='overflow: \"auto\"; overflow-x: \"hidden\";'><li class='dijitMenuItem dijitMenuPreviousButton' dojoAttachPoint='previousButton' waiRole='option'></li><li class='dijitMenuItem dijitMenuNextButton' dojoAttachPoint='nextButton' waiRole='option'></li></ul>",_messages:null,postMixInProperties:function(){this._messages=dojo.i18n.getLocalization("dijit.form","ComboBox",this.lang);this.inherited(arguments)},_setValueAttr:function(value){this.value=value;this.onChange(value)},onChange:function(value){},onPage:function(direction){},postCreate:function(){this.previousButton.innerHTML=this._messages["previousMessage"];this.nextButton.innerHTML=this._messages["nextMessage"];this.inherited(arguments)},onClose:function(){this._blurOptionNode()},_createOption:function(item,labelFunc){var labelObject=labelFunc(item);var menuitem=dojo.doc.createElement("li");dijit.setWaiRole(menuitem,"option");if(labelObject.html){menuitem.innerHTML=labelObject.label}else{menuitem.appendChild(dojo.doc.createTextNode(labelObject.label))}if(menuitem.innerHTML==""){menuitem.innerHTML="&nbsp;"}menuitem.item=item;return menuitem},createOptions:function(results,dataObject,labelFunc){this.previousButton.style.display=(dataObject.start==0)?"none":"";dojo.attr(this.previousButton,"id",this.id+"_prev");dojo.forEach(results,function(item,i){var menuitem=this._createOption(item,labelFunc);menuitem.className="dijitReset dijitMenuItem";dojo.attr(menuitem,"id",this.id+i);this.domNode.insertBefore(menuitem,this.nextButton)},this);var displayMore=false;if(dataObject._maxOptions&&dataObject._maxOptions!=-1){if((dataObject.start+dataObject.count)<dataObject._maxOptions){displayMore=true}else{if((dataObject.start+dataObject.count)>(dataObject._maxOptions-1)){if(dataObject.count==results.length){displayMore=true}}}}else{if(dataObject.count==results.length){displayMore=true}}this.nextButton.style.display=displayMore?"":"none";dojo.attr(this.nextButton,"id",this.id+"_next")},clearResultList:function(){while(this.domNode.childNodes.length>2){this.domNode.removeChild(this.domNode.childNodes[this.domNode.childNodes.length-2])}},getItems:function(){return this.domNode.childNodes},getListLength:function(){return this.domNode.childNodes.length-2},_onMouseDown:function(evt){dojo.stopEvent(evt)},_onMouseUp:function(evt){if(evt.target===this.domNode){return }else{if(evt.target==this.previousButton){this.onPage(-1)}else{if(evt.target==this.nextButton){this.onPage(1)}else{var tgt=evt.target;while(!tgt.item){tgt=tgt.parentNode}this._setValueAttr({target:tgt},true)}}}},_onMouseOver:function(evt){if(evt.target===this.domNode){return }var tgt=evt.target;if(!(tgt==this.previousButton||tgt==this.nextButton)){while(!tgt.item){tgt=tgt.parentNode}}this._focusOptionNode(tgt)},_onMouseOut:function(evt){if(evt.target===this.domNode){return }this._blurOptionNode()},_focusOptionNode:function(node){if(this._highlighted_option!=node){this._blurOptionNode();this._highlighted_option=node;dojo.addClass(this._highlighted_option,"dijitMenuItemSelected")}},_blurOptionNode:function(){if(this._highlighted_option){dojo.removeClass(this._highlighted_option,"dijitMenuItemSelected");this._highlighted_option=null}},_highlightNextOption:function(){var fc=this.domNode.firstChild;if(!this.getHighlightedOption()){this._focusOptionNode(fc.style.display=="none"?fc.nextSibling:fc)}else{var ns=this._highlighted_option.nextSibling;if(ns&&ns.style.display!="none"){this._focusOptionNode(ns)}}dijit.scrollIntoView(this._highlighted_option)},highlightFirstOption:function(){this._focusOptionNode(this.domNode.firstChild.nextSibling);dijit.scrollIntoView(this._highlighted_option)},highlightLastOption:function(){this._focusOptionNode(this.domNode.lastChild.previousSibling);dijit.scrollIntoView(this._highlighted_option)},_highlightPrevOption:function(){var lc=this.domNode.lastChild;if(!this.getHighlightedOption()){this._focusOptionNode(lc.style.display=="none"?lc.previousSibling:lc)}else{var ps=this._highlighted_option.previousSibling;if(ps&&ps.style.display!="none"){this._focusOptionNode(ps)}}dijit.scrollIntoView(this._highlighted_option)},_page:function(up){var scrollamount=0;var oldscroll=this.domNode.scrollTop;var height=dojo.style(this.domNode,"height");if(!this.getHighlightedOption()){this._highlightNextOption()}while(scrollamount<height){if(up){if(!this.getHighlightedOption().previousSibling||this._highlighted_option.previousSibling.style.display=="none"){break}this._highlightPrevOption()}else{if(!this.getHighlightedOption().nextSibling||this._highlighted_option.nextSibling.style.display=="none"){break}this._highlightNextOption()}var newscroll=this.domNode.scrollTop;scrollamount+=(newscroll-oldscroll)*(up?-1:1);oldscroll=newscroll}},pageUp:function(){this._page(true)},pageDown:function(){this._page(false)},getHighlightedOption:function(){var ho=this._highlighted_option;return(ho&&ho.parentNode)?ho:null},handleKey:function(key){switch(key){case dojo.keys.DOWN_ARROW:this._highlightNextOption();break;case dojo.keys.PAGE_DOWN:this.pageDown();break;case dojo.keys.UP_ARROW:this._highlightPrevOption();break;case dojo.keys.PAGE_UP:this.pageUp();break}}});dojo.declare("dijit.form.ComboBox",[dijit.form.ValidationTextBox,dijit.form.ComboBoxMixin],{_setValueAttr:function(value,priorityChange){if(!value){value=""}dijit.form.ValidationTextBox.prototype._setValueAttr.call(this,value,priorityChange)}});dojo.declare("dijit.form._ComboBoxDataStore",null,{constructor:function(root){this.root=root;dojo.query("> option",root).forEach(function(node){node.innerHTML=dojo.trim(node.innerHTML)})},getValue:function(item,attribute,defaultValue){return(attribute=="value")?item.value:(item.innerText||item.textContent||"")},isItemLoaded:function(something){return true},getFeatures:function(){return{"dojo.data.api.Read":true,"dojo.data.api.Identity":true}},_fetchItems:function(args,findCallback,errorCallback){if(!args.query){args.query={}}if(!args.query.name){args.query.name=""}if(!args.queryOptions){args.queryOptions={}}var matcher=dojo.data.util.filter.patternToRegExp(args.query.name,args.queryOptions.ignoreCase),items=dojo.query("> option",this.root).filter(function(option){return(option.innerText||option.textContent||"").match(matcher)});if(args.sort){items.sort(dojo.data.util.sorter.createSortFunction(args.sort,this))}findCallback(items,args)},close:function(request){return },getLabel:function(item){return item.innerHTML},getIdentity:function(item){return dojo.attr(item,"value")},fetchItemByIdentity:function(args){var item=dojo.query("option[value='"+args.identity+"']",this.root)[0];args.onItem(item)},fetchSelectedItem:function(){var root=this.root,si=root.selectedIndex;return dojo.query("> option:nth-child("+(si!=-1?si+1:1)+")",root)[0]}});dojo.extend(dijit.form._ComboBoxDataStore,dojo.data.util.simpleFetch)}if(!dojo._hasResource["dojo.data.ItemFileReadStore"]){dojo._hasResource["dojo.data.ItemFileReadStore"]=true;dojo.provide("dojo.data.ItemFileReadStore");dojo.declare("dojo.data.ItemFileReadStore",null,{constructor:function(keywordParameters){this._arrayOfAllItems=[];this._arrayOfTopLevelItems=[];this._loadFinished=false;this._jsonFileUrl=keywordParameters.url;this._jsonData=keywordParameters.data;this._datatypeMap=keywordParameters.typeMap||{};if(!this._datatypeMap["Date"]){this._datatypeMap["Date"]={type:Date,deserialize:function(value){return dojo.date.stamp.fromISOString(value)}}}this._features={"dojo.data.api.Read":true,"dojo.data.api.Identity":true};this._itemsByIdentity=null;this._storeRefPropName="_S";this._itemNumPropName="_0";this._rootItemPropName="_RI";this._reverseRefMap="_RRM";this._loadInProgress=false;this._queuedFetches=[];if(keywordParameters.urlPreventCache!==undefined){this.urlPreventCache=keywordParameters.urlPreventCache?true:false}if(keywordParameters.clearOnClose){this.clearOnClose=true}},url:"",data:null,typeMap:null,clearOnClose:false,urlPreventCache:false,_assertIsItem:function(item){if(!this.isItem(item)){throw new Error("dojo.data.ItemFileReadStore: Invalid item argument.")}},_assertIsAttribute:function(attribute){if(typeof attribute!=="string"){throw new Error("dojo.data.ItemFileReadStore: Invalid attribute argument.")}},getValue:function(item,attribute,defaultValue){var values=this.getValues(item,attribute);return(values.length>0)?values[0]:defaultValue},getValues:function(item,attribute){this._assertIsItem(item);this._assertIsAttribute(attribute);return item[attribute]||[]},getAttributes:function(item){this._assertIsItem(item);var attributes=[];for(var key in item){if((key!==this._storeRefPropName)&&(key!==this._itemNumPropName)&&(key!==this._rootItemPropName)&&(key!==this._reverseRefMap)){attributes.push(key)}}return attributes},hasAttribute:function(item,attribute){return this.getValues(item,attribute).length>0},containsValue:function(item,attribute,value){var regexp=undefined;if(typeof value==="string"){regexp=dojo.data.util.filter.patternToRegExp(value,false)}return this._containsValue(item,attribute,value,regexp)},_containsValue:function(item,attribute,value,regexp){return dojo.some(this.getValues(item,attribute),function(possibleValue){if(possibleValue!==null&&!dojo.isObject(possibleValue)&&regexp){if(possibleValue.toString().match(regexp)){return true}}else{if(value===possibleValue){return true}}})},isItem:function(something){if(something&&something[this._storeRefPropName]===this){if(this._arrayOfAllItems[something[this._itemNumPropName]]===something){return true}}return false},isItemLoaded:function(something){return this.isItem(something)},loadItem:function(keywordArgs){this._assertIsItem(keywordArgs.item)},getFeatures:function(){return this._features},getLabel:function(item){if(this._labelAttr&&this.isItem(item)){return this.getValue(item,this._labelAttr)}return undefined},getLabelAttributes:function(item){if(this._labelAttr){return[this._labelAttr]}return null},_fetchItems:function(keywordArgs,findCallback,errorCallback){var self=this;var filter=function(requestArgs,arrayOfItems){var items=[];var i,key;if(requestArgs.query){var value;var ignoreCase=requestArgs.queryOptions?requestArgs.queryOptions.ignoreCase:false;var regexpList={};for(key in requestArgs.query){value=requestArgs.query[key];if(typeof value==="string"){regexpList[key]=dojo.data.util.filter.patternToRegExp(value,ignoreCase)}}for(i=0;i<arrayOfItems.length;++i){var match=true;var candidateItem=arrayOfItems[i];if(candidateItem===null){match=false}else{for(key in requestArgs.query){value=requestArgs.query[key];if(!self._containsValue(candidateItem,key,value,regexpList[key])){match=false}}}if(match){items.push(candidateItem)}}findCallback(items,requestArgs)}else{for(i=0;i<arrayOfItems.length;++i){var item=arrayOfItems[i];if(item!==null){items.push(item)}}findCallback(items,requestArgs)}};if(this._loadFinished){filter(keywordArgs,this._getItemsArray(keywordArgs.queryOptions))}else{if(this._jsonFileUrl){if(this._loadInProgress){this._queuedFetches.push({args:keywordArgs,filter:filter})}else{this._loadInProgress=true;var getArgs={url:self._jsonFileUrl,handleAs:"json-comment-optional",preventCache:this.urlPreventCache};var getHandler=dojo.xhrGet(getArgs);getHandler.addCallback(function(data){try{self._getItemsFromLoadedData(data);self._loadFinished=true;self._loadInProgress=false;filter(keywordArgs,self._getItemsArray(keywordArgs.queryOptions));self._handleQueuedFetches()}catch(e){self._loadFinished=true;self._loadInProgress=false;errorCallback(e,keywordArgs)}});getHandler.addErrback(function(error){self._loadInProgress=false;errorCallback(error,keywordArgs)});var oldAbort=null;if(keywordArgs.abort){oldAbort=keywordArgs.abort}keywordArgs.abort=function(){var df=getHandler;if(df&&df.fired===-1){df.cancel();df=null}if(oldAbort){oldAbort.call(keywordArgs)}}}}else{if(this._jsonData){try{this._loadFinished=true;this._getItemsFromLoadedData(this._jsonData);this._jsonData=null;filter(keywordArgs,this._getItemsArray(keywordArgs.queryOptions))}catch(e){errorCallback(e,keywordArgs)}}else{errorCallback(new Error("dojo.data.ItemFileReadStore: No JSON source data was provided as either URL or a nested Javascript object."),keywordArgs)}}}},_handleQueuedFetches:function(){if(this._queuedFetches.length>0){for(var i=0;i<this._queuedFetches.length;i++){var fData=this._queuedFetches[i];var delayedQuery=fData.args;var delayedFilter=fData.filter;if(delayedFilter){delayedFilter(delayedQuery,this._getItemsArray(delayedQuery.queryOptions))}else{this.fetchItemByIdentity(delayedQuery)}}this._queuedFetches=[]}},_getItemsArray:function(queryOptions){if(queryOptions&&queryOptions.deep){return this._arrayOfAllItems}return this._arrayOfTopLevelItems},close:function(request){if(this.clearOnClose&&(this._jsonFileUrl!=="")){this._arrayOfAllItems=[];this._arrayOfTopLevelItems=[];this._loadFinished=false;this._itemsByIdentity=null;this._loadInProgress=false;this._queuedFetches=[]}},_getItemsFromLoadedData:function(dataObject){var addingArrays=false;function valueIsAnItem(aValue){var isItem=((aValue!==null)&&(typeof aValue==="object")&&(!dojo.isArray(aValue)||addingArrays)&&(!dojo.isFunction(aValue))&&(aValue.constructor==Object||dojo.isArray(aValue))&&(typeof aValue._reference==="undefined")&&(typeof aValue._type==="undefined")&&(typeof aValue._value==="undefined"));return isItem}var self=this;function addItemAndSubItemsToArrayOfAllItems(anItem){self._arrayOfAllItems.push(anItem);for(var attribute in anItem){var valueForAttribute=anItem[attribute];if(valueForAttribute){if(dojo.isArray(valueForAttribute)){var valueArray=valueForAttribute;for(var k=0;k<valueArray.length;++k){var singleValue=valueArray[k];if(valueIsAnItem(singleValue)){addItemAndSubItemsToArrayOfAllItems(singleValue)}}}else{if(valueIsAnItem(valueForAttribute)){addItemAndSubItemsToArrayOfAllItems(valueForAttribute)}}}}}this._labelAttr=dataObject.label;var i;var item;this._arrayOfAllItems=[];this._arrayOfTopLevelItems=dataObject.items;for(i=0;i<this._arrayOfTopLevelItems.length;++i){item=this._arrayOfTopLevelItems[i];if(dojo.isArray(item)){addingArrays=true}addItemAndSubItemsToArrayOfAllItems(item);item[this._rootItemPropName]=true}var allAttributeNames={};var key;for(i=0;i<this._arrayOfAllItems.length;++i){item=this._arrayOfAllItems[i];for(key in item){if(key!==this._rootItemPropName){var value=item[key];if(value!==null){if(!dojo.isArray(value)){item[key]=[value]}}else{item[key]=[null]}}allAttributeNames[key]=key}}while(allAttributeNames[this._storeRefPropName]){this._storeRefPropName+="_"}while(allAttributeNames[this._itemNumPropName]){this._itemNumPropName+="_"}while(allAttributeNames[this._reverseRefMap]){this._reverseRefMap+="_"}var arrayOfValues;var identifier=dataObject.identifier;if(identifier){this._itemsByIdentity={};this._features["dojo.data.api.Identity"]=identifier;for(i=0;i<this._arrayOfAllItems.length;++i){item=this._arrayOfAllItems[i];arrayOfValues=item[identifier];var identity=arrayOfValues[0];if(!this._itemsByIdentity[identity]){this._itemsByIdentity[identity]=item}else{if(this._jsonFileUrl){throw new Error("dojo.data.ItemFileReadStore:  The json data as specified by: ["+this._jsonFileUrl+"] is malformed.  Items within the list have identifier: ["+identifier+"].  Value collided: ["+identity+"]")}else{if(this._jsonData){throw new Error("dojo.data.ItemFileReadStore:  The json data provided by the creation arguments is malformed.  Items within the list have identifier: ["+identifier+"].  Value collided: ["+identity+"]")}}}}}else{this._features["dojo.data.api.Identity"]=Number}for(i=0;i<this._arrayOfAllItems.length;++i){item=this._arrayOfAllItems[i];item[this._storeRefPropName]=this;item[this._itemNumPropName]=i}for(i=0;i<this._arrayOfAllItems.length;++i){item=this._arrayOfAllItems[i];for(key in item){arrayOfValues=item[key];for(var j=0;j<arrayOfValues.length;++j){value=arrayOfValues[j];if(value!==null&&typeof value=="object"){if(value._type&&value._value){var type=value._type;var mappingObj=this._datatypeMap[type];if(!mappingObj){throw new Error("dojo.data.ItemFileReadStore: in the typeMap constructor arg, no object class was specified for the datatype '"+type+"'")}else{if(dojo.isFunction(mappingObj)){arrayOfValues[j]=new mappingObj(value._value)}else{if(dojo.isFunction(mappingObj.deserialize)){arrayOfValues[j]=mappingObj.deserialize(value._value)}else{throw new Error("dojo.data.ItemFileReadStore: Value provided in typeMap was neither a constructor, nor a an object with a deserialize function")}}}}if(value._reference){var referenceDescription=value._reference;if(!dojo.isObject(referenceDescription)){arrayOfValues[j]=this._itemsByIdentity[referenceDescription]}else{for(var k=0;k<this._arrayOfAllItems.length;++k){var candidateItem=this._arrayOfAllItems[k];var found=true;for(var refKey in referenceDescription){if(candidateItem[refKey]!=referenceDescription[refKey]){found=false}}if(found){arrayOfValues[j]=candidateItem}}}if(this.referenceIntegrity){var refItem=arrayOfValues[j];if(this.isItem(refItem)){this._addReferenceToMap(refItem,item,key)}}}else{if(this.isItem(value)){if(this.referenceIntegrity){this._addReferenceToMap(value,item,key)}}}}}}}},_addReferenceToMap:function(refItem,parentItem,attribute){},getIdentity:function(item){var identifier=this._features["dojo.data.api.Identity"];if(identifier===Number){return item[this._itemNumPropName]}else{var arrayOfValues=item[identifier];if(arrayOfValues){return arrayOfValues[0]}}return null},fetchItemByIdentity:function(keywordArgs){var item;var scope;if(!this._loadFinished){var self=this;if(this._jsonFileUrl){if(this._loadInProgress){this._queuedFetches.push({args:keywordArgs})}else{this._loadInProgress=true;var getArgs={url:self._jsonFileUrl,handleAs:"json-comment-optional",preventCache:this.urlPreventCache};var getHandler=dojo.xhrGet(getArgs);getHandler.addCallback(function(data){var scope=keywordArgs.scope?keywordArgs.scope:dojo.global;try{self._getItemsFromLoadedData(data);self._loadFinished=true;self._loadInProgress=false;item=self._getItemByIdentity(keywordArgs.identity);if(keywordArgs.onItem){keywordArgs.onItem.call(scope,item)}self._handleQueuedFetches()}catch(error){self._loadInProgress=false;if(keywordArgs.onError){keywordArgs.onError.call(scope,error)}}});getHandler.addErrback(function(error){self._loadInProgress=false;if(keywordArgs.onError){var scope=keywordArgs.scope?keywordArgs.scope:dojo.global;keywordArgs.onError.call(scope,error)}})}}else{if(this._jsonData){self._getItemsFromLoadedData(self._jsonData);self._jsonData=null;self._loadFinished=true;item=self._getItemByIdentity(keywordArgs.identity);if(keywordArgs.onItem){scope=keywordArgs.scope?keywordArgs.scope:dojo.global;keywordArgs.onItem.call(scope,item)}}}}else{item=this._getItemByIdentity(keywordArgs.identity);if(keywordArgs.onItem){scope=keywordArgs.scope?keywordArgs.scope:dojo.global;keywordArgs.onItem.call(scope,item)}}},_getItemByIdentity:function(identity){var item=null;if(this._itemsByIdentity){item=this._itemsByIdentity[identity]}else{item=this._arrayOfAllItems[identity]}if(item===undefined){item=null}return item},getIdentityAttributes:function(item){var identifier=this._features["dojo.data.api.Identity"];if(identifier===Number){return null}else{return[identifier]}},_forceLoad:function(){var self=this;if(this._jsonFileUrl){var getArgs={url:self._jsonFileUrl,handleAs:"json-comment-optional",preventCache:this.urlPreventCache,sync:true};var getHandler=dojo.xhrGet(getArgs);getHandler.addCallback(function(data){try{if(self._loadInProgress!==true&&!self._loadFinished){self._getItemsFromLoadedData(data);self._loadFinished=true}else{if(self._loadInProgress){throw new Error("dojo.data.ItemFileReadStore:  Unable to perform a synchronous load, an async load is in progress.")}}}catch(e){console.log(e);throw e}});getHandler.addErrback(function(error){throw error})}else{if(this._jsonData){self._getItemsFromLoadedData(self._jsonData);self._jsonData=null;self._loadFinished=true}}}});dojo.extend(dojo.data.ItemFileReadStore,dojo.data.util.simpleFetch)}if(!dojo._hasResource["dijit.form.CheckBox"]){dojo._hasResource["dijit.form.CheckBox"]=true;dojo.provide("dijit.form.CheckBox");dojo.declare("dijit.form.CheckBox",dijit.form.ToggleButton,{templateString:'<div class="dijitReset dijitInline" waiRole="presentation"\r\n\t><input\r\n\t \t${nameAttrSetting} type="${type}" ${checkedAttrSetting}\r\n\t\tclass="dijitReset dijitCheckBoxInput"\r\n\t\tdojoAttachPoint="focusNode"\r\n\t \tdojoAttachEvent="onmouseover:_onMouse,onmouseout:_onMouse,onclick:_onClick"\r\n/></div>\r\n',baseClass:"dijitCheckBox",type:"checkbox",value:"on",_setValueAttr:function(newValue){if(typeof newValue=="string"){this.value=newValue;dojo.attr(this.focusNode,"value",newValue);newValue=true}if(this._created){this.attr("checked",newValue)}},_getValueAttr:function(){return(this.checked?this.value:false)},postMixInProperties:function(){if(this.value==""){this.value="on"}this.checkedAttrSetting=this.checked?"checked":"";this.inherited(arguments)},_fillContent:function(source){},reset:function(){this._hasBeenBlurred=false;this.attr("checked",this.params.checked||false);this.value=this.params.value||"on";dojo.attr(this.focusNode,"value",this.value)},_onFocus:function(){if(this.id){dojo.query("label[for='"+this.id+"']").addClass("dijitFocusedLabel")}},_onBlur:function(){if(this.id){dojo.query("label[for='"+this.id+"']").removeClass("dijitFocusedLabel")}}});dojo.declare("dijit.form.RadioButton",dijit.form.CheckBox,{type:"radio",baseClass:"dijitRadio",_setCheckedAttr:function(value){this.inherited(arguments);if(!this._created){return }if(value){var _this=this;dojo.query("INPUT[type=radio]",this.focusNode.form||dojo.doc).forEach(function(inputNode){if(inputNode.name==_this.name&&inputNode!=_this.focusNode&&inputNode.form==_this.focusNode.form){var widget=dijit.getEnclosingWidget(inputNode);if(widget&&widget.checked){widget.attr("checked",false)}}})}},_clicked:function(e){if(!this.checked){this.attr("checked",true)}}})}if(!dojo._hasResource["dijit.form._Spinner"]){dojo._hasResource["dijit.form._Spinner"]=true;dojo.provide("dijit.form._Spinner");dojo.declare("dijit.form._Spinner",dijit.form.RangeBoundTextBox,{defaultTimeout:500,timeoutChangeRate:0.9,smallDelta:1,largeDelta:10,templateString:'<div class="dijit dijitReset dijitInlineTable dijitLeft"\r\n\tid="widget_${id}"\r\n\tdojoAttachEvent="onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse" waiRole="presentation"\r\n\t><div class="dijitInputLayoutContainer"\r\n\t\t><div class="dijitReset dijitSpinnerButtonContainer"\r\n\t\t\t>&nbsp;<div class="dijitReset dijitLeft dijitButtonNode dijitArrowButton dijitUpArrowButton"\r\n\t\t\t\tdojoAttachPoint="upArrowNode"\r\n\t\t\t\tdojoAttachEvent="onmouseenter:_onMouse,onmouseleave:_onMouse"\r\n\t\t\t\tstateModifier="UpArrow"\r\n\t\t\t\t><div class="dijitArrowButtonInner">&thinsp;</div\r\n\t\t\t\t><div class="dijitArrowButtonChar">&#9650;</div\r\n\t\t\t></div\r\n\t\t\t><div class="dijitReset dijitLeft dijitButtonNode dijitArrowButton dijitDownArrowButton"\r\n\t\t\t\tdojoAttachPoint="downArrowNode"\r\n\t\t\t\tdojoAttachEvent="onmouseenter:_onMouse,onmouseleave:_onMouse"\r\n\t\t\t\tstateModifier="DownArrow"\r\n\t\t\t\t><div class="dijitArrowButtonInner">&thinsp;</div\r\n\t\t\t\t><div class="dijitArrowButtonChar">&#9660;</div\r\n\t\t\t></div\r\n\t\t></div\r\n\t\t><div class="dijitReset dijitValidationIcon"><br></div\r\n\t\t><div class="dijitReset dijitValidationIconText">&Chi;</div\r\n\t\t><div class="dijitReset dijitInputField"\r\n\t\t\t><input class=\'dijitReset\' dojoAttachPoint="textbox,focusNode" type="${type}" dojoAttachEvent="onkeypress:_onKeyPress"\r\n\t\t\t\twaiRole="spinbutton" autocomplete="off" ${nameAttrSetting}\r\n\t\t/></div\r\n\t></div\r\n></div>\r\n',baseClass:"dijitSpinner",adjust:function(val,delta){return val},_arrowState:function(node,pressed){this._active=pressed;this.stateModifier=node.getAttribute("stateModifier")||"";this._setStateClass()},_arrowPressed:function(nodePressed,direction,increment){if(this.disabled||this.readOnly){return }this._arrowState(nodePressed,true);this._setValueAttr(this.adjust(this.attr("value"),direction*increment),false);dijit.selectInputText(this.textbox,this.textbox.value.length)},_arrowReleased:function(node){this._wheelTimer=null;if(this.disabled||this.readOnly){return }this._arrowState(node,false)},_typematicCallback:function(count,node,evt){var inc=this.smallDelta;if(node==this.textbox){var k=dojo.keys;var key=evt.charOrCode;inc=(key==k.PAGE_UP||key==k.PAGE_DOWN)?this.largeDelta:this.smallDelta;node=(key==k.UP_ARROW||key==k.PAGE_UP)?this.upArrowNode:this.downArrowNode}if(count==-1){this._arrowReleased(node)}else{this._arrowPressed(node,(node==this.upArrowNode)?1:-1,inc)}},_wheelTimer:null,_mouseWheeled:function(evt){dojo.stopEvent(evt);var scrollAmount=evt.detail?(evt.detail*-1):(evt.wheelDelta/120);if(scrollAmount!==0){var node=this[(scrollAmount>0?"upArrowNode":"downArrowNode")];this._arrowPressed(node,scrollAmount,this.smallDelta);if(!this._wheelTimer){clearTimeout(this._wheelTimer)}this._wheelTimer=setTimeout(dojo.hitch(this,"_arrowReleased",node),50)}},postCreate:function(){this.inherited(arguments);this.connect(this.domNode,!dojo.isMozilla?"onmousewheel":"DOMMouseScroll","_mouseWheeled");this._connects.push(dijit.typematic.addListener(this.upArrowNode,this.textbox,{charOrCode:dojo.keys.UP_ARROW,ctrlKey:false,altKey:false,shiftKey:false},this,"_typematicCallback",this.timeoutChangeRate,this.defaultTimeout));this._connects.push(dijit.typematic.addListener(this.downArrowNode,this.textbox,{charOrCode:dojo.keys.DOWN_ARROW,ctrlKey:false,altKey:false,shiftKey:false},this,"_typematicCallback",this.timeoutChangeRate,this.defaultTimeout));this._connects.push(dijit.typematic.addListener(this.upArrowNode,this.textbox,{charOrCode:dojo.keys.PAGE_UP,ctrlKey:false,altKey:false,shiftKey:false},this,"_typematicCallback",this.timeoutChangeRate,this.defaultTimeout));this._connects.push(dijit.typematic.addListener(this.downArrowNode,this.textbox,{charOrCode:dojo.keys.PAGE_DOWN,ctrlKey:false,altKey:false,shiftKey:false},this,"_typematicCallback",this.timeoutChangeRate,this.defaultTimeout));if(dojo.isIE){var _this=this;this.connect(this.domNode,"onresize",function(){setTimeout(dojo.hitch(_this,function(){var sz=this.upArrowNode.parentNode.offsetHeight;if(sz){this.upArrowNode.style.height=sz>>1;this.downArrowNode.style.height=sz-(sz>>1);this.focusNode.parentNode.style.height=sz}this._setStateClass()}),0)})}}})}if(!dojo._hasResource["dojo.number"]){dojo._hasResource["dojo.number"]=true;dojo.provide("dojo.number");dojo.number.format=function(value,options){options=dojo.mixin({},options||{});var locale=dojo.i18n.normalizeLocale(options.locale);var bundle=dojo.i18n.getLocalization("dojo.cldr","number",locale);options.customs=bundle;var pattern=options.pattern||bundle[(options.type||"decimal")+"Format"];if(isNaN(value)||Math.abs(value)==Infinity){return null}return dojo.number._applyPattern(value,pattern,options)};dojo.number._numberPatternRE=/[#0,]*[#0](?:\.0*#*)?/;dojo.number._applyPattern=function(value,pattern,options){options=options||{};var group=options.customs.group;var decimal=options.customs.decimal;var patternList=pattern.split(";");var positivePattern=patternList[0];pattern=patternList[(value<0)?1:0]||("-"+positivePattern);if(pattern.indexOf("%")!=-1){value*=100}else{if(pattern.indexOf("\u2030")!=-1){value*=1000}else{if(pattern.indexOf("\u00a4")!=-1){group=options.customs.currencyGroup||group;decimal=options.customs.currencyDecimal||decimal;pattern=pattern.replace(/\u00a4{1,3}/,function(match){var prop=["symbol","currency","displayName"][match.length-1];return options[prop]||options.currency||""})}else{if(pattern.indexOf("E")!=-1){throw new Error("exponential notation not supported")}}}}var numberPatternRE=dojo.number._numberPatternRE;var numberPattern=positivePattern.match(numberPatternRE);if(!numberPattern){throw new Error("unable to find a number expression in pattern: "+pattern)}if(options.fractional===false){options.places=0}return pattern.replace(numberPatternRE,dojo.number._formatAbsolute(value,numberPattern[0],{decimal:decimal,group:group,places:options.places,round:options.round}))};dojo.number.round=function(value,places,increment){var factor=10/(increment||10);return(factor*+value).toFixed(places)/factor};if((0.9).toFixed()==0){(function(){var round=dojo.number.round;dojo.number.round=function(v,p,m){var d=Math.pow(10,-p||0),a=Math.abs(v);if(!v||a>=d||a*Math.pow(10,p+1)<5){d=0}return round(v,p,m)+(v>0?d:-d)}})()}dojo.number._formatAbsolute=function(value,pattern,options){options=options||{};if(options.places===true){options.places=0}if(options.places===Infinity){options.places=6}var patternParts=pattern.split(".");var maxPlaces=(options.places>=0)?options.places:(patternParts[1]&&patternParts[1].length)||0;if(!(options.round<0)){value=dojo.number.round(value,maxPlaces,options.round)}var valueParts=String(Math.abs(value)).split(".");var fractional=valueParts[1]||"";if(options.places){var comma=dojo.isString(options.places)&&options.places.indexOf(",");if(comma){options.places=options.places.substring(comma+1)}valueParts[1]=dojo.string.pad(fractional.substr(0,options.places),options.places,"0",true)}else{if(patternParts[1]&&options.places!==0){var pad=patternParts[1].lastIndexOf("0")+1;if(pad>fractional.length){valueParts[1]=dojo.string.pad(fractional,pad,"0",true)}var places=patternParts[1].length;if(places<fractional.length){valueParts[1]=fractional.substr(0,places)}}else{if(valueParts[1]){valueParts.pop()}}}var patternDigits=patternParts[0].replace(",","");pad=patternDigits.indexOf("0");if(pad!=-1){pad=patternDigits.length-pad;if(pad>valueParts[0].length){valueParts[0]=dojo.string.pad(valueParts[0],pad)}if(patternDigits.indexOf("#")==-1){valueParts[0]=valueParts[0].substr(valueParts[0].length-pad)}}var index=patternParts[0].lastIndexOf(",");var groupSize,groupSize2;if(index!=-1){groupSize=patternParts[0].length-index-1;var remainder=patternParts[0].substr(0,index);index=remainder.lastIndexOf(",");if(index!=-1){groupSize2=remainder.length-index-1}}var pieces=[];for(var whole=valueParts[0];whole;){var off=whole.length-groupSize;pieces.push((off>0)?whole.substr(off):whole);whole=(off>0)?whole.slice(0,off):"";if(groupSize2){groupSize=groupSize2;delete groupSize2}}valueParts[0]=pieces.reverse().join(options.group||",");return valueParts.join(options.decimal||".")};dojo.number.regexp=function(options){return dojo.number._parseInfo(options).regexp};dojo.number._parseInfo=function(options){options=options||{};var locale=dojo.i18n.normalizeLocale(options.locale);var bundle=dojo.i18n.getLocalization("dojo.cldr","number",locale);var pattern=options.pattern||bundle[(options.type||"decimal")+"Format"];var group=bundle.group;var decimal=bundle.decimal;var factor=1;if(pattern.indexOf("%")!=-1){factor/=100}else{if(pattern.indexOf("\u2030")!=-1){factor/=1000}else{var isCurrency=pattern.indexOf("\u00a4")!=-1;if(isCurrency){group=bundle.currencyGroup||group;decimal=bundle.currencyDecimal||decimal}}}var patternList=pattern.split(";");if(patternList.length==1){patternList.push("-"+patternList[0])}var re=dojo.regexp.buildGroupRE(patternList,function(pattern){pattern="(?:"+dojo.regexp.escapeString(pattern,".")+")";return pattern.replace(dojo.number._numberPatternRE,function(format){var flags={signed:false,separator:options.strict?group:[group,""],fractional:options.fractional,decimal:decimal,exponent:false};var parts=format.split(".");var places=options.places;if(parts.length==1||places===0){flags.fractional=false}else{if(places===undefined){places=options.pattern?parts[1].lastIndexOf("0")+1:Infinity}if(places&&options.fractional==undefined){flags.fractional=true}if(!options.places&&(places<parts[1].length)){places+=","+parts[1].length}flags.places=places}var groups=parts[0].split(",");if(groups.length>1){flags.groupSize=groups.pop().length;if(groups.length>1){flags.groupSize2=groups.pop().length}}return"("+dojo.number._realNumberRegexp(flags)+")"})},true);if(isCurrency){re=re.replace(/([\s\xa0]*)(\u00a4{1,3})([\s\xa0]*)/g,function(match,before,target,after){var prop=["symbol","currency","displayName"][target.length-1];var symbol=dojo.regexp.escapeString(options[prop]||options.currency||"");before=before?"[\\s\\xa0]":"";after=after?"[\\s\\xa0]":"";if(!options.strict){if(before){before+="*"}if(after){after+="*"}return"(?:"+before+symbol+after+")?"}return before+symbol+after})}return{regexp:re.replace(/[\xa0 ]/g,"[\\s\\xa0]"),group:group,decimal:decimal,factor:factor}};dojo.number.parse=function(expression,options){var info=dojo.number._parseInfo(options);var results=(new RegExp("^"+info.regexp+"$")).exec(expression);if(!results){return NaN}var absoluteMatch=results[1];if(!results[1]){if(!results[2]){return NaN}absoluteMatch=results[2];info.factor*=-1}absoluteMatch=absoluteMatch.replace(new RegExp("["+info.group+"\\s\\xa0]","g"),"").replace(info.decimal,".");return absoluteMatch*info.factor};dojo.number._realNumberRegexp=function(flags){flags=flags||{};if(!("places" in flags)){flags.places=Infinity}if(typeof flags.decimal!="string"){flags.decimal="."}if(!("fractional" in flags)||/^0/.test(flags.places)){flags.fractional=[true,false]}if(!("exponent" in flags)){flags.exponent=[true,false]}if(!("eSigned" in flags)){flags.eSigned=[true,false]}var integerRE=dojo.number._integerRegexp(flags);var decimalRE=dojo.regexp.buildGroupRE(flags.fractional,function(q){var re="";if(q&&(flags.places!==0)){re="\\"+flags.decimal;if(flags.places==Infinity){re="(?:"+re+"\\d+)?"}else{re+="\\d{"+flags.places+"}"}}return re},true);var exponentRE=dojo.regexp.buildGroupRE(flags.exponent,function(q){if(q){return"([eE]"+dojo.number._integerRegexp({signed:flags.eSigned})+")"}return""});var realRE=integerRE+decimalRE;if(decimalRE){realRE="(?:(?:"+realRE+")|(?:"+decimalRE+"))"}return realRE+exponentRE};dojo.number._integerRegexp=function(flags){flags=flags||{};if(!("signed" in flags)){flags.signed=[true,false]}if(!("separator" in flags)){flags.separator=""}else{if(!("groupSize" in flags)){flags.groupSize=3}}var signRE=dojo.regexp.buildGroupRE(flags.signed,function(q){return q?"[-+]":""},true);var numberRE=dojo.regexp.buildGroupRE(flags.separator,function(sep){if(!sep){return"(?:\\d+)"}sep=dojo.regexp.escapeString(sep);if(sep==" "){sep="\\s"}else{if(sep=="\xa0"){sep="\\s\\xa0"}}var grp=flags.groupSize,grp2=flags.groupSize2;if(grp2){var grp2RE="(?:0|[1-9]\\d{0,"+(grp2-1)+"}(?:["+sep+"]\\d{"+grp2+"})*["+sep+"]\\d{"+grp+"})";return((grp-grp2)>0)?"(?:"+grp2RE+"|(?:0|[1-9]\\d{0,"+(grp-1)+"}))":grp2RE}return"(?:0|[1-9]\\d{0,"+(grp-1)+"}(?:["+sep+"]\\d{"+grp+"})*)"},true);return signRE+numberRE}}if(!dojo._hasResource["dijit.form.NumberTextBox"]){dojo._hasResource["dijit.form.NumberTextBox"]=true;dojo.provide("dijit.form.NumberTextBox");dojo.declare("dijit.form.NumberTextBoxMixin",null,{regExpGen:dojo.number.regexp,value:NaN,editOptions:{pattern:"#.######"},_formatter:dojo.number.format,postMixInProperties:function(){if(typeof this.constraints.max!="number"){this.constraints.max=9000000000000000}this.inherited(arguments)},_onFocus:function(){if(this.disabled){return }var val=this.attr("value");if(typeof val=="number"&&!isNaN(val)){var formattedValue=this.format(val,this.constraints);if(formattedValue!==undefined){this.textbox.value=formattedValue}}this.inherited(arguments)},format:function(value,constraints){if(typeof value!="number"){return String(value)}if(isNaN(value)){return""}if(("rangeCheck" in this)&&!this.rangeCheck(value,constraints)){return String(value)}if(this.editOptions&&this._focused){constraints=dojo.mixin(dojo.mixin({},this.editOptions),constraints)}return this._formatter(value,constraints)},parse:dojo.number.parse,_getDisplayedValueAttr:function(){var v=this.inherited(arguments);return isNaN(v)?this.textbox.value:v},filter:function(value){return(value===null||value===""||value===undefined)?NaN:this.inherited(arguments)},serialize:function(value,options){return(typeof value!="number"||isNaN(value))?"":this.inherited(arguments)},_setValueAttr:function(value,priorityChange,formattedValue){if(value!==undefined&&formattedValue===undefined){if(typeof value=="number"){if(isNaN(value)){formattedValue=""}else{if(("rangeCheck" in this)&&!this.rangeCheck(value,this.constraints)){formattedValue=String(value)}}}else{if(!value){formattedValue="";value=NaN}else{formattedValue=String(value);value=undefined}}}this.inherited(arguments,[value,priorityChange,formattedValue])},_getValueAttr:function(){var v=this.inherited(arguments);if(isNaN(v)&&this.textbox.value!==""){var n=Number(this.textbox.value);return(String(n)===this.textbox.value)?n:undefined}else{return v}}});dojo.declare("dijit.form.NumberTextBox",[dijit.form.RangeBoundTextBox,dijit.form.NumberTextBoxMixin],{})}if(!dojo._hasResource["dijit.form.NumberSpinner"]){dojo._hasResource["dijit.form.NumberSpinner"]=true;dojo.provide("dijit.form.NumberSpinner");dojo.declare("dijit.form.NumberSpinner",[dijit.form._Spinner,dijit.form.NumberTextBoxMixin],{required:true,adjust:function(val,delta){var tc=this.constraints,v=isNaN(val),gotMax=!isNaN(tc.max),gotMin=!isNaN(tc.min);if(v&&delta!=0){val=(delta>0)?gotMin?tc.min:gotMax?tc.max:0:gotMax?this.constraints.max:gotMin?tc.min:0}var newval=val+delta;if(v||isNaN(newval)){return val}if(gotMax&&(newval>tc.max)){newval=tc.max}if(gotMin&&(newval<tc.min)){newval=tc.min}return newval},_onKeyPress:function(e){if((e.charOrCode==dojo.keys.HOME||e.charOrCode==dojo.keys.END)&&!e.ctrlKey&&!e.altKey){var value=this.constraints[(e.charOrCode==dojo.keys.HOME?"min":"max")];if(value){this._setValueAttr(value,true)}dojo.stopEvent(e)}}})}if(!dojo._hasResource["dojo.cldr.monetary"]){dojo._hasResource["dojo.cldr.monetary"]=true;dojo.provide("dojo.cldr.monetary");dojo.cldr.monetary.getData=function(code){var placesData={ADP:0,BHD:3,BIF:0,BYR:0,CLF:0,CLP:0,DJF:0,ESP:0,GNF:0,IQD:3,ITL:0,JOD:3,JPY:0,KMF:0,KRW:0,KWD:3,LUF:0,LYD:3,MGA:0,MGF:0,OMR:3,PYG:0,RWF:0,TND:3,TRL:0,VUV:0,XAF:0,XOF:0,XPF:0};var roundingData={CHF:5};var places=placesData[code],round=roundingData[code];if(typeof places=="undefined"){places=2}if(typeof round=="undefined"){round=0}return{places:places,round:round}}}if(!dojo._hasResource["dojo.currency"]){dojo._hasResource["dojo.currency"]=true;dojo.provide("dojo.currency");dojo.currency._mixInDefaults=function(options){options=options||{};options.type="currency";var bundle=dojo.i18n.getLocalization("dojo.cldr","currency",options.locale)||{};var iso=options.currency;var data=dojo.cldr.monetary.getData(iso);dojo.forEach(["displayName","symbol","group","decimal"],function(prop){data[prop]=bundle[iso+"_"+prop]});data.fractional=[true,false];return dojo.mixin(data,options)};dojo.currency.format=function(value,options){return dojo.number.format(value,dojo.currency._mixInDefaults(options))};dojo.currency.regexp=function(options){return dojo.number.regexp(dojo.currency._mixInDefaults(options))};dojo.currency.parse=function(expression,options){return dojo.number.parse(expression,dojo.currency._mixInDefaults(options))}}if(!dojo._hasResource["dijit.form.CurrencyTextBox"]){dojo._hasResource["dijit.form.CurrencyTextBox"]=true;dojo.provide("dijit.form.CurrencyTextBox");dojo.declare("dijit.form.CurrencyTextBox",dijit.form.NumberTextBox,{currency:"",regExpGen:dojo.currency.regexp,_formatter:dojo.currency.format,parse:dojo.currency.parse,postMixInProperties:function(){this.constraints.currency=this.currency;this.inherited(arguments)}})}if(!dojo._hasResource["dojo.dnd.common"]){dojo._hasResource["dojo.dnd.common"]=true;dojo.provide("dojo.dnd.common");dojo.dnd._isMac=navigator.appVersion.indexOf("Macintosh")>=0;dojo.dnd._copyKey=dojo.dnd._isMac?"metaKey":"ctrlKey";dojo.dnd.getCopyKeyState=function(e){return e[dojo.dnd._copyKey]};dojo.dnd._uniqueId=0;dojo.dnd.getUniqueId=function(){var id;do{id=dojo._scopeName+"Unique"+(++dojo.dnd._uniqueId)}while(dojo.byId(id));return id};dojo.dnd._empty={};dojo.dnd.isFormElement=function(e){var t=e.target;if(t.nodeType==3){t=t.parentNode}return" button textarea input select option ".indexOf(" "+t.tagName.toLowerCase()+" ")>=0};dojo.dnd._lmb=dojo.isIE?1:0;dojo.dnd._isLmbPressed=dojo.isIE?function(e){return e.button&1}:function(e){return e.button===0}}if(!dojo._hasResource["dojo.dnd.autoscroll"]){dojo._hasResource["dojo.dnd.autoscroll"]=true;dojo.provide("dojo.dnd.autoscroll");dojo.dnd.getViewport=function(){var d=dojo.doc,dd=d.documentElement,w=window,b=dojo.body();if(dojo.isMozilla){return{w:dd.clientWidth,h:w.innerHeight}}else{if(!dojo.isOpera&&w.innerWidth){return{w:w.innerWidth,h:w.innerHeight}}else{if(!dojo.isOpera&&dd&&dd.clientWidth){return{w:dd.clientWidth,h:dd.clientHeight}}else{if(b.clientWidth){return{w:b.clientWidth,h:b.clientHeight}}}}}return null};dojo.dnd.V_TRIGGER_AUTOSCROLL=32;dojo.dnd.H_TRIGGER_AUTOSCROLL=32;dojo.dnd.V_AUTOSCROLL_VALUE=16;dojo.dnd.H_AUTOSCROLL_VALUE=16;dojo.dnd.autoScroll=function(e){var v=dojo.dnd.getViewport(),dx=0,dy=0;if(e.clientX<dojo.dnd.H_TRIGGER_AUTOSCROLL){dx=-dojo.dnd.H_AUTOSCROLL_VALUE}else{if(e.clientX>v.w-dojo.dnd.H_TRIGGER_AUTOSCROLL){dx=dojo.dnd.H_AUTOSCROLL_VALUE}}if(e.clientY<dojo.dnd.V_TRIGGER_AUTOSCROLL){dy=-dojo.dnd.V_AUTOSCROLL_VALUE}else{if(e.clientY>v.h-dojo.dnd.V_TRIGGER_AUTOSCROLL){dy=dojo.dnd.V_AUTOSCROLL_VALUE}}window.scrollBy(dx,dy)};dojo.dnd._validNodes={"div":1,"p":1,"td":1};dojo.dnd._validOverflow={"auto":1,"scroll":1};dojo.dnd.autoScrollNodes=function(e){for(var n=e.target;n;){if(n.nodeType==1&&(n.tagName.toLowerCase() in dojo.dnd._validNodes)){var s=dojo.getComputedStyle(n);if(s.overflow.toLowerCase() in dojo.dnd._validOverflow){var b=dojo._getContentBox(n,s),t=dojo._abs(n,true);var w=Math.min(dojo.dnd.H_TRIGGER_AUTOSCROLL,b.w/2),h=Math.min(dojo.dnd.V_TRIGGER_AUTOSCROLL,b.h/2),rx=e.pageX-t.x,ry=e.pageY-t.y,dx=0,dy=0;if(dojo.isWebKit||dojo.isOpera){rx+=dojo.body().scrollLeft,ry+=dojo.body().scrollTop}if(rx>0&&rx<b.w){if(rx<w){dx=-w}else{if(rx>b.w-w){dx=w}}}if(ry>0&&ry<b.h){if(ry<h){dy=-h}else{if(ry>b.h-h){dy=h}}}var oldLeft=n.scrollLeft,oldTop=n.scrollTop;n.scrollLeft=n.scrollLeft+dx;n.scrollTop=n.scrollTop+dy;if(oldLeft!=n.scrollLeft||oldTop!=n.scrollTop){return }}}try{n=n.parentNode}catch(x){n=null}}dojo.dnd.autoScroll(e)}}if(!dojo._hasResource["dojo.dnd.Mover"]){dojo._hasResource["dojo.dnd.Mover"]=true;dojo.provide("dojo.dnd.Mover");dojo.declare("dojo.dnd.Mover",null,{constructor:function(node,e,host){this.node=dojo.byId(node);this.marginBox={l:e.pageX,t:e.pageY};this.mouseButton=e.button;var h=this.host=host,d=node.ownerDocument,firstEvent=dojo.connect(d,"onmousemove",this,"onFirstMove");this.events=[dojo.connect(d,"onmousemove",this,"onMouseMove"),dojo.connect(d,"onmouseup",this,"onMouseUp"),dojo.connect(d,"ondragstart",dojo.stopEvent),dojo.connect(d.body,"onselectstart",dojo.stopEvent),firstEvent];if(h&&h.onMoveStart){h.onMoveStart(this)}},onMouseMove:function(e){dojo.dnd.autoScroll(e);var m=this.marginBox;this.host.onMove(this,{l:m.l+e.pageX,t:m.t+e.pageY});dojo.stopEvent(e)},onMouseUp:function(e){if(dojo.isWebKit&&dojo.dnd._isMac&&this.mouseButton==2?e.button==0:this.mouseButton==e.button){this.destroy()}dojo.stopEvent(e)},onFirstMove:function(){var s=this.node.style,l,t,h=this.host;switch(s.position){case"relative":case"absolute":l=Math.round(parseFloat(s.left));t=Math.round(parseFloat(s.top));break;default:s.position="absolute";var m=dojo.marginBox(this.node);var b=dojo.doc.body;var bs=dojo.getComputedStyle(b);var bm=dojo._getMarginBox(b,bs);var bc=dojo._getContentBox(b,bs);l=m.l-(bc.l-bm.l);t=m.t-(bc.t-bm.t);break}this.marginBox.l=l-this.marginBox.l;this.marginBox.t=t-this.marginBox.t;if(h&&h.onFirstMove){h.onFirstMove(this)}dojo.disconnect(this.events.pop())},destroy:function(){dojo.forEach(this.events,dojo.disconnect);var h=this.host;if(h&&h.onMoveStop){h.onMoveStop(this)}this.events=this.node=this.host=null}})}if(!dojo._hasResource["dojo.dnd.Moveable"]){dojo._hasResource["dojo.dnd.Moveable"]=true;dojo.provide("dojo.dnd.Moveable");dojo.declare("dojo.dnd.Moveable",null,{handle:"",delay:0,skip:false,constructor:function(node,params){this.node=dojo.byId(node);if(!params){params={}}this.handle=params.handle?dojo.byId(params.handle):null;if(!this.handle){this.handle=this.node}this.delay=params.delay>0?params.delay:0;this.skip=params.skip;this.mover=params.mover?params.mover:dojo.dnd.Mover;this.events=[dojo.connect(this.handle,"onmousedown",this,"onMouseDown"),dojo.connect(this.handle,"ondragstart",this,"onSelectStart"),dojo.connect(this.handle,"onselectstart",this,"onSelectStart")]},markupFactory:function(params,node){return new dojo.dnd.Moveable(node,params)},destroy:function(){dojo.forEach(this.events,dojo.disconnect);this.events=this.node=this.handle=null},onMouseDown:function(e){if(this.skip&&dojo.dnd.isFormElement(e)){return }if(this.delay){this.events.push(dojo.connect(this.handle,"onmousemove",this,"onMouseMove"),dojo.connect(this.handle,"onmouseup",this,"onMouseUp"));this._lastX=e.pageX;this._lastY=e.pageY}else{this.onDragDetected(e)}dojo.stopEvent(e)},onMouseMove:function(e){if(Math.abs(e.pageX-this._lastX)>this.delay||Math.abs(e.pageY-this._lastY)>this.delay){this.onMouseUp(e);this.onDragDetected(e)}dojo.stopEvent(e)},onMouseUp:function(e){for(var i=0;i<2;++i){dojo.disconnect(this.events.pop())}dojo.stopEvent(e)},onSelectStart:function(e){if(!this.skip||!dojo.dnd.isFormElement(e)){dojo.stopEvent(e)}},onDragDetected:function(e){new this.mover(this.node,e,this)},onMoveStart:function(mover){dojo.publish("/dnd/move/start",[mover]);dojo.addClass(dojo.body(),"dojoMove");dojo.addClass(this.node,"dojoMoveItem")},onMoveStop:function(mover){dojo.publish("/dnd/move/stop",[mover]);dojo.removeClass(dojo.body(),"dojoMove");dojo.removeClass(this.node,"dojoMoveItem")},onFirstMove:function(mover){},onMove:function(mover,leftTop){this.onMoving(mover,leftTop);var s=mover.node.style;s.left=leftTop.l+"px";s.top=leftTop.t+"px";this.onMoved(mover,leftTop)},onMoving:function(mover,leftTop){},onMoved:function(mover,leftTop){}})}if(!dojo._hasResource["dojo.dnd.move"]){dojo._hasResource["dojo.dnd.move"]=true;dojo.provide("dojo.dnd.move");dojo.declare("dojo.dnd.move.constrainedMoveable",dojo.dnd.Moveable,{constraints:function(){},within:false,markupFactory:function(params,node){return new dojo.dnd.move.constrainedMoveable(node,params)},constructor:function(node,params){if(!params){params={}}this.constraints=params.constraints;this.within=params.within},onFirstMove:function(mover){var c=this.constraintBox=this.constraints.call(this,mover);c.r=c.l+c.w;c.b=c.t+c.h;if(this.within){var mb=dojo.marginBox(mover.node);c.r-=mb.w;c.b-=mb.h}},onMove:function(mover,leftTop){var c=this.constraintBox,s=mover.node.style;s.left=(leftTop.l<c.l?c.l:c.r<leftTop.l?c.r:leftTop.l)+"px";s.top=(leftTop.t<c.t?c.t:c.b<leftTop.t?c.b:leftTop.t)+"px"}});dojo.declare("dojo.dnd.move.boxConstrainedMoveable",dojo.dnd.move.constrainedMoveable,{box:{},markupFactory:function(params,node){return new dojo.dnd.move.boxConstrainedMoveable(node,params)},constructor:function(node,params){var box=params&&params.box;this.constraints=function(){return box}}});dojo.declare("dojo.dnd.move.parentConstrainedMoveable",dojo.dnd.move.constrainedMoveable,{area:"content",markupFactory:function(params,node){return new dojo.dnd.move.parentConstrainedMoveable(node,params)},constructor:function(node,params){var area=params&&params.area;this.constraints=function(){var n=this.node.parentNode,s=dojo.getComputedStyle(n),mb=dojo._getMarginBox(n,s);if(area=="margin"){return mb}var t=dojo._getMarginExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;if(area=="border"){return mb}t=dojo._getBorderExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;if(area=="padding"){return mb}t=dojo._getPadExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;return mb}}});dojo.dnd.move.constrainedMover=function(fun,within){dojo.deprecated("dojo.dnd.move.constrainedMover, use dojo.dnd.move.constrainedMoveable instead");var mover=function(node,e,notifier){dojo.dnd.Mover.call(this,node,e,notifier)};dojo.extend(mover,dojo.dnd.Mover.prototype);dojo.extend(mover,{onMouseMove:function(e){dojo.dnd.autoScroll(e);var m=this.marginBox,c=this.constraintBox,l=m.l+e.pageX,t=m.t+e.pageY;l=l<c.l?c.l:c.r<l?c.r:l;t=t<c.t?c.t:c.b<t?c.b:t;this.host.onMove(this,{l:l,t:t})},onFirstMove:function(){dojo.dnd.Mover.prototype.onFirstMove.call(this);var c=this.constraintBox=fun.call(this);c.r=c.l+c.w;c.b=c.t+c.h;if(within){var mb=dojo.marginBox(this.node);c.r-=mb.w;c.b-=mb.h}}});return mover};dojo.dnd.move.boxConstrainedMover=function(box,within){dojo.deprecated("dojo.dnd.move.boxConstrainedMover, use dojo.dnd.move.boxConstrainedMoveable instead");return dojo.dnd.move.constrainedMover(function(){return box},within)};dojo.dnd.move.parentConstrainedMover=function(area,within){dojo.deprecated("dojo.dnd.move.parentConstrainedMover, use dojo.dnd.move.parentConstrainedMoveable instead");var fun=function(){var n=this.node.parentNode,s=dojo.getComputedStyle(n),mb=dojo._getMarginBox(n,s);if(area=="margin"){return mb}var t=dojo._getMarginExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;if(area=="border"){return mb}t=dojo._getBorderExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;if(area=="padding"){return mb}t=dojo._getPadExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;return mb};return dojo.dnd.move.constrainedMover(fun,within)};dojo.dnd.constrainedMover=dojo.dnd.move.constrainedMover;dojo.dnd.boxConstrainedMover=dojo.dnd.move.boxConstrainedMover;dojo.dnd.parentConstrainedMover=dojo.dnd.move.parentConstrainedMover}if(!dojo._hasResource["dijit.form.HorizontalSlider"]){dojo._hasResource["dijit.form.HorizontalSlider"]=true;dojo.provide("dijit.form.HorizontalSlider");dojo.declare("dijit.form.HorizontalSlider",[dijit.form._FormValueWidget,dijit._Container],{templateString:'<table class="dijit dijitReset dijitSlider" cellspacing="0" cellpadding="0" border="0" rules="none" dojoAttachEvent="onkeypress:_onKeyPress"\r\n\t><tr class="dijitReset"\r\n\t\t><td class="dijitReset" colspan="2"></td\r\n\t\t><td dojoAttachPoint="containerNode,topDecoration" class="dijitReset" style="text-align:center;width:100%;"></td\r\n\t\t><td class="dijitReset" colspan="2"></td\r\n\t></tr\r\n\t><tr class="dijitReset"\r\n\t\t><td class="dijitReset dijitSliderButtonContainer dijitSliderButtonContainerH"\r\n\t\t\t><div class="dijitSliderDecrementIconH" tabIndex="-1" style="display:none" dojoAttachPoint="decrementButton"><span class="dijitSliderButtonInner">-</span></div\r\n\t\t></td\r\n\t\t><td class="dijitReset"\r\n\t\t\t><div class="dijitSliderBar dijitSliderBumper dijitSliderBumperH dijitSliderLeftBumper dijitSliderLeftBumper" dojoAttachEvent="onmousedown:_onClkDecBumper"></div\r\n\t\t></td\r\n\t\t><td class="dijitReset"\r\n\t\t\t><input dojoAttachPoint="valueNode" type="hidden" ${nameAttrSetting}\r\n\t\t\t/><div class="dijitReset dijitSliderBarContainerH" waiRole="presentation" dojoAttachPoint="sliderBarContainer"\r\n\t\t\t\t><div waiRole="presentation" dojoAttachPoint="progressBar" class="dijitSliderBar dijitSliderBarH dijitSliderProgressBar dijitSliderProgressBarH" dojoAttachEvent="onmousedown:_onBarClick"\r\n\t\t\t\t\t><div class="dijitSliderMoveable dijitSliderMoveableH" \r\n\t\t\t\t\t\t><div dojoAttachPoint="sliderHandle,focusNode" class="dijitSliderImageHandle dijitSliderImageHandleH" dojoAttachEvent="onmousedown:_onHandleClick" waiRole="slider" valuemin="${minimum}" valuemax="${maximum}"></div\r\n\t\t\t\t\t></div\r\n\t\t\t\t></div\r\n\t\t\t\t><div waiRole="presentation" dojoAttachPoint="remainingBar" class="dijitSliderBar dijitSliderBarH dijitSliderRemainingBar dijitSliderRemainingBarH" dojoAttachEvent="onmousedown:_onBarClick"></div\r\n\t\t\t></div\r\n\t\t></td\r\n\t\t><td class="dijitReset"\r\n\t\t\t><div class="dijitSliderBar dijitSliderBumper dijitSliderBumperH dijitSliderRightBumper dijitSliderRightBumper" dojoAttachEvent="onmousedown:_onClkIncBumper"></div\r\n\t\t></td\r\n\t\t><td class="dijitReset dijitSliderButtonContainer dijitSliderButtonContainerH" style="right:0px;"\r\n\t\t\t><div class="dijitSliderIncrementIconH" tabIndex="-1" style="display:none" dojoAttachPoint="incrementButton"><span class="dijitSliderButtonInner">+</span></div\r\n\t\t></td\r\n\t></tr\r\n\t><tr class="dijitReset"\r\n\t\t><td class="dijitReset" colspan="2"></td\r\n\t\t><td dojoAttachPoint="containerNode,bottomDecoration" class="dijitReset" style="text-align:center;"></td\r\n\t\t><td class="dijitReset" colspan="2"></td\r\n\t></tr\r\n></table>\r\n',value:0,showButtons:true,minimum:0,maximum:100,discreteValues:Infinity,pageIncrement:2,clickSelect:true,slideDuration:dijit.defaultDuration,widgetsInTemplate:true,attributeMap:dojo.delegate(dijit.form._FormWidget.prototype.attributeMap,{id:""}),baseClass:"dijitSlider",_mousePixelCoord:"pageX",_pixelCount:"w",_startingPixelCoord:"x",_startingPixelCount:"l",_handleOffsetCoord:"left",_progressPixelSize:"width",_onKeyPress:function(e){if(this.disabled||this.readOnly||e.altKey||e.ctrlKey){return }switch(e.charOrCode){case dojo.keys.HOME:this._setValueAttr(this.minimum,true);break;case dojo.keys.END:this._setValueAttr(this.maximum,true);break;case ((this._descending||this.isLeftToRight())?dojo.keys.RIGHT_ARROW:dojo.keys.LEFT_ARROW):case (this._descending===false?dojo.keys.DOWN_ARROW:dojo.keys.UP_ARROW):case (this._descending===false?dojo.keys.PAGE_DOWN:dojo.keys.PAGE_UP):this.increment(e);break;case ((this._descending||this.isLeftToRight())?dojo.keys.LEFT_ARROW:dojo.keys.RIGHT_ARROW):case (this._descending===false?dojo.keys.UP_ARROW:dojo.keys.DOWN_ARROW):case (this._descending===false?dojo.keys.PAGE_UP:dojo.keys.PAGE_DOWN):this.decrement(e);break;default:return }dojo.stopEvent(e)},_onHandleClick:function(e){if(this.disabled||this.readOnly){return }if(!dojo.isIE){dijit.focus(this.sliderHandle)}dojo.stopEvent(e)},_isReversed:function(){return !this.isLeftToRight()},_onBarClick:function(e){if(this.disabled||this.readOnly||!this.clickSelect){return }dijit.focus(this.sliderHandle);dojo.stopEvent(e);var abspos=dojo.coords(this.sliderBarContainer,true);var pixelValue=e[this._mousePixelCoord]-abspos[this._startingPixelCoord];this._setPixelValue(this._isReversed()?(abspos[this._pixelCount]-pixelValue):pixelValue,abspos[this._pixelCount],true);this._movable.onMouseDown(e)},_setPixelValue:function(pixelValue,maxPixels,priorityChange){if(this.disabled||this.readOnly){return }pixelValue=pixelValue<0?0:maxPixels<pixelValue?maxPixels:pixelValue;var count=this.discreteValues;if(count<=1||count==Infinity){count=maxPixels}count--;var pixelsPerValue=maxPixels/count;var wholeIncrements=Math.round(pixelValue/pixelsPerValue);this._setValueAttr((this.maximum-this.minimum)*wholeIncrements/count+this.minimum,priorityChange)},_setValueAttr:function(value,priorityChange){this.valueNode.value=this.value=value;dijit.setWaiState(this.focusNode,"valuenow",value);this.inherited(arguments);var percent=(value-this.minimum)/(this.maximum-this.minimum);var progressBar=(this._descending===false)?this.remainingBar:this.progressBar;var remainingBar=(this._descending===false)?this.progressBar:this.remainingBar;if(this._inProgressAnim&&this._inProgressAnim.status!="stopped"){this._inProgressAnim.stop(true)}if(priorityChange&&this.slideDuration>0&&progressBar.style[this._progressPixelSize]){var _this=this;var props={};var start=parseFloat(progressBar.style[this._progressPixelSize]);var duration=this.slideDuration*(percent-start/100);if(duration==0){return }if(duration<0){duration=0-duration}props[this._progressPixelSize]={start:start,end:percent*100,units:"%"};this._inProgressAnim=dojo.animateProperty({node:progressBar,duration:duration,onAnimate:function(v){remainingBar.style[_this._progressPixelSize]=(100-parseFloat(v[_this._progressPixelSize]))+"%"},onEnd:function(){delete _this._inProgressAnim},properties:props});this._inProgressAnim.play()}else{progressBar.style[this._progressPixelSize]=(percent*100)+"%";remainingBar.style[this._progressPixelSize]=((1-percent)*100)+"%"}},_bumpValue:function(signedChange){if(this.disabled||this.readOnly){return }var s=dojo.getComputedStyle(this.sliderBarContainer);var c=dojo._getContentBox(this.sliderBarContainer,s);var count=this.discreteValues;if(count<=1||count==Infinity){count=c[this._pixelCount]}count--;var value=(this.value-this.minimum)*count/(this.maximum-this.minimum)+signedChange;if(value<0){value=0}if(value>count){value=count}value=value*(this.maximum-this.minimum)/count+this.minimum;this._setValueAttr(value,true)},_onClkBumper:function(val){if(this.disabled||this.readOnly||!this.clickSelect){return }this._setValueAttr(val,true)},_onClkIncBumper:function(){this._onClkBumper(this._descending===false?this.minimum:this.maximum)},_onClkDecBumper:function(){this._onClkBumper(this._descending===false?this.maximum:this.minimum)},decrement:function(e){this._bumpValue(e.charOrCode==dojo.keys.PAGE_DOWN?-this.pageIncrement:-1)},increment:function(e){this._bumpValue(e.charOrCode==dojo.keys.PAGE_UP?this.pageIncrement:1)},_mouseWheeled:function(evt){dojo.stopEvent(evt);var janky=!dojo.isMozilla;var scroll=evt[(janky?"wheelDelta":"detail")]*(janky?1:-1);this[(scroll<0?"decrement":"increment")](evt)},startup:function(){dojo.forEach(this.getChildren(),function(child){if(this[child.container]!=this.containerNode){this[child.container].appendChild(child.domNode)}},this)},_typematicCallback:function(count,button,e){if(count==-1){return }this[(button==(this._descending?this.incrementButton:this.decrementButton))?"decrement":"increment"](e)},postCreate:function(){if(this.showButtons){this.incrementButton.style.display="";this.decrementButton.style.display="";this._connects.push(dijit.typematic.addMouseListener(this.decrementButton,this,"_typematicCallback",25,500));this._connects.push(dijit.typematic.addMouseListener(this.incrementButton,this,"_typematicCallback",25,500))}this.connect(this.domNode,!dojo.isMozilla?"onmousewheel":"DOMMouseScroll","_mouseWheeled");var _self=this;var mover=function(){dijit.form._SliderMover.apply(this,arguments);this.widget=_self};dojo.extend(mover,dijit.form._SliderMover.prototype);this._movable=new dojo.dnd.Moveable(this.sliderHandle,{mover:mover});var label=dojo.query('label[for="'+this.id+'"]');if(label.length){label[0].id=(this.id+"_label");dijit.setWaiState(this.focusNode,"labelledby",label[0].id)}dijit.setWaiState(this.focusNode,"valuemin",this.minimum);dijit.setWaiState(this.focusNode,"valuemax",this.maximum);this.inherited(arguments)},destroy:function(){this._movable.destroy();if(this._inProgressAnim&&this._inProgressAnim.status!="stopped"){this._inProgressAnim.stop(true)}this.inherited(arguments)}});dojo.declare("dijit.form._SliderMover",dojo.dnd.Mover,{onMouseMove:function(e){var widget=this.widget;var abspos=widget._abspos;if(!abspos){abspos=widget._abspos=dojo.coords(widget.sliderBarContainer,true);widget._setPixelValue_=dojo.hitch(widget,"_setPixelValue");widget._isReversed_=widget._isReversed()}var pixelValue=e[widget._mousePixelCoord]-abspos[widget._startingPixelCoord];widget._setPixelValue_(widget._isReversed_?(abspos[widget._pixelCount]-pixelValue):pixelValue,abspos[widget._pixelCount],false)},destroy:function(e){dojo.dnd.Mover.prototype.destroy.apply(this,arguments);var widget=this.widget;widget._abspos=null;widget._setValueAttr(widget.value,true)}})}if(!dojo._hasResource["dijit.form.VerticalSlider"]){dojo._hasResource["dijit.form.VerticalSlider"]=true;dojo.provide("dijit.form.VerticalSlider");dojo.declare("dijit.form.VerticalSlider",dijit.form.HorizontalSlider,{templateString:'<table class="dijitReset dijitSlider" cellspacing="0" cellpadding="0" border="0" rules="none" dojoAttachEvent="onkeypress:_onKeyPress"\r\n><tbody class="dijitReset"\r\n\t><tr class="dijitReset"\r\n\t\t><td class="dijitReset"></td\r\n\t\t><td class="dijitReset dijitSliderButtonContainer dijitSliderButtonContainerV"\r\n\t\t\t><div class="dijitSliderIncrementIconV" tabIndex="-1" style="display:none" dojoAttachPoint="decrementButton"><span class="dijitSliderButtonInner">+</span></div\r\n\t\t></td\r\n\t\t><td class="dijitReset"></td\r\n\t></tr\r\n\t><tr class="dijitReset"\r\n\t\t><td class="dijitReset"></td\r\n\t\t><td class="dijitReset"\r\n\t\t\t><center><div class="dijitSliderBar dijitSliderBumper dijitSliderBumperV dijitSliderTopBumper dijitSliderTopBumper" dojoAttachEvent="onmousedown:_onClkIncBumper"></div></center\r\n\t\t></td\r\n\t\t><td class="dijitReset"></td\r\n\t></tr\r\n\t><tr class="dijitReset"\r\n\t\t><td dojoAttachPoint="leftDecoration" class="dijitReset" style="text-align:center;height:100%;"></td\r\n\t\t><td class="dijitReset" style="height:100%;"\r\n\t\t\t><input dojoAttachPoint="valueNode" type="hidden" ${nameAttrSetting}\r\n\t\t\t/><center class="dijitReset dijitSliderBarContainerV" waiRole="presentation" dojoAttachPoint="sliderBarContainer"\r\n\t\t\t\t><div waiRole="presentation" dojoAttachPoint="remainingBar" class="dijitSliderBar dijitSliderBarV dijitSliderRemainingBar dijitSliderRemainingBarV" dojoAttachEvent="onmousedown:_onBarClick"><!--#5629--></div\r\n\t\t\t\t><div waiRole="presentation" dojoAttachPoint="progressBar" class="dijitSliderBar dijitSliderBarV dijitSliderProgressBar dijitSliderProgressBarV" dojoAttachEvent="onmousedown:_onBarClick"\r\n\t\t\t\t\t><div class="dijitSliderMoveable" style="vertical-align:top;" \r\n\t\t\t\t\t\t><div dojoAttachPoint="sliderHandle,focusNode" class="dijitSliderImageHandle dijitSliderImageHandleV" dojoAttachEvent="onmousedown:_onHandleClick" waiRole="slider" valuemin="${minimum}" valuemax="${maximum}"></div\r\n\t\t\t\t\t></div\r\n\t\t\t\t></div\r\n\t\t\t></center\r\n\t\t></td\r\n\t\t><td dojoAttachPoint="containerNode,rightDecoration" class="dijitReset" style="text-align:center;height:100%;"></td\r\n\t></tr\r\n\t><tr class="dijitReset"\r\n\t\t><td class="dijitReset"></td\r\n\t\t><td class="dijitReset"\r\n\t\t\t><center><div class="dijitSliderBar dijitSliderBumper dijitSliderBumperV dijitSliderBottomBumper dijitSliderBottomBumper" dojoAttachEvent="onmousedown:_onClkDecBumper"></div></center\r\n\t\t></td\r\n\t\t><td class="dijitReset"></td\r\n\t></tr\r\n\t><tr class="dijitReset"\r\n\t\t><td class="dijitReset"></td\r\n\t\t><td class="dijitReset dijitSliderButtonContainer dijitSliderButtonContainerV"\r\n\t\t\t><div class="dijitSliderDecrementIconV" tabIndex="-1" style="display:none" dojoAttachPoint="incrementButton"><span class="dijitSliderButtonInner">-</span></div\r\n\t\t></td\r\n\t\t><td class="dijitReset"></td\r\n\t></tr\r\n></tbody></table>\r\n',_mousePixelCoord:"pageY",_pixelCount:"h",_startingPixelCoord:"y",_startingPixelCount:"t",_handleOffsetCoord:"top",_progressPixelSize:"height",_descending:true,startup:function(){if(this._started){return }if(!this.isLeftToRight()&&dojo.isMoz){if(this.leftDecoration){this._rtlRectify(this.leftDecoration)}if(this.rightDecoration){this._rtlRectify(this.rightDecoration)}}this.inherited(arguments)},_isReversed:function(){return this._descending},_rtlRectify:function(decorationNode){var childNodes=[];while(decorationNode.firstChild){childNodes.push(decorationNode.firstChild);decorationNode.removeChild(decorationNode.firstChild)}for(var i=childNodes.length-1;i>=0;i--){if(childNodes[i]){decorationNode.appendChild(childNodes[i])}}}})}if(!dojo._hasResource["dijit.form.HorizontalRule"]){dojo._hasResource["dijit.form.HorizontalRule"]=true;dojo.provide("dijit.form.HorizontalRule");dojo.declare("dijit.form.HorizontalRule",[dijit._Widget,dijit._Templated],{templateString:'<div class="dijitRuleContainer dijitRuleContainerH"></div>',count:3,container:"containerNode",ruleStyle:"",_positionPrefix:'<div class="dijitRuleMark dijitRuleMarkH" style="left:',_positionSuffix:"%;",_suffix:'"></div>',_genHTML:function(pos,ndx){return this._positionPrefix+pos+this._positionSuffix+this.ruleStyle+this._suffix},_isHorizontal:true,postCreate:function(){var innerHTML;if(this.count==1){innerHTML=this._genHTML(50,0)}else{var i;var interval=100/(this.count-1);if(!this._isHorizontal||this.isLeftToRight()){innerHTML=this._genHTML(0,0);for(i=1;i<this.count-1;i++){innerHTML+=this._genHTML(interval*i,i)}innerHTML+=this._genHTML(100,this.count-1)}else{innerHTML=this._genHTML(100,0);for(i=1;i<this.count-1;i++){innerHTML+=this._genHTML(100-interval*i,i)}innerHTML+=this._genHTML(0,this.count-1)}}this.domNode.innerHTML=innerHTML}})}if(!dojo._hasResource["dijit.form.VerticalRule"]){dojo._hasResource["dijit.form.VerticalRule"]=true;dojo.provide("dijit.form.VerticalRule");dojo.declare("dijit.form.VerticalRule",dijit.form.HorizontalRule,{templateString:'<div class="dijitRuleContainer dijitRuleContainerV"></div>',_positionPrefix:'<div class="dijitRuleMark dijitRuleMarkV" style="top:',_isHorizontal:false})}if(!dojo._hasResource["dijit.form.HorizontalRuleLabels"]){dojo._hasResource["dijit.form.HorizontalRuleLabels"]=true;dojo.provide("dijit.form.HorizontalRuleLabels");dojo.declare("dijit.form.HorizontalRuleLabels",dijit.form.HorizontalRule,{templateString:'<div class="dijitRuleContainer dijitRuleContainerH dijitRuleLabelsContainer dijitRuleLabelsContainerH"></div>',labelStyle:"",labels:[],numericMargin:0,minimum:0,maximum:1,constraints:{pattern:"#%"},_positionPrefix:'<div class="dijitRuleLabelContainer dijitRuleLabelContainerH" style="left:',_labelPrefix:'"><span class="dijitRuleLabel dijitRuleLabelH">',_suffix:"</span></div>",_calcPosition:function(pos){return pos},_genHTML:function(pos,ndx){return this._positionPrefix+this._calcPosition(pos)+this._positionSuffix+this.labelStyle+this._labelPrefix+this.labels[ndx]+this._suffix},getLabels:function(){var labels=this.labels;if(!labels.length){labels=dojo.query("> li",this.srcNodeRef).map(function(node){return String(node.innerHTML)})}this.srcNodeRef.innerHTML="";if(!labels.length&&this.count>1){var start=this.minimum;var inc=(this.maximum-start)/(this.count-1);for(var i=0;i<this.count;i++){labels.push((i<this.numericMargin||i>=(this.count-this.numericMargin))?"":dojo.number.format(start,this.constraints));start+=inc}}return labels},postMixInProperties:function(){this.inherited(arguments);this.labels=this.getLabels();this.count=this.labels.length}})}if(!dojo._hasResource["dijit.form.VerticalRuleLabels"]){dojo._hasResource["dijit.form.VerticalRuleLabels"]=true;dojo.provide("dijit.form.VerticalRuleLabels");dojo.declare("dijit.form.VerticalRuleLabels",dijit.form.HorizontalRuleLabels,{templateString:'<div class="dijitRuleContainer dijitRuleContainerV dijitRuleLabelsContainer dijitRuleLabelsContainerV"></div>',_positionPrefix:'<div class="dijitRuleLabelContainer dijitRuleLabelContainerV" style="top:',_labelPrefix:'"><span class="dijitRuleLabel dijitRuleLabelV">',_calcPosition:function(pos){return 100-pos},_isHorizontal:false})}if(!dojo._hasResource["dijit.form.Slider"]){dojo._hasResource["dijit.form.Slider"]=true;dojo.provide("dijit.form.Slider");dojo.deprecated("Call require() for HorizontalSlider / VerticalRule, explicitly rather than 'dijit.form.Slider' itself","","2.0")}if(!dojo._hasResource["dojox.grid.compat._data.dijitEditors"]){dojo._hasResource["dojox.grid.compat._data.dijitEditors"]=true;dojo.provide("dojox.grid.compat._data.dijitEditors");dojo.declare("dojox.grid.editors.Dijit",dojox.grid.editors.base,{editorClass:"dijit.form.TextBox",constructor:function(inCell){this.editor=null;this.editorClass=dojo.getObject(this.cell.editorClass||this.editorClass)},format:function(inDatum,inRowIndex){this.needFormatNode(inDatum,inRowIndex);return"<div></div>"},getValue:function(inRowIndex){return this.editor.getValue()},setValue:function(inRowIndex,inValue){if(this.editor&&this.editor.setValue){if(this.editor.onLoadDeferred){var self=this;this.editor.onLoadDeferred.addCallback(function(){self.editor.setValue(inValue==null?"":inValue)})}else{this.editor.setValue(inValue)}}else{this.inherited(arguments)}},getEditorProps:function(inDatum){return dojo.mixin({},this.cell.editorProps||{},{constraints:dojo.mixin({},this.cell.constraint)||{},value:inDatum})},createEditor:function(inNode,inDatum,inRowIndex){return new this.editorClass(this.getEditorProps(inDatum),inNode)},attachEditor:function(inNode,inDatum,inRowIndex){inNode.appendChild(this.editor.domNode);this.setValue(inRowIndex,inDatum)},formatNode:function(inNode,inDatum,inRowIndex){if(!this.editorClass){return inDatum}if(!this.editor){this.editor=this.createEditor.apply(this,arguments)}else{this.attachEditor.apply(this,arguments)}this.sizeEditor.apply(this,arguments);this.cell.grid.rowHeightChanged(inRowIndex);this.focus()},sizeEditor:function(inNode,inDatum,inRowIndex){var p=this.cell.getNode(inRowIndex),box=dojo.contentBox(p);dojo.marginBox(this.editor.domNode,{w:box.w})},focus:function(inRowIndex,inNode){if(this.editor){setTimeout(dojo.hitch(this.editor,function(){dojox.grid.fire(this,"focus")}),0)}},_finish:function(inRowIndex){this.inherited(arguments);dojox.grid.removeNode(this.editor.domNode)}});dojo.declare("dojox.grid.editors.ComboBox",dojox.grid.editors.Dijit,{editorClass:"dijit.form.ComboBox",getEditorProps:function(inDatum){var items=[];dojo.forEach(this.cell.options,function(o){items.push({name:o,value:o})});var store=new dojo.data.ItemFileReadStore({data:{identifier:"name",items:items}});return dojo.mixin({},this.cell.editorProps||{},{value:inDatum,store:store})},getValue:function(){var e=this.editor;e.setDisplayedValue(e.getDisplayedValue());return e.getValue()}});dojo.declare("dojox.grid.editors.DateTextBox",dojox.grid.editors.Dijit,{editorClass:"dijit.form.DateTextBox",setValue:function(inRowIndex,inValue){if(this.editor){this.editor.setValue(new Date(inValue))}else{this.inherited(arguments)}},getEditorProps:function(inDatum){return dojo.mixin(this.inherited(arguments),{value:new Date(inDatum)})}});dojo.declare("dojox.grid.editors.CheckBox",dojox.grid.editors.Dijit,{editorClass:"dijit.form.CheckBox",getValue:function(){return this.editor.checked},setValue:function(inRowIndex,inValue){if(this.editor&&this.editor.setAttribute){this.editor.setAttribute("checked",inValue)}else{this.inherited(arguments)}},sizeEditor:function(inNode,inDatum,inRowIndex){return }});dojo.declare("dojox.grid.editors.Editor",dojox.grid.editors.Dijit,{editorClass:"dijit.Editor",getEditorProps:function(inDatum){return dojo.mixin({},this.cell.editorProps||{},{height:this.cell.editorHeight||"100px"})},createEditor:function(inNode,inDatum,inRowIndex){var editor=new this.editorClass(this.getEditorProps(inDatum),inNode);dojo.connect(editor,"onLoad",dojo.hitch(this,"populateEditor"));return editor},formatNode:function(inNode,inDatum,inRowIndex){this.content=inDatum;this.inherited(arguments);if(dojo.isMoz){var e=this.editor;e.open();if(this.cell.editorToolbar){dojo.place(e.toolbar.domNode,e.editingArea,"before")}}},populateEditor:function(){this.editor.setValue(this.content);this.editor.placeCursorAtEnd()}})}if(!dojo._hasResource["dojox.grid.compat.Grid"]){dojo._hasResource["dojox.grid.compat.Grid"]=true;dojo.provide("dojox.grid.compat.Grid");dojo.declare("dojox.Grid",dojox.VirtualGrid,{model:"dojox.grid.data.Table",postCreate:function(){if(this.model){var m=this.model;if(dojo.isString(m)){m=dojo.getObject(m)}this.model=(dojo.isFunction(m))?new m():m;this._setModel(this.model)}this.inherited(arguments)},destroy:function(){this.setModel(null);this.inherited(arguments)},_structureChanged:function(){this.indexCellFields();this.inherited(arguments)},_setModel:function(inModel){this.model=inModel;if(this.model){this.model.observer(this);this.model.measure();this.indexCellFields()}},setModel:function(inModel){if(this.model){this.model.notObserver(this)}this._setModel(inModel)},get:function(inRowIndex){return this.grid.model.getDatum(inRowIndex,this.fieldIndex)},modelAllChange:function(){this.rowCount=(this.model?this.model.getRowCount():0);this.updateRowCount(this.rowCount)},modelBeginUpdate:function(){this.beginUpdate()},modelEndUpdate:function(){this.endUpdate()},modelRowChange:function(inData,inRowIndex){this.updateRow(inRowIndex)},modelDatumChange:function(inDatum,inRowIndex,inFieldIndex){this.updateRow(inRowIndex)},modelFieldsChange:function(){this.indexCellFields();this.render()},modelInsertion:function(inRowIndex){this.updateRowCount(this.model.getRowCount())},modelRemoval:function(inKeys){this.updateRowCount(this.model.getRowCount())},getCellName:function(inCell){var v=this.model.fields.values,i=inCell.fieldIndex;return i>=0&&i<v.length&&v[i].name||this.inherited(arguments)},indexCellFields:function(){var cells=this.layout.cells;for(var i=0,c;cells&&(c=cells[i]);i++){if(dojo.isString(c.field)){c.fieldIndex=this.model.fields.indexOf(c.field)}}},refresh:function(){this.edit.cancel();this.model.measure()},canSort:function(inSortInfo){var f=this.getSortField(inSortInfo);return f&&this.model.canSort(f)},getSortField:function(inSortInfo){var c=this.getCell(this.getSortIndex(inSortInfo));return(c.fieldIndex+1)*(this.sortInfo>0?1:-1)},sort:function(){this.edit.apply();this.model.sort(this.getSortField())},addRow:function(inRowData,inIndex){this.edit.apply();var i=inIndex||-1;if(i<0){i=this.selection.getFirstSelected()||0}if(i<0){i=0}this.model.insert(inRowData,i);this.model.beginModifyRow(i);for(var j=0,c;((c=this.getCell(j))&&!c.editor);j++){}if(c&&c.editor){this.edit.setEditCell(c,i);this.focus.setFocusCell(c,i)}else{this.focus.setFocusCell(this.getCell(0),i)}},removeSelectedRows:function(){this.edit.apply();var s=this.selection.getSelected();if(s.length){this.model.remove(s);this.selection.clear()}},canEdit:function(inCell,inRowIndex){return(this.model.canModify?this.model.canModify(inRowIndex):true)},doStartEdit:function(inCell,inRowIndex){this.model.beginModifyRow(inRowIndex);this.onStartEdit(inCell,inRowIndex)},doApplyCellEdit:function(inValue,inRowIndex,inFieldIndex){this.model.setDatum(inValue,inRowIndex,inFieldIndex);this.onApplyCellEdit(inValue,inRowIndex,inFieldIndex)},doCancelEdit:function(inRowIndex){this.model.cancelModifyRow(inRowIndex);this.onCancelEdit.apply(this,arguments)},doApplyEdit:function(inRowIndex){this.model.endModifyRow(inRowIndex);this.onApplyEdit(inRowIndex)},styleRowState:function(inRow){if(this.model.getState){var states=this.model.getState(inRow.index),c="";for(var i=0,ss=["inflight","error","inserting"],s;s=ss[i];i++){if(states[s]){c=" dojoxGrid-row-"+s;break}}inRow.customClasses+=c}},onStyleRow:function(inRow){this.styleRowState(inRow);this.inherited(arguments)}});dojox.Grid.markupFactory=function(props,node,ctor){var d=dojo;var widthFromAttr=function(n){var w=d.attr(n,"width")||"auto";if((w!="auto")&&(w.substr(-2)!="em")){w=parseInt(w)+"px"}return w};if(!props.model&&d.hasAttr(node,"store")){var mNode=node.cloneNode(false);d.attr(mNode,{"jsId":null,"dojoType":d.attr(node,"dataModelClass")||"dojox.grid.data.DojoData"});props.model=d.parser.instantiate([mNode])[0]}if(!props.structure&&node.nodeName.toLowerCase()=="table"){props.structure=d.query("> colgroup",node).map(function(cg){var sv=d.attr(cg,"span");var v={noscroll:(d.attr(cg,"noscroll")=="true")?true:false,__span:(!!sv?parseInt(sv):1),cells:[]};if(d.hasAttr(cg,"width")){v.width=widthFromAttr(cg)}return v});if(!props.structure.length){props.structure.push({__span:Infinity,cells:[]})}d.query("thead > tr",node).forEach(function(tr,tr_idx){var cellCount=0;var viewIdx=0;var lastViewIdx;var cView=null;d.query("> th",tr).map(function(th){if(!cView){lastViewIdx=0;cView=props.structure[0]}else{if(cellCount>=(lastViewIdx+cView.__span)){viewIdx++;lastViewIdx+=cView.__span;var lastView=cView;cView=props.structure[viewIdx]}}var cell={name:d.trim(d.attr(th,"name")||th.innerHTML),field:d.trim(d.attr(th,"field")||""),colSpan:parseInt(d.attr(th,"colspan")||1)};cellCount+=cell.colSpan;cell.field=cell.field||cell.name;cell.width=widthFromAttr(th);if(!cView.cells[tr_idx]){cView.cells[tr_idx]=[]}cView.cells[tr_idx].push(cell)})})}return new dojox.Grid(props,node)};dojox.grid.Grid=dojox.Grid}if(!dojo._hasResource["dojox.grid.Grid"]){dojo._hasResource["dojox.grid.Grid"]=true;dojo.provide("dojox.grid.Grid");dojo.deprecated("dojox.grid.Grid")}if(!dojo._hasResource["dojox.gfx._base"]){dojo._hasResource["dojox.gfx._base"]=true;dojo.provide("dojox.gfx._base");(function(){var g=dojox.gfx,b=g._base;g._hasClass=function(node,classStr){var cls=node.getAttribute("className");return cls&&(" "+cls+" ").indexOf(" "+classStr+" ")>=0};g._addClass=function(node,classStr){var cls=node.getAttribute("className")||"";if(!cls||(" "+cls+" ").indexOf(" "+classStr+" ")<0){node.setAttribute("className",cls+(cls?" ":"")+classStr)}};g._removeClass=function(node,classStr){var cls=node.getAttribute("className");if(cls){node.setAttribute("className",cls.replace(new RegExp("(^|\\s+)"+classStr+"(\\s+|$)"),"$1$2"))}};b._getFontMeasurements=function(){var heights={"1em":0,"1ex":0,"100%":0,"12pt":0,"16px":0,"xx-small":0,"x-small":0,"small":0,"medium":0,"large":0,"x-large":0,"xx-large":0};if(dojo.isIE){dojo.doc.documentElement.style.fontSize="100%"}var div=dojo.doc.createElement("div");var s=div.style;s.position="absolute";s.left="-100px";s.top="0px";s.width="30px";s.height="1000em";s.border="0px";s.margin="0px";s.padding="0px";s.outline="none";s.lineHeight="1";s.overflow="hidden";dojo.body().appendChild(div);for(var p in heights){div.style.fontSize=p;heights[p]=Math.round(div.offsetHeight*12/16)*16/12/1000}dojo.body().removeChild(div);div=null;return heights};var fontMeasurements=null;b._getCachedFontMeasurements=function(recalculate){if(recalculate||!fontMeasurements){fontMeasurements=b._getFontMeasurements()}return fontMeasurements};var measuringNode=null,empty={};b._getTextBox=function(text,style,className){var m,s;if(!measuringNode){m=measuringNode=dojo.doc.createElement("div");s=m.style;s.position="absolute";s.left="-10000px";s.top="0";dojo.body().appendChild(m)}else{m=measuringNode;s=m.style}m.className="";s.border="0";s.margin="0";s.padding="0";s.outline="0";if(arguments.length>1&&style){for(var i in style){if(i in empty){continue}s[i]=style[i]}}if(arguments.length>2&&className){m.className=className}m.innerHTML=text;return dojo.marginBox(m)};var uniqueId=0;b._getUniqueId=function(){var id;do{id=dojo._scopeName+"Unique"+(++uniqueId)}while(dojo.byId(id));return id}})();dojo.mixin(dojox.gfx,{defaultPath:{type:"path",path:""},defaultPolyline:{type:"polyline",points:[]},defaultRect:{type:"rect",x:0,y:0,width:100,height:100,r:0},defaultEllipse:{type:"ellipse",cx:0,cy:0,rx:200,ry:100},defaultCircle:{type:"circle",cx:0,cy:0,r:100},defaultLine:{type:"line",x1:0,y1:0,x2:100,y2:100},defaultImage:{type:"image",x:0,y:0,width:0,height:0,src:""},defaultText:{type:"text",x:0,y:0,text:"",align:"start",decoration:"none",rotated:false,kerning:true},defaultTextPath:{type:"textpath",text:"",align:"start",decoration:"none",rotated:false,kerning:true},defaultStroke:{type:"stroke",color:"black",style:"solid",width:1,cap:"butt",join:4},defaultLinearGradient:{type:"linear",x1:0,y1:0,x2:100,y2:100,colors:[{offset:0,color:"black"},{offset:1,color:"white"}]},defaultRadialGradient:{type:"radial",cx:0,cy:0,r:100,colors:[{offset:0,color:"black"},{offset:1,color:"white"}]},defaultPattern:{type:"pattern",x:0,y:0,width:0,height:0,src:""},defaultFont:{type:"font",style:"normal",variant:"normal",weight:"normal",size:"10pt",family:"serif"},getDefault:(function(){var typeCtorCache={};return function(type){var t=typeCtorCache[type];if(t){return new t()}t=typeCtorCache[type]=function(){};t.prototype=dojox.gfx["default"+type];return new t()}})(),normalizeColor:function(color){return(color instanceof dojo.Color)?color:new dojo.Color(color)},normalizeParameters:function(existed,update){if(update){var empty={};for(var x in existed){if(x in update&&!(x in empty)){existed[x]=update[x]}}}return existed},makeParameters:function(defaults,update){if(!update){return dojo.delegate(defaults)}var result={};for(var i in defaults){if(!(i in result)){result[i]=dojo.clone((i in update)?update[i]:defaults[i])}}return result},formatNumber:function(x,addSpace){var val=x.toString();if(val.indexOf("e")>=0){val=x.toFixed(4)}else{var point=val.indexOf(".");if(point>=0&&val.length-point>5){val=x.toFixed(4)}}if(x<0){return val}return addSpace?" "+val:val},makeFontString:function(font){return font.style+" "+font.variant+" "+font.weight+" "+font.size+" "+font.family},splitFontString:function(str){var font=dojox.gfx.getDefault("Font");var t=str.split(/\s+/);do{if(t.length<5){break}font.style=t[0];font.varian=t[1];font.weight=t[2];var i=t[3].indexOf("/");font.size=i<0?t[3]:t[3].substring(0,i);var j=4;if(i<0){if(t[4]=="/"){j=6;break}if(t[4].substr(0,1)=="/"){j=5;break}}if(j+3>t.length){break}font.size=t[j];font.family=t[j+1]}while(false);return font},cm_in_pt:72/2.54,mm_in_pt:7.2/2.54,px_in_pt:function(){return dojox.gfx._base._getCachedFontMeasurements()["12pt"]/12},pt2px:function(len){return len*dojox.gfx.px_in_pt()},px2pt:function(len){return len/dojox.gfx.px_in_pt()},normalizedLength:function(len){if(len.length==0){return 0}if(len.length>2){var px_in_pt=dojox.gfx.px_in_pt();var val=parseFloat(len);switch(len.slice(-2)){case"px":return val;case"pt":return val*px_in_pt;case"in":return val*72*px_in_pt;case"pc":return val*12*px_in_pt;case"mm":return val*dojox.gfx.mm_in_pt*px_in_pt;case"cm":return val*dojox.gfx.cm_in_pt*px_in_pt}}return parseFloat(len)},pathVmlRegExp:/([A-Za-z]+)|(\d+(\.\d+)?)|(\.\d+)|(-\d+(\.\d+)?)|(-\.\d+)/g,pathSvgRegExp:/([A-Za-z])|(\d+(\.\d+)?)|(\.\d+)|(-\d+(\.\d+)?)|(-\.\d+)/g,equalSources:function(a,b){return a&&b&&a==b}})}if(!dojo._hasResource["dojox.gfx.shape"]){dojo._hasResource["dojox.gfx.shape"]=true;dojo.provide("dojox.gfx.shape");dojo.declare("dojox.gfx.Shape",null,{constructor:function(){this.rawNode=null;this.shape=null;this.matrix=null;this.fillStyle=null;this.strokeStyle=null;this.bbox=null;this.parent=null;this.parentMatrix=null},getNode:function(){return this.rawNode},getShape:function(){return this.shape},getTransform:function(){return this.matrix},getFill:function(){return this.fillStyle},getStroke:function(){return this.strokeStyle},getParent:function(){return this.parent},getBoundingBox:function(){return this.bbox},getTransformedBoundingBox:function(){var b=this.getBoundingBox();if(!b){return null}var m=this._getRealMatrix();var r=[];var g=dojox.gfx.matrix;r.push(g.multiplyPoint(m,b.x,b.y));r.push(g.multiplyPoint(m,b.x+b.width,b.y));r.push(g.multiplyPoint(m,b.x+b.width,b.y+b.height));r.push(g.multiplyPoint(m,b.x,b.y+b.height));return r},getEventSource:function(){return this.rawNode},setShape:function(shape){this.shape=dojox.gfx.makeParameters(this.shape,shape);this.bbox=null;return this},setFill:function(fill){if(!fill){this.fillStyle=null;return this}var f=null;if(typeof (fill)=="object"&&"type" in fill){switch(fill.type){case"linear":f=dojox.gfx.makeParameters(dojox.gfx.defaultLinearGradient,fill);break;case"radial":f=dojox.gfx.makeParameters(dojox.gfx.defaultRadialGradient,fill);break;case"pattern":f=dojox.gfx.makeParameters(dojox.gfx.defaultPattern,fill);break}}else{f=dojox.gfx.normalizeColor(fill)}this.fillStyle=f;return this},setStroke:function(stroke){if(!stroke){this.strokeStyle=null;return this}if(typeof stroke=="string"||dojo.isArray(stroke)||stroke instanceof dojo.Color){stroke={color:stroke}}var s=this.strokeStyle=dojox.gfx.makeParameters(dojox.gfx.defaultStroke,stroke);s.color=dojox.gfx.normalizeColor(s.color);return this},setTransform:function(matrix){this.matrix=dojox.gfx.matrix.clone(matrix?dojox.gfx.matrix.normalize(matrix):dojox.gfx.matrix.identity);return this._applyTransform()},_applyTransform:function(){return this},moveToFront:function(){var p=this.getParent();if(p){p._moveChildToFront(this);this._moveToFront()}return this},moveToBack:function(){var p=this.getParent();if(p){p._moveChildToBack(this);this._moveToBack()}return this},_moveToFront:function(){},_moveToBack:function(){},applyRightTransform:function(matrix){return matrix?this.setTransform([this.matrix,matrix]):this},applyLeftTransform:function(matrix){return matrix?this.setTransform([matrix,this.matrix]):this},applyTransform:function(matrix){return matrix?this.setTransform([this.matrix,matrix]):this},removeShape:function(silently){if(this.parent){this.parent.remove(this,silently)}return this},_setParent:function(parent,matrix){this.parent=parent;return this._updateParentMatrix(matrix)},_updateParentMatrix:function(matrix){this.parentMatrix=matrix?dojox.gfx.matrix.clone(matrix):null;return this._applyTransform()},_getRealMatrix:function(){var m=this.matrix;var p=this.parent;while(p){if(p.matrix){m=dojox.gfx.matrix.multiply(p.matrix,m)}p=p.parent}return m}});dojox.gfx.shape._eventsProcessing={connect:function(name,object,method){return arguments.length>2?dojo.connect(this.getEventSource(),name,object,method):dojo.connect(this.getEventSource(),name,object)},disconnect:function(token){dojo.disconnect(token)}};dojo.extend(dojox.gfx.Shape,dojox.gfx.shape._eventsProcessing);dojox.gfx.shape.Container={_init:function(){this.children=[]},add:function(shape){var oldParent=shape.getParent();if(oldParent){oldParent.remove(shape,true)}this.children.push(shape);return shape._setParent(this,this._getRealMatrix())},remove:function(shape,silently){for(var i=0;i<this.children.length;++i){if(this.children[i]==shape){if(silently){}else{shape.parent=null;shape.parentMatrix=null}this.children.splice(i,1);break}}return this},clear:function(){this.children=[];return this},_moveChildToFront:function(shape){for(var i=0;i<this.children.length;++i){if(this.children[i]==shape){this.children.splice(i,1);this.children.push(shape);break}}return this},_moveChildToBack:function(shape){for(var i=0;i<this.children.length;++i){if(this.children[i]==shape){this.children.splice(i,1);this.children.unshift(shape);break}}return this}};dojo.declare("dojox.gfx.shape.Surface",null,{constructor:function(){this.rawNode=null;this._parent=null;this._nodes=[];this._events=[]},destroy:function(){dojo.forEach(this._nodes,dojo.destroy);this._nodes=[];dojo.forEach(this._events,dojo.disconnect);this._events=[];this.rawNode=null;if(dojo.isIE){while(this._parent.lastChild){dojo.destroy(this._parent.lastChild)}}else{this._parent.innerHTML=""}this._parent=null},getEventSource:function(){return this.rawNode},_getRealMatrix:function(){return null},isLoaded:true,onLoad:function(surface){},whenLoaded:function(context,method){var f=dojo.hitch(context,method);if(this.isLoaded){f(this)}else{var h=dojo.connect(this,"onLoad",function(surface){dojo.disconnect(h);f(surface)})}}});dojo.extend(dojox.gfx.shape.Surface,dojox.gfx.shape._eventsProcessing);dojo.declare("dojox.gfx.Point",null,{});dojo.declare("dojox.gfx.Rectangle",null,{});dojo.declare("dojox.gfx.shape.Rect",dojox.gfx.Shape,{constructor:function(rawNode){this.shape=dojox.gfx.getDefault("Rect");this.rawNode=rawNode},getBoundingBox:function(){return this.shape}});dojo.declare("dojox.gfx.shape.Ellipse",dojox.gfx.Shape,{constructor:function(rawNode){this.shape=dojox.gfx.getDefault("Ellipse");this.rawNode=rawNode},getBoundingBox:function(){if(!this.bbox){var shape=this.shape;this.bbox={x:shape.cx-shape.rx,y:shape.cy-shape.ry,width:2*shape.rx,height:2*shape.ry}}return this.bbox}});dojo.declare("dojox.gfx.shape.Circle",dojox.gfx.Shape,{constructor:function(rawNode){this.shape=dojox.gfx.getDefault("Circle");this.rawNode=rawNode},getBoundingBox:function(){if(!this.bbox){var shape=this.shape;this.bbox={x:shape.cx-shape.r,y:shape.cy-shape.r,width:2*shape.r,height:2*shape.r}}return this.bbox}});dojo.declare("dojox.gfx.shape.Line",dojox.gfx.Shape,{constructor:function(rawNode){this.shape=dojox.gfx.getDefault("Line");this.rawNode=rawNode},getBoundingBox:function(){if(!this.bbox){var shape=this.shape;this.bbox={x:Math.min(shape.x1,shape.x2),y:Math.min(shape.y1,shape.y2),width:Math.abs(shape.x2-shape.x1),height:Math.abs(shape.y2-shape.y1)}}return this.bbox}});dojo.declare("dojox.gfx.shape.Polyline",dojox.gfx.Shape,{constructor:function(rawNode){this.shape=dojox.gfx.getDefault("Polyline");this.rawNode=rawNode},setShape:function(points,closed){if(points&&points instanceof Array){dojox.gfx.Shape.prototype.setShape.call(this,{points:points});if(closed&&this.shape.points.length){this.shape.points.push(this.shape.points[0])}}else{dojox.gfx.Shape.prototype.setShape.call(this,points)}return this},getBoundingBox:function(){if(!this.bbox&&this.shape.points.length){var p=this.shape.points;var l=p.length;var t=p[0];var bbox={l:t.x,t:t.y,r:t.x,b:t.y};for(var i=1;i<l;++i){t=p[i];if(bbox.l>t.x){bbox.l=t.x}if(bbox.r<t.x){bbox.r=t.x}if(bbox.t>t.y){bbox.t=t.y}if(bbox.b<t.y){bbox.b=t.y}}this.bbox={x:bbox.l,y:bbox.t,width:bbox.r-bbox.l,height:bbox.b-bbox.t}}return this.bbox}});dojo.declare("dojox.gfx.shape.Image",dojox.gfx.Shape,{constructor:function(rawNode){this.shape=dojox.gfx.getDefault("Image");this.rawNode=rawNode},getBoundingBox:function(){return this.shape},setStroke:function(){return this},setFill:function(){return this}});dojo.declare("dojox.gfx.shape.Text",dojox.gfx.Shape,{constructor:function(rawNode){this.fontStyle=null;this.shape=dojox.gfx.getDefault("Text");this.rawNode=rawNode},getFont:function(){return this.fontStyle},setFont:function(newFont){this.fontStyle=typeof newFont=="string"?dojox.gfx.splitFontString(newFont):dojox.gfx.makeParameters(dojox.gfx.defaultFont,newFont);this._setFont();return this}});dojox.gfx.shape.Creator={createShape:function(shape){var gfx=dojox.gfx;switch(shape.type){case gfx.defaultPath.type:return this.createPath(shape);case gfx.defaultRect.type:return this.createRect(shape);case gfx.defaultCircle.type:return this.createCircle(shape);case gfx.defaultEllipse.type:return this.createEllipse(shape);case gfx.defaultLine.type:return this.createLine(shape);case gfx.defaultPolyline.type:return this.createPolyline(shape);case gfx.defaultImage.type:return this.createImage(shape);case gfx.defaultText.type:return this.createText(shape);case gfx.defaultTextPath.type:return this.createTextPath(shape)}return null},createGroup:function(){return this.createObject(dojox.gfx.Group)},createRect:function(rect){return this.createObject(dojox.gfx.Rect,rect)},createEllipse:function(ellipse){return this.createObject(dojox.gfx.Ellipse,ellipse)},createCircle:function(circle){return this.createObject(dojox.gfx.Circle,circle)},createLine:function(line){return this.createObject(dojox.gfx.Line,line)},createPolyline:function(points){return this.createObject(dojox.gfx.Polyline,points)},createImage:function(image){return this.createObject(dojox.gfx.Image,image)},createText:function(text){return this.createObject(dojox.gfx.Text,text)},createPath:function(path){return this.createObject(dojox.gfx.Path,path)},createTextPath:function(text){return this.createObject(dojox.gfx.TextPath,{}).setText(text)},createObject:function(shapeType,rawShape){return null}}}if(!dojo._hasResource["dojox.gfx.path"]){dojo._hasResource["dojox.gfx.path"]=true;dojo.provide("dojox.gfx.path");dojo.declare("dojox.gfx.path.Path",dojox.gfx.Shape,{constructor:function(rawNode){this.shape=dojo.clone(dojox.gfx.defaultPath);this.segments=[];this.absolute=true;this.last={};this.rawNode=rawNode},setAbsoluteMode:function(mode){this.absolute=typeof mode=="string"?(mode=="absolute"):mode;return this},getAbsoluteMode:function(){return this.absolute},getBoundingBox:function(){return(this.bbox&&("l" in this.bbox))?{x:this.bbox.l,y:this.bbox.t,width:this.bbox.r-this.bbox.l,height:this.bbox.b-this.bbox.t}:null},getLastPosition:function(){return"x" in this.last?this.last:null},_updateBBox:function(x,y){if(this.bbox&&("l" in this.bbox)){if(this.bbox.l>x){this.bbox.l=x}if(this.bbox.r<x){this.bbox.r=x}if(this.bbox.t>y){this.bbox.t=y}if(this.bbox.b<y){this.bbox.b=y}}else{this.bbox={l:x,b:y,r:x,t:y}}},_updateWithSegment:function(segment){var n=segment.args,l=n.length;switch(segment.action){case"M":case"L":case"C":case"S":case"Q":case"T":for(var i=0;i<l;i+=2){this._updateBBox(n[i],n[i+1])}this.last.x=n[l-2];this.last.y=n[l-1];this.absolute=true;break;case"H":for(var i=0;i<l;++i){this._updateBBox(n[i],this.last.y)}this.last.x=n[l-1];this.absolute=true;break;case"V":for(var i=0;i<l;++i){this._updateBBox(this.last.x,n[i])}this.last.y=n[l-1];this.absolute=true;break;case"m":var start=0;if(!("x" in this.last)){this._updateBBox(this.last.x=n[0],this.last.y=n[1]);start=2}for(var i=start;i<l;i+=2){this._updateBBox(this.last.x+=n[i],this.last.y+=n[i+1])}this.absolute=false;break;case"l":case"t":for(var i=0;i<l;i+=2){this._updateBBox(this.last.x+=n[i],this.last.y+=n[i+1])}this.absolute=false;break;case"h":for(var i=0;i<l;++i){this._updateBBox(this.last.x+=n[i],this.last.y)}this.absolute=false;break;case"v":for(var i=0;i<l;++i){this._updateBBox(this.last.x,this.last.y+=n[i])}this.absolute=false;break;case"c":for(var i=0;i<l;i+=6){this._updateBBox(this.last.x+n[i],this.last.y+n[i+1]);this._updateBBox(this.last.x+n[i+2],this.last.y+n[i+3]);this._updateBBox(this.last.x+=n[i+4],this.last.y+=n[i+5])}this.absolute=false;break;case"s":case"q":for(var i=0;i<l;i+=4){this._updateBBox(this.last.x+n[i],this.last.y+n[i+1]);this._updateBBox(this.last.x+=n[i+2],this.last.y+=n[i+3])}this.absolute=false;break;case"A":for(var i=0;i<l;i+=7){this._updateBBox(n[i+5],n[i+6])}this.last.x=n[l-2];this.last.y=n[l-1];this.absolute=true;break;case"a":for(var i=0;i<l;i+=7){this._updateBBox(this.last.x+=n[i+5],this.last.y+=n[i+6])}this.absolute=false;break}var path=[segment.action];for(var i=0;i<l;++i){path.push(dojox.gfx.formatNumber(n[i],true))}if(typeof this.shape.path=="string"){this.shape.path+=path.join("")}else{Array.prototype.push.apply(this.shape.path,path)}},_validSegments:{m:2,l:2,h:1,v:1,c:6,s:4,q:4,t:2,a:7,z:0},_pushSegment:function(action,args){var group=this._validSegments[action.toLowerCase()];if(typeof group=="number"){if(group){if(args.length>=group){var segment={action:action,args:args.slice(0,args.length-args.length%group)};this.segments.push(segment);this._updateWithSegment(segment)}}else{var segment={action:action,args:[]};this.segments.push(segment);this._updateWithSegment(segment)}}},_collectArgs:function(array,args){for(var i=0;i<args.length;++i){var t=args[i];if(typeof t=="boolean"){array.push(t?1:0)}else{if(typeof t=="number"){array.push(t)}else{if(t instanceof Array){this._collectArgs(array,t)}else{if("x" in t&&"y" in t){array.push(t.x,t.y)}}}}}},moveTo:function(){var args=[];this._collectArgs(args,arguments);this._pushSegment(this.absolute?"M":"m",args);return this},lineTo:function(){var args=[];this._collectArgs(args,arguments);this._pushSegment(this.absolute?"L":"l",args);return this},hLineTo:function(){var args=[];this._collectArgs(args,arguments);this._pushSegment(this.absolute?"H":"h",args);return this},vLineTo:function(){var args=[];this._collectArgs(args,arguments);this._pushSegment(this.absolute?"V":"v",args);return this},curveTo:function(){var args=[];this._collectArgs(args,arguments);this._pushSegment(this.absolute?"C":"c",args);return this},smoothCurveTo:function(){var args=[];this._collectArgs(args,arguments);this._pushSegment(this.absolute?"S":"s",args);return this},qCurveTo:function(){var args=[];this._collectArgs(args,arguments);this._pushSegment(this.absolute?"Q":"q",args);return this},qSmoothCurveTo:function(){var args=[];this._collectArgs(args,arguments);this._pushSegment(this.absolute?"T":"t",args);return this},arcTo:function(){var args=[];this._collectArgs(args,arguments);this._pushSegment(this.absolute?"A":"a",args);return this},closePath:function(){this._pushSegment("Z",[]);return this},_setPath:function(path){var p=dojo.isArray(path)?path:path.match(dojox.gfx.pathSvgRegExp);this.segments=[];this.absolute=true;this.bbox={};this.last={};if(!p){return }var action="",args=[],l=p.length;for(var i=0;i<l;++i){var t=p[i],x=parseFloat(t);if(isNaN(x)){if(action){this._pushSegment(action,args)}args=[];action=t}else{args.push(x)}}this._pushSegment(action,args)},setShape:function(newShape){dojox.gfx.Shape.prototype.setShape.call(this,typeof newShape=="string"?{path:newShape}:newShape);var path=this.shape.path;this.shape.path=[];this._setPath(path);this.shape.path=this.shape.path.join("");return this},_2PI:Math.PI*2});dojo.declare("dojox.gfx.path.TextPath",dojox.gfx.path.Path,{constructor:function(rawNode){if(!("text" in this)){this.text=dojo.clone(dojox.gfx.defaultTextPath)}if(!("fontStyle" in this)){this.fontStyle=dojo.clone(dojox.gfx.defaultFont)}},getText:function(){return this.text},setText:function(newText){this.text=dojox.gfx.makeParameters(this.text,typeof newText=="string"?{text:newText}:newText);this._setText();return this},getFont:function(){return this.fontStyle},setFont:function(newFont){this.fontStyle=typeof newFont=="string"?dojox.gfx.splitFontString(newFont):dojox.gfx.makeParameters(dojox.gfx.defaultFont,newFont);this._setFont();return this}})}if(!dojo._hasResource["dojox.gfx.matrix"]){dojo._hasResource["dojox.gfx.matrix"]=true;dojo.provide("dojox.gfx.matrix");(function(){var m=dojox.gfx.matrix;var _degToRadCache={};m._degToRad=function(degree){return _degToRadCache[degree]||(_degToRadCache[degree]=(Math.PI*degree/180))};m._radToDeg=function(radian){return radian/Math.PI*180};m.Matrix2D=function(arg){if(arg){if(typeof arg=="number"){this.xx=this.yy=arg}else{if(arg instanceof Array){if(arg.length>0){var matrix=m.normalize(arg[0]);for(var i=1;i<arg.length;++i){var l=matrix,r=dojox.gfx.matrix.normalize(arg[i]);matrix=new m.Matrix2D();matrix.xx=l.xx*r.xx+l.xy*r.yx;matrix.xy=l.xx*r.xy+l.xy*r.yy;matrix.yx=l.yx*r.xx+l.yy*r.yx;matrix.yy=l.yx*r.xy+l.yy*r.yy;matrix.dx=l.xx*r.dx+l.xy*r.dy+l.dx;matrix.dy=l.yx*r.dx+l.yy*r.dy+l.dy}dojo.mixin(this,matrix)}}else{dojo.mixin(this,arg)}}}};dojo.extend(m.Matrix2D,{xx:1,xy:0,yx:0,yy:1,dx:0,dy:0});dojo.mixin(m,{identity:new m.Matrix2D(),flipX:new m.Matrix2D({xx:-1}),flipY:new m.Matrix2D({yy:-1}),flipXY:new m.Matrix2D({xx:-1,yy:-1}),translate:function(a,b){if(arguments.length>1){return new m.Matrix2D({dx:a,dy:b})}return new m.Matrix2D({dx:a.x,dy:a.y})},scale:function(a,b){if(arguments.length>1){return new m.Matrix2D({xx:a,yy:b})}if(typeof a=="number"){return new m.Matrix2D({xx:a,yy:a})}return new m.Matrix2D({xx:a.x,yy:a.y})},rotate:function(angle){var c=Math.cos(angle);var s=Math.sin(angle);return new m.Matrix2D({xx:c,xy:-s,yx:s,yy:c})},rotateg:function(degree){return m.rotate(m._degToRad(degree))},skewX:function(angle){return new m.Matrix2D({xy:Math.tan(angle)})},skewXg:function(degree){return m.skewX(m._degToRad(degree))},skewY:function(angle){return new m.Matrix2D({yx:Math.tan(angle)})},skewYg:function(degree){return m.skewY(m._degToRad(degree))},reflect:function(a,b){if(arguments.length==1){b=a.y;a=a.x}var a2=a*a,b2=b*b,n2=a2+b2,xy=2*a*b/n2;return new m.Matrix2D({xx:2*a2/n2-1,xy:xy,yx:xy,yy:2*b2/n2-1})},project:function(a,b){if(arguments.length==1){b=a.y;a=a.x}var a2=a*a,b2=b*b,n2=a2+b2,xy=a*b/n2;return new m.Matrix2D({xx:a2/n2,xy:xy,yx:xy,yy:b2/n2})},normalize:function(matrix){return(matrix instanceof m.Matrix2D)?matrix:new m.Matrix2D(matrix)},clone:function(matrix){var obj=new m.Matrix2D();for(var i in matrix){if(typeof (matrix[i])=="number"&&typeof (obj[i])=="number"&&obj[i]!=matrix[i]){obj[i]=matrix[i]}}return obj},invert:function(matrix){var M=m.normalize(matrix),D=M.xx*M.yy-M.xy*M.yx,M=new m.Matrix2D({xx:M.yy/D,xy:-M.xy/D,yx:-M.yx/D,yy:M.xx/D,dx:(M.xy*M.dy-M.yy*M.dx)/D,dy:(M.yx*M.dx-M.xx*M.dy)/D});return M},_multiplyPoint:function(matrix,x,y){return{x:matrix.xx*x+matrix.xy*y+matrix.dx,y:matrix.yx*x+matrix.yy*y+matrix.dy}},multiplyPoint:function(matrix,a,b){var M=m.normalize(matrix);if(typeof a=="number"&&typeof b=="number"){return m._multiplyPoint(M,a,b)}return m._multiplyPoint(M,a.x,a.y)},multiply:function(matrix){var M=m.normalize(matrix);for(var i=1;i<arguments.length;++i){var l=M,r=m.normalize(arguments[i]);M=new m.Matrix2D();M.xx=l.xx*r.xx+l.xy*r.yx;M.xy=l.xx*r.xy+l.xy*r.yy;M.yx=l.yx*r.xx+l.yy*r.yx;M.yy=l.yx*r.xy+l.yy*r.yy;M.dx=l.xx*r.dx+l.xy*r.dy+l.dx;M.dy=l.yx*r.dx+l.yy*r.dy+l.dy}return M},_sandwich:function(matrix,x,y){return m.multiply(m.translate(x,y),matrix,m.translate(-x,-y))},scaleAt:function(a,b,c,d){switch(arguments.length){case 4:return m._sandwich(m.scale(a,b),c,d);case 3:if(typeof c=="number"){return m._sandwich(m.scale(a),b,c)}return m._sandwich(m.scale(a,b),c.x,c.y)}return m._sandwich(m.scale(a),b.x,b.y)},rotateAt:function(angle,a,b){if(arguments.length>2){return m._sandwich(m.rotate(angle),a,b)}return m._sandwich(m.rotate(angle),a.x,a.y)},rotategAt:function(degree,a,b){if(arguments.length>2){return m._sandwich(m.rotateg(degree),a,b)}return m._sandwich(m.rotateg(degree),a.x,a.y)},skewXAt:function(angle,a,b){if(arguments.length>2){return m._sandwich(m.skewX(angle),a,b)}return m._sandwich(m.skewX(angle),a.x,a.y)},skewXgAt:function(degree,a,b){if(arguments.length>2){return m._sandwich(m.skewXg(degree),a,b)}return m._sandwich(m.skewXg(degree),a.x,a.y)},skewYAt:function(angle,a,b){if(arguments.length>2){return m._sandwich(m.skewY(angle),a,b)}return m._sandwich(m.skewY(angle),a.x,a.y)},skewYgAt:function(degree,a,b){if(arguments.length>2){return m._sandwich(m.skewYg(degree),a,b)}return m._sandwich(m.skewYg(degree),a.x,a.y)}})})();dojox.gfx.Matrix2D=dojox.gfx.matrix.Matrix2D}if(!dojo._hasResource["dojox.gfx"]){dojo._hasResource["dojox.gfx"]=true;dojo.provide("dojox.gfx");dojo.loadInit(function(){var gfx=dojo.getObject("dojox.gfx",true),sl,flag,match;if(!gfx.renderer){var renderers=(typeof dojo.config.gfxRenderer=="string"?dojo.config.gfxRenderer:"svg,vml,silverlight,canvas").split(",");var ua=navigator.userAgent,iPhoneOsBuild=0,androidVersion=0;if(dojo.isSafari>=3){if(ua.indexOf("iPhone")>=0||ua.indexOf("iPod")>=0){match=ua.match(/Version\/(\d(\.\d)?(\.\d)?)\sMobile\/([^\s]*)\s?/);if(match){iPhoneOsBuild=parseInt(match[4].substr(0,3),16)}}}if(dojo.isWebKit){if(!iPhoneOsBuild){match=ua.match(/Android\s+(\d+\.\d+)/);if(match){androidVersion=parseFloat(match[1])}}}for(var i=0;i<renderers.length;++i){switch(renderers[i]){case"svg":if(!dojo.isIE&&(!iPhoneOsBuild||iPhoneOsBuild>=1521)&&!androidVersion&&!dojo.isAIR){dojox.gfx.renderer="svg"}break;case"vml":if(dojo.isIE){dojox.gfx.renderer="vml"}break;case"silverlight":try{if(dojo.isIE){sl=new ActiveXObject("AgControl.AgControl");if(sl&&sl.IsVersionSupported("1.0")){flag=true}}else{if(navigator.plugins["Silverlight Plug-In"]){flag=true}}}catch(e){flag=false}finally{sl=null}if(flag){dojox.gfx.renderer="silverlight"}break;case"canvas":if(!dojo.isIE){dojox.gfx.renderer="canvas"}break}if(dojox.gfx.renderer){break}}if(dojo.config.isDebug){console.log("gfx renderer = "+dojox.gfx.renderer)}}});dojo.requireIf(dojox.gfx.renderer=="svg","dojox.gfx.svg");dojo.requireIf(dojox.gfx.renderer=="vml","dojox.gfx.vml");dojo.requireIf(dojox.gfx.renderer=="silverlight","dojox.gfx.silverlight");dojo.requireIf(dojox.gfx.renderer=="canvas","dojox.gfx.canvas")}if(!dojo._hasResource["dojo.data.ItemFileWriteStore"]){dojo._hasResource["dojo.data.ItemFileWriteStore"]=true;dojo.provide("dojo.data.ItemFileWriteStore");dojo.declare("dojo.data.ItemFileWriteStore",dojo.data.ItemFileReadStore,{constructor:function(keywordParameters){this._features["dojo.data.api.Write"]=true;this._features["dojo.data.api.Notification"]=true;this._pending={_newItems:{},_modifiedItems:{},_deletedItems:{}};if(!this._datatypeMap["Date"].serialize){this._datatypeMap["Date"].serialize=function(obj){return dojo.date.stamp.toISOString(obj,{zulu:true})}}if(keywordParameters&&(keywordParameters.referenceIntegrity===false)){this.referenceIntegrity=false}this._saveInProgress=false},referenceIntegrity:true,_assert:function(condition){if(!condition){throw new Error("assertion failed in ItemFileWriteStore")}},_getIdentifierAttribute:function(){var identifierAttribute=this.getFeatures()["dojo.data.api.Identity"];return identifierAttribute},newItem:function(keywordArgs,parentInfo){this._assert(!this._saveInProgress);if(!this._loadFinished){this._forceLoad()}if(typeof keywordArgs!="object"&&typeof keywordArgs!="undefined"){throw new Error("newItem() was passed something other than an object")}var newIdentity=null;var identifierAttribute=this._getIdentifierAttribute();if(identifierAttribute===Number){newIdentity=this._arrayOfAllItems.length}else{newIdentity=keywordArgs[identifierAttribute];if(typeof newIdentity==="undefined"){throw new Error("newItem() was not passed an identity for the new item")}if(dojo.isArray(newIdentity)){throw new Error("newItem() was not passed an single-valued identity")}}if(this._itemsByIdentity){this._assert(typeof this._itemsByIdentity[newIdentity]==="undefined")}this._assert(typeof this._pending._newItems[newIdentity]==="undefined");this._assert(typeof this._pending._deletedItems[newIdentity]==="undefined");var newItem={};newItem[this._storeRefPropName]=this;newItem[this._itemNumPropName]=this._arrayOfAllItems.length;if(this._itemsByIdentity){this._itemsByIdentity[newIdentity]=newItem;newItem[identifierAttribute]=[newIdentity]}this._arrayOfAllItems.push(newItem);var pInfo=null;if(parentInfo&&parentInfo.parent&&parentInfo.attribute){pInfo={item:parentInfo.parent,attribute:parentInfo.attribute,oldValue:undefined};var values=this.getValues(parentInfo.parent,parentInfo.attribute);if(values&&values.length>0){var tempValues=values.slice(0,values.length);if(values.length===1){pInfo.oldValue=values[0]}else{pInfo.oldValue=values.slice(0,values.length)}tempValues.push(newItem);this._setValueOrValues(parentInfo.parent,parentInfo.attribute,tempValues,false);pInfo.newValue=this.getValues(parentInfo.parent,parentInfo.attribute)}else{this._setValueOrValues(parentInfo.parent,parentInfo.attribute,newItem,false);pInfo.newValue=newItem}}else{newItem[this._rootItemPropName]=true;this._arrayOfTopLevelItems.push(newItem)}this._pending._newItems[newIdentity]=newItem;for(var key in keywordArgs){if(key===this._storeRefPropName||key===this._itemNumPropName){throw new Error("encountered bug in ItemFileWriteStore.newItem")}var value=keywordArgs[key];if(!dojo.isArray(value)){value=[value]}newItem[key]=value;if(this.referenceIntegrity){for(var i=0;i<value.length;i++){var val=value[i];if(this.isItem(val)){this._addReferenceToMap(val,newItem,key)}}}}this.onNew(newItem,pInfo);return newItem},_removeArrayElement:function(array,element){var index=dojo.indexOf(array,element);if(index!=-1){array.splice(index,1);return true}return false},deleteItem:function(item){this._assert(!this._saveInProgress);this._assertIsItem(item);var indexInArrayOfAllItems=item[this._itemNumPropName];var identity=this.getIdentity(item);if(this.referenceIntegrity){var attributes=this.getAttributes(item);if(item[this._reverseRefMap]){item["backup_"+this._reverseRefMap]=dojo.clone(item[this._reverseRefMap])}dojo.forEach(attributes,function(attribute){dojo.forEach(this.getValues(item,attribute),function(value){if(this.isItem(value)){if(!item["backupRefs_"+this._reverseRefMap]){item["backupRefs_"+this._reverseRefMap]=[]}item["backupRefs_"+this._reverseRefMap].push({id:this.getIdentity(value),attr:attribute});this._removeReferenceFromMap(value,item,attribute)}},this)},this);var references=item[this._reverseRefMap];if(references){for(var itemId in references){var containingItem=null;if(this._itemsByIdentity){containingItem=this._itemsByIdentity[itemId]}else{containingItem=this._arrayOfAllItems[itemId]}if(containingItem){for(var attribute in references[itemId]){var oldValues=this.getValues(containingItem,attribute)||[];var newValues=dojo.filter(oldValues,function(possibleItem){return !(this.isItem(possibleItem)&&this.getIdentity(possibleItem)==identity)},this);this._removeReferenceFromMap(item,containingItem,attribute);if(newValues.length<oldValues.length){this._setValueOrValues(containingItem,attribute,newValues,true)}}}}}}this._arrayOfAllItems[indexInArrayOfAllItems]=null;item[this._storeRefPropName]=null;if(this._itemsByIdentity){delete this._itemsByIdentity[identity]}this._pending._deletedItems[identity]=item;if(item[this._rootItemPropName]){this._removeArrayElement(this._arrayOfTopLevelItems,item)}this.onDelete(item);return true},setValue:function(item,attribute,value){return this._setValueOrValues(item,attribute,value,true)},setValues:function(item,attribute,values){return this._setValueOrValues(item,attribute,values,true)},unsetAttribute:function(item,attribute){return this._setValueOrValues(item,attribute,[],true)},_setValueOrValues:function(item,attribute,newValueOrValues,callOnSet){this._assert(!this._saveInProgress);this._assertIsItem(item);this._assert(dojo.isString(attribute));this._assert(typeof newValueOrValues!=="undefined");var identifierAttribute=this._getIdentifierAttribute();if(attribute==identifierAttribute){throw new Error("ItemFileWriteStore does not have support for changing the value of an item's identifier.")}var oldValueOrValues=this._getValueOrValues(item,attribute);var identity=this.getIdentity(item);if(!this._pending._modifiedItems[identity]){var copyOfItemState={};for(var key in item){if((key===this._storeRefPropName)||(key===this._itemNumPropName)||(key===this._rootItemPropName)){copyOfItemState[key]=item[key]}else{if(key===this._reverseRefMap){copyOfItemState[key]=dojo.clone(item[key])}else{copyOfItemState[key]=item[key].slice(0,item[key].length)}}}this._pending._modifiedItems[identity]=copyOfItemState}var success=false;if(dojo.isArray(newValueOrValues)&&newValueOrValues.length===0){success=delete item[attribute];newValueOrValues=undefined;if(this.referenceIntegrity&&oldValueOrValues){var oldValues=oldValueOrValues;if(!dojo.isArray(oldValues)){oldValues=[oldValues]}for(var i=0;i<oldValues.length;i++){var value=oldValues[i];if(this.isItem(value)){this._removeReferenceFromMap(value,item,attribute)}}}}else{var newValueArray;if(dojo.isArray(newValueOrValues)){var newValues=newValueOrValues;newValueArray=newValueOrValues.slice(0,newValueOrValues.length)}else{newValueArray=[newValueOrValues]}if(this.referenceIntegrity){if(oldValueOrValues){var oldValues=oldValueOrValues;if(!dojo.isArray(oldValues)){oldValues=[oldValues]}var map={};dojo.forEach(oldValues,function(possibleItem){if(this.isItem(possibleItem)){var id=this.getIdentity(possibleItem);map[id.toString()]=true}},this);dojo.forEach(newValueArray,function(possibleItem){if(this.isItem(possibleItem)){var id=this.getIdentity(possibleItem);if(map[id.toString()]){delete map[id.toString()]}else{this._addReferenceToMap(possibleItem,item,attribute)}}},this);for(var rId in map){var removedItem;if(this._itemsByIdentity){removedItem=this._itemsByIdentity[rId]}else{removedItem=this._arrayOfAllItems[rId]}this._removeReferenceFromMap(removedItem,item,attribute)}}else{for(var i=0;i<newValueArray.length;i++){var value=newValueArray[i];if(this.isItem(value)){this._addReferenceToMap(value,item,attribute)}}}}item[attribute]=newValueArray;success=true}if(callOnSet){this.onSet(item,attribute,oldValueOrValues,newValueOrValues)}return success},_addReferenceToMap:function(refItem,parentItem,attribute){var parentId=this.getIdentity(parentItem);var references=refItem[this._reverseRefMap];if(!references){references=refItem[this._reverseRefMap]={}}var itemRef=references[parentId];if(!itemRef){itemRef=references[parentId]={}}itemRef[attribute]=true},_removeReferenceFromMap:function(refItem,parentItem,attribute){var identity=this.getIdentity(parentItem);var references=refItem[this._reverseRefMap];var itemId;if(references){for(itemId in references){if(itemId==identity){delete references[itemId][attribute];if(this._isEmpty(references[itemId])){delete references[itemId]}}}if(this._isEmpty(references)){delete refItem[this._reverseRefMap]}}},_dumpReferenceMap:function(){var i;for(i=0;i<this._arrayOfAllItems.length;i++){var item=this._arrayOfAllItems[i];if(item&&item[this._reverseRefMap]){console.log("Item: ["+this.getIdentity(item)+"] is referenced by: "+dojo.toJson(item[this._reverseRefMap]))}}},_getValueOrValues:function(item,attribute){var valueOrValues=undefined;if(this.hasAttribute(item,attribute)){var valueArray=this.getValues(item,attribute);if(valueArray.length==1){valueOrValues=valueArray[0]}else{valueOrValues=valueArray}}return valueOrValues},_flatten:function(value){if(this.isItem(value)){var item=value;var identity=this.getIdentity(item);var referenceObject={_reference:identity};return referenceObject}else{if(typeof value==="object"){for(var type in this._datatypeMap){var typeMap=this._datatypeMap[type];if(dojo.isObject(typeMap)&&!dojo.isFunction(typeMap)){if(value instanceof typeMap.type){if(!typeMap.serialize){throw new Error("ItemFileWriteStore:  No serializer defined for type mapping: ["+type+"]")}return{_type:type,_value:typeMap.serialize(value)}}}else{if(value instanceof typeMap){return{_type:type,_value:value.toString()}}}}}return value}},_getNewFileContentString:function(){var serializableStructure={};var identifierAttribute=this._getIdentifierAttribute();if(identifierAttribute!==Number){serializableStructure.identifier=identifierAttribute}if(this._labelAttr){serializableStructure.label=this._labelAttr}serializableStructure.items=[];for(var i=0;i<this._arrayOfAllItems.length;++i){var item=this._arrayOfAllItems[i];if(item!==null){var serializableItem={};for(var key in item){if(key!==this._storeRefPropName&&key!==this._itemNumPropName&&key!==this._reverseRefMap&&key!==this._rootItemPropName){var attribute=key;var valueArray=this.getValues(item,attribute);if(valueArray.length==1){serializableItem[attribute]=this._flatten(valueArray[0])}else{var serializableArray=[];for(var j=0;j<valueArray.length;++j){serializableArray.push(this._flatten(valueArray[j]));serializableItem[attribute]=serializableArray}}}}serializableStructure.items.push(serializableItem)}}var prettyPrint=true;return dojo.toJson(serializableStructure,prettyPrint)},_isEmpty:function(something){var empty=true;if(dojo.isObject(something)){var i;for(i in something){empty=false;break}}else{if(dojo.isArray(something)){if(something.length>0){empty=false}}}return empty},save:function(keywordArgs){this._assert(!this._saveInProgress);this._saveInProgress=true;var self=this;var saveCompleteCallback=function(){self._pending={_newItems:{},_modifiedItems:{},_deletedItems:{}};self._saveInProgress=false;if(keywordArgs&&keywordArgs.onComplete){var scope=keywordArgs.scope||dojo.global;keywordArgs.onComplete.call(scope)}};var saveFailedCallback=function(err){self._saveInProgress=false;if(keywordArgs&&keywordArgs.onError){var scope=keywordArgs.scope||dojo.global;keywordArgs.onError.call(scope,err)}};if(this._saveEverything){var newFileContentString=this._getNewFileContentString();this._saveEverything(saveCompleteCallback,saveFailedCallback,newFileContentString)}if(this._saveCustom){this._saveCustom(saveCompleteCallback,saveFailedCallback)}if(!this._saveEverything&&!this._saveCustom){saveCompleteCallback()}},revert:function(){this._assert(!this._saveInProgress);var identity;for(identity in this._pending._modifiedItems){var originalItem=this._pending._modifiedItems[identity];var modifiedItem=null;if(this._itemsByIdentity){modifiedItem=this._itemsByIdentity[identity]}else{modifiedItem=this._arrayOfAllItems[identity]}originalItem[this._storeRefPropName]=this;modifiedItem[this._storeRefPropName]=null;var arrayIndex=modifiedItem[this._itemNumPropName];this._arrayOfAllItems[arrayIndex]=originalItem;if(modifiedItem[this._rootItemPropName]){var i;for(i=0;i<this._arrayOfTopLevelItems.length;i++){var possibleMatch=this._arrayOfTopLevelItems[i];if(this.getIdentity(possibleMatch)==identity){this._arrayOfTopLevelItems[i]=originalItem;break}}}if(this._itemsByIdentity){this._itemsByIdentity[identity]=originalItem}}var deletedItem;for(identity in this._pending._deletedItems){deletedItem=this._pending._deletedItems[identity];deletedItem[this._storeRefPropName]=this;var index=deletedItem[this._itemNumPropName];if(deletedItem["backup_"+this._reverseRefMap]){deletedItem[this._reverseRefMap]=deletedItem["backup_"+this._reverseRefMap];delete deletedItem["backup_"+this._reverseRefMap]}this._arrayOfAllItems[index]=deletedItem;if(this._itemsByIdentity){this._itemsByIdentity[identity]=deletedItem}if(deletedItem[this._rootItemPropName]){this._arrayOfTopLevelItems.push(deletedItem)}}for(identity in this._pending._deletedItems){deletedItem=this._pending._deletedItems[identity];if(deletedItem["backupRefs_"+this._reverseRefMap]){dojo.forEach(deletedItem["backupRefs_"+this._reverseRefMap],function(reference){var refItem;if(this._itemsByIdentity){refItem=this._itemsByIdentity[reference.id]}else{refItem=this._arrayOfAllItems[reference.id]}this._addReferenceToMap(refItem,deletedItem,reference.attr)},this);delete deletedItem["backupRefs_"+this._reverseRefMap]}}for(identity in this._pending._newItems){var newItem=this._pending._newItems[identity];newItem[this._storeRefPropName]=null;this._arrayOfAllItems[newItem[this._itemNumPropName]]=null;if(newItem[this._rootItemPropName]){this._removeArrayElement(this._arrayOfTopLevelItems,newItem)}if(this._itemsByIdentity){delete this._itemsByIdentity[identity]}}this._pending={_newItems:{},_modifiedItems:{},_deletedItems:{}};return true},isDirty:function(item){if(item){var identity=this.getIdentity(item);return new Boolean(this._pending._newItems[identity]||this._pending._modifiedItems[identity]||this._pending._deletedItems[identity]).valueOf()}else{if(!this._isEmpty(this._pending._newItems)||!this._isEmpty(this._pending._modifiedItems)||!this._isEmpty(this._pending._deletedItems)){return true}return false}},onSet:function(item,attribute,oldValue,newValue){},onNew:function(newItem,parentInfo){},onDelete:function(deletedItem){},close:function(request){if(this.clearOnClose){if(!this.isDirty()){this.inherited(arguments)}else{if(this._jsonFileUrl!==""){throw new Error("dojo.data.ItemFileWriteStore: There are unsaved changes present in the store.  Please save or revert the changes before invoking close.")}}}}})}if(!dojo._hasResource["dojo.dnd.Container"]){dojo._hasResource["dojo.dnd.Container"]=true;dojo.provide("dojo.dnd.Container");dojo.declare("dojo.dnd.Container",null,{skipForm:false,constructor:function(node,params){this.node=dojo.byId(node);if(!params){params={}}this.creator=params.creator||null;this.skipForm=params.skipForm;this.parent=params.dropParent&&dojo.byId(params.dropParent);this.map={};this.current=null;this.containerState="";dojo.addClass(this.node,"dojoDndContainer");if(!(params&&params._skipStartup)){this.startup()}this.events=[dojo.connect(this.node,"onmouseover",this,"onMouseOver"),dojo.connect(this.node,"onmouseout",this,"onMouseOut"),dojo.connect(this.node,"ondragstart",this,"onSelectStart"),dojo.connect(this.node,"onselectstart",this,"onSelectStart")]},creator:function(){},getItem:function(key){return this.map[key]},setItem:function(key,data){this.map[key]=data},delItem:function(key){delete this.map[key]},forInItems:function(f,o){o=o||dojo.global;var m=this.map,e=dojo.dnd._empty;for(var i in m){if(i in e){continue}f.call(o,m[i],i,this)}return o},clearItems:function(){this.map={}},getAllNodes:function(){return dojo.query("> .dojoDndItem",this.parent)},sync:function(){var map={};this.getAllNodes().forEach(function(node){if(node.id){var item=this.getItem(node.id);if(item){map[node.id]=item;return }}else{node.id=dojo.dnd.getUniqueId()}var type=node.getAttribute("dndType"),data=node.getAttribute("dndData");map[node.id]={data:data||node.innerHTML,type:type?type.split(/\s*,\s*/):["text"]}},this);this.map=map;return this},insertNodes:function(data,before,anchor){if(!this.parent.firstChild){anchor=null}else{if(before){if(!anchor){anchor=this.parent.firstChild}}else{if(anchor){anchor=anchor.nextSibling}}}if(anchor){for(var i=0;i<data.length;++i){var t=this._normalizedCreator(data[i]);this.setItem(t.node.id,{data:t.data,type:t.type});this.parent.insertBefore(t.node,anchor)}}else{for(var i=0;i<data.length;++i){var t=this._normalizedCreator(data[i]);this.setItem(t.node.id,{data:t.data,type:t.type});this.parent.appendChild(t.node)}}return this},destroy:function(){dojo.forEach(this.events,dojo.disconnect);this.clearItems();this.node=this.parent=this.current=null},markupFactory:function(params,node){params._skipStartup=true;return new dojo.dnd.Container(node,params)},startup:function(){if(!this.parent){this.parent=this.node;if(this.parent.tagName.toLowerCase()=="table"){var c=this.parent.getElementsByTagName("tbody");if(c&&c.length){this.parent=c[0]}}}this.defaultCreator=dojo.dnd._defaultCreator(this.parent);this.sync()},onMouseOver:function(e){var n=e.relatedTarget;while(n){if(n==this.node){break}try{n=n.parentNode}catch(x){n=null}}if(!n){this._changeState("Container","Over");this.onOverEvent()}n=this._getChildByEvent(e);if(this.current==n){return }if(this.current){this._removeItemClass(this.current,"Over")}if(n){this._addItemClass(n,"Over")}this.current=n},onMouseOut:function(e){for(var n=e.relatedTarget;n;){if(n==this.node){return }try{n=n.parentNode}catch(x){n=null}}if(this.current){this._removeItemClass(this.current,"Over");this.current=null}this._changeState("Container","");this.onOutEvent()},onSelectStart:function(e){if(!this.skipForm||!dojo.dnd.isFormElement(e)){dojo.stopEvent(e)}},onOverEvent:function(){},onOutEvent:function(){},_changeState:function(type,newState){var prefix="dojoDnd"+type;var state=type.toLowerCase()+"State";dojo.removeClass(this.node,prefix+this[state]);dojo.addClass(this.node,prefix+newState);this[state]=newState},_addItemClass:function(node,type){dojo.addClass(node,"dojoDndItem"+type)},_removeItemClass:function(node,type){dojo.removeClass(node,"dojoDndItem"+type)},_getChildByEvent:function(e){var node=e.target;if(node){for(var parent=node.parentNode;parent;node=parent,parent=node.parentNode){if(parent==this.parent&&dojo.hasClass(node,"dojoDndItem")){return node}}}return null},_normalizedCreator:function(item,hint){var t=(this.creator||this.defaultCreator).call(this,item,hint);if(!dojo.isArray(t.type)){t.type=["text"]}if(!t.node.id){t.node.id=dojo.dnd.getUniqueId()}dojo.addClass(t.node,"dojoDndItem");return t}});dojo.dnd._createNode=function(tag){if(!tag){return dojo.dnd._createSpan}return function(text){return dojo.create(tag,{innerHTML:text})}};dojo.dnd._createTrTd=function(text){var tr=dojo.create("tr");dojo.create("td",{innerHTML:text},tr);return tr};dojo.dnd._createSpan=function(text){return dojo.create("span",{innerHTML:text})};dojo.dnd._defaultCreatorNodes={ul:"li",ol:"li",div:"div",p:"div"};dojo.dnd._defaultCreator=function(node){var tag=node.tagName.toLowerCase();var c=tag=="tbody"||tag=="thead"?dojo.dnd._createTrTd:dojo.dnd._createNode(dojo.dnd._defaultCreatorNodes[tag]);return function(item,hint){var isObj=item&&dojo.isObject(item),data,type,n;if(isObj&&item.tagName&&item.nodeType&&item.getAttribute){data=item.getAttribute("dndData")||item.innerHTML;type=item.getAttribute("dndType");type=type?type.split(/\s*,\s*/):["text"];n=item}else{data=(isObj&&item.data)?item.data:item;type=(isObj&&item.type)?item.type:["text"];n=(hint=="avatar"?dojo.dnd._createSpan:c)(String(data))}n.id=dojo.dnd.getUniqueId();return{node:n,data:data,type:type}}}}if(!dojo._hasResource["dojo.dnd.Selector"]){dojo._hasResource["dojo.dnd.Selector"]=true;dojo.provide("dojo.dnd.Selector");dojo.declare("dojo.dnd.Selector",dojo.dnd.Container,{constructor:function(node,params){if(!params){params={}}this.singular=params.singular;this.autoSync=params.autoSync;this.selection={};this.anchor=null;this.simpleSelection=false;this.events.push(dojo.connect(this.node,"onmousedown",this,"onMouseDown"),dojo.connect(this.node,"onmouseup",this,"onMouseUp"))},singular:false,getSelectedNodes:function(){var t=new dojo.NodeList();var e=dojo.dnd._empty;for(var i in this.selection){if(i in e){continue}t.push(dojo.byId(i))}return t},selectNone:function(){return this._removeSelection()._removeAnchor()},selectAll:function(){this.forInItems(function(data,id){this._addItemClass(dojo.byId(id),"Selected");this.selection[id]=1},this);return this._removeAnchor()},deleteSelectedNodes:function(){var e=dojo.dnd._empty;for(var i in this.selection){if(i in e){continue}var n=dojo.byId(i);this.delItem(i);dojo.destroy(n)}this.anchor=null;this.selection={};return this},forInSelectedItems:function(f,o){o=o||dojo.global;var s=this.selection,e=dojo.dnd._empty;for(var i in s){if(i in e){continue}f.call(o,this.getItem(i),i,this)}},sync:function(){dojo.dnd.Selector.superclass.sync.call(this);if(this.anchor){if(!this.getItem(this.anchor.id)){this.anchor=null}}var t=[],e=dojo.dnd._empty;for(var i in this.selection){if(i in e){continue}if(!this.getItem(i)){t.push(i)}}dojo.forEach(t,function(i){delete this.selection[i]},this);return this},insertNodes:function(addSelected,data,before,anchor){var oldCreator=this._normalizedCreator;this._normalizedCreator=function(item,hint){var t=oldCreator.call(this,item,hint);if(addSelected){if(!this.anchor){this.anchor=t.node;this._removeItemClass(t.node,"Selected");this._addItemClass(this.anchor,"Anchor")}else{if(this.anchor!=t.node){this._removeItemClass(t.node,"Anchor");this._addItemClass(t.node,"Selected")}}this.selection[t.node.id]=1}else{this._removeItemClass(t.node,"Selected");this._removeItemClass(t.node,"Anchor")}return t};dojo.dnd.Selector.superclass.insertNodes.call(this,data,before,anchor);this._normalizedCreator=oldCreator;return this},destroy:function(){dojo.dnd.Selector.superclass.destroy.call(this);this.selection=this.anchor=null},markupFactory:function(params,node){params._skipStartup=true;return new dojo.dnd.Selector(node,params)},onMouseDown:function(e){if(this.autoSync){this.sync()}if(!this.current){return }if(!this.singular&&!dojo.dnd.getCopyKeyState(e)&&!e.shiftKey&&(this.current.id in this.selection)){this.simpleSelection=true;if(e.button===dojo.dnd._lmb){dojo.stopEvent(e)}return }if(!this.singular&&e.shiftKey){if(!dojo.dnd.getCopyKeyState(e)){this._removeSelection()}var c=this.getAllNodes();if(c.length){if(!this.anchor){this.anchor=c[0];this._addItemClass(this.anchor,"Anchor")}this.selection[this.anchor.id]=1;if(this.anchor!=this.current){var i=0;for(;i<c.length;++i){var node=c[i];if(node==this.anchor||node==this.current){break}}for(++i;i<c.length;++i){var node=c[i];if(node==this.anchor||node==this.current){break}this._addItemClass(node,"Selected");this.selection[node.id]=1}this._addItemClass(this.current,"Selected");this.selection[this.current.id]=1}}}else{if(this.singular){if(this.anchor==this.current){if(dojo.dnd.getCopyKeyState(e)){this.selectNone()}}else{this.selectNone();this.anchor=this.current;this._addItemClass(this.anchor,"Anchor");this.selection[this.current.id]=1}}else{if(dojo.dnd.getCopyKeyState(e)){if(this.anchor==this.current){delete this.selection[this.anchor.id];this._removeAnchor()}else{if(this.current.id in this.selection){this._removeItemClass(this.current,"Selected");delete this.selection[this.current.id]}else{if(this.anchor){this._removeItemClass(this.anchor,"Anchor");this._addItemClass(this.anchor,"Selected")}this.anchor=this.current;this._addItemClass(this.current,"Anchor");this.selection[this.current.id]=1}}}else{if(!(this.current.id in this.selection)){this.selectNone();this.anchor=this.current;this._addItemClass(this.current,"Anchor");this.selection[this.current.id]=1}}}}dojo.stopEvent(e)},onMouseUp:function(e){if(!this.simpleSelection){return }this.simpleSelection=false;this.selectNone();if(this.current){this.anchor=this.current;this._addItemClass(this.anchor,"Anchor");this.selection[this.current.id]=1}},onMouseMove:function(e){this.simpleSelection=false},onOverEvent:function(){this.onmousemoveEvent=dojo.connect(this.node,"onmousemove",this,"onMouseMove")},onOutEvent:function(){dojo.disconnect(this.onmousemoveEvent);delete this.onmousemoveEvent},_removeSelection:function(){var e=dojo.dnd._empty;for(var i in this.selection){if(i in e){continue}var node=dojo.byId(i);if(node){this._removeItemClass(node,"Selected")}}this.selection={};return this},_removeAnchor:function(){if(this.anchor){this._removeItemClass(this.anchor,"Anchor");this.anchor=null}return this}})}if(!dojo._hasResource["dojo.dnd.Avatar"]){dojo._hasResource["dojo.dnd.Avatar"]=true;dojo.provide("dojo.dnd.Avatar");dojo.declare("dojo.dnd.Avatar",null,{constructor:function(manager){this.manager=manager;this.construct()},construct:function(){var a=dojo.create("table",{"class":"dojoDndAvatar",style:{position:"absolute",zIndex:"1999",margin:"0px"}}),b=dojo.create("tbody",null,a),tr=dojo.create("tr",null,b),td=dojo.create("td",{innerHTML:this._generateText()},tr),k=Math.min(5,this.manager.nodes.length),i=0,source=this.manager.source,node;dojo.attr(tr,{"class":"dojoDndAvatarHeader",style:{opacity:0.9}});for(;i<k;++i){if(source.creator){node=source._normalizedCreator(source.getItem(this.manager.nodes[i].id).data,"avatar").node}else{node=this.manager.nodes[i].cloneNode(true);if(node.tagName.toLowerCase()=="tr"){var table=dojo.create("table"),tbody=dojo.create("tbody",null,table);tbody.appendChild(node);node=table}}node.id="";tr=dojo.create("tr",null,b);td=dojo.create("td",null,tr);td.appendChild(node);dojo.attr(tr,{"class":"dojoDndAvatarItem",style:{opacity:(9-i)/10}})}this.node=a},destroy:function(){dojo.destroy(this.node);this.node=false},update:function(){dojo[(this.manager.canDropFlag?"add":"remove")+"Class"](this.node,"dojoDndAvatarCanDrop");dojo.query("tr.dojoDndAvatarHeader td",this.node).forEach(function(node){node.innerHTML=this._generateText()},this)},_generateText:function(){return this.manager.nodes.length.toString()}})}if(!dojo._hasResource["dojo.dnd.Manager"]){dojo._hasResource["dojo.dnd.Manager"]=true;dojo.provide("dojo.dnd.Manager");dojo.declare("dojo.dnd.Manager",null,{constructor:function(){this.avatar=null;this.source=null;this.nodes=[];this.copy=true;this.target=null;this.canDropFlag=false;this.events=[]},OFFSET_X:16,OFFSET_Y:16,overSource:function(source){if(this.avatar){this.target=(source&&source.targetState!="Disabled")?source:null;this.canDropFlag=Boolean(this.target);this.avatar.update()}dojo.publish("/dnd/source/over",[source])},outSource:function(source){if(this.avatar){if(this.target==source){this.target=null;this.canDropFlag=false;this.avatar.update();dojo.publish("/dnd/source/over",[null])}}else{dojo.publish("/dnd/source/over",[null])}},startDrag:function(source,nodes,copy){this.source=source;this.nodes=nodes;this.copy=Boolean(copy);this.avatar=this.makeAvatar();dojo.body().appendChild(this.avatar.node);dojo.publish("/dnd/start",[source,nodes,this.copy]);this.events=[dojo.connect(dojo.doc,"onmousemove",this,"onMouseMove"),dojo.connect(dojo.doc,"onmouseup",this,"onMouseUp"),dojo.connect(dojo.doc,"onkeydown",this,"onKeyDown"),dojo.connect(dojo.doc,"onkeyup",this,"onKeyUp"),dojo.connect(dojo.doc,"ondragstart",dojo.stopEvent),dojo.connect(dojo.body(),"onselectstart",dojo.stopEvent)];var c="dojoDnd"+(copy?"Copy":"Move");dojo.addClass(dojo.body(),c)},canDrop:function(flag){var canDropFlag=Boolean(this.target&&flag);if(this.canDropFlag!=canDropFlag){this.canDropFlag=canDropFlag;this.avatar.update()}},stopDrag:function(){dojo.removeClass(dojo.body(),"dojoDndCopy");dojo.removeClass(dojo.body(),"dojoDndMove");dojo.forEach(this.events,dojo.disconnect);this.events=[];this.avatar.destroy();this.avatar=null;this.source=this.target=null;this.nodes=[]},makeAvatar:function(){return new dojo.dnd.Avatar(this)},updateAvatar:function(){this.avatar.update()},onMouseMove:function(e){var a=this.avatar;if(a){dojo.dnd.autoScrollNodes(e);var s=a.node.style;s.left=(e.pageX+this.OFFSET_X)+"px";s.top=(e.pageY+this.OFFSET_Y)+"px";var copy=Boolean(this.source.copyState(dojo.dnd.getCopyKeyState(e)));if(this.copy!=copy){this._setCopyStatus(copy)}}},onMouseUp:function(e){if(this.avatar){if(this.target&&this.canDropFlag){var copy=Boolean(this.source.copyState(dojo.dnd.getCopyKeyState(e))),params=[this.source,this.nodes,copy,this.target];dojo.publish("/dnd/drop/before",params);dojo.publish("/dnd/drop",params)}else{dojo.publish("/dnd/cancel")}this.stopDrag()}},onKeyDown:function(e){if(this.avatar){switch(e.keyCode){case dojo.keys.CTRL:var copy=Boolean(this.source.copyState(true));if(this.copy!=copy){this._setCopyStatus(copy)}break;case dojo.keys.ESCAPE:dojo.publish("/dnd/cancel");this.stopDrag();break}}},onKeyUp:function(e){if(this.avatar&&e.keyCode==dojo.keys.CTRL){var copy=Boolean(this.source.copyState(false));if(this.copy!=copy){this._setCopyStatus(copy)}}},_setCopyStatus:function(copy){this.copy=copy;this.source._markDndStatus(this.copy);this.updateAvatar();dojo.removeClass(dojo.body(),"dojoDnd"+(this.copy?"Move":"Copy"));dojo.addClass(dojo.body(),"dojoDnd"+(this.copy?"Copy":"Move"))}});dojo.dnd._manager=null;dojo.dnd.manager=function(){if(!dojo.dnd._manager){dojo.dnd._manager=new dojo.dnd.Manager()}return dojo.dnd._manager}}if(!dojo._hasResource["dojo.dnd.Source"]){dojo._hasResource["dojo.dnd.Source"]=true;dojo.provide("dojo.dnd.Source");dojo.declare("dojo.dnd.Source",dojo.dnd.Selector,{isSource:true,horizontal:false,copyOnly:false,selfCopy:false,selfAccept:true,skipForm:false,withHandles:false,autoSync:false,delay:0,accept:["text"],constructor:function(node,params){dojo.mixin(this,dojo.mixin({},params));var type=this.accept;if(type.length){this.accept={};for(var i=0;i<type.length;++i){this.accept[type[i]]=1}}this.isDragging=false;this.mouseDown=false;this.targetAnchor=null;this.targetBox=null;this.before=true;this._lastX=0;this._lastY=0;this.sourceState="";if(this.isSource){dojo.addClass(this.node,"dojoDndSource")}this.targetState="";if(this.accept){dojo.addClass(this.node,"dojoDndTarget")}if(this.horizontal){dojo.addClass(this.node,"dojoDndHorizontal")}this.topics=[dojo.subscribe("/dnd/source/over",this,"onDndSourceOver"),dojo.subscribe("/dnd/start",this,"onDndStart"),dojo.subscribe("/dnd/drop",this,"onDndDrop"),dojo.subscribe("/dnd/cancel",this,"onDndCancel")]},checkAcceptance:function(source,nodes){if(this==source){return !this.copyOnly||this.selfAccept}for(var i=0;i<nodes.length;++i){var type=source.getItem(nodes[i].id).type;var flag=false;for(var j=0;j<type.length;++j){if(type[j] in this.accept){flag=true;break}}if(!flag){return false}}return true},copyState:function(keyPressed,self){if(keyPressed){return true}if(arguments.length<2){self=this==dojo.dnd.manager().target}if(self){if(this.copyOnly){return this.selfCopy}}else{return this.copyOnly}return false},destroy:function(){dojo.dnd.Source.superclass.destroy.call(this);dojo.forEach(this.topics,dojo.unsubscribe);this.targetAnchor=null},markupFactory:function(params,node){params._skipStartup=true;return new dojo.dnd.Source(node,params)},onMouseMove:function(e){if(this.isDragging&&this.targetState=="Disabled"){return }dojo.dnd.Source.superclass.onMouseMove.call(this,e);var m=dojo.dnd.manager();if(this.isDragging){var before=false;if(this.current){if(!this.targetBox||this.targetAnchor!=this.current){this.targetBox={xy:dojo.coords(this.current,true),w:this.current.offsetWidth,h:this.current.offsetHeight}}if(this.horizontal){before=(e.pageX-this.targetBox.xy.x)<(this.targetBox.w/2)}else{before=(e.pageY-this.targetBox.xy.y)<(this.targetBox.h/2)}}if(this.current!=this.targetAnchor||before!=this.before){this._markTargetAnchor(before);m.canDrop(!this.current||m.source!=this||!(this.current.id in this.selection))}}else{if(this.mouseDown&&this.isSource&&(Math.abs(e.pageX-this._lastX)>this.delay||Math.abs(e.pageY-this._lastY)>this.delay)){var nodes=this.getSelectedNodes();if(nodes.length){m.startDrag(this,nodes,this.copyState(dojo.dnd.getCopyKeyState(e),true))}}}},onMouseDown:function(e){if(!this.mouseDown&&this._legalMouseDown(e)&&(!this.skipForm||!dojo.dnd.isFormElement(e))){this.mouseDown=true;this._lastX=e.pageX;this._lastY=e.pageY;dojo.dnd.Source.superclass.onMouseDown.call(this,e)}},onMouseUp:function(e){if(this.mouseDown){this.mouseDown=false;dojo.dnd.Source.superclass.onMouseUp.call(this,e)}},onDndSourceOver:function(source){if(this!=source){this.mouseDown=false;if(this.targetAnchor){this._unmarkTargetAnchor()}}else{if(this.isDragging){var m=dojo.dnd.manager();m.canDrop(this.targetState!="Disabled"&&(!this.current||m.source!=this||!(this.current.id in this.selection)))}}},onDndStart:function(source,nodes,copy){if(this.autoSync){this.sync()}if(this.isSource){this._changeState("Source",this==source?(copy?"Copied":"Moved"):"")}var accepted=this.accept&&this.checkAcceptance(source,nodes);this._changeState("Target",accepted?"":"Disabled");if(this==source){dojo.dnd.manager().overSource(this)}this.isDragging=true},onDndDrop:function(source,nodes,copy,target){if(this==target){this.onDrop(source,nodes,copy)}this.onDndCancel()},onDndCancel:function(){if(this.targetAnchor){this._unmarkTargetAnchor();this.targetAnchor=null}this.before=true;this.isDragging=false;this.mouseDown=false;this._changeState("Source","");this._changeState("Target","")},onDrop:function(source,nodes,copy){if(this!=source){this.onDropExternal(source,nodes,copy)}else{this.onDropInternal(nodes,copy)}},onDropExternal:function(source,nodes,copy){var oldCreator=this._normalizedCreator;if(this.creator){this._normalizedCreator=function(node,hint){return oldCreator.call(this,source.getItem(node.id).data,hint)}}else{if(copy){this._normalizedCreator=function(node,hint){var t=source.getItem(node.id);var n=node.cloneNode(true);n.id=dojo.dnd.getUniqueId();return{node:n,data:t.data,type:t.type}}}else{this._normalizedCreator=function(node,hint){var t=source.getItem(node.id);source.delItem(node.id);return{node:node,data:t.data,type:t.type}}}}this.selectNone();if(!copy&&!this.creator){source.selectNone()}this.insertNodes(true,nodes,this.before,this.current);if(!copy&&this.creator){source.deleteSelectedNodes()}this._normalizedCreator=oldCreator},onDropInternal:function(nodes,copy){var oldCreator=this._normalizedCreator;if(this.current&&this.current.id in this.selection){return }if(copy){if(this.creator){this._normalizedCreator=function(node,hint){return oldCreator.call(this,this.getItem(node.id).data,hint)}}else{this._normalizedCreator=function(node,hint){var t=this.getItem(node.id);var n=node.cloneNode(true);n.id=dojo.dnd.getUniqueId();return{node:n,data:t.data,type:t.type}}}}else{if(!this.current){return }this._normalizedCreator=function(node,hint){var t=this.getItem(node.id);return{node:node,data:t.data,type:t.type}}}this._removeSelection();this.insertNodes(true,nodes,this.before,this.current);this._normalizedCreator=oldCreator},onDraggingOver:function(){},onDraggingOut:function(){},onOverEvent:function(){dojo.dnd.Source.superclass.onOverEvent.call(this);dojo.dnd.manager().overSource(this);if(this.isDragging&&this.targetState!="Disabled"){this.onDraggingOver()}},onOutEvent:function(){dojo.dnd.Source.superclass.onOutEvent.call(this);dojo.dnd.manager().outSource(this);if(this.isDragging&&this.targetState!="Disabled"){this.onDraggingOut()}},_markTargetAnchor:function(before){if(this.current==this.targetAnchor&&this.before==before){return }if(this.targetAnchor){this._removeItemClass(this.targetAnchor,this.before?"Before":"After")}this.targetAnchor=this.current;this.targetBox=null;this.before=before;if(this.targetAnchor){this._addItemClass(this.targetAnchor,this.before?"Before":"After")}},_unmarkTargetAnchor:function(){if(!this.targetAnchor){return }this._removeItemClass(this.targetAnchor,this.before?"Before":"After");this.targetAnchor=null;this.targetBox=null;this.before=true},_markDndStatus:function(copy){this._changeState("Source",copy?"Copied":"Moved")},_legalMouseDown:function(e){if(!dojo.dnd._isLmbPressed(e)){return false}if(!this.withHandles){return true}for(var node=e.target;node&&node!==this.node;node=node.parentNode){if(dojo.hasClass(node,"dojoDndHandle")){return true}if(dojo.hasClass(node,"dojoDndItem")){break}}return false}});dojo.declare("dojo.dnd.Target",dojo.dnd.Source,{constructor:function(node,params){this.isSource=false;dojo.removeClass(this.node,"dojoDndSource")},markupFactory:function(params,node){params._skipStartup=true;return new dojo.dnd.Target(node,params)}});dojo.declare("dojo.dnd.AutoSource",dojo.dnd.Source,{constructor:function(node,params){this.autoSync=true},markupFactory:function(params,node){params._skipStartup=true;return new dojo.dnd.AutoSource(node,params)}})}dojo.i18n._preloadLocalizations("dojo.nls.dojo",["ROOT","ar","ca","cs","da","de","de-de","el","en","en-gb","en-us","es","es-es","fi","fi-fi","fr","fr-fr","he","he-il","hu","it","it-it","ja","ja-jp","ko","ko-kr","nl","nl-nl","no","pl","pt","pt-br","pt-pt","ru","sk","sl","sv","th","tr","xx","zh","zh-cn","zh-tw"]);if(dojo.config.afterOnLoad&&dojo.isBrowser){window.setTimeout(dojo._loadInit,1000)}})()
