/*
	Copyright (c) 2004-2010, The Dojo Foundation All Rights Reserved.
	Available via Academic Free License >= 2.1 OR the modified BSD license.
	see: http://dojotoolkit.org/license for details
*/

/*
	This is an optimized version of Dojo, built for deployment and not for
	development. To get sources and documentation, please visit:

		http://dojotoolkit.org
*/

if(!dojo._hasResource["dojo.back"]){
dojo._hasResource["dojo.back"]=true;
dojo.provide("dojo.back");
(function(){
var _1=dojo.back;
function _2(){
var h=window.location.hash;
if(h.charAt(0)=="#"){
h=h.substring(1);
}
return dojo.isMozilla?h:decodeURIComponent(h);
};
function _3(h){
if(!h){
h="";
}
window.location.hash=encodeURIComponent(h);
_4=history.length;
};
if(dojo.exists("tests.back-hash")){
_1.getHash=_2;
_1.setHash=_3;
}
var _5=(typeof (window)!=="undefined")?window.location.href:"";
var _6=(typeof (window)!=="undefined")?_2():"";
var _7=null;
var _8=null;
var _9=null;
var _a=null;
var _b=[];
var _c=[];
var _d=false;
var _e=false;
var _4;
function _f(){
var _10=_c.pop();
if(!_10){
return;
}
var _11=_c[_c.length-1];
if(!_11&&_c.length==0){
_11=_7;
}
if(_11){
if(_11.kwArgs["back"]){
_11.kwArgs["back"]();
}else{
if(_11.kwArgs["backButton"]){
_11.kwArgs["backButton"]();
}else{
if(_11.kwArgs["handle"]){
_11.kwArgs.handle("back");
}
}
}
}
_b.push(_10);
};
_1.goBack=_f;
function _12(){
var _13=_b.pop();
if(!_13){
return;
}
if(_13.kwArgs["forward"]){
_13.kwArgs.forward();
}else{
if(_13.kwArgs["forwardButton"]){
_13.kwArgs.forwardButton();
}else{
if(_13.kwArgs["handle"]){
_13.kwArgs.handle("forward");
}
}
}
_c.push(_13);
};
_1.goForward=_12;
function _14(url,_15,_16){
return {"url":url,"kwArgs":_15,"urlHash":_16};
};
function _17(url){
var _18=url.split("?");
if(_18.length<2){
return null;
}else{
return _18[1];
}
};
function _19(){
var url=(dojo.config["dojoIframeHistoryUrl"]||dojo.moduleUrl("dojo","resources/iframe_history.html"))+"?"+(new Date()).getTime();
_d=true;
if(_a){
dojo.isWebKit?_a.location=url:window.frames[_a.name].location=url;
}else{
}
return url;
};
function _1a(){
if(!_e){
var hsl=_c.length;
var _1b=_2();
if((_1b===_6||window.location.href==_5)&&(hsl==1)){
_f();
return;
}
if(_b.length>0){
if(_b[_b.length-1].urlHash===_1b){
_12();
return;
}
}
if((hsl>=2)&&(_c[hsl-2])){
if(_c[hsl-2].urlHash===_1b){
_f();
return;
}
}
if(dojo.isSafari&&dojo.isSafari<3){
var _1c=history.length;
if(_1c>_4){
_12();
}else{
if(_1c<_4){
_f();
}
}
_4=_1c;
}
}
};
_1.init=function(){
if(dojo.byId("dj_history")){
return;
}
var src=dojo.config["dojoIframeHistoryUrl"]||dojo.moduleUrl("dojo","resources/iframe_history.html");
if(dojo._postLoad){
console.error("dojo.back.init() must be called before the DOM has loaded. "+"If using xdomain loading or djConfig.debugAtAllCosts, include dojo.back "+"in a build layer.");
}else{
document.write("<iframe style=\"border:0;width:1px;height:1px;position:absolute;visibility:hidden;bottom:0;right:0;\" name=\"dj_history\" id=\"dj_history\" src=\""+src+"\"></iframe>");
}
};
_1.setInitialState=function(_1d){
_7=_14(_5,_1d,_6);
};
_1.addToHistory=function(_1e){
_b=[];
var _1f=null;
var url=null;
if(!_a){
if(dojo.config["useXDomain"]&&!dojo.config["dojoIframeHistoryUrl"]){
console.warn("dojo.back: When using cross-domain Dojo builds,"+" please save iframe_history.html to your domain and set djConfig.dojoIframeHistoryUrl"+" to the path on your domain to iframe_history.html");
}
_a=window.frames["dj_history"];
}
if(!_9){
_9=dojo.create("a",{style:{display:"none"}},dojo.body());
}
if(_1e["changeUrl"]){
_1f=""+((_1e["changeUrl"]!==true)?_1e["changeUrl"]:(new Date()).getTime());
if(_c.length==0&&_7.urlHash==_1f){
_7=_14(url,_1e,_1f);
return;
}else{
if(_c.length>0&&_c[_c.length-1].urlHash==_1f){
_c[_c.length-1]=_14(url,_1e,_1f);
return;
}
}
_e=true;
setTimeout(function(){
_3(_1f);
_e=false;
},1);
_9.href=_1f;
if(dojo.isIE){
url=_19();
var _20=_1e["back"]||_1e["backButton"]||_1e["handle"];
var tcb=function(_21){
if(_2()!=""){
setTimeout(function(){
_3(_1f);
},1);
}
_20.apply(this,[_21]);
};
if(_1e["back"]){
_1e.back=tcb;
}else{
if(_1e["backButton"]){
_1e.backButton=tcb;
}else{
if(_1e["handle"]){
_1e.handle=tcb;
}
}
}
var _22=_1e["forward"]||_1e["forwardButton"]||_1e["handle"];
var tfw=function(_23){
if(_2()!=""){
_3(_1f);
}
if(_22){
_22.apply(this,[_23]);
}
};
if(_1e["forward"]){
_1e.forward=tfw;
}else{
if(_1e["forwardButton"]){
_1e.forwardButton=tfw;
}else{
if(_1e["handle"]){
_1e.handle=tfw;
}
}
}
}else{
if(!dojo.isIE){
if(!_8){
_8=setInterval(_1a,200);
}
}
}
}else{
url=_19();
}
_c.push(_14(url,_1e,_1f));
};
_1._iframeLoaded=function(evt,_24){
var _25=_17(_24.href);
if(_25==null){
if(_c.length==1){
_f();
}
return;
}
if(_d){
_d=false;
return;
}
if(_c.length>=2&&_25==_17(_c[_c.length-2].url)){
_f();
}else{
if(_b.length>0&&_25==_17(_b[_b.length-1].url)){
_12();
}
}
};
})();
}
if(!dojo._hasResource["terian.util.TreeMixin"]){
dojo._hasResource["terian.util.TreeMixin"]=true;
dojo.provide("terian.util.TreeMixin");
dojo.declare("terian.util.TreeMixin",null,{treeId:null,addChild:function(_26){
if(!_26){
return;
}
_26.treeParent=_26.treeParent||this;
this.treeChildren=this.treeChildren||[];
this.treeChildren.push(_26);
},removeChild:function(_27){
if(this.treeChildren){
var _28=dojo.isString(_27)?_27:_27.treeId;
for(var i in this.treeChildren){
var c=this.treeChildren[i];
if(c.treeId==_28){
this.treeChildren.splice(i,1);
return;
}
}
}
console.warn("Not removed: no such child "+_28);
},getPath:function(){
return this.treeParent?(this.treeParent.getPath()+"/"+this.treeId):this.treeId;
},getChildById:function(_29){
if(!this.treeChildren){
return null;
}
for(var i in this.treeChildren){
if(this.treeChildren[i].treeId==_29){
return this.treeChildren[i];
}
}
return null;
},getNodeByPath:function(_2a){
var _2b=_2a.split("/");
var _2c=this;
var _2d=_2b.shift();
if(_2d!=this.treeId){
return null;
}
while(_2d=_2b.shift()){
_2c=_2c.getChildById(_2d);
if(!_2c){
break;
}
}
return _2c;
},debug:function(_2e){
_2e=_2e||"";
console.debug(_2e+this.declaredClass+" - "+this.treeId);
_2e+="  ";
dojo.forEach(this.treeChildren,function(_2f){
_2f.debug(_2e);
});
}});
}
if(!dojo._hasResource["terian.model.Catalogue"]){
dojo._hasResource["terian.model.Catalogue"]=true;
dojo.provide("terian.model.Catalogue");
dojo.declare("terian.model.Catalogue",terian.util.TreeMixin,{constructor:function(_30){
this.treeId=_30.catalogueId||_30.id;
this.name=_30.name;
},getBrands:function(){
return this.treeChildren;
}});
}
if(!dojo._hasResource["terian.model.Brand"]){
dojo._hasResource["terian.model.Brand"]=true;
dojo.provide("terian.model.Brand");
dojo.declare("terian.model.Brand",terian.util.TreeMixin,{constructor:function(_31){
this.treeId=_31.brandId||_31.id;
this.name=_31.name;
this.shortDescription=_31.shortDescription;
this.longDescription=_31.longDescription;
},getProducts:function(_32){
return this.treeChildren;
}});
}
if(!dojo._hasResource["terian.util.Properties"]){
dojo._hasResource["terian.util.Properties"]=true;
dojo.provide("terian.util.Properties");
dojo.declare("terian.util.Properties",null,{properties:null,constructor:function(_33){
this.properties={};
this.putData(_33);
},get:function(key){
return this.properties[key];
},getList:function(key){
var _34=this.get(key);
return _34?_34.split(","):[];
},putData:function(_35){
if(!dojo.isString(_35)){
return;
}
var _36=_35.split("\n");
var _37=this;
dojo.forEach(_36,function(_38,idx){
_38=dojo.string.trim(_38);
if(!_38.length){
return;
}
if(_38.charAt(0)=="#"){
return;
}
var key=_38.split("=",1)[0];
if(key.length==_38.length){
console.warn("Expected key=value. Line "+idx+": "+_38);
return;
}
var _39=_38.substring(key.length+1);
key=dojo.string.trim(key);
_39=dojo.string.trim(_39);
_37.properties[key]=_39;
});
}});
terian.util.loadPropertiesFile=function(url,_3a,_3b){
var _3c=dojo.xhrGet({url:url,handleAs:"text"});
_3c.addCallback(function(_3d){
var _3e=new terian.util.Properties(_3d);
_3a(_3e);
});
_3c.addErrback(_3b||function(_3f){
console.error("Load failed: "+_3f);
});
};
}
if(!dojo._hasResource["terian.images"]){
dojo._hasResource["terian.images"]=true;
dojo.provide("terian.images");
terian.images=new function(){
this.imagePath=null;
this.productProperties=null;
this.registerImagePath=function(_40){
this.imagePath=_40;
};
this.initialise=function(_41){
this.productProperties=_41;
};
this.getMediaList=function(_42,_43,_44){
if(!this.productProperties){
console.error("terian.images not initialised");
return null;
}
var _45=this.defaults;
var _46=this.productProperties;
var _47=function(_48,_49,_4a){
return _46[_43+"."+_48+"."+_49]||_46[_43+"."+_49]||_46[_49]||_45[_48+"."+_49]||_45[_49]||_4a;
};
var _4b=_47(_42,"filePrefix",_42);
var _4c=_47(_42,"fileCount",4);
var _4d=_47(_42,"fileType","jpg");
var _4e=this.imagePath+"/"+_44+"/";
var _4f=[];
for(var i=1;i<=_4c;i++){
var _50=_46[_42+"."+i]||(_4b+"."+i+"."+_4d);
_4f.push(_4e+_50);
}
return _4f;
};
this.defaults={};
};
}
if(!dojo._hasResource["terian.util.tree"]){
dojo._hasResource["terian.util.tree"]=true;
dojo.provide("terian.util.tree");
terian.util.tree.forEachPreOrder=function(_51,_52){
_52(_51);
if(!_51.treeChildren){
return;
}
for(var i in _51.treeChildren){
terian.util.tree.forEachPreOrder(_51.treeChildren[i],_52);
}
};
terian.util.tree.find=function(_53,_54){
if(_54(_53)){
return _53;
}
if(!_53.treeChildren){
return null;
}
for(var i in _53.treeChildren){
var _55=terian.util.tree.find(_53.treeChildren[i],_54);
if(_55){
return _55;
}
}
};
}
if(!dojo._hasResource["terian.util.keyword"]){
dojo._hasResource["terian.util.keyword"]=true;
dojo.provide("terian.util.keyword");
terian.util.keyword.includes=function(_56,_57){
for(var i in _57){
if(_56==_57[i]){
return true;
}
}
return false;
};
terian.util.keyword.findInTree=function(_58,_59){
var _5a=[];
terian.util.tree.forEachPreOrder(_59,function(_5b){
if(!_5b.hasKeyword){
return;
}
if(_5b.hasKeyword(_58)){
_5a.push(_5b);
}
});
return _5a;
};
}
if(!dojo._hasResource["terian.model.Product"]){
dojo._hasResource["terian.model.Product"]=true;
dojo.provide("terian.model.Product");
dojo.declare("terian.model.Product",terian.util.TreeMixin,{constructor:function(_5c){
this.treeId=_5c.productId||_5c.id;
this.brandId=_5c.brandId;
this.name=_5c.name;
this.shortDescription=_5c.shortDescription;
this.longDescription=_5c.longDescription;
this.price=_5c.price;
this.percentage=parseInt(_5c.percentage);
this.salesMethod=_5c.salesMethod;
this.keywords=_5c.keywords;
this.variants=_5c.variants;
},getImageCollection:function(_5d){
return terian.images.getMediaList(_5d,this.treeId,this.getPath());
},hasKeyword:function(_5e){
return terian.util.keyword.includes(_5e,this.keywords);
},hasVariant:function(_5f){
return dojo.some(this.variants,function(_60){
return _5f==_60;
});
}});
terian.model.Product.INACTIVE="INACTIVE";
terian.model.Product.PREORDER="PREORDER";
terian.model.Product.ORDER="ORDER";
}
if(!dojo._hasResource["terian.model.Keyword"]){
dojo._hasResource["terian.model.Keyword"]=true;
dojo.provide("terian.model.Keyword");
dojo.declare("terian.model.Keyword",terian.util.TreeMixin,{name:null,constructor:function(_61){
this.treeId=_61.keywordId||_61.id;
this.parentId=_61.parentId;
this.name=_61.name;
this.shortDescription=_61.shortDescription;
}});
}
if(!dojo._hasResource["terian.model.Keywords"]){
dojo._hasResource["terian.model.Keywords"]=true;
dojo.provide("terian.model.Keywords");
dojo.declare("terian.model.Keywords",terian.util.TreeMixin,{constructor:function(){
this.treeId="Keywords";
this.name="Categories";
}});
}
if(!dojo._hasResource["terian.model.Inventory"]){
dojo._hasResource["terian.model.Inventory"]=true;
dojo.provide("terian.model.Inventory");
dojo.declare("terian.model.Inventory",null,{variantId:null,quantity:0,constructor:function(_62){
this.productId=_62.productId;
this.variantId=_62.variantId;
this.quantity=_62.quantity;
this.lowQuantity=_62.lowQuantity;
}});
}
if(!dojo._hasResource["terian.config"]){
dojo._hasResource["terian.config"]=true;
dojo.provide("terian.config");
terian.config.managementURL="/management/";
terian.config.serverURL="/";
terian.config.paypalURL="https://www.paypal.com/webscr&cmd=_express-checkout&token=";
terian.config.urchin="UA-12517873-1";
}
if(!dojo._hasResource["terian.util.url"]){
dojo._hasResource["terian.util.url"]=true;
dojo.provide("terian.util.url");
terian.util.url=new function(){
this.parseParameters=function(_63){
_63=dojo.string.trim(decodeURIComponent(_63!=null?_63:location.hash||location.search));
var _64=/([^#\?]*)#?([^\?]*)\??(.*)/.exec(_63);
var _63=(!_64[2]&&!_64[3])?_64[1]:_64[2];
var _65=_64[3];
var _66={};
if(_63){
_66.hash=this.parseEntries(_63);
}
if(_65){
_66.search=this.parseEntries(_65);
}
return _66;
};
this.parseEntries=function(_67){
var _68={};
var _69=_67.split("&");
dojo.forEach(_69,function(_6a){
var _6b=_6a.split("=");
if(_6b.length==2){
_68[_6b[0]]=_6b[1];
}
});
return _68;
};
this.formatParameters=function(_6c){
var fmt="";
for(var i in _6c){
fmt+=fmt?"&":"";
fmt+=i+"="+_6c[i];
}
return fmt;
};
};
}
if(!dojo._hasResource["terian.model.loader.servlet"]){
dojo._hasResource["terian.model.loader.servlet"]=true;
dojo.provide("terian.model.loader.servlet");
terian.model=terian.model||{};
terian.model.loader=new function(){
this.loadCatalogue=function(){
if(terian.model.catalogue){
return;
}
if(!terianCatalogueData){
console.error("Missing terianCatalogueData");
return;
}
var _6d=new terian.model.Catalogue({catalogueId:"Catalogue",name:"Terian"});
terian.model.loader._loadBrands(_6d,terianCatalogueData.brands);
terian.model.loader._loadProducts(_6d,terianCatalogueData.products);
terian.model.catalogue=_6d;
var _6e=new terian.model.Keywords();
terian.model.loader._loadKeywords(_6e,terianCatalogueData.keywords);
terian.model.keywords=_6e;
terian.images.initialise(terianCatalogueData.images);
delete terianCatalogueData;
};
this.loadInventory=function(_6f,_70){
var _71=dojo.xhrGet({url:terian.config.serverURL+"store/inventory?productId="+_6f.treeId,handleAs:"json"});
_71.addCallback(function(_72){
if(!dojo.isArray(_72)){
console.error("Failed to load inventory for",_6f,": expected array");
return;
}
var _73=[];
dojo.forEach(_72,function(_74){
var _75=new terian.model.Inventory(_74);
_73.push(_75);
});
_70(_73);
});
_71.addErrback(function(_76){
console.error("Failed to load inventory for",_6f,_76);
});
};
this.loadOrder=function(_77){
var _78=new dojo.Deferred();
if(dojo.isString(_77)){
_77={orderId:_77};
}
_77.action=_77.action||"load";
var _79=dojo.xhrGet({url:terian.config.serverURL+"store/order?"+terian.util.url.formatParameters(_77),handleAs:"json"});
_79.addCallback(function(_7a){
if(_7a["class"]!="com.terian.store.model.Order"){
console.error("Failed to load order for",_77.orderId,": expected order");
return;
}
var _7b=new terian.model.Order(_7a);
terian.model.orders.addChild(_7b);
_78.callback(_7b);
});
_79.addErrback(function(_7c){
console.error("Failed to load order ",_77.orderId,_7c);
_78.errback(_7c);
});
return _78;
};
this._loadBrands=function(_7d,_7e){
dojo.forEach(_7e,function(_7f){
var _80=new terian.model.Brand(_7f);
_7d.addChild(_80);
});
};
this._loadProducts=function(_81,_82){
dojo.forEach(_82,function(_83){
var _84=new terian.model.Product(_83);
var _85=_81.getChildById(_84.brandId);
_85.addChild(_84);
});
};
this._loadKeywords=function(_86,_87){
var _88=[];
dojo.forEach(_87,function(_89){
var _8a=new terian.model.Keyword(_89);
if(!_8a.parentId){
_86.addChild(_8a);
}else{
_88.push(_8a);
}
});
while(_88.length>0){
var o=_88;
_88=[];
dojo.forEach(o,function(_8b){
var _8c=terian.util.tree.find(_86,function(_8d){
return _8d.treeId==_8b.parentId;
});
if(_8c){
_8c.addChild(_8b);
}else{
_88.push(_8b);
}
});
if(o.length==_88.length){
console.error("loader: Failed to find parents for ",_88);
break;
}
}
};
};
}
if(!dojo._hasResource["terian.util.XHRCache"]){
dojo._hasResource["terian.util.XHRCache"]=true;
dojo.provide("terian.util.XHRCache");
dojo.declare("terian.util.XHRCache",null,{cache:null,constructor:function(){
this.cache={};
},xhrGet:function(_8e){
var _8f=new dojo.Deferred();
var _90=this.cache[_8e.url];
if(_90){
_8f.callback(_90);
}else{
var _91=dojo.xhrGet(_8e);
var _92=this;
_91.addCallback(function(_93){
_92.cache[_8e.url]=_93;
_8f.callback(_93);
});
_91.addErrback(function(err){
_8f.errback(err);
});
}
return _8f;
}});
}
if(!dojo._hasResource["dojo.window"]){
dojo._hasResource["dojo.window"]=true;
dojo.provide("dojo.window");
dojo.window.getBox=function(){
var _94=(dojo.doc.compatMode=="BackCompat")?dojo.body():dojo.doc.documentElement;
var _95=dojo._docScroll();
return {w:_94.clientWidth,h:_94.clientHeight,l:_95.x,t:_95.y};
};
dojo.window.get=function(doc){
if(dojo.isIE&&window!==document.parentWindow){
doc.parentWindow.execScript("document._parentWindow = window;","Javascript");
var win=doc._parentWindow;
doc._parentWindow=null;
return win;
}
return doc.parentWindow||doc.defaultView;
};
dojo.window.scrollIntoView=function(_96,pos){
try{
_96=dojo.byId(_96);
var doc=_96.ownerDocument||dojo.doc,_97=doc.body||dojo.body(),_98=doc.documentElement||_97.parentNode,_99=dojo.isIE,_9a=dojo.isWebKit;
if((!(dojo.isMoz||_99||_9a||dojo.isOpera)||_96==_97||_96==_98)&&(typeof _96.scrollIntoView!="undefined")){
_96.scrollIntoView(false);
return;
}
var _9b=doc.compatMode=="BackCompat",_9c=_9b?_97:_98,_9d=_9a?_97:_9c,_9e=_9c.clientWidth,_9f=_9c.clientHeight,rtl=!dojo._isBodyLtr(),_a0=pos||dojo.position(_96),el=_96.parentNode,_a1=function(el){
return ((_99<=6||(_99&&_9b))?false:(dojo.style(el,"position").toLowerCase()=="fixed"));
};
if(_a1(_96)){
return;
}
while(el){
if(el==_97){
el=_9d;
}
var _a2=dojo.position(el),_a3=_a1(el);
if(el==_9d){
_a2.w=_9e;
_a2.h=_9f;
if(_9d==_98&&_99&&rtl){
_a2.x+=_9d.offsetWidth-_a2.w;
}
if(_a2.x<0||!_99){
_a2.x=0;
}
if(_a2.y<0||!_99){
_a2.y=0;
}
}else{
var pb=dojo._getPadBorderExtents(el);
_a2.w-=pb.w;
_a2.h-=pb.h;
_a2.x+=pb.l;
_a2.y+=pb.t;
}
if(el!=_9d){
var _a4=el.clientWidth,_a5=_a2.w-_a4;
if(_a4>0&&_a5>0){
_a2.w=_a4;
if(_99&&rtl){
_a2.x+=_a5;
}
}
_a4=el.clientHeight;
_a5=_a2.h-_a4;
if(_a4>0&&_a5>0){
_a2.h=_a4;
}
}
if(_a3){
if(_a2.y<0){
_a2.h+=_a2.y;
_a2.y=0;
}
if(_a2.x<0){
_a2.w+=_a2.x;
_a2.x=0;
}
if(_a2.y+_a2.h>_9f){
_a2.h=_9f-_a2.y;
}
if(_a2.x+_a2.w>_9e){
_a2.w=_9e-_a2.x;
}
}
var l=_a0.x-_a2.x,t=_a0.y-Math.max(_a2.y,0),r=l+_a0.w-_a2.w,bot=t+_a0.h-_a2.h;
if(r*l>0){
var s=Math[l<0?"max":"min"](l,r);
_a0.x+=el.scrollLeft;
el.scrollLeft+=(_99>=8&&!_9b&&rtl)?-s:s;
_a0.x-=el.scrollLeft;
}
if(bot*t>0){
_a0.y+=el.scrollTop;
el.scrollTop+=Math[t<0?"max":"min"](t,bot);
_a0.y-=el.scrollTop;
}
el=(el!=_9d)&&!_a3&&el.parentNode;
}
}
catch(error){
console.error("scrollIntoView: "+error);
_96.scrollIntoView(false);
}
};
}
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={};
this.length=0;
},add:function(_a6){
if(this._hash[_a6.id]){
throw new Error("Tried to register widget with id=="+_a6.id+" but that id is already registered");
}
this._hash[_a6.id]=_a6;
this.length++;
},remove:function(id){
if(this._hash[id]){
delete this._hash[id];
this.length--;
}
},forEach:function(_a7,_a8){
_a8=_a8||dojo.global;
var i=0,id;
for(id in this._hash){
_a7.call(_a8,this._hash[id],i++,this._hash);
}
return this;
},filter:function(_a9,_aa){
_aa=_aa||dojo.global;
var res=new dijit.WidgetSet(),i=0,id;
for(id in this._hash){
var w=this._hash[id];
if(_a9.call(_aa,w,i++,this._hash)){
res.add(w);
}
}
return res;
},byId:function(id){
return this._hash[id];
},byClass:function(cls){
var res=new dijit.WidgetSet(),id,_ab;
for(id in this._hash){
_ab=this._hash[id];
if(_ab.declaredClass==cls){
res.add(_ab);
}
}
return res;
},toArray:function(){
var ar=[];
for(var id in this._hash){
ar.push(this._hash[id]);
}
return ar;
},map:function(_ac,_ad){
return dojo.map(this.toArray(),_ac,_ad);
},every:function(_ae,_af){
_af=_af||dojo.global;
var x=0,i;
for(i in this._hash){
if(!_ae.call(_af,this._hash[i],x++,this._hash)){
return false;
}
}
return true;
},some:function(_b0,_b1){
_b1=_b1||dojo.global;
var x=0,i;
for(i in this._hash){
if(_b0.call(_b1,this._hash[i],x++,this._hash)){
return true;
}
}
return false;
}});
(function(){
dijit.registry=new dijit.WidgetSet();
var _b2=dijit.registry._hash,_b3=dojo.attr,_b4=dojo.hasAttr,_b5=dojo.style;
dijit.byId=function(id){
return typeof id=="string"?_b2[id]:id;
};
var _b6={};
dijit.getUniqueId=function(_b7){
var id;
do{
id=_b7+"_"+(_b7 in _b6?++_b6[_b7]:_b6[_b7]=0);
}while(_b2[id]);
return dijit._scopeName=="dijit"?id:dijit._scopeName+"_"+id;
};
dijit.findWidgets=function(_b8){
var _b9=[];
function _ba(_bb){
for(var _bc=_bb.firstChild;_bc;_bc=_bc.nextSibling){
if(_bc.nodeType==1){
var _bd=_bc.getAttribute("widgetId");
if(_bd){
_b9.push(_b2[_bd]);
}else{
_ba(_bc);
}
}
}
};
_ba(_b8);
return _b9;
};
dijit._destroyAll=function(){
dijit._curFocus=null;
dijit._prevFocus=null;
dijit._activeStack=[];
dojo.forEach(dijit.findWidgets(dojo.body()),function(_be){
if(!_be._destroyed){
if(_be.destroyRecursive){
_be.destroyRecursive();
}else{
if(_be.destroy){
_be.destroy();
}
}
}
});
};
if(dojo.isIE){
dojo.addOnWindowUnload(function(){
dijit._destroyAll();
});
}
dijit.byNode=function(_bf){
return _b2[_bf.getAttribute("widgetId")];
};
dijit.getEnclosingWidget=function(_c0){
while(_c0){
var id=_c0.getAttribute&&_c0.getAttribute("widgetId");
if(id){
return _b2[id];
}
_c0=_c0.parentNode;
}
return null;
};
var _c1=(dijit._isElementShown=function(_c2){
var s=_b5(_c2);
return (s.visibility!="hidden")&&(s.visibility!="collapsed")&&(s.display!="none")&&(_b3(_c2,"type")!="hidden");
});
dijit.hasDefaultTabStop=function(_c3){
switch(_c3.nodeName.toLowerCase()){
case "a":
return _b4(_c3,"href");
case "area":
case "button":
case "input":
case "object":
case "select":
case "textarea":
return true;
case "iframe":
if(dojo.isMoz){
try{
return _c3.contentDocument.designMode=="on";
}
catch(err){
return false;
}
}else{
if(dojo.isWebKit){
var doc=_c3.contentDocument,_c4=doc&&doc.body;
return _c4&&_c4.contentEditable=="true";
}else{
try{
doc=_c3.contentWindow.document;
_c4=doc&&doc.body;
return _c4&&_c4.firstChild&&_c4.firstChild.contentEditable=="true";
}
catch(e){
return false;
}
}
}
default:
return _c3.contentEditable=="true";
}
};
var _c5=(dijit.isTabNavigable=function(_c6){
if(_b3(_c6,"disabled")){
return false;
}else{
if(_b4(_c6,"tabIndex")){
return _b3(_c6,"tabIndex")>=0;
}else{
return dijit.hasDefaultTabStop(_c6);
}
}
});
dijit._getTabNavigable=function(_c7){
var _c8,_c9,_ca,_cb,_cc,_cd;
var _ce=function(_cf){
dojo.query("> *",_cf).forEach(function(_d0){
if((dojo.isIE&&_d0.scopeName!=="HTML")||!_c1(_d0)){
return;
}
if(_c5(_d0)){
var _d1=_b3(_d0,"tabIndex");
if(!_b4(_d0,"tabIndex")||_d1==0){
if(!_c8){
_c8=_d0;
}
_c9=_d0;
}else{
if(_d1>0){
if(!_ca||_d1<_cb){
_cb=_d1;
_ca=_d0;
}
if(!_cc||_d1>=_cd){
_cd=_d1;
_cc=_d0;
}
}
}
}
if(_d0.nodeName.toUpperCase()!="SELECT"){
_ce(_d0);
}
});
};
if(_c1(_c7)){
_ce(_c7);
}
return {first:_c8,last:_c9,lowest:_ca,highest:_cc};
};
dijit.getFirstInTabbingOrder=function(_d2){
var _d3=dijit._getTabNavigable(dojo.byId(_d2));
return _d3.lowest?_d3.lowest:_d3.first;
};
dijit.getLastInTabbingOrder=function(_d4){
var _d5=dijit._getTabNavigable(dojo.byId(_d4));
return _d5.last?_d5.last:_d5.highest;
};
dijit.defaultDuration=dojo.config["defaultDuration"]||200;
})();
}
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(){
return dijit.getBookmark().isCollapsed;
},getBookmark:function(){
var bm,rg,tg,sel=dojo.doc.selection,cf=dijit._curFocus;
if(dojo.global.getSelection){
sel=dojo.global.getSelection();
if(sel){
if(sel.isCollapsed){
tg=cf?cf.tagName:"";
if(tg){
tg=tg.toLowerCase();
if(tg=="textarea"||(tg=="input"&&(!cf.type||cf.type.toLowerCase()=="text"))){
sel={start:cf.selectionStart,end:cf.selectionEnd,node:cf,pRange:true};
return {isCollapsed:(sel.end<=sel.start),mark:sel};
}
}
bm={isCollapsed:true};
}else{
rg=sel.getRangeAt(0);
bm={isCollapsed:false,mark:rg.cloneRange()};
}
}
}else{
if(sel){
tg=cf?cf.tagName:"";
tg=tg.toLowerCase();
if(cf&&tg&&(tg=="button"||tg=="textarea"||tg=="input")){
if(sel.type&&sel.type.toLowerCase()=="none"){
return {isCollapsed:true,mark:null};
}else{
rg=sel.createRange();
return {isCollapsed:rg.text&&rg.text.length?false:true,mark:{range:rg,pRange:true}};
}
}
bm={};
try{
rg=sel.createRange();
bm.isCollapsed=!(sel.type=="Text"?rg.htmlText.length:rg.length);
}
catch(e){
bm.isCollapsed=true;
return bm;
}
if(sel.type.toUpperCase()=="CONTROL"){
if(rg.length){
bm.mark=[];
var i=0,len=rg.length;
while(i<len){
bm.mark.push(rg.item(i++));
}
}else{
bm.isCollapsed=true;
bm.mark=null;
}
}else{
bm.mark=rg.getBookmark();
}
}else{
console.warn("No idea how to store the current selection for this browser!");
}
}
return bm;
},moveToBookmark:function(_d6){
var _d7=dojo.doc,_d8=_d6.mark;
if(_d8){
if(dojo.global.getSelection){
var sel=dojo.global.getSelection();
if(sel&&sel.removeAllRanges){
if(_d8.pRange){
var r=_d8;
var n=r.node;
n.selectionStart=r.start;
n.selectionEnd=r.end;
}else{
sel.removeAllRanges();
sel.addRange(_d8);
}
}else{
console.warn("No idea how to restore selection for this browser!");
}
}else{
if(_d7.selection&&_d8){
var rg;
if(_d8.pRange){
rg=_d8.range;
}else{
if(dojo.isArray(_d8)){
rg=_d7.body.createControlRange();
dojo.forEach(_d8,function(n){
rg.addElement(n);
});
}else{
rg=_d7.body.createTextRange();
rg.moveToBookmark(_d8);
}
}
rg.select();
}
}
}
},getFocus:function(_d9,_da){
var _db=!dijit._curFocus||(_d9&&dojo.isDescendant(dijit._curFocus,_d9.domNode))?dijit._prevFocus:dijit._curFocus;
return {node:_db,bookmark:(_db==dijit._curFocus)&&dojo.withGlobal(_da||dojo.global,dijit.getBookmark),openedForWindow:_da};
},focus:function(_dc){
if(!_dc){
return;
}
var _dd="node" in _dc?_dc.node:_dc,_de=_dc.bookmark,_df=_dc.openedForWindow,_e0=_de?_de.isCollapsed:false;
if(_dd){
var _e1=(_dd.tagName.toLowerCase()=="iframe")?_dd.contentWindow:_dd;
if(_e1&&_e1.focus){
try{
_e1.focus();
}
catch(e){
}
}
dijit._onFocusNode(_dd);
}
if(_de&&dojo.withGlobal(_df||dojo.global,dijit.isCollapsed)&&!_e0){
if(_df){
_df.focus();
}
try{
dojo.withGlobal(_df||dojo.global,dijit.moveToBookmark,null,[_de]);
}
catch(e2){
}
}
},_activeStack:[],registerIframe:function(_e2){
return dijit.registerWin(_e2.contentWindow,_e2);
},unregisterIframe:function(_e3){
dijit.unregisterWin(_e3);
},registerWin:function(_e4,_e5){
var _e6=function(evt){
dijit._justMouseDowned=true;
setTimeout(function(){
dijit._justMouseDowned=false;
},0);
if(dojo.isIE&&evt&&evt.srcElement&&evt.srcElement.parentNode==null){
return;
}
dijit._onTouchNode(_e5||evt.target||evt.srcElement,"mouse");
};
var doc=dojo.isIE?_e4.document.documentElement:_e4.document;
if(doc){
if(dojo.isIE){
doc.attachEvent("onmousedown",_e6);
var _e7=function(evt){
if(evt.srcElement.tagName.toLowerCase()!="#document"&&dijit.isTabNavigable(evt.srcElement)){
dijit._onFocusNode(_e5||evt.srcElement);
}else{
dijit._onTouchNode(_e5||evt.srcElement);
}
};
doc.attachEvent("onactivate",_e7);
var _e8=function(evt){
dijit._onBlurNode(_e5||evt.srcElement);
};
doc.attachEvent("ondeactivate",_e8);
return function(){
doc.detachEvent("onmousedown",_e6);
doc.detachEvent("onactivate",_e7);
doc.detachEvent("ondeactivate",_e8);
doc=null;
};
}else{
doc.addEventListener("mousedown",_e6,true);
var _e9=function(evt){
dijit._onFocusNode(_e5||evt.target);
};
doc.addEventListener("focus",_e9,true);
var _ea=function(evt){
dijit._onBlurNode(_e5||evt.target);
};
doc.addEventListener("blur",_ea,true);
return function(){
doc.removeEventListener("mousedown",_e6,true);
doc.removeEventListener("focus",_e9,true);
doc.removeEventListener("blur",_ea,true);
doc=null;
};
}
}
},unregisterWin:function(_eb){
_eb&&_eb();
},_onBlurNode:function(_ec){
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(_ed,by){
if(dijit._clearActiveWidgetsTimer){
clearTimeout(dijit._clearActiveWidgetsTimer);
delete dijit._clearActiveWidgetsTimer;
}
var _ee=[];
try{
while(_ed){
var _ef=dojo.attr(_ed,"dijitPopupParent");
if(_ef){
_ed=dijit.byId(_ef).domNode;
}else{
if(_ed.tagName&&_ed.tagName.toLowerCase()=="body"){
if(_ed===dojo.body()){
break;
}
_ed=dojo.window.get(_ed.ownerDocument).frameElement;
}else{
var id=_ed.getAttribute&&_ed.getAttribute("widgetId"),_f0=id&&dijit.byId(id);
if(_f0&&!(by=="mouse"&&_f0.get("disabled"))){
_ee.unshift(id);
}
_ed=_ed.parentNode;
}
}
}
}
catch(e){
}
dijit._setStack(_ee,by);
},_onFocusNode:function(_f1){
if(!_f1){
return;
}
if(_f1.nodeType==9){
return;
}
dijit._onTouchNode(_f1);
if(_f1==dijit._curFocus){
return;
}
if(dijit._curFocus){
dijit._prevFocus=dijit._curFocus;
}
dijit._curFocus=_f1;
dojo.publish("focusNode",[_f1]);
},_setStack:function(_f2,by){
var _f3=dijit._activeStack;
dijit._activeStack=_f2;
for(var _f4=0;_f4<Math.min(_f3.length,_f2.length);_f4++){
if(_f3[_f4]!=_f2[_f4]){
break;
}
}
var _f5;
for(var i=_f3.length-1;i>=_f4;i--){
_f5=dijit.byId(_f3[i]);
if(_f5){
_f5._focused=false;
_f5._hasBeenBlurred=true;
if(_f5._onBlur){
_f5._onBlur(by);
}
dojo.publish("widgetBlur",[_f5,by]);
}
}
for(i=_f4;i<_f2.length;i++){
_f5=dijit.byId(_f2[i]);
if(_f5){
_f5._focused=true;
if(_f5._onFocus){
_f5._onFocus(by);
}
dojo.publish("widgetFocus",[_f5,by]);
}
}
}});
dojo.addOnLoad(function(){
var _f6=dijit.registerWin(window);
if(dojo.isIE){
dojo.addOnWindowUnload(function(){
dijit.unregisterWin(_f6);
_f6=null;
});
}
});
}
if(!dojo._hasResource["dojo.AdapterRegistry"]){
dojo._hasResource["dojo.AdapterRegistry"]=true;
dojo.provide("dojo.AdapterRegistry");
dojo.AdapterRegistry=function(_f7){
this.pairs=[];
this.returnWrappers=_f7||false;
};
dojo.extend(dojo.AdapterRegistry,{register:function(_f8,_f9,_fa,_fb,_fc){
this.pairs[((_fc)?"unshift":"push")]([_f8,_f9,_fa,_fb]);
},match:function(){
for(var i=0;i<this.pairs.length;i++){
var _fd=this.pairs[i];
if(_fd[1].apply(this,arguments)){
if((_fd[3])||(this.returnWrappers)){
return _fd[2];
}else{
return _fd[2].apply(this,arguments);
}
}
}
throw new Error("No match found");
},unregister:function(_fe){
for(var i=0;i<this.pairs.length;i++){
var _ff=this.pairs[i];
if(_ff[0]==_fe){
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(){
return dojo.window.getBox();
};
dijit.placeOnScreen=function(node,pos,_100,_101){
var _102=dojo.map(_100,function(_103){
var c={corner:_103,pos:{x:pos.x,y:pos.y}};
if(_101){
c.pos.x+=_103.charAt(1)=="L"?_101.x:-_101.x;
c.pos.y+=_103.charAt(0)=="T"?_101.y:-_101.y;
}
return c;
});
return dijit._place(node,_102);
};
dijit._place=function(node,_104,_105){
var view=dojo.window.getBox();
if(!node.parentNode||String(node.parentNode.tagName).toLowerCase()!="body"){
dojo.body().appendChild(node);
}
var best=null;
dojo.some(_104,function(_106){
var _107=_106.corner;
var pos=_106.pos;
if(_105){
_105(node,_106.aroundCorner,_107);
}
var _108=node.style;
var _109=_108.display;
var _10a=_108.visibility;
_108.visibility="hidden";
_108.display="";
var mb=dojo.marginBox(node);
_108.display=_109;
_108.visibility=_10a;
var _10b=Math.max(view.l,_107.charAt(1)=="L"?pos.x:(pos.x-mb.w)),_10c=Math.max(view.t,_107.charAt(0)=="T"?pos.y:(pos.y-mb.h)),endX=Math.min(view.l+view.w,_107.charAt(1)=="L"?(_10b+mb.w):pos.x),endY=Math.min(view.t+view.h,_107.charAt(0)=="T"?(_10c+mb.h):pos.y),_10d=endX-_10b,_10e=endY-_10c,_10f=(mb.w-_10d)+(mb.h-_10e);
if(best==null||_10f<best.overflow){
best={corner:_107,aroundCorner:_106.aroundCorner,x:_10b,y:_10c,w:_10d,h:_10e,overflow:_10f};
}
return !_10f;
});
node.style.left=best.x+"px";
node.style.top=best.y+"px";
if(best.overflow&&_105){
_105(node,best.aroundCorner,best.corner);
}
return best;
};
dijit.placeOnScreenAroundNode=function(node,_110,_111,_112){
_110=dojo.byId(_110);
var _113=_110.style.display;
_110.style.display="";
var _114=dojo.position(_110,true);
_110.style.display=_113;
return dijit._placeOnScreenAroundRect(node,_114.x,_114.y,_114.w,_114.h,_111,_112);
};
dijit.placeOnScreenAroundRectangle=function(node,_115,_116,_117){
return dijit._placeOnScreenAroundRect(node,_115.x,_115.y,_115.width,_115.height,_116,_117);
};
dijit._placeOnScreenAroundRect=function(node,x,y,_118,_119,_11a,_11b){
var _11c=[];
for(var _11d in _11a){
_11c.push({aroundCorner:_11d,corner:_11a[_11d],pos:{x:x+(_11d.charAt(1)=="L"?0:_118),y:y+(_11d.charAt(0)=="T"?0:_119)}});
}
return dijit._place(node,_11c,_11b);
};
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,_11e,_11f,_120){
return dijit.placementRegistry.match.apply(dijit.placementRegistry,arguments);
};
dijit.getPopupAroundAlignment=function(_121,_122){
var _123={};
dojo.forEach(_121,function(pos){
switch(pos){
case "after":
_123[_122?"BR":"BL"]=_122?"BL":"BR";
break;
case "before":
_123[_122?"BL":"BR"]=_122?"BR":"BL";
break;
case "below":
_123[_122?"BL":"BR"]=_122?"TL":"TR";
_123[_122?"BR":"BL"]=_122?"TR":"TL";
break;
case "above":
default:
_123[_122?"TL":"TR"]=_122?"BL":"BR";
_123[_122?"TR":"TL"]=_122?"BR":"BL";
break;
}
});
return _123;
};
}
if(!dojo._hasResource["dijit._base.window"]){
dojo._hasResource["dijit._base.window"]=true;
dojo.provide("dijit._base.window");
dijit.getDocumentWindow=function(doc){
return dojo.window.get(doc);
};
}
if(!dojo._hasResource["dijit._base.popup"]){
dojo._hasResource["dijit._base.popup"]=true;
dojo.provide("dijit._base.popup");
dijit.popup={_stack:[],_beginZIndex:1000,_idGen:1,moveOffScreen:function(node){
var _124=node.parentNode;
if(!_124||!dojo.hasClass(_124,"dijitPopup")){
_124=dojo.create("div",{"class":"dijitPopup",style:{visibility:"hidden",top:"-9999px"}},dojo.body());
dijit.setWaiRole(_124,"presentation");
_124.appendChild(node);
}
var s=node.style;
s.display="";
s.visibility="";
s.position="";
s.top="0px";
dojo.style(_124,{visibility:"hidden",top:"-9999px"});
},getTopPopup:function(){
var _125=this._stack;
for(var pi=_125.length-1;pi>0&&_125[pi].parent===_125[pi-1].widget;pi--){
}
return _125[pi];
},open:function(args){
var _126=this._stack,_127=args.popup,_128=args.orient||((args.parent?args.parent.isLeftToRight():dojo._isBodyLtr())?{"BL":"TL","BR":"TR","TL":"BL","TR":"BR"}:{"BR":"TR","BL":"TL","TR":"BR","TL":"BL"}),_129=args.around,id=(args.around&&args.around.id)?(args.around.id+"_dropdown"):("popup_"+this._idGen++);
var _12a=_127.domNode.parentNode;
if(!_12a||!dojo.hasClass(_12a,"dijitPopup")){
this.moveOffScreen(_127.domNode);
_12a=_127.domNode.parentNode;
}
dojo.attr(_12a,{id:id,style:{zIndex:this._beginZIndex+_126.length},"class":"dijitPopup "+(_127.baseClass||_127["class"]||"").split(" ")[0]+"Popup",dijitPopupParent:args.parent?args.parent.id:""});
if(dojo.isIE||dojo.isMoz){
var _12b=_12a.childNodes[1];
if(!_12b){
_12b=new dijit.BackgroundIframe(_12a);
}
}
var best=_129?dijit.placeOnScreenAroundElement(_12a,_129,_128,_127.orient?dojo.hitch(_127,"orient"):null):dijit.placeOnScreen(_12a,args,_128=="R"?["TR","BR","TL","BL"]:["TL","BL","TR","BR"],args.padding);
_12a.style.visibility="visible";
_127.domNode.style.visibility="visible";
var _12c=[];
_12c.push(dojo.connect(_12a,"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 _12d=this.getTopPopup();
if(_12d&&_12d.onCancel){
_12d.onCancel();
}
}
}
}));
if(_127.onCancel){
_12c.push(dojo.connect(_127,"onCancel",args.onCancel));
}
_12c.push(dojo.connect(_127,_127.onExecute?"onExecute":"onChange",this,function(){
var _12e=this.getTopPopup();
if(_12e&&_12e.onExecute){
_12e.onExecute();
}
}));
_126.push({wrapper:_12a,iframe:_12b,widget:_127,parent:args.parent,onExecute:args.onExecute,onCancel:args.onCancel,onClose:args.onClose,handlers:_12c});
if(_127.onOpen){
_127.onOpen(best);
}
return best;
},close:function(_12f){
var _130=this._stack;
while(dojo.some(_130,function(elem){
return elem.widget==_12f;
})){
var top=_130.pop(),_131=top.wrapper,_132=top.iframe,_133=top.widget,_134=top.onClose;
if(_133.onClose){
_133.onClose();
}
dojo.forEach(top.handlers,dojo.disconnect);
if(_133&&_133.domNode){
this.moveOffScreen(_133.domNode);
}else{
dojo.destroy(_131);
}
if(_134){
_134();
}
}
}};
dijit._frames=new function(){
var _135=[];
this.pop=function(){
var _136;
if(_135.length){
_136=_135.pop();
_136.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\");'>";
_136=dojo.doc.createElement(html);
}else{
_136=dojo.create("iframe");
_136.src="javascript:\"\"";
_136.className="dijitBackgroundIframe";
dojo.style(_136,"opacity",0.1);
}
_136.tabIndex=-1;
dijit.setWaiRole(_136,"presentation");
}
return _136;
};
this.push=function(_137){
_137.style.display="none";
_135.push(_137);
};
}();
dijit.BackgroundIframe=function(node){
if(!node.id){
throw new Error("no id");
}
if(dojo.isIE||dojo.isMoz){
var _138=dijit._frames.pop();
node.appendChild(_138);
if(dojo.isIE<7){
this.resize(node);
this._conn=dojo.connect(node,"onresize",this,function(){
this.resize(node);
});
}else{
dojo.style(_138,{width:"100%",height:"100%"});
}
this.iframe=_138;
}
};
dojo.extend(dijit.BackgroundIframe,{resize:function(node){
if(this.iframe&&dojo.isIE<7){
dojo.style(this.iframe,{width:node.offsetWidth+"px",height:node.offsetHeight+"px"});
}
},destroy:function(){
if(this._conn){
dojo.disconnect(this._conn);
this._conn=null;
}
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,pos){
dojo.window.scrollIntoView(node,pos);
};
}
if(!dojo._hasResource["dojo.uacss"]){
dojo._hasResource["dojo.uacss"]=true;
dojo.provide("dojo.uacss");
(function(){
var d=dojo,html=d.doc.documentElement,ie=d.isIE,_139=d.isOpera,maj=Math.floor,ff=d.isFF,_13a=d.boxModel.replace(/-/,""),_13b={dj_ie:ie,dj_ie6:maj(ie)==6,dj_ie7:maj(ie)==7,dj_ie8:maj(ie)==8,dj_quirks:d.isQuirks,dj_iequirks:ie&&d.isQuirks,dj_opera:_139,dj_khtml:d.isKhtml,dj_webkit:d.isWebKit,dj_safari:d.isSafari,dj_chrome:d.isChrome,dj_gecko:d.isMozilla,dj_ff3:maj(ff)==3};
_13b["dj_"+_13a]=true;
var _13c="";
for(var clz in _13b){
if(_13b[clz]){
_13c+=clz+" ";
}
}
html.className=d.trim(html.className+" "+_13c);
dojo._loaders.unshift(function(){
if(!dojo._isBodyLtr()){
var _13d="dj_rtl dijitRtl "+_13c.replace(/ /g,"-rtl ");
html.className=d.trim(html.className+" "+_13d);
}
});
})();
}
if(!dojo._hasResource["dijit._base.sniff"]){
dojo._hasResource["dijit._base.sniff"]=true;
dojo.provide("dijit._base.sniff");
}
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=Math.max(this._currentTimeout<0?this._initialDelay:(this._subsequentDelay>1?this._subsequentDelay:Math.round(this._currentTimeout*this._subsequentDelay)),this._minDelay);
this._timer=setTimeout(dojo.hitch(this,"_fireEventAndReload"),this._currentTimeout);
},trigger:function(evt,_13e,node,_13f,obj,_140,_141,_142){
if(obj!=this._obj){
this.stop();
this._initialDelay=_141||500;
this._subsequentDelay=_140||0.9;
this._minDelay=_142||10;
this._obj=obj;
this._evt=evt;
this._node=node;
this._currentTimeout=-1;
this._count=-1;
this._callback=dojo.hitch(_13e,_13f);
this._fireEventAndReload();
this._evt=dojo.mixin({faux:true},evt);
}
},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,_143,_144,_145,_146,_147,_148){
if(_143.keyCode){
_143.charOrCode=_143.keyCode;
dojo.deprecated("keyCode attribute parameter for dijit.typematic.addKeyListener is deprecated. Use charOrCode instead.","","2.0");
}else{
if(_143.charCode){
_143.charOrCode=String.fromCharCode(_143.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==_143.charOrCode&&(_143.ctrlKey===undefined||_143.ctrlKey==evt.ctrlKey)&&(_143.altKey===undefined||_143.altKey==evt.altKey)&&(_143.metaKey===undefined||_143.metaKey==(evt.metaKey||false))&&(_143.shiftKey===undefined||_143.shiftKey==evt.shiftKey)){
dojo.stopEvent(evt);
dijit.typematic.trigger(evt,_144,node,_145,_143,_146,_147,_148);
}else{
if(dijit.typematic._obj==_143){
dijit.typematic.stop();
}
}
}),dojo.connect(node,"onkeyup",this,function(evt){
if(dijit.typematic._obj==_143){
dijit.typematic.stop();
}
})];
},addMouseListener:function(node,_149,_14a,_14b,_14c,_14d){
var dc=dojo.connect;
return [dc(node,"mousedown",this,function(evt){
dojo.stopEvent(evt);
dijit.typematic.trigger(evt,_149,node,_14a,node,_14b,_14c,_14d);
}),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){
evt.preventDefault();
}),dc(node,"dblclick",this,function(evt){
dojo.stopEvent(evt);
if(dojo.isIE){
dijit.typematic.trigger(evt,_149,node,_14a,node,_14b,_14c,_14d);
setTimeout(dojo.hitch(this,dijit.typematic.stop),50);
}
})];
},addListener:function(_14e,_14f,_150,_151,_152,_153,_154,_155){
return this.addKeyListener(_14f,_150,_151,_152,_153,_154,_155).concat(this.addMouseListener(_14e,_151,_152,_153,_154,_155));
}};
}
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 _156=cs.backgroundImage;
var _157=(cs.borderTopColor==cs.borderRightColor)||(_156!=null&&(_156=="none"||_156=="url(invalid-url:)"));
dojo[_157?"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 _158=this.getWaiRole(elem);
return role?(_158.indexOf(role)>-1):(_158.length>0);
},getWaiRole:function(elem){
return dojo.trim((dojo.attr(elem,"role")||"").replace(this._XhtmlRoles,"").replace("wairole:",""));
},setWaiRole:function(elem,role){
var _159=dojo.attr(elem,"role")||"";
if(!this._XhtmlRoles.test(_159)){
dojo.attr(elem,"role",role);
}else{
if((" "+_159+" ").indexOf(" "+role+" ")<0){
var _15a=dojo.trim(_159.replace(this._XhtmlRoles,""));
var _15b=dojo.trim(_159.replace(_15a,""));
dojo.attr(elem,"role",_15b+(_15b?" ":"")+role);
}
}
},removeWaiRole:function(elem,role){
var _15c=dojo.attr(elem,"role");
if(!_15c){
return;
}
if(role){
var t=dojo.trim((" "+_15c+" ").replace(" "+role+" "," "));
dojo.attr(elem,"role",t);
}else{
elem.removeAttribute("role");
}
},hasWaiState:function(elem,_15d){
return elem.hasAttribute?elem.hasAttribute("aria-"+_15d):!!elem.getAttribute("aria-"+_15d);
},getWaiState:function(elem,_15e){
return elem.getAttribute("aria-"+_15e)||"";
},setWaiState:function(elem,_15f,_160){
elem.setAttribute("aria-"+_15f,_160);
},removeWaiState:function(elem,_161){
elem.removeAttribute("aria-"+_161);
}});
}
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(_162,_163){
if(_162&&dojo.isFunction(_162._onConnect)){
_162._onConnect(_163);
}
});
dijit._connectOnUseEventHandler=function(_164){
};
dijit._lastKeyDownNode=null;
if(dojo.isIE){
(function(){
var _165=function(evt){
dijit._lastKeyDownNode=evt.srcElement;
};
dojo.doc.attachEvent("onkeydown",_165);
dojo.addOnWindowUnload(function(){
dojo.doc.detachEvent("onkeydown",_165);
});
})();
}else{
dojo.doc.addEventListener("keydown",function(evt){
dijit._lastKeyDownNode=evt.target;
},true);
}
(function(){
var _166={},_167=function(_168){
var dc=_168.declaredClass;
if(!_166[dc]){
var r=[],_169,_16a=_168.constructor.prototype;
for(var _16b in _16a){
if(dojo.isFunction(_16a[_16b])&&(_169=_16b.match(/^_set([a-zA-Z]*)Attr$/))&&_169[1]){
r.push(_169[1].charAt(0).toLowerCase()+_169[1].substr(1));
}
}
_166[dc]=r;
}
return _166[dc]||[];
};
dojo.declare("dijit._Widget",null,{id:"",lang:"",dir:"","class":"",style:"",title:"",tooltip:"",baseClass:"",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")).toString(),postscript:function(_16c,_16d){
this.create(_16c,_16d);
},create:function(_16e,_16f){
this.srcNodeRef=dojo.byId(_16f);
this._connects=[];
this._subscribes=[];
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(_16e){
this.params=_16e;
dojo.mixin(this,_16e);
}
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 _170=this.srcNodeRef;
if(_170&&_170.parentNode){
_170.parentNode.replaceChild(this.domNode,_170);
}
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 _171=function(attr,_172){
if((_172.params&&attr in _172.params)||_172[attr]){
_172.set(attr,_172[attr]);
}
};
for(var attr in this.attributeMap){
_171(attr,this);
}
dojo.forEach(_167(this),function(a){
if(!(a in this.attributeMap)){
_171(a,this);
}
},this);
},postMixInProperties:function(){
},buildRendering:function(){
this.domNode=this.srcNodeRef||dojo.create("div");
},postCreate:function(){
if(this.baseClass){
var _173=this.baseClass.split(" ");
if(!this.isLeftToRight()){
_173=_173.concat(dojo.map(_173,function(name){
return name+"Rtl";
}));
}
dojo.addClass(this.domNode,_173);
}
},startup:function(){
this._started=true;
},destroyRecursive:function(_174){
this._beingDestroyed=true;
this.destroyDescendants(_174);
this.destroy(_174);
},destroy:function(_175){
this._beingDestroyed=true;
this.uninitialize();
var d=dojo,dfe=d.forEach,dun=d.unsubscribe;
dfe(this._connects,function(_176){
dfe(_176,d.disconnect);
});
dfe(this._subscribes,function(_177){
dun(_177);
});
dfe(this._supportingWidgets||[],function(w){
if(w.destroyRecursive){
w.destroyRecursive();
}else{
if(w.destroy){
w.destroy();
}
}
});
this.destroyRendering(_175);
dijit.registry.remove(this.id);
this._destroyed=true;
},destroyRendering:function(_178){
if(this.bgIframe){
this.bgIframe.destroy(_178);
delete this.bgIframe;
}
if(this.domNode){
if(_178){
dojo.removeAttr(this.domNode,"widgetId");
}else{
dojo.destroy(this.domNode);
}
delete this.domNode;
}
if(this.srcNodeRef){
if(!_178){
dojo.destroy(this.srcNodeRef);
}
delete this.srcNodeRef;
}
},destroyDescendants:function(_179){
dojo.forEach(this.getChildren(),function(_17a){
if(_17a.destroyRecursive){
_17a.destroyRecursive(_179);
}
});
},uninitialize:function(){
return false;
},onFocus:function(){
},onBlur:function(){
},_onFocus:function(e){
this.onFocus();
},_onBlur:function(){
this.onBlur();
},_onConnect:function(_17b){
if(_17b in this._deferredConnects){
var _17c=this[this._deferredConnects[_17b]||"domNode"];
this.connect(_17c,_17b.toLowerCase(),_17b);
delete this._deferredConnects[_17b];
}
},_setClassAttr:function(_17d){
var _17e=this[this.attributeMap["class"]||"domNode"];
dojo.removeClass(_17e,this["class"]);
this["class"]=_17d;
dojo.addClass(_17e,_17d);
},_setStyleAttr:function(_17f){
var _180=this[this.attributeMap.style||"domNode"];
if(dojo.isObject(_17f)){
dojo.style(_180,_17f);
}else{
if(_180.style.cssText){
_180.style.cssText+="; "+_17f;
}else{
_180.style.cssText=_17f;
}
}
this.style=_17f;
},setAttribute:function(attr,_181){
dojo.deprecated(this.declaredClass+"::setAttribute(attr, value) is deprecated. Use set() instead.","","2.0");
this.set(attr,_181);
},_attrToDom:function(attr,_182){
var _183=this.attributeMap[attr];
dojo.forEach(dojo.isArray(_183)?_183:[_183],function(_184){
var _185=this[_184.node||_184||"domNode"];
var type=_184.type||"attribute";
switch(type){
case "attribute":
if(dojo.isFunction(_182)){
_182=dojo.hitch(this,_182);
}
var _186=_184.attribute?_184.attribute:(/^on[A-Z][a-zA-Z]*$/.test(attr)?attr.toLowerCase():attr);
dojo.attr(_185,_186,_182);
break;
case "innerText":
_185.innerHTML="";
_185.appendChild(dojo.doc.createTextNode(_182));
break;
case "innerHTML":
_185.innerHTML=_182;
break;
case "class":
dojo.removeClass(_185,this[attr]);
dojo.addClass(_185,_182);
break;
}
},this);
this[attr]=_182;
},attr:function(name,_187){
if(dojo.config.isDebug){
var _188=arguments.callee._ach||(arguments.callee._ach={}),_189=(arguments.callee.caller||"unknown caller").toString();
if(!_188[_189]){
dojo.deprecated(this.declaredClass+"::attr() is deprecated. Use get() or set() instead, called from "+_189,"","2.0");
_188[_189]=true;
}
}
var args=arguments.length;
if(args>=2||typeof name==="object"){
return this.set.apply(this,arguments);
}else{
return this.get(name);
}
},get:function(name){
var _18a=this._getAttrNames(name);
return this[_18a.g]?this[_18a.g]():this[name];
},set:function(name,_18b){
if(typeof name==="object"){
for(var x in name){
this.set(x,name[x]);
}
return this;
}
var _18c=this._getAttrNames(name);
if(this[_18c.s]){
var _18d=this[_18c.s].apply(this,Array.prototype.slice.call(arguments,1));
}else{
if(name in this.attributeMap){
this._attrToDom(name,_18b);
}
var _18e=this[name];
this[name]=_18b;
}
return _18d||this;
},_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(){
return this.containerNode?dojo.query("[widgetId]",this.containerNode).map(dijit.byNode):[];
},getChildren:function(){
return this.containerNode?dijit.findWidgets(this.containerNode):[];
},nodesWithKeyClick:["input","button"],connect:function(obj,_18f,_190){
var d=dojo,dc=d._connect,_191=[];
if(_18f=="ondijitclick"){
if(dojo.indexOf(this.nodesWithKeyClick,obj.nodeName.toLowerCase())==-1){
var m=d.hitch(this,_190);
_191.push(dc(obj,"onkeydown",this,function(e){
if((e.keyCode==d.keys.ENTER||e.keyCode==d.keys.SPACE)&&!e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey){
dijit._lastKeyDownNode=e.target;
e.preventDefault();
}
}),dc(obj,"onkeyup",this,function(e){
if((e.keyCode==d.keys.ENTER||e.keyCode==d.keys.SPACE)&&e.target===dijit._lastKeyDownNode&&!e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey){
dijit._lastKeyDownNode=null;
return m(e);
}
}));
}
_18f="onclick";
}
_191.push(dc(obj,_18f,this,_190));
this._connects.push(_191);
return _191;
},disconnect:function(_192){
for(var i=0;i<this._connects.length;i++){
if(this._connects[i]==_192){
dojo.forEach(_192,dojo.disconnect);
this._connects.splice(i,1);
return;
}
}
},subscribe:function(_193,_194){
var d=dojo,_195=d.subscribe(_193,this,_194);
this._subscribes.push(_195);
return _195;
},unsubscribe:function(_196){
for(var i=0;i<this._subscribes.length;i++){
if(this._subscribes[i]==_196){
dojo.unsubscribe(_196);
this._subscribes.splice(i,1);
return;
}
}
},isLeftToRight:function(){
return this.dir?(this.dir=="ltr"):dojo._isBodyLtr();
},isFocusable:function(){
return this.focus&&(dojo.style(this.domNode,"display")!="none");
},placeAt:function(_197,_198){
if(_197.declaredClass&&_197.addChild){
_197.addChild(this,_198);
}else{
dojo.place(this.domNode,_197,_198);
}
return this;
},_onShow:function(){
this.onShow();
},onShow:function(){
},onHide:function(){
},onClose:function(){
return true;
}});
})();
}
if(!dojo._hasResource["dijit._Contained"]){
dojo._hasResource["dijit._Contained"]=true;
dojo.provide("dijit._Contained");
dojo.declare("dijit._Contained",null,{getParent:function(){
var _199=dijit.getEnclosingWidget(this.domNode.parentNode);
return _199&&_199.isContainer?_199:null;
},_getSibling:function(_19a){
var node=this.domNode;
do{
node=node[_19a+"Sibling"];
}while(node&&node.nodeType!=1);
return node&&dijit.byNode(node);
},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(_19b,_19c){
var _19d=this.containerNode;
if(_19c&&typeof _19c=="number"){
var _19e=this.getChildren();
if(_19e&&_19e.length>=_19c){
_19d=_19e[_19c-1].domNode;
_19c="after";
}
}
dojo.place(_19b.domNode,_19d,_19c);
if(this._started&&!_19b._started){
_19b.startup();
}
},removeChild:function(_19f){
if(typeof _19f=="number"&&_19f>0){
_19f=this.getChildren()[_19f];
}
if(_19f){
var node=_19f.domNode;
if(node&&node.parentNode){
node.parentNode.removeChild(node);
}
}
},hasChildren:function(){
return this.getChildren().length>0;
},destroyDescendants:function(_1a0){
dojo.forEach(this.getChildren(),function(_1a1){
_1a1.destroyRecursive(_1a0);
});
},_getSiblingOfChild:function(_1a2,dir){
var node=_1a2.domNode,_1a3=(dir>0?"nextSibling":"previousSibling");
do{
node=node[_1a3];
}while(node&&(node.nodeType!=1||!dijit.byNode(node)));
return node&&dijit.byNode(node);
},getIndexOfChild:function(_1a4){
return dojo.indexOf(this.getChildren(),_1a4);
},startup:function(){
if(this._started){
return;
}
dojo.forEach(this.getChildren(),function(_1a5){
_1a5.startup();
});
this.inherited(arguments);
}});
}
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");
this.inherited(arguments);
},startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
var _1a6=this.getParent&&this.getParent();
if(!(_1a6&&_1a6.isLayoutContainer)){
this.resize();
this.connect(dojo.isIE?this.domNode:dojo.global,"onresize",function(){
this.resize();
});
}
},resize:function(_1a7,_1a8){
var node=this.domNode;
if(_1a7){
dojo.marginBox(node,_1a7);
if(_1a7.t){
node.style.top=_1a7.t+"px";
}
if(_1a7.l){
node.style.left=_1a7.l+"px";
}
}
var mb=_1a8||{};
dojo.mixin(mb,_1a7||{});
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(_1a9){
dojo.addClass(_1a9.domNode,this.baseClass+"-child");
if(_1a9.baseClass){
dojo.addClass(_1a9.domNode,this.baseClass+"-"+_1a9.baseClass);
}
},addChild:function(_1aa,_1ab){
this.inherited(arguments);
if(this._started){
this._setupChild(_1aa);
}
},removeChild:function(_1ac){
dojo.removeClass(_1ac.domNode,this.baseClass+"-child");
if(_1ac.baseClass){
dojo.removeClass(_1ac.domNode,this.baseClass+"-"+_1ac.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 _1ad=function(word){
return word.substring(0,1).toUpperCase()+word.substring(1);
};
var size=function(_1ae,dim){
_1ae.resize?_1ae.resize(dim):dojo.marginBox(_1ae.domNode,dim);
dojo.mixin(_1ae,dojo.marginBox(_1ae.domNode));
dojo.mixin(_1ae,dim);
};
dijit.layout.layoutChildren=function(_1af,dim,_1b0){
dim=dojo.mixin({},dim);
dojo.addClass(_1af,"dijitLayoutContainer");
_1b0=dojo.filter(_1b0,function(item){
return item.layoutAlign!="client";
}).concat(dojo.filter(_1b0,function(item){
return item.layoutAlign=="client";
}));
dojo.forEach(_1b0,function(_1b1){
var elm=_1b1.domNode,pos=_1b1.layoutAlign;
var _1b2=elm.style;
_1b2.left=dim.l+"px";
_1b2.top=dim.t+"px";
_1b2.bottom=_1b2.right="auto";
dojo.addClass(elm,"dijitAlign"+_1ad(pos));
if(pos=="top"||pos=="bottom"){
size(_1b1,{w:dim.w});
dim.h-=_1b1.h;
if(pos=="top"){
dim.t+=_1b1.h;
}else{
_1b2.top=dim.t+dim.h+"px";
}
}else{
if(pos=="left"||pos=="right"){
size(_1b1,{h:dim.h});
dim.w-=_1b1.w;
if(pos=="left"){
dim.l+=_1b1.w;
}else{
_1b2.left=dim.l+dim.w+"px";
}
}else{
if(pos=="client"){
size(_1b1,dim);
}
}
}
});
};
})();
}
if(!dojo._hasResource["dojo.date.stamp"]){
dojo._hasResource["dojo.date.stamp"]=true;
dojo.provide("dojo.date.stamp");
dojo.date.stamp.fromISOString=function(_1b3,_1b4){
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 _1b5=dojo.date.stamp._isoRegExp.exec(_1b3),_1b6=null;
if(_1b5){
_1b5.shift();
if(_1b5[1]){
_1b5[1]--;
}
if(_1b5[6]){
_1b5[6]*=1000;
}
if(_1b4){
_1b4=new Date(_1b4);
dojo.forEach(dojo.map(["FullYear","Month","Date","Hours","Minutes","Seconds","Milliseconds"],function(prop){
return _1b4["get"+prop]();
}),function(_1b7,_1b8){
_1b5[_1b8]=_1b5[_1b8]||_1b7;
});
}
_1b6=new Date(_1b5[0]||1970,_1b5[1]||0,_1b5[2]||1,_1b5[3]||0,_1b5[4]||0,_1b5[5]||0,_1b5[6]||0);
if(_1b5[0]<100){
_1b6.setFullYear(_1b5[0]||1970);
}
var _1b9=0,_1ba=_1b5[7]&&_1b5[7].charAt(0);
if(_1ba!="Z"){
_1b9=((_1b5[8]||0)*60)+(Number(_1b5[9])||0);
if(_1ba!="-"){
_1b9*=-1;
}
}
if(_1ba){
_1b9-=_1b6.getTimezoneOffset();
}
if(_1b9){
_1b6.setTime(_1b6.getTime()+_1b9*60000);
}
}
return _1b6;
};
dojo.date.stamp.toISOString=function(_1bb,_1bc){
var _1bd=function(n){
return (n<10)?"0"+n:n;
};
_1bc=_1bc||{};
var _1be=[],_1bf=_1bc.zulu?"getUTC":"get",date="";
if(_1bc.selector!="time"){
var year=_1bb[_1bf+"FullYear"]();
date=["0000".substr((year+"").length)+year,_1bd(_1bb[_1bf+"Month"]()+1),_1bd(_1bb[_1bf+"Date"]())].join("-");
}
_1be.push(date);
if(_1bc.selector!="date"){
var time=[_1bd(_1bb[_1bf+"Hours"]()),_1bd(_1bb[_1bf+"Minutes"]()),_1bd(_1bb[_1bf+"Seconds"]())].join(":");
var _1c0=_1bb[_1bf+"Milliseconds"]();
if(_1bc.milliseconds){
time+="."+(_1c0<100?"0":"")+_1bd(_1c0);
}
if(_1bc.zulu){
time+="Z";
}else{
if(_1bc.selector!="time"){
var _1c1=_1bb.getTimezoneOffset();
var _1c2=Math.abs(_1c1);
time+=(_1c1>0?"-":"+")+_1bd(Math.floor(_1c2/60))+":"+_1bd(_1c2%60);
}
}
_1be.push(time);
}
return _1be.join("T");
};
}
if(!dojo._hasResource["dojo.parser"]){
dojo._hasResource["dojo.parser"]=true;
dojo.provide("dojo.parser");
new Date("X");
dojo.parser=new function(){
var d=dojo;
this._attrName=d._scopeName+"Type";
this._query="["+this._attrName+"]";
function _1c3(_1c4){
if(d.isString(_1c4)){
return "string";
}
if(typeof _1c4=="number"){
return "number";
}
if(typeof _1c4=="boolean"){
return "boolean";
}
if(d.isFunction(_1c4)){
return "function";
}
if(d.isArray(_1c4)){
return "array";
}
if(_1c4 instanceof Date){
return "date";
}
if(_1c4 instanceof d._Url){
return "url";
}
return "object";
};
function _1c5(_1c6,type){
switch(type){
case "string":
return _1c6;
case "number":
return _1c6.length?Number(_1c6):NaN;
case "boolean":
return typeof _1c6=="boolean"?_1c6:!(_1c6.toLowerCase()=="false");
case "function":
if(d.isFunction(_1c6)){
_1c6=_1c6.toString();
_1c6=d.trim(_1c6.substring(_1c6.indexOf("{")+1,_1c6.length-1));
}
try{
if(_1c6===""||_1c6.search(/[^\w\.]+/i)!=-1){
return new Function(_1c6);
}else{
return d.getObject(_1c6,false)||new Function(_1c6);
}
}
catch(e){
return new Function();
}
case "array":
return _1c6?_1c6.split(/\s*,\s*/):[];
case "date":
switch(_1c6){
case "":
return new Date("");
case "now":
return new Date();
default:
return d.date.stamp.fromISOString(_1c6);
}
case "url":
return d.baseUrl+_1c6;
default:
return d.fromJson(_1c6);
}
};
var _1c7={};
dojo.connect(dojo,"extend",function(){
_1c7={};
});
function _1c8(_1c9){
if(!_1c7[_1c9]){
var cls=d.getObject(_1c9);
if(!cls){
return null;
}
var _1ca=cls.prototype;
var _1cb={},_1cc={};
for(var name in _1ca){
if(name.charAt(0)=="_"){
continue;
}
if(name in _1cc){
continue;
}
var _1cd=_1ca[name];
_1cb[name]=_1c3(_1cd);
}
_1c7[_1c9]={cls:cls,params:_1cb};
}
return _1c7[_1c9];
};
this._functionFromScript=function(_1ce){
var _1cf="";
var _1d0="";
var _1d1=_1ce.getAttribute("args");
if(_1d1){
d.forEach(_1d1.split(/\s*,\s*/),function(part,idx){
_1cf+="var "+part+" = arguments["+idx+"]; ";
});
}
var _1d2=_1ce.getAttribute("with");
if(_1d2&&_1d2.length){
d.forEach(_1d2.split(/\s*,\s*/),function(part){
_1cf+="with("+part+"){";
_1d0+="}";
});
}
return new Function(_1cf+_1ce.innerHTML+_1d0);
};
this.instantiate=function(_1d3,_1d4,args){
var _1d5=[],dp=dojo.parser;
_1d4=_1d4||{};
args=args||{};
d.forEach(_1d3,function(obj){
if(!obj){
return;
}
var node,type,_1d6,_1d7,_1d8;
if(obj.node){
node=obj.node;
type=obj.type;
_1d6=obj.clsInfo||(type&&_1c8(type));
_1d7=_1d6&&_1d6.cls;
_1d8=obj.scripts;
}else{
node=obj;
type=dp._attrName in _1d4?_1d4[dp._attrName]:node.getAttribute(dp._attrName);
_1d6=type&&_1c8(type);
_1d7=_1d6&&_1d6.cls;
_1d8=(_1d7&&(_1d7._noScript||_1d7.prototype._noScript)?[]:d.query("> script[type^='dojo/']",node));
}
if(!_1d6){
throw new Error("Could not load class '"+type);
}
var _1d9={},_1da=node.attributes;
if(args.defaults){
dojo.mixin(_1d9,args.defaults);
}
if(obj.inherited){
dojo.mixin(_1d9,obj.inherited);
}
for(var name in _1d6.params){
var item=name in _1d4?{value:_1d4[name],specified:true}:_1da.getNamedItem(name);
if(!item||(!item.specified&&(!dojo.isIE||name.toLowerCase()!="value"))){
continue;
}
var _1db=item.value;
switch(name){
case "class":
_1db="className" in _1d4?_1d4.className:node.className;
break;
case "style":
_1db="style" in _1d4?_1d4.style:(node.style&&node.style.cssText);
}
var _1dc=_1d6.params[name];
if(typeof _1db=="string"){
_1d9[name]=_1c5(_1db,_1dc);
}else{
_1d9[name]=_1db;
}
}
var _1dd=[],_1de=[];
d.forEach(_1d8,function(_1df){
node.removeChild(_1df);
var _1e0=_1df.getAttribute("event"),type=_1df.getAttribute("type"),nf=d.parser._functionFromScript(_1df);
if(_1e0){
if(type=="dojo/connect"){
_1dd.push({event:_1e0,func:nf});
}else{
_1d9[_1e0]=nf;
}
}else{
_1de.push(nf);
}
});
var _1e1=_1d7.markupFactory||_1d7.prototype&&_1d7.prototype.markupFactory;
var _1e2=_1e1?_1e1(_1d9,node,_1d7):new _1d7(_1d9,node);
_1d5.push(_1e2);
var _1e3=node.getAttribute("jsId");
if(_1e3){
d.setObject(_1e3,_1e2);
}
d.forEach(_1dd,function(_1e4){
d.connect(_1e2,_1e4.event,null,_1e4.func);
});
d.forEach(_1de,function(func){
func.call(_1e2);
});
});
if(!_1d4._started){
d.forEach(_1d5,function(_1e5){
if(!args.noStart&&_1e5&&_1e5.startup&&!_1e5._started&&(!_1e5.getParent||!_1e5.getParent())){
_1e5.startup();
}
});
}
return _1d5;
};
this.parse=function(_1e6,args){
var root;
if(!args&&_1e6&&_1e6.rootNode){
args=_1e6;
root=args.rootNode;
}else{
root=_1e6;
}
var _1e7=this._attrName;
function scan(_1e8,list){
var _1e9=dojo.clone(_1e8.inherited);
dojo.forEach(["dir","lang"],function(name){
var val=_1e8.node.getAttribute(name);
if(val){
_1e9[name]=val;
}
});
var _1ea=_1e8.scripts;
var _1eb=!_1e8.clsInfo||!_1e8.clsInfo.cls.prototype.stopParser;
for(var _1ec=_1e8.node.firstChild;_1ec;_1ec=_1ec.nextSibling){
if(_1ec.nodeType==1){
var type=_1eb&&_1ec.getAttribute(_1e7);
if(type){
var _1ed={"type":type,clsInfo:_1c8(type),node:_1ec,scripts:[],inherited:_1e9};
list.push(_1ed);
scan(_1ed,list);
}else{
if(_1ea&&_1ec.nodeName.toLowerCase()=="script"){
type=_1ec.getAttribute("type");
if(type&&/^dojo\//i.test(type)){
_1ea.push(_1ec);
}
}else{
if(_1eb){
scan({node:_1ec,inherited:_1e9},list);
}
}
}
}
}
};
var list=[];
scan({node:root?dojo.byId(root):dojo.body(),inherited:(args&&args.inherited)||{dir:dojo._isBodyLtr()?"ltr":"rtl"}},list);
return this.instantiate(list,null,args);
};
}();
(function(){
var _1ee=function(){
if(dojo.config.parseOnLoad){
dojo.parser.parse();
}
};
if(dojo.exists("dijit.wai.onload")&&(dijit.wai.onload===dojo._loaders[0])){
dojo._loaders.splice(1,0,_1ee);
}else{
dojo._loaders.unshift(_1ee);
}
})();
}
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(_1ef,map,_1f0,_1f1){
_1f1=_1f1||dojo.global;
_1f0=_1f0?dojo.hitch(_1f1,_1f0):function(v){
return v;
};
return _1ef.replace(/\$\{([^\s\:\}]+)(?:\:([^\s\:\}]+))?\}/g,function(_1f2,key,_1f3){
var _1f4=dojo.getObject(key,false,map);
if(_1f3){
_1f4=dojo.getObject(_1f3,false,_1f1).call(_1f1,_1f4,key);
}
return _1f0(_1f4,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 _1f5=0,d=dojo;
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){
d.empty(node);
if(cont){
if(typeof cont=="string"){
cont=d._toDom(cont,node.ownerDocument);
}
if(!cont.nodeType&&d.isArrayLike(cont)){
for(var _1f6=cont.length,i=0;i<cont.length;i=_1f6==cont.length?i+1:0){
d.place(cont[i],node,"last");
}
}else{
d.place(cont,node,"last");
}
}
return node;
};
dojo.declare("dojo.html._ContentSetter",null,{node:"",content:"",id:"",cleanContent:false,extractContent:false,parseContent:false,constructor:function(_1f7,node){
dojo.mixin(this,_1f7||{});
node=this.node=dojo.byId(this.node||node);
if(!this.id){
this.id=["Setter",(node)?node.id||node.tagName:"",_1f5++].join("_");
}
},set:function(cont,_1f8){
if(undefined!==cont){
this.content=cont;
}
if(_1f8){
this._mixin(_1f8);
}
this.onBegin();
this.setContent();
this.onEnd();
return this.node;
},setContent:function(){
var node=this.node;
if(!node){
throw new Error(this.declaredClass+": setContent given no node");
}
try{
node=dojo.html._setNodeContent(node,this.content);
}
catch(e){
var _1f9=this.onContentError(e);
try{
node.innerHTML=_1f9;
}
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 _1fa=cont.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im);
if(_1fa){
cont=_1fa[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(_1fb){
var _1fc={},key;
for(key in _1fb){
if(key in _1fc){
continue;
}
this[key]=_1fb[key];
}
},_parse:function(){
var _1fd=this.node;
try{
this.parseResults=dojo.parser.parse({rootNode:_1fd,dir:this.dir,lang:this.lang});
}
catch(e){
this._onError("Content",e,"Error parsing in _ContentSetter#"+this.id);
}
},_onError:function(type,err,_1fe){
var _1ff=this["on"+type+"Error"].call(this,err);
if(_1fe){
console.error(_1fe,err);
}else{
if(_1ff){
dojo.html._setNodeContent(this.node,_1ff,true);
}
}
}});
dojo.html.set=function(node,cont,_200){
if(undefined==cont){
console.warn("dojo.html.set: no cont argument provided, using empty string");
cont="";
}
if(!_200){
return dojo.html._setNodeContent(node,cont,true);
}else{
var op=new dojo.html._ContentSetter(dojo.mixin(_200,{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(_201,_202,_203){
_203=dojo.i18n.normalizeLocale(_203);
var _204=_203.split("-");
var _205=[_201,"nls",_202].join(".");
var _206=dojo._loadedModules[_205];
if(_206){
var _207;
for(var i=_204.length;i>0;i--){
var loc=_204.slice(0,i).join("_");
if(_206[loc]){
_207=_206[loc];
break;
}
}
if(!_207){
_207=_206.ROOT;
}
if(_207){
var _208=function(){
};
_208.prototype=_207;
return new _208();
}
}
throw new Error("Bundle not found: "+_202+" in "+_201+" , locale="+_203);
};
dojo.i18n.normalizeLocale=function(_209){
var _20a=_209?_209.toLowerCase():dojo.locale;
if(_20a=="root"){
_20a="ROOT";
}
return _20a;
};
dojo.i18n._requireLocalization=function(_20b,_20c,_20d,_20e){
var _20f=dojo.i18n.normalizeLocale(_20d);
var _210=[_20b,"nls",_20c].join(".");
var _211="";
if(_20e){
var _212=_20e.split(",");
for(var i=0;i<_212.length;i++){
if(_20f["indexOf"](_212[i])==0){
if(_212[i].length>_211.length){
_211=_212[i];
}
}
}
if(!_211){
_211="ROOT";
}
}
var _213=_20e?_211:_20f;
var _214=dojo._loadedModules[_210];
var _215=null;
if(_214){
if(dojo.config.localizationComplete&&_214._built){
return;
}
var _216=_213.replace(/-/g,"_");
var _217=_210+"."+_216;
_215=dojo._loadedModules[_217];
}
if(!_215){
_214=dojo["provide"](_210);
var syms=dojo._getModuleSymbols(_20b);
var _218=syms.concat("nls").join("/");
var _219;
dojo.i18n._searchLocalePath(_213,_20e,function(loc){
var _21a=loc.replace(/-/g,"_");
var _21b=_210+"."+_21a;
var _21c=false;
if(!dojo._loadedModules[_21b]){
dojo["provide"](_21b);
var _21d=[_218];
if(loc!="ROOT"){
_21d.push(loc);
}
_21d.push(_20c);
var _21e=_21d.join("/")+".js";
_21c=dojo._loadPath(_21e,null,function(hash){
var _21f=function(){
};
_21f.prototype=_219;
_214[_21a]=new _21f();
for(var j in hash){
_214[_21a][j]=hash[j];
}
});
}else{
_21c=true;
}
if(_21c&&_214[_21a]){
_219=_214[_21a];
}else{
_214[_21a]=_219;
}
if(_20e){
return true;
}
});
}
if(_20e&&_20f!=_211){
_214[_20f.replace(/-/g,"_")]=_214[_211.replace(/-/g,"_")];
}
};
(function(){
var _220=dojo.config.extraLocale;
if(_220){
if(!_220 instanceof Array){
_220=[_220];
}
var req=dojo.i18n._requireLocalization;
dojo.i18n._requireLocalization=function(m,b,_221,_222){
req(m,b,_221,_222);
if(_221){
return;
}
for(var i=0;i<_220.length;i++){
req(m,b,_220[i],_222);
}
};
}
})();
dojo.i18n._searchLocalePath=function(_223,down,_224){
_223=dojo.i18n.normalizeLocale(_223);
var _225=_223.split("-");
var _226=[];
for(var i=_225.length;i>0;i--){
_226.push(_225.slice(0,i).join("-"));
}
_226.push(false);
if(down){
_226.reverse();
}
for(var j=_226.length-1;j>=0;j--){
var loc=_226[j]||"ROOT";
var stop=_224(loc);
if(stop){
break;
}
}
};
dojo.i18n._preloadLocalizations=function(_227,_228){
function _229(_22a){
_22a=dojo.i18n.normalizeLocale(_22a);
dojo.i18n._searchLocalePath(_22a,true,function(loc){
for(var i=0;i<_228.length;i++){
if(_228[i]==loc){
dojo["require"](_227+"_"+loc);
return true;
}
}
return false;
});
};
_229();
var _22b=dojo.config.extraLocale||[];
for(var i=0;i<_22b.length;i++){
_229(_22b[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,isLayoutContainer:true,onLoadDeferred:null,attributeMap:dojo.delegate(dijit._Widget.prototype.attributeMap,{title:[]}),postMixInProperties:function(){
this.inherited(arguments);
var _22c=dojo.i18n.getLocalization("dijit","loading",this.lang);
this.loadingMessage=dojo.string.substitute(this.loadingMessage,_22c);
this.errorMessage=dojo.string.substitute(this.errorMessage,_22c);
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;
}
var _22d=dijit._Contained.prototype.getParent.call(this);
this._childOfLayoutWidget=_22d&&_22d.isLayoutContainer;
this._needLayout=!this._childOfLayoutWidget;
if(this.isLoaded){
dojo.forEach(this.getChildren(),function(_22e){
_22e.startup();
});
}
if(this._isShown()||this.preload){
this._onShow();
}
this.inherited(arguments);
},_checkIfSingleChild:function(){
var _22f=dojo.query("> *",this.containerNode).filter(function(node){
return node.tagName!=="SCRIPT";
}),_230=_22f.filter(function(node){
return dojo.hasAttr(node,"dojoType")||dojo.hasAttr(node,"widgetId");
}),_231=dojo.filter(_230.map(dijit.byNode),function(_232){
return _232&&_232.domNode&&_232.resize;
});
if(_22f.length==_230.length&&_231.length==1){
this._singleChild=_231[0];
}else{
delete this._singleChild;
}
dojo.toggleClass(this.containerNode,this.baseClass+"SingleChild",!!this._singleChild);
},setHref:function(href){
dojo.deprecated("dijit.layout.ContentPane.setHref() is deprecated. Use set('href', ...) instead.","","2.0");
return this.set("href",href);
},_setHrefAttr:function(href){
this.cancel();
this.onLoadDeferred=new dojo.Deferred(dojo.hitch(this,"cancel"));
this.href=href;
if(this._created&&(this.preload||this._isShown())){
this._load();
}else{
this._hrefChanged=true;
}
return this.onLoadDeferred;
},setContent:function(data){
dojo.deprecated("dijit.layout.ContentPane.setContent() is deprecated.  Use set('content', ...) instead.","","2.0");
this.set("content",data);
},_setContentAttr:function(data){
this.href="";
this.cancel();
this.onLoadDeferred=new dojo.Deferred(dojo.hitch(this,"cancel"));
this._setContent(data||"");
this._isDownloaded=false;
return this.onLoadDeferred;
},_getContentAttr:function(){
return this.containerNode.innerHTML;
},cancel:function(){
if(this._xhrDfd&&(this._xhrDfd.fired==-1)){
this._xhrDfd.cancel();
}
delete this._xhrDfd;
this.onLoadDeferred=null;
},uninitialize:function(){
if(this._beingDestroyed){
this.cancel();
}
this.inherited(arguments);
},destroyRecursive:function(_233){
if(this._beingDestroyed){
return;
}
this.inherited(arguments);
},resize:function(_234,_235){
if(!this._wasShown){
this._onShow();
}
this._resizeCalled=true;
if(_234){
dojo.marginBox(this.domNode,_234);
}
var cn=this.containerNode;
if(cn===this.domNode){
var mb=_235||{};
dojo.mixin(mb,_234||{});
if(!("h" in mb)||!("w" in mb)){
mb=dojo.mixin(dojo.marginBox(cn),mb);
}
this._contentBox=dijit.layout.marginBox2contentBox(cn,mb);
}else{
this._contentBox=dojo.contentBox(cn);
}
this._layoutChildren();
},_isShown:function(){
if(this._childOfLayoutWidget){
if(this._resizeCalled&&"open" in this){
return this.open;
}
return this._resizeCalled;
}else{
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.href){
if(!this._xhrDfd&&(!this.isLoaded||this._hrefChanged||this.refreshOnShow)){
this.refresh();
}
}else{
if(!this._childOfLayoutWidget&&this._needLayout){
this._layoutChildren();
}
}
this.inherited(arguments);
this._wasShown=true;
},refresh:function(){
this.cancel();
this.onLoadDeferred=new dojo.Deferred(dojo.hitch(this,"cancel"));
this._load();
return this.onLoadDeferred;
},_load:function(){
this._setContent(this.onDownloadStart(),true);
var self=this;
var _236={preventCache:(this.preventCache||this.refreshOnShow),url:this.href,handleAs:"text"};
if(dojo.isObject(this.ioArgs)){
dojo.mixin(_236,this.ioArgs);
}
var hand=(this._xhrDfd=(this.ioMethod||dojo.xhrGet)(_236));
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;
});
delete this._hrefChanged;
},_onLoadHandler:function(data){
this.isLoaded=true;
try{
this.onLoadDeferred.callback(data);
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 _237=this._contentSetter;
dojo.forEach(this.getChildren(),function(_238){
if(_238.destroyRecursive){
_238.destroyRecursive();
}
});
if(_237){
dojo.forEach(_237.parseResults,function(_239){
if(_239.destroyRecursive&&_239.domNode&&_239.domNode.parentNode==dojo.body()){
_239.destroyRecursive();
}
});
delete _237.parseResults;
}
dojo.html._emptyNode(this.containerNode);
delete this._singleChild;
},_setContent:function(cont,_23a){
this.destroyDescendants();
var _23b=this._contentSetter;
if(!(_23b&&_23b instanceof dojo.html._ContentSetter)){
_23b=this._contentSetter=new dojo.html._ContentSetter({node:this.containerNode,_onError:dojo.hitch(this,this._onError),onContentError:dojo.hitch(this,function(e){
var _23c=this.onContentError(e);
try{
this.containerNode.innerHTML=_23c;
}
catch(e){
console.error("Fatal "+this.id+" could not change content due to "+e.message,e);
}
})});
}
var _23d=dojo.mixin({cleanContent:this.cleanContent,extractContent:this.extractContent,parseContent:this.parseOnLoad,dir:this.dir,lang:this.lang},this._contentSetterParams||{});
dojo.mixin(_23b,_23d);
_23b.set((dojo.isObject(cont)&&cont.domNode)?cont.domNode:cont);
delete this._contentSetterParams;
if(!_23a){
dojo.forEach(this.getChildren(),function(_23e){
if(!this.parseOnLoad||_23e.getParent){
_23e.startup();
}
},this);
this._scheduleLayout();
this._onLoadHandler(cont);
}
},_onError:function(type,err,_23f){
this.onLoadDeferred.errback(err);
var _240=this["on"+type+"Error"].call(this,err);
if(_23f){
console.error(_23f,err);
}else{
if(_240){
this._setContent(_240,true);
}
}
},_scheduleLayout:function(){
if(this._isShown()){
this._layoutChildren();
}else{
this._needLayout=true;
}
},_layoutChildren:function(){
if(this.doLayout){
this._checkIfSingleChild();
}
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(_241){
if(_241.resize){
_241.resize();
}
});
}
delete this._needLayout;
},onLoad:function(data){
},onUnload:function(){
},onDownloadStart:function(){
return this.loadingMessage;
},onContentError:function(_242){
},onDownloadError:function(_243){
return this.errorMessage;
},onDownloadEnd:function(){
}});
}
if(!dojo._hasResource["terian.content"]){
dojo._hasResource["terian.content"]=true;
dojo.provide("terian.content");
terian.content=new function(){
this.currentWidget=null;
this.currentDomainItem=null;
this.contentPane=null;
this.originalTitle=null;
this.defaultContent=null;
this.viewCreators={};
this.registerViewCreator=function(_244,_245){
this.viewCreators[_244]=_245;
};
this.set=function(_246){
if(!_246||_246==this.currentDomainItem){
return;
}
if(_246==terian.location.defaultLocation){
this.contentPane.parseOnLoad=true;
this.contentPane.attr("content",this.defaultContent);
this.renderTitle();
console.debug("currentDomainItem="+_246);
this.contentChanged(_246,this.contentPane);
}else{
if(dojo.isString(_246)){
this.contentPane.parseOnLoad=true;
this.contentPane.setHref(_246);
console.debug("currentDomainItem="+_246);
this.contentChanged(_246,this.contentPane);
}else{
var _247=this.viewCreators[_246.declaredClass];
if(!_247){
console.error("terian.content.set() - No viewCreator registered for "+_246.declaredClass);
return;
}
var view=_247(_246);
if(!view||!view.widget||!view.title){
console.error("terian.content.set() - View creation failed for "+_246.declaredClass);
return;
}
this.contentPane.parseOnLoad=false;
this.contentPane.attr("content",view.widget);
this.renderTitle(view.title);
console.debug("currentDomainItem="+_246.treeId);
this.contentChanged(_246,view.widget);
}
}
};
this.contentChanged=function(_248,_249){
this.currentDomainItem=_248;
this.currentWidget=_249;
dojo.publish("/terian/content",[{action:"contentChanged",domainItem:this.currentDomainItem,widget:this.currentWidget}]);
};
this.renderTitle=function(_24a){
document.title=_24a?(_24a+" | "+this.originalTitle):this.originalTitle;
};
this.showLoading=function(){
this.contentPane._setContent(this.contentPane.onDownloadStart(),true);
};
this.init=function(){
console.debug("Initialising terian.content");
this.contentPane=dijit.byId("terianContent");
this.defaultContent=this.contentPane.attr("content");
this.xhrCache=new terian.util.XHRCache();
this.contentPane.ioMethod=dojo.hitch(this.xhrCache,this.xhrCache.xhrGet);
this.originalTitle=document.title;
dojo.connect(this.contentPane,"onDownloadEnd",this,function(){
var node=dojo.byId("terianContentTitle");
if(!node){
var _24b=dojo.query(".terianContentTitle",this.contentPane.domNode);
if(_24b){
node=_24b[0];
}
}
var _24c=null;
if(node&&node.innerHTML){
_24c=unescape(node.innerHTML);
}
this.renderTitle(_24c);
});
};
};
}
if(!dojo._hasResource["terian.location"]){
dojo._hasResource["terian.location"]=true;
dojo.provide("terian.location");
terian.location=new function(){
this.defaultLocation="home";
this.errorLocation="error.html";
this.domainTrees={};
this.actions={};
this.registerErrorLocation=function(_24d){
this.errorLocation=_24d;
};
this.registerDomainTree=function(_24e,_24f){
if(_24f){
_24e.__loader=_24f;
}
this.domainTrees[_24e.treeId]=_24e;
};
this.registerAction=function(name,_250){
this.actions[name]=_250;
};
this.init=function(){
if(location.hash){
this.setHash(location.hash);
}else{
this._back("");
}
};
this.set=function(_251){
try{
terian.content.set(_251);
this._back(this._mapDomainToHash(_251));
}
catch(err){
console.error("Unable to set location",_251,err);
}
};
this.setHash=function(hash){
var _252=this._mapHashToDomain(hash);
_252.addCallback(function(_253){
if(_253){
terian.location.set(_253);
}else{
terian.location._back(hash);
}
});
_252.addErrback(function(){
terian.location.set(this.errLocation);
});
};
this._back=function(_254){
var _255={handle:function(type){
var _256=terian.location._mapHashToDomain(_254);
_256.addCallback(function(_257){
terian.content.set(_257);
});
},changeUrl:_254};
if(this._ready){
dojo.back.addToHistory(_255);
}else{
dojo.back.setInitialState(_255);
this.ready();
}
if(_254!=this._lastHash){
this.changed(_254);
}
};
this.ready=function(){
this._ready=true;
};
this.changed=function(_258){
this._lastHash=_258;
dojo.publish("/terian/location",[{action:"pageView",hash:_258}]);
};
this._mapDomainToHash=function(_259){
if(dojo.isString(_259)){
return "url="+_259;
}else{
if(_259.getPath){
return "obj="+_259.getPath();
}
}
};
this._mapHashToDomain=function(hash){
var _25a=terian.util.url.parseParameters(hash);
var _25b=new dojo.Deferred();
if(!_25a.hash){
_25b.callback(this.defaultLocation);
return _25b;
}
if(_25a.hash.action){
var _25c=this.actions[_25a.hash.action];
if(dojo.isFunction(_25c)){
return _25c();
}
}else{
if(_25a.hash.url){
_25b.callback(_25a.hash.url);
return _25b;
}else{
if(_25a.hash.obj){
var _25d=_25a.hash.obj.split("/");
if(_25d.length){
var _25e=this.domainTrees[_25d[0]];
if(_25e){
var node=_25e.getNodeByPath(_25a.hash.obj);
if(node){
_25b.callback(node);
return _25b;
}else{
if(_25e.__loader){
console.debug("Invoking loader for",_25a.hash.obj);
return _25e.__loader(_25a.hash.obj);
}
}
}else{
console.error("terian.location: no domainTree for",_25d[0]);
}
}
}else{
console.error("terian.location: cannot map domain from hash",_25a);
}
}
}
_25b.errback();
return _25b;
};
};
}
if(!dojo._hasResource["dojo.cache"]){
dojo._hasResource["dojo.cache"]=true;
dojo.provide("dojo.cache");
(function(){
var _25f={};
dojo.cache=function(_260,url,_261){
if(typeof _260=="string"){
var _262=dojo.moduleUrl(_260,url);
}else{
_262=_260;
_261=url;
}
var key=_262.toString();
var val=_261;
if(_261!=undefined&&!dojo.isString(_261)){
val=("value" in _261?_261.value:undefined);
}
var _263=_261&&_261.sanitize?true:false;
if(typeof val=="string"){
val=_25f[key]=_263?dojo.cache._sanitize(val):val;
}else{
if(val===null){
delete _25f[key];
}else{
if(!(key in _25f)){
val=dojo._getText(key);
_25f[key]=_263?dojo.cache._sanitize(val):val;
}
val=_25f[key];
}
}
return val;
};
dojo.cache._sanitize=function(val){
if(val){
val=val.replace(/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,"");
var _264=val.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im);
if(_264){
val=_264[1];
}
}else{
val="";
}
return val;
};
})();
}
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,_earlyTemplatedStartup:false,constructor:function(){
this._attachPoints=[];
},_stringRepl:function(tmpl){
var _265=this.declaredClass,_266=this;
return dojo.string.substitute(tmpl,this,function(_267,key){
if(key.charAt(0)=="!"){
_267=dojo.getObject(key.substr(1),false,_266);
}
if(typeof _267=="undefined"){
throw new Error(_265+" template:"+key);
}
if(_267==null){
return "";
}
return key.charAt(0)=="!"?_267:_267.toString().replace(/"/g,"&quot;");
},this);
},buildRendering:function(){
var _268=dijit._Templated.getCachedTemplate(this.templatePath,this.templateString,this._skipNodeCache);
var node;
if(dojo.isString(_268)){
node=dojo._toDom(this._stringRepl(_268));
if(node.nodeType!=1){
throw new Error("Invalid template: "+_268);
}
}else{
node=_268.cloneNode(true);
}
this.domNode=node;
this._attachTemplateNodes(node);
if(this.widgetsInTemplate){
var _269=dojo.parser,qry,attr;
if(_269._query!="[dojoType]"){
qry=_269._query;
attr=_269._attrName;
_269._query="[dojoType]";
_269._attrName="dojoType";
}
var cw=(this._startupWidgets=dojo.parser.parse(node,{noStart:!this._earlyTemplatedStartup,inherited:{dir:this.dir,lang:this.lang}}));
if(qry){
_269._query=qry;
_269._attrName=attr;
}
this._supportingWidgets=dijit.findWidgets(node);
this._attachTemplateNodes(cw,function(n,p){
return n[p];
});
}
this._fillContent(this.srcNodeRef);
},_fillContent:function(_26a){
var dest=this.containerNode;
if(_26a&&dest){
while(_26a.hasChildNodes()){
dest.appendChild(_26a.firstChild);
}
}
},_attachTemplateNodes:function(_26b,_26c){
_26c=_26c||function(n,p){
return n.getAttribute(p);
};
var _26d=dojo.isArray(_26b)?_26b:(_26b.all||_26b.getElementsByTagName("*"));
var x=dojo.isArray(_26b)?0:-1;
for(;x<_26d.length;x++){
var _26e=(x==-1)?_26b:_26d[x];
if(this.widgetsInTemplate&&_26c(_26e,"dojoType")){
continue;
}
var _26f=_26c(_26e,"dojoAttachPoint");
if(_26f){
var _270,_271=_26f.split(/\s*,\s*/);
while((_270=_271.shift())){
if(dojo.isArray(this[_270])){
this[_270].push(_26e);
}else{
this[_270]=_26e;
}
this._attachPoints.push(_270);
}
}
var _272=_26c(_26e,"dojoAttachEvent");
if(_272){
var _273,_274=_272.split(/\s*,\s*/);
var trim=dojo.trim;
while((_273=_274.shift())){
if(_273){
var _275=null;
if(_273.indexOf(":")!=-1){
var _276=_273.split(":");
_273=trim(_276[0]);
_275=trim(_276[1]);
}else{
_273=trim(_273);
}
if(!_275){
_275=_273;
}
this.connect(_26e,_273,_275);
}
}
}
var role=_26c(_26e,"waiRole");
if(role){
dijit.setWaiRole(_26e,role);
}
var _277=_26c(_26e,"waiState");
if(_277){
dojo.forEach(_277.split(/\s*,\s*/),function(_278){
if(_278.indexOf("-")!=-1){
var pair=_278.split("-");
dijit.setWaiState(_26e,pair[0],pair[1]);
}
});
}
}
},startup:function(){
dojo.forEach(this._startupWidgets,function(w){
if(w&&!w._started&&w.startup){
w.startup();
}
});
this.inherited(arguments);
},destroyRendering:function(){
dojo.forEach(this._attachPoints,function(_279){
delete this[_279];
},this);
this._attachPoints=[];
this.inherited(arguments);
}});
dijit._Templated._templateCache={};
dijit._Templated.getCachedTemplate=function(_27a,_27b,_27c){
var _27d=dijit._Templated._templateCache;
var key=_27b||_27a;
var _27e=_27d[key];
if(_27e){
try{
if(!_27e.ownerDocument||_27e.ownerDocument==dojo.doc){
return _27e;
}
}
catch(e){
}
dojo.destroy(_27e);
}
if(!_27b){
_27b=dojo.cache(_27a,{sanitize:true});
}
_27b=dojo.string.trim(_27b);
if(_27c||_27b.match(/\$\{([^\}]+)\}/g)){
return (_27d[key]=_27b);
}else{
var node=dojo._toDom(_27b);
if(node.nodeType!=1){
throw new Error("Invalid template: "+_27b);
}
return (_27d[key]=node);
}
};
if(dojo.isIE){
dojo.addOnWindowUnload(function(){
var _27f=dijit._Templated._templateCache;
for(var key in _27f){
var _280=_27f[key];
if(typeof _280=="object"){
dojo.destroy(_280);
}
delete _27f[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,_281){
return str.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,function(ch){
if(_281&&_281.indexOf(ch)!=-1){
return ch;
}
return "\\"+ch;
});
};
dojo.regexp.buildGroupRE=function(arr,re,_282){
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("|"),_282);
};
dojo.regexp.group=function(_283,_284){
return "("+(_284?"?:":"")+_283+")";
};
}
if(!dojo._hasResource["dojo.number"]){
dojo._hasResource["dojo.number"]=true;
dojo.provide("dojo.number");
dojo.number.format=function(_285,_286){
_286=dojo.mixin({},_286||{});
var _287=dojo.i18n.normalizeLocale(_286.locale),_288=dojo.i18n.getLocalization("dojo.cldr","number",_287);
_286.customs=_288;
var _289=_286.pattern||_288[(_286.type||"decimal")+"Format"];
if(isNaN(_285)||Math.abs(_285)==Infinity){
return null;
}
return dojo.number._applyPattern(_285,_289,_286);
};
dojo.number._numberPatternRE=/[#0,]*[#0](?:\.0*#*)?/;
dojo.number._applyPattern=function(_28a,_28b,_28c){
_28c=_28c||{};
var _28d=_28c.customs.group,_28e=_28c.customs.decimal,_28f=_28b.split(";"),_290=_28f[0];
_28b=_28f[(_28a<0)?1:0]||("-"+_290);
if(_28b.indexOf("%")!=-1){
_28a*=100;
}else{
if(_28b.indexOf("‰")!=-1){
_28a*=1000;
}else{
if(_28b.indexOf("¤")!=-1){
_28d=_28c.customs.currencyGroup||_28d;
_28e=_28c.customs.currencyDecimal||_28e;
_28b=_28b.replace(/\u00a4{1,3}/,function(_291){
var prop=["symbol","currency","displayName"][_291.length-1];
return _28c[prop]||_28c.currency||"";
});
}else{
if(_28b.indexOf("E")!=-1){
throw new Error("exponential notation not supported");
}
}
}
}
var _292=dojo.number._numberPatternRE;
var _293=_290.match(_292);
if(!_293){
throw new Error("unable to find a number expression in pattern: "+_28b);
}
if(_28c.fractional===false){
_28c.places=0;
}
return _28b.replace(_292,dojo.number._formatAbsolute(_28a,_293[0],{decimal:_28e,group:_28d,places:_28c.places,round:_28c.round}));
};
dojo.number.round=function(_294,_295,_296){
var _297=10/(_296||10);
return (_297*+_294).toFixed(_295)/_297;
};
if((0.9).toFixed()==0){
(function(){
var _298=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 _298(v,p,m)+(v>0?d:-d);
};
})();
}
dojo.number._formatAbsolute=function(_299,_29a,_29b){
_29b=_29b||{};
if(_29b.places===true){
_29b.places=0;
}
if(_29b.places===Infinity){
_29b.places=6;
}
var _29c=_29a.split("."),_29d=typeof _29b.places=="string"&&_29b.places.indexOf(","),_29e=_29b.places;
if(_29d){
_29e=_29b.places.substring(_29d+1);
}else{
if(!(_29e>=0)){
_29e=(_29c[1]||[]).length;
}
}
if(!(_29b.round<0)){
_299=dojo.number.round(_299,_29e,_29b.round);
}
var _29f=String(Math.abs(_299)).split("."),_2a0=_29f[1]||"";
if(_29c[1]||_29b.places){
if(_29d){
_29b.places=_29b.places.substring(0,_29d);
}
var pad=_29b.places!==undefined?_29b.places:(_29c[1]&&_29c[1].lastIndexOf("0")+1);
if(pad>_2a0.length){
_29f[1]=dojo.string.pad(_2a0,pad,"0",true);
}
if(_29e<_2a0.length){
_29f[1]=_2a0.substr(0,_29e);
}
}else{
if(_29f[1]){
_29f.pop();
}
}
var _2a1=_29c[0].replace(",","");
pad=_2a1.indexOf("0");
if(pad!=-1){
pad=_2a1.length-pad;
if(pad>_29f[0].length){
_29f[0]=dojo.string.pad(_29f[0],pad);
}
if(_2a1.indexOf("#")==-1){
_29f[0]=_29f[0].substr(_29f[0].length-pad);
}
}
var _2a2=_29c[0].lastIndexOf(","),_2a3,_2a4;
if(_2a2!=-1){
_2a3=_29c[0].length-_2a2-1;
var _2a5=_29c[0].substr(0,_2a2);
_2a2=_2a5.lastIndexOf(",");
if(_2a2!=-1){
_2a4=_2a5.length-_2a2-1;
}
}
var _2a6=[];
for(var _2a7=_29f[0];_2a7;){
var off=_2a7.length-_2a3;
_2a6.push((off>0)?_2a7.substr(off):_2a7);
_2a7=(off>0)?_2a7.slice(0,off):"";
if(_2a4){
_2a3=_2a4;
delete _2a4;
}
}
_29f[0]=_2a6.reverse().join(_29b.group||",");
return _29f.join(_29b.decimal||".");
};
dojo.number.regexp=function(_2a8){
return dojo.number._parseInfo(_2a8).regexp;
};
dojo.number._parseInfo=function(_2a9){
_2a9=_2a9||{};
var _2aa=dojo.i18n.normalizeLocale(_2a9.locale),_2ab=dojo.i18n.getLocalization("dojo.cldr","number",_2aa),_2ac=_2a9.pattern||_2ab[(_2a9.type||"decimal")+"Format"],_2ad=_2ab.group,_2ae=_2ab.decimal,_2af=1;
if(_2ac.indexOf("%")!=-1){
_2af/=100;
}else{
if(_2ac.indexOf("‰")!=-1){
_2af/=1000;
}else{
var _2b0=_2ac.indexOf("¤")!=-1;
if(_2b0){
_2ad=_2ab.currencyGroup||_2ad;
_2ae=_2ab.currencyDecimal||_2ae;
}
}
}
var _2b1=_2ac.split(";");
if(_2b1.length==1){
_2b1.push("-"+_2b1[0]);
}
var re=dojo.regexp.buildGroupRE(_2b1,function(_2b2){
_2b2="(?:"+dojo.regexp.escapeString(_2b2,".")+")";
return _2b2.replace(dojo.number._numberPatternRE,function(_2b3){
var _2b4={signed:false,separator:_2a9.strict?_2ad:[_2ad,""],fractional:_2a9.fractional,decimal:_2ae,exponent:false},_2b5=_2b3.split("."),_2b6=_2a9.places;
if(_2b5.length==1&&_2af!=1){
_2b5[1]="###";
}
if(_2b5.length==1||_2b6===0){
_2b4.fractional=false;
}else{
if(_2b6===undefined){
_2b6=_2a9.pattern?_2b5[1].lastIndexOf("0")+1:Infinity;
}
if(_2b6&&_2a9.fractional==undefined){
_2b4.fractional=true;
}
if(!_2a9.places&&(_2b6<_2b5[1].length)){
_2b6+=","+_2b5[1].length;
}
_2b4.places=_2b6;
}
var _2b7=_2b5[0].split(",");
if(_2b7.length>1){
_2b4.groupSize=_2b7.pop().length;
if(_2b7.length>1){
_2b4.groupSize2=_2b7.pop().length;
}
}
return "("+dojo.number._realNumberRegexp(_2b4)+")";
});
},true);
if(_2b0){
re=re.replace(/([\s\xa0]*)(\u00a4{1,3})([\s\xa0]*)/g,function(_2b8,_2b9,_2ba,_2bb){
var prop=["symbol","currency","displayName"][_2ba.length-1],_2bc=dojo.regexp.escapeString(_2a9[prop]||_2a9.currency||"");
_2b9=_2b9?"[\\s\\xa0]":"";
_2bb=_2bb?"[\\s\\xa0]":"";
if(!_2a9.strict){
if(_2b9){
_2b9+="*";
}
if(_2bb){
_2bb+="*";
}
return "(?:"+_2b9+_2bc+_2bb+")?";
}
return _2b9+_2bc+_2bb;
});
}
return {regexp:re.replace(/[\xa0 ]/g,"[\\s\\xa0]"),group:_2ad,decimal:_2ae,factor:_2af};
};
dojo.number.parse=function(_2bd,_2be){
var info=dojo.number._parseInfo(_2be),_2bf=(new RegExp("^"+info.regexp+"$")).exec(_2bd);
if(!_2bf){
return NaN;
}
var _2c0=_2bf[1];
if(!_2bf[1]){
if(!_2bf[2]){
return NaN;
}
_2c0=_2bf[2];
info.factor*=-1;
}
_2c0=_2c0.replace(new RegExp("["+info.group+"\\s\\xa0"+"]","g"),"").replace(info.decimal,".");
return _2c0*info.factor;
};
dojo.number._realNumberRegexp=function(_2c1){
_2c1=_2c1||{};
if(!("places" in _2c1)){
_2c1.places=Infinity;
}
if(typeof _2c1.decimal!="string"){
_2c1.decimal=".";
}
if(!("fractional" in _2c1)||/^0/.test(_2c1.places)){
_2c1.fractional=[true,false];
}
if(!("exponent" in _2c1)){
_2c1.exponent=[true,false];
}
if(!("eSigned" in _2c1)){
_2c1.eSigned=[true,false];
}
var _2c2=dojo.number._integerRegexp(_2c1),_2c3=dojo.regexp.buildGroupRE(_2c1.fractional,function(q){
var re="";
if(q&&(_2c1.places!==0)){
re="\\"+_2c1.decimal;
if(_2c1.places==Infinity){
re="(?:"+re+"\\d+)?";
}else{
re+="\\d{"+_2c1.places+"}";
}
}
return re;
},true);
var _2c4=dojo.regexp.buildGroupRE(_2c1.exponent,function(q){
if(q){
return "([eE]"+dojo.number._integerRegexp({signed:_2c1.eSigned})+")";
}
return "";
});
var _2c5=_2c2+_2c3;
if(_2c3){
_2c5="(?:(?:"+_2c5+")|(?:"+_2c3+"))";
}
return _2c5+_2c4;
};
dojo.number._integerRegexp=function(_2c6){
_2c6=_2c6||{};
if(!("signed" in _2c6)){
_2c6.signed=[true,false];
}
if(!("separator" in _2c6)){
_2c6.separator="";
}else{
if(!("groupSize" in _2c6)){
_2c6.groupSize=3;
}
}
var _2c7=dojo.regexp.buildGroupRE(_2c6.signed,function(q){
return q?"[-+]":"";
},true);
var _2c8=dojo.regexp.buildGroupRE(_2c6.separator,function(sep){
if(!sep){
return "(?:\\d+)";
}
sep=dojo.regexp.escapeString(sep);
if(sep==" "){
sep="\\s";
}else{
if(sep==" "){
sep="\\s\\xa0";
}
}
var grp=_2c6.groupSize,grp2=_2c6.groupSize2;
if(grp2){
var _2c9="(?:0|[1-9]\\d{0,"+(grp2-1)+"}(?:["+sep+"]\\d{"+grp2+"})*["+sep+"]\\d{"+grp+"})";
return ((grp-grp2)>0)?"(?:"+_2c9+"|(?:0|[1-9]\\d{0,"+(grp-1)+"}))":_2c9;
}
return "(?:0|[1-9]\\d{0,"+(grp-1)+"}(?:["+sep+"]\\d{"+grp+"})*)";
},true);
return _2c7+_2c8;
};
}
if(!dojo._hasResource["dojo.cldr.monetary"]){
dojo._hasResource["dojo.cldr.monetary"]=true;
dojo.provide("dojo.cldr.monetary");
dojo.cldr.monetary.getData=function(code){
var _2ca={ADP:0,AFN:0,ALL:0,AMD:0,BHD:3,BIF:0,BYR:0,CLF:0,CLP:0,COP:0,CRC:0,DJF:0,ESP:0,GNF:0,GYD:0,HUF:0,IDR:0,IQD:0,IRR:3,ISK:0,ITL:0,JOD:3,JPY:0,KMF:0,KPW:0,KRW:0,KWD:3,LAK:0,LBP:0,LUF:0,LYD:3,MGA:0,MGF:0,MMK:0,MNT:0,MRO:0,MUR:0,OMR:3,PKR:0,PYG:0,RSD:0,RWF:0,SLL:0,SOS:0,STD:0,SYP:0,TMM:0,TND:3,TRL:0,TZS:0,UGX:0,UZS:0,VND:0,VUV:0,XAF:0,XOF:0,XPF:0,YER:0,ZMK:0,ZWD:0};
var _2cb={CHF:5};
var _2cc=_2ca[code],_2cd=_2cb[code];
if(typeof _2cc=="undefined"){
_2cc=2;
}
if(typeof _2cd=="undefined"){
_2cd=0;
}
return {places:_2cc,round:_2cd};
};
}
if(!dojo._hasResource["dojo.currency"]){
dojo._hasResource["dojo.currency"]=true;
dojo.provide("dojo.currency");
dojo.currency._mixInDefaults=function(_2ce){
_2ce=_2ce||{};
_2ce.type="currency";
var _2cf=dojo.i18n.getLocalization("dojo.cldr","currency",_2ce.locale)||{};
var iso=_2ce.currency;
var data=dojo.cldr.monetary.getData(iso);
dojo.forEach(["displayName","symbol","group","decimal"],function(prop){
data[prop]=_2cf[iso+"_"+prop];
});
data.fractional=[true,false];
return dojo.mixin(data,_2ce);
};
dojo.currency.format=function(_2d0,_2d1){
return dojo.number.format(_2d0,dojo.currency._mixInDefaults(_2d1));
};
dojo.currency.regexp=function(_2d2){
return dojo.number.regexp(dojo.currency._mixInDefaults(_2d2));
};
dojo.currency.parse=function(_2d3,_2d4){
return dojo.number.parse(_2d3,dojo.currency._mixInDefaults(_2d4));
};
}
if(!dojo._hasResource["dojo.date"]){
dojo._hasResource["dojo.date"]=true;
dojo.provide("dojo.date");
dojo.date.getDaysInMonth=function(_2d5){
var _2d6=_2d5.getMonth();
var days=[31,28,31,30,31,30,31,31,30,31,30,31];
if(_2d6==1&&dojo.date.isLeapYear(_2d5)){
return 29;
}
return days[_2d6];
};
dojo.date.isLeapYear=function(_2d7){
var year=_2d7.getFullYear();
return !(year%400)||(!(year%4)&&!!(year%100));
};
dojo.date.getTimezoneName=function(_2d8){
var str=_2d8.toString();
var tz="";
var _2d9;
var pos=str.indexOf("(");
if(pos>-1){
tz=str.substring(++pos,str.indexOf(")"));
}else{
var pat=/([A-Z\/]+) \d{4}$/;
if((_2d9=str.match(pat))){
tz=_2d9[1];
}else{
str=_2d8.toLocaleString();
pat=/ ([A-Z\/]+)$/;
if((_2d9=str.match(pat))){
tz=_2d9[1];
}
}
}
return (tz=="AM"||tz=="PM")?"":tz;
};
dojo.date.compare=function(_2da,_2db,_2dc){
_2da=new Date(+_2da);
_2db=new Date(+(_2db||new Date()));
if(_2dc=="date"){
_2da.setHours(0,0,0,0);
_2db.setHours(0,0,0,0);
}else{
if(_2dc=="time"){
_2da.setFullYear(0,0,0);
_2db.setFullYear(0,0,0);
}
}
if(_2da>_2db){
return 1;
}
if(_2da<_2db){
return -1;
}
return 0;
};
dojo.date.add=function(date,_2dd,_2de){
var sum=new Date(+date);
var _2df=false;
var _2e0="Date";
switch(_2dd){
case "day":
break;
case "weekday":
var days,_2e1;
var mod=_2de%5;
if(!mod){
days=(_2de>0)?5:-5;
_2e1=(_2de>0)?((_2de-5)/5):((_2de+5)/5);
}else{
days=mod;
_2e1=parseInt(_2de/5);
}
var strt=date.getDay();
var adj=0;
if(strt==6&&_2de>0){
adj=1;
}else{
if(strt==0&&_2de<0){
adj=-1;
}
}
var trgt=strt+days;
if(trgt==0||trgt==6){
adj=(_2de>0)?2:-2;
}
_2de=(7*_2e1)+days+adj;
break;
case "year":
_2e0="FullYear";
_2df=true;
break;
case "week":
_2de*=7;
break;
case "quarter":
_2de*=3;
case "month":
_2df=true;
_2e0="Month";
break;
default:
_2e0="UTC"+_2dd.charAt(0).toUpperCase()+_2dd.substring(1)+"s";
}
if(_2e0){
sum["set"+_2e0](sum["get"+_2e0]()+_2de);
}
if(_2df&&(sum.getDate()<date.getDate())){
sum.setDate(0);
}
return sum;
};
dojo.date.difference=function(_2e2,_2e3,_2e4){
_2e3=_2e3||new Date();
_2e4=_2e4||"day";
var _2e5=_2e3.getFullYear()-_2e2.getFullYear();
var _2e6=1;
switch(_2e4){
case "quarter":
var m1=_2e2.getMonth();
var m2=_2e3.getMonth();
var q1=Math.floor(m1/3)+1;
var q2=Math.floor(m2/3)+1;
q2+=(_2e5*4);
_2e6=q2-q1;
break;
case "weekday":
var days=Math.round(dojo.date.difference(_2e2,_2e3,"day"));
var _2e7=parseInt(dojo.date.difference(_2e2,_2e3,"week"));
var mod=days%7;
if(mod==0){
days=_2e7*5;
}else{
var adj=0;
var aDay=_2e2.getDay();
var bDay=_2e3.getDay();
_2e7=parseInt(days/7);
mod=days%7;
var _2e8=new Date(_2e2);
_2e8.setDate(_2e8.getDate()+(_2e7*7));
var _2e9=_2e8.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 (_2e9+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 (_2e9+mod)<0:
adj=2;
}
}
}
days+=adj;
days-=(_2e7*2);
}
_2e6=days;
break;
case "year":
_2e6=_2e5;
break;
case "month":
_2e6=(_2e3.getMonth()-_2e2.getMonth())+(_2e5*12);
break;
case "week":
_2e6=parseInt(dojo.date.difference(_2e2,_2e3,"day")/7);
break;
case "day":
_2e6/=24;
case "hour":
_2e6/=60;
case "minute":
_2e6/=60;
case "second":
_2e6/=1000;
case "millisecond":
_2e6*=_2e3.getTime()-_2e2.getTime();
}
return Math.round(_2e6);
};
}
if(!dojo._hasResource["dojo.cldr.supplemental"]){
dojo._hasResource["dojo.cldr.supplemental"]=true;
dojo.provide("dojo.cldr.supplemental");
dojo.cldr.supplemental.getFirstDayOfWeek=function(_2ea){
var _2eb={mv:5,af:6,bh:6,dj:6,dz:6,eg:6,er:6,et:6,iq:6,ir:6,jo:6,ke:6,kw:6,ly:6,ma:6,om:6,qa:6,sa:6,sd:6,so:6,tn:6,ye:6,ar:0,as:0,az:0,bw:0,ca:0,cn:0,fo:0,ge:0,gl:0,gu:0,hk:0,ie:0,il:0,"in":0,is:0,jm:0,jp:0,kg:0,kr:0,la:0,mh:0,mn:0,mo:0,mp:0,mt:0,nz:0,ph:0,pk:0,sg:0,sy:0,th:0,tt:0,tw:0,um:0,us:0,uz:0,vi:0,zw:0};
var _2ec=dojo.cldr.supplemental._region(_2ea);
var dow=_2eb[_2ec];
return (dow===undefined)?1:dow;
};
dojo.cldr.supplemental._region=function(_2ed){
_2ed=dojo.i18n.normalizeLocale(_2ed);
var tags=_2ed.split("-");
var _2ee=tags[1];
if(!_2ee){
_2ee={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(_2ee.length==4){
_2ee=tags[2];
}
}
return _2ee;
};
dojo.cldr.supplemental.getWeekend=function(_2ef){
var _2f0={"in":0,af:4,dz:4,ir:4,om:4,sa:4,ye:4,ae:5,bh:5,eg:5,il:5,iq:5,jo:5,kw:5,ly:5,ma:5,qa:5,sd:5,sy:5,tn:5};
var _2f1={af:5,dz:5,ir:5,om:5,sa:5,ye:5,ae:6,bh:5,eg:6,il:6,iq:6,jo:6,kw:6,ly:6,ma:6,qa:6,sd:6,sy:6,tn:6};
var _2f2=dojo.cldr.supplemental._region(_2ef);
var _2f3=_2f0[_2f2];
var end=_2f1[_2f2];
if(_2f3===undefined){
_2f3=6;
}
if(end===undefined){
end=0;
}
return {start:_2f3,end:end};
};
}
if(!dojo._hasResource["dojo.date.locale"]){
dojo._hasResource["dojo.date.locale"]=true;
dojo.provide("dojo.date.locale");
(function(){
function _2f4(_2f5,_2f6,_2f7,_2f8){
return _2f8.replace(/([a-z])\1*/ig,function(_2f9){
var s,pad,c=_2f9.charAt(0),l=_2f9.length,_2fa=["abbr","wide","narrow"];
switch(c){
case "G":
s=_2f6[(l<4)?"eraAbbr":"eraNames"][_2f5.getFullYear()<0?0:1];
break;
case "y":
s=_2f5.getFullYear();
switch(l){
case 1:
break;
case 2:
if(!_2f7.fullYear){
s=String(s);
s=s.substr(s.length-2);
break;
}
default:
pad=true;
}
break;
case "Q":
case "q":
s=Math.ceil((_2f5.getMonth()+1)/3);
pad=true;
break;
case "M":
var m=_2f5.getMonth();
if(l<3){
s=m+1;
pad=true;
}else{
var _2fb=["months","format",_2fa[l-3]].join("-");
s=_2f6[_2fb][m];
}
break;
case "w":
var _2fc=0;
s=dojo.date.locale._getWeekOfYear(_2f5,_2fc);
pad=true;
break;
case "d":
s=_2f5.getDate();
pad=true;
break;
case "D":
s=dojo.date.locale._getDayOfYear(_2f5);
pad=true;
break;
case "E":
var d=_2f5.getDay();
if(l<3){
s=d+1;
pad=true;
}else{
var _2fd=["days","format",_2fa[l-3]].join("-");
s=_2f6[_2fd][d];
}
break;
case "a":
var _2fe=(_2f5.getHours()<12)?"am":"pm";
s=_2f6["dayPeriods-format-wide-"+_2fe];
break;
case "h":
case "H":
case "K":
case "k":
var h=_2f5.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=_2f5.getMinutes();
pad=true;
break;
case "s":
s=_2f5.getSeconds();
pad=true;
break;
case "S":
s=Math.round(_2f5.getMilliseconds()*Math.pow(10,l-3));
pad=true;
break;
case "v":
case "z":
s=dojo.date.locale._getZone(_2f5,true,_2f7);
if(s){
break;
}
l=4;
case "Z":
var _2ff=dojo.date.locale._getZone(_2f5,false,_2f7);
var tz=[(_2ff<=0?"+":"-"),dojo.string.pad(Math.floor(Math.abs(_2ff)/60),2),dojo.string.pad(Math.abs(_2ff)%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: "+_2f8);
}
if(pad){
s=dojo.string.pad(s,l);
}
return s;
});
};
dojo.date.locale._getZone=function(_300,_301,_302){
if(_301){
return dojo.date.getTimezoneName(_300);
}else{
return _300.getTimezoneOffset();
}
};
dojo.date.locale.format=function(_303,_304){
_304=_304||{};
var _305=dojo.i18n.normalizeLocale(_304.locale),_306=_304.formatLength||"short",_307=dojo.date.locale._getGregorianBundle(_305),str=[],_308=dojo.hitch(this,_2f4,_303,_307,_304);
if(_304.selector=="year"){
return _309(_307["dateFormatItem-yyyy"]||"yyyy",_308);
}
var _30a;
if(_304.selector!="date"){
_30a=_304.timePattern||_307["timeFormat-"+_306];
if(_30a){
str.push(_309(_30a,_308));
}
}
if(_304.selector!="time"){
_30a=_304.datePattern||_307["dateFormat-"+_306];
if(_30a){
str.push(_309(_30a,_308));
}
}
return str.length==1?str[0]:_307["dateTimeFormat-"+_306].replace(/\{(\d+)\}/g,function(_30b,key){
return str[key];
});
};
dojo.date.locale.regexp=function(_30c){
return dojo.date.locale._parseInfo(_30c).regexp;
};
dojo.date.locale._parseInfo=function(_30d){
_30d=_30d||{};
var _30e=dojo.i18n.normalizeLocale(_30d.locale),_30f=dojo.date.locale._getGregorianBundle(_30e),_310=_30d.formatLength||"short",_311=_30d.datePattern||_30f["dateFormat-"+_310],_312=_30d.timePattern||_30f["timeFormat-"+_310],_313;
if(_30d.selector=="date"){
_313=_311;
}else{
if(_30d.selector=="time"){
_313=_312;
}else{
_313=_30f["dateTimeFormat-"+_310].replace(/\{(\d+)\}/g,function(_314,key){
return [_312,_311][key];
});
}
}
var _315=[],re=_309(_313,dojo.hitch(this,_316,_315,_30f,_30d));
return {regexp:re,tokens:_315,bundle:_30f};
};
dojo.date.locale.parse=function(_317,_318){
var info=dojo.date.locale._parseInfo(_318),_319=info.tokens,_31a=info.bundle,re=new RegExp("^"+info.regexp+"$",info.strict?"":"i"),_31b=re.exec(_317);
if(!_31b){
return null;
}
var _31c=["abbr","wide","narrow"],_31d=[1970,0,1,0,0,0,0],amPm="",_31e=dojo.every(_31b,function(v,i){
if(!i){
return true;
}
var _31f=_319[i-1];
var l=_31f.length;
switch(_31f.charAt(0)){
case "y":
if(l!=2&&_318.strict){
_31d[0]=v;
}else{
if(v<100){
v=Number(v);
var year=""+new Date().getFullYear(),_320=year.substring(0,2)*100,_321=Math.min(Number(year.substring(2,4))+20,99),num=(v<_321)?_320+v:_320-100+v;
_31d[0]=num;
}else{
if(_318.strict){
return false;
}
_31d[0]=v;
}
}
break;
case "M":
if(l>2){
var _322=_31a["months-format-"+_31c[l-3]].concat();
if(!_318.strict){
v=v.replace(".","").toLowerCase();
_322=dojo.map(_322,function(s){
return s.replace(".","").toLowerCase();
});
}
v=dojo.indexOf(_322,v);
if(v==-1){
return false;
}
}else{
v--;
}
_31d[1]=v;
break;
case "E":
case "e":
var days=_31a["days-format-"+_31c[l-3]].concat();
if(!_318.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":
_31d[1]=0;
case "d":
_31d[2]=v;
break;
case "a":
var am=_318.am||_31a["dayPeriods-format-wide-am"],pm=_318.pm||_31a["dayPeriods-format-wide-pm"];
if(!_318.strict){
var _323=/\./g;
v=v.replace(_323,"").toLowerCase();
am=am.replace(_323,"").toLowerCase();
pm=pm.replace(_323,"").toLowerCase();
}
if(_318.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;
}
_31d[3]=v;
break;
case "m":
_31d[4]=v;
break;
case "s":
_31d[5]=v;
break;
case "S":
_31d[6]=v;
}
return true;
});
var _324=+_31d[3];
if(amPm==="p"&&_324<12){
_31d[3]=_324+12;
}else{
if(amPm==="a"&&_324==12){
_31d[3]=0;
}
}
var _325=new Date(_31d[0],_31d[1],_31d[2],_31d[3],_31d[4],_31d[5],_31d[6]);
if(_318.strict){
_325.setFullYear(_31d[0]);
}
var _326=_319.join(""),_327=_326.indexOf("d")!=-1,_328=_326.indexOf("M")!=-1;
if(!_31e||(_328&&_325.getMonth()>_31d[1])||(_327&&_325.getDate()>_31d[2])){
return null;
}
if((_328&&_325.getMonth()<_31d[1])||(_327&&_325.getDate()<_31d[2])){
_325=dojo.date.add(_325,"hour",1);
}
return _325;
};
function _309(_329,_32a,_32b,_32c){
var _32d=function(x){
return x;
};
_32a=_32a||_32d;
_32b=_32b||_32d;
_32c=_32c||_32d;
var _32e=_329.match(/(''|[^'])+/g),_32f=_329.charAt(0)=="'";
dojo.forEach(_32e,function(_330,i){
if(!_330){
_32e[i]="";
}else{
_32e[i]=(_32f?_32b:_32a)(_330.replace(/''/g,"'"));
_32f=!_32f;
}
});
return _32c(_32e.join(""));
};
function _316(_331,_332,_333,_334){
_334=dojo.regexp.escapeString(_334);
if(!_333.strict){
_334=_334.replace(" a"," ?a");
}
return _334.replace(/([a-z])\1*/ig,function(_335){
var s,c=_335.charAt(0),l=_335.length,p2="",p3="";
if(_333.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="3[01]|[12]\\d|"+p2+"[1-9]";
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=_333.am||_332["dayPeriods-format-wide-am"],pm=_333.pm||_332["dayPeriods-format-wide-pm"];
if(_333.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(_331){
_331.push(_335);
}
return "("+s+")";
}).replace(/[\xa0 ]/g,"[\\s\\xa0]");
};
})();
(function(){
var _336=[];
dojo.date.locale.addCustomFormats=function(_337,_338){
_336.push({pkg:_337,name:_338});
};
dojo.date.locale._getGregorianBundle=function(_339){
var _33a={};
dojo.forEach(_336,function(desc){
var _33b=dojo.i18n.getLocalization(desc.pkg,desc.name,_339);
_33a=dojo.mixin(_33a,_33b);
},this);
return _33a;
};
})();
dojo.date.locale.addCustomFormats("dojo.cldr","gregorian");
dojo.date.locale.getNames=function(item,type,_33c,_33d){
var _33e,_33f=dojo.date.locale._getGregorianBundle(_33d),_340=[item,_33c,type];
if(_33c=="standAlone"){
var key=_340.join("-");
_33e=_33f[key];
if(_33e[0]==1){
_33e=undefined;
}
}
_340[1]="format";
return (_33e||_33f[_340.join("-")]).concat();
};
dojo.date.locale.isWeekend=function(_341,_342){
var _343=dojo.cldr.supplemental.getWeekend(_342),day=(_341||new Date()).getDay();
if(_343.end<_343.start){
_343.end+=7;
if(day<_343.start){
day+=7;
}
}
return day>=_343.start&&day<=_343.end;
};
dojo.date.locale._getDayOfYear=function(_344){
return dojo.date.difference(new Date(_344.getFullYear(),0,1,_344.getHours()),_344)+1;
};
dojo.date.locale._getWeekOfYear=function(_345,_346){
if(arguments.length==1){
_346=0;
}
var _347=new Date(_345.getFullYear(),0,1).getDay(),adj=(_347-_346+7)%7,week=Math.floor((dojo.date.locale._getDayOfYear(_345)+adj-1)/7);
if(_347==_346){
week++;
}
return week;
};
}
if(!dojo._hasResource["terian.util.format"]){
dojo._hasResource["terian.util.format"]=true;
dojo.provide("terian.util.format");
terian.util.format.defaultCurrency="AUD";
terian.util.format.currency=function(_348,_349){
_349=_349||terian.util.format.defaultCurrency;
return dojo.currency.format(_348,{currency:_349});
};
terian.util.format.amount=function(_34a){
return dojo.number.format(_34a,{places:2});
};
terian.util.format.dateTime=function(date){
return dojo.date.locale.format(date||new Date(),{datePattern:"d MMM yyyy",timePattern:"hh:mm aa"});
};
terian.util.format.date=function(date,_34b){
return dojo.date.locale.format(date||new Date(),{selector:"date",datePattern:_34b||"d MMM yyyy"});
};
}
if(!dojo._hasResource["terian.widget.HoverMixin"]){
dojo._hasResource["terian.widget.HoverMixin"]=true;
dojo.provide("terian.widget.HoverMixin");
dojo.declare("terian.widget.HoverMixin",null,{_onHover:function(e){
dojo.addClass(e.currentTarget,"terianHover");
},_onUnhover:function(e){
dojo.removeClass(e.currentTarget,"terianHover");
}});
}
if(!dojo._hasResource["terian.widget.CatalogueItem"]){
dojo._hasResource["terian.widget.CatalogueItem"]=true;
dojo.provide("terian.widget.CatalogueItem");
dojo.declare("terian.widget.CatalogueItem",[dijit._Widget,dijit._Templated,terian.widget.HoverMixin],{domainObject:null,templateString:dojo.cache("terian.widget","templates/CatalogueItem.html","<li class=\"terianObjectImage\" dojoAttachEvent=\"onmouseenter:_onHover,onmouseleave:_onUnhover,onclick:_show\"\n\t><div class=\"terianImageWrapper\"\n\t\t><span class=\"terianImageFrame\"></span\n\t\t><img class=\"terianImage\" dojoAttachPoint=\"imageNode\" src=\"\"></img\n\t></div\n\t><div class=\"terianShortDescriptionName\" dojoAttachPoint=\"descriptionNode\"></div\n\t><div class=\"terianProductName\" dojoAttachPoint=\"nameNode\"></div\n\t><div class=\"terianBrandName terianClickable\" dojoAttachPoint=\"brandNode\" dojoAttachEvent=\"onclick:_showBrand\"></div\n\t><div class=\"terianPrice\"\n\t\t><span class=\"terianSalesMethod\" dojoAttachPoint=\"salesMethodNode\"></span\n\t\t><span class=\"terianProductOriginalPrice\" dojoAttachPoint=\"originalPriceNode\"></span\n\t\t>&nbsp;<span class=\"terianProductPrice\" dojoAttachPoint=\"priceNode\"></span\n\t></div\n></li>\n"),widgetsInTemplate:false,constructor:function(_34c){
this.domainObject=_34c.domainObject;
this.hideBrand=_34c.hideBrand;
console.info("construct GalleryObjectWidget",this.domainObject.declaredClass,this.domainObject.treeId);
},startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
this._setupImage();
if(!this.hideBrand&&this.domainObject.declaredClass=="terian.model.Product"){
this.brandNode.innerHTML=this.domainObject.treeParent.name;
}
this.nameNode.innerHTML=this.domainObject.name;
if(this.descriptionNode&&this.domainObject.shortDescription){
this.descriptionNode.innerHTML=this.domainObject.shortDescription;
}
if(this.originalPriceNode&&this.domainObject.percentage&&this.domainObject.salesMethod=="ORDER"){
dojo.attr(this.originalPriceNode,"innerHTML",terian.util.format.currency(this.domainObject.price));
}
if(this.priceNode&&this.domainObject.price){
if(this.domainObject.percentage&&this.domainObject.salesMethod=="ORDER"){
dojo.attr(this.priceNode,"innerHTML",terian.util.format.currency(terian.model.pricer.price(this.domainObject.price,this.domainObject.percentage)));
}else{
this.priceNode.innerHTML=terian.util.format.currency(this.domainObject.price);
}
}
if(this.salesMethodNode&&this.domainObject.salesMethod){
dojo.attr(this.salesMethodNode,"innerHTML",terian.nlsi.store["salesMethod"+this.domainObject.salesMethod]);
}
},_setupImage:function(){
var _34d;
if(this.domainObject.declaredClass=="terian.model.Product"){
_34d=this.domainObject;
}else{
_34d=terian.catalogue.getProducts(this.domainObject)[0];
}
if(!_34d){
console.error("GalleryObjectWidget - no product for",this.domainObject.declaredClass,this.domainObject.treeId);
return;
}
this.imageNode.src=_34d.getImageCollection("small")[0];
this.imageNode.alt=_34d.treeParent.name+" "+_34d.name+" "+(_34d.shortDescription||"");
},_show:function(){
terian.location.set(this.domainObject);
},_showBrand:function(){
terian.location.set(this.domainObject.treeParent);
}});
}
if(!dojo._hasResource["terian.widget.CatalogueList"]){
dojo._hasResource["terian.widget.CatalogueList"]=true;
dojo.provide("terian.widget.CatalogueList");
dojo.declare("terian.widget.CatalogueList",[dijit._Widget,dijit._Templated],{domainObject:null,galleryObjects:null,productList:"",title:"",shortDescription:"",longDescription:"",templateString:dojo.cache("terian.widget","templates/CatalogueList.html","<div class=\"terianGalleryWidget\"\n\t><div dojoType=\"terian.widget.LinksWidget\" domainObject=\"terian.model.catalogue\"></div\n\t><h3 class=\"terianGalleryWidgetTitle\" dojoAttachPoint=\"titleNode\"></h3\n\t><span class=\"terianGallerySort\" dojoAttachPoint=\"sortNode\" style=\"display:none;\">Sort Price: \n\t\t<span class=\"terianClickable\" dojoAttachEvent=\"onclick:_sortPriceHigh\">High</span\n\t\t> <span class=\"terianClickable\" dojoAttachEvent=\"onclick:_sortPriceLow\">Low</span></span\n\t\t><div class=\"terianLongDescription\" dojoAttachPoint=\"longDescriptionNode\"></div\n\t><ul class=\"terianGalleryList\" dojoAttachPoint=\"containerNode\"></ul\n></div>\n"),widgetsInTemplate:true,constructor:function(_34e){
this.domainObject=_34e.domainObject;
},postMixInProperties:function(){
this.inherited(arguments);
if(this.domainObject){
this.galleryObjects=terian.catalogue.getChildren(this.domainObject);
this.title=this.domainObject.name;
this.shortDescription=this.domainObject.shortDescription;
this.longDescription=this.domainObject.longDescription;
}else{
if(this.productList){
this.galleryObjects=[];
var self=this;
dojo.forEach(this.productList.split(","),function(_34f){
var _350=terian.catalogue.getProduct(_34f);
if(_350){
self.galleryObjects.push(_350);
}else{
console.error("Invalid product",_34f);
}
});
}
}
},startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
dojo.attr(this.titleNode,"innerHTML",this.title);
if(this.shortDescriptionNode&&this.shortDescription){
dojo.attr(this.shortDescriptionNode,"innerHTML",this.shortDescription);
}
if(this.longDescriptionNode&&this.longDescription){
dojo.attr(this.longDescriptionNode,"innerHTML",this.longDescription);
}
var self=this;
dojo.forEach(this.galleryObjects,function(_351){
var _352=new terian.widget.CatalogueItem({domainObject:_351,hideBrand:self.domainObject&&self.domainObject.declaredClass=="terian.model.Brand"});
_352.startup();
dojo.place(_352.domNode,self.containerNode);
});
if(this.galleryObjects.length&&this.galleryObjects[0].declaredClass=="terian.model.Product"){
dojo.style(this.sortNode,"display","");
}
},_sortProducts:function(_353){
var self=this;
var _354=[];
dojo.forEach(this.getChildren(),function(_355){
if(_355.declaredClass="terian.widget.CatalogueItem"){
_354.push(_355);
self.containerNode.removeChild(_355.domNode);
}
});
_354.sort(_353);
dojo.forEach(_354,function(_356){
dojo.place(_356.domNode,self.containerNode);
});
},_sortPriceHigh:function(){
this._sortProducts(function(a,b){
return b.domainObject.price-a.domainObject.price;
});
},_sortPriceLow:function(){
this._sortProducts(function(a,b){
return a.domainObject.price-b.domainObject.price;
});
}});
}
if(!dojo._hasResource["terian.model.pricer"]){
dojo._hasResource["terian.model.pricer"]=true;
dojo.provide("terian.model.pricer");
terian.model.pricer=new function(){
this.priceOrder=function(_357){
_357.shippingCost=0;
_357.subTotal=0;
_357.totalPrice=0;
_357.totalTax=0;
_357.totalItems=0;
dojo.forEach(_357.orderItems,function(_358){
_357.subTotal+=terian.model.pricer.priceOrderItem(_358);
_357.totalItems+=_358.quantity;
});
_357.totalPrice=_357.subTotal;
if(_357.totalItems){
_357.shippingCost=(_357.subTotal<100)?5:0;
_357.totalPrice+=_357.shippingCost;
}
_357.totalPrice=parseFloat(_357.totalPrice.toFixed(2));
_357.totalTax=Math.round((100*_357.totalPrice)/11)/100;
_357.totalTax=parseFloat(_357.totalTax.toFixed(2));
return _357.totalPrice;
};
this.priceOrderItem=function(_359){
return this.price(_359.unitPrice,_359.percentage,_359.quantity);
};
this.price=function(_35a,_35b,_35c){
_35c=_35c||1;
if(_35b){
if(_35b<0){
_35b+=100;
}
_35a=(_35a*_35b);
_35a=Math.round(_35a-0.5);
_35a/=100;
}
var _35d=_35a*_35c;
return _35d;
};
};
}
if(!dojo._hasResource["dojox.fx._core"]){
dojo._hasResource["dojox.fx._core"]=true;
dojo.provide("dojox.fx._core");
dojox.fx._Line=function(_35e,end){
this.start=_35e;
this.end=end;
var _35f=dojo.isArray(_35e),d=(_35f?[]:end-_35e);
if(_35f){
dojo.forEach(this.start,function(s,i){
d[i]=this.end[i]-s;
},this);
this.getValue=function(n){
var res=[];
dojo.forEach(this.start,function(s,i){
res[i]=(d[i]*n)+s;
},this);
return res;
};
}else{
this.getValue=function(n){
return (d*n)+this.start;
};
}
};
}
if(!dojo._hasResource["dojox.fx.scroll"]){
dojo._hasResource["dojox.fx.scroll"]=true;
dojo.provide("dojox.fx.scroll");
dojo.experimental("dojox.fx.scroll");
dojox.fx.smoothScroll=function(args){
if(!args.target){
args.target=dojo.position(args.node,true);
}
var _360=dojo[(dojo.isIE?"isObject":"isFunction")](args["win"].scrollTo),_361={x:args.target.x,y:args.target.y};
if(!_360){
var _362=dojo.position(args.win);
_361.x-=_362.x;
_361.y-=_362.y;
}
var _363=(_360)?(function(val){
args.win.scrollTo(val[0],val[1]);
}):(function(val){
args.win.scrollLeft=val[0];
args.win.scrollTop=val[1];
});
var anim=new dojo.Animation(dojo.mixin({beforeBegin:function(){
if(this.curve){
delete this.curve;
}
var _364=_360?dojo._docScroll():{x:args.win.scrollLeft,y:args.win.scrollTop};
anim.curve=new dojox.fx._Line([_364.x,_364.y],[_361.x,_361.y]);
},onAnimate:_363},args));
return anim;
};
}
if(!dojo._hasResource["dojo.fx.easing"]){
dojo._hasResource["dojo.fx.easing"]=true;
dojo.provide("dojo.fx.easing");
dojo.fx.easing={linear:function(n){
return n;
},quadIn:function(n){
return Math.pow(n,2);
},quadOut:function(n){
return n*(n-2)*-1;
},quadInOut:function(n){
n=n*2;
if(n<1){
return Math.pow(n,2)/2;
}
return -1*((--n)*(n-2)-1)/2;
},cubicIn:function(n){
return Math.pow(n,3);
},cubicOut:function(n){
return Math.pow(n-1,3)+1;
},cubicInOut:function(n){
n=n*2;
if(n<1){
return Math.pow(n,3)/2;
}
n-=2;
return (Math.pow(n,3)+2)/2;
},quartIn:function(n){
return Math.pow(n,4);
},quartOut:function(n){
return -1*(Math.pow(n-1,4)-1);
},quartInOut:function(n){
n=n*2;
if(n<1){
return Math.pow(n,4)/2;
}
n-=2;
return -1/2*(Math.pow(n,4)-2);
},quintIn:function(n){
return Math.pow(n,5);
},quintOut:function(n){
return Math.pow(n-1,5)+1;
},quintInOut:function(n){
n=n*2;
if(n<1){
return Math.pow(n,5)/2;
}
n-=2;
return (Math.pow(n,5)+2)/2;
},sineIn:function(n){
return -1*Math.cos(n*(Math.PI/2))+1;
},sineOut:function(n){
return Math.sin(n*(Math.PI/2));
},sineInOut:function(n){
return -1*(Math.cos(Math.PI*n)-1)/2;
},expoIn:function(n){
return (n==0)?0:Math.pow(2,10*(n-1));
},expoOut:function(n){
return (n==1)?1:(-1*Math.pow(2,-10*n)+1);
},expoInOut:function(n){
if(n==0){
return 0;
}
if(n==1){
return 1;
}
n=n*2;
if(n<1){
return Math.pow(2,10*(n-1))/2;
}
--n;
return (-1*Math.pow(2,-10*n)+2)/2;
},circIn:function(n){
return -1*(Math.sqrt(1-Math.pow(n,2))-1);
},circOut:function(n){
n=n-1;
return Math.sqrt(1-Math.pow(n,2));
},circInOut:function(n){
n=n*2;
if(n<1){
return -1/2*(Math.sqrt(1-Math.pow(n,2))-1);
}
n-=2;
return 1/2*(Math.sqrt(1-Math.pow(n,2))+1);
},backIn:function(n){
var s=1.70158;
return Math.pow(n,2)*((s+1)*n-s);
},backOut:function(n){
n=n-1;
var s=1.70158;
return Math.pow(n,2)*((s+1)*n+s)+1;
},backInOut:function(n){
var s=1.70158*1.525;
n=n*2;
if(n<1){
return (Math.pow(n,2)*((s+1)*n-s))/2;
}
n-=2;
return (Math.pow(n,2)*((s+1)*n+s)+2)/2;
},elasticIn:function(n){
if(n==0||n==1){
return n;
}
var p=0.3;
var s=p/4;
n=n-1;
return -1*Math.pow(2,10*n)*Math.sin((n-s)*(2*Math.PI)/p);
},elasticOut:function(n){
if(n==0||n==1){
return n;
}
var p=0.3;
var s=p/4;
return Math.pow(2,-10*n)*Math.sin((n-s)*(2*Math.PI)/p)+1;
},elasticInOut:function(n){
if(n==0){
return 0;
}
n=n*2;
if(n==2){
return 1;
}
var p=0.3*1.5;
var s=p/4;
if(n<1){
n-=1;
return -0.5*(Math.pow(2,10*n)*Math.sin((n-s)*(2*Math.PI)/p));
}
n-=1;
return 0.5*(Math.pow(2,-10*n)*Math.sin((n-s)*(2*Math.PI)/p))+1;
},bounceIn:function(n){
return (1-dojo.fx.easing.bounceOut(1-n));
},bounceOut:function(n){
var s=7.5625;
var p=2.75;
var l;
if(n<(1/p)){
l=s*Math.pow(n,2);
}else{
if(n<(2/p)){
n-=(1.5/p);
l=s*Math.pow(n,2)+0.75;
}else{
if(n<(2.5/p)){
n-=(2.25/p);
l=s*Math.pow(n,2)+0.9375;
}else{
n-=(2.625/p);
l=s*Math.pow(n,2)+0.984375;
}
}
}
return l;
},bounceInOut:function(n){
if(n<0.5){
return dojo.fx.easing.bounceIn(n*2)/2;
}
return (dojo.fx.easing.bounceOut(n*2-1)/2)+0.5;
}};
}
if(!dojo._hasResource["dojo.fx.Toggler"]){
dojo._hasResource["dojo.fx.Toggler"]=true;
dojo.provide("dojo.fx.Toggler");
dojo.declare("dojo.fx.Toggler",null,{node:null,showFunc:dojo.fadeIn,hideFunc:dojo.fadeOut,showDuration:200,hideDuration:200,constructor:function(args){
var _365=this;
dojo.mixin(_365,args);
_365.node=args.node;
_365._showArgs=dojo.mixin({},args);
_365._showArgs.node=_365.node;
_365._showArgs.duration=_365.showDuration;
_365.showAnim=_365.showFunc(_365._showArgs);
_365._hideArgs=dojo.mixin({},args);
_365._hideArgs.node=_365.node;
_365._hideArgs.duration=_365.hideDuration;
_365.hideAnim=_365.hideFunc(_365._hideArgs);
dojo.connect(_365.showAnim,"beforeBegin",dojo.hitch(_365.hideAnim,"stop",true));
dojo.connect(_365.hideAnim,"beforeBegin",dojo.hitch(_365.showAnim,"stop",true));
},show:function(_366){
return this.showAnim.play(_366||0);
},hide:function(_367){
return this.hideAnim.play(_367||0);
}});
}
if(!dojo._hasResource["dojo.fx"]){
dojo._hasResource["dojo.fx"]=true;
dojo.provide("dojo.fx");
(function(){
var d=dojo,_368={_fire:function(evt,args){
if(this[evt]){
this[evt].apply(this,args||[]);
}
return this;
}};
var _369=function(_36a){
this._index=-1;
this._animations=_36a||[];
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(_369,{_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(_36b,_36c){
if(!this._current){
this._current=this._animations[this._index=0];
}
if(!_36c&&this._current.status()=="playing"){
return this;
}
var _36d=d.connect(this._current,"beforeBegin",this,function(){
this._fire("beforeBegin");
}),_36e=d.connect(this._current,"onBegin",this,function(arg){
this._fire("onBegin",arguments);
}),_36f=d.connect(this._current,"onPlay",this,function(arg){
this._fire("onPlay",arguments);
d.disconnect(_36d);
d.disconnect(_36e);
d.disconnect(_36f);
});
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(_370,_371){
this.pause();
var _372=this.duration*_370;
this._current=null;
d.some(this._animations,function(a){
if(a.duration<=_372){
this._current=a;
return true;
}
_372-=a.duration;
return false;
});
if(this._current){
this._current.gotoPercent(_372/this._current.duration,_371);
}
return this;
},stop:function(_373){
if(this._current){
if(_373){
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(_369,_368);
dojo.fx.chain=function(_374){
return new _369(_374);
};
var _375=function(_376){
this._animations=_376||[];
this._connects=[];
this._finished=0;
this.duration=0;
d.forEach(_376,function(a){
var _377=a.duration;
if(a.delay){
_377+=a.delay;
}
if(this.duration<_377){
this.duration=_377;
}
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","onEnd"],function(evt){
self._connects.push(d.connect(self._pseudoAnimation,evt,function(){
self._fire(evt,arguments);
}));
});
};
d.extend(_375,{_doAction:function(_378,args){
d.forEach(this._animations,function(a){
a[_378].apply(a,args);
});
return this;
},_onEnd:function(){
if(++this._finished>this._animations.length){
this._fire("onEnd");
}
},_call:function(_379,args){
var t=this._pseudoAnimation;
t[_379].apply(t,args);
},play:function(_37a,_37b){
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(_37c,_37d){
var ms=this.duration*_37c;
d.forEach(this._animations,function(a){
a.gotoPercent(a.duration<ms?1:(ms/a.duration),_37d);
});
this._call("gotoPercent",arguments);
return this;
},stop:function(_37e){
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(_375,_368);
dojo.fx.combine=function(_37f){
return new _375(_37f);
};
dojo.fx.wipeIn=function(args){
var node=args.node=d.byId(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 _380=d.style(node,"height");
return Math.max(_380,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.position(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["terian.widget.ThumbnailPicker"]){
dojo._hasResource["terian.widget.ThumbnailPicker"]=true;
dojo.provide("terian.widget.ThumbnailPicker");
dojo.experimental("widget.widget.ThumbnailPicker");
dojo.declare("terian.widget.ThumbnailPicker",[dijit._Widget,dijit._Templated],{imageStore:null,request:null,size:500,navSize:52,thumbHeight:75,thumbWidth:100,useLoadNotifier:false,useHyperlink:false,hyperlinkTarget:"new",isClickable:true,isScrollable:true,isHorizontal:true,autoLoad:true,linkAttr:"link",imageThumbAttr:"imageUrlThumb",imageLargeAttr:"imageUrl",pageSize:20,titleAttr:"title",templateString:dojo.cache("dojox.image","resources/ThumbnailPicker.html","<div dojoAttachPoint=\"outerNode\" class=\"thumbOuter\">\n\t<div dojoAttachPoint=\"navPrev\" class=\"thumbNav thumbClickable\">\n\t  <img src=\"\" dojoAttachPoint=\"navPrevImg\"/>    \n\t</div>\n\t<div dojoAttachPoint=\"thumbScroller\" class=\"thumbScroller\">\n\t  <div dojoAttachPoint=\"thumbsNode\" class=\"thumbWrapper\"></div>\n\t</div>\n\t<div dojoAttachPoint=\"navNext\" class=\"thumbNav thumbClickable\">\n\t  <img src=\"\" dojoAttachPoint=\"navNextImg\"/>  \n\t</div>\n</div>\n"),_thumbs:[],_thumbIndex:0,_maxPhotos:0,_loadedImages:{},postCreate:function(){
this.widgetid=this.id;
this.inherited(arguments);
this.pageSize=Number(this.pageSize);
this._scrollerSize=this.size-(this.navSize*2);
var _381=this._sizeProperty=this.isHorizontal?"width":"height";
dojo.style(this.outerNode,"textAlign","center");
dojo.style(this.outerNode,_381,this.size+"px");
dojo.style(this.thumbScroller,_381,this._scrollerSize+"px");
if(this.useHyperlink){
this.subscribe(this.getClickTopicName(),function(_382){
var _383=_382.index;
var url=this.imageStore.getValue(_382.data,this.linkAttr);
if(!url){
return;
}
if(this.hyperlinkTarget=="new"){
window.open(url);
}else{
window.location=url;
}
});
}
if(this.isClickable){
dojo.addClass(this.thumbsNode,"thumbClickable");
}
this._totalSize=0;
this.init();
},init:function(){
if(this.isInitialized){
return false;
}
var _384=this.isHorizontal?"Horiz":"Vert";
dojo.addClass(this.navPrev,"prev"+_384);
dojo.addClass(this.navNext,"next"+_384);
dojo.addClass(this.thumbsNode,"thumb"+_384);
dojo.addClass(this.outerNode,"thumb"+_384);
dojo.attr(this.navNextImg,"src",this._blankGif);
dojo.attr(this.navPrevImg,"src",this._blankGif);
this.connect(this.navPrev,"onclick","_prev");
this.connect(this.navNext,"onclick","_next");
this.isInitialized=true;
if(this.isHorizontal){
this._offsetAttr="offsetLeft";
this._sizeAttr="offsetWidth";
this._scrollAttr="scrollLeft";
}else{
this._offsetAttr="offsetTop";
this._sizeAttr="offsetHeight";
this._scrollAttr="scrollTop";
}
this._updateNavControls();
if(this.imageStore&&this.request){
this._loadNextPage();
}
return true;
},getClickTopicName:function(){
return (this.widgetId||this.id)+"/select";
},getShowTopicName:function(){
return (this.widgetId||this.id)+"/show";
},setDataStore:function(_385,_386,_387){
this.reset();
this.request={query:{},start:_386.start||0,count:_386.count||10,onBegin:dojo.hitch(this,function(_388){
this._maxPhotos=_388;
})};
if(_386.query){
dojo.mixin(this.request.query,_386.query);
}
if(_387){
dojo.forEach(["imageThumbAttr","imageLargeAttr","linkAttr","titleAttr"],function(_389){
if(_387[_389]){
this[_389]=_387[_389];
}
},this);
}
this.request.start=0;
this.request.count=this.pageSize;
this.imageStore=_385;
this._loadInProgress=false;
if(!this.init()){
this._loadNextPage();
}
},reset:function(){
this._loadedImages={};
dojo.forEach(this._thumbs,function(img){
if(img&&img.parentNode){
dojo.destroy(img);
}
});
this._thumbs=[];
this.isInitialized=false;
this._noImages=true;
},isVisible:function(_38a){
var img=this._thumbs[_38a];
if(!img){
return false;
}
var pos=this.isHorizontal?"offsetLeft":"offsetTop";
var size=this.isHorizontal?"offsetWidth":"offsetHeight";
var _38b=this.isHorizontal?"scrollLeft":"scrollTop";
var _38c=img[pos]-this.thumbsNode[pos];
return (_38c>=this.thumbScroller[_38b]&&_38c+img[size]<=this.thumbScroller[_38b]+this._scrollerSize);
},resize:function(dim){
var _38d=this.isHorizontal?"w":"h";
var _38e=0;
if(this._thumbs.length>0&&dojo.marginBox(this._thumbs[0]).w==0){
return;
}
dojo.forEach(this._thumbs,dojo.hitch(this,function(_38f){
var mb=dojo.marginBox(_38f.firstChild);
var size=mb[_38d];
_38e+=(Number(size)+10);
if(this.useLoadNotifier&&mb.w>0){
dojo.style(_38f.lastChild,"width",(mb.w-4)+"px");
}
dojo.style(_38f,"width",mb.w+"px");
}));
dojo.style(this.thumbsNode,this._sizeProperty,_38e+"px");
this._updateNavControls();
},_next:function(evt){
dojo.stopEvent(evt);
var pos=this.isHorizontal?"offsetLeft":"offsetTop";
var size=this.isHorizontal?"offsetWidth":"offsetHeight";
var _390=this.thumbsNode[pos];
var _391=this._thumbs[this._thumbIndex];
var _392=_391[pos]-_390;
var _393=-1,img;
for(var i=this._thumbIndex+1;i<this._thumbs.length;i++){
img=this._thumbs[i];
if(img[pos]-_390+img[size]-_392>this._scrollerSize){
this._showThumbs(i);
return;
}
}
},_prev:function(evt){
dojo.stopEvent(evt);
if(this.thumbScroller[this.isHorizontal?"scrollLeft":"scrollTop"]==0){
return;
}
var pos=this.isHorizontal?"offsetLeft":"offsetTop";
var size=this.isHorizontal?"offsetWidth":"offsetHeight";
var _394=this._thumbs[this._thumbIndex];
var _395=_394[pos]-this.thumbsNode[pos];
var _396=-1,img;
for(var i=this._thumbIndex-1;i>-1;i--){
img=this._thumbs[i];
if(_395-img[pos]>this._scrollerSize){
this._showThumbs(i+1);
return;
}
}
this._showThumbs(0);
},_checkLoad:function(img,_397){
dojo.publish(this.getShowTopicName(),[{index:_397}]);
this._updateNavControls();
this._loadingImages={};
this._thumbIndex=_397;
if(this.thumbsNode.offsetWidth-img.offsetLeft<(this._scrollerSize*2)){
this._loadNextPage();
}
},_showThumbs:function(_398){
_398=Math.min(Math.max(_398,0),this._maxPhotos);
if(_398>=this._maxPhotos){
return;
}
var img=this._thumbs[_398];
if(!img){
return;
}
var left=img.offsetLeft-this.thumbsNode.offsetLeft;
var top=img.offsetTop-this.thumbsNode.offsetTop;
var _399=this.isHorizontal?left:top;
if((_399>=this.thumbScroller[this._scrollAttr])&&(_399+img[this._sizeAttr]<=this.thumbScroller[this._scrollAttr]+this._scrollerSize)){
return;
}
if(this.isScrollable){
var _39a=this.isHorizontal?{x:left,y:0}:{x:0,y:top};
dojox.fx.smoothScroll({target:_39a,win:this.thumbScroller,duration:300,easing:dojo.fx.easing.easeOut,onEnd:dojo.hitch(this,"_checkLoad",img,_398)}).play(10);
}else{
if(this.isHorizontal){
this.thumbScroller.scrollLeft=left;
}else{
this.thumbScroller.scrollTop=top;
}
this._checkLoad(img,_398);
}
},markImageLoaded:function(_39b){
var _39c=dojo.byId("loadingDiv_"+this.widgetid+"_"+_39b);
if(_39c){
this._setThumbClass(_39c,"thumbLoaded");
}
this._loadedImages[_39b]=true;
},_setThumbClass:function(_39d,_39e){
if(!this.autoLoad){
return;
}
dojo.addClass(_39d,_39e);
},_loadNextPage:function(){
if(this._loadInProgress){
return;
}
this._loadInProgress=true;
var _39f=this.request.start+(this._noImages?0:this.pageSize);
var pos=_39f;
while(pos<this._thumbs.length&&this._thumbs[pos]){
pos++;
}
var _3a0=this.imageStore;
var _3a1=function(_3a2,_3a3){
if(_3a0!=this.imageStore){
return;
}
if(_3a2&&_3a2.length){
var _3a4=0;
var _3a5=dojo.hitch(this,function(){
if(_3a4>=_3a2.length){
this._loadInProgress=false;
return;
}
var _3a6=_3a4++;
this._loadImage(_3a2[_3a6],pos+_3a6,_3a5);
});
_3a5();
this._updateNavControls();
}else{
this._loadInProgress=false;
}
};
var _3a7=function(){
this._loadInProgress=false;
console.log("Error getting items");
};
this.request.onComplete=dojo.hitch(this,_3a1);
this.request.onError=dojo.hitch(this,_3a7);
this.request.start=_39f;
this._noImages=false;
this.imageStore.fetch(this.request);
},_loadImage:function(data,_3a8,_3a9){
var _3aa=this.imageStore;
var url=_3aa.getValue(data,this.imageThumbAttr);
var _3ab=dojo.create("div",{id:"img_"+this.widgetid+"_"+_3a8});
var img=dojo.create("img",{},_3ab);
img._index=_3a8;
img._data=data;
this._thumbs[_3a8]=_3ab;
var _3ac;
if(this.useLoadNotifier){
_3ac=dojo.create("div",{id:"loadingDiv_"+this.widgetid+"_"+_3a8},_3ab);
this._setThumbClass(_3ac,this._loadedImages[_3a8]?"thumbLoaded":"thumbNotifier");
}
var size=dojo.marginBox(this.thumbsNode);
var _3ad;
var _3ae;
if(this.isHorizontal){
_3ad=this.thumbWidth;
_3ae="w";
}else{
_3ad=this.thumbHeight;
_3ae="h";
}
size=size[_3ae];
var sl=this.thumbScroller.scrollLeft,st=this.thumbScroller.scrollTop;
dojo.style(this.thumbsNode,this._sizeProperty,(size+_3ad+20)+"px");
this.thumbScroller.scrollLeft=sl;
this.thumbScroller.scrollTop=st;
this.thumbsNode.appendChild(_3ab);
dojo.connect(img,"onload",this,dojo.hitch(this,function(){
if(_3aa!=this.imageStore){
return false;
}
this.resize();
setTimeout(_3a9,0);
return false;
}));
dojo.connect(img,"onclick",this,function(evt){
dojo.publish(this.getClickTopicName(),[{index:evt.target._index,data:evt.target._data,url:img.getAttribute("src"),largeUrl:this.imageStore.getValue(data,this.imageLargeAttr),title:this.imageStore.getValue(data,this.titleAttr),link:this.imageStore.getValue(data,this.linkAttr)}]);
dojo.stopEvent(evt);
return false;
});
dojo.addClass(img,"imageGalleryThumb");
img.setAttribute("src",url);
var _3af=this.imageStore.getValue(data,this.titleAttr);
if(_3af){
img.setAttribute("title",_3af);
}
this._updateNavControls();
},_updateNavControls:function(){
var _3b0=[];
var _3b1=function(node,add){
var fn=add?"addClass":"removeClass";
dojo[fn](node,"enabled");
dojo[fn](node,"thumbClickable");
};
var pos=this.isHorizontal?"scrollLeft":"scrollTop";
var size=this.isHorizontal?"offsetWidth":"offsetHeight";
_3b1(this.navPrev,(this.thumbScroller[pos]>0));
var last=this._thumbs[this._thumbs.length-1];
var _3b2=(this.thumbScroller[pos]+this._scrollerSize<this.thumbsNode[size]);
_3b1(this.navNext,_3b2);
}});
}
if(!dojo._hasResource["terian.widget.Gallery"]){
dojo._hasResource["terian.widget.Gallery"]=true;
dojo.provide("terian.widget.Gallery");
dojo.declare("terian.widget.Gallery",[dijit._Widget,dijit._Templated,terian.widget.HoverMixin],{product:null,productId:"",templateString:dojo.cache("terian.widget","templates/Gallery.html","<div class=\"terianGallery\"\n\t><div dojoType=\"terian.widget.ThumbnailPicker\" dojoAttachPoint=\"thumbPicker\" isClickable=\"true\" isHorizontal=\"false\" size=\"430\" navSize=\"24\"></div\n\t><div class=\"terianImageWrapper terianMedium\" dojoAttachEvent=\"onmouseenter:_onHover,onmouseleave:_onUnhover,onclick:_toggleLarge\"\n\t\t><div class=\"terianFrameTop\">&nbsp;</div\n\t\t><div class=\"terianFrameMiddle\" \n\t\t\t><img class=\"terianImage\" dojoAttachPoint=\"mediumImageNode\"  src=\"\"></img\n\t\t\t><span>Enlarge</span\n\t\t></div\n\t\t><div class=\"terianFrameBottom\">Click the image to enlarge.</div\n\t></div\n\t><div class=\"terianLarge\" dojoAttachPoint=\"largeWrapperNode\" style=\"display:none\"\n\t\t><img class=\"terianImage\" dojoAttachPoint=\"largeImageNode\" src=\"\"></img\n\t></div\n></div>\n"),widgetsInTemplate:true,_size:"Medium",postMixInProperties:function(){
this.product=this.product||terian.catalogue.getProduct(this.productId);
},startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
var _3b3=this.product.getImageCollection("medium");
this.mediumImageNode.src=_3b3[0];
this.mediumImageNode.alt=this.product.treeParent.name+" "+this.product.name+" "+(this.product.shortDescription||"");
this.largeImageNode.src=this.mediumImageNode.src;
this.largeImageNode.alt=this.mediumImageNode.alt;
var _3b4={query:{},count:20};
var _3b5={imageThumbAttr:"thumb",imageLargeAttr:"medium"};
var _3b6=dojo.map(_3b3,function(path){
return {thumb:path,medium:path};
});
var _3b7=new dojo.data.ItemFileReadStore({data:{items:_3b6}});
this.thumbPicker.setDataStore(_3b7,_3b4,_3b5);
this.subscribe(this.thumbPicker.getClickTopicName(),function(_3b8){
var _3b9=this.mediumImageNode.src;
this.mediumImageNode.src=_3b8.largeUrl;
this.largeImageNode.src=_3b8.largeUrl;
if(_3b9!=this.mediumImageNode.src){
this._publishEvent();
}
});
this.connect(document,"onclick","_hideLarge");
},_toggleLarge:function(e){
var _3ba=dojo.style(this.largeWrapperNode,"display")=="none";
dojo.style(this.largeWrapperNode,"display",_3ba?"":"none");
this._size=_3ba?"Large":"Medium";
if(_3ba){
this._publishEvent();
}
dojo.stopEvent(e);
},_hideLarge:function(){
dojo.style(this.largeWrapperNode,"display","none");
this._size="Medium";
},_publishEvent:function(){
dojo.publish("/terian/gallery",[{action:"view",productId:this.productId,image:this.mediumImageNode.src,size:this._size}]);
}});
}
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(_3bb,_3bc){
var rxp="^";
var c=null;
for(var i=0;i<_3bb.length;i++){
c=_3bb.charAt(i);
switch(c){
case "\\":
rxp+=c;
i++;
rxp+=_3bb.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(_3bc){
return new RegExp(rxp,"mi");
}else{
return new RegExp(rxp,"m");
}
};
}
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(_3bd,_3be){
var _3bf=[];
function _3c0(attr,dir,comp,s){
return function(_3c1,_3c2){
var a=s.getValue(_3c1,attr);
var b=s.getValue(_3c2,attr);
return dir*comp(a,b);
};
};
var _3c3;
var map=_3be.comparatorMap;
var bc=dojo.data.util.sorter.basicComparator;
for(var i=0;i<_3bd.length;i++){
_3c3=_3bd[i];
var attr=_3c3.attribute;
if(attr){
var dir=(_3c3.descending)?-1:1;
var comp=bc;
if(map){
if(typeof attr!=="string"&&("toString" in attr)){
attr=attr.toString();
}
comp=map[attr]||bc;
}
_3bf.push(_3c0(attr,dir,comp,_3be));
}
}
return function(rowA,rowB){
var i=0;
while(i<_3bf.length){
var ret=_3bf[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(_3c4){
_3c4=_3c4||{};
if(!_3c4.store){
_3c4.store=this;
}
var self=this;
var _3c5=function(_3c6,_3c7){
if(_3c7.onError){
var _3c8=_3c7.scope||dojo.global;
_3c7.onError.call(_3c8,_3c6,_3c7);
}
};
var _3c9=function(_3ca,_3cb){
var _3cc=_3cb.abort||null;
var _3cd=false;
var _3ce=_3cb.start?_3cb.start:0;
var _3cf=(_3cb.count&&(_3cb.count!==Infinity))?(_3ce+_3cb.count):_3ca.length;
_3cb.abort=function(){
_3cd=true;
if(_3cc){
_3cc.call(_3cb);
}
};
var _3d0=_3cb.scope||dojo.global;
if(!_3cb.store){
_3cb.store=self;
}
if(_3cb.onBegin){
_3cb.onBegin.call(_3d0,_3ca.length,_3cb);
}
if(_3cb.sort){
_3ca.sort(dojo.data.util.sorter.createSortFunction(_3cb.sort,self));
}
if(_3cb.onItem){
for(var i=_3ce;(i<_3ca.length)&&(i<_3cf);++i){
var item=_3ca[i];
if(!_3cd){
_3cb.onItem.call(_3d0,item,_3cb);
}
}
}
if(_3cb.onComplete&&!_3cd){
var _3d1=null;
if(!_3cb.onItem){
_3d1=_3ca.slice(_3ce,_3cf);
}
_3cb.onComplete.call(_3d0,_3d1,_3cb);
}
};
this._fetchItems(_3c4,_3c9,_3c5);
return _3c4;
};
}
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(_3d2){
this._arrayOfAllItems=[];
this._arrayOfTopLevelItems=[];
this._loadFinished=false;
this._jsonFileUrl=_3d2.url;
this._ccUrl=_3d2.url;
this.url=_3d2.url;
this._jsonData=_3d2.data;
this.data=null;
this._datatypeMap=_3d2.typeMap||{};
if(!this._datatypeMap["Date"]){
this._datatypeMap["Date"]={type:Date,deserialize:function(_3d3){
return dojo.date.stamp.fromISOString(_3d3);
}};
}
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(_3d2.urlPreventCache!==undefined){
this.urlPreventCache=_3d2.urlPreventCache?true:false;
}
if(_3d2.hierarchical!==undefined){
this.hierarchical=_3d2.hierarchical?true:false;
}
if(_3d2.clearOnClose){
this.clearOnClose=true;
}
if("failOk" in _3d2){
this.failOk=_3d2.failOk?true:false;
}
},url:"",_ccUrl:"",data:null,typeMap:null,clearOnClose:false,urlPreventCache:false,failOk:false,hierarchical:true,_assertIsItem:function(item){
if(!this.isItem(item)){
throw new Error("dojo.data.ItemFileReadStore: Invalid item argument.");
}
},_assertIsAttribute:function(_3d4){
if(typeof _3d4!=="string"){
throw new Error("dojo.data.ItemFileReadStore: Invalid attribute argument.");
}
},getValue:function(item,_3d5,_3d6){
var _3d7=this.getValues(item,_3d5);
return (_3d7.length>0)?_3d7[0]:_3d6;
},getValues:function(item,_3d8){
this._assertIsItem(item);
this._assertIsAttribute(_3d8);
return (item[_3d8]||[]).slice(0);
},getAttributes:function(item){
this._assertIsItem(item);
var _3d9=[];
for(var key in item){
if((key!==this._storeRefPropName)&&(key!==this._itemNumPropName)&&(key!==this._rootItemPropName)&&(key!==this._reverseRefMap)){
_3d9.push(key);
}
}
return _3d9;
},hasAttribute:function(item,_3da){
this._assertIsItem(item);
this._assertIsAttribute(_3da);
return (_3da in item);
},containsValue:function(item,_3db,_3dc){
var _3dd=undefined;
if(typeof _3dc==="string"){
_3dd=dojo.data.util.filter.patternToRegExp(_3dc,false);
}
return this._containsValue(item,_3db,_3dc,_3dd);
},_containsValue:function(item,_3de,_3df,_3e0){
return dojo.some(this.getValues(item,_3de),function(_3e1){
if(_3e1!==null&&!dojo.isObject(_3e1)&&_3e0){
if(_3e1.toString().match(_3e0)){
return true;
}
}else{
if(_3df===_3e1){
return true;
}
}
});
},isItem:function(_3e2){
if(_3e2&&_3e2[this._storeRefPropName]===this){
if(this._arrayOfAllItems[_3e2[this._itemNumPropName]]===_3e2){
return true;
}
}
return false;
},isItemLoaded:function(_3e3){
return this.isItem(_3e3);
},loadItem:function(_3e4){
this._assertIsItem(_3e4.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(_3e5,_3e6,_3e7){
var self=this,_3e8=function(_3e9,_3ea){
var _3eb=[],i,key;
if(_3e9.query){
var _3ec,_3ed=_3e9.queryOptions?_3e9.queryOptions.ignoreCase:false;
var _3ee={};
for(key in _3e9.query){
_3ec=_3e9.query[key];
if(typeof _3ec==="string"){
_3ee[key]=dojo.data.util.filter.patternToRegExp(_3ec,_3ed);
}else{
if(_3ec instanceof RegExp){
_3ee[key]=_3ec;
}
}
}
for(i=0;i<_3ea.length;++i){
var _3ef=true;
var _3f0=_3ea[i];
if(_3f0===null){
_3ef=false;
}else{
for(key in _3e9.query){
_3ec=_3e9.query[key];
if(!self._containsValue(_3f0,key,_3ec,_3ee[key])){
_3ef=false;
}
}
}
if(_3ef){
_3eb.push(_3f0);
}
}
_3e6(_3eb,_3e9);
}else{
for(i=0;i<_3ea.length;++i){
var item=_3ea[i];
if(item!==null){
_3eb.push(item);
}
}
_3e6(_3eb,_3e9);
}
};
if(this._loadFinished){
_3e8(_3e5,this._getItemsArray(_3e5.queryOptions));
}else{
if(this._jsonFileUrl!==this._ccUrl){
dojo.deprecated("dojo.data.ItemFileReadStore: ","To change the url, set the url property of the store,"+" not _jsonFileUrl.  _jsonFileUrl support will be removed in 2.0");
this._ccUrl=this._jsonFileUrl;
this.url=this._jsonFileUrl;
}else{
if(this.url!==this._ccUrl){
this._jsonFileUrl=this.url;
this._ccUrl=this.url;
}
}
if(this.data!=null&&this._jsonData==null){
this._jsonData=this.data;
this.data=null;
}
if(this._jsonFileUrl){
if(this._loadInProgress){
this._queuedFetches.push({args:_3e5,filter:_3e8});
}else{
this._loadInProgress=true;
var _3f1={url:self._jsonFileUrl,handleAs:"json-comment-optional",preventCache:this.urlPreventCache,failOk:this.failOk};
var _3f2=dojo.xhrGet(_3f1);
_3f2.addCallback(function(data){
try{
self._getItemsFromLoadedData(data);
self._loadFinished=true;
self._loadInProgress=false;
_3e8(_3e5,self._getItemsArray(_3e5.queryOptions));
self._handleQueuedFetches();
}
catch(e){
self._loadFinished=true;
self._loadInProgress=false;
_3e7(e,_3e5);
}
});
_3f2.addErrback(function(_3f3){
self._loadInProgress=false;
_3e7(_3f3,_3e5);
});
var _3f4=null;
if(_3e5.abort){
_3f4=_3e5.abort;
}
_3e5.abort=function(){
var df=_3f2;
if(df&&df.fired===-1){
df.cancel();
df=null;
}
if(_3f4){
_3f4.call(_3e5);
}
};
}
}else{
if(this._jsonData){
try{
this._loadFinished=true;
this._getItemsFromLoadedData(this._jsonData);
this._jsonData=null;
_3e8(_3e5,this._getItemsArray(_3e5.queryOptions));
}
catch(e){
_3e7(e,_3e5);
}
}else{
_3e7(new Error("dojo.data.ItemFileReadStore: No JSON source data was provided as either URL or a nested Javascript object."),_3e5);
}
}
}
},_handleQueuedFetches:function(){
if(this._queuedFetches.length>0){
for(var i=0;i<this._queuedFetches.length;i++){
var _3f5=this._queuedFetches[i],_3f6=_3f5.args,_3f7=_3f5.filter;
if(_3f7){
_3f7(_3f6,this._getItemsArray(_3f6.queryOptions));
}else{
this.fetchItemByIdentity(_3f6);
}
}
this._queuedFetches=[];
}
},_getItemsArray:function(_3f8){
if(_3f8&&_3f8.deep){
return this._arrayOfAllItems;
}
return this._arrayOfTopLevelItems;
},close:function(_3f9){
if(this.clearOnClose&&this._loadFinished&&!this._loadInProgress){
if(((this._jsonFileUrl==""||this._jsonFileUrl==null)&&(this.url==""||this.url==null))&&this.data==null){
console.debug("dojo.data.ItemFileReadStore: WARNING!  Data reload "+" information has not been provided."+"  Please set 'url' or 'data' to the appropriate value before"+" the next fetch");
}
this._arrayOfAllItems=[];
this._arrayOfTopLevelItems=[];
this._loadFinished=false;
this._itemsByIdentity=null;
this._loadInProgress=false;
this._queuedFetches=[];
}
},_getItemsFromLoadedData:function(_3fa){
var _3fb=false,self=this;
function _3fc(_3fd){
var _3fe=((_3fd!==null)&&(typeof _3fd==="object")&&(!dojo.isArray(_3fd)||_3fb)&&(!dojo.isFunction(_3fd))&&(_3fd.constructor==Object||dojo.isArray(_3fd))&&(typeof _3fd._reference==="undefined")&&(typeof _3fd._type==="undefined")&&(typeof _3fd._value==="undefined")&&self.hierarchical);
return _3fe;
};
function _3ff(_400){
self._arrayOfAllItems.push(_400);
for(var _401 in _400){
var _402=_400[_401];
if(_402){
if(dojo.isArray(_402)){
var _403=_402;
for(var k=0;k<_403.length;++k){
var _404=_403[k];
if(_3fc(_404)){
_3ff(_404);
}
}
}else{
if(_3fc(_402)){
_3ff(_402);
}
}
}
}
};
this._labelAttr=_3fa.label;
var i,item;
this._arrayOfAllItems=[];
this._arrayOfTopLevelItems=_3fa.items;
for(i=0;i<this._arrayOfTopLevelItems.length;++i){
item=this._arrayOfTopLevelItems[i];
if(dojo.isArray(item)){
_3fb=true;
}
_3ff(item);
item[this._rootItemPropName]=true;
}
var _405={},key;
for(i=0;i<this._arrayOfAllItems.length;++i){
item=this._arrayOfAllItems[i];
for(key in item){
if(key!==this._rootItemPropName){
var _406=item[key];
if(_406!==null){
if(!dojo.isArray(_406)){
item[key]=[_406];
}
}else{
item[key]=[null];
}
}
_405[key]=key;
}
}
while(_405[this._storeRefPropName]){
this._storeRefPropName+="_";
}
while(_405[this._itemNumPropName]){
this._itemNumPropName+="_";
}
while(_405[this._reverseRefMap]){
this._reverseRefMap+="_";
}
var _407;
var _408=_3fa.identifier;
if(_408){
this._itemsByIdentity={};
this._features["dojo.data.api.Identity"]=_408;
for(i=0;i<this._arrayOfAllItems.length;++i){
item=this._arrayOfAllItems[i];
_407=item[_408];
var _409=_407[0];
if(!this._itemsByIdentity[_409]){
this._itemsByIdentity[_409]=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: ["+_408+"].  Value collided: ["+_409+"]");
}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: ["+_408+"].  Value collided: ["+_409+"]");
}
}
}
}
}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){
_407=item[key];
for(var j=0;j<_407.length;++j){
_406=_407[j];
if(_406!==null&&typeof _406=="object"){
if(("_type" in _406)&&("_value" in _406)){
var type=_406._type;
var _40a=this._datatypeMap[type];
if(!_40a){
throw new Error("dojo.data.ItemFileReadStore: in the typeMap constructor arg, no object class was specified for the datatype '"+type+"'");
}else{
if(dojo.isFunction(_40a)){
_407[j]=new _40a(_406._value);
}else{
if(dojo.isFunction(_40a.deserialize)){
_407[j]=_40a.deserialize(_406._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(_406._reference){
var _40b=_406._reference;
if(!dojo.isObject(_40b)){
_407[j]=this._getItemByIdentity(_40b);
}else{
for(var k=0;k<this._arrayOfAllItems.length;++k){
var _40c=this._arrayOfAllItems[k],_40d=true;
for(var _40e in _40b){
if(_40c[_40e]!=_40b[_40e]){
_40d=false;
}
}
if(_40d){
_407[j]=_40c;
}
}
}
if(this.referenceIntegrity){
var _40f=_407[j];
if(this.isItem(_40f)){
this._addReferenceToMap(_40f,item,key);
}
}
}else{
if(this.isItem(_406)){
if(this.referenceIntegrity){
this._addReferenceToMap(_406,item,key);
}
}
}
}
}
}
}
},_addReferenceToMap:function(_410,_411,_412){
},getIdentity:function(item){
var _413=this._features["dojo.data.api.Identity"];
if(_413===Number){
return item[this._itemNumPropName];
}else{
var _414=item[_413];
if(_414){
return _414[0];
}
}
return null;
},fetchItemByIdentity:function(_415){
var item,_416;
if(!this._loadFinished){
var self=this;
if(this._jsonFileUrl!==this._ccUrl){
dojo.deprecated("dojo.data.ItemFileReadStore: ","To change the url, set the url property of the store,"+" not _jsonFileUrl.  _jsonFileUrl support will be removed in 2.0");
this._ccUrl=this._jsonFileUrl;
this.url=this._jsonFileUrl;
}else{
if(this.url!==this._ccUrl){
this._jsonFileUrl=this.url;
this._ccUrl=this.url;
}
}
if(this.data!=null&&this._jsonData==null){
this._jsonData=this.data;
this.data=null;
}
if(this._jsonFileUrl){
if(this._loadInProgress){
this._queuedFetches.push({args:_415});
}else{
this._loadInProgress=true;
var _417={url:self._jsonFileUrl,handleAs:"json-comment-optional",preventCache:this.urlPreventCache,failOk:this.failOk};
var _418=dojo.xhrGet(_417);
_418.addCallback(function(data){
var _419=_415.scope?_415.scope:dojo.global;
try{
self._getItemsFromLoadedData(data);
self._loadFinished=true;
self._loadInProgress=false;
item=self._getItemByIdentity(_415.identity);
if(_415.onItem){
_415.onItem.call(_419,item);
}
self._handleQueuedFetches();
}
catch(error){
self._loadInProgress=false;
if(_415.onError){
_415.onError.call(_419,error);
}
}
});
_418.addErrback(function(_41a){
self._loadInProgress=false;
if(_415.onError){
var _41b=_415.scope?_415.scope:dojo.global;
_415.onError.call(_41b,_41a);
}
});
}
}else{
if(this._jsonData){
self._getItemsFromLoadedData(self._jsonData);
self._jsonData=null;
self._loadFinished=true;
item=self._getItemByIdentity(_415.identity);
if(_415.onItem){
_416=_415.scope?_415.scope:dojo.global;
_415.onItem.call(_416,item);
}
}
}
}else{
item=this._getItemByIdentity(_415.identity);
if(_415.onItem){
_416=_415.scope?_415.scope:dojo.global;
_415.onItem.call(_416,item);
}
}
},_getItemByIdentity:function(_41c){
var item=null;
if(this._itemsByIdentity){
item=this._itemsByIdentity[_41c];
}else{
item=this._arrayOfAllItems[_41c];
}
if(item===undefined){
item=null;
}
return item;
},getIdentityAttributes:function(item){
var _41d=this._features["dojo.data.api.Identity"];
if(_41d===Number){
return null;
}else{
return [_41d];
}
},_forceLoad:function(){
var self=this;
if(this._jsonFileUrl!==this._ccUrl){
dojo.deprecated("dojo.data.ItemFileReadStore: ","To change the url, set the url property of the store,"+" not _jsonFileUrl.  _jsonFileUrl support will be removed in 2.0");
this._ccUrl=this._jsonFileUrl;
this.url=this._jsonFileUrl;
}else{
if(this.url!==this._ccUrl){
this._jsonFileUrl=this.url;
this._ccUrl=this.url;
}
}
if(this.data!=null&&this._jsonData==null){
this._jsonData=this.data;
this.data=null;
}
if(this._jsonFileUrl){
var _41e={url:this._jsonFileUrl,handleAs:"json-comment-optional",preventCache:this.urlPreventCache,failOk:this.failOk,sync:true};
var _41f=dojo.xhrGet(_41e);
_41f.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;
}
});
_41f.addErrback(function(_420){
throw _420;
});
}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["terian.widget.ProductWidget"]){
dojo._hasResource["terian.widget.ProductWidget"]=true;
dojo.provide("terian.widget.ProductWidget");
dojo.declare("terian.widget.ProductWidget",[dijit._Widget,dijit._Templated],{product:null,templateString:dojo.cache("terian.widget","templates/ProductWidget.html","<div class=\"terianProduct\"\n\t><div dojoType=\"terian.widget.Gallery\" productId=\"${product.treeId}\"></div\n\t><div class=\"terianProductInfo\"\n\t\t><h3\n\t\t\t><span class=\"terianShortDescriptionName\" dojoAttachPoint=\"shortDescriptionNode\"></span\n\t\t\t>&nbsp;<span class=\"terianProductName\" dojoAttachPoint=\"nameNode\"></span\n\t\t></h3\n\t\t><h4\n\t\t\t><span class=\"terianProductBrand terianClickable\" dojoAttachPoint=\"brandNode\" dojoAttachEvent=\"onclick:_showBrand\"></span\n\t\t></h4\n\t\t><div class=\"price\"\n\t\t\t><span class=\"terianProductOriginalPrice terianPrice\" dojoAttachPoint=\"originalPriceNode\"></span\n\t\t\t><span class=\"terianProductPrice terianPrice\" dojoAttachPoint=\"priceNode\"></span\t\t\t\n\t\t></div\n\t\t><span class=\"terianSalesMethod\" dojoAttachPoint=\"salesMethodNode\"></span\n\t\t><div class=\"terianTextWrapper\"\n\t\t\t><div class=\"terianProductLongDescription\" \n\t\t\t\t><div dojoType=\"terian.widget.TabPane\" tabLabels=\"Misa's Notes,The Details,Best Fit\" publishType=\"product\" publishId=\"${product.treeId}\"\n\t\t\t\t\t>${product.longDescription}<span><a id=\"misaFittingGuideLink\" onclick=\"terian.go.page('content/fitting.html')\">Bra Fitting Guide</a\n\t\t\t\t\t\t><span id=\"addThisButton\" class=\"addThisButton addthis_toolbox addthis_default_style\"\n\t\t\t\t\t\t\t><a class=\"addthis_button_compact at300m\"><span class=\"at300bs at15t_compact\"></span>Share</a\n\t\t\t\t\t\t\t><span class=\"addthis_separator\">|</span\n\t\t\t\t\t\t\t><a class=\"addthis_button_facebook\"></a\n\t\t\t\t\t\t\t><a class=\"addthis_button_myspace\"></a\n\t\t\t\t\t\t\t><a class=\"addthis_button_google\"></a\n\t\t\t\t\t\t\t><a class=\"addthis_button_twitter\"></a\n\t\t\t\t\t\t></span\n\t\t\t\t\t></span\n\t\t\t\t></div\n\t\t\t></div\n\t\t></div\n\t\t><div dojoType=\"terian.widget.OrderAddWidget\" productId=\"${product.treeId}\" quantityOptions=\"5\"\n\t\t\t><script type=\"dojo/connect\" event=\"startup\">\n\t\t\t\taddthis.toolbox(\"#addThisButton\", {username:\"miece\",ui_hover_direction:1}, \n\t\t\t\t\t\t\t\t{url:\"http://www.misa.com.au/?obj=Catalogue/${product.brandId}/${product.treeId}\"});\n\t\t\t</script\n\t\t></div\n\t></div\n></div>\n"),widgetsInTemplate:true,startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
this.nameNode.innerHTML=this.product.name;
this.brandNode.innerHTML=this.product.treeParent.name;
if(this.shortDescriptionNode){
dojo.attr(this.shortDescriptionNode,"innerHTML",this.product.shortDescription);
}
if(this.longDescriptionNode){
dojo.attr(this.longDescriptionNode,"innerHTML",this.product.longDescription);
}
if(this.product.percentage&&this.product.salesMethod=="ORDER"){
if(this.percentageNode){
dojo.attr(this.percentageNode,"innerHTML",this.product.percentage+"%");
}
if(this.originalPriceNode){
dojo.attr(this.originalPriceNode,"innerHTML",terian.util.format.currency(this.product.price));
}
dojo.attr(this.priceNode,"innerHTML",terian.util.format.currency(terian.model.pricer.price(this.product.price,this.product.percentage)));
}else{
dojo.attr(this.priceNode,"innerHTML",terian.util.format.currency(this.product.price));
}
if(this.salesMethodNode){
dojo.attr(this.salesMethodNode,"innerHTML",terian.nlsi.store["salesMethod"+this.product.salesMethod]);
}
},_showBrand:function(){
terian.location.set(this.product.treeParent);
}});
}
if(!dojo._hasResource["terian.catalogue"]){
dojo._hasResource["terian.catalogue"]=true;
dojo.provide("terian.catalogue");
terian.catalogue=new function(){
terian.content.registerViewCreator("terian.model.Catalogue",function(_421){
return {widget:new terian.widget.CatalogueList({domainObject:_421}),title:_421.name};
});
terian.content.registerViewCreator("terian.model.Brand",function(_422){
return {widget:new terian.widget.CatalogueList({domainObject:_422}),title:_422.name};
});
terian.content.registerViewCreator("terian.model.Keywords",function(_423){
return {widget:new terian.widget.CatalogueList({domainObject:_423}),title:_423.name};
});
terian.content.registerViewCreator("terian.model.Keyword",function(_424){
return {widget:new terian.widget.CatalogueList({domainObject:_424}),title:_424.name};
});
terian.content.registerViewCreator("terian.model.Product",function(_425){
return {widget:new terian.widget.ProductWidget({product:_425}),title:_425.treeParent.name+" "+_425.name};
});
this.init=function(){
terian.model.loader.loadCatalogue();
terian.model.catalogue.debug();
terian.model.keywords.debug();
terian.location.registerDomainTree(terian.model.catalogue);
terian.location.registerDomainTree(terian.model.keywords);
};
this.getBrands=function(){
return terian.model.catalogue.getBrands();
};
this.getBrand=function(_426){
return terian.model.catalogue.getChildById(_426);
};
this.getProduct=function(_427){
return terian.util.tree.find(terian.model.catalogue,function(node){
return node.declaredClass=="terian.model.Product"&&node.treeId==_427;
});
};
this.getProducts=function(_428){
var _429=[];
var _42a=function(_42b){
dojo.forEach(_42b,function(_42c){
if(_42c.declaredClass=="terian.model.Product"){
_429.push(_42c);
}else{
_42a(terian.catalogue.getChildren(_42c));
}
});
};
_42a([_428]);
return _429;
};
this.getChildren=function(_42d){
if(dojo.isArray(_42d.treeChildren)){
return _42d.treeChildren;
}
if(_42d.declaredClass=="terian.model.Keyword"){
return terian.util.keyword.findInTree(_42d.treeId,terian.model.catalogue);
}
return null;
};
this.getKeywords=function(){
return terian.model.keywords.treeChildren;
};
this.getKeyword=function(_42e){
return terian.model.keywords.getChildById(_42e);
};
};
}
if(!dojo._hasResource["dojo.cookie"]){
dojo._hasResource["dojo.cookie"]=true;
dojo.provide("dojo.cookie");
dojo.cookie=function(name,_42f,_430){
var c=document.cookie;
if(arguments.length==1){
var _431=c.match(new RegExp("(?:^|; )"+dojo.regexp.escapeString(name)+"=([^;]*)"));
return _431?decodeURIComponent(_431[1]):undefined;
}else{
_430=_430||{};
var exp=_430.expires;
if(typeof exp=="number"){
var d=new Date();
d.setTime(d.getTime()+exp*24*60*60*1000);
exp=_430.expires=d;
}
if(exp&&exp.toUTCString){
_430.expires=exp.toUTCString();
}
_42f=encodeURIComponent(_42f);
var _432=name+"="+_42f,_433;
for(_433 in _430){
_432+="; "+_433;
var _434=_430[_433];
if(_434!==true){
_432+="="+_434;
}
}
document.cookie=_432;
}
};
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["terian.model.OrderItem"]){
dojo._hasResource["terian.model.OrderItem"]=true;
dojo.provide("terian.model.OrderItem");
dojo.declare("terian.model.OrderItem",null,{order:null,productId:null,variantId:null,salesMethod:null,quantity:0,quantityAvailable:0,unitPrice:0,percentage:0,constructor:function(_435){
this.order=_435.order;
this.productId=_435.productId;
this.variantId=_435.variantId;
this.salesMethod=_435.salesMethod;
this.quantity=_435.quantity;
this.quantityAvailable=_435.quantityAvailable;
this.unitPrice=_435.unitPrice;
this.percentage=_435.percentage;
},getPrice:function(){
return terian.model.pricer.priceOrderItem(this);
},debug:function(_436){
_436=_436||"";
console.debug(_436+this.productId,this.variantId,"x"+this.quantity,this.percentage+"%");
},json:function(){
var copy=dojo.mixin({},this);
copy["class"]="com.terian.store.model.OrderItem";
delete copy.order;
delete copy.json;
delete copy.quantityAvailable;
return copy;
}});
}
if(!dojo._hasResource["terian.model.Order"]){
dojo._hasResource["terian.model.Order"]=true;
dojo.provide("terian.model.Order");
dojo.declare("terian.model.Order",terian.util.TreeMixin,{orderId:null,orderNumber:null,orderItems:null,orderStatus:null,totalItems:0,subTotal:0,shippingCost:0,totalPrice:0,totalTax:0,voucherId:null,paidTime:null,shippedTime:null,_valid:true,constructor:function(_437){
this.setOrderId(_437.orderId);
this.orderNumber=_437.orderNumber;
this.orderStatus=_437.orderStatus;
this.paidTime=_437.paidTime?new Date(_437.paidTime):null;
this.shippedTime=_437.shippedTime?new Date(_437.shippedTime):null;
this.voucherId=_437.voucherId;
this.orderItems=[];
if(_437["class"]=="com.terian.store.model.Order"){
for(var i in _437.orderItems){
var _438=_437.orderItems[i];
_438.order=this;
var _439=new terian.model.OrderItem(_438);
this.orderItems.push(_439);
}
terian.model.pricer.priceOrder(this);
}
},setOrderId:function(_43a){
this.orderId=this.treeId=_43a;
},setVoucherId:function(_43b){
if(!this.isEditable()){
return;
}
this.voucherId=_43b?_43b:null;
this._valid=false;
},changeOrder:function(_43c,_43d,_43e){
if(!this.isEditable()){
console.error("Attempt to change order",this.orderId,"with status",this.orderStatus);
return;
}
_43e=parseInt(_43e);
var idx=this._findItemIndex(_43c,_43d);
if(idx<0){
if(_43e>0){
var _43f=terian.catalogue.getProduct(_43c);
if(!_43f){
console.error("No such product",_43c);
return;
}
if(!_43f.hasVariant(_43d)){
console.error("No such variant",_43d,"for product",_43c);
return;
}
var item=new terian.model.OrderItem({order:this,productId:_43c,variantId:_43d,salesMethod:_43f.salesMethod,quantity:_43e,unitPrice:_43f.price,percentage:_43f.percentage});
this.orderItems.push(item);
this._valid=false;
this.orderChanged(item,"INSERT");
}else{
console.error("No such item in order",_43c,_43d,_43e);
}
}else{
var item=this.orderItems[idx];
item.quantity+=_43e;
if(item.quantity>0){
this.orderChanged(item,"UPDATE");
}else{
this.orderItems.splice(idx,1);
this.orderChanged(item,"DELETE");
}
}
},getOrderItems:function(){
return this.orderItems;
},isEmpty:function(){
return !this.orderItems||!this.orderItems.length;
},orderChanged:function(_440,_441){
this.orderStatus=terian.model.Order.NEW;
terian.model.pricer.priceOrder(this);
this.debug();
dojo.publish("/terian/order",[{order:this,orderItem:_440,action:_441}]);
},isEditable:function(){
return this.orderStatus==terian.model.Order.NEW||this.orderStatus==terian.model.Order.BAD_VOUCHER_ID||this.orderStatus==terian.model.Order.SHORT||this.orderStatus==terian.model.Order.STOCKED||this.orderStatus==terian.model.Order.ERROR;
},isRenewable:function(){
return this.orderStatus!=terian.model.Order.PAYABLE&&this.orderStatus!=terian.model.Order.PAID&&this.orderStatus!=terian.model.Order.SHIPPED;
},isPayable:function(){
return this.orderStatus==terian.model.Order.PAYABLE;
},isFinalised:function(){
return this.orderStatus==terian.model.Order.PAID||this.orderStatus==terian.model.Order.SHIPPED;
},isValid:function(){
return this._valid;
},_findItemIndex:function(_442,_443){
for(var i in this.orderItems){
var item=this.orderItems[i];
if(item.productId==_442&&item.variantId==_443){
return i;
}
}
return -1;
},debug:function(_444){
_444=_444||"";
console.debug(_444+"Order",this.orderId,this.orderStatus);
for(var i in this.orderItems){
this.orderItems[i].debug(_444+"  ");
}
console.debug(_444+"Order Total - ","Items:",this.totalItems,"Shipping:",this.shippingCost,"Price:",this.totalPrice);
},json:function(){
var copy=dojo.mixin({},this);
copy["class"]="com.terian.store.model.Order";
if(copy.orderId==terian.store.newOrder.orderId){
delete copy.orderId;
}
delete copy.treeParent;
delete copy.json;
return copy;
}});
terian.model.Order.NEW="NEW";
terian.model.Order.SHORT="SHORT";
terian.model.Order.BAD_VOUCHER_ID="BAD_VOUCHER_ID";
terian.model.Order.STOCKED="STOCKED";
terian.model.Order.PENDING="PENDING";
terian.model.Order.PAYABLE="PAYABLE";
terian.model.Order.PAID="PAID";
terian.model.Order.SHIPPED="SHIPPED";
terian.model.Order.ERROR="ERROR";
terian.model.Order.REFUSED="REFUSED";
}
if(!dojo._hasResource["terian.model.Orders"]){
dojo._hasResource["terian.model.Orders"]=true;
dojo.provide("terian.model.Orders");
dojo.declare("terian.model.Orders",terian.util.TreeMixin,{constructor:function(){
this.treeId="Orders";
this.name="Orders";
}});
}
if(!dojo._hasResource["terian.nlsi.store"]){
dojo._hasResource["terian.nlsi.store"]=true;
dojo.provide("terian.nlsi.store");
dojo.ready(function(){
terian.nlsi.store=dojo.i18n.getLocalization("terian","store");
});
}
if(!dojo._hasResource["terian.widget.OrderItemWidget"]){
dojo._hasResource["terian.widget.OrderItemWidget"]=true;
dojo.provide("terian.widget.OrderItemWidget");
dojo.declare("terian.widget.OrderItemWidget",[dijit._Widget,dijit._Templated],{orderItem:null,showAvailability:false,templateString:dojo.cache("terian.widget","templates/OrderItemWidget.html","<tr class=\"terianOrderItem\"\n\t\t><td class=\"item\"><img class=\"terianProductThumb\" dojoAttachPoint=\"thumbNode\" src=\"\"></img></td\n\t\t><td class=\"description\"\n\t\t\t><div class=\"productName terianClickable\" dojoAttachEvent=\"onclick:_showProduct\"\n\t\t\t\t><div class=\"terianProductShortDescription\" dojoAttachPoint=\"shortDescriptionNode\" dojoAttachEvent=\"\"></div\t\t\n\t\t\t\t><div class=\"terianProductName terianClickable\" dojoAttachPoint=\"nameNode\"></div\n\t\t\t></div\n\t\t\t><div class=\"terianBrandName terianClickable\" dojoAttachPoint=\"brandNode\" dojoAttachEvent=\"onclick:_showBrand\"></div\n\t\t\t><div class=\"terianSalesMethod\" dojoAttachPoint=\"salesMethodNode\"></div\n\t\t></td\n\t\t><td class=\"terianSize\" dojoAttachPoint=\"sizeNode\"></td\n\t\t><td class=\"terianQuantity\" dojoAttachPoint=\"quantityNode\"></td\n\t\t><td class=\"terianQuantityAvailable\" dojoAttachPoint=\"quantityAvailableNode\"></td\n\t\t><td class=\"terianUnitPrice\" dojoAttachPoint=\"unitPriceNode\"></td\n\t\t><td class=\"terianPercentage\" dojoAttachPoint=\"percentageNode\"></td\n\t\t><td class=\"terianItemPrice\" dojoAttachPoint=\"itemPriceNode\"></td\n\t\t><td class=\"remove\"><button type=\"button\" class=\"terianRemoveItem\" value=\"Remove\" dojoAttachPoint=\"removeItemNode\" dojoAttachEvent=\"onclick:_removeItem\">remove</button></td\n></tr>\n"),widgetsInTemplate:false,postMixInProperties:function(){
this.orderItemProduct=terian.catalogue.getProduct(this.orderItem.productId);
},startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
this.thumbNode.src=this.orderItemProduct.getImageCollection("small")[0];
this.nameNode.innerHTML=this.orderItemProduct.name;
this.brandNode.innerHTML=this.orderItemProduct.treeParent.name;
if(this.shortDescriptionNode){
this.shortDescriptionNode.innerHTML=this.orderItemProduct.shortDescription;
}
this.sizeNode.innerHTML=this.orderItem.variantId;
this.unitPriceNode.innerHTML=terian.util.format.currency(this.orderItem.unitPrice);
if(this.salesMethodNode){
dojo.attr(this.salesMethodNode,"innerHTML",terian.nlsi.store["salesMethod"+this.orderItem.salesMethod]);
}
if(this.orderItem.percentage){
dojo.create("div",{innerHTML:this.orderItem.salesMethod=="PREORDER"?terian.nlsi.store.deposit:this.orderItem.percentage+"%","class":"terianBonus"},this.percentageNode);
}
if(this.showAvailability){
var _445=this.orderItem.quantityAvailable==null?"":this.orderItem.quantityAvailable==0?terian.nlsi.store.invNone:dojo.string.substitute(terian.nlsi.store.invLowMsg,[this.orderItem.quantityAvailable]);
if(_445){
dojo.create("div",{innerHTML:_445,"class":"terianError"},this.quantityAvailableNode);
}
}
if(!this.orderItem.order.isEditable()){
dojo.style(this.removeItemNode,"display","none");
}
this.refresh();
},refresh:function(){
this.quantityNode.innerHTML=this.orderItem.quantity;
this.itemPriceNode.innerHTML=terian.util.format.currency(this.orderItem.getPrice());
},_removeItem:function(){
this.orderItem.order.changeOrder(this.orderItem.productId,this.orderItem.variantId,-1);
},_showProduct:function(){
terian.location.set(this.orderItemProduct);
},_showBrand:function(){
terian.location.set(this.orderItemProduct.treeParent);
}});
}
if(!dojo._hasResource["terian.widget.OrderWidget"]){
dojo._hasResource["terian.widget.OrderWidget"]=true;
dojo.provide("terian.widget.OrderWidget");
dojo.declare("terian.widget.OrderWidget",[dijit._Widget,dijit._Templated],{order:null,templateString:dojo.cache("terian.widget","templates/OrderWidget.html","<div class=\"terianOrder\"\n\t><h1>Shopping Bag</h1\n\t><h2 class=\"terianOrderId\" dojoAttachPoint=\"orderIdNode\"></h2\n\t><table class=\"terianOrderItems\"\n\t\t><thead\n\t\t\t><tr\n\t\t\t\t><th class=\"item\" width=\"10%\">Item</th\n\t\t\t\t><th width=\"20%\"></th\n\t\t\t\t><th width=\"5%\">Size</th\n\t\t\t\t><th width=\"10%\">Quantity</th\n\t\t\t\t><th dojoAttachPoint=\"quantityAvailableNode\" width=\"5%\"></th\n\t\t\t\t><th width=15%\">Unit Price</th\n\t\t\t\t><th dojoAttachPoint=\"percentageNode\" width=\"7%\"></th\n\t\t\t\t><th width=\"15%\">Price</th\n\t\t\t\t><th width=\"10%\"></th\n\t\t\t></tr\n\t\t></thead\n\t\t><tbody dojoAttachPoint=\"containerNode\"\n\t\t></tbody\n\t\t><tfoot\n\t\t\t><tr class=\"shipping\"\n\t\t\t\t><td colspan=\"3\" rowspan=\"2\" \n\t\t\t\t\t><div class=\"terianVoucherContainer\" dojoAttachPoint=\"voucherNode\" style=\"display:none;\"\n\t\t\t\t\t\t><h5 class=\"label\">Promotional Code</h5\n\t\t\t\t\t\t><p>Submit your Misa Code here:</p\n\t\t\t\t\t    ><input dojoType=\"dijit.form.TextBox\" uppercase=\"true\" dojoAttachPoint=\"voucherIdField\"></input\n\t\t\t\t\t    ><button class=\"terianValidateButton\" type=button\" value=\"Validate\" dojoAttachEvent=\"onclick:_validate\"\n\t\t\t\t\t\t\t><img src=\"images/button_submit_code.gif\" alt=\"Submit\"></img\n\t\t\t\t\t    </button\n\t\t\t\t    ></div\n\t\t\t\t></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td class=\"label\" colspan=\"2\">Shipping</td\n\t\t\t\t><td class=\"price\" id=\"shipping\" dojoAttachPoint=\"shippingNode\"></td\n\t\t\t\t><td></td\n\t\t\t></tr\n\t\t\t><!-- tr class=\"tax\"\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td class=\"label\" colspan=\"2\">Tax (inc. in Total)</td\n\t\t\t\t><td class=\"price\" id=\"shipping\" dojoAttachPoint=\"totalTaxNode\"></td\n\t\t\t\t><td></td\n\t\t\t></tr\n\t\t\t--><tr class=\"total\"\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td class=\"label\" colspan=\"2\">Total</td\n\t\t\t\t><td class=\"price\" id=\"totalPrice\" dojoAttachPoint=\"totalPriceNode\"></td\n\t\t\t\t><td class=\"button\">\n\t\t\t\t\t<button class=\"terianCheckoutButton\" type=\"button\" value=\"Checkout\" dojoAttachPoint=\"checkoutButton\" dojoAttachEvent=\"onclick:_checkout\" style=\"display:none;\"\n\t\t\t\t\t\t><img src=\"images/button_checkout_bag.gif\" alt=\"Checkout\"></img\n\t\t\t\t\t></button\n\t\t\t\t\t><button class=\"terianFinaliseButton\" type=\"button\" value=\"Finalise\" dojoAttachPoint=\"finaliseButton\" dojoAttachEvent=\"onclick:_finalise\" style=\"display:none;\"\n\t\t\t\t\t\t><img src=\"images/button_confirm.gif\" alt=\"Confirm\"></img\n\t\t\t\t\t></button\n\t\t\t\t\t><img src=\"images/ajax-loader-green.gif\" class=\"terianProgress\" dojoAttachPoint=\"progressNode\" style=\"display:none;\"></img\n\t\t\t\t></td\n\t\t\t></tr\n\t\t\t><tr class=\"paidTime\" dojoAttachPoint=\"paidTimeContainer\" style=\"display:none;\"\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td class=\"label\" colspan=\"2\">Payment Received</td\n\t\t\t\t><td class=\"dateTime\" id=\"paidTime\" dojoAttachPoint=\"paidTimeNode\" colspan=\"2\"></td\n\t\t\t></tr\n\t\t\t><tr class=\"shippedTime\" dojoAttachPoint=\"shippedTimeContainer\" style=\"display:none;\"\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td class=\"label\" colspan=\"2\">Order Shipped</td\n\t\t\t\t><td class=\"dateTime\" id=\"shippedTime\" dojoAttachPoint=\"shippedTimeNode\" colspan=\"2\"></td\n\t\t\t></tr\n\t\t\t><tr class=\"status\"\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td></td\n\t\t\t\t><td class=\"terianStatus\" colspan=\"4\" dojoAttachPoint=\"statusNode\"></td\n\t\t\t></tr\n\t\t></tfoot\n\t></table\n\t><div dojoType=\"dijit.layout.ContentPane\" dojoAttachPoint=\"detailsNode\"\n\t></div\n></div>\n"),widgetsInTemplate:true,constructor:function(_446){
this.order=_446.order;
},startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
if(this.order.isFinalised()&&this.orderIdNode){
dojo.attr(this.orderIdNode,"innerHTML",dojo.string.substitute(terian.nlsi.store.orderIdentity,this.order));
}
var _447=this.order.orderStatus==terian.model.Order.SHORT;
if(_447){
this.quantityAvailableNode.innerHTML="Availability";
}
this.refresh();
var _448=this.order.getOrderItems();
var self=this;
dojo.forEach(_448,function(_449){
var _44a=new terian.widget.OrderItemWidget({orderItem:_449,showAvailability:_447});
_44a.startup();
dojo.place(_44a.domNode,self.containerNode);
});
this.connect(this.order,"orderChanged",function(_44b,_44c){
var _44d=this.getOrderItemWidget(_44b);
if(!_44d){
return;
}
if(_44c=="UPDATE"){
_44d.refresh();
}else{
if(_44c=="DELETE"){
dojo.fadeOut({node:_44d.domNode,duration:500,onEnd:function(){
_44d.destroy();
}}).play();
}
}
if(this.order.isEmpty()){
dojo.style(this.voucherNode,"display","none");
}
this.refresh();
});
if(this.voucherNode&&this.order.isEditable()&&!this.order.isEmpty()){
dojo.style(this.voucherNode,"display","");
if(this.order.voucherId){
this.voucherIdField.attr("value",this.order.voucherId);
}
var self;
setTimeout(function(){
dijit.focus(self.voucherIdField.domNode);
},1);
}
if(this.order.isEditable()){
dojo.style(this.checkoutButton,"display","");
}else{
if(this.order.isPayable()){
dojo.style(this.finaliseButton,"display","");
}
}
if(this.order.paidTime&&this.paidTimeNode){
dojo.attr(this.paidTimeNode,"innerHTML",terian.util.format.dateTime(this.order.paidTime));
dojo.style(this.paidTimeContainer,"display","");
}
if(this.order.shippedTime&&this.shippedTimeNode){
dojo.attr(this.shippedTimeNode,"innerHTML",terian.util.format.dateTime(this.order.shippedTime));
dojo.style(this.shippedTimeContainer,"display","");
}
if(this.detailsNode){
var _44e=this.order.isFinalised()?"-finalised":"";
this.detailsNode.setHref("content/order"+_44e+".html");
}
},refresh:function(){
var _44f=this.order.isEmpty();
dojo.attr(this.shippingNode,"innerHTML",this.order.shippingCost?terian.util.format.currency(this.order.shippingCost):_44f?"":terian.nlsi.store.free);
dojo.attr(this.totalPriceNode,"innerHTML",_44f?"":terian.util.format.currency(this.order.totalPrice));
if(this.totalTaxNode){
dojo.attr(this.totalTaxNode,"innerHTML",_44f?"":terian.util.format.currency(this.order.totalTax));
}
dojo.style(this.checkoutButton,"visibility",this.order.isEmpty()?"hidden":"visible");
if(this.statusNode){
var key=this.order.isEmpty()?"Empty":this.order.orderStatus;
var _450=terian.nlsi.store["orderStatus"+key]||"";
dojo.attr(this.statusNode,"innerHTML",_450);
}
},getOrderItemWidget:function(_451){
var _452=dojo.query(".terianOrderItem",this.containerNode);
for(var i=0;i<_452.length;i++){
var _453=dijit.byId(_452[i].id);
if(_453&&_453.orderItem===_451){
return _453;
}
}
return null;
},_validate:function(){
if(this.voucherIdField&&this.order.isEditable()){
this.order.setVoucherId(this.voucherIdField.attr("value"));
}
terian.store.validateOrder();
this._showLoading(terian.nlsi.store.validating);
},_checkout:function(){
if(this.voucherIdField&&this.order.isEditable()){
this.order.setVoucherId(this.voucherIdField.attr("value"));
}
terian.store.requestOrder();
this._showLoading(terian.nlsi.store.checkingOut);
},_finalise:function(){
terian.store.finaliseOrder(this.order);
this._showLoading(terian.nlsi.store.finalising);
},_showLoading:function(_454){
dojo.attr(this.statusNode,"innerHTML",_454);
if(this.voucherNode){
dojo.style(this.voucherNode,"display","none");
}
dojo.style(this.checkoutButton,"display","none");
dojo.style(this.finaliseButton,"display","none");
dojo.style(this.progressNode,"display","");
}});
}
if(!dojo._hasResource["terian.widget.DataSelect"]){
dojo._hasResource["terian.widget.DataSelect"]=true;
dojo.provide("terian.widget.DataSelect");
dojo.declare("terian.widget.DataSelect",[dijit._Widget,dijit._Templated],{store:null,fetchProperties:{},query:{},options:null,defaultValue:"",labelAttr:"label",valueAttr:"value",supplementaryLabel:"",supplementaryValue:"",templateString:dojo.cache("terian.widget","templates/DataSelect.html","<select class=\"terianDataSelectWidget\" dojoAttachEvent=\"onchange:_onChange\"\n></select>\n"),widgetsInTemplate:false,attributeMap:dojo.delegate(dijit._Widget.prototype.attributeMap,{disabled:"domNode"}),setOptions:function(_455){
this.options=_455||[];
if(dojo.isIE){
dojo.style(this.domNode,"visibility","hidden");
}
if(this.supplementaryLabel||this.supplementaryValue){
var _456={};
_456[this.labelAttr]=this.supplementaryLabel||"";
_456[this.valueAttr]=this.supplementaryValue||"";
this.options.unshift(_456);
}
dojo.empty(this.domNode);
for(var i in this.options){
var _457=this.options[i];
dojo.create("option",{value:_457[this.valueAttr],innerHTML:_457[this.labelAttr]},this.domNode);
}
this.domNode.selectedIndex=0;
if(this.defaultValue){
this._setValueAttr(this.defaultValue);
}
if(dojo.isIE){
dojo.style(this.domNode,"visibility","visible");
var box=dojo.marginBox(this.domNode);
dojo.style(this.domNode,"width",box.w+"px");
}
},startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
if(this.store){
this.fetchOptions();
}else{
if(this.options){
this.setOptions(this.options);
}
}
},_getValueAttr:function(){
return this.domNode.selectedIndex>=0?this.domNode.options[this.domNode.selectedIndex].value:null;
},_setValueAttr:function(_458){
if(this._getValueAttr()==_458){
return;
}
for(var i in this.options){
if(this.options[i][this.valueAttr]==_458){
this.domNode.selectedIndex=i;
return;
}
}
console.warn("Invalid value for select",_458);
},onChange:function(_459){
},fetchOptions:function(){
var self=this;
var _45a={queryOptions:this.queryOptions,query:this.query,onComplete:function(_45b){
var _45c=dojo.map(_45b,function(item){
var _45d={};
_45d[self.labelAttr]=self.store.getValue(item,self.labelAttr);
_45d[self.valueAttr]=self.store.getValue(item,self.valueAttr);
return _45d;
});
self.setOptions(_45c);
},onError:function(_45e){
console.error("felix.widget.DataSelect: "+_45e);
},start:0};
dojo.mixin(_45a,this.fetchProperties);
this.store.fetch(_45a);
},_onChange:function(){
this.onChange(this._getValueAttr());
}});
}
if(!dojo._hasResource["terian.go"]){
dojo._hasResource["terian.go"]=true;
dojo.provide("terian.go");
terian.go=new function(){
var tc=terian.catalogue;
var tl=terian.location;
this.href=function(node){
var href=dojo.attr(node,"href");
if(href){
href=href.replace("?","#");
}
terian.location.setHash(href);
return false;
};
this.product=function(_45f){
var _460=tc.getProduct(_45f);
if(_460){
tl.set(_460);
}else{
console.error("No product",_45f);
}
return false;
};
this.brand=function(_461){
var _462=tc.getBrand(_461);
if(_462){
tl.set(_462);
}else{
console.error("No brand",_461);
}
return false;
};
this.brands=function(){
tl.set(terian.model.catalogue);
return false;
};
this.keyword=function(_463){
var _464=tc.getKeyword(_463);
if(_464){
tl.set(_464);
}else{
console.error("No keyword",_463);
}
return false;
};
this.keywords=function(){
tl.set(terian.model.keywords);
return false;
};
this.page=function(page){
tl.set(page);
return false;
};
this.order=function(){
terian.store.showOrder();
return false;
};
this.home=function(){
terian.location.set(terian.location.defaultLocation);
return false;
};
this.loading=function(){
terian.content.showLoading();
return false;
};
};
}
if(!dojo._hasResource["terian.widget.OrderAddWidget"]){
dojo._hasResource["terian.widget.OrderAddWidget"]=true;
dojo.provide("terian.widget.OrderAddWidget");
dojo.declare("terian.widget.OrderAddWidget",[dijit._Widget,dijit._Templated],{product:null,productId:"",inventory:null,templateString:dojo.cache("terian.widget","templates/OrderAddWidget.html","<div class=\"terianOrderAdd\"\n\t><div\n\t\t><span\n\t\t\t>Size:<div class=\"terianVariantSelect\" dojoType=\"terian.widget.DataSelect\" dojoAttachPoint=\"variantWidget\"></div\n\t\t></span\n\t\t><span dojoAttachPoint=\"quantityContainerNode\" \n\t\t\t>Quantity: <div class=\"terianQuantitySelect\" dojoType=\"terian.widget.DataSelect\" dojoAttachPoint=\"quantityWidget\"\n\t\t\t></div\n\t\t></span\n\t\t><button type=\"button\" class=\"terianAddItem\" dojoAttachPoint=\"addItemNode\" dojoAttachEvent=\"onclick:_addItem\" value=\"Add\"\n\t\t\t><img src=\"images/button_add.gif\" alt=\"Add Item\"></img\n\t\t></button\n\t></div\n\t><div\n\t\t><span class=\"terianAddStatus\" dojoAttachPoint=\"statusNode\"></span\n\t\t><button class=\"terianCheckoutButton\" type=\"button\" value=\"Checkout\" dojoAttachPoint=\"checkoutButton\" dojoAttachEvent=\"onclick:_checkout\" style=\"display:none\"\n\t\t\t><img src=\"images/button_checkout_bag.gif\" alt=\"Checkout\"></img\n\t\t></button\n\t></div\n></div>\n"),widgetsInTemplate:true,quantityOptions:0,postMixInProperties:function(){
this.product=this.product||terian.catalogue.getProduct(this.productId);
},startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
var _465=[];
dojo.forEach(this.product.variants,function(_466){
_465.push({label:_466,value:_466});
});
this.variantWidget.setOptions(_465);
this.variantWidget.attr("disabled",false);
if(this.quantityOptions){
_465=[];
for(var i=1;i<=this.quantityOptions;i++){
_465.push({label:i,value:i});
}
this.quantityWidget.setOptions(_465);
this.quantityWidget.attr("disabled",false);
}else{
dojo.style(this.quantityContainerNode,"display","none");
}
terian.store.checkInventory(this.product,dojo.hitch(this,"_inventory"));
this.connect(terian.store.newOrder,"orderChanged","_orderChanged");
this.refresh();
},refresh:function(){
if(this.checkoutButton){
dojo.style(this.checkoutButton,"display",terian.store.newOrder.isEmpty()?"none":"");
}
},_inventory:function(_467){
this.inventory=_467;
var _468=function(_469){
for(var i in _467){
if(_467[i].variantId==_469){
return _467[i];
}
}
return {};
};
var _46a=[];
dojo.forEach(this.product.variants,function(_46b){
var inv=_468(_46b);
var _46c=_46b;
if(!inv.quantity){
_46c+=" - "+terian.nlsi.store.invNone;
}else{
if(inv.lowQuantity&&inv.quantity<=inv.lowQuantity){
_46c+=" - "+terian.nlsi.store.invLow;
}
}
_46a.push({label:_46c,value:_46b});
});
var _46d=this.variantWidget.attr("value");
this.variantWidget.setOptions(_46a);
if(_46d){
this.variantWidget.attr("value",_46d);
}
},_addItem:function(){
var _46e=this.variantWidget.attr("value");
var _46f=this.quantityOptions?this.quantityWidget.attr("value"):1;
terian.store.newOrder.changeOrder(this.product.treeId,_46e,_46f);
},_orderChanged:function(_470,_471){
if(this._animation){
this._animation.stop();
}
this.refresh();
this.statusNode.innerHTML=dojo.string.substitute(terian.nlsi.store.orderAdded,_470);
dojo.style(this.statusNode,"opacity",1);
this._animation=dojo.fadeOut({node:this.statusNode,delay:5000,duration:5000}).play();
},_checkout:function(){
terian.go.order();
},destroy:function(){
this.inherited(arguments);
if(this._animation){
this._animation.stop();
delete this._animation;
}
}});
}
if(!dojo._hasResource["terian.store"]){
dojo._hasResource["terian.store"]=true;
dojo.provide("terian.store");
terian.store=new function(){
terian.model.orders=new terian.model.Orders();
this._setNewOrder=function(_472){
_472.setOrderId("NewOrder");
terian.model.orders.removeChild(_472.orderId);
terian.model.orders.addChild(_472);
this.newOrder=_472;
};
this._setNewOrder(new terian.model.Order({orderId:"NewOrder",orderStatus:terian.model.Order.NEW}));
this.init=function(){
if(terian.content.currentDomainItem&&terian.content.currentDomainItem.declaredClass=="terian.model.Order"&&terian.content.currentDomainItem!=terian.store.newOrder){
return;
}
var _473=dojo.cookie("orderId");
if(_473){
terian.go.loading();
var _474=terian.model.loader.loadOrder(_473);
_474.addCallback(function(_475){
console.debug("Order from cookie",_473);
if(_475.isRenewable()){
_475.orderStatus=terian.model.Order.NEW;
terian.store._setNewOrder(_475);
}
terian.location.set(_475);
});
_474.addErrback(function(err){
console.error("Failed to load order from cookie",_473,err);
terian.go.home();
});
}
};
terian.location.registerDomainTree(terian.model.orders,function(path){
var elts=path.split("/");
var _476={orderId:elts[1]};
var _477=terian.util.url.parseParameters();
if(_477.search){
dojo.mixin(_476,_477.search);
}
terian.go.loading();
return terian.model.loader.loadOrder(_476);
});
var _478=function(){
var loc=terian.util.url.parseParameters();
var _479={};
dojo.mixin(_479,loc.hash);
dojo.mixin(_479,loc.search);
terian.go.loading();
var _47a=terian.model.loader.loadOrder(_479);
_47a.addCallback(function(_47b){
console.debug("Order from action",_479.action,_479.orderId);
terian.content.set(_47b);
terian.store._publishEvent(_479.action,_47b);
});
return _47a;
};
terian.location.registerAction("paypalCallback",_478);
terian.location.registerAction("paypalCancel",_478);
terian.content.registerViewCreator("terian.model.Order",function(_47c){
return {widget:new terian.widget.OrderWidget({order:_47c}),title:"Shopping Basket"};
});
this.checkInventory=function(_47d,_47e){
terian.model.loader.loadInventory(_47d,_47e);
};
this.showOrder=function(_47f){
_47f=_47f||this.newOrder;
if(_47f.isValid()){
terian.location.set(_47f);
}else{
this.validateOrder(_47f);
}
};
this.validateOrder=function(_480){
console.info("Validating order");
try{
var _481=this._requestOrder(_480,"validate");
_481.addCallback(dojo.hitch(this,function(_482){
console.info("Received validate response ",_482);
var _483=new terian.model.Order(_482);
console.info("Order is",_483.orderStatus);
this._setNewOrder(_483);
terian.location.set(_483);
}));
return _481;
}
catch(err){
console.error("Validate failed",err);
}
};
this.requestOrder=function(_484){
console.info("Checking out");
try{
var _485=this._requestOrder(_484,"checkout");
this._publishEvent("checkout",_484);
_485.addCallback(dojo.hitch(this,function(_486){
console.info("Received order response ",_486);
if(_486.paypalToken){
location.href=terian.config.paypalURL+_486.paypalToken;
}else{
if(_486["class"]=="com.terian.store.model.Order"){
var _487=new terian.model.Order(_486);
console.info("Order is",_487.orderStatus);
this._setNewOrder(_487);
terian.location.set(_487);
}
}
}));
return _485;
}
catch(err){
console.error("Checkout failed",err);
}
};
this._requestOrder=function(_488,_489){
var _48a={action:_489,order:_488||this.newOrder};
_48a.order.orderStatus=terian.model.Order.NEW;
console.info("Request order: ",_48a);
var _48b=dojo.xhrPost({url:terian.config.serverURL+"store/order",handleAs:"json",postData:dojo.toJson(_48a),contentType:"text/json;charset=UTF-8"});
_48a.order.orderStatus=terian.model.Order.PENDING;
_48b.addErrback(dojo.hitch(this,function(_48c){
_488.orderStatus=terian.model.Order.NEW;
console.error("Error requesting order",_48c);
}));
return _48b;
};
this.finaliseOrder=function(_48d){
console.info("Finalising order");
try{
var _48e={orderId:_48d.orderId,action:"paypalFinalise"};
var _48f=terian.util.url.parseParameters();
dojo.mixin(_48e,_48f.search);
var _490=dojo.xhrGet({url:terian.config.serverURL+"store/order?"+terian.util.url.formatParameters(_48e),handleAs:"json"});
this._publishEvent("finalising",_48d);
_490.addCallback(dojo.hitch(this,function(_491){
var _492=new terian.model.Order(_491);
terian.model.orders.removeChild(_492.orderId);
terian.model.orders.addChild(_492);
terian.location.set(_492);
if(_492.orderStatus==terian.model.Order.PAID){
this._publishEvent("finalised",_492);
}
}));
_490.addErrback(dojo.hitch(this,function(_493){
console.error("Error finalising order",_493);
}));
return _490;
}
catch(err){
console.error("Finalise failed",err);
}
};
this._publishEvent=function(_494,_495){
dojo.publish("/terian/store",[{action:_494,order:_495}]);
};
};
}
if(!dojo._hasResource["terian.controller"]){
dojo._hasResource["terian.controller"]=true;
dojo.provide("terian.controller");
terian.controller=new function(){
this.init=function(){
var _496=dojo.byId("terianSiteMap");
if(_496){
dojo.destroy(_496);
}
terian.content.init();
terian.catalogue.init();
dojo.connect(terian.location,"ready",terian.store,"init");
terian.location.init();
};
};
dojo.ready(terian.controller,"init");
}
if(!dojo._hasResource["dojox.analytics.Urchin"]){
dojo._hasResource["dojox.analytics.Urchin"]=true;
dojo.provide("dojox.analytics.Urchin");
dojo.declare("dojox.analytics.Urchin",null,{acct:"",constructor:function(args){
this.tracker=null;
dojo.mixin(this,args);
this.acct=this.acct||dojo.config.urchin;
var re=/loaded|complete/,_497=("https:"==dojo.doc.location.protocol)?"https://ssl.":"http://www.",h=dojo.doc.getElementsByTagName("head")[0],n=dojo.create("script",{src:_497+"google-analytics.com/ga.js"},h);
n.onload=n.onreadystatechange=dojo.hitch(this,function(e){
if(e&&e.type=="load"||re.test(n.readyState)){
n.onload=n.onreadystatechange=null;
this._gotGA();
h.removeChild(n);
}
});
},_gotGA:function(){
this.tracker=_gat._getTracker(this.acct);
this.GAonLoad.apply(this,arguments);
},GAonLoad:function(){
this.trackPageView();
},trackPageView:function(url){
this.tracker._trackPageview.apply(this,arguments);
}});
}
if(!dojo._hasResource["terian.analytics"]){
dojo._hasResource["terian.analytics"]=true;
dojo.provide("terian.analytics");
terian.analytics=new function(){
if(terian.config.urchin){
console.info("Installing Google Analytics",terian.config.urchin);
var _498=function(a,b,c){
console.warn("Google Analytics NOT ready",a,b,c);
};
this.tracker={_trackPageview:_498,_trackEvent:_498,_addTrans:_498,_addItem:_498,_trackTrans:_498};
var _499=new dojox.analytics.Urchin({acct:terian.config.urchin});
_499.GAonLoad=dojo.hitch(this,function(){
console.info("Google Analytics ready");
this.tracker=_499.tracker;
this.trackLocation(location.hash);
});
}else{
console.warn("Installing MOCK TRACKER");
this.tracker={_trackPageview:function(url){
console.log("MOCK TRACKER page:",url);
},_trackEvent:function(_49a,_49b,_49c,_49d,_49e){
console.log("MOCK TRACKER event:",_49a,_49b,_49c,_49d,_49e);
},_addTrans:function(_49f,_4a0,_4a1,tax,_4a2,city,_4a3,_4a4){
console.log("MOCK TRACKER order:",_49f,_4a0,_4a1,tax,_4a2,city,_4a3,_4a4);
},_addItem:function(_4a5,sku,name,_4a6,_4a7,_4a8){
console.log("MOCK TRACKER orderItem:",_4a5,sku,name,_4a6,_4a7,_4a8);
},_trackTrans:function(){
console.log("MOCK TRACKER: Transaction");
}};
}
this.trackLocation=function(hash){
try{
var _4a9=terian.util.url.parseParameters(hash);
var url=null;
if(!_4a9.hash){
url="/"+terian.location.defaultLocation;
}else{
if(_4a9.hash.url){
url="/"+_4a9.hash.url;
}else{
if(_4a9.hash.obj){
url="/"+_4a9.hash.obj;
}
}
}
if(url){
this.tracker._trackPageview(url);
}
}
catch(err){
console.error("terian.analytics error",hash,err);
}
};
dojo.subscribe("/terian/location",this,function(_4aa){
this.trackLocation(_4aa.hash);
});
dojo.subscribe("/terian/gallery",this,function(_4ab){
this.tracker._trackEvent("Gallery",_4ab.action+_4ab.size,_4ab.image);
});
dojo.subscribe("/terian/order",this,function(_4ac){
this.tracker._trackEvent("Order",_4ac.action,_4ac.orderItem.productId+"/"+_4ac.orderItem.variantId);
});
dojo.subscribe("/terian/store",this,function(_4ad){
if(_4ad.action=="finalised"){
var _4ae=_4ad.order;
this.tracker._addTrans(_4ae.orderNumber,null,_4ae.totalPrice,_4ae.totalTax,_4ae.shippingCost);
dojo.forEach(_4ae.orderItems,function(item){
var _4af=terian.catalogue.getProduct(item.productId);
var _4b0=_4af?_4af.name:null;
var _4b1=terian.model.pricer.price(item.unitPrice,item.percentage);
this.tracker._addItem(_4ae.orderNumber,item.productId,_4b0,item.variantId,_4b1,item.quantity);
},this);
this.tracker._trackTrans();
}else{
if(_4ad.action=="checkout"){
this.tracker._trackEvent("Order",_4ad.action);
}else{
if(_4ad.action=="confirm"){
this.tracker._trackEvent("Order",_4ad.action,_4ad.order.orderNumber);
}else{
if(_4ad.action=="paypalCancel"){
this.tracker._trackEvent("Order",_4ad.action,_4ad.order.orderNumber);
}
}
}
}
});
dojo.subscribe("/terian/widget/tabPane",this,function(_4b2){
if(_4b2.type=="product"){
this.tracker._trackEvent("ProductTabs","viewTab",_4b2.title);
}
});
};
}
if(!dojo._hasResource["terian.widget.LinksWidget"]){
dojo._hasResource["terian.widget.LinksWidget"]=true;
dojo.provide("terian.widget.LinksWidget");
dojo.declare("terian.widget.LinksWidget",[dijit._Widget,dijit._Templated],{domainObject:null,maxDepth:1,templateString:dojo.cache("terian.widget","templates/LinksWidget.html","<div class=\"terianLinksWidget\"\n\t>By Brand:<ul class=\"terianLinkList\" dojoAttachPoint=\"containerNode\"></ul\n></div>\n"),widgetsInTemplate:false,constructor:function(_4b3){
this.domainObject=_4b3.domainObject;
},startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
if(this.titleNode){
dojo.attr(this.titleNode,"innerHTML",this.domainObject.name);
}
this._constructList(this.domainObject,this.containerNode);
},_constructList:function(_4b4,_4b5,_4b6){
if(!_4b4.treeChildren||_4b4.treeChildren.length==0){
return;
}
_4b6=_4b6?++_4b6:1;
if(_4b6>this.maxDepth){
return;
}
var _4b7=dojo.create("ul",null,_4b5);
var self=this;
dojo.forEach(_4b4.treeChildren,function(_4b8){
var _4b9=dojo.create("li",null,_4b7);
dojo.create("a",{innerHTML:_4b8.name,onclick:function(){
terian.location.set(_4b8);
}},_4b9);
self._constructList(_4b8,_4b9,_4b6);
});
}});
}
if(!dojo._hasResource["terian.widget.orderSummary"]){
dojo._hasResource["terian.widget.orderSummary"]=true;
dojo.provide("terian.widget.orderSummary");
dojo.ready(function(){
dojo.subscribe("/terian/order",function(e){
if(e.order.orderId!="NewOrder"){
return;
}
var _4ba=dojo.byId("terianOrderSummaryPrice");
if(_4ba){
dojo.attr(_4ba,"innerHTML",terian.util.format.currency(e.order.subTotal));
}
var _4bb=dojo.byId("terianOrderSummaryItems");
if(_4bb){
var _4bc=e.order.totalItems;
var _4bd="("+_4bc+" item"+(_4bc==1?"":"s")+")";
dojo.attr(_4bb,"innerHTML",_4bd);
}
});
});
}
if(!dojo._hasResource["terian.widget.TabPane"]){
dojo._hasResource["terian.widget.TabPane"]=true;
dojo.provide("terian.widget.TabPane");
dojo.declare("terian.widget.TabPane",[dijit._Widget,dijit._Templated],{tabLabels:"",templateString:dojo.cache("terian.widget","templates/TabPane.html","<div class=\"terianTabPane\"\n\t><ul class=\"terianTabContainer\" dojoAttachPoint=\"tabContainerNode\"\n\t></ul\n\t><div class=\"terianTabContent\" dojoAttachPoint=\"containerNode\"\n\t></div\n></div>\n"),widgetsInTemplate:false,publishType:"",publishId:"",startup:function(){
if(this._started){
return;
}
this.inherited(arguments);
this._tabs=[];
this._contents=[];
var self=this;
var _4be;
if(this.tabLabels){
_4be=this.tabLabels.split(",");
}
var _4bf=dojo.query("div",this.containerNode);
if(!_4bf||_4bf.length==0){
this.containerNode.innerHTML="<div>"+this.containerNode.innerHTML+"</div>";
_4bf=dojo.query("div",this.containerNode);
}
_4bf.forEach(function(node){
var _4c0;
if(_4be){
_4c0=_4be.shift();
}
var _4c1=dojo.attr(node,"terianLabel");
if(_4c1){
_4c0=_4c1;
}
var tab=dojo.create("li",{"class":"terianTab",innerHTML:_4c0,onclick:dojo.hitch(self,"_tabClicked")},self.tabContainerNode);
self._tabs.push(tab);
self._contents.push(node);
});
if(this._tabs.length){
this.select(0);
}
},select:function(_4c2){
if(_4c2==this._selectedIndex){
return;
}
var _4c3="terianSelected";
if(this._selectedIndex!=null){
dojo.removeClass(this._tabs[this._selectedIndex],_4c3);
dojo.removeClass(this._contents[this._selectedIndex],_4c3);
}
dojo.addClass(this._tabs[_4c2],_4c3);
dojo.addClass(this._contents[_4c2],_4c3);
if(this.publishType&&this._selectedIndex!=null){
dojo.publish("/terian/widget/tabPane",[{type:this.publishType,id:this.publishId,action:"view",title:dojo.attr(this._tabs[_4c2],"innerHTML")}]);
}
this._selectedIndex=_4c2;
},_tabClicked:function(e){
var _4c4=dojo.indexOf(this._tabs,e.currentTarget);
if(_4c4>=0){
this.select(_4c4);
}
}});
}
if(!dojo._hasResource["dijit._CssStateMixin"]){
dojo._hasResource["dijit._CssStateMixin"]=true;
dojo.provide("dijit._CssStateMixin");
dojo.declare("dijit._CssStateMixin",[],{cssStateNodes:{},postCreate:function(){
this.inherited(arguments);
dojo.forEach(["onmouseenter","onmouseleave","onmousedown"],function(e){
this.connect(this.domNode,e,"_cssMouseEvent");
},this);
this.connect(this,"set",function(name,_4c5){
if(arguments.length>=2&&{disabled:true,readOnly:true,checked:true,selected:true}[name]){
this._setStateClass();
}
});
dojo.forEach(["_onFocus","_onBlur"],function(ap){
this.connect(this,ap,"_setStateClass");
},this);
for(var ap in this.cssStateNodes){
this._trackMouseState(this[ap],this.cssStateNodes[ap]);
}
this._setStateClass();
},_cssMouseEvent:function(_4c6){
if(!this.disabled){
switch(_4c6.type){
case "mouseenter":
case "mouseover":
this._hovering=true;
this._active=this._mouseDown;
break;
case "mouseleave":
case "mouseout":
this._hovering=false;
this._active=false;
break;
case "mousedown":
this._active=true;
this._mouseDown=true;
var _4c7=this.connect(dojo.body(),"onmouseup",function(){
this._active=false;
this._mouseDown=false;
this._setStateClass();
this.disconnect(_4c7);
});
break;
}
this._setStateClass();
}
},_setStateClass:function(){
var _4c8=this.baseClass.split(" ");
function _4c9(_4ca){
_4c8=_4c8.concat(dojo.map(_4c8,function(c){
return c+_4ca;
}),"dijit"+_4ca);
};
if(!this.isLeftToRight()){
_4c9("Rtl");
}
if(this.checked){
_4c9("Checked");
}
if(this.state){
_4c9(this.state);
}
if(this.selected){
_4c9("Selected");
}
if(this.disabled){
_4c9("Disabled");
}else{
if(this.readOnly){
_4c9("ReadOnly");
}else{
if(this._active){
_4c9("Active");
}else{
if(this._hovering){
_4c9("Hover");
}
}
}
}
if(this._focused){
_4c9("Focused");
}
var tn=this.stateNode||this.domNode,_4cb={};
dojo.forEach(tn.className.split(" "),function(c){
_4cb[c]=true;
});
if("_stateClasses" in this){
dojo.forEach(this._stateClasses,function(c){
delete _4cb[c];
});
}
dojo.forEach(_4c8,function(c){
_4cb[c]=true;
});
var _4cc=[];
for(var c in _4cb){
_4cc.push(c);
}
tn.className=_4cc.join(" ");
this._stateClasses=_4c8;
},_trackMouseState:function(node,_4cd){
var _4ce=false,_4cf=false,_4d0=false;
var self=this,cn=dojo.hitch(this,"connect",node);
function _4d1(){
var _4d2=("disabled" in self&&self.disabled)||("readonly" in self&&self.readonly);
dojo.toggleClass(node,_4cd+"Hover",_4ce&&!_4cf&&!_4d2);
dojo.toggleClass(node,_4cd+"Active",_4cf&&!_4d2);
dojo.toggleClass(node,_4cd+"Focused",_4d0&&!_4d2);
};
cn("onmouseenter",function(){
_4ce=true;
_4d1();
});
cn("onmouseleave",function(){
_4ce=false;
_4cf=false;
_4d1();
});
cn("onmousedown",function(){
_4cf=true;
_4d1();
});
cn("onmouseup",function(){
_4cf=false;
_4d1();
});
cn("onfocus",function(){
_4d0=true;
_4d1();
});
cn("onblur",function(){
_4d0=false;
_4d1();
});
this.connect(this,"set",function(name,_4d3){
if(name=="disabled"||name=="readOnly"){
_4d1();
}
});
}});
}
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,dijit._CssStateMixin],{name:"",alt:"",value:"",type:"text",tabIndex:"0",disabled:false,intermediateChanges:false,scrollOnFocus:true,attributeMap:dojo.delegate(dijit._Widget.prototype.attributeMap,{value:"focusNode",id:"focusNode",tabIndex:"focusNode",alt:"focusNode",title:"focusNode"}),postMixInProperties:function(){
this.nameAttrSetting=this.name?("name=\""+this.name.replace(/'/g,"&quot;")+"\""):"";
this.inherited(arguments);
},postCreate:function(){
this.inherited(arguments);
this.connect(this.domNode,"onmousedown","_onMouseDown");
},_setDisabledAttr:function(_4d4){
this.disabled=_4d4;
dojo.attr(this.focusNode,"disabled",_4d4);
if(this.valueNode){
dojo.attr(this.valueNode,"disabled",_4d4);
}
dijit.setWaiState(this.focusNode,"disabled",_4d4);
if(_4d4){
this._hovering=false;
this._active=false;
var _4d5="tabIndex" in this.attributeMap?this.attributeMap.tabIndex:"focusNode";
dojo.forEach(dojo.isArray(_4d5)?_4d5:[_4d5],function(_4d6){
var node=this[_4d6];
if(dojo.isWebKit||dijit.hasDefaultTabStop(node)){
node.setAttribute("tabIndex","-1");
}else{
node.removeAttribute("tabIndex");
}
},this);
}else{
this.focusNode.setAttribute("tabIndex",this.tabIndex);
}
},setDisabled:function(_4d7){
dojo.deprecated("setDisabled("+_4d7+") is deprecated. Use set('disabled',"+_4d7+") instead.","","2.0");
this.set("disabled",_4d7);
},_onFocus:function(e){
if(this.scrollOnFocus){
dojo.window.scrollIntoView(this.domNode);
}
this.inherited(arguments);
},isFocusable:function(){
return !this.disabled&&!this.readOnly&&this.focusNode&&(dojo.style(this.domNode,"display")!="none");
},focus:function(){
dijit.focus(this.focusNode);
},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(_4d8){
},_onChangeActive:false,_handleOnChange:function(_4d9,_4da){
this._lastValue=_4d9;
if(this._lastValueReported==undefined&&(_4da===null||!this._onChangeActive)){
this._resetValue=this._lastValueReported=_4d9;
}
if((this.intermediateChanges||_4da||_4da===undefined)&&((typeof _4d9!=typeof this._lastValueReported)||this.compare(_4d9,this._lastValueReported)!=0)){
this._lastValueReported=_4d9;
if(this._onChangeActive){
if(this._onChangeHandle){
clearTimeout(this._onChangeHandle);
}
this._onChangeHandle=setTimeout(dojo.hitch(this,function(){
this._onChangeHandle=null;
this.onChange(_4d9);
}),0);
}
}
},create:function(){
this.inherited(arguments);
this._onChangeActive=true;
},destroy:function(){
if(this._onChangeHandle){
clearTimeout(this._onChangeHandle);
this.onChange(this._lastValueReported);
}
this.inherited(arguments);
},setValue:function(_4db){
dojo.deprecated("dijit.form._FormWidget:setValue("+_4db+") is deprecated.  Use set('value',"+_4db+") instead.","","2.0");
this.set("value",_4db);
},getValue:function(){
dojo.deprecated(this.declaredClass+"::getValue() is deprecated. Use get('value') instead.","","2.0");
return this.get("value");
},_onMouseDown:function(e){
if(!e.ctrlKey&&this.isFocusable()){
var _4dc=this.connect(dojo.body(),"onmouseup",function(){
if(this.isFocusable()){
this.focus();
}
this.disconnect(_4dc);
});
}
}});
dojo.declare("dijit.form._FormValueWidget",dijit.form._FormWidget,{readOnly:false,attributeMap:dojo.delegate(dijit.form._FormWidget.prototype.attributeMap,{value:"",readOnly:"focusNode"}),_setReadOnlyAttr:function(_4dd){
this.readOnly=_4dd;
dojo.attr(this.focusNode,"readOnly",_4dd);
dijit.setWaiState(this.focusNode,"readonly",_4dd);
},postCreate:function(){
this.inherited(arguments);
if(dojo.isIE){
this.connect(this.focusNode||this.domNode,"onkeydown",this._onKeyDown);
}
if(this._resetValue===undefined){
this._resetValue=this.value;
}
},_setValueAttr:function(_4de,_4df){
this.value=_4de;
this._handleOnChange(_4de,_4df);
},_getValueAttr:function(){
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||e.metaKey)){
var te;
if(dojo.isIE){
e.preventDefault();
te=document.createEventObject();
te.keyCode=dojo.keys.ESCAPE;
te.shiftKey=e.shiftKey;
e.srcElement.fireEvent("onkeypress",te);
}
}
},_layoutHackIE7:function(){
if(dojo.isIE==7){
var _4e0=this.domNode;
var _4e1=_4e0.parentNode;
var _4e2=_4e0.firstChild||_4e0;
var _4e3=_4e2.style.filter;
var _4e4=this;
while(_4e1&&_4e1.clientHeight==0){
(function ping(){
var _4e5=_4e4.connect(_4e1,"onscroll",function(e){
_4e4.disconnect(_4e5);
_4e2.style.filter=(new Date()).getMilliseconds();
setTimeout(function(){
_4e2.style.filter=_4e3;
},0);
});
})();
_4e1=_4e1.parentNode;
}
}
}});
}
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:"",selectOnClick:false,placeHolder:"",templateString:dojo.cache("dijit.form","templates/TextBox.html","<div class=\"dijit dijitReset dijitInline dijitLeft\" id=\"widget_${id}\" waiRole=\"presentation\"\n\t><div class=\"dijitReset dijitInputField dijitInputContainer\"\n\t\t><input class=\"dijitReset dijitInputInner\" dojoAttachPoint='textbox,focusNode' autocomplete=\"off\"\n\t\t\t${!nameAttrSetting} type='${type}'\n\t/></div\n></div>\n"),_singleNodeTemplate:"<input class=\"dijit dijitReset dijitLeft dijitInputField\" dojoAttachPoint=\"textbox,focusNode\" autocomplete=\"off\" type=\"${type}\" ${!nameAttrSetting} />",_buttonInputDisabled:dojo.isIE?"disabled":"",baseClass:"dijitTextBox",attributeMap:dojo.delegate(dijit.form._FormValueWidget.prototype.attributeMap,{maxLength:"focusNode"}),postMixInProperties:function(){
var type=this.type.toLowerCase();
if(this.templateString.toLowerCase()=="input"||((type=="hidden"||type=="file")&&this.templateString==dijit.form.TextBox.prototype.templateString)){
this.templateString=this._singleNodeTemplate;
}
this.inherited(arguments);
},_setPlaceHolderAttr:function(v){
this.placeHolder=v;
if(!this._phspan){
this._attachPoints.push("_phspan");
this._phspan=dojo.create("span",{className:"dijitPlaceHolder dijitInputField"},this.textbox,"after");
}
this._phspan.innerHTML="";
this._phspan.appendChild(document.createTextNode(v));
this._updatePlaceHolder();
},_updatePlaceHolder:function(){
if(this._phspan){
this._phspan.style.display=(this.placeHolder&&!this._focused&&!this.textbox.value)?"":"none";
}
},_getValueAttr:function(){
return this.parse(this.get("displayedValue"),this.constraints);
},_setValueAttr:function(_4e6,_4e7,_4e8){
var _4e9;
if(_4e6!==undefined){
_4e9=this.filter(_4e6);
if(typeof _4e8!="string"){
if(_4e9!==null&&((typeof _4e9!="number")||!isNaN(_4e9))){
_4e8=this.filter(this.format(_4e9,this.constraints));
}else{
_4e8="";
}
}
}
if(_4e8!=null&&_4e8!=undefined&&((typeof _4e8)!="number"||!isNaN(_4e8))&&this.textbox.value!=_4e8){
this.textbox.value=_4e8;
}
this._updatePlaceHolder();
this.inherited(arguments,[_4e9,_4e7]);
},displayedValue:"",getDisplayedValue:function(){
dojo.deprecated(this.declaredClass+"::getDisplayedValue() is deprecated. Use set('displayedValue') instead.","","2.0");
return this.get("displayedValue");
},_getDisplayedValueAttr:function(){
return this.filter(this.textbox.value);
},setDisplayedValue:function(_4ea){
dojo.deprecated(this.declaredClass+"::setDisplayedValue() is deprecated. Use set('displayedValue', ...) instead.","","2.0");
this.set("displayedValue",_4ea);
},_setDisplayedValueAttr:function(_4eb){
if(_4eb===null||_4eb===undefined){
_4eb="";
}else{
if(typeof _4eb!="string"){
_4eb=String(_4eb);
}
}
this.textbox.value=_4eb;
this._setValueAttr(this.get("value"),undefined,_4eb);
},format:function(_4ec,_4ed){
return ((_4ec==null||_4ec==undefined)?"":(_4ec.toString?_4ec.toString():_4ec));
},parse:function(_4ee,_4ef){
return _4ee;
},_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 _4f0=this;
setTimeout(function(){
_4f0._handleOnChange(_4f0.get("value"),false);
},0);
}
this._refreshState();
},postCreate:function(){
if(dojo.isIE){
var s=dojo.getComputedStyle(this.domNode);
if(s){
var ff=s.fontFamily;
if(ff){
var _4f1=this.domNode.getElementsByTagName("INPUT");
if(_4f1){
for(var i=0;i<_4f1.length;i++){
_4f1[i].style.fontFamily=ff;
}
}
}
}
}
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);
}
},_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.get("value"),true);
},_onBlur:function(e){
if(this.disabled){
return;
}
this._setBlurValue();
this.inherited(arguments);
if(this._selectOnClickHandle){
this.disconnect(this._selectOnClickHandle);
}
if(this.selectOnClick&&dojo.isMoz){
this.textbox.selectionStart=this.textbox.selectionEnd=undefined;
}
this._updatePlaceHolder();
},_onFocus:function(by){
if(this.disabled||this.readOnly){
return;
}
if(this.selectOnClick&&by=="mouse"){
this._selectOnClickHandle=this.connect(this.domNode,"onmouseup",function(){
this.disconnect(this._selectOnClickHandle);
var _4f2;
if(dojo.isIE){
var _4f3=dojo.doc.selection.createRange();
var _4f4=_4f3.parentElement();
_4f2=_4f4==this.textbox&&_4f3.text.length==0;
}else{
_4f2=this.textbox.selectionStart==this.textbox.selectionEnd;
}
if(_4f2){
dijit.selectInputText(this.textbox);
}
});
}
this._updatePlaceHolder();
this._refreshState();
this.inherited(arguments);
},reset:function(){
this.textbox.value="";
this.inherited(arguments);
}});
dijit.selectInputText=function(_4f5,_4f6,stop){
var _4f7=dojo.global;
var _4f8=dojo.doc;
_4f5=dojo.byId(_4f5);
if(isNaN(_4f6)){
_4f6=0;
}
if(isNaN(stop)){
stop=_4f5.value?_4f5.value.length:0;
}
dijit.focus(_4f5);
if(_4f8["selection"]&&dojo.body()["createTextRange"]){
if(_4f5.createTextRange){
var _4f9=_4f5.createTextRange();
with(_4f9){
collapse(true);
moveStart("character",-99999);
moveStart("character",_4f6);
moveEnd("character",stop-_4f6);
select();
}
}
}else{
if(_4f7["getSelection"]){
if(_4f5.setSelectionRange){
_4f5.setSelectionRange(_4f6,stop);
}
}
}
};
}
if(!dojo._hasResource["terian.layer.misa"]){
dojo._hasResource["terian.layer.misa"]=true;
dojo.provide("terian.layer.misa");
dojo.requireIf(dojo.isIE<7,"twinhelix.iepngfix_tilebg");
}
dojo.i18n._preloadLocalizations("terian.layer.nls.misa",["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","nb","nl","nl-nl","pl","pt","pt-br","pt-pt","ru","sk","sl","sv","th","tr","xx","zh","zh-cn","zh-tw"]);

