/*
	Copyright (c) 2004-2009, 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 a compiled version of Dojo, built for deployment and not for
	development. To get an editable version, please visit:

		http://dojotoolkit.org

	for documentation and information on getting the source.
*/

if(!dojo._hasResource["dojo.date"]){dojo._hasResource["dojo.date"]=true;dojo.provide("dojo.date");dojo.date.getDaysInMonth=function(_1){var _2=_1.getMonth();var _3=[31,28,31,30,31,30,31,31,30,31,30,31];if(_2==1&&dojo.date.isLeapYear(_1)){return 29;}return _3[_2];};dojo.date.isLeapYear=function(_4){var _5=_4.getFullYear();return !(_5%400)||(!(_5%4)&&!!(_5%100));};dojo.date.getTimezoneName=function(_6){var _7=_6.toString();var tz="";var _9;var _a=_7.indexOf("(");if(_a>-1){tz=_7.substring(++_a,_7.indexOf(")"));}else{var _b=/([A-Z\/]+) \d{4}$/;if((_9=_7.match(_b))){tz=_9[1];}else{_7=_6.toLocaleString();_b=/ ([A-Z\/]+)$/;if((_9=_7.match(_b))){tz=_9[1];}}}return (tz=="AM"||tz=="PM")?"":tz;};dojo.date.compare=function(_c,_d,_e){_c=new Date(Number(_c));_d=new Date(Number(_d||new Date()));if(_e!=="undefined"){if(_e=="date"){_c.setHours(0,0,0,0);_d.setHours(0,0,0,0);}else{if(_e=="time"){_c.setFullYear(0,0,0);_d.setFullYear(0,0,0);}}}if(_c>_d){return 1;}if(_c<_d){return -1;}return 0;};dojo.date.add=function(_f,_10,_11){var sum=new Date(Number(_f));var _13=false;var _14="Date";switch(_10){case "day":break;case "weekday":var _15,_16;var mod=_11%5;if(!mod){_15=(_11>0)?5:-5;_16=(_11>0)?((_11-5)/5):((_11+5)/5);}else{_15=mod;_16=parseInt(_11/5);}var _18=_f.getDay();var adj=0;if(_18==6&&_11>0){adj=1;}else{if(_18==0&&_11<0){adj=-1;}}var _1a=_18+_15;if(_1a==0||_1a==6){adj=(_11>0)?2:-2;}_11=(7*_16)+_15+adj;break;case "year":_14="FullYear";_13=true;break;case "week":_11*=7;break;case "quarter":_11*=3;case "month":_13=true;_14="Month";break;case "hour":case "minute":case "second":case "millisecond":_14="UTC"+_10.charAt(0).toUpperCase()+_10.substring(1)+"s";}if(_14){sum["set"+_14](sum["get"+_14]()+_11);}if(_13&&(sum.getDate()<_f.getDate())){sum.setDate(0);}return sum;};dojo.date.difference=function(_1b,_1c,_1d){_1c=_1c||new Date();_1d=_1d||"day";var _1e=_1c.getFullYear()-_1b.getFullYear();var _1f=1;switch(_1d){case "quarter":var m1=_1b.getMonth();var m2=_1c.getMonth();var q1=Math.floor(m1/3)+1;var q2=Math.floor(m2/3)+1;q2+=(_1e*4);_1f=q2-q1;break;case "weekday":var _24=Math.round(dojo.date.difference(_1b,_1c,"day"));var _25=parseInt(dojo.date.difference(_1b,_1c,"week"));var mod=_24%7;if(mod==0){_24=_25*5;}else{var adj=0;var _28=_1b.getDay();var _29=_1c.getDay();_25=parseInt(_24/7);mod=_24%7;var _2a=new Date(_1b);_2a.setDate(_2a.getDate()+(_25*7));var _2b=_2a.getDay();if(_24>0){switch(true){case _28==6:adj=-1;break;case _28==0:adj=0;break;case _29==6:adj=-1;break;case _29==0:adj=-2;break;case (_2b+mod)>5:adj=-2;}}else{if(_24<0){switch(true){case _28==6:adj=0;break;case _28==0:adj=1;break;case _29==6:adj=2;break;case _29==0:adj=1;break;case (_2b+mod)<0:adj=2;}}}_24+=adj;_24-=(_25*2);}_1f=_24;break;case "year":_1f=_1e;break;case "month":_1f=(_1c.getMonth()-_1b.getMonth())+(_1e*12);break;case "week":_1f=parseInt(dojo.date.difference(_1b,_1c,"day")/7);break;case "day":_1f/=24;case "hour":_1f/=60;case "minute":_1f/=60;case "second":_1f/=1000;case "millisecond":_1f*=_1c.getTime()-_1b.getTime();}return Math.round(_1f);};}if(!dojo._hasResource["dojo.i18n"]){dojo._hasResource["dojo.i18n"]=true;dojo.provide("dojo.i18n");dojo.i18n.getLocalization=function(_2c,_2d,_2e){_2e=dojo.i18n.normalizeLocale(_2e);var _2f=_2e.split("-");var _30=[_2c,"nls",_2d].join(".");var _31=dojo._loadedModules[_30];if(_31){var _32;for(var i=_2f.length;i>0;i--){var loc=_2f.slice(0,i).join("_");if(_31[loc]){_32=_31[loc];break;}}if(!_32){_32=_31.ROOT;}if(_32){var _35=function(){};_35.prototype=_32;return new _35();}}throw new Error("Bundle not found: "+_2d+" in "+_2c+" , locale="+_2e);};dojo.i18n.normalizeLocale=function(_36){var _37=_36?_36.toLowerCase():dojo.locale;if(_37=="root"){_37="ROOT";}return _37;};dojo.i18n._requireLocalization=function(_38,_39,_3a,_3b){var _3c=dojo.i18n.normalizeLocale(_3a);var _3d=[_38,"nls",_39].join(".");var _3e="";if(_3b){var _3f=_3b.split(",");for(var i=0;i<_3f.length;i++){if(_3c["indexOf"](_3f[i])==0){if(_3f[i].length>_3e.length){_3e=_3f[i];}}}if(!_3e){_3e="ROOT";}}var _41=_3b?_3e:_3c;var _42=dojo._loadedModules[_3d];var _43=null;if(_42){if(dojo.config.localizationComplete&&_42._built){return;}var _44=_41.replace(/-/g,"_");var _45=_3d+"."+_44;_43=dojo._loadedModules[_45];}if(!_43){_42=dojo["provide"](_3d);var _46=dojo._getModuleSymbols(_38);var _47=_46.concat("nls").join("/");var _48;dojo.i18n._searchLocalePath(_41,_3b,function(loc){var _4a=loc.replace(/-/g,"_");var _4b=_3d+"."+_4a;var _4c=false;if(!dojo._loadedModules[_4b]){dojo["provide"](_4b);var _4d=[_47];if(loc!="ROOT"){_4d.push(loc);}_4d.push(_39);var _4e=_4d.join("/")+".js";_4c=dojo._loadPath(_4e,null,function(_4f){var _50=function(){};_50.prototype=_48;_42[_4a]=new _50();for(var j in _4f){_42[_4a][j]=_4f[j];}});}else{_4c=true;}if(_4c&&_42[_4a]){_48=_42[_4a];}else{_42[_4a]=_48;}if(_3b){return true;}});}if(_3b&&_3c!=_3e){_42[_3c.replace(/-/g,"_")]=_42[_3e.replace(/-/g,"_")];}};(function(){var _52=dojo.config.extraLocale;if(_52){if(!_52 instanceof Array){_52=[_52];}var req=dojo.i18n._requireLocalization;dojo.i18n._requireLocalization=function(m,b,_56,_57){req(m,b,_56,_57);if(_56){return;}for(var i=0;i<_52.length;i++){req(m,b,_52[i],_57);}};}})();dojo.i18n._searchLocalePath=function(_59,_5a,_5b){_59=dojo.i18n.normalizeLocale(_59);var _5c=_59.split("-");var _5d=[];for(var i=_5c.length;i>0;i--){_5d.push(_5c.slice(0,i).join("-"));}_5d.push(false);if(_5a){_5d.reverse();}for(var j=_5d.length-1;j>=0;j--){var loc=_5d[j]||"ROOT";var _61=_5b(loc);if(_61){break;}}};dojo.i18n._preloadLocalizations=function(_62,_63){function _64(_65){_65=dojo.i18n.normalizeLocale(_65);dojo.i18n._searchLocalePath(_65,true,function(loc){for(var i=0;i<_63.length;i++){if(_63[i]==loc){dojo["require"](_62+"_"+loc);return true;}}return false;});};_64();var _68=dojo.config.extraLocale||[];for(var i=0;i<_68.length;i++){_64(_68[i]);}};}if(!dojo._hasResource["dojo.cldr.supplemental"]){dojo._hasResource["dojo.cldr.supplemental"]=true;dojo.provide("dojo.cldr.supplemental");dojo.cldr.supplemental.getFirstDayOfWeek=function(_6a){var _6b={mv:5,ae:6,af:6,bh:6,dj:6,dz:6,eg:6,er:6,et:6,iq:6,ir:6,jo:6,ke:6,kw:6,lb:6,ly:6,ma:6,om:6,qa:6,sa:6,sd:6,so:6,tn:6,ye:6,as:0,au:0,az:0,bw:0,ca:0,cn:0,fo:0,ge:0,gl:0,gu:0,hk:0,ie:0,il:0,is:0,jm:0,jp:0,kg:0,kr:0,la:0,mh:0,mo:0,mp:0,mt:0,nz:0,ph:0,pk:0,sg:0,th:0,tt:0,tw:0,um:0,us:0,uz:0,vi:0,za:0,zw:0,et:0,mw:0,ng:0,tj:0,sy:4};var _6c=dojo.cldr.supplemental._region(_6a);var dow=_6b[_6c];return (dow===undefined)?1:dow;};dojo.cldr.supplemental._region=function(_6e){_6e=dojo.i18n.normalizeLocale(_6e);var _6f=_6e.split("-");var _70=_6f[1];if(!_70){_70={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"}[_6f[0]];}else{if(_70.length==4){_70=_6f[2];}}return _70;};dojo.cldr.supplemental.getWeekend=function(_71){var _72={eg:5,il:5,sy:5,"in":0,ae:4,bh:4,dz:4,iq:4,jo:4,kw:4,lb:4,ly:4,ma:4,om:4,qa:4,sa:4,sd:4,tn:4,ye:4};var _73={ae:5,bh:5,dz:5,iq:5,jo:5,kw:5,lb:5,ly:5,ma:5,om:5,qa:5,sa:5,sd:5,tn:5,ye:5,af:5,ir:5,eg:6,il:6,sy:6};var _74=dojo.cldr.supplemental._region(_71);var _75=_72[_74];var end=_73[_74];if(_75===undefined){_75=6;}if(end===undefined){end=0;}return {start:_75,end:end};};}if(!dojo._hasResource["dojo.regexp"]){dojo._hasResource["dojo.regexp"]=true;dojo.provide("dojo.regexp");dojo.regexp.escapeString=function(str,_78){return str.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,function(ch){if(_78&&_78.indexOf(ch)!=-1){return ch;}return "\\"+ch;});};dojo.regexp.buildGroupRE=function(arr,re,_7c){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("|"),_7c);};dojo.regexp.group=function(_7f,_80){return "("+(_80?"?:":"")+_7f+")";};}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(_84,_85,ch,end){if(!ch){ch="0";}var out=String(_84),pad=dojo.string.rep(ch,Math.ceil((_85-out.length)/ch.length));return end?out+pad:pad+out;};dojo.string.substitute=function(_8a,map,_8c,_8d){_8d=_8d||dojo.global;_8c=(!_8c)?function(v){return v;}:dojo.hitch(_8d,_8c);return _8a.replace(/\$\{([^\s\:\}]+)(?:\:([^\s\:\}]+))?\}/g,function(_8f,key,_91){var _92=dojo.getObject(key,false,map);if(_91){_92=dojo.getObject(_91,false,_8d).call(_8d,_92,key);}return _8c(_92,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.date.locale"]){dojo._hasResource["dojo.date.locale"]=true;dojo.provide("dojo.date.locale");(function(){function _95(_96,_97,_98,_99){return _99.replace(/([a-z])\1*/ig,function(_9a){var s,pad;var c=_9a.charAt(0);var l=_9a.length;var _9f=["abbr","wide","narrow"];switch(c){case "G":s=_97[(l<4)?"eraAbbr":"eraNames"][_96.getFullYear()<0?0:1];break;case "y":s=_96.getFullYear();switch(l){case 1:break;case 2:if(!_98){s=String(s);s=s.substr(s.length-2);break;}default:pad=true;}break;case "Q":case "q":s=Math.ceil((_96.getMonth()+1)/3);pad=true;break;case "M":var m=_96.getMonth();if(l<3){s=m+1;pad=true;}else{var _a1=["months","format",_9f[l-3]].join("-");s=_97[_a1][m];}break;case "w":var _a2=0;s=dojo.date.locale._getWeekOfYear(_96,_a2);pad=true;break;case "d":s=_96.getDate();pad=true;break;case "D":s=dojo.date.locale._getDayOfYear(_96);pad=true;break;case "E":var d=_96.getDay();if(l<3){s=d+1;pad=true;}else{var _a4=["days","format",_9f[l-3]].join("-");s=_97[_a4][d];}break;case "a":var _a5=(_96.getHours()<12)?"am":"pm";s=_97[_a5];break;case "h":case "H":case "K":case "k":var h=_96.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=_96.getMinutes();pad=true;break;case "s":s=_96.getSeconds();pad=true;break;case "S":s=Math.round(_96.getMilliseconds()*Math.pow(10,l-3));pad=true;break;case "v":case "z":s=dojo.date.getTimezoneName(_96);if(s){break;}l=4;case "Z":var _a7=_96.getTimezoneOffset();var tz=[(_a7<=0?"+":"-"),dojo.string.pad(Math.floor(Math.abs(_a7)/60),2),dojo.string.pad(Math.abs(_a7)%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: "+_99);}if(pad){s=dojo.string.pad(s,l);}return s;});};dojo.date.locale.format=function(_a9,_aa){_aa=_aa||{};var _ab=dojo.i18n.normalizeLocale(_aa.locale);var _ac=_aa.formatLength||"short";var _ad=dojo.date.locale._getGregorianBundle(_ab);var str=[];var _af=dojo.hitch(this,_95,_a9,_ad,_aa.fullYear);if(_aa.selector=="year"){var _b0=_a9.getFullYear();if(_ab.match(/^zh|^ja/)){_b0+="年";}return _b0;}if(_aa.selector!="time"){var _b1=_aa.datePattern||_ad["dateFormat-"+_ac];if(_b1){str.push(_b2(_b1,_af));}}if(_aa.selector!="date"){var _b3=_aa.timePattern||_ad["timeFormat-"+_ac];if(_b3){str.push(_b2(_b3,_af));}}var _b4=str.join(" ");return _b4;};dojo.date.locale.regexp=function(_b5){return dojo.date.locale._parseInfo(_b5).regexp;};dojo.date.locale._parseInfo=function(_b6){_b6=_b6||{};var _b7=dojo.i18n.normalizeLocale(_b6.locale);var _b8=dojo.date.locale._getGregorianBundle(_b7);var _b9=_b6.formatLength||"short";var _ba=_b6.datePattern||_b8["dateFormat-"+_b9];var _bb=_b6.timePattern||_b8["timeFormat-"+_b9];var _bc;if(_b6.selector=="date"){_bc=_ba;}else{if(_b6.selector=="time"){_bc=_bb;}else{_bc=_ba+" "+_bb;}}var _bd=[];var re=_b2(_bc,dojo.hitch(this,_bf,_bd,_b8,_b6));return {regexp:re,tokens:_bd,bundle:_b8};};dojo.date.locale.parse=function(_c0,_c1){var _c2=dojo.date.locale._parseInfo(_c1);var _c3=_c2.tokens,_c4=_c2.bundle;var re=new RegExp("^"+_c2.regexp+"$",_c2.strict?"":"i");var _c6=re.exec(_c0);if(!_c6){return null;}var _c7=["abbr","wide","narrow"];var _c8=[1970,0,1,0,0,0,0];var _c9="";var _ca=dojo.every(_c6,function(v,i){if(!i){return true;}var _cd=_c3[i-1];var l=_cd.length;switch(_cd.charAt(0)){case "y":if(l!=2&&_c1.strict){_c8[0]=v;}else{if(v<100){v=Number(v);var _cf=""+new Date().getFullYear();var _d0=_cf.substring(0,2)*100;var _d1=Math.min(Number(_cf.substring(2,4))+20,99);var num=(v<_d1)?_d0+v:_d0-100+v;_c8[0]=num;}else{if(_c1.strict){return false;}_c8[0]=v;}}break;case "M":if(l>2){var _d3=_c4["months-format-"+_c7[l-3]].concat();if(!_c1.strict){v=v.replace(".","").toLowerCase();_d3=dojo.map(_d3,function(s){return s.replace(".","").toLowerCase();});}v=dojo.indexOf(_d3,v);if(v==-1){return false;}}else{v--;}_c8[1]=v;break;case "E":case "e":var _d5=_c4["days-format-"+_c7[l-3]].concat();if(!_c1.strict){v=v.toLowerCase();_d5=dojo.map(_d5,function(d){return d.toLowerCase();});}v=dojo.indexOf(_d5,v);if(v==-1){return false;}break;case "D":_c8[1]=0;case "d":_c8[2]=v;break;case "a":var am=_c1.am||_c4.am;var pm=_c1.pm||_c4.pm;if(!_c1.strict){var _d9=/\./g;v=v.replace(_d9,"").toLowerCase();am=am.replace(_d9,"").toLowerCase();pm=pm.replace(_d9,"").toLowerCase();}if(_c1.strict&&v!=am&&v!=pm){return false;}_c9=(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;}_c8[3]=v;break;case "m":_c8[4]=v;break;case "s":_c8[5]=v;break;case "S":_c8[6]=v;}return true;});var _da=+_c8[3];if(_c9==="p"&&_da<12){_c8[3]=_da+12;}else{if(_c9==="a"&&_da==12){_c8[3]=0;}}var _db=new Date(_c8[0],_c8[1],_c8[2],_c8[3],_c8[4],_c8[5],_c8[6]);if(_c1.strict){_db.setFullYear(_c8[0]);}var _dc=_c3.join(""),_dd=_dc.indexOf("d")!=-1,_de=_dc.indexOf("M")!=-1;if(!_ca||(_de&&_db.getMonth()>_c8[1])||(_dd&&_db.getDate()>_c8[2])){return null;}if((_de&&_db.getMonth()<_c8[1])||(_dd&&_db.getDate()<_c8[2])){_db=dojo.date.add(_db,"hour",1);}return _db;};function _b2(_df,_e0,_e1,_e2){var _e3=function(x){return x;};_e0=_e0||_e3;_e1=_e1||_e3;_e2=_e2||_e3;var _e5=_df.match(/(''|[^'])+/g);var _e6=_df.charAt(0)=="'";dojo.forEach(_e5,function(_e7,i){if(!_e7){_e5[i]="";}else{_e5[i]=(_e6?_e1:_e0)(_e7);_e6=!_e6;}});return _e2(_e5.join(""));};function _bf(_e9,_ea,_eb,_ec){_ec=dojo.regexp.escapeString(_ec);if(!_eb.strict){_ec=_ec.replace(" a"," ?a");}return _ec.replace(/([a-z])\1*/ig,function(_ed){var s;var c=_ed.charAt(0);var l=_ed.length;var p2="",p3="";if(_eb.strict){if(l>1){p2="0"+"{"+(l-1)+"}";}if(l>2){p3="0"+"{"+(l-2)+"}";}}else{p2="0?";p3="0{0,2}";}switch(c){case "y":s="\\d{2,4}";break;case "M":s=(l>2)?"\\S+?":p2+"[1-9]|1[0-2]";break;case "D":s=p2+"[1-9]|"+p3+"[1-9][0-9]|[12][0-9][0-9]|3[0-5][0-9]|36[0-6]";break;case "d":s="[12]\\d|"+p2+"[1-9]|3[01]";break;case "w":s=p2+"[1-9]|[1-4][0-9]|5[0-3]";break;case "E":s="\\S+";break;case "h":s=p2+"[1-9]|1[0-2]";break;case "k":s=p2+"\\d|1[01]";break;case "H":s=p2+"\\d|1\\d|2[0-3]";break;case "K":s=p2+"[1-9]|1\\d|2[0-4]";break;case "m":case "s":s="[0-5]\\d";break;case "S":s="\\d{"+l+"}";break;case "a":var am=_eb.am||_ea.am||"AM";var pm=_eb.pm||_ea.pm||"PM";if(_eb.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(_e9){_e9.push(_ed);}return "("+s+")";}).replace(/[\xa0 ]/g,"[\\s\\xa0]");};})();(function(){var _f5=[];dojo.date.locale.addCustomFormats=function(_f6,_f7){_f5.push({pkg:_f6,name:_f7});};dojo.date.locale._getGregorianBundle=function(_f8){var _f9={};dojo.forEach(_f5,function(_fa){var _fb=dojo.i18n.getLocalization(_fa.pkg,_fa.name,_f8);_f9=dojo.mixin(_f9,_fb);},this);return _f9;};})();dojo.date.locale.addCustomFormats("dojo.cldr","gregorian");dojo.date.locale.getNames=function(_fc,_fd,_fe,_ff){var _100;var _101=dojo.date.locale._getGregorianBundle(_ff);var _102=[_fc,_fe,_fd];if(_fe=="standAlone"){var key=_102.join("-");_100=_101[key];if(_100[0]==1){_100=undefined;}}_102[1]="format";return (_100||_101[_102.join("-")]).concat();};dojo.date.locale.isWeekend=function(_104,_105){var _106=dojo.cldr.supplemental.getWeekend(_105);var day=(_104||new Date()).getDay();if(_106.end<_106.start){_106.end+=7;if(day<_106.start){day+=7;}}return day>=_106.start&&day<=_106.end;};dojo.date.locale._getDayOfYear=function(_108){return dojo.date.difference(new Date(_108.getFullYear(),0,1,_108.getHours()),_108)+1;};dojo.date.locale._getWeekOfYear=function(_109,_10a){if(arguments.length==1){_10a=0;}var _10b=new Date(_109.getFullYear(),0,1).getDay();var adj=(_10b-_10a+7)%7;var week=Math.floor((dojo.date.locale._getDayOfYear(_109)+adj-1)/7);if(_10b==_10a){week++;}return week;};}if(!dojo._hasResource["dojo.cookie"]){dojo._hasResource["dojo.cookie"]=true;dojo.provide("dojo.cookie");dojo.cookie=function(name,_10f,_110){var c=document.cookie;if(arguments.length==1){var _112=c.match(new RegExp("(?:^|; )"+dojo.regexp.escapeString(name)+"=([^;]*)"));return _112?decodeURIComponent(_112[1]):undefined;}else{_110=_110||{};var exp=_110.expires;if(typeof exp=="number"){var d=new Date();d.setTime(d.getTime()+exp*24*60*60*1000);exp=_110.expires=d;}if(exp&&exp.toUTCString){_110.expires=exp.toUTCString();}_10f=encodeURIComponent(_10f);var _115=name+"="+_10f,_116;for(_116 in _110){_115+="; "+_116;var _117=_110[_116];if(_117!==true){_115+="="+_117;}}document.cookie=_115;}};dojo.cookie.isSupported=function(){if(!("cookieEnabled" in navigator)){this("__djCookieTest__","CookiesAllowed");navigator.cookieEnabled=this("__djCookieTest__")=="CookiesAllowed";if(navigator.cookieEnabled){this("__djCookieTest__","",{expires:-1});}}return navigator.cookieEnabled;};}if(!dojo._hasResource["dijit._base.focus"]){dojo._hasResource["dijit._base.focus"]=true;dojo.provide("dijit._base.focus");dojo.mixin(dijit,{_curFocus:null,_prevFocus:null,isCollapsed:function(){var _118=dojo.doc;if(_118.selection){var s=_118.selection;if(s.type=="Text"){return !s.createRange().htmlText.length;}else{return !s.createRange().length;}}else{var _11a=dojo.global;var _11b=_11a.getSelection();if(dojo.isString(_11b)){return !_11b;}else{return !_11b||_11b.isCollapsed||!_11b.toString();}}},getBookmark:function(){var _11c,_11d=dojo.doc.selection;if(_11d){var _11e=_11d.createRange();if(_11d.type.toUpperCase()=="CONTROL"){if(_11e.length){_11c=[];var i=0,len=_11e.length;while(i<len){_11c.push(_11e.item(i++));}}else{_11c=null;}}else{_11c=_11e.getBookmark();}}else{if(window.getSelection){_11d=dojo.global.getSelection();if(_11d){_11e=_11d.getRangeAt(0);_11c=_11e.cloneRange();}}else{console.warn("No idea how to store the current selection for this browser!");}}return _11c;},moveToBookmark:function(_121){var _122=dojo.doc;if(_122.selection){var _123;if(dojo.isArray(_121)){_123=_122.body.createControlRange();dojo.forEach(_121,function(n){_123.addElement(n);});}else{_123=_122.selection.createRange();_123.moveToBookmark(_121);}_123.select();}else{var _125=dojo.global.getSelection&&dojo.global.getSelection();if(_125&&_125.removeAllRanges){_125.removeAllRanges();_125.addRange(_121);}else{console.warn("No idea how to restore selection for this browser!");}}},getFocus:function(menu,_127){return {node:menu&&dojo.isDescendant(dijit._curFocus,menu.domNode)?dijit._prevFocus:dijit._curFocus,bookmark:!dojo.withGlobal(_127||dojo.global,dijit.isCollapsed)?dojo.withGlobal(_127||dojo.global,dijit.getBookmark):null,openedForWindow:_127};},focus:function(_128){if(!_128){return;}var node="node" in _128?_128.node:_128,_12a=_128.bookmark,_12b=_128.openedForWindow;if(node){var _12c=(node.tagName.toLowerCase()=="iframe")?node.contentWindow:node;if(_12c&&_12c.focus){try{_12c.focus();}catch(e){}}dijit._onFocusNode(node);}if(_12a&&dojo.withGlobal(_12b||dojo.global,dijit.isCollapsed)){if(_12b){_12b.focus();}try{dojo.withGlobal(_12b||dojo.global,dijit.moveToBookmark,null,[_12a]);}catch(e){}}},_activeStack:[],registerIframe:function(_12d){dijit.registerWin(_12d.contentWindow,_12d);},registerWin:function(_12e,_12f){dojo.connect(_12e.document,"onmousedown",function(evt){dijit._justMouseDowned=true;setTimeout(function(){dijit._justMouseDowned=false;},0);dijit._onTouchNode(_12f||evt.target||evt.srcElement);});var doc=_12e.document;if(doc){if(dojo.isIE){doc.attachEvent("onactivate",function(evt){if(evt.srcElement.tagName.toLowerCase()!="#document"){dijit._onFocusNode(_12f||evt.srcElement);}});doc.attachEvent("ondeactivate",function(evt){dijit._onBlurNode(_12f||evt.srcElement);});}else{doc.addEventListener("focus",function(evt){dijit._onFocusNode(_12f||evt.target);},true);doc.addEventListener("blur",function(evt){dijit._onBlurNode(_12f||evt.target);},true);}}doc=null;},_onBlurNode:function(node){dijit._prevFocus=dijit._curFocus;dijit._curFocus=null;if(dijit._justMouseDowned){return;}if(dijit._clearActiveWidgetsTimer){clearTimeout(dijit._clearActiveWidgetsTimer);}dijit._clearActiveWidgetsTimer=setTimeout(function(){delete dijit._clearActiveWidgetsTimer;dijit._setStack([]);dijit._prevFocus=null;},100);},_onTouchNode:function(node){if(dijit._clearActiveWidgetsTimer){clearTimeout(dijit._clearActiveWidgetsTimer);delete dijit._clearActiveWidgetsTimer;}var _138=[];try{while(node){if(node.dijitPopupParent){node=dijit.byId(node.dijitPopupParent).domNode;}else{if(node.tagName&&node.tagName.toLowerCase()=="body"){if(node===dojo.body()){break;}node=dijit.getDocumentWindow(node.ownerDocument).frameElement;}else{var id=node.getAttribute&&node.getAttribute("widgetId");if(id){_138.unshift(id);}node=node.parentNode;}}}}catch(e){}dijit._setStack(_138);},_onFocusNode:function(node){if(!node){return;}if(node.nodeType==9){return;}dijit._onTouchNode(node);if(node==dijit._curFocus){return;}if(dijit._curFocus){dijit._prevFocus=dijit._curFocus;}dijit._curFocus=node;dojo.publish("focusNode",[node]);},_setStack:function(_13b){var _13c=dijit._activeStack;dijit._activeStack=_13b;for(var _13d=0;_13d<Math.min(_13c.length,_13b.length);_13d++){if(_13c[_13d]!=_13b[_13d]){break;}}for(var i=_13c.length-1;i>=_13d;i--){var _13f=dijit.byId(_13c[i]);if(_13f){_13f._focused=false;_13f._hasBeenBlurred=true;if(_13f._onBlur){_13f._onBlur();}if(_13f._setStateClass){_13f._setStateClass();}dojo.publish("widgetBlur",[_13f]);}}for(i=_13d;i<_13b.length;i++){_13f=dijit.byId(_13b[i]);if(_13f){_13f._focused=true;if(_13f._onFocus){_13f._onFocus();}if(_13f._setStateClass){_13f._setStateClass();}dojo.publish("widgetFocus",[_13f]);}}}});dojo.addOnLoad(function(){dijit.registerWin(window);});}if(!dojo._hasResource["dijit._base.manager"]){dojo._hasResource["dijit._base.manager"]=true;dojo.provide("dijit._base.manager");dojo.declare("dijit.WidgetSet",null,{constructor:function(){this._hash={};},add:function(_140){if(this._hash[_140.id]){throw new Error("Tried to register widget with id=="+_140.id+" but that id is already registered");}this._hash[_140.id]=_140;},remove:function(id){delete this._hash[id];},forEach:function(func){for(var id in this._hash){func(this._hash[id]);}},filter:function(_144){var res=new dijit.WidgetSet();this.forEach(function(_146){if(_144(_146)){res.add(_146);}});return res;},byId:function(id){return this._hash[id];},byClass:function(cls){return this.filter(function(_149){return _149.declaredClass==cls;});}});dijit.registry=new dijit.WidgetSet();dijit._widgetTypeCtr={};dijit.getUniqueId=function(_14a){var id;do{id=_14a+"_"+(_14a in dijit._widgetTypeCtr?++dijit._widgetTypeCtr[_14a]:dijit._widgetTypeCtr[_14a]=0);}while(dijit.byId(id));return id;};dijit.findWidgets=function(root){var _14d=[];function _14e(root){var list=dojo.isIE?root.children:root.childNodes,i=0,node;while(node=list[i++]){if(node.nodeType!=1){continue;}var _153=node.getAttribute("widgetId");if(_153){var _154=dijit.byId(_153);_14d.push(_154);}else{_14e(node);}}};_14e(root);return _14d;};if(dojo.isIE){dojo.addOnWindowUnload(function(){dojo.forEach(dijit.findWidgets(dojo.body()),function(_155){if(_155.destroyRecursive){_155.destroyRecursive();}else{if(_155.destroy){_155.destroy();}}});});}dijit.byId=function(id){return (dojo.isString(id))?dijit.registry.byId(id):id;};dijit.byNode=function(node){return dijit.registry.byId(node.getAttribute("widgetId"));};dijit.getEnclosingWidget=function(node){while(node){if(node.getAttribute&&node.getAttribute("widgetId")){return dijit.registry.byId(node.getAttribute("widgetId"));}node=node.parentNode;}return null;};dijit._tabElements={area:true,button:true,input:true,object:true,select:true,textarea:true};dijit._isElementShown=function(elem){var _15a=dojo.style(elem);return (_15a.visibility!="hidden")&&(_15a.visibility!="collapsed")&&(_15a.display!="none")&&(dojo.attr(elem,"type")!="hidden");};dijit.isTabNavigable=function(elem){if(dojo.hasAttr(elem,"disabled")){return false;}var _15c=dojo.hasAttr(elem,"tabindex");var _15d=dojo.attr(elem,"tabindex");if(_15c&&_15d>=0){return true;}var name=elem.nodeName.toLowerCase();if(((name=="a"&&dojo.hasAttr(elem,"href"))||dijit._tabElements[name])&&(!_15c||_15d>=0)){return true;}return false;};dijit._getTabNavigable=function(root){var _160,last,_162,_163,_164,_165;var _166=function(_167){dojo.query("> *",_167).forEach(function(_168){var _169=dijit._isElementShown(_168);if(_169&&dijit.isTabNavigable(_168)){var _16a=dojo.attr(_168,"tabindex");if(!dojo.hasAttr(_168,"tabindex")||_16a==0){if(!_160){_160=_168;}last=_168;}else{if(_16a>0){if(!_162||_16a<_163){_163=_16a;_162=_168;}if(!_164||_16a>=_165){_165=_16a;_164=_168;}}}}if(_169&&_168.nodeName.toUpperCase()!="SELECT"){_166(_168);}});};if(dijit._isElementShown(root)){_166(root);}return {first:_160,last:last,lowest:_162,highest:_164};};dijit.getFirstInTabbingOrder=function(root){var _16c=dijit._getTabNavigable(dojo.byId(root));return _16c.lowest?_16c.lowest:_16c.first;};dijit.getLastInTabbingOrder=function(root){var _16e=dijit._getTabNavigable(dojo.byId(root));return _16e.last?_16e.last:_16e.highest;};dijit.defaultDuration=dojo.config["defaultDuration"]||200;}if(!dojo._hasResource["dojo.AdapterRegistry"]){dojo._hasResource["dojo.AdapterRegistry"]=true;dojo.provide("dojo.AdapterRegistry");dojo.AdapterRegistry=function(_16f){this.pairs=[];this.returnWrappers=_16f||false;};dojo.extend(dojo.AdapterRegistry,{register:function(name,_171,wrap,_173,_174){this.pairs[((_174)?"unshift":"push")]([name,_171,wrap,_173]);},match:function(){for(var i=0;i<this.pairs.length;i++){var pair=this.pairs[i];if(pair[1].apply(this,arguments)){if((pair[3])||(this.returnWrappers)){return pair[2];}else{return pair[2].apply(this,arguments);}}}throw new Error("No match found");},unregister:function(name){for(var i=0;i<this.pairs.length;i++){var pair=this.pairs[i];if(pair[0]==name){this.pairs.splice(i,1);return true;}}return false;}});}if(!dojo._hasResource["dijit._base.place"]){dojo._hasResource["dijit._base.place"]=true;dojo.provide("dijit._base.place");dijit.getViewport=function(){var _17a=(dojo.doc.compatMode=="BackCompat")?dojo.body():dojo.doc.documentElement;var _17b=dojo._docScroll();return {w:_17a.clientWidth,h:_17a.clientHeight,l:_17b.x,t:_17b.y};};dijit.placeOnScreen=function(node,pos,_17e,_17f){var _180=dojo.map(_17e,function(_181){var c={corner:_181,pos:{x:pos.x,y:pos.y}};if(_17f){c.pos.x+=_181.charAt(1)=="L"?_17f.x:-_17f.x;c.pos.y+=_181.charAt(0)=="T"?_17f.y:-_17f.y;}return c;});return dijit._place(node,_180);};dijit._place=function(node,_184,_185){var view=dijit.getViewport();if(!node.parentNode||String(node.parentNode.tagName).toLowerCase()!="body"){dojo.body().appendChild(node);}var best=null;dojo.some(_184,function(_188){var _189=_188.corner;var pos=_188.pos;if(_185){_185(node,_188.aroundCorner,_189);}var _18b=node.style;var _18c=_18b.display;var _18d=_18b.visibility;_18b.visibility="hidden";_18b.display="";var mb=dojo.marginBox(node);_18b.display=_18c;_18b.visibility=_18d;var _18f=(_189.charAt(1)=="L"?pos.x:Math.max(view.l,pos.x-mb.w)),_190=(_189.charAt(0)=="T"?pos.y:Math.max(view.t,pos.y-mb.h)),endX=(_189.charAt(1)=="L"?Math.min(view.l+view.w,_18f+mb.w):pos.x),endY=(_189.charAt(0)=="T"?Math.min(view.t+view.h,_190+mb.h):pos.y),_193=endX-_18f,_194=endY-_190,_195=(mb.w-_193)+(mb.h-_194);if(best==null||_195<best.overflow){best={corner:_189,aroundCorner:_188.aroundCorner,x:_18f,y:_190,w:_193,h:_194,overflow:_195};}return !_195;});node.style.left=best.x+"px";node.style.top=best.y+"px";if(best.overflow&&_185){_185(node,best.aroundCorner,best.corner);}return best;};dijit.placeOnScreenAroundNode=function(node,_197,_198,_199){_197=dojo.byId(_197);var _19a=_197.style.display;_197.style.display="";var _19b=_197.offsetWidth;var _19c=_197.offsetHeight;var _19d=dojo.coords(_197,true);_197.style.display=_19a;return dijit._placeOnScreenAroundRect(node,_19d.x,_19d.y,_19b,_19c,_198,_199);};dijit.placeOnScreenAroundRectangle=function(node,_19f,_1a0,_1a1){return dijit._placeOnScreenAroundRect(node,_19f.x,_19f.y,_19f.width,_19f.height,_1a0,_1a1);};dijit._placeOnScreenAroundRect=function(node,x,y,_1a5,_1a6,_1a7,_1a8){var _1a9=[];for(var _1aa in _1a7){_1a9.push({aroundCorner:_1aa,corner:_1a7[_1aa],pos:{x:x+(_1aa.charAt(1)=="L"?0:_1a5),y:y+(_1aa.charAt(0)=="T"?0:_1a6)}});}return dijit._place(node,_1a9,_1a8);};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,_1b0,_1b1,_1b2){return dijit.placementRegistry.match.apply(dijit.placementRegistry,arguments);};}if(!dojo._hasResource["dijit._base.window"]){dojo._hasResource["dijit._base.window"]=true;dojo.provide("dijit._base.window");dijit.getDocumentWindow=function(doc){if(dojo.isIE&&window!==document.parentWindow&&!doc._parentWindow){doc.parentWindow.execScript("document._parentWindow = window;","Javascript");var win=doc._parentWindow;doc._parentWindow=null;return win;}return doc._parentWindow||doc.parentWindow||doc.defaultView;};}if(!dojo._hasResource["dijit._base.popup"]){dojo._hasResource["dijit._base.popup"]=true;dojo.provide("dijit._base.popup");dijit.popup=new function(){var _1b5=[],_1b6=1000,_1b7=1;this.prepare=function(node){var s=node.style;s.visibility="hidden";s.position="absolute";s.top="-9999px";if(s.display=="none"){s.display="";}dojo.body().appendChild(node);};this.open=function(args){var _1bb=args.popup,_1bc=args.orient||{"BL":"TL","TL":"BL"},_1bd=args.around,id=(args.around&&args.around.id)?(args.around.id+"_dropdown"):("popup_"+_1b7++);var _1bf=dojo.create("div",{id:id,"class":"dijitPopup",style:{zIndex:_1b6+_1b5.length,visibility:"hidden"}},dojo.body());dijit.setWaiRole(_1bf,"presentation");_1bf.style.left=_1bf.style.top="0px";if(args.parent){_1bf.dijitPopupParent=args.parent.id;}var s=_1bb.domNode.style;s.display="";s.visibility="";s.position="";s.top="0px";_1bf.appendChild(_1bb.domNode);var _1c1=new dijit.BackgroundIframe(_1bf);var best=_1bd?dijit.placeOnScreenAroundElement(_1bf,_1bd,_1bc,_1bb.orient?dojo.hitch(_1bb,"orient"):null):dijit.placeOnScreen(_1bf,args,_1bc=="R"?["TR","BR","TL","BL"]:["TL","BL","TR","BR"],args.padding);_1bf.style.visibility="visible";var _1c3=[];var _1c4=function(){for(var pi=_1b5.length-1;pi>0&&_1b5[pi].parent===_1b5[pi-1].widget;pi--){}return _1b5[pi];};_1c3.push(dojo.connect(_1bf,"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 _1c7=_1c4();if(_1c7&&_1c7.onCancel){_1c7.onCancel();}}}}));if(_1bb.onCancel){_1c3.push(dojo.connect(_1bb,"onCancel",null,args.onCancel));}_1c3.push(dojo.connect(_1bb,_1bb.onExecute?"onExecute":"onChange",null,function(){var _1c8=_1c4();if(_1c8&&_1c8.onExecute){_1c8.onExecute();}}));_1b5.push({wrapper:_1bf,iframe:_1c1,widget:_1bb,parent:args.parent,onExecute:args.onExecute,onCancel:args.onCancel,onClose:args.onClose,handlers:_1c3});if(_1bb.onOpen){_1bb.onOpen(best);}return best;};this.close=function(_1c9){while(dojo.some(_1b5,function(elem){return elem.widget==_1c9;})){var top=_1b5.pop(),_1cc=top.wrapper,_1cd=top.iframe,_1ce=top.widget,_1cf=top.onClose;if(_1ce.onClose){_1ce.onClose();}dojo.forEach(top.handlers,dojo.disconnect);if(!_1ce||!_1ce.domNode){return;}this.prepare(_1ce.domNode);_1cd.destroy();dojo.destroy(_1cc);if(_1cf){_1cf();}}};}();dijit._frames=new function(){var _1d0=[];this.pop=function(){var _1d1;if(_1d0.length){_1d1=_1d0.pop();_1d1.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\");'>";_1d1=dojo.doc.createElement(html);}else{_1d1=dojo.create("iframe");_1d1.src="javascript:\"\"";_1d1.className="dijitBackgroundIframe";}_1d1.tabIndex=-1;dojo.body().appendChild(_1d1);}return _1d1;};this.push=function(_1d4){_1d4.style.display="none";if(dojo.isIE){_1d4.style.removeExpression("width");_1d4.style.removeExpression("height");}_1d0.push(_1d4);};}();dijit.BackgroundIframe=function(node){if(!node.id){throw new Error("no id");}if(dojo.isIE<7||(dojo.isFF<3&&dojo.hasClass(dojo.body(),"dijit_a11y"))){var _1d6=dijit._frames.pop();node.appendChild(_1d6);if(dojo.isIE){_1d6.style.setExpression("width",dojo._scopeName+".doc.getElementById('"+node.id+"').offsetWidth");_1d6.style.setExpression("height",dojo._scopeName+".doc.getElementById('"+node.id+"').offsetHeight");}this.iframe=_1d6;}};dojo.extend(dijit.BackgroundIframe,{destroy:function(){if(this.iframe){dijit._frames.push(this.iframe);delete this.iframe;}}});}if(!dojo._hasResource["dijit._base.scroll"]){dojo._hasResource["dijit._base.scroll"]=true;dojo.provide("dijit._base.scroll");dijit.scrollIntoView=function(node){try{node=dojo.byId(node);var doc=dojo.doc;var body=dojo.body();var html=body.parentNode;if((!(dojo.isFF>=3||dojo.isIE||dojo.isWebKit)||node==body||node==html)&&(typeof node.scrollIntoView=="function")){node.scrollIntoView(false);return;}var ltr=dojo._isBodyLtr();var _1dc=dojo.isIE>=8&&!_1dd;var rtl=!ltr&&!_1dc;var _1df=body;var _1dd=doc.compatMode=="BackCompat";if(_1dd){html._offsetWidth=html._clientWidth=body._offsetWidth=body.clientWidth;html._offsetHeight=html._clientHeight=body._offsetHeight=body.clientHeight;}else{if(dojo.isWebKit){body._offsetWidth=body._clientWidth=html.clientWidth;body._offsetHeight=body._clientHeight=html.clientHeight;}else{_1df=html;}html._offsetHeight=html.clientHeight;html._offsetWidth=html.clientWidth;}function _1e0(_1e1){var ie=dojo.isIE;return ((ie<=6||(ie>=7&&_1dd))?false:(dojo.style(_1e1,"position").toLowerCase()=="fixed"));};function _1e3(_1e4){var _1e5=_1e4.parentNode;var _1e6=_1e4.offsetParent;if(_1e6==null||_1e0(_1e4)){_1e6=html;_1e5=(_1e4==body)?html:null;}_1e4._offsetParent=_1e6;_1e4._parent=_1e5;var bp=dojo._getBorderExtents(_1e4);_1e4._borderStart={H:(_1dc&&!ltr)?(bp.w-bp.l):bp.l,V:bp.t};_1e4._borderSize={H:bp.w,V:bp.h};_1e4._scrolledAmount={H:_1e4.scrollLeft,V:_1e4.scrollTop};_1e4._offsetSize={H:_1e4._offsetWidth||_1e4.offsetWidth,V:_1e4._offsetHeight||_1e4.offsetHeight};_1e4._offsetStart={H:(_1dc&&!ltr)?_1e6.clientWidth-_1e4.offsetLeft-_1e4._offsetSize.H:_1e4.offsetLeft,V:_1e4.offsetTop};_1e4._clientSize={H:_1e4._clientWidth||_1e4.clientWidth,V:_1e4._clientHeight||_1e4.clientHeight};if(_1e4!=body&&_1e4!=html&&_1e4!=node){for(var dir in _1e4._offsetSize){var _1e9=_1e4._offsetSize[dir]-_1e4._clientSize[dir]-_1e4._borderSize[dir];var _1ea=_1e4._clientSize[dir]>0&&_1e9>0;if(_1ea){_1e4._offsetSize[dir]-=_1e9;if(dojo.isIE&&rtl&&dir=="H"){_1e4._offsetStart[dir]+=_1e9;}}}}};var _1eb=node;while(_1eb!=null){if(_1e0(_1eb)){node.scrollIntoView(false);return;}_1e3(_1eb);_1eb=_1eb._parent;}if(dojo.isIE&&node._parent){var _1ec=node._offsetParent;node._offsetStart.H+=_1ec._borderStart.H;node._offsetStart.V+=_1ec._borderStart.V;}if(dojo.isIE>=7&&_1df==html&&rtl&&body._offsetStart&&body._offsetStart.H==0){var _1ed=html.scrollWidth-html._offsetSize.H;if(_1ed>0){body._offsetStart.H=-_1ed;}}if(dojo.isIE<=6&&!_1dd){html._offsetSize.H+=html._borderSize.H;html._offsetSize.V+=html._borderSize.V;}if(rtl&&body._offsetStart&&_1df==html&&html._scrolledAmount){var ofs=body._offsetStart.H;if(ofs<0){html._scrolledAmount.H+=ofs;body._offsetStart.H=0;}}_1eb=node;while(_1eb){var _1ef=_1eb._parent;if(!_1ef){break;}if(_1ef.tagName=="TD"){var _1f0=_1ef._parent._parent._parent;if(_1ef!=_1eb._offsetParent&&_1ef._offsetParent!=_1eb._offsetParent){_1ef=_1f0;}}var _1f1=_1eb._offsetParent==_1ef;for(var dir in _1eb._offsetStart){var _1f3=dir=="H"?"V":"H";if(rtl&&dir=="H"&&(_1ef!=html)&&(_1ef!=body)&&(dojo.isIE||dojo.isWebKit)&&_1ef._clientSize.H>0&&_1ef.scrollWidth>_1ef._clientSize.H){var _1f4=_1ef.scrollWidth-_1ef._clientSize.H;if(_1f4>0){_1ef._scrolledAmount.H-=_1f4;}}if(_1ef._offsetParent.tagName=="TABLE"){if(dojo.isIE){_1ef._offsetStart[dir]-=_1ef._offsetParent._borderStart[dir];_1ef._borderStart[dir]=_1ef._borderSize[dir]=0;}else{_1ef._offsetStart[dir]+=_1ef._offsetParent._borderStart[dir];}}if(dojo.isIE){_1ef._offsetStart[dir]+=_1ef._offsetParent._borderStart[dir];}var _1f5=_1eb._offsetStart[dir]-_1ef._scrolledAmount[dir]-(_1f1?0:_1ef._offsetStart[dir])-_1ef._borderStart[dir];var _1f6=_1f5+_1eb._offsetSize[dir]-_1ef._offsetSize[dir]+_1ef._borderSize[dir];var _1f7=(dir=="H")?"scrollLeft":"scrollTop";var _1f8=dir=="H"&&rtl;var _1f9=_1f8?-_1f6:_1f5;var _1fa=_1f8?-_1f5:_1f6;var _1fb=(_1f9*_1fa<=0)?0:Math[(_1f9<0)?"max":"min"](_1f9,_1fa);if(_1fb!=0){var _1fc=_1ef[_1f7];_1ef[_1f7]+=(_1f8)?-_1fb:_1fb;var _1fd=_1ef[_1f7]-_1fc;}if(_1f1){_1eb._offsetStart[dir]+=_1ef._offsetStart[dir];}_1eb._offsetStart[dir]-=_1ef[_1f7];}_1eb._parent=_1ef._parent;_1eb._offsetParent=_1ef._offsetParent;}_1ef=node;var next;while(_1ef&&_1ef.removeAttribute){next=_1ef.parentNode;_1ef.removeAttribute("_offsetParent");_1ef.removeAttribute("_parent");_1ef=next;}}catch(error){console.error("scrollIntoView: "+error);node.scrollIntoView(false);}};}if(!dojo._hasResource["dijit._base.sniff"]){dojo._hasResource["dijit._base.sniff"]=true;dojo.provide("dijit._base.sniff");(function(){var d=dojo,html=d.doc.documentElement,ie=d.isIE,_202=d.isOpera,maj=Math.floor,ff=d.isFF,_205=d.boxModel.replace(/-/,""),_206={dj_ie:ie,dj_ie6:maj(ie)==6,dj_ie7:maj(ie)==7,dj_iequirks:ie&&d.isQuirks,dj_opera:_202,dj_opera8:maj(_202)==8,dj_opera9:maj(_202)==9,dj_khtml:d.isKhtml,dj_webkit:d.isWebKit,dj_safari:d.isSafari,dj_gecko:d.isMozilla,dj_ff2:maj(ff)==2,dj_ff3:maj(ff)==3};_206["dj_"+_205]=true;for(var p in _206){if(_206[p]){if(html.className){html.className+=" "+p;}else{html.className=p;}}}dojo._loaders.unshift(function(){if(!dojo._isBodyLtr()){html.className+=" dijitRtl";for(var p in _206){if(_206[p]){html.className+=" "+p+"-rtl";}}}});})();}if(!dojo._hasResource["dijit._base.typematic"]){dojo._hasResource["dijit._base.typematic"]=true;dojo.provide("dijit._base.typematic");dijit.typematic={_fireEventAndReload:function(){this._timer=null;this._callback(++this._count,this._node,this._evt);this._currentTimeout=(this._currentTimeout<0)?this._initialDelay:((this._subsequentDelay>1)?this._subsequentDelay:Math.round(this._currentTimeout*this._subsequentDelay));this._timer=setTimeout(dojo.hitch(this,"_fireEventAndReload"),this._currentTimeout);},trigger:function(evt,_20a,node,_20c,obj,_20e,_20f){if(obj!=this._obj){this.stop();this._initialDelay=_20f||500;this._subsequentDelay=_20e||0.9;this._obj=obj;this._evt=evt;this._node=node;this._currentTimeout=-1;this._count=-1;this._callback=dojo.hitch(_20a,_20c);this._fireEventAndReload();}},stop:function(){if(this._timer){clearTimeout(this._timer);this._timer=null;}if(this._obj){this._callback(-1,this._node,this._evt);this._obj=null;}},addKeyListener:function(node,_211,_212,_213,_214,_215){if(_211.keyCode){_211.charOrCode=_211.keyCode;dojo.deprecated("keyCode attribute parameter for dijit.typematic.addKeyListener is deprecated. Use charOrCode instead.","","2.0");}else{if(_211.charCode){_211.charOrCode=String.fromCharCode(_211.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==_211.charOrCode&&(_211.ctrlKey===undefined||_211.ctrlKey==evt.ctrlKey)&&(_211.altKey===undefined||_211.altKey==evt.ctrlKey)&&(_211.shiftKey===undefined||_211.shiftKey==evt.ctrlKey)){dojo.stopEvent(evt);dijit.typematic.trigger(_211,_212,node,_213,_211,_214,_215);}else{if(dijit.typematic._obj==_211){dijit.typematic.stop();}}}),dojo.connect(node,"onkeyup",this,function(evt){if(dijit.typematic._obj==_211){dijit.typematic.stop();}})];},addMouseListener:function(node,_219,_21a,_21b,_21c){var dc=dojo.connect;return [dc(node,"mousedown",this,function(evt){dojo.stopEvent(evt);dijit.typematic.trigger(evt,_219,node,_21a,node,_21b,_21c);}),dc(node,"mouseup",this,function(evt){dojo.stopEvent(evt);dijit.typematic.stop();}),dc(node,"mouseout",this,function(evt){dojo.stopEvent(evt);dijit.typematic.stop();}),dc(node,"mousemove",this,function(evt){dojo.stopEvent(evt);}),dc(node,"dblclick",this,function(evt){dojo.stopEvent(evt);if(dojo.isIE){dijit.typematic.trigger(evt,_219,node,_21a,node,_21b,_21c);setTimeout(dojo.hitch(this,dijit.typematic.stop),50);}})];},addListener:function(_223,_224,_225,_226,_227,_228,_229){return this.addKeyListener(_224,_225,_226,_227,_228,_229).concat(this.addMouseListener(_223,_226,_227,_228,_229));}};}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 _22c=cs.backgroundImage;var _22d=(cs.borderTopColor==cs.borderRightColor)||(_22c!=null&&(_22c=="none"||_22c=="url(invalid-url:)"));dojo[_22d?"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 _230=this.getWaiRole(elem);return role?(_230.indexOf(role)>-1):(_230.length>0);},getWaiRole:function(elem){return dojo.trim((dojo.attr(elem,"role")||"").replace(this._XhtmlRoles,"").replace("wairole:",""));},setWaiRole:function(elem,role){var _234=dojo.attr(elem,"role")||"";if(dojo.isFF<3||!this._XhtmlRoles.test(_234)){dojo.attr(elem,"role",dojo.isFF<3?"wairole:"+role:role);}else{if((" "+_234+" ").indexOf(" "+role+" ")<0){var _235=dojo.trim(_234.replace(this._XhtmlRoles,""));var _236=dojo.trim(_234.replace(_235,""));dojo.attr(elem,"role",_236+(_236?" ":"")+role);}}},removeWaiRole:function(elem,role){var _239=dojo.attr(elem,"role");if(!_239){return;}if(role){var _23a=dojo.isFF<3?"wairole:"+role:role;var t=dojo.trim((" "+_239+" ").replace(" "+_23a+" "," "));dojo.attr(elem,"role",t);}else{elem.removeAttribute("role");}},hasWaiState:function(elem,_23d){if(dojo.isFF<3){return elem.hasAttributeNS("http://www.w3.org/2005/07/aaa",_23d);}return elem.hasAttribute?elem.hasAttribute("aria-"+_23d):!!elem.getAttribute("aria-"+_23d);},getWaiState:function(elem,_23f){if(dojo.isFF<3){return elem.getAttributeNS("http://www.w3.org/2005/07/aaa",_23f);}return elem.getAttribute("aria-"+_23f)||"";},setWaiState:function(elem,_241,_242){if(dojo.isFF<3){elem.setAttributeNS("http://www.w3.org/2005/07/aaa","aaa:"+_241,_242);}else{elem.setAttribute("aria-"+_241,_242);}},removeWaiState:function(elem,_244){if(dojo.isFF<3){elem.removeAttributeNS("http://www.w3.org/2005/07/aaa",_244);}else{elem.removeAttribute("aria-"+_244);}}});}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(_245,_246){if(_245&&dojo.isFunction(_245._onConnect)){_245._onConnect(_246);}});dijit._connectOnUseEventHandler=function(_247){};(function(){var _248={};var _249=function(dc){if(!_248[dc]){var r=[];var _24c;var _24d=dojo.getObject(dc).prototype;for(var _24e in _24d){if(dojo.isFunction(_24d[_24e])&&(_24c=_24e.match(/^_set([a-zA-Z]*)Attr$/))&&_24c[1]){r.push(_24c[1].charAt(0).toLowerCase()+_24c[1].substr(1));}}_248[dc]=r;}return _248[dc]||[];};dojo.declare("dijit._Widget",null,{id:"",lang:"",dir:"","class":"",style:"",title:"",srcNodeRef:null,domNode:null,containerNode:null,attributeMap:{id:"",dir:"",lang:"","class":"",style:"",title:""},_deferredConnects:{onClick:"",onDblClick:"",onKeyDown:"",onKeyPress:"",onKeyUp:"",onMouseMove:"",onMouseDown:"",onMouseOut:"",onMouseOver:"",onMouseLeave:"",onMouseEnter:"",onMouseUp:""},onClick:dijit._connectOnUseEventHandler,onDblClick:dijit._connectOnUseEventHandler,onKeyDown:dijit._connectOnUseEventHandler,onKeyPress:dijit._connectOnUseEventHandler,onKeyUp:dijit._connectOnUseEventHandler,onMouseDown:dijit._connectOnUseEventHandler,onMouseMove:dijit._connectOnUseEventHandler,onMouseOut:dijit._connectOnUseEventHandler,onMouseOver:dijit._connectOnUseEventHandler,onMouseLeave:dijit._connectOnUseEventHandler,onMouseEnter:dijit._connectOnUseEventHandler,onMouseUp:dijit._connectOnUseEventHandler,_blankGif:(dojo.config.blankGif||dojo.moduleUrl("dojo","resources/blank.gif")),postscript:function(_24f,_250){this.create(_24f,_250);},create:function(_251,_252){this.srcNodeRef=dojo.byId(_252);this._connects=[];this._deferredConnects=dojo.clone(this._deferredConnects);for(var attr in this.attributeMap){delete this._deferredConnects[attr];}for(attr in this._deferredConnects){if(this[attr]!==dijit._connectOnUseEventHandler){delete this._deferredConnects[attr];}}if(this.srcNodeRef&&(typeof this.srcNodeRef.id=="string")){this.id=this.srcNodeRef.id;}if(_251){this.params=_251;dojo.mixin(this,_251);}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 _254=this.srcNodeRef;if(_254&&_254.parentNode){_254.parentNode.replaceChild(this.domNode,_254);}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 _255=function(attr,_257){if((_257.params&&attr in _257.params)||_257[attr]){_257.attr(attr,_257[attr]);}};for(var attr in this.attributeMap){_255(attr,this);}dojo.forEach(_249(this.declaredClass),function(a){if(!(a in this.attributeMap)){_255(a,this);}},this);},postMixInProperties:function(){},buildRendering:function(){this.domNode=this.srcNodeRef||dojo.create("div");},postCreate:function(){},startup:function(){this._started=true;},destroyRecursive:function(_25a){this.destroyDescendants(_25a);this.destroy(_25a);},destroy:function(_25b){this.uninitialize();dojo.forEach(this._connects,function(_25c){dojo.forEach(_25c,dojo.disconnect);});dojo.forEach(this._supportingWidgets||[],function(w){if(w.destroy){w.destroy();}});this.destroyRendering(_25b);dijit.registry.remove(this.id);},destroyRendering:function(_25e){if(this.bgIframe){this.bgIframe.destroy(_25e);delete this.bgIframe;}if(this.domNode){if(_25e){dojo.removeAttr(this.domNode,"widgetId");}else{dojo.destroy(this.domNode);}delete this.domNode;}if(this.srcNodeRef){if(!_25e){dojo.destroy(this.srcNodeRef);}delete this.srcNodeRef;}},destroyDescendants:function(_25f){dojo.forEach(this.getChildren(),function(_260){if(_260.destroyRecursive){_260.destroyRecursive(_25f);}});},uninitialize:function(){return false;},onFocus:function(){},onBlur:function(){},_onFocus:function(e){this.onFocus();},_onBlur:function(){this.onBlur();},_onConnect:function(_262){if(_262 in this._deferredConnects){var _263=this[this._deferredConnects[_262]||"domNode"];this.connect(_263,_262.toLowerCase(),_262);delete this._deferredConnects[_262];}},_setClassAttr:function(_264){var _265=this[this.attributeMap["class"]||"domNode"];dojo.removeClass(_265,this["class"]);this["class"]=_264;dojo.addClass(_265,_264);},_setStyleAttr:function(_266){var _267=this[this.attributeMap["style"]||"domNode"];if(dojo.isObject(_266)){dojo.style(_267,_266);}else{if(_267.style.cssText){_267.style.cssText+="; "+_266;}else{_267.style.cssText=_266;}}this["style"]=_266;},setAttribute:function(attr,_269){dojo.deprecated(this.declaredClass+"::setAttribute() is deprecated. Use attr() instead.","","2.0");this.attr(attr,_269);},_attrToDom:function(attr,_26b){var _26c=this.attributeMap[attr];dojo.forEach(dojo.isArray(_26c)?_26c:[_26c],function(_26d){var _26e=this[_26d.node||_26d||"domNode"];var type=_26d.type||"attribute";switch(type){case "attribute":if(dojo.isFunction(_26b)){_26b=dojo.hitch(this,_26b);}if(/^on[A-Z][a-zA-Z]*$/.test(attr)){attr=attr.toLowerCase();}dojo.attr(_26e,attr,_26b);break;case "innerHTML":_26e.innerHTML=_26b;break;case "class":dojo.removeClass(_26e,this[attr]);dojo.addClass(_26e,_26b);break;}},this);this[attr]=_26b;},attr:function(name,_271){var args=arguments.length;if(args==1&&!dojo.isString(name)){for(var x in name){this.attr(x,name[x]);}return this;}var _274=this._getAttrNames(name);if(args==2){if(this[_274.s]){return this[_274.s](_271)||this;}else{if(name in this.attributeMap){this._attrToDom(name,_271);}this[name]=_271;}return this;}else{if(this[_274.g]){return this[_274.g]();}else{return this[name];}}},_attrPairNames:{},_getAttrNames:function(name){var apn=this._attrPairNames;if(apn[name]){return apn[name];}var uc=name.charAt(0).toUpperCase()+name.substr(1);return apn[name]={n:name+"Node",s:"_set"+uc+"Attr",g:"_get"+uc+"Attr"};},toString:function(){return "[Widget "+this.declaredClass+", "+(this.id||"NO ID")+"]";},getDescendants:function(){if(this.containerNode){var list=dojo.query("[widgetId]",this.containerNode);return list.map(dijit.byNode);}else{return [];}},getChildren:function(){if(this.containerNode){return dijit.findWidgets(this.containerNode);}else{return [];}},nodesWithKeyClick:["input","button"],connect:function(obj,_27a,_27b){var d=dojo;var dc=dojo.connect;var _27e=[];if(_27a=="ondijitclick"){if(!this.nodesWithKeyClick[obj.nodeName]){var m=d.hitch(this,_27b);_27e.push(dc(obj,"onkeydown",this,function(e){if(!d.isFF&&e.keyCode==d.keys.ENTER&&!e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey){return m(e);}else{if(e.keyCode==d.keys.SPACE){d.stopEvent(e);}}}),dc(obj,"onkeyup",this,function(e){if(e.keyCode==d.keys.SPACE&&!e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey){return m(e);}}));if(d.isFF){_27e.push(dc(obj,"onkeypress",this,function(e){if(e.keyCode==d.keys.ENTER&&!e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey){return m(e);}}));}}_27a="onclick";}_27e.push(dc(obj,_27a,this,_27b));this._connects.push(_27e);return _27e;},disconnect:function(_283){for(var i=0;i<this._connects.length;i++){if(this._connects[i]==_283){dojo.forEach(_283,dojo.disconnect);this._connects.splice(i,1);return;}}},isLeftToRight:function(){return dojo._isBodyLtr();},isFocusable:function(){return this.focus&&(dojo.style(this.domNode,"display")!="none");},placeAt:function(_285,_286){if(_285["declaredClass"]&&_285["addChild"]){_285.addChild(this,_286);}else{dojo.place(this.domNode,_285,_286);}return this;}});})();}if(!dojo._hasResource["dojo.date.stamp"]){dojo._hasResource["dojo.date.stamp"]=true;dojo.provide("dojo.date.stamp");dojo.date.stamp.fromISOString=function(_287,_288){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 _289=dojo.date.stamp._isoRegExp.exec(_287);var _28a=null;if(_289){_289.shift();if(_289[1]){_289[1]--;}if(_289[6]){_289[6]*=1000;}if(_288){_288=new Date(_288);dojo.map(["FullYear","Month","Date","Hours","Minutes","Seconds","Milliseconds"],function(prop){return _288["get"+prop]();}).forEach(function(_28c,_28d){if(_289[_28d]===undefined){_289[_28d]=_28c;}});}_28a=new Date(_289[0]||1970,_289[1]||0,_289[2]||1,_289[3]||0,_289[4]||0,_289[5]||0,_289[6]||0);var _28e=0;var _28f=_289[7]&&_289[7].charAt(0);if(_28f!="Z"){_28e=((_289[8]||0)*60)+(Number(_289[9])||0);if(_28f!="-"){_28e*=-1;}}if(_28f){_28e-=_28a.getTimezoneOffset();}if(_28e){_28a.setTime(_28a.getTime()+_28e*60000);}}return _28a;};dojo.date.stamp.toISOString=function(_290,_291){var _=function(n){return (n<10)?"0"+n:n;};_291=_291||{};var _294=[];var _295=_291.zulu?"getUTC":"get";var date="";if(_291.selector!="time"){var year=_290[_295+"FullYear"]();date=["0000".substr((year+"").length)+year,_(_290[_295+"Month"]()+1),_(_290[_295+"Date"]())].join("-");}_294.push(date);if(_291.selector!="date"){var time=[_(_290[_295+"Hours"]()),_(_290[_295+"Minutes"]()),_(_290[_295+"Seconds"]())].join(":");var _299=_290[_295+"Milliseconds"]();if(_291.milliseconds){time+="."+(_299<100?"0":"")+_(_299);}if(_291.zulu){time+="Z";}else{if(_291.selector!="time"){var _29a=_290.getTimezoneOffset();var _29b=Math.abs(_29a);time+=(_29a>0?"-":"+")+_(Math.floor(_29b/60))+":"+_(_29b%60);}}_294.push(time);}return _294.join("T");};}if(!dojo._hasResource["dojo.parser"]){dojo._hasResource["dojo.parser"]=true;dojo.provide("dojo.parser");dojo.parser=new function(){var d=dojo;var _29d=d._scopeName+"Type";var qry="["+_29d+"]";var _29f=0,_2a0={};var _2a1=function(_2a2,_2a3){var nso=_2a3||_2a0;if(dojo.isIE){var cn=_2a2["__dojoNameCache"];if(cn&&nso[cn]===_2a2){return cn;}}var name;do{name="__"+_29f++;}while(name in nso);nso[name]=_2a2;return name;};function _2a7(_2a8){if(d.isString(_2a8)){return "string";}if(typeof _2a8=="number"){return "number";}if(typeof _2a8=="boolean"){return "boolean";}if(d.isFunction(_2a8)){return "function";}if(d.isArray(_2a8)){return "array";}if(_2a8 instanceof Date){return "date";}if(_2a8 instanceof d._Url){return "url";}return "object";};function _2a9(_2aa,type){switch(type){case "string":return _2aa;case "number":return _2aa.length?Number(_2aa):NaN;case "boolean":return typeof _2aa=="boolean"?_2aa:!(_2aa.toLowerCase()=="false");case "function":if(d.isFunction(_2aa)){_2aa=_2aa.toString();_2aa=d.trim(_2aa.substring(_2aa.indexOf("{")+1,_2aa.length-1));}try{if(_2aa.search(/[^\w\.]+/i)!=-1){_2aa=_2a1(new Function(_2aa),this);}return d.getObject(_2aa,false);}catch(e){return new Function();}case "array":return _2aa?_2aa.split(/\s*,\s*/):[];case "date":switch(_2aa){case "":return new Date("");case "now":return new Date();default:return d.date.stamp.fromISOString(_2aa);}case "url":return d.baseUrl+_2aa;default:return d.fromJson(_2aa);}};var _2ac={};function _2ad(_2ae){if(!_2ac[_2ae]){var cls=d.getObject(_2ae);if(!d.isFunction(cls)){throw new Error("Could not load class '"+_2ae+"'. Did you spell the name correctly and use a full path, like 'dijit.form.Button'?");}var _2b0=cls.prototype;var _2b1={},_2b2={};for(var name in _2b0){if(name.charAt(0)=="_"){continue;}if(name in _2b2){continue;}var _2b4=_2b0[name];_2b1[name]=_2a7(_2b4);}_2ac[_2ae]={cls:cls,params:_2b1};}return _2ac[_2ae];};this._functionFromScript=function(_2b5){var _2b6="";var _2b7="";var _2b8=_2b5.getAttribute("args");if(_2b8){d.forEach(_2b8.split(/\s*,\s*/),function(part,idx){_2b6+="var "+part+" = arguments["+idx+"]; ";});}var _2bb=_2b5.getAttribute("with");if(_2bb&&_2bb.length){d.forEach(_2bb.split(/\s*,\s*/),function(part){_2b6+="with("+part+"){";_2b7+="}";});}return new Function(_2b6+_2b5.innerHTML+_2b7);};this.instantiate=function(_2bd,_2be){var _2bf=[];_2be=_2be||{};d.forEach(_2bd,function(node){if(!node){return;}var type=_29d in _2be?_2be[_29d]:node.getAttribute(_29d);if(!type||!type.length){return;}var _2c2=_2ad(type),_2c3=_2c2.cls,ps=_2c3._noScript||_2c3.prototype._noScript;var _2c5={},_2c6=node.attributes;for(var name in _2c2.params){var item=name in _2be?{value:_2be[name],specified:true}:_2c6.getNamedItem(name);if(!item||(!item.specified&&(!dojo.isIE||name.toLowerCase()!="value"))){continue;}var _2c9=item.value;switch(name){case "class":_2c9="className" in _2be?_2be.className:node.className;break;case "style":_2c9="style" in _2be?_2be.style:(node.style&&node.style.cssText);}var _2ca=_2c2.params[name];if(typeof _2c9=="string"){_2c5[name]=_2a9(_2c9,_2ca);}else{_2c5[name]=_2c9;}}if(!ps){var _2cb=[],_2cc=[];d.query("> script[type^='dojo/']",node).orphan().forEach(function(_2cd){var _2ce=_2cd.getAttribute("event"),type=_2cd.getAttribute("type"),nf=d.parser._functionFromScript(_2cd);if(_2ce){if(type=="dojo/connect"){_2cb.push({event:_2ce,func:nf});}else{_2c5[_2ce]=nf;}}else{_2cc.push(nf);}});}var _2d0=_2c3["markupFactory"];if(!_2d0&&_2c3["prototype"]){_2d0=_2c3.prototype["markupFactory"];}var _2d1=_2d0?_2d0(_2c5,node,_2c3):new _2c3(_2c5,node);_2bf.push(_2d1);var _2d2=node.getAttribute("jsId");if(_2d2){d.setObject(_2d2,_2d1);}if(!ps){d.forEach(_2cb,function(_2d3){d.connect(_2d1,_2d3.event,null,_2d3.func);});d.forEach(_2cc,function(func){func.call(_2d1);});}});d.forEach(_2bf,function(_2d5){if(_2d5&&_2d5.startup&&!_2d5._started&&(!_2d5.getParent||!_2d5.getParent())){_2d5.startup();}});return _2bf;};this.parse=function(_2d6){var list=d.query(qry,_2d6);var _2d8=this.instantiate(list);return _2d8;};}();(function(){var _2d9=function(){if(dojo.config["parseOnLoad"]==true){dojo.parser.parse();}};if(dojo.exists("dijit.wai.onload")&&(dijit.wai.onload===dojo._loaders[0])){dojo._loaders.splice(1,0,_2d9);}else{dojo._loaders.unshift(_2d9);}})();}if(!dojo._hasResource["dijit._Templated"]){dojo._hasResource["dijit._Templated"]=true;dojo.provide("dijit._Templated");dojo.declare("dijit._Templated",null,{templateString:null,templatePath:null,widgetsInTemplate:false,_skipNodeCache:false,_stringRepl:function(tmpl){var _2db=this.declaredClass,_2dc=this;return dojo.string.substitute(tmpl,this,function(_2dd,key){if(key.charAt(0)=="!"){_2dd=dojo.getObject(key.substr(1),false,_2dc);}if(typeof _2dd=="undefined"){throw new Error(_2db+" template:"+key);}if(_2dd==null){return "";}return key.charAt(0)=="!"?_2dd:_2dd.toString().replace(/"/g,"&quot;");},this);},buildRendering:function(){var _2df=dijit._Templated.getCachedTemplate(this.templatePath,this.templateString,this._skipNodeCache);var node;if(dojo.isString(_2df)){node=dojo._toDom(this._stringRepl(_2df));}else{node=_2df.cloneNode(true);}this.domNode=node;this._attachTemplateNodes(node);if(this.widgetsInTemplate){var cw=(this._supportingWidgets=dojo.parser.parse(node));this._attachTemplateNodes(cw,function(n,p){return n[p];});}this._fillContent(this.srcNodeRef);},_fillContent:function(_2e4){var dest=this.containerNode;if(_2e4&&dest){while(_2e4.hasChildNodes()){dest.appendChild(_2e4.firstChild);}}},_attachTemplateNodes:function(_2e6,_2e7){_2e7=_2e7||function(n,p){return n.getAttribute(p);};var _2ea=dojo.isArray(_2e6)?_2e6:(_2e6.all||_2e6.getElementsByTagName("*"));var x=dojo.isArray(_2e6)?0:-1;for(;x<_2ea.length;x++){var _2ec=(x==-1)?_2e6:_2ea[x];if(this.widgetsInTemplate&&_2e7(_2ec,"dojoType")){continue;}var _2ed=_2e7(_2ec,"dojoAttachPoint");if(_2ed){var _2ee,_2ef=_2ed.split(/\s*,\s*/);while((_2ee=_2ef.shift())){if(dojo.isArray(this[_2ee])){this[_2ee].push(_2ec);}else{this[_2ee]=_2ec;}}}var _2f0=_2e7(_2ec,"dojoAttachEvent");if(_2f0){var _2f1,_2f2=_2f0.split(/\s*,\s*/);var trim=dojo.trim;while((_2f1=_2f2.shift())){if(_2f1){var _2f4=null;if(_2f1.indexOf(":")!=-1){var _2f5=_2f1.split(":");_2f1=trim(_2f5[0]);_2f4=trim(_2f5[1]);}else{_2f1=trim(_2f1);}if(!_2f4){_2f4=_2f1;}this.connect(_2ec,_2f1,_2f4);}}}var role=_2e7(_2ec,"waiRole");if(role){dijit.setWaiRole(_2ec,role);}var _2f7=_2e7(_2ec,"waiState");if(_2f7){dojo.forEach(_2f7.split(/\s*,\s*/),function(_2f8){if(_2f8.indexOf("-")!=-1){var pair=_2f8.split("-");dijit.setWaiState(_2ec,pair[0],pair[1]);}});}}}});dijit._Templated._templateCache={};dijit._Templated.getCachedTemplate=function(_2fa,_2fb,_2fc){var _2fd=dijit._Templated._templateCache;var key=_2fb||_2fa;var _2ff=_2fd[key];if(_2ff){if(!_2ff.ownerDocument||_2ff.ownerDocument==dojo.doc){return _2ff;}dojo.destroy(_2ff);}if(!_2fb){_2fb=dijit._Templated._sanitizeTemplateString(dojo.trim(dojo._getText(_2fa)));}_2fb=dojo.string.trim(_2fb);if(_2fc||_2fb.match(/\$\{([^\}]+)\}/g)){return (_2fd[key]=_2fb);}else{return (_2fd[key]=dojo._toDom(_2fb));}};dijit._Templated._sanitizeTemplateString=function(_300){if(_300){_300=_300.replace(/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,"");var _301=_300.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im);if(_301){_300=_301[1];}}else{_300="";}return _300;};if(dojo.isIE){dojo.addOnWindowUnload(function(){var _302=dijit._Templated._templateCache;for(var key in _302){var _304=_302[key];if(!isNaN(_304.nodeType)){dojo.destroy(_304);}delete _302[key];}});}dojo.extend(dijit._Widget,{dojoAttachEvent:"",dojoAttachPoint:"",waiRole:"",waiState:""});}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(_305,_306){var _307=this.containerNode;if(_306&&typeof _306=="number"){var _308=this.getChildren();if(_308&&_308.length>=_306){_307=_308[_306-1].domNode;_306="after";}}dojo.place(_305.domNode,_307,_306);if(this._started&&!_305._started){_305.startup();}},removeChild:function(_309){if(typeof _309=="number"&&_309>0){_309=this.getChildren()[_309];}if(!_309||!_309.domNode){return;}var node=_309.domNode;node.parentNode.removeChild(node);},_nextElement:function(node){do{node=node.nextSibling;}while(node&&node.nodeType!=1);return node;},_firstElement:function(node){node=node.firstChild;if(node&&node.nodeType!=1){node=this._nextElement(node);}return node;},getChildren:function(){return dojo.query("> [widgetId]",this.containerNode).map(dijit.byNode);},hasChildren:function(){return !!this._firstElement(this.containerNode);},destroyDescendants:function(_30d){dojo.forEach(this.getChildren(),function(_30e){_30e.destroyRecursive(_30d);});},_getSiblingOfChild:function(_30f,dir){var node=_30f.domNode;var _312=(dir>0?"nextSibling":"previousSibling");do{node=node[_312];}while(node&&(node.nodeType!=1||!dijit.byNode(node)));return node?dijit.byNode(node):null;},getIndexOfChild:function(_313){var _314=this.getChildren();for(var i=0,c;c=_314[i];i++){if(c==_313){return i;}}return -1;}});}if(!dojo._hasResource["topaz.utils.datefunctions"]){dojo._hasResource["topaz.utils.datefunctions"]=true;dojo.provide("topaz.utils.datefunctions");var MONTH_NAMES=new Array("January","February","March","April","May","June","July","August","September","October","November","December","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");var DAY_NAMES=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sun","Mon","Tue","Wed","Thu","Fri","Sat");function LZ(x){return (x<0||x>9?"":"0")+x;};function isDate(val,_319){var date=getDateFromFormat(val,_319);if(date==0){return false;}return true;};function compareDates(_31b,_31c,_31d,_31e){var d1=getDateFromFormat(_31b,_31c);var d2=getDateFromFormat(_31d,_31e);if(d1==0||d2==0){return -1;}else{if(d1>d2){return 1;}}return 0;};function formatDate(date,_322){_322=_322+"";var _323="";var _324=0;var c="";var _326="";var y=date.getYear()+"";var M=date.getMonth()+1;var d=date.getDate();var E=date.getDay();var H=date.getHours();var m=date.getMinutes();var s=date.getSeconds();var yyyy,yy,MMM,MM,dd,hh,h,mm,ss,ampm,HH,H,KK,K,kk,k;var _33d=new Object();if(y.length<4){y=""+(y-0+1900);}_33d["y"]=""+y;_33d["yyyy"]=y;_33d["yy"]=y.substring(2,4);_33d["M"]=M;_33d["MM"]=LZ(M);_33d["MMM"]=MONTH_NAMES[M-1];_33d["NNN"]=MONTH_NAMES[M+11];_33d["d"]=d;_33d["dd"]=LZ(d);_33d["E"]=DAY_NAMES[E+7];_33d["EE"]=DAY_NAMES[E];_33d["H"]=H;_33d["HH"]=LZ(H);if(H==0){_33d["h"]=12;}else{if(H>12){_33d["h"]=H-12;}else{_33d["h"]=H;}}_33d["hh"]=LZ(_33d["h"]);if(H>11){_33d["K"]=H-12;}else{_33d["K"]=H;}_33d["k"]=H+1;_33d["KK"]=LZ(_33d["K"]);_33d["kk"]=LZ(_33d["k"]);if(H>11){_33d["a"]="PM";}else{_33d["a"]="AM";}_33d["m"]=m;_33d["mm"]=LZ(m);_33d["s"]=s;_33d["ss"]=LZ(s);while(_324<_322.length){c=_322.charAt(_324);_326="";while((_322.charAt(_324)==c)&&(_324<_322.length)){_326+=_322.charAt(_324++);}if(_33d[_326]!=null){_323=_323+_33d[_326];}else{_323=_323+_326;}}return _323;};function _isInteger(val){var _33f="1234567890";for(var i=0;i<val.length;i++){if(_33f.indexOf(val.charAt(i))==-1){return false;}}return true;};function _getInt(str,i,_343,_344){for(var x=_344;x>=_343;x--){var _346=str.substring(i,i+x);if(_346.length<_343){return null;}if(_isInteger(_346)){return _346;}}return null;};function getDateFromFormat(val,_348){val=val+"";_348=_348+"";var _349=0;var _34a=0;var c="";var _34c="";var _34d="";var x,y;var now=new Date();var year=now.getYear();var _352=now.getMonth()+1;var date=1;var hh=now.getHours();var mm=now.getMinutes();var ss=now.getSeconds();var ampm="";while(_34a<_348.length){c=_348.charAt(_34a);_34c="";while((_348.charAt(_34a)==c)&&(_34a<_348.length)){_34c+=_348.charAt(_34a++);}if(_34c=="yyyy"||_34c=="yy"||_34c=="y"){if(_34c=="yyyy"){x=4;y=4;}if(_34c=="yy"){x=2;y=2;}if(_34c=="y"){x=2;y=4;}year=_getInt(val,_349,x,y);if(year==null){return 0;}_349+=year.length;if(year.length==2){if(year>70){year=1900+(year-0);}else{year=2000+(year-0);}}}else{if(_34c=="MMM"||_34c=="NNN"){_352=0;for(var i=0;i<MONTH_NAMES.length;i++){var _359=MONTH_NAMES[i];if(val.substring(_349,_349+_359.length).toLowerCase()==_359.toLowerCase()){if(_34c=="MMM"||(_34c=="NNN"&&i>11)){_352=i+1;if(_352>12){_352-=12;}_349+=_359.length;break;}}}if((_352<1)||(_352>12)){return 0;}}else{if(_34c=="EE"||_34c=="E"){for(var i=0;i<DAY_NAMES.length;i++){var _35a=DAY_NAMES[i];if(val.substring(_349,_349+_35a.length).toLowerCase()==_35a.toLowerCase()){_349+=_35a.length;break;}}}else{if(_34c=="MM"||_34c=="M"){_352=_getInt(val,_349,_34c.length,2);if(_352==null||(_352<1)||(_352>12)){return 0;}_349+=_352.length;}else{if(_34c=="dd"||_34c=="d"){date=_getInt(val,_349,_34c.length,2);if(date==null||(date<1)||(date>31)){return 0;}_349+=date.length;}else{if(_34c=="hh"||_34c=="h"){hh=_getInt(val,_349,_34c.length,2);if(hh==null||(hh<1)||(hh>12)){return 0;}_349+=hh.length;}else{if(_34c=="HH"||_34c=="H"){hh=_getInt(val,_349,_34c.length,2);if(hh==null||(hh<0)||(hh>23)){return 0;}_349+=hh.length;}else{if(_34c=="KK"||_34c=="K"){hh=_getInt(val,_349,_34c.length,2);if(hh==null||(hh<0)||(hh>11)){return 0;}_349+=hh.length;}else{if(_34c=="kk"||_34c=="k"){hh=_getInt(val,_349,_34c.length,2);if(hh==null||(hh<1)||(hh>24)){return 0;}_349+=hh.length;hh--;}else{if(_34c=="mm"||_34c=="m"){mm=_getInt(val,_349,_34c.length,2);if(mm==null||(mm<0)||(mm>59)){return 0;}_349+=mm.length;}else{if(_34c=="ss"||_34c=="s"){ss=_getInt(val,_349,_34c.length,2);if(ss==null||(ss<0)||(ss>59)){return 0;}_349+=ss.length;}else{if(_34c=="a"){if(val.substring(_349,_349+2).toLowerCase()=="am"){ampm="AM";}else{if(val.substring(_349,_349+2).toLowerCase()=="pm"){ampm="PM";}else{return 0;}}_349+=2;}else{if(val.substring(_349,_349+_34c.length)!=_34c){return 0;}else{_349+=_34c.length;}}}}}}}}}}}}}}if(_349!=val.length){return 0;}if(_352==2){if(((year%4==0)&&(year%100!=0))||(year%400==0)){if(date>29){return 0;}}else{if(date>28){return 0;}}}if((_352==4)||(_352==6)||(_352==9)||(_352==11)){if(date>30){return 0;}}if(hh<12&&ampm=="PM"){hh=hh-0+12;}else{if(hh>11&&ampm=="AM"){hh-=12;}}var _35b=new Date(year,_352-1,date,hh,mm,ss);return _35b.getTime();};function parseDate(val){var _35d=(arguments.length==2)?arguments[1]:false;generalFormats=new Array("y-M-d","MMM d, y","MMM d,y","y-MMM-d","d-MMM-y","MMM d");monthFirst=new Array("M/d/y","M-d-y","M.d.y","MMM-d","M/d","M-d");dateFirst=new Array("d/M/y","d-M-y","d.M.y","d-MMM","d/M","d-M");var _35e=new Array("generalFormats",_35d?"dateFirst":"monthFirst",_35d?"monthFirst":"dateFirst");var d=null;for(var i=0;i<_35e.length;i++){var l=window[_35e[i]];for(var j=0;j<l.length;j++){d=getDateFromFormat(val,l[j]);if(d!=0){return new Date(d);}}}return null;};}if(!dojo._hasResource["topaz.utils.bahelper"]){dojo._hasResource["topaz.utils.bahelper"]=true;dojo.provide("topaz.utils.bahelper");dojo.declare("BAHelper",null,{included_files:[],browserSupported:function(){var _363=false;if(dojo.isIE>=7||dojo.isFF>=2||dojo.isSafari>=3||dojo.isChrome>=1){_363=true;}return _363;},disableEnterKey:function(e){try{console.debug("BAHelper.disableEnterKey");var key;if(window.event){key=window.event.keyCode;}else{key=e.which;}if(key==13){return false;}else{return true;}}catch(err){console.debug("bahelper.disableEnterKey-error: "+err.message);}},scrollYTo:function(_366,_367,_368){try{var _369=dojo._docScroll();var dir;if(_369.y>_366){dir=-1;}else{dir=1;}if(Math.abs(_369.y-_366)>=_367){window.scrollBy(0,_367*dir);this.scrollYTo(_366,_367,_368);}else{window.scrollBy(0,_367*dir);}}catch(err){console.debug("baHelper.scrollYTo-error: "+err.message);}},purgeDomElement:function(d){var a=d.attributes,i,l,n;if(a){l=a.length;for(i=0;i<l;i+=1){n=a[i].name;if(typeof d[n]==="function"){d[n]=null;}}}a=d.childNodes;if(a){l=a.length;for(i=0;i<l;i+=1){purge(d.childNodes[i]);}}},getAncestorWithThisMethod:function(_370,_371){var _372=_370.parentNode;try{eval("dijit.byId('"+_372.id+"')."+_371+"();");return _372;}catch(err){if(_372!=null){return this.getAncestorWithThisMethod(_372,_371);}else{return null;}}},showCalendarInContextOfRoom:function(_373,_374,_375){try{var X=dijit.byId(_373);if(!_375){_375="Selected room";}var Y=dijit.byId(_373+"_selectedStayDates");Y.setRoomId(_374);Y.setAvailDayLegendDescr(_375+" available");Y.setOtherAvailLegendDescr("Other rooms available");Y.showOtherRoomsLegend();Y.openPopInWindow();Y.redrawCalendars();}catch(err){console.debug("bahelper.showCalendarInContextOfRoom-error: "+err.message);}},showCalendarInContextOfHotel:function(_378,_379,_37a){var X=dijit.byId(_378);if(!_37a){_37a="Selected hotel";}var Y=dijit.byId(_378+"_selectedStayDates");Y.setHotelId(_379);Y.setRoomId("");Y.setAvailDayLegendDescr(_37a+" available");Y.setOtherAvailLegendDescr("Other hotels available");Y.openPopInWindow();Y.redrawCalendars();},dojoFxSizeTo:function(args){try{var node=(args.node=dojo.byId(args.node));var _37f=dojo.getComputedStyle;var _380=args.method||"chain";if(_380=="chain"){args.duration=(args.duration/2);}var top,_382,left,_384,_385,_386=null;var init=(function(){var _388=node;return function(){var pos=_37f(_388).position;top=(pos=="absolute"?node.offsetTop:parseInt(_37f(node).top)||0);left=(pos=="absolute"?node.offsetLeft:parseInt(_37f(node).left)||0);_385=parseInt(dojo.style(node,"width"));_386=parseInt(dojo.style(node,"height"));if(args.aboutTopLeft){_384=left;_382=top;}else{if(args.aboutBottomRight){_384=args.left;_382=args.top;}else{_384=left-((args.width-_385)/2);_382=top-((args.height-_386)/2);}}if(pos!="absolute"&&pos!="relative"){var ret=dojo.coords(_388,true);top=ret.y;left=ret.x;_388.style.position="absolute";_388.style.top=top+"px";_388.style.left=left+"px";}};})();init();var _38b=dojo.animateProperty(dojo.mixin({properties:{height:{start:_386,end:args.height||0,unit:"px"},top:{start:top,end:_382}}},args));var _38c=dojo.animateProperty(dojo.mixin({properties:{width:{start:_385,end:args.width||0,unit:"px"},left:{start:left,end:_384}}},args));var anim=dojo.fx[((args.method=="combine")?"combine":"chain")]([_38b,_38c]);dojo.connect(anim,"beforeBegin",anim,init);return anim;}catch(err){console.debug("bahelper.dojoFxSizeTo-error: "+err.message);}},clearOptions:function(_38e){for(x=_38e.length;x>=0;x--){_38e[x]=null;}},AddToOptionList:function(_38f,_390,_391){_38f[_38f.length]=new Option(_391,_390);},getContainingWidgetObject:function(_392){return this.getAncestorWithThisMethod(_392,"returnWidgetType");},zIndexFix:function(){var _393=5000;dojo.query("DIV").forEach(function(node,_395,arr){dojo.style(node,"z-index",_393);_393-=10;});},ieSelectBugProof:function(_397){_397.innerHTML=(_397.innerHTML+"<iframe src=\"about:blank\" scrolling=\"no\" frameborder=\"0\" style=\"filter: progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0);\"></iframe>");var _398=_397.firstChild;_398.style.width=_397.offsetWidth+"px";_398.style.height=_397.offsetHeight+"px";_398.style.position="relative";_398.style.top=_397.top-_398.style.height;_398.style.zIndex="-1";},ArrayCopy:function(_399){var _39a=new Array();var i;for(i in _399){_39a[i]=_399[i];}return _39a;},trim:function(s){while(s.substring(0,1)==" "){s=s.substring(1,s.length);}while(s.substring(s.length-1,s.length)==" "){s=s.substring(0,s.length-1);}return s;},addLeadingZeros:function(_39d){return parseInt(_39d,10)<10?"0"+_39d:""+_39d;},Left:function(str,n){if(n<=0){return "";}else{if(n>String(str).length){return str;}else{return String(str).substring(0,n);}}},Right:function(str,n){if(n<=0){return "";}else{if(n>String(str).length){return str;}else{var iLen=String(str).length;return String(str).substring(iLen,iLen-n);}}},populateCCtexts:function(_3a3){var i;var _3a5;var _3a6=new Array();for(i=0;i<_3a3.length;i++){switch(_3a3[i]){case "AX":_3a5="American Express";break;case "MC":_3a5="Mastercard";break;case "VI":_3a5="Visa";break;case "DC":_3a5="Discover Card";break;case "DI":_3a5="Diners Club";break;case "JC":_3a5="Japan Credit Bureau";break;case "EN":_3a5="Enroute";break;case "CB":_3a5="Carte Blanche";break;case "EU":_3a5="Euro Card";break;case "ER":_3a5="Encore";break;case "pr":_3a5="Guest will Prepay";break;}_3a6[i]=_3a5;}return _3a6;},replaceSubstring:function(_3a7,from,to){var _3aa="";while(_3a7.length>=from.length&&_3a7.length>0&&from.length>0){if(_3a7.substring(0,from.length)==from){_3aa+=to;_3a7=_3a7.substring(from.length);}else{_3aa+=_3a7.substring(0,1);_3a7=_3a7.substring(1);}}return _3aa+_3a7;},extractday:function(_3ab){_3ab+="";return parseInt(_3ab.substring(3,5),10);},extractyear:function(_3ac){_3ac+="";return parseInt(_3ac.substring(6,10),10);},extractmonth:function(_3ad){_3ad+="";return parseInt(_3ad.substring(0,2),10);},_getmonthnumdays:function(_3ae,_3af){var _3b0=0;switch(_3ae){case 1:case 3:case 5:case 7:case 8:case 10:case 12:_3b0=31;break;case 2:if((_3af%4)==0){_3b0=29;}else{_3b0=28;}break;default:_3b0=30;break;}return _3b0;},dateAdd:function(_3b1,_3b2){var _3b3=parseInt(this.extractmonth(_3b1),10);var _3b4=parseInt(this.extractday(_3b1),10);var _3b5=parseInt(this.extractyear(_3b1),10);var _3b6=this._getmonthnumdays(_3b3,_3b5);_3b4+=parseInt(_3b2,10);if(_3b4>_3b6){_3b4=_3b4-_3b6;_3b3++;}if(_3b3>12){_3b3=1;_3b5++;}_3b3=_3b3<10?"0"+_3b3:""+_3b3;_3b4=_3b4<10?"0"+_3b4:""+_3b4;return _3b3+"/"+_3b4+"/"+_3b5;},dateDifference:function(_3b7,_3b8){var _3b9=_3b8;var ctr=0;while(ctr<700&&_3b9!=_3b7){_3b9=this.dateAdd(_3b9,"01");ctr++;}return ctr;},isCCExpOK_B3:function(_3bb){try{var _3bc=true;var y=parseInt(_3bb.elements["item[ccxpire_yr]"].value*1,10);var m=parseInt(_3bb.elements["item[ccxpire_mo]"].value*1,10);var b=document.forms.bang;var _3c0=2007;var _3c1=5;if((_3c0>y)||(_3c0==y&&_3c1>m)){alert("Select a credit card that expires after your arrival date");return false;}return true;}catch(errorObj){console.debug("bahelper.isCCExpOK_B3-error"+errorObj.message);}},checkRooms:function(ppl,_3c3){try{var _3c4=1;var _3c5=0;_3c4=ppl.selectedIndex+1;_3c5=_3c3.selectedIndex;if(_3c5>=_3c4){alert("Rooms must have at least one adult.");return false;}return true;}catch(errorObj){return true;}},checkCreditCard_B3:function(_3c6,_3c7,_3c8){try{var f=document.reservationForm;var _3ca=_3c6.options[_3c6.selectedIndex].value;if(_3ca=="VI"){var _3cb="VISA";}if(_3ca=="AX"){var _3cb="American Express";}if(_3ca=="DC"){var _3cb="Discover";}if(_3ca=="MC"){var _3cb="MasterCard";}var _3cc=stripCharsInBag(_3c7.value,creditCardDelimiters);if(_3ca=="pr"){if(f.elements["prepay"][0]!=undefined){for(a=0;a<f.elements["prepay"].length;a++){if((f.elements["prepay"][a].checked==true)&&(f.elements["prepay"][a].value=="C")){alert("Please provide a valid credit card type and number");return false;}}}return true;}if(!checkString(f.elements["item[ccholder]"],iccholder)){return false;}if(!isCardMatch(_3ca,_3cc)){return warnInvalid(_3c7,iCreditCardPrefix+_3cb+iCreditCardSuffix);}else{if(_3ca=="AX"){_3c7.value=_3cc.substring(0,4)+"-"+_3cc.substring(4,10)+"-"+_3cc.substring(10,15);}else{_3c7.value=_3cc.substring(0,4)+"-"+_3cc.substring(4,8)+"-"+_3cc.substring(8,12)+"-"+_3cc.substring(12,16);}return true;}}catch(errorObj){return true;}},ValidateForm_B3:function(_3cd){console.debug("In bahelper.ValidateForm_B3");try{if(checkString(_3cd.elements["item[fname]"],sfname)&&checkString(_3cd.elements["item[lname]"],slname)&&checkString(_3cd.elements["item[addr1]"],saddress1)&&checkString(_3cd.elements["item[addr2]"],saddress2,true)&&checkString(_3cd.elements["item[city]"],scity)&&checkString(_3cd.elements["item[zip]"],iZip)&&checkString(_3cd.elements["item[state]"],sstate,true)&&checkPhone(_3cd.elements["item[callphone]"])&&checkEmail(_3cd.elements["item[email]"])&&this.checkRooms(_3cd.elements["item[number_adults]"],_3cd.elements["item[number_children]"])&&this.checkCreditCard_B3(_3cd.elements["item[cctype]"],_3cd.elements["item[ccnumb]"],_3cd)&&(this.isCCExpOK_B3(_3cd))){return true;}else{return false;}}catch(errorObj){console.debug("bahelper.ValidateForm_B3-error: "+errorObj.message);return true;}},makeHidden:function(_3ce){document.getElementById(_3ce).style.visibility="hidden";},makeVisible:function(_3cf){document.getElementById(_3cf).style.visibility="visible";},getXMLobject:function(_3d0){var _3d1;if(document.implementation.createDocument){var _3d2=new DOMParser();_3d1=_3d2.parseFromString(_3d0,"text/xml");}else{if(window.ActiveXObject){_3d1=new ActiveXObject("Microsoft.XMLDOM");_3d1.async="false";_3d1.loadXML(_3d0);}}return _3d1;},getValuefromXML:function(_3d3,_3d4,_3d5){var _3d6;try{_3d6=_3d3.getElementsByTagName(_3d5)[_3d4].childNodes[0].nodeValue;return unescape(_3d6);}catch(e){return false;}},getIndexOfValuefromXML:function(_3d7,_3d8,_3d9){var _3da;try{var i=0;var _3dc=false;while(!_3dc&&i<_3d7.getElementsByTagName(_3d8).length){if(_3d9==_3d7.getElementsByTagName(_3d8)[i].childNodes[0].nodeValue){_3da=i;_3dc=true;}else{i++;}}return _3da;}catch(e){return 0;}},getAttrValueFromXML:function(_3dd,_3de,_3df){try{var root=_3dd.getElementsByTagName(_3de)[0];return root.getAttribute(_3df);}catch(err){console.debug("bahelper.getAttrValueFromXML-error: '"+err.message+"', rootName='"+_3de+"', attr='"+_3df+"'");return false;}},getCheckedValue:function(_3e1){if(!_3e1){return "";}var _3e2=_3e1.length;if(_3e2==undefined){if(_3e1.checked){return _3e1.value;}else{return "";}}for(var i=0;i<_3e2;i++){if(_3e1[i].checked){return _3e1[i].value;}}return "";},setCheckedValue:function(_3e4,_3e5){if(!_3e4){return;}var _3e6=_3e4.length;if(_3e6==undefined){if(_3e5.toString){_3e4.checked=(_3e4.value==_3e5.toString());}else{_3e4.checked=false;}return;}for(var i=0;i<_3e6;i++){_3e4[i].checked=false;if(_3e4[i].value==_3e5.toString()){_3e4[i].checked=true;}}},IsNumeric:function(_3e8){var _3e9="0123456789.";var _3ea=true;var Char;for(i=0;i<_3e8.length&&_3ea==true;i++){Char=_3e8.charAt(i);if(_3e9.indexOf(Char)==-1){_3ea=false;}}return _3ea;},getArrayAverage:function(_3ec){var sum=0;var _3ee=0;if(_3ec.length>=1){if(!this.IsNumeric(_3ec[0])){_3ec.shift();}}for(var i=0;i<_3ec.length;i++){sum+=parseFloat(_3ec[i]);if(_3ec[i]==false||_3ec[i]=="false"||!this.IsNumeric(_3ec[i])){_3ee++;}}var _3f0=_3ec.length-_3ee;if(_3f0>0){return parseFloat(sum/(_3ec.length-_3ee));}else{return 0;}},getCSVfromArray:function(_3f1){var _3f2="";for(var i=0;i<_3f1.length;i++){_3f2+=_3f1[i];if(i<_3f1.length-1){_3f2+=",";}}return _3f2;},getHTMLParameters:function(_3f4,_3f5){console.debug("bahelper.getHTMLParameters: pageLocation="+_3f5);_3f5=_3f5+"";var _3f6=_3f5.split("?",2);var url=_3f6[0];var _3f8;if(!(_3f4 instanceof Array)){_3f4=new Array();}var left,_3fa;if(_3f6.length>1){_3f8=_3f6[1].split("&");for(var i=0;i<_3f8.length;i++){var _3fc=_3f8[i].split("=",2);left=_3fc[0];_3fa=_3fc[1];_3f4[left]=_3fa;}}return _3f4;},include_dom:function(_3fd){var _3fe=document.getElementsByTagName("head").item(0);var js=document.createElement("script");js.setAttribute("language","javascript");js.setAttribute("type","text/javascript");js.setAttribute("src",_3fd);_3fe.appendChild(js);return false;},include_once:function(_400){if(!in_array(_400,this.included_files)){this.included_files[this.included_files.length]=_400;this.include_dom(_400);}},in_array:function(_401,_402){for(var i=0;i<_402.length;i++){if(_402[i]==_401){return true;}}return false;},getPrefix:function(_404,_405){_404=_404+"";var _406=_404.split(_405);return _406[0];},stripMarkup:function(_407,_408){try{if(!_408){_408="";}_407+="";var _409=_407.split("<");var str1,str2,str3;if(_409.length<2){return _408+_407;}else{str1=_407;str2=str1.split("<");var _40d="";var _40e="";for(var i=1;i<str2.length;i++){if(i!=1){_40d+="<";}_40d+=str2[i];}str3=_40d.split(">");_40d="";for(var i=1;i<str3.length;i++){if(i!=1){_40d+=">";}_40d+=str3[i];}return this.stripMarkup(_40d,_408+_40e+str2[0]);}}catch(err){console.debug("bahelper.stripMarkup-error: "+err.message);}},capitalizeString:function(word){return word.substring(0,1).toUpperCase()+word.substring(1);},escape:function(_411,_412){try{var _413="";var _414="";for(var i=0;i<_411.length;i++){_414=_411.substring(i,i+1);console.debug("bahelper.escape: thisChar="+_414+", = '"+_412+"'? "+(_414==_412));if(_414!=_412){_413+=escape(_414);}else{_413+=_414;}}return _413;}catch(err){console.debug("bahelper.escape-error: "+err.message);return _411;}},constructor:function(){this.included_files=new Array();}});try{baHelper=new BAHelper();}catch(err){console.debug("topaz/utils/bahelper.js error: "+err.message);}}if(!dojo._hasResource["topaz.data.DayData"]){dojo._hasResource["topaz.data.DayData"]=true;dojo.provide("topaz.data.DayData");dojo.declare("DayData",null,{month:0,day:0,year:0,daysTilCutoff:0,numberAvailable:0,canBookOnline:0,averageRate:0,lowRate:0,highRate:0,restriction:"",avail:false,otherHotel:false,otherRoom:false,otherRate:false,otherPromo:false,isDate:function(_416){var _417=_416.match("/^(dd?)/(dd?)/(d{4})$/");if(!_417){return false;}var yr=Number(_417[3]);var mt=Number(_417[1]);var da=Number(_417[2]);var d=new Date(yr,mt-1,da);return (d.getMonth()+1==mt&&d.getDate()==da);},setDate:function(_41c,day,year){try{this.dateObj=new Date();this.dateObj.setFullYear(year,_41c-1,day);this.month=this.dateObj.getMonth()+1;this.day=this.dateObj.getDate();this.year=this.dateObj.getFullYear();}catch(err){console.debug("Error in DayData.setDate: "+err.message);}},getDate:function(_41f){if(!_41f||_41f==null){_41f="MM/dd/yyyy";}var _420=new Date();_420.setFullYear(this.year,this.month-1,this.day);return dojo.date.locale.format(_420,{selector:"date",datePattern:_41f});},setDaysTilCutoff:function(_421){this.daysTilCutoff=_421;},getDaysTilCutoff:function(){return this.daysTilCutoff;},setNumberAvailable:function(_422){this.numberAvailable=_422;},getNumberAvailable:function(){return this.numberAvailable;},setCanBookOnline:function(_423){this.canBookOnline=_423;},getCanBookOnline:function(){return this.canBookOnline;},setAverageRate:function(_424){this.averageRate=_424;},getAverageRate:function(){return this.averageRate;},setLowRate:function(_425){this.lowRate=_425;},getLowRate:function(){return this.lowRate;},setHighRate:function(_426){this.highRate=_426;},getHighRate:function(){return this.highRate;},getDay:function(){return this.day;},setRestriction:function(_427){this.restriction=_427;},getRestriction:function(){return this.restriction;},getOtherHotel:function(){return this.otherHotel;},setOtherHotel:function(_428){this.otherHotel=_428;},getOtherRoom:function(){return this.otherRoom;},setOtherRoom:function(_429){this.otherRoom=_429;},getOtherRate:function(){return this.otherRate;},setOtherRatel:function(_42a){this.otherRate=_42a;},getOtherPromo:function(){return this.otherPromo;},setOtherPromo:function(_42b){this.otherPromo=_42b;},constructor:function(_42c,day,year){this.setDate(_42c,day,year);}});}if(!dojo._hasResource["dojox.collections._base"]){dojo._hasResource["dojox.collections._base"]=true;dojo.provide("dojox.collections._base");dojox.collections.DictionaryEntry=function(k,v){this.key=k;this.value=v;this.valueOf=function(){return this.value;};this.toString=function(){return String(this.value);};};dojox.collections.Iterator=function(arr){var a=arr;var _433=0;this.element=a[_433]||null;this.atEnd=function(){return (_433>=a.length);};this.get=function(){if(this.atEnd()){return null;}this.element=a[_433++];return this.element;};this.map=function(fn,_435){return dojo.map(a,fn,_435);};this.reset=function(){_433=0;this.element=a[_433];};};dojox.collections.DictionaryIterator=function(obj){var a=[];var _438={};for(var p in obj){if(!_438[p]){a.push(obj[p]);}}var _43a=0;this.element=a[_43a]||null;this.atEnd=function(){return (_43a>=a.length);};this.get=function(){if(this.atEnd()){return null;}this.element=a[_43a++];return this.element;};this.map=function(fn,_43c){return dojo.map(a,fn,_43c);};this.reset=function(){_43a=0;this.element=a[_43a];};};}if(!dojo._hasResource["dojox.collections.ArrayList"]){dojo._hasResource["dojox.collections.ArrayList"]=true;dojo.provide("dojox.collections.ArrayList");dojox.collections.ArrayList=function(arr){var _43e=[];if(arr){_43e=_43e.concat(arr);}this.count=_43e.length;this.add=function(obj){_43e.push(obj);this.count=_43e.length;};this.addRange=function(a){if(a.getIterator){var e=a.getIterator();while(!e.atEnd()){this.add(e.get());}this.count=_43e.length;}else{for(var i=0;i<a.length;i++){_43e.push(a[i]);}this.count=_43e.length;}};this.clear=function(){_43e.splice(0,_43e.length);this.count=0;};this.clone=function(){return new dojox.collections.ArrayList(_43e);};this.contains=function(obj){for(var i=0;i<_43e.length;i++){if(_43e[i]==obj){return true;}}return false;};this.forEach=function(fn,_446){dojo.forEach(_43e,fn,_446);};this.getIterator=function(){return new dojox.collections.Iterator(_43e);};this.indexOf=function(obj){for(var i=0;i<_43e.length;i++){if(_43e[i]==obj){return i;}}return -1;};this.insert=function(i,obj){_43e.splice(i,0,obj);this.count=_43e.length;};this.item=function(i){return _43e[i];};this.remove=function(obj){var i=this.indexOf(obj);if(i>=0){_43e.splice(i,1);}this.count=_43e.length;};this.removeAt=function(i){_43e.splice(i,1);this.count=_43e.length;};this.reverse=function(){_43e.reverse();};this.sort=function(fn){if(fn){_43e.sort(fn);}else{_43e.sort();}};this.setByIndex=function(i,obj){_43e[i]=obj;this.count=_43e.length;};this.toArray=function(){return [].concat(_43e);};this.toString=function(_452){return _43e.join((_452||","));};};}if(!dojo._hasResource["topaz.data.CalendarData"]){dojo._hasResource["topaz.data.CalendarData"]=true;dojo.provide("topaz.data.CalendarData");try{dojo.declare("CalendarData",null,{calMonth:3,calYear:2007,siteId:globalSiteId,hNum:"",roomType:"",promoCode:"",ratePlan:"",timeOut:0,timeOutLength:600,loaded:false,_currentMonth:false,context:"STORAGE",availCalSource:"",loadMonth:function(){this.loaded=false;this.loaded=true;timeOut=new Date();var _453=timeOut.getSeconds()+this.timeOutLength;timeOut.setSeconds(_453);},setCalMonth:function(_454){this.setMonth=_454;},getCalMonth:function(){return this.calMonth;},getCalYear:function(){return this.calYear;},setSiteId:function(_455){this.siteId=_455;},getSiteId:function(){return this.siteId;},_setLoaded:function(_456){this.loaded=_456;},isLoaded:function(){return this.loaded;},setHNum:function(_457){this.hNum=_457;},getHNum:function(){return this.hNum;},setRoomType:function(_458){this.roomType=_458;},getRoomType:function(){return this.roomType;},setRatePlan:function(_459){this.ratePlan=_459;},getRatePlan:function(){if(!this.ratePlan||this.ratePlan=="undefined"||this.ratePlan==undefined){this.ratePlan="";}return this.ratePlan;},setPromoCode:function(_45a){this.promoCode=_45a;},getPromoCode:function(){return this.promoCode;},setTimeOutLength:function(_45b){this.timeOutLenght=_45b;},_getmonthnumdays:function(_45c,_45d){var _45e=0;_45c=parseInt(_45c,10);_45d=parseInt(_45d,10);switch(_45c){case 1:case 3:case 5:case 7:case 8:case 10:case 12:_45e=31;break;case 2:if((_45d%4)==0){_45e=29;}else{_45e=28;}break;default:_45e=30;break;}return _45e;},getDayData:function(_45f){return this.days.item(_45f);},getNumDays:function(){return this.numDays;},getMonthYear:function(){var mth;if(this.calMonth+0<10){mth="0"+this.calMonth;}else{mth=""+this.calMonth;}return mth+"/"+this.calYear;},getMonthYearXML:function(){var mth;if(this.calMonth+0<10){mth="0"+this.calMonth;}else{mth=""+this.calMonth;}return this.calYear+"-"+mth;},setContext:function(_462){this.context=_462;},getContext:function(){return this.context;},isTimedOut:function(){var rc=true;var _464=new Date();var _465=_464.getSeconds()+this.timeOutLength;_464.setSeconds(_465);if(timeOut>_464){rc=false;}return rc;},constructor:function(_466,year,_468,_469){if(_469){this.availCalSource=_469;}if(_468!=undefined&&_468!=""){this.siteId=_468;}console.debug("CalendarData.initializer");try{this.loader=new CalendarLoader(this);this.numDays=this._getmonthnumdays(_466,year);this.days=new dojox.collections.ArrayList();this.days.insert(0,null);this.calMonth=_466;this.calYear=year;startPos=1;var _46a=new Date();var _46b=dojo.date.locale.format(_46a,{selector:"date",datePattern:"MM/dd/yyyy"});if(_46b.substring(0,2)==_466&&_46b.substring(6)==year){this._currentMonth=true;startPos=_46b.substring(3,5);for(i=1;i<startPos;i++){this.days.insert(i,null);}}for(i=startPos;i<=this.numDays;i++){newDay=new DayData(_466,i,year);this.days.insert(i,newDay);}}catch(err){console.debug("Error in CalendarData.initializer(): "+err.message);}}});}catch(err){console.debug("CalendarData.error: "+err.message);}}if(!dojo._hasResource["topaz.loader.bookability.AvailabilityLoader"]){dojo._hasResource["topaz.loader.bookability.AvailabilityLoader"]=true;dojo.provide("topaz.loader.bookability.AvailabilityLoader");dojo.declare("AvailabilityLoader",null,{arrDate:"",depDate:"",nightstay:1,numGuests:2,siteId:"",hotelId:"",roomId:"",promoCode:"",availWebServiceScript:"hoteltop.php",domainName:hostname,returnHotelAvailabilityData:function(_46c){return _46c;},returnRoomAvailabilityData:function(_46d){console.debug("returnRoomAvailabilityData stub");console.debug("stub: availObject.vacancyString = "+availObject.vacancyString);console.debug("stub: availObject rates average = "+baHelper.getArrayAverage(availObject.rates.toArray()));return _46d;},setAttributes:function(_46e,_46f,_470,_471,_472,_473,_474){this.hotelId=_46e;this.nightstay=_470;this.arrDate=_46f;this.depDate=_471;this.roomId=_472;this.promoCode=_473;if(_474){this.numGuests=_474;}},ajaxHotelAvailabilityRequest:function(_475){var args=arguments;var _477=dojo.xhrPost({url:urlProtocol+this.domainName+"/b07/criteriaoutput.php?siteid="+this.siteId+"&xml=<availabilityquery showall=\"true\"><arrivedate>"+this.arrDate+"</arrivedate><departdate>"+this.depDate+"</departdate><nights>"+this.nightstay+"</nights></availabilityquery>",contentType:"text/xml",handleAs:"xml",timeout:40000,load:dojo.hitch(this,function(_478,_479){try{var _47a=[_478,_479];for(var i=1;i<args.length;i++){_47a.push(args[i]);}_475.apply(this,_47a);}catch(err){console.debug("AvailabilityLoader.ajaxHotelAvailabilityRequest-callback-error: "+err.message);}})});},ajaxRoomAvailabilityRequest:function(_47c){var args=arguments;var _47e=dojo.xhrPost({url:urlProtocol+this.domainName+"/b07/"+this.availWebServiceScript+"?siteid="+this.siteId+"&xml=<roomavailabilityquery showall=\"true\"><hotelid>"+escape(this.hotelId)+"</hotelid><arrivedate>"+this.arrDate+"</arrivedate><nights>"+this.nightstay+"</nights><departdate>"+this.depDate+"</departdate><promocode>"+this.promoCode+"</promocode><numguests>"+this.numGuests+"</numguests></roomavailabilityquery>",contentType:"text/xml",handleAs:"xml",timeout:40000,load:dojo.hitch(this,function(_47f,_480){try{var _481=[_47f,_480];for(var i=1;i<args.length;i++){_481.push(args[i]);}_47c.apply(this,_481);}catch(err){console.debug("AvailabilityLoader.ajaxRoomAvailabilityRequest-callback-error: "+err.message);}})});},setHotelAvailObj:function(_483,_484,_485,_486,_487,_488,_489){var _48a;var _48b;console.debug(_483.xml);var root=_483.getElementsByTagName("availabilityqueryresult")[0];_48a=root.getElementsByTagName("hotel");for(var i=0;i<_48a.length;i++){var _48e=baHelper.getValuefromXML(_48a[i],0,"hotelid");var _48f=_48e+"~"+_486.promoCode+"~"+_486.arrDate+"~"+_486.depDate;try{_48b=new Availability(_48e,_486.arrDate,_486.depDate,"","","");_48b.vacancy="true"==baHelper.getValuefromXML(_48a[i],0,"vacancy");_48b.vacancyString=baHelper.getValuefromXML(_48a[i],0,"availablestring");_48b.tooLateToBook="true"==baHelper.getValuefromXML(_48a[i],0,"aftercutoff");_48b.comment="Test comment "+i;if(_48b.vacancyString&&_48b.vacancyString!="false"&&_48b.vacancyString!=""){console.debug("tempAvailObj.vacancyString = '"+_48b.vacancyString+"' so setting TIMESTAMP for HOTEL");_48b.echo();_486.setTimestamp("HOTEL",_48f);_486.hotelAvailMatrix[_48f]=_48b;}if(_487==unescape(_48a[i].getElementsByTagName("hotelid")[0].firstChild.nodeValue)){_485=_48b;this.returnHotelAvailabilityData=dojo.hitch(_488,_489);this.returnHotelAvailabilityData(_485);}}catch(err){console.debug("B-setHotelAvailObj-error: "+err.message);}}},setRoomAvailObj:function(_490,_491,_492,_493,_494,_495,_496,_497){try{var _498=false;var root=_490.getElementsByTagName("roomavailabilityresult")[0];if(!root){dojo.publish("roomAvailabilityResultFail",[_494,_495]);}var _49a=root.getElementsByTagName("discount");var _49b=baHelper.getValuefromXML(root,0,"hotelid");var _49c=baHelper.getValuefromXML(root,0,"promocode");if(!_49c){_49c="";}var i,j;var _49f=0;for(i=0;i<_49a.length;i++){var _4a0=_49a[i].getElementsByTagName("room")[0];var _4a1=baHelper.getValuefromXML(_4a0,0,"roomid");var _4a2=_4a1.split(":");var _4a3=_4a2[0];var _4a4="";if(_4a2.length>1){_4a4=_4a2[1];}if(_495==_4a4){_49f=i;}}if(_495!=""&&_49f==0){dojo.publish("noRoomsAvailable",[_49b,_495,_49c,dojo.cookie("arrivalDate"),dojo.cookie("departureDate"),dojo.cookie("nightstay")]);}var _4a5=new Array();var _4a6=_49a[_49f].getElementsByTagName("room");console.debug("roomNodes.length = "+_4a6.length);for(j=0;j<_4a6.length;j++){var _4a1=baHelper.getValuefromXML(_4a6[j],0,"roomid");var _4a2=_4a1.split(":");var _4a3=_4a2[0];var _4a4="";if(_4a2.length>1){_4a4=_4a2[1];}var _4a7=_49b+"~"+_49c+"~"+_4a3+"~"+_4a4+"~"+_493.arrDate+"~"+_493.depDate;try{tempAvailObj=new Availability(_49b,_493.arrDate,_493.depDate,_4a3,_4a4,_49c);tempAvailObj.vacancy="true"==baHelper.getValuefromXML(_4a6[j],0,"vacancy");tempAvailObj.vacancyString=baHelper.getValuefromXML(_4a6[j],0,"comment");tempAvailObj.comment=baHelper.getValuefromXML(_4a6[j],0,"comment");if((tempAvailObj.comment+"")=="Call Us"){tempAvailObj.tooLateToBook=true;}else{tempAvailObj.tooLateToBook=false;}if(tempAvailObj.comment=="No Vacancy"){tempAvailObj.vacancy=false;}var _4a8=tempAvailObj.comment+"";if(_4a8.indexOf("Minimum")>0){tempAvailObj.minRestriction=_4a8;}tempAvailObj.numberAvailable=baHelper.getValuefromXML(_4a6[j],0,"roomsavailable");_4a5["ROOM_"+_4a3]=tempAvailObj.numberAvailable;tempAvailObj.roomIdFull=_4a1;var _4a9=""+baHelper.getValuefromXML(_4a6[j],0,"rate");var _4aa=_4a9.split(",",31);for(var k=0;k<_4aa.length;k++){tempAvailObj.rates.insert(k,_4aa[k]);}if(tempAvailObj.vacancyString&&tempAvailObj.vacancyString!="false"&&tempAvailObj.vacancyString!=""){tempAvailObj.rates.remove("false");tempAvailObj.rates.remove(false);console.debug("tempAvailObj.vacancyString = '"+tempAvailObj.vacancyString+"' so setting TIMESTAMP for ROOM");_493.setTimestamp("ROOM",_4a7);_493.roomAvailMatrix[_4a7]=tempAvailObj;_493.roomAvailMatrix[_4a7].rates.remove("false");_493.roomAvailMatrix[_4a7].rates.remove(false);}if(_494==_4a3&&_495==_4a4){_498=true;if(!_492){console.debug("availObject was null. instantiated new Avail. object");_492=new Availability();}dojo.mixin(_492,tempAvailObj);console.debug("availObject.vacancyString = "+_492.vacancyString);console.debug("availObject.numberAvailable = "+_492.numberAvailable);console.debug("availObject rates average = "+baHelper.getArrayAverage(_492.rates.toArray()));this.returnRoomAvailabilityData=dojo.hitch(_496,_497);this.returnRoomAvailabilityData(_492);}}catch(err){console.debug("B-setRoomAvailObj-error: "+err.message);}}if(_498&&_492!=null){var _4a6=_490.getElementsByTagName("room");var _4a9=""+baHelper.getValuefromXML(_4a6,0,"rate");var _4aa=_4a9.split(",",15);for(var i=0;i<_4aa.length;i++){_492.rates.insert(i,_4aa[i]);}}else{_4a7=_49b+"~"+_49c+"~"+_494+"~"+_495+"~"+_493.arrDate+"~"+_493.depDate;var _4ac=_4a5["ROOM_"+_4a3]<1;if(!_493.roomAvailMatrix[_4a7]){dojo.publish("roomNotAvailableForPackage",[_494,_495,_4ac]);}}}catch(err){console.debug("AvailabilityLoader.setRoomAvailObj-error: "+err.message);}},constructor:function(_4ad){this.siteId=_4ad;}});}if(!dojo._hasResource["topaz.control.AvailabilityController"]){dojo._hasResource["topaz.control.AvailabilityController"]=true;dojo.provide("topaz.control.AvailabilityController");dojo.declare("AvailabilityController",null,{loader:null,domainName:hostname,arrDate:null,depDate:null,nightstay:1,siteId:0,hotelId:0,roomType:0,ratePlan:"",promoCode:"",numGuests:2,secondsToExpiration:900,hotelAvailMatrix:[],hotelAvailMatrixTimestamp:[],roomAvailMatrix:[],roomAvailMatrixTimestamp:[],baObjReference:null,returnHotelAvailabilityData:null,returnRoomAvailabilityData:null,setBookabilityReference:function(_4ae){this.baObjReference=_4ae;},setBookingPageReference:function(_4af){this.baObjReference=_4af;},setTimestamp:function(_4b0,_4b1){var Now=new Date();var _4b3=Now.getTime();switch(_4b0){case "HOTEL":this.hotelAvailMatrixTimestamp[_4b1]=_4b3;break;case "ROOM":this.roomAvailMatrixTimestamp[_4b1]=_4b3;break;}},availabilityExpired:function(_4b4,_4b5){var Now=new Date();var _4b7=Now.getTime();var _4b8;switch(_4b4){case "HOTEL":_4b8=this.hotelAvailMatrixTimestamp[_4b5];break;case "ROOM":_4b8=this.roomAvailMatrixTimestamp[_4b5];break;}if(!_4b8||_4b8==undefined){_4b8=0;}if(!_4b8||_4b7-_4b8>(this.secondsToExpiration*1000)){switch(_4b4){case "HOTEL":this.hotelAvailMatrixTimestamp[_4b5]=_4b7;break;case "ROOM":this.roomAvailMatrixTimestamp[_4b5]=_4b7;break;}return true;}else{return false;}},returnHotelAvailabilityData:function(_4b9){return _4b9;},returnRoomAvailabilityData:function(_4ba){return _4ba;},forceExpireAvail:function(_4bb,_4bc,_4bd,_4be,_4bf,_4c0,_4c1,_4c2){try{switch(_4bb){case "HOTEL":var _4c3=_4bc+"~"+_4c2+"~"+_4bd+"~"+_4be;this.hotelAvailMatrix[_4c3]=null;this.hotelAvailMatrixTimestamp[_4c3]=0;console.debug("Force-expired HOTEL: matrixKey =  "+_4c3);break;case "ROOM":var _4c3=_4bc+"~"+_4c2+"~"+_4c0+"~"+_4c1+"~"+_4bd+"~"+_4be;this.roomAvailMatrix[_4c3]=null;this.roomAvailMatrixTimestamp[_4c3]=0;console.debug("Force-expired ROOM: matrixKey =  "+_4c3);break;}}catch(err){console.debug("AvailabilityController.forceExpireAvail-error: "+err.message);}},getAvailability:function(_4c4,_4c5,_4c6,_4c7,_4c8,_4c9,_4ca,_4cb,_4cc,_4cd,_4ce,_4cf){try{this.arrDate=_4c6;this.depDate=_4c7;this.hotelId=_4c5;this.nightstay=_4c8;this.promoCode=_4cb;if(_4cf){this.numGuests=parseInt(_4cf,10);}var _4d0=new Availability();var _4d1;console.debug("About to getAvailability for context="+_4c4);switch(_4c4){case "HOTEL":_4d1=_4c5+"~"+_4cb+"~"+_4c6+"~"+_4c7;console.debug("Getting availability for HOTEL: matrixKey =  "+_4d1);testCtr++;if((_4ce!=undefined&&_4ce)||this.availabilityExpired(_4c4,_4d1)){console.debug("Hotel ("+_4c5+") Availability expired or null..making ajax call");this.loader.setAttributes(_4c5,_4c6,_4c8,_4c7,_4c9,_4cb,this.numGuests);this.loader.ajaxHotelAvailabilityRequest(this.loader.setHotelAvailObj,_4d0,this,_4c5,_4cc,_4cd);}else{console.debug("Hotel ("+_4c5+") Availability neither expired nor null");dojo.mixin(_4d0,this.hotelAvailMatrix[_4d1]);this.returnHotelAvailabilityData=dojo.hitch(_4cc,_4cd);this.returnHotelAvailabilityData(_4d0);}break;case "ROOM":_4d1=_4c5+"~"+_4cb+"~"+_4c9+"~"+_4ca+"~"+_4c6+"~"+_4c7;console.debug("Getting availability for ROOM: matrixKey =  "+_4d1);if(_4ce||this.availabilityExpired(_4c4,_4d1)){this.loader.returnRoomAvailabilityData=dojo.hitch(_4cc,_4cd);this.loader.setAttributes(_4c5,_4c6,_4c8,_4c7,_4c9,_4cb,this.numGuests);this.loader.ajaxRoomAvailabilityRequest(this.loader.setRoomAvailObj,_4d0,this,_4c9,_4ca,_4cc,_4cd);}else{dojo.mixin(_4d0,this.roomAvailMatrix[_4d1]);this.returnRoomAvailabilityData=dojo.hitch(_4cc,_4cd);this.returnRoomAvailabilityData(_4d0);}break;}}catch(err){console.debug("getAvailability-error: "+err.message);}},isHotelBookable:function(_4d2){try{var _4d3=false;if(!_4d2.tooLateToBook&&(_4d2.minRestriction=="")&&_4d2.vacancy){_4d3=true;}return _4d3;}catch(err){console.error("AvailabilityController.isHotelBookable-error: "+err.message);}},getHotelAvailabilityString:function(_4d4){try{var _4d5="";if(_4d4.tooLateToBook){_4d5="<span class=\"notAvailable\">Too late to book online. Call us.</span>";}else{if(_4d4.minRestriction!=""){_4d5="<span class=\"notAvailable\">"+_4d4.minRestriction+"</span>";}else{if(_4d4.vacancy){_4d5="<span class=\"available\">"+_4d4.vacancyString+"</span>";}else{_4d5="<span class=\"notAvailable\">"+_4d4.vacancyString+"</span>";}}}return _4d5;}catch(err){console.error("AvailabilityController.getHotelAvailabilityString-error: "+err.message);}},isRoomBookable:function(_4d6){try{console.debug("availabilityController.isRoomBookable start");console.debug("availabilityObject.echo(): "+_4d6.echo());var _4d7=_4d6.comment+"";var good=true;if(_4d6.tooLateToBook&&_4d6.tooLateToBook!="false"){console.debug("A");good=false;}if(_4d6.minRestriction!=""){console.debug("B");good=false;}if(_4d7=="Call Us"){console.debug("D");good=false;}if(_4d7=="No Vacancy"||_4d7=="Not Available"){console.debug("E");good=false;}if(_4d7.indexOf("Minimum")>=0){console.debug("F");good=false;}var _4d9=_4d6.rates.toArray();var _4da=baHelper.getArrayAverage(_4d9);if(parseFloat(_4da)<0.01){good=false;}console.debug("availabilityController.isRoomBookable finish");return good;}catch(err){console.debug("AvailabilityController.isRoomBookable-error:"+err.message);}},getRoomAvailabilityString:function(_4db){try{var _4dc="";var _4dd=_4db.comment+"";if(_4db.tooLateToBook&&_4db.tooLateToBook!="false"){_4dc="<span class=\"notAvailable\">Cannot book online. Please call us.</span>";}else{if(_4db.minRestriction!=""){_4dc="<span class=\"notAvailable\">"+_4db.minRestriction+"</span>";}else{if(_4dd=="Call Us"){_4dc="<span class=\"notAvailable\">"+_4dd+"</span>";}else{if(_4dd=="No Vacancy"||_4dd=="Not Available"){_4dc="<span class=\"notAvailable\">"+_4dd+"</span>";}else{if(_4dd.indexOf("Minimum")>=0){_4dc="<span class=\"notAvailable\">"+_4dd+"</span>";}else{_4dc="<span class=\"available\">"+_4db.vacancyString+"</span>";}}}}}return _4dc;}catch(err){console.debug("AvailabilityController.getRoomAvailabilityString-error:"+err.message);}},constructor:function(site,_4df){this.siteId=site;this.loader=new AvailabilityLoader(site);this.hotelAvailMatrix=new Array();this.hotelAvailMatrixTimestamp=new Array();this.roomAvailMatrix=new Array();this.roomAvailMatrixTimestamp=new Array();}});try{dojo.addOnLoad(function(){availabilityController=new AvailabilityController(globalSiteId);});}catch(err){console.error("topaz/control/AvailabilityController.js error: "+err.message);}}if(!dojo._hasResource["topaz.data.Availability"]){dojo._hasResource["topaz.data.Availability"]=true;dojo.provide("topaz.data.Availability");dojo.declare("Availability",null,{vacancyString:"",comment:"",vacancy:false,tooLateToBook:false,minRestriction:"",numberAvailable:0,rateString:"",rates:null,hotelid:0,arrDate:"",depDate:"",numDays:0,roomType:"",roomIdFull:"",ratePlan:"",promoCode:"",duration:"P1DT0H0M0S",isBookable:function(){return availabilityController.isRoomBookable(this);},getHotelId:function(){return this.hotelid;},getDurationString:function(){var _4e0;switch(this.duration){case "P1DT0H0M0S":_4e0="/night";break;case "P7DT0H0M0S":_4e0="/week";break;case "P28DT0H0M0S":case "P29DT0H0M0S":case "P30DT0H0M0S":case "P31DT0H0M0S":_4e0="/month";break;}return _4e0;},setRate:function(_4e1,_4e2){this.rates.insert(_4e1,_4e2);},getRate:function(_4e3){return this.rates.item(_4e3);},getRateForDate:function(_4e4){},getRatesCSV:function(){var _4e5="";try{this.rates.remove("false");this.rates.remove(false);var _4e6=this.rates.toArray();for(var i=0;i<_4e6.length;i++){_4e5+=_4e6[i];if(i<_4e6.length-1){_4e5+=",";}}}catch(err){console.debug("Availability.getRatesCSV-error: "+err.message);}return _4e5;},getRatesAverage:function(){try{var _4e8=this.rates.toArray();return baHelper.getArrayAverage(_4e8);}catch(err){console.debug("Availability.getRatesAverage-error: "+err.message);}},echo:function(){var _4e9=this.getRatesAverage();console.debug("Availability OBJECT: "+"\r"+"vacancyString: "+this.vacancyString+"\r"+"comment: "+this.comment+"\r"+"vacancy: "+this.vacancy+"\r"+"tooLateToBook: "+this.tooLateToBook+"\r"+"minRestriction: "+this.minRestriction+"\r"+"numberAvailable: "+this.numberAvailable+"\r"+"rateString: "+this.rateString+"\r"+"rates: "+(this.rates==null?"null":"NOT null")+"\r"+"(rateCSV): "+this.getRatesCSV()+"\r"+"rate average: "+_4e9+"/night\r"+"hotelid: "+this.hotelid+"\r"+"arrDate: "+this.arrDate+"\r"+"depDate: "+this.depDate+"\r"+"numDays: "+this.numDays+"\r"+"roomType: "+this.roomType+"\r"+"ratePlan: "+this.ratePlan+"\r"+"promoCode: "+this.promoCode);},constructor:function(_4ea,_4eb,_4ec,_4ed,_4ee,_4ef){this.hotelid=_4ea;this.arrDate=_4eb;this.depDate=_4ec;this.roomType=_4ed;this.ratePlan=_4ee;this.promoCode=_4ef;this.rates=new dojox.collections.ArrayList();}});}if(!dojo._hasResource["topaz.data.HotelData"]){dojo._hasResource["topaz.data.HotelData"]=true;dojo.provide("topaz.data.HotelData");dojo.declare("HotelData",null,{siteId:globalSiteId,hNum:"43",hName:"",hCode:"",hotelType:"",address:"",city:"",state:"",zip:"",country:"",longitude:"",latitude:"",childCutoffAge:0,parkingAvail:true,parkingPrice:0,rollawayAvail:false,rollawayPrice:0,cribAvail:false,cribPrice:5,checkInTime:"",checkOutTime:"",cancelPolicy:"",cancelPolicyString:"",extraPersonPrice:0,extraRollawayFormula:"",taxPct:1,acceptedCreditCardsCSV:"",holdPolicy:"N",phoneMain:"",phoneRes800:"",phoneRes:"",phoneResFax:"",freqStayProgramName:"Frequent Stay Program",hotelGeneralDesc:"",amenitiesDesc:"",directionsDesc:"",locationDesc:"",decorstyleDesc:"",roomTypesDesc:"",restaurantDesc:"",reservationNotes:"",packagesDesc:"",numBeds:0,numBaths:0,area:"",maxOccupancy:8,imageURLs:[],addOns:[],dataLoaded:false,dataLoadTimer:null,getHotelId:function(){return this.hNum;},loadHotelInformation:function(){this.loader.ajaxHotelInformationRequest(this.loader.populateHotelData,this);},loadHotelInformationSynchronously:function(){this.loader.synchroHotelInformationRequest(this.loader.populateHotelData,this);},onLoaderSuccess:function(_4f0){},onLoaderFailure:function(_4f1){},onLoaderDone:function(_4f2){if(_4f2){console.debug("HotelData.onLoaderDone -- Hotel Name: "+this.hName);this.onLoaderSuccess(this);}else{console.debug("HotelData: There was an error");this.onLoaderFailure(null);}},onAddOnsLoaderDone:function(_4f3){},constructor:function(hnum,_4f5){this.hNum=hnum;if(_4f5){this.siteId=_4f5;}this.loader=new HotelInfoLoader(this.siteId,this.hNum);this.imageURLs=new Array();}});}if(!dojo._hasResource["topaz.loader.bookability.HotelInfoLoader"]){dojo._hasResource["topaz.loader.bookability.HotelInfoLoader"]=true;dojo.provide("topaz.loader.bookability.HotelInfoLoader");dojo.declare("HotelInfoLoader",null,{domainName:hostname,hNum:"",siteId:"",ajaxHotelInformationRequest:function(_4f6){var args=arguments;console.debug("HotelInfoLoader.ajaxHotelInformationRequest: "+urlProtocol+this.domainName+"/b07/haag.php?siteid="+this.siteId+"&xml=<hotelinfoquery><hotelid>"+this.hNum+"</hotelid></hotelinfoquery>");var _4f8=dojo.xhrPost({url:urlProtocol+this.domainName+"/b07/haag.php?siteid="+this.siteId+"&xml=<hotelinfoquery><hotelid>"+this.hNum+"</hotelid></hotelinfoquery>",contentType:"text/xml",handleAs:"xml",timeout:40000,load:dojo.hitch(this,function(_4f9,_4fa){try{var _4fb=[_4f9,_4fa];for(var i=1;i<args.length;i++){_4fb.push(args[i]);}_4f6.apply(this,_4fb);}catch(err){console.debug("HotelInfoLoader.ajaxHotelInformationRequest-callback-error: "+err.message);}})});},synchroHotelInformationRequest:function(_4fd){var args=arguments;var _4ff=dojo.xhrPost({url:urlProtocol+this.domainName+"/b07/haag.php?siteid="+this.siteId+"&xml=<hotelinfoquery><hotelid>"+this.hNum+"</hotelid></hotelinfoquery>",contentType:"text/xml",handleAs:"xml",timeout:40000,sync:true,load:dojo.hitch(this,function(_500,_501){try{var _502=[_500,_501];for(var i=1;i<args.length;i++){_502.push(args[i]);}_4fd.apply(this,_502);}catch(err){console.debug("HotelInfoLoader.synchroHotelInformationRequest-callback-error: "+err.message);}})});},populateHotelData:function(_504,_505,_506){try{console.debug("HotelInfoLoader.populateHotelData response="+_504.childNodes[0].nodeName);if(_504){var _507=_504.getElementsByTagName("hotelinforesult")[0];var _508=_507;if(baHelper.getValuefromXML(_508,0,"name")){_506.hName=baHelper.getValuefromXML(_508,0,"name");_506.hCode=baHelper.getValuefromXML(_508,0,"hotelcode");_506.imageURLs["property"]=_506.hCode+"_ex.jpg";_506.address=baHelper.getValuefromXML(_508,0,"address");_506.city=baHelper.getValuefromXML(_508,0,"city");_506.state=baHelper.getValuefromXML(_508,0,"state");_506.zip=baHelper.getValuefromXML(_508,0,"zip");_506.country=baHelper.getValuefromXML(_508,0,"country");_506.longitude=baHelper.getValuefromXML(_508,0,"longitude");_506.latitude=baHelper.getValuefromXML(_508,0,"latitude");_506.childCutoffAge=baHelper.getValuefromXML(_508,0,"childcutoffage");_506.parkingAvail=baHelper.getValuefromXML(_508,0,"parkingavailable");_506.parkingPrice=baHelper.getValuefromXML(_508,0,"parkingprice");_506.rollawayAvail=baHelper.getValuefromXML(_508,0,"rollawayavailable");_506.rollawayPrice=baHelper.getValuefromXML(_508,0,"rollawayprice");_506.cribAvail=baHelper.getValuefromXML(_508,0,"cribavailable");_506.cribPrice=baHelper.getValuefromXML(_508,0,"cribprice");_506.checkInTime=baHelper.getValuefromXML(_508,0,"checkintime");_506.checkOutTime=baHelper.getValuefromXML(_508,0,"checkouttime");_506.cancelPolicy=baHelper.getValuefromXML(_508,0,"cancelpolicy");_506.cancelPolicyString=baHelper.getValuefromXML(_508,0,"cancelpolicystring");_506.extraPersonPrice=baHelper.getValuefromXML(_508,0,"extrapersonprice");_506.extraRollawayFormula=baHelper.getValuefromXML(_508,0,"extrarollawayformula");_506.taxPct=baHelper.getValuefromXML(_508,0,"taxpct");_506.acceptedCreditCardsCSV=baHelper.getValuefromXML(_508,0,"acceptedcreditcards");_506.holdPolicy=baHelper.getValuefromXML(_508,0,"holdpolicy");_506.phoneMain=baHelper.getValuefromXML(_508,0,"phonemain");_506.phoneRes800=baHelper.getValuefromXML(_508,0,"phoneres800");_506.phoneRes=baHelper.getValuefromXML(_508,0,"phoneres");_506.phoneResFax=baHelper.getValuefromXML(_508,0,"phoneresfax");_506.freqStayProgramName=baHelper.getValuefromXML(_508,0,"frequentstayprogramname");_506.hotelGeneralDesc=baHelper.getValuefromXML(_508,0,"general");_506.directionsDesc=baHelper.getValuefromXML(_508,0,"directions");_506.locationDesc=baHelper.getValuefromXML(_508,0,"location");_506.decorstyleDesc=baHelper.getValuefromXML(_508,0,"decorstyle");_506.roomTypesDesc=baHelper.getValuefromXML(_508,0,"roomtypes");_506.restaurantDesc=baHelper.getValuefromXML(_508,0,"restaurant");_506.reservationNotes=baHelper.getValuefromXML(_508,0,"reservationnotes");_506.packagesDesc=baHelper.getValuefromXML(_508,0,"packages");_506.dataLoaded=true;_506.onLoaderDone(true,null);}else{console.debug("A: HotelInfoLoader.populateHotelData response.documentElement.firstChild.nodeValue="+_504.documentElement.firstChild.nodeValue);_506.onLoaderDone(false,null);}}}catch(err){console.debug("HotelInfoLoader.populateHotelData-error: "+err.message);console.debug("B: HotelInfoLoader.populateHotelData response.documentElement.firstChild.nodeValue="+_504.documentElement.firstChild.nodeValue);_506.onLoaderDone(false,err);}},constructor:function(_509,_50a){this.hNum=_50a;this.siteId=_509;}});}if(!dojo._hasResource["topaz.data.RoomData"]){dojo._hasResource["topaz.data.RoomData"]=true;dojo.provide("topaz.data.RoomData");dojo.declare("RoomData",null,{siteId:globalSiteId,hNum:"",promoCode:"",roomId:"",displayOrder:"",roomType:"",shortDescription:"",longDescription:"",availabilityObj:null,vacancy:false,canBookOnline:false,comment:"",maxPeople:2,maxExtraBed:1,imageURLs:[],infoMatrixReference:null,dataLoaded:false,dataLoadTimer:null,echo:function(){console.debug("RoomData OBJECT: "+"\r"+"roomId: "+this.roomId+"\r"+"roomType: "+this.roomType+"\r"+"hNum: "+this.hNum+"\r"+"siteId: "+this.siteId+"\r"+"promoCode: "+this.promoCode+"\r"+"displayOrder: "+this.displayOrder+"\r"+"shortDescription: "+this.shortDescription+"\r"+"longDescription: "+this.longDescription+"\r"+"canBookOnline: "+this.canBookOnline+"\r"+"comment: "+this.comment+"\r"+"maxPeople: "+this.maxPeople+"\r"+"maxExtraBed: "+this.maxExtraBed+"\r"+"availabilityObj: "+(this.availabilityObj==null?"null":"NOT null"));},getHotelId:function(){return this.hNum;},loadRoomInformation:function(){console.debug("RoomData.loadRoomInformation");this.loader.ajaxRoomInformationRequest(this.loader.populateRoomData,this);},onLoaderSuccess:function(_50b){},onLoaderFailure:function(_50c){},onLoaderDone:function(_50d){if(_50d){this.onLoaderSuccess(this);}else{this.onLoaderFailure(null);}},constructor:function(_50e,_50f,_510,_511){this.roomId=_50f;this.hNum=_50e;this.promoCode=_510;this.loader=new RoomInfoLoader(this.siteId,this.hNum,this.roomId,this.promoCode,this);this.infoMatrixReference=_511;this.imageURLs=new Array();}});}if(!dojo._hasResource["topaz.loader.bookability.RoomInfoLoader"]){dojo._hasResource["topaz.loader.bookability.RoomInfoLoader"]=true;dojo.provide("topaz.loader.bookability.RoomInfoLoader");dojo.declare("RoomInfoLoader",null,{domainName:hostname,hNum:"",siteId:"",roomId:"1",promoCode:"",roomData:null,channel:"web",infoWebServiceScript:"infoWS.php",ajaxRoomInformationRequest:function(_512){try{}catch(err){console.debug("RoomInfoLoader.ajaxRoomInformationRequest-error: "+err.message);}var args=arguments;var _514=new Date();var _515=this.buildXMLString();var _516=dojo.rawXhrPost({url:urlProtocol+this.domainName+"/b07/"+this.infoWebServiceScript,postData:_515,contentType:"text/xml",handleAs:"xml",timeout:40000,load:dojo.hitch(this,function(_517,_518){try{var _519=[_517,_518];for(var i=1;i<args.length;i++){_519.push(args[i]);}_512.apply(this,_519);}catch(err){console.debug("RoomInfoLoader.ajaxRoomInformationRequest-callback-error: "+err.message);}})});},buildXMLString:function(){var _51b="<infoRequest context=\"roomtype\" recurse=\"false\">"+"<siteid>"+this.siteId+"</siteid>"+"<hotelid>"+this.hNum+"</hotelid>"+"<channel>"+this.channel+"</channel>";if(this.roomData!=null){_51b+="<roomid>"+this.roomData.roomId+"</roomid>";}_51b+="</infoRequest>";return _51b;},onLastAjaxCallComplete:function(){},populateRoomData:function(_51c,_51d,_51e){var data=_51c;try{if(data){var _520=data.getElementsByTagName("infoResponse")[0];var idx=0;var _522=data.getElementsByTagName("roomInfo");var _523=false;if(_522){while(!_523&&idx<_522.length){if(_51e.roomId==baHelper.getValuefromXML(_522[idx],0,"roomId")){_523=true;}else{idx++;}}}if(_523){if(parseInt(_51e.roomId,10)==parseInt(baHelper.getValuefromXML(_522[idx],0,"roomId"),10)){_51e.displayOrder=baHelper.getValuefromXML(_522[idx],0,"displayorder");_51e.roomType=baHelper.getValuefromXML(_522[idx],0,"roomType");_51e.shortDescription=baHelper.getValuefromXML(_522[idx],0,"shortDescription");_51e.longDescription=baHelper.getValuefromXML(_522[idx],0,"longDescription");_51e.canBookOnline=baHelper.getValuefromXML(_522[idx],0,"canBookOnline");_51e.maxPeople=baHelper.getValuefromXML(_522[idx],0,"maxPeopleInRoom");_51e.maxExtraBed=baHelper.getValuefromXML(_522[idx],0,"maxExtraBedsInRoom");_51e.imageURLs["guestroom"]=_51e.getHotelId()+"_room"+_51e.roomId+".jpg";_51e.dataLoaded=true;_51e.onLoaderDone(true,null);}else{_51e.onLoaderDone(false,null);}}else{console.debug("RoomInfoLoader.populateRoomData-error2: Room ID ["+_51e.roomId+"] not found");_51e.onLoaderDone(false,null);}}}catch(err){console.debug("RoomInfoLoader.populateRoomData-error3: "+err.message);_51e.onLoaderDone(false,err);}},constructor:function(_524,_525,_526,_527,_528){console.debug("RoomInfoLoader.constructor");try{this.hNum=_525;this.siteId=_524;this.roomId=_526;this.promoCode=_527;this.roomData=_528;}catch(err){console.debug("RoomInfoLoader.constructor-error: "+err.message);}}});}if(!dojo._hasResource["topaz.data.RateData"]){dojo._hasResource["topaz.data.RateData"]=true;dojo.provide("topaz.data.RateData");dojo.declare("RateData",null,{siteId:globalSiteId,hotelId:"",channel:"web",ratePlanId:"",ratePlanName:"",ratePlanDescription:"",ratePlanLongDescription:"",active:false,showAlways:false,replaceRack:false,discountType:"",showOnWeb:false,imageUrl:"",bigImageUrl:"",allDays:false,netMode:"",minNights:0,maxNights:0,infoMatrixReference:null,dataLoaded:false,dataLoadTimer:null,setInfoMatrixReference:function(_529){this.infoMatrixReference=_529;},loadRatePlanInformation:function(){var _52a=new RateLoader(this);_52a.setHNum(this.hotelId);_52a.ajaxRateRequest(_52a.loadRates,this);},onLoaderSuccess:function(_52b){},onLoaderFailure:function(_52c){},onLoaderDone:function(_52d){if(_52d){this.onLoaderSuccess(this);}else{this.onLoaderFailure(null);}},setSiteId:function(_52e){this.siteId=_52e;},getSiteId:function(){return this.siteId;},_setLoaded:function(_52f){this.loaded=_52f;},isLoaded:function(){return this.loaded;},setHotelId:function(_530){this.hotelId=_530;},getHotelId:function(){return this.hotelId;},setChannel:function(_531){this.channel=_531;},getChannel:function(){return this.channel;},setRatePlanId:function(_532){this.ratePlanId=_532;},getRatePlanId:function(){return this.ratePlanId;},setRatePlanName:function(_533){this.ratePlanName=_533;},getRatePlanName:function(){return this.ratePlanName;},setRate:function(_534,_535){this.rates.insert(_534,_535);},getRate:function(_536){return this.rates.item(_536);},getRatesCSV:function(){var _537="";var _538;for(_538 in this.rates){if(_538.substring(2,3)=="/"&&_538.substring(5,6)=="/"){_537+=this.rates[_538]+",";}}_537=_537.substring(0,_537.length-1);return _537;},setRatePlanDescription:function(_539){this.ratePlanDescription=_539;},getRatePlanDescription:function(){return this.ratePlanDescription;},setRatePlanLongDescription:function(_53a){this.ratePlanLongDescription=_53a;},getRatePlanLongDescription:function(){return this.ratePlanLongDescription;},setImageUrl:function(_53b){this.imageUrl=_53b;},getImageUrl:function(){return this.imageUrl;},setBigImageUrl:function(_53c){this.bigImageUrl=_53c;},getBigImageUrl:function(){return this.bigImageUrl;},setNetMode:function(_53d){this.netMode=_53d;},getNetMode:function(){return this.netMode;},setActive:function(_53e){if(typeof _53e=="string"){if(_53e=="true"){this.active=true;}else{this.active=false;}}else{this.active=_53e;}},isActive:function(){return this.active;},setShowAlways:function(_53f){if(typeof _53f=="string"){if(_53f=="true"){this.showAlways=true;}else{this.showAlways=false;}}else{this.showAlways=_53f;}},isShowAlways:function(){return this.showAlways;},setReplaceRack:function(_540){if(typeof _540=="string"){if(_540=="true"){this.replaceRack=true;}else{this.replaceRack=false;}}else{this.replaceRack=_540;}},isReplaceRack:function(){return this.replaceRack;},setShowOnWeb:function(_541){if(typeof _541=="string"){if(_541=="true"){this.showOnWeb=true;}else{this.showOnWeb=false;}}else{this.showOnWeb=_541;}},isShowOnWeb:function(){return this.showOnWeb;},setAllDays:function(_542){if(typeof _542=="string"){if(_542=="true"){this.allDays=true;}else{this.allDays=false;}}else{this.allDays=_542;}},isAllDays:function(){return this.allDays;},setMaxNights:function(_543){this.maxNights=_543;},getMaxNights:function(){return this.maxNights;},setMinNights:function(_544){this.minNights=_544;},getMinNights:function(){return this.minNights;},setDiscountType:function(_545){this.discountType=_545;},getDiscountType:function(){return this.discountType;},constructor:function(_546){console.debug("RateData.constructor");this.hotelId=_546;this.rates=new dojox.collections.ArrayList();}});}if(!dojo._hasResource["topaz.loader.bookability.RateLoader"]){dojo._hasResource["topaz.loader.bookability.RateLoader"]=true;dojo.provide("topaz.loader.bookability.RateLoader");dojo.declare("RateLoader",null,{domainName:hostname,uriDir:uriDir,hNum:"",siteId:globalSiteId,channel:"web",promoCode:"",roomId:"",ratePlanId:"",message:"Class",rateData:null,theMatrix:null,setTheMatrix:function(_547){this.theMatrix=_547;},setDomainName:function(_548){this.domainName=_548;},setHNum:function(_549){this.hNum=_549;},setRatePlanId:function(_54a){this.ratePlanId=_54a;},setSiteId:function(_54b){this.siteId=_54b;},setChannel:function(_54c){this.channel=_54c;},ajaxRateRequest:function(_54d){infoMatrix.loader.ajaxCallCtrs["rateplan"]++;var args=arguments;var self=this;var _550=urlProtocol+this.domainName+"/"+this.uriDir+"/infoWS.php";var _551=this.buildXMLString();var _552=dojo.rawXhrPost({url:_550,postData:_551,contentType:"text/xml",handleAs:"xml",timeout:40000,load:dojo.hitch(this,function(_553,_554){try{var _555=[_553,_554];for(var i=1;i<args.length;i++){_555.push(args[i]);}_54d.apply(this,_555);try{infoMatrix.loader.ajaxCallCtrs["rateplan"]--;if(infoMatrix.loader.ajaxCallCtrs["rateplan"]<=0){infoMatrix.onLastRatePlanAjaxCallComplete();infoMatrix.loader.ajaxCallCtrs["rateplan"]=0;}}catch(err){console.debug("RateLoader.ajaxRateRequest--error: "+err.message);}}catch(err){console.debug("RateLoader.ajaxRateRequest-callback-error: "+err.message);}})});},buildXMLString:function(){var _557="<infoRequest context=\"rateplan\" recurse=\"false\">"+"<siteid>"+this.siteId+"</siteid>"+"<hotelid>"+this.hNum+"</hotelid>"+"<channel>"+this.channel+"</channel>";if(this.rateData!=null){_557+="<ratePlan>"+this.rateData.getRatePlanId()+"</ratePlan>";}_557+="</infoRequest>";return _557;},loadAllRatePlans:function(_558,_559,_55a){var hnum;var _55c=_558.getElementsByTagName("hotelid");if(_55c&&_55c.length>0&&_55c.item(0).firstChild){var _55d=_55c.item(0).firstChild.nodeValue;hnum=_55d;}_55a.RatePlanInfo[hnum]=new Array();_55a.RatePlanIds[hnum]=new Array();var _55e=_558.getElementsByTagName("ratePlanInfo");for(var i=0;i<_55e.length;i++){var _560=new RateData();_560.setSiteId(globalSiteId);_560.setInfoMatrixReference(_55a);var _561=_55e.item(i);this.populateRatePlan(_560,_561);_55a.RatePlanIds[hnum].push(_560.getRatePlanId());_55a.RatePlanInfo[hnum][_560.getRatePlanId()]=_560;}},loadAllRatePlanIds:function(_562,_563,_564){var hnum;var _566=_562.getElementsByTagName("hotelid");if(_566&&_566.length>0&&_566.item(0).firstChild){var _567=_566.item(0).firstChild.nodeValue;hnum=_567;}_564.RatePlanIds[hnum]=new Array();var _568=_562.getElementsByTagName("ratePlanInfo");for(var i=0;i<_568.length;i++){var _56a=_568.item(i);var _56b=_56a.getElementsByTagName("ratePlanId");if(_56b&&_56b.length>0&&_56b.item(0).firstChild){var _56c=_56b.item(0).firstChild.nodeValue;_564.RatePlanIds[hnum].push(_56c);}}this.onRatePlanIdsLoaded();},onRatePlanIdsLoaded:function(){},loadRatePlan:function(_56d,_56e,_56f){var hnum;var _571=_56d.getElementsByTagName("hotelid");if(_571&&_571.length>0&&_571.item(0).firstChild){var _572=_571.item(0).firstChild.nodeValue;hnum=_572;}if(!_56f.RatePlanInfo[hnum]){_56f.RatePlanInfo[hnum]=new Array();}if(!_56f.RatePlanIds[hnum]){_56f.RatePlanIds[hnum]=new Array();}var _573=_56d.getElementsByTagName("ratePlanInfo");this.rateData.setSiteId(globalSiteId);var _574=_573.item(i);this.populateRatePlan(this.rateData,_574);_56f.RatePlanIds[hnum].push(this.rateData.getRatePlanId());_56f.RatePlanInfo[hnum][this.rateData.getRatePlanId()]=this.rateData;this.onRatePlanLoaded(this.rateData,_574);},onRatePlanLoaded:function(){},loadRates:function(_575,_576,_577){var _578=_575;this.populateRatePlan(_577,_578);},populateRatePlan:function(_579,_57a){try{var _57b=_57a.getElementsByTagName("ratePlanId");if(_57b&&_57b.length>0&&_57b.item(0).firstChild){var _57c=_57b.item(0).firstChild.nodeValue;_579.setRatePlanId(_57c);}var _57d=_57a.getElementsByTagName("ratePlanName");if(_57d&&_57d.length>0&&_57d.item(0).firstChild){var _57e=_57d.item(0).firstChild.nodeValue;_579.setRatePlanName(_57e);}var _57f=_57a.getElementsByTagName("ratePlanDescription");if(_57f&&_57f.length>0&&_57f.item(0).firstChild){var _580=_57f.item(0).firstChild.nodeValue;_579.setRatePlanDescription(_580);}var _581=_57a.getElementsByTagName("ratePlanLongDescription");if(_581&&_581.length>0&&_581.item(0).firstChild){var _582=_581.item(0).firstChild.nodeValue;_579.setRatePlanLongDescription(_582);}var _583=_57a.getElementsByTagName("image");if(_583&&_583.length>0&&_583.item(0).firstChild){var _584=_583.item(0).firstChild.nodeValue;_579.setImageUrl(_584);}var _585=_57a.getElementsByTagName("bigImage");if(_585&&_585.length>0&&_585.item(0).firstChild){var _586=_585.item(0).firstChild.nodeValue;_579.setBigImageUrl(_586);}var _587=_57a.getElementsByTagName("netmode");if(_587&&_587.length>0&&_587.item(0).firstChild){var _588=_587.item(0).firstChild.nodeValue;_579.setNetMode(_588);}var _589=_57a.getElementsByTagName("minNights");if(_589&&_589.length>0&&_589.item(0).firstChild){var rStr=_589.item(0).firstChild.nodeValue;_579.setMinNights(rStr);}var _58b=_57a.getElementsByTagName("maxNights");if(_58b&&_58b.length>0&&_58b.item(0).firstChild){var rStr=_58b.item(0).firstChild.nodeValue;_579.setMaxNights(rStr);}var _58c=_57a.getElementsByTagName("active");if(_58c&&_58c.length>0&&_58c.item(0).firstChild){var _582=_58c.item(0).firstChild.nodeValue;if(_582=="true"){_579.setActive(true);}else{_579.setActive(false);}}var _58d=_57a.getElementsByTagName("allDays");if(_58d&&_58d.length>0&&_58d.item(0).firstChild){var _58e=_58d.item(0).firstChild.nodeValue;if(_58e=="true"){_579.setAllDays(true);}else{_579.setAllDays(false);}}var _58f=_57a.getElementsByTagName("showOnWeb");if(_58f&&_58f.length>0&&_58f.item(0).firstChild){webStr=_58f.item(0).firstChild.nodeValue;if(webStr=="true"){_579.setShowOnWeb(true);}else{_579.setShowOnWeb(false);}}var _590=_57a.getElementsByTagName("replaceRack");if(_590&&_590.length>0&&_590.item(0).firstChild){webStr=_590.item(0).firstChild.nodeValue;if(webStr=="true"){_579.setReplaceRack(true);}else{_579.setReplaceRack(false);}}var _591=_57a.getElementsByTagName("discountType");if(_591&&_591.length>0&&_591.item(0).firstChild){var _592=_591.item(0).firstChild.nodeValue;_579.setDiscountType(_592);}_579.dataLoaded=true;_579.onLoaderDone(true,null);}catch(err){console.debug("RateLoader-loadRates-error: "+err.message);}},constructor:function(_593){this.message="New Instantance";this.rateData=_593;}});}if(!dojo._hasResource["topaz.loader.bookability.InfoMatrixLoader"]){dojo._hasResource["topaz.loader.bookability.InfoMatrixLoader"]=true;dojo.provide("topaz.loader.bookability.InfoMatrixLoader");dojo.declare("InfoMatrixLoader",null,{ajaxCallCtrs:[],siteId:globalSiteId,populateHotelIds:function(_594,_595,_596){try{console.debug("InfoMatrixLoader.populateHotelIds");var _597=_594;console.debug("A");var _598=_597.getElementsByTagName("hotel");console.debug("B");_596.HotelIds=new Array();console.debug("C");for(var i=0;i<_598.length;i++){console.debug("D"+i);_596.HotelIds[i]=baHelper.getValuefromXML(_598[i],0,"hotelid");}console.debug("E");_596.onHotelIdsLoaded();console.debug("F");}catch(err){console.debug("InfoMatrixLoader.populateHotelIds-error: "+err.message);}},ajaxHotelIdsRequest:function(_59a){console.debug("in InfoMatrixLoader.ajaxHotelIdsRequest: http://"+hostname+"/b2/xmlsite.php?siteid="+this.siteId+"&xml=");var args=arguments;var _59c=dojo.rawXhrPost({url:urlProtocol+hostname+"/b07/xmlsite.php?siteid="+this.siteId+"&xml=",contentType:"text/xml",handleAs:"xml",timeout:40000,error:function(){console.debug("Error in ajaxHotelIdsRequest ajax call");},load:dojo.hitch(this,function(_59d,_59e){try{var _59f=[_59d,_59e];for(var i=1;i<args.length;i++){_59f.push(args[i]);}_59a.apply(this,_59f);}catch(err){console.debug("InfoMatrixLoader.ajaxHotelIdsRequest-callback-error: "+err.message);}})});},constructor:function(){console.debug("InfoMatrixLoader constructor");this.ajaxCallCtrs=new Array();this.ajaxCallCtrs["room"]=0;this.ajaxCallCtrs["hotel"]=0;this.ajaxCallCtrs["rateplan"]=0;this.ajaxCallRefs=new Array();this.ajaxCallRefs["room"]=new Array();this.ajaxCallRefs["hotel"]=new Array();this.ajaxCallRefs["rateplan"]=new Array();}});}if(!dojo._hasResource["topaz.data.InfoMatrix"]){dojo._hasResource["topaz.data.InfoMatrix"]=true;dojo.provide("topaz.data.InfoMatrix");dojo.declare("InfoMatrix",null,{siteId:globalSiteId,promoCode:"",HotelIds:null,RoomIds:null,RatePlanIds:null,HotelInfo:null,RoomInfo:null,RatePlanInfo:null,resetPromoCode:function(_5a1){this.promoCode=_5a1;while(this.HotelInfo.length>0){this.HotelInfo.pop();}while(this.RoomInfo.length>0){this.RoomInfo.pop();}this.HotelInfo=new Array();this.RoomInfo=new Array();},updateMembers:function(_5a2){if(!this.HotelIds){this.HotelIds=new Array();}if(!this.RoomIds){this.RoomIds=new Array();}if(!this.RatePlanIds){this.RatePlanIds=new Array();}if(!this.HotelInfo){this.HotelInfo=new Array();}if(!this.RoomInfo){this.RoomInfo=new Array();}if(!this.RatePlanInfo){this.RatePlanInfo=new Array();}dojo.mixin(this.HotelIds,_5a2.HotelIds);dojo.mixin(this.RoomIds,_5a2.RoomIds);dojo.mixin(this.RatePlanIds,_5a2.RatePlanIds);dojo.mixin(this.HotelInfo,_5a2.HotelInfo);dojo.mixin(this.RoomInfo,_5a2.RoomInfo);dojo.mixin(this.RatePlanInfo,_5a2.RatePlanInfo);},testFunction:function(){return true;},onHotelIdsLoaded:function(){console.debug("onHotelIdsLoaded stub");},onRatePlanIdsLoaded:function(){},populateRoomIds:function(){this.RoomIds=new Array("1","2","3");},populateRatePlanIds:function(type,data,http,_5a6){try{var hnum;var _5a8=data.getElementsByTagName("hotelid");if(_5a8&&_5a8.length>0&&_5a8.item(0).firstChild){var _5a9=_5a8.item(0).firstChild.nodeValue;hnum=_5a9;}_5a6.RatePlanInfo[hnum]=new Array();_5a6.RatePlanIds[hnum]=new Array();var _5aa=data.getElementsByTagName("ratePlanInfo");for(var i=0;i<_5aa.length;i++){var _5ac=new RateData();_5ac.setSiteId(globalSiteId);_5ac.setInfoMatrixReference(this);var _5ad=new RateLoader(_5ac);_5ad.setTheMatrix(infoMatrix);_5ad.setHNum(hnum);_5ad.ajaxRateRequest(_5ad.loadRatePlan,infoMatrix);_5ad.onRatePlanLoaded=dojo.hitch(this,function(_5ae,_5af){_5ae.setSiteId(globalSiteId);_5ad.populateRatePlan(_5ae,_5af);_5a6.RatePlanIds[_5ae.getHotelId()].push(_5ae.getRatePlanId());_5a6.RatePlanInfo[_5ae.getHotelId()][_5ae.getRatePlanId()]=_5ae;});}_5a6.onRatePlanIdsLoaded();}catch(err){console.debug("In infoMatrix.populateRatePlanIds--error: "+err.message);}},returnHotelData:function(_5b0){return _5b0;},returnRoomData:function(_5b1){return _5b1;},returnRateData:function(_5b2){return _5b2;},getHotelData:function(_5b3,_5b4,_5b5,_5b6){try{if(this.HotelInfo==null){this.HotelInfo=new Array();}if(this.HotelInfo[_5b3]!=null){console.debug("Found HotelData for id "+_5b3+" to list from saved infoMatrix. this.HotelInfo[thisHotelId].hName = "+this.HotelInfo[_5b3].hName);this.returnHotelData=dojo.hitch(_5b4,_5b5);if(this.HotelInfo[_5b3].dataLoadTimer!=undefined){clearInterval(this.HotelInfo[_5b3].dataLoadTimer);}if(this.HotelInfo[_5b3].dataLoaded){this.returnHotelData(this.HotelInfo[_5b3]);}else{this.HotelInfo[_5b3].dataLoadTimer=window.setInterval(dojo.hitch(this,function(){if(this.HotelInfo[_5b3].dataLoaded){this.returnHotelData(this.HotelInfo[_5b3]);clearInterval(this.HotelInfo[_5b3].dataLoadTimer);}}),1000);}}else{console.debug("In InfoMatrix.getHotelData: No HotelData for id "+_5b3+"... creating new HotelData");this.HotelInfo[_5b3]=new HotelData(_5b3);this.HotelInfo[_5b3].loader.domainName=hostname;if(_5b6){this.HotelInfo[_5b3].loadHotelInformationSynchronously();this.returnHotelData=dojo.hitch(_5b4,_5b5);this.returnHotelData(this.HotelInfo[_5b3]);}else{this.HotelInfo[_5b3].loadHotelInformation();}this.HotelInfo[_5b3].onLoaderSuccess=dojo.hitch(_5b4,_5b5);}}catch(err){console.debug("InfoMatrix.getHotelData-error: "+err.message);}},onLastRoomAjaxCallComplete:function(){console.debug("In onLastRoomAjaxCallComplete stub");},onLastRatePlanAjaxCallComplete:function(){console.debug("In onLastRatePlanAjaxCallComplete stub");},getRoomData:function(_5b7,_5b8,_5b9,_5ba,_5bb){try{if(this.RoomInfo==null){this.RoomInfo=new Array();}if(this.RoomInfo[_5b7]==null){this.RoomInfo[_5b7]=new Array();}if(this.RoomInfo[_5b7][_5b8] instanceof RoomData){this.returnRoomData=dojo.hitch(_5ba,_5bb);if(this.RoomInfo[_5b7][_5b8].dataLoadTimer!=undefined){clearInterval(this.RoomInfo[_5b7][_5b8].dataLoadTimer);}if(this.RoomInfo[_5b7][_5b8].dataLoaded){this.returnRoomData(this.RoomInfo[_5b7][_5b8]);}else{this.RoomInfo[_5b7][_5b8].dataLoadTimer=window.setInterval(dojo.hitch(this,function(){if(this.RoomInfo[_5b7][_5b8].dataLoaded){this.returnRoomData(this.RoomInfo[_5b7][_5b8]);clearInterval(this.RoomInfo[_5b7][_5b8].dataLoadTimer);}}),1000);}}else{console.debug("Instantiating RoomData for hotel["+_5b7+"] room["+_5b8+"]. infoMatrix.siteId="+this.siteId);this.RoomInfo[_5b7][_5b8]=new RoomData(_5b7,_5b8,_5b9,this);this.RoomInfo[_5b7][_5b8].infoMatrixReference=this;this.RoomInfo[_5b7][_5b8].loader.domainName=hostname;this.RoomInfo[_5b7][_5b8].loadRoomInformation();this.RoomInfo[_5b7][_5b8].onLoaderSuccess=dojo.hitch(_5ba,_5bb);this.RoomInfo[_5b7][_5b8].onLoaderFailure=dojo.hitch(_5ba,_5bb);}}catch(err){console.debug("InfoMatrix.getRoomData-error: "+err.message);}},getRatePlan:function(_5bc,_5bd,_5be,_5bf){try{console.debug("InfoMatrix.getRatePlan start, thisRatePlanId="+_5bd);if(this.RatePlanInfo==null){this.RatePlanInfo=new Array();}if(this.RatePlanInfo[_5bc]==null){this.RatePlanInfo[_5bc]=new Array();}if(this.RatePlanInfo[_5bc][_5bd] instanceof RateData){this.returnRateData=dojo.hitch(_5be,_5bf);if(this.RatePlanInfo[_5bc][_5bd].dataLoadTimer!=undefined){clearInterval(this.RatePlanInfo[_5bc][_5bd].dataLoadTimer);}if(this.RatePlanInfo[_5bc][_5bd].dataLoaded){this.returnRateData(this.RatePlanInfo[_5bc][_5bd]);}else{this.RatePlanInfo[_5bc][_5bd].dataLoadTimer=window.setInterval(dojo.hitch(this,function(){if(this.RatePlanInfo[_5bc][_5bd].dataLoaded){this.returnRateData(this.RatePlanInfo[_5bc][_5bd]);clearInterval(this.RatePlanInfo[_5bc][_5bd].dataLoadTimer);}}),1000);}}else{this.RatePlanInfo[_5bc][_5bd]=new RateData(_5bc);this.RatePlanInfo[_5bc][_5bd].setInfoMatrixReference(this);this.RatePlanInfo[_5bc][_5bd].setRatePlanId(_5bd);this.RatePlanInfo[_5bc][_5bd].loadRatePlanInformation();this.RatePlanInfo[_5bc][_5bd].onLoaderSuccess=dojo.hitch(_5be,_5bf);}}catch(err){console.debug("InfoMatrix.getRatePlan-error:"+err.message);}},populateThisHotel:function(hnum){},populateThisRoom:function(_5c1){},populateOtherHotels:function(_5c2){},populateOtherRooms:function(_5c3){},populateAllRatePlans:function(_5c4){rateLoader=new RateLoader(null);rateLoader.setHNum(_5c4);rateLoader.setTheMatrix(this);rateLoader.ajaxRateRequest(rateLoader.loadAllRatePlans);},onLoaderDone:function(_5c5,err){if(_5c5){console.debug("onLoaderDone Successful, Room Type: "+this.roomType);}else{console.debug("There was an error - "+err.message);}},constructor:function(){console.debug("InfoMatrix.initializer");this.HotelInfo=new Array();this.RoomInfo=new Array();this.RatePlanInfo=new Array();this.HotelIds=new Array();this.RoomIds=new Array();this.RatePlanIds=new Array();}});try{infoMatrix=new InfoMatrix();infoMatrix.loader=new InfoMatrixLoader();}catch(err){console.debug("topaz/data/InfoMatrix.js error: "+err.message);}}if(!dojo._hasResource["topaz.loader.bookability.CalendarLoader"]){dojo._hasResource["topaz.loader.bookability.CalendarLoader"]=true;dojo.provide("topaz.loader.bookability.CalendarLoader");dojo.declare("CalendarLoader",null,{domainName:hostname,availCalSource:"/ba3dojo/ws/availCalWS.php" /*old: /b07/availCalWS_devel.php */,promoCode:"",roomId:"",rateClass:"",message:"Class",postCreate:function(){console.debug("postCreate CalendarLoader");},setDomainName:function(_5c7){this.domainName=_5c7;},setHNum:function(_5c8){this.hNum=_5c8;},setSiteId:function(_5c9){this.siteId=_5c9;},setPromoCode:function(_5ca){this.promoCode=_5ca;},setRoomType:function(_5cb){this.roomId=_5cb;},setStartDate:function(_5cc){this.startDate=_5cc;},setEndDate:function(_5cd){this.endDate=_5cd;},loadMe:function(){},_extractday:function(_5ce){_5ce+="";return parseInt(_5ce.substring(3,5),10);},_extractyear:function(_5cf){_5cf+="";return parseInt(_5cf.substring(6,10),10);},_extractmonth:function(_5d0){_5d0+="";return parseInt(_5d0.substring(0,2),10);},ajaxCalendarRequest:function(_5d1){try{var args=arguments;var self=this;var _5d4=urlProtocol+this.domainName+this.availCalSource;console.debug("urlString: "+_5d4);var _5d5=this.buildXMLString();var _5d6=dojo.rawXhrPost({url:_5d4,postData:_5d5,contentType:"text/xml",handleAs:"xml",timeout:40000,load:dojo.hitch(this,function(_5d7,_5d8){try{var _5d9=[_5d7,_5d8];for(var i=1;i<args.length;i++){_5d9.push(args[i]);}_5d1.apply(this,_5d9);}catch(err){console.debug("CalendarLoader.ajaxCalendarRequest-callback-error: "+err.message);}})});}catch(err){console.debug("ajaxCalendarRequest-error: "+err.message);}},buildXMLString:function(){var _5db="<calendarrequest>"+"<siteid>"+this.calData.getSiteId()+"</siteid>"+"<month>"+this.calData.getMonthYear()+"</month>"+"<hotelid>"+this.calData.getHNum()+"</hotelid>";if(this.calData.getRatePlan()!=""){_5db+="<discounts>"+this.calData.getRatePlan()+"</discounts>";}if(this.calData.getPromoCode()!=""){_5db+="<promocode>"+this.calData.getPromoCode()+"</promocode>";}if(this.calData.getRoomType()!=""){_5db+="<roomid>"+this.calData.getRoomType()+"</roomid>";}if(this.calData.getRatePlan()!=""){_5db+="<includediscounts>"+this.calData.getRatePlan()+"</includediscounts>";}_5db+="</calendarrequest>";console.debug("ajaxCalendarRequest: "+escape(_5db));return _5db;},onLoaderDone:function(){},loadCalendar:function(_5dc,_5dd){var data=_5dc;console.debug("In CalendarLoader.loadCalendar");try{var days=data.getElementsByTagName("day");for(var i=0;i<days.length;i++){var _5e1=days.item(i);var _5e2=_5e1.getElementsByTagName("date");if(_5e2){var _5e3=_5e2.item(0).firstChild;var _5e4=_5e3.nodeValue;var _5e5=_5e4.substring(3,5);var _5e6=parseInt(_5e5,10);var _5e7=this.calData.getDayData(_5e6);var _5e8,_5e9,_5ea;if(_5e7){if(_5e7.month==0||_5e7.day==0||_5e7.year==0){_5e8=this._extractmonth(_5e4);_5e9=this._extractday(_5e4);_5ea=this._extractyear(_5e4);console.debug("tempMth/tempDay/tempYr => "+_5e8+"/"+_5e9+"/"+_5ea);_5e7.setDate(_5e8,_5e9,_5ea);}var _5eb=_5e1.getElementsByTagName("daysTilCutoff");if(_5eb&&_5eb.length>0){var _5ec=_5eb.item(0).firstChild.nodeValue;_5e7.setDaysTilCutoff(_5ec);}var _5ed=_5e1.getElementsByTagName("numberAvailable");if(_5ed&&_5ed.length>0){var _5ee=_5ed.item(0).firstChild.nodeValue;_5e7.setNumberAvailable(_5ee);}var _5ef=_5e1.getElementsByTagName("canBookOnline");if(_5ef&&_5ef.length>0){cboStr=_5ef.item(0).firstChild.nodeValue;if(cboStr=="true"){_5e7.setCanBookOnline(true);}else{_5e7.setCanBookOnline(false);}}var _5f0=_5e1.getElementsByTagName("averageRate");if(_5f0&&_5f0.length>0){arStr=_5f0.item(0).firstChild.nodeValue;_5e7.setAverageRate(arStr);}var _5f1=_5e1.getElementsByTagName("rateLo");if(_5f1&&_5f1.length>0){rlStr=_5f1.item(0).firstChild.nodeValue;_5e7.setLowRate(rlStr);}var _5f2=_5e1.getElementsByTagName("rateHi");if(_5f2&&_5f2.length>0){rhStr=_5f2.item(0).firstChild.nodeValue;_5e7.setHighRate(rhStr);}var _5f3=_5e1.getElementsByTagName("restrictions");if(_5f3&&_5f3.length>0){rStr=_5f3.item(0).firstChild.nodeValue;_5e7.setRestriction(rStr);}var _5f4=_5e1.getElementsByTagName("otherRoomsAvailable");if(_5f4&&_5f4.length>0){var _5f5=_5f4.item(0).firstChild.nodeValue;_5e7.setOtherRoom(_5f5);}}else{console.debug("dayData is null");}}else{console.debug("dayEle is null for i="+i);}}this.onLoaderDone();}catch(err){console.debug("i="+i+", CalendarLoader.loadCalendar-error: "+err.message);}},constructor:function(_5f6){this.calData=_5f6;if(_5f6.availCalSource&&_5f6.availCalSource!=""){this.availCalSource=_5f6.availCalSource;}this.message="New Instantance";console.debug("initialized CalendarLoader. this.availCalSource="+this.availCalSource);}});}if(!dojo._hasResource["topaz.widget.DatepickerPanel"]){dojo._hasResource["topaz.widget.DatepickerPanel"]=true;dojo.provide("topaz.widget.DatepickerPanel");dojo.declare("topaz.widget.DatepickerPanel",[dijit._Widget,dijit._Templated],{declaredClass:"DatepickerPanel",templateString:"<div id=\"${id}\" dojoAttachPoint=\"mainNode\" class=\"datepickerpanel\">\r\n   <div class=\"innerContainer\">\t\r\n\t\t <form dojoAttachPoint=\"formNode\" method=\"get\" action=\"${submitMode}\">\r\n\t\t\t<div class=\"errorMessage\" dojoAttachPoint=\"errorMessageNode\">\r\n\t\t\t</div>\r\n\t\t\t<div class=\"arrival\">\r\n\t\t\t \t<div class=\"label arrivalLabel\">\r\n\t\t\t\t  \t<span class=\"label arrivalLabel\">\r\n\t\t\t\t\t\t${arrivalLabel}\r\n\t\t\t\t\t</span> \r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"inputBox arrivalInputbox\">\t\t\t\t\r\n\t\t\t\t\t<span class=\"inputbox arrivalInputbox\">\r\n\t\t\t\t\t\t<input dojoAttachEvent=\"onfocus:onArrivalFocus,onblur:onArrivalBlur\"\r\n\t\t\t\t\t\t class=\"faded_text\" dojoAttachPoint=\"arrivalInput\" type=\"text\" name=\"arrivaldate\" value=\"${initialArrVal}\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t</span>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"departure\">\r\n\t\t\t\t<div class=\"label departureLabel\">\r\n\t\t\t\t  \t<span class=\"label departureLabel\">\r\n\t\t\t\t\t\t${departureLabel}\r\n\t\t\t\t\t</span> \r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"inputBox departureInputbox\">\r\n\t\t\t\t\t<span class=\"inputbox departureInputbox\">\r\n\t\t\t\t\t\t<input dojoAttachEvent=\"onfocus:onDepartureFocus,onblur:onDepartureBlur\" class=\"faded_text\" dojoAttachPoint=\"departureInput\" type=\"text\" name=\"departuredate\" value=\"${initialDepVal}\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t</span>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"numGuests\">\r\n\t\t\t\t<div class=\"label numGuestsLabel\">\r\n\t\t\t\t\t${numGuestsLabel}\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"selectbox numGuestsSelectbox\">\r\n\t\t\t\t\t<span class=\"selectbox numGuestsSelectbox\">\r\n\t\t\t\t\t\t<select dojoAttachEvent=\"onchange:onNumGuestsChange\" dojoAttachPoint=\"numGuestsSelectNode\" name=\"numGuests\" value=\"\">\r\n\t\t\t\t\t\t</select>\r\n\t\t\t\t\t</span>\r\n\t\t\t\t</div>\t\r\n\t\t\t</div>\r\n\t\t\t<br>\r\n\t\t\t<input type=\"hidden\" name=\"nightstay\" value=\"1\" dojoAttachPoint=\"nightstayNode\">\r\n\t\t\t<input type=\"hidden\" name=\"month\">\r\n\t\t\t<input type=\"hidden\" name=\"day\">\r\n\t\t\t<input type=\"hidden\" name=\"year\">\r\n\t\t\t<input type=\"hidden\" name=\"siteid\" value=\"${siteId}\">\r\n\t\t\t<input type=\"hidden\" name=\"hnum\" value=\"${hnum}\">\r\n\t\t\t<div class=\"submitButton\" dojoAttachPoint=\"submitButtonImageNode\" dojoAttachEvent=\"onclick:onSubmit\"><span class=\"submitButtonText\">${submitButtonText}</span>\r\n\t\t\t</div>\r\n\t\t </form>\r\n\t</div>\r\n</div>\r\n",id:"",topazRoot:dojo.moduleUrl("topaz"),submitButtonImageSrc:"",readCookies:false,hideButtonUntilValid:false,arrivalLabel:"Arrival Date: ",departureLabel:"Departure Date: ",autoSubmit:false,nightstayLabel:"Nights: ",numGuestsLabel:"Number of Guests: ",initialArrVal:"ex: 12/30/2009",initialDepVal:"ex: 12/31/2009",siteId:"",hnum:"",arrDate:"",depDate:"",nightstay:"",numGuests:2,maxGuests:6,autoNextDayDep:true,lastArrivalDate:"",lastDepartureDate:"",submitMode:"BA2_SETDATE",submitHandler:"this.defaultSubmitHandler",script:"hoteltop.php",selectorStyle:"ARRIVAL_DEPARTURE",selectorElementType:"INPUT",mainNode:null,formNode:null,arrivalInput:null,departureInput:null,nightstayNode:null,submitButtonImageNode:null,submitButtonText:"Check Availability",validate:function(){try{var _5f7=true;dojo.removeClass(this.errorMessageNode,"noshow");if(_5f7&&(this.departureInput.value==this.initialDepVal||this.arrivalInput.value==this.initialArrVal)){this.errorMessageNode.innerHTML="Stay dates incomplete.";_5f7=false;}if(_5f7&&!parseDate(this.arrivalInput.value+"")){this.errorMessageNode.innerHTML="Invalid stay dates";_5f7=false;}if(_5f7&&compareDates(this.departureInput.value+"","MM/dd/yyyy",this.arrivalInput.value+"","MM/dd/yyyy")==0){if(this.autoNextDayDep){this.departureInput.value=this._dateAdd(this.arrivalInput.value+"",1);}else{this.errorMessageNode.innerHTML="Arrival date must be earlier than departure date.";_5f7=false;}}if(_5f7){dojo.addClass(this.errorMessageNode,"noshow");}return _5f7;}catch(err){console.debug("DatepickerPanel.validate-error: "+err.message);}},defaultSubmitHandler:function(){console.debug("DatepickerPanel.defaultSubmitHandler");},setArrivalDate:function(_5f8){console.debug("DatepickerPanel.setArrivalDate("+_5f8+")");this.arrDate=_5f8;this.arrivalInput.value=_5f8;},setDepartureDate:function(_5f9){this.depDate=_5f9;this.departureInput.value=_5f9;},_extractday:function(_5fa){_5fa+="";return parseInt(_5fa.substring(3,5),10);},_extractyear:function(_5fb){_5fb+="";return parseInt(_5fb.substring(6,10),10);},_extractmonth:function(_5fc){_5fc+="";return parseInt(_5fc.substring(0,2),10);},_getmonthnumdays:function(_5fd,_5fe){var _5ff=0;switch(_5fd){case 1:case 3:case 5:case 7:case 8:case 10:case 12:_5ff=31;break;case 2:if((_5fe%4)==0){_5ff=29;}else{_5ff=28;}break;default:_5ff=30;break;}return _5ff;},_dateAdd:function(_600,_601){var _602=parseInt(this._extractmonth(_600),10);var _603=parseInt(this._extractday(_600),10);var _604=parseInt(this._extractyear(_600),10);var _605=this._getmonthnumdays(_602,_604);_603+=parseInt(_601,10);if(_603>_605){_603=_603-_605;_602++;}if(_602>12){_602=1;_604++;}_602=_602<10?"0"+_602:""+_602;_603=_603<10?"0"+_603:""+_603;return _602+"/"+_603+"/"+_604;},_dateDifference:function(_606,_607){var _608=_607;var ctr=0;while(ctr<700&&_608!=_606){_608=this._dateAdd(_608,"01");ctr++;}return ctr;},populateNumGuests:function(){var _60a=this.numGuestsSelectNode;_60a.innerHTML="";if(this.readCookies){if(dojo.cookie("numGuests")){this.numGuests=parseInt(dojo.cookie("numGuests"),10);}else{dojo.cookie("numGuests",this.numGuests);}}var _60b=this.numGuests;for(i=1;i<=this.maxGuests;i++){_60a.options[i-1]=new Option(i+"",i+"",false,false);if(parseInt(_60a.options[i-1].value,10)==parseInt(_60b,10)){_60a.options[i-1].selected=true;}else{_60a.options[i-1].selected=false;}}},computeArrivalDateComponents:function(){var _60c=parseDate(this.arrivalInput.value+"");this.formNode.month.value=formatDate(_60c,"MM");this.formNode.day.value=formatDate(_60c,"dd");this.formNode.year.value=formatDate(_60c,"yyyy");this.arrDate=formatDate(_60c,"MM/dd/yyyy");},computeNightstay:function(){this.formNode.nightstay.value=this._dateDifference(this.departureInput.value,this.arrivalInput.value);this.nightstay=this.nightstayNode.value;this.depDate=this._dateAdd(this.arrDate,this.nightstay);},updateCookies:function(){console.debug("DatepickerPanel.updateCookies begin");dojo.cookie("arrivalDate",this.arrDate);dojo.cookie("departureDate",this.depDate);dojo.cookie("nightstay",this.nightstay);dojo.cookie("numGuests",this.numGuests);console.debug("DatepickerPanel.updateCookies end");},onValidateFail:function(){},onNumGuestsChange:function(evt){console.debug("DatepickerPanel.onNumGuestsChange");this.numGuests=parseInt(this.numGuestsSelectNode.value,10);dojo.cookie("numGuests",this.numGuests);if(this.autoSubmit){this.onSubmit();}},onSubmit:function(){try{console.debug("DatepickerPanel.onSubmit: this.submitMode="+this.submitMode);if(this.submitMode=="EXECUTE_JS"){var _60e=document.scrollTop;if(this.validate()){this.computeArrivalDateComponents();this.computeNightstay();this.updateCookies();dojo.publish("stayDatesChange",[this.arrDate,this.depDate]);}else{this.onValidateFail();}if(this.submitHandler!=""){eval(this.submitHandler+"();");setTimeout(dojo.hitch(this,function(){document.scrollTop=_60e;}),1000);}return false;}else{console.debug("DatepickerPanel.onSubmit:"+urlProtocol+"www.bookability.net/b2/"+this.script+"?siteid="+this.siteId+"&hnum="+this.hnum+"&nightstay="+this.nightstayNode.value);this.formNode.setAttribute("action",urlProtocol+"www.bookability.net/b2/"+this.script+"?siteid="+this.siteId+"&hnum="+this.hnum+"&nightstay="+this.nightstayNode.value);if(this.validate()){this.computeArrivalDateComponents();this.computeNightstay();this.updateCookies();console.debug("About to submit DatepickerPanel.formNode");this.formNode.submit();}}}catch(err){console.debug("DatepickerPanel.onSubmit-error: "+err.message);}},fadeInputText:function(_60f,_610){var obj;if(_610=="DEPARTURE"){obj=this.departureInput;}else{obj=this.arrivalInput;}if(_60f){dojo.addClass(obj,"faded_text");}else{dojo.removeClass(obj,"faded_text");}},onArrivalFocus:function(){console.debug("DatepickerPanel.onArrivalFocus");this.arrivalInput.value="";this.fadeInputText(false,"ARRIVAL");},onDepartureFocus:function(){console.debug("DatepickerPanel.onDepartureFocus");this.departureInput.value="";this.fadeInputText(false,"DEPARTURE");},onArrivalBlur:function(evt){console.debug("DatepickerPanel.onArrivalBlur");var _613=parseDate(this.arrivalInput.value+"");if(_613){this.arrivalInput.value=formatDate(_613,"MM/dd/yyyy");}else{this.arrivalInput.value=this.lastArrivalDate;this.fadeInputText(true,"ARRIVAL");}if(this.hideButtonUntilValid&&this.datesChanged()){if(this.checkInputBoxes()){this.lastArrivalDate=this.arrivalInput.value;}}},datesChanged:function(){var _614=false;if(this.arrivalInput.value!=this.lastArrivalDate){_614=true;}if(this.departureInput.value!=this.lastDepartureDate){_614=true;}return _614;},onDepartureBlur:function(evt){console.debug("DatepickerPanel.onDepartureBlur");var _616=parseDate(this.departureInput.value+"");if(_616){this.departureInput.value=formatDate(_616,"MM/dd/yyyy");}else{this.departureInput.value=this.lastDepartureDate;this.fadeInputText(true,"DEPARTURE");}if(this.hideButtonUntilValid&&this.datesChanged()){if(this.checkInputBoxes()){this.lastDepartureDate=this.departureInput.value;}}},setNumGuests:function(_617){try{if(_617){this.numGuests=_617;this.numGuestsSelectNode.value=this.numGuests;}else{throw ({message:"received no parameters"});}}catch(err){console.debug("DatepickerPanel.setNumGuests-error: "+err.message);}},setDateFromCookies:function(){try{if(dojo.cookie("arrivalDate")){this.arrDate=dojo.cookie("arrivalDate");this.arrivalInput.value=this.arrDate;this.fadeInputText(false,"ARRIVAL");if(dojo.cookie("departureDate")){this.depDate=dojo.cookie("departureDate");this.departureInput.value=this.depDate;this.fadeInputText(false,"DEPARTURE");this.computeNightstay();}else{if(dojo.cookie("nightstay")){this.nightstay=dojo.cookie("nightstay");this.nightstayNode.value=this.nightstay;}this.depDate=this._dateAdd(this.arrDate,this.nightstay);this.departureInput.value=this.depDate;this.fadeInputText(false,"DEPARTURE");}}}catch(err){console.debug("DatepickerPanel.setDateFromCookies-error: "+err.message);}},hideSubmitButton:function(){dojo.addClass(this.submitButtonImageNode,"noshow");},showSubmitButton:function(){dojo.removeClass(this.submitButtonImageNode,"noshow");},checkInputBoxes:function(){if(this.validate()){if(this.autoSubmit){this.onSubmit();}else{this.showSubmitButton();}return true;}else{this.hideSubmitButton();return false;}},postCreate:function(){if(this.submitButtonImageSrc==""){this.submitButtonImageSrc=dojo.moduleUrl("topaz","widget/images/checkavailability.gif");this.submitButtonImageNode.src=this.submitButtonImageSrc;}},testBrowser:function(){try{var _618=baHelper.browserSupported();if(!_618){this.submitMode="BA2_SETDATE";console.debug("DatepickerPanel.testBrowser-error: browser not capable of some AJAX functionality. Submitting to HTML booking engine.");}return _618;}catch(err){console.debug("DatepickerPanel.testBrowser-error: "+err.message);}},startup:function(){this.testBrowser();if(this.hideButtonUntilValid){this.hideSubmitButton();}if(this.readCookies){this.setDateFromCookies();if(dojo.cookie("numGuests")&&(parseInt(dojo.cookie("numGuests"),10)>0)){this.setNumGuests(dojo.cookie("numGuests"));}}if(parseInt(this.numGuests,10)<1){this.numGuests=1;}dojo.subscribe("stayDatesChange",this,"setDateFromCookies");dojo.subscribe("numGuestsChange",this,"setNumGuests");this.populateNumGuests();this.lastArrivalDate=this.initialArrVal;this.lastDepartureDate=this.initialDepVal;}});}if(!dojo._hasResource["topaz.widget.DatepickerPanel_ArrivalNightsSelect"]){dojo._hasResource["topaz.widget.DatepickerPanel_ArrivalNightsSelect"]=true;dojo.provide("topaz.widget.DatepickerPanel_ArrivalNightsSelect");dojo.declare("topaz.widget.DatepickerPanel_ArrivalNightsSelect",[dijit._Widget,dijit._Templated],{declaredClass:"DatepickerPanel_ArrivalNightsSelect",templateString:"<div id=\"${id}\" widgetId=\"${id}\" dojoAttachPoint=\"mainNode\" class=\"datepickerPanel\">\r\n \t<form dojoAttachPoint=\"formNode\" method=\"${formMethod}\" action=\"${formAction}\">\r\n  \t<div class=\"label arrivalLabel\">\r\n\t\t<span>${arrivalLabel}</span>\r\n\t</div> \r\n\t<div class=\"arrivalSelect\" dojoAttachPoint=\"arrivalMonthSelectSpan\">\r\n\t\t<select dojoType=\"Select\" dojoAttachPoint=\"arrivalMonthSelect\" type=\"text\" name=\"month\" class=\"month\"\r\n\t\t\t\tdojoAttachEvent=\"onchange:onArrivalMonthChange\">\r\n\t\t</select>\r\n\t\t<select dojoType=\"Select\" dojoAttachPoint=\"arrivalDaySelect\" type=\"text\" name=\"day\" class=\"day\"\r\n\t\t\t\tdojoAttachEvent=\"onchange:onArrivalDayChange\">\r\n\t\t</select>\r\n\t\t<select dojoType=\"Select\" dojoAttachPoint=\"arrivalYearSelect\" type=\"text\" name=\"year\" class=\"year\"\r\n\t\t\t\tdojoAttachEvent=\"onchange:onArrivalYearChange\">\r\n\t\t</select>\r\n\t</div>\r\n\t<div class=\"label nightstayLabel\">\r\n\t\t<span>${nightstayLabel}</span>\r\n\t</div>\r\n\t<div class=\"nightstaySelect\">\r\n\t\t<select size=\"1\" dojoAttachPoint=\"nightStaySelect\" type=\"text\" name=\"nightstay\"\r\n\t\t\t\tdojoAttachEvent=\"onchange:onNightStayChange\">\r\n\t\t\t<option value=\"1\" selected >1</option>\r\n\t\t\t<option value=\"2\">2</option>\r\n\t\t\t<option value=\"3\">3</option>\r\n\t\t\t<option value=\"4\">4</option>\r\n\t\t\t<option value=\"5\">5</option>\r\n\t\t\t<option value=\"6\">6</option>\r\n\t\t\t<option value=\"7\">7</option>\r\n\t\t\t<option value=\"8\">8</option>\r\n\t\t\t<option value=\"9\">9</option>\r\n\t\t\t<option value=\"10\">10</option>\r\n\t\t\t<option value=\"11\">11</option>\r\n\t\t\t<option value=\"12\">12</option>\r\n\t\t\t<option value=\"13\">13</option>\r\n\t\t\t<option value=\"14\">14</option>\r\n\t\t\t<option value=\"15\">15</option>\r\n\t\t</select>\t\r\n\t</div>\r\n\t<div class=\"promoCode\">\r\n\t\t<span class=\"promoCodeLabel\">\r\n\t\t\t${promoCodeLabel}\r\n\t\t</span>\r\n\t\t<span class=\"promoCodeInput\">\r\n\t\t\t<input type=\"text\" name=\"pcod\" value=\"${promoCode}\">\t\r\n\t\t</span>\r\n\t</div>\r\n   <div\r\n\tclass=\"submitButton\">\r\n\t\t<a href=\"#\" dojoAttachEvent=\"onclick:onSubmit\"><img dojoAttachPoint=\"submitButtonImageNode\" border=\"0\" src=\"${submitButtonImageSrc}\" alt=\"${submitAltText}\"></a>\r\n   </div>\r\n\t<input type=\"hidden\" name=\"siteid\" value=\"${siteId}\">\r\n\t<input type=\"hidden\" name=\"hnum\" value=\"${hotelId}\">\r\n\t</form>\r\n</div>\r\n",mainNode:null,formNode:null,arrivalMonthSelectSpan:null,arrivalMonthSelect:null,arrivalDaySelect:null,arrivalYearSelect:null,nightStaySelect:null,submitButtonImageNode:null,vertical:false,id:"",submitMode:"BA2_SETDATE",submitHandler:"this.defaultSubmitHandler",readCookies:false,promoCodeLabel:"Promo Code:",arrivalLabel:"Arrival Date:",nightstayLabel:"Nights:",submitButtonImageSrc:"",submitAltText:"Check Availability",formMethod:"GET",formAction:"http://www.bookability.net/b2/hoteltop.php",formActionEnabled:true,dateFormat:"MM/dd/yyyy",monthArray:["Month","January","February","March","April","May","June","July","August","September","October","November","December"],arrivalMonth:null,arrivalDay:null,arrivalYear:null,nightstay:1,promoCode:"",siteId:"",hotelId:"",daysInAdvance:0,numYearChoices:3,maxNights:15,setSiteId:function(_619){try{this.siteId=_619;this.formNode.siteid.value=_619;}catch(err){console.debug("DP_ANS.setSiteId-error: "+err.message);}},setHotelId:function(_61a){try{this.hotelId=_61a;this.formNode.hnum.value=_61a;}catch(err){console.debug("DP_ANS.setHotelId-error: "+err.message);}},_extractday:function(_61b){_61b+="";return parseInt(_61b.substring(3,5),10);},_extractyear:function(_61c){_61c+="";return parseInt(_61c.substring(6,10),10);},_extractmonth:function(_61d){_61d+="";return parseInt(_61d.substring(0,2),10);},_getMonthNumDays:function(_61e,_61f){var _620=0;switch(parseInt(_61e,10)){case 1:case 3:case 5:case 7:case 8:case 10:case 12:_620=31;break;case 2:if((_61f%4)==0){_620=29;}else{_620=28;}break;default:_620=30;break;}return _620;},_dateAdd:function(_621,_622){var _623=parseInt(this._extractmonth(_621),10);var _624=parseInt(this._extractday(_621),10);var _625=parseInt(this._extractyear(_621),10);var _626=this._getMonthNumDays(_623,_625);_624+=parseInt(_622,10);while(_624>_626){_624=_624-_626;_623++;if(_623>12){_623=1;_625++;}_626=this._getMonthNumDays(_623,_625);}_623=_623<10?"0"+_623:""+_623;_624=_624<10?"0"+_624:""+_624;return _623+"/"+_624+"/"+_625;},_getDateStr:function(strM,strD,strY,_62a){if(!_62a){_62a="MM/dd/yyyy";}return dojo.date.locale.format(this._getDate(strM,strD,strY),{selector:"date",datePattern:_62a});},_getDate:function(strM,strD,strY){var _62e=new Date();var _62f=parseInt(strM,10)-1;var _630=parseInt(strD,10);var _631=parseInt(strY,10);_62e.setFullYear(_631,_62f,_630);return _62e;},getArrivalDate:function(){return this._getDateStr(this.arrivalMonth,this.arrivalDay,this.arrivalYear,"MM/dd/yyyy");},getDepartureDate:function(){return this._dateAdd(this.getArrivalDate(),this.nightstay);},_checkDates:function(){try{var _632=this.getmonthnumdays(this.arrivalMonth,this.arrivalYear);if(this.arrivalDay>_632){this.arrivalDay=_632;}this.populateDays();}catch(err){console.debug("DP_ANS._checkDates-error: "+err.message);}},onArrivalMonthChange:function(evt){try{console.debug("DP_ANS.onArrivalMonthChange");this.arrivalMonth=parseInt(this.arrivalMonthSelect.value);this._checkDates();}catch(err){console.debug("DP_ANS.onArrivalMonthChange-error: "+err.message);}},onArrivalDayChange:function(evt){console.debug("DP_ANS.onArrivalDayChange");this.arrivalDay=parseInt(this.arrivalDaySelect.value);},onArrivalYearChange:function(evt){console.debug("DP_ANS.onArrivalYearChange");this.arrivalYear=parseInt(this.arrivalYearSelect.value);this._checkDates();},onNightStayChange:function(evt){console.debug("DP_ANS.onNightStayChange");this.nightstay=parseInt(this.nightStaySelect.value);},defaultSubmitHandler:function(){console.debug("DatepickerPanel_ArrivalNightsSelect.defaultSubmitHandler");},onSubmit:function(evt){if(this.submitMode=="EXECUTE_JS"){this.formNode.setAttribute("action","#");this.updateCookies();eval(this.submitHandler+"();");dojo.publish("stayDatesChange",[this.getArrivalDate(),getDepartureDate()]);}else{if(this.formActionEnabled){this.formNode.submit();}}},addLeadingZeros:function(num){var _639;if(parseInt(num)<10){_639="0"+num;}else{_639=""+num;}return _639;},getmonthnumdays:function(_63a,_63b){var _63c=0;switch(parseInt(_63a)){case 1:case 3:case 5:case 7:case 8:case 10:case 12:_63c=31;break;case 2:if((parseInt(_63b)%4)==0){_63c=29;}else{_63c=28;}break;default:_63c=30;break;}return _63c;},populateDays:function(){var _63d=this.arrivalDaySelect;this.arrivalDaySelect.innerHTML="";_63d.options[0]=new Option("dd","00",false,false);for(i=1;i<=this.getmonthnumdays(this.arrivalMonth,this.arrivalYear);i++){_63d.options[i]=new Option(i+"",i,false,false);if(_63d.options[i].value==this.arrivalDay){_63d.options[i].selected=true;}else{_63d.options[i].selected=false;}}},populateDropDowns:function(){try{var _63e=new Date();var _63f=this.arrivalMonthSelect;_63f.options[0]=new Option(this.monthArray[0],"0",false,false);_63f.options[1]=new Option(this.monthArray[1],"1",false,false);_63f.options[2]=new Option(this.monthArray[2],"2",false,false);_63f.options[3]=new Option(this.monthArray[3],"3",false,false);_63f.options[4]=new Option(this.monthArray[4],"4",false,false);_63f.options[5]=new Option(this.monthArray[5],"5",false,false);_63f.options[6]=new Option(this.monthArray[6],"6",false,false);_63f.options[7]=new Option(this.monthArray[7],"7",false,false);_63f.options[8]=new Option(this.monthArray[8],"8",false,false);_63f.options[9]=new Option(this.monthArray[9],"9",false,false);_63f.options[10]=new Option(this.monthArray[10],"10",false,false);_63f.options[11]=new Option(this.monthArray[11],"11",false,false);_63f.options[12]=new Option(this.monthArray[12],"12",false,false);var _640;for(i=0;i<=12;i++){if(_63f.options[i].value==this.arrivalMonth){_63f.options[i].selected=true;_640=i;}else{_63f.options[i].selected=false;}}this.populateDays();var _642=this.arrivalYearSelect;_642.options[0]=new Option("Year","0000",false,false);for(var i=1;i<=this.numYearChoices;i++){_642.options[i]=new Option(_63e.getFullYear()+i-1,_63e.getFullYear()+i-1,false,false);if(_642.options[i].value==this.arrivalYear){_642.options[i].selected=true;}}nightstayselect=this.nightStaySelect;nightstayselect.options[0]=new Option(" ","00",false,false);for(i=1;i<=this.maxNights;i++){nightstayselect.options[i]=new Option(i+"",this.addLeadingZeros(i),false,false);if(nightstayselect.options[i].value==this.nightstay){nightstayselect.options[i].selected=true;}else{nightstayselect.options[i].selected=false;}}if(!dojo.cookie("arrivalDate")){this.updateCookies();dojo.publish("stayDatesChange",[this.getArrivalDate(),getDepartureDate()]);}}catch(err){console.debug("DP_ANS.populateDropDowns-error: "+err.message);}},updateCookies:function(){try{console.debug("DatepickerPanel_ArrivalNightsSelect.updateCookies begin");dojo.cookie("arrivalDate",this.getArrivalDate());dojo.cookie("departureDate",this.getDepartureDate());dojo.cookie("nightstay",this.nightstay);console.debug("DatepickerPanel_ArrivalNightsSelect.updateCookies end");}catch(err){console.debug("DatepickerPanel_ArrivalNightSelect.updateCookies-error: "+err.message);}},setDateFromCookies:function(){if(dojo.cookie("arrivalDate")){this.arrivalMonth=this._extractmonth(dojo.cookie("arrivalDate"));this.arrivalDay=this._extractday(dojo.cookie("arrivalDate"));this.arrivalYear=this._extractyear(dojo.cookie("arrivalDate"));if(dojo.cookie("nightstay")){this.nightstay=this.addLeadingZeros(dojo.cookie("nightstay"));}}this.populateDropDowns();},postCreate:function(){console.debug("DatepickerPanel_ArrivalNightsSelect.postCreate");},startup:function(){console.debug("DatepickerPanel_ArrivalNightsSelect.startup");try{if(!(this.arrivalMonth&&this.arrivalDay&&this.arrivalYear)){var _643=new Date();var _644=dojo.date.add(_643,"day",this.daysInAdvance);this.arrivalMonth=_644.getMonth()+1;this.arrivalDay=_644.getDate();this.arrivalYear=_644.getFullYear();if(this.vertical){dojo.removeClass(this.mainNode,"datepickerPanel_horizontal");dojo.addClass(this.mainNode,"datepickerPanel_vertical");}else{dojo.removeClass(this.mainNode,"datepickerPanel_vertical");dojo.addClass(this.mainNode,"datepickerPanel_horizontal");}}if(this.submitButtonImageSrc==""||!this.submitButtonImageSrc){this.submitButtonImageSrc=dojo.moduleUrl("topaz","widget/images/datepicker_submit.gif");this.submitButtonImageNode.src=this.submitButtonImageSrc;}if(this.readCookies){this.setDateFromCookies();dojo.subscribe("stayDatesChange",this,"setDateFromCookies");}this.populateDropDowns();}catch(err){console.debug("DP_ANS.startup-error: "+err.message);}}});}if(!dojo._hasResource["topaz.widget.CalendarWidget"]){dojo._hasResource["topaz.widget.CalendarWidget"]=true;dojo.provide("topaz.widget.CalendarWidget");dojo.declare("topaz.widget.CalendarWidget",[dijit._Widget,dijit._Templated],{declaredClass:"CalendarWidget",templateString:"<div id=\"${id}\" widgetId=\"${id}\" dojoAttachPoint=\"mainNode\" class=\"calendarWidget\">\r\n\t<div dojoAttachPoint=\"calendarNode\" class=\"calendar\">\r\n\t\t<table class=\"calendarlayout\">\t\r\n\t\t\t<tr class=\"monthyear\">\r\n\t\t\t\t<td>\r\n\t\t\t\t\t<table class=\"monthyearlayout\">\r\n\t\t\t\t\t   <tr>\r\n\t\t\t\t\t      <td class=\"month\"><span dojoAttachPoint=\"monthSpanNode\">&nbsp;</span>\r\n\t\t\t\t\t      </td>\r\n\t\t\t\t\t      <td class=\"year\"><span dojoAttachPoint=\"yearSpanNode\">&nbsp;</span>\r\n\t\t\t\t\t      </td>\r\n\t\t\t\t\t   </tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class=\"space_under_monthyear\">\r\n\t\t\t\t<td></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class=\"daylabelsrow\">\r\n\t\t\t\t<td class=\"daylabels\">\r\n\t\t\t\t\t<table class=\"daylabelsgrid\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><span dojoAttachPoint=\"sundaySpanNode\">Su</span></td>\r\n\t\t\t\t\t\t\t<td><span dojoAttachPoint=\"mondaySpanNode\">Mo</span></td>\r\n\t\t\t\t\t\t\t<td><span dojoAttachPoint=\"tuesdaySpanNode\">Tu</span></td>\r\n\t\t\t\t\t\t\t<td><span dojoAttachPoint=\"wednesdaySpanNode\">We</span></td>\r\n\t\t\t\t\t\t\t<td><span dojoAttachPoint=\"thursdaySpanNode\">Th</span></td>\r\n\t\t\t\t\t\t\t<td><span dojoAttachPoint=\"fridaySpanNode\">Fr</span></td>\r\n\t\t\t\t\t\t\t<td><span dojoAttachPoint=\"saturdaySpanNode\">Sa</span></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class=\"space_under_daylabels\">\r\n\t\t\t\t<td></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class=\"daysrow\">\r\n\t\t\t\t<td>\r\n\t\t\t\t\t<table class=\"daysgrid\">\r\n\t\t\t\t\t\t<tr class=\"daysgrid_row1\">\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row1_col1\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row1_col2\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row1_col3\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row1_col4\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row1_col5\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row1_col6\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row1_col7\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr class=\"daysgrid_row2\">\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row2_col1\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row2_col2\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row2_col3\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row2_col4\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row2_col5\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row2_col6\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row2_col7\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr class=\"daysgrid_row3\">\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row3_col1\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row3_col2\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row3_col3\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row3_col4\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row3_col5\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row3_col6\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row3_col7\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr class=\"daysgrid_row4\">\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row4_col1\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row4_col2\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row4_col3\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row4_col4\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row4_col5\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row4_col6\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row4_col7\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr class=\"daysgrid_row5\">\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row5_col1\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row5_col2\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row5_col3\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row5_col4\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row5_col5\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row5_col6\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row5_col7\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr class=\"daysgrid_row6\">\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row6_col1\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row6_col2\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row6_col3\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row6_col4\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row6_col5\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row6_col6\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td dojoAttachPoint=\"calendar_row6_col7\"><span dojoAttachEvent=\"onclick:onCalendarDayClick\">&nbsp;</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t</table>\r\n\t</div>\r\n\t<!--span id=\"testingA\">xAx</span>\r\n\t<span dojoType=\"tooltip\" connectId=\"testingA\" caption=\"TESTING TOOLTIP A\"></span>\r\n\t<span id=\"testingB\">xBx</span>\r\n\t<span dojoType=\"tooltip\" connectId=\"testingB\" caption=\"TESTING TOOLTIP B\"></span>\r\n\t<span dojoType=\"tooltip\" connectId=\"04_21_2007\" caption=\"Arnold's Birthday!\"></span-->\r\n</div>\r\n",containerId:"",calendarData:null,domainName:hostname,hotelId:"",siteId:"",promoCode:"",roomId:"",ratePlanId:"",month:3,year:2007,availCalSource:"",tempSpan:null,mainNode:null,calendarNode:null,monthSpanNode:null,yearSpanNode:null,calendar_row1_col1:null,calendar_row1_col2:null,calendar_row1_col3:null,calendar_row1_col4:null,calendar_row1_col5:null,calendar_row1_col6:null,calendar_row1_col7:null,calendar_row2_col1:null,calendar_row2_col2:null,calendar_row2_col3:null,calendar_row2_col4:null,calendar_row2_col5:null,calendar_row2_col6:null,calendar_row2_col7:null,calendar_row3_col1:null,calendar_row3_col2:null,calendar_row3_col3:null,calendar_row3_col4:null,calendar_row3_col5:null,calendar_row3_col6:null,calendar_row3_col7:null,calendar_row4_col1:null,calendar_row4_col2:null,calendar_row4_col3:null,calendar_row4_col4:null,calendar_row4_col5:null,calendar_row4_col6:null,calendar_row4_col7:null,calendar_row5_col1:null,calendar_row5_col2:null,calendar_row5_col3:null,calendar_row5_col4:null,calendar_row5_col5:null,calendar_row5_col6:null,calendar_row5_col7:null,calendar_row6_col1:null,calendar_row6_col2:null,calendar_row6_col3:null,calendar_row6_col4:null,calendar_row6_col5:null,calendar_row6_col6:null,calendar_row6_col7:null,setSiteId:function(_645){this.siteId=_645;},setMonth:function(_646){this.month=parseInt(_646);},setYear:function(_647){this.year=parseInt(_647);},_getMonthString:function(_648){var _649;switch(parseInt(_648)){case 1:_649="January";break;case 2:_649="February";break;case 3:_649="March";break;case 4:_649="April";break;case 5:_649="May";break;case 6:_649="June";break;case 7:_649="July";break;case 8:_649="August";break;case 9:_649="September";break;case 10:_649="October";break;case 11:_649="November";break;case 12:_649="December";break;}return _649;},drawBlankCalendar:function(){try{var _64a=this.month;var _64b=this.year;var _64c;var _64d=this._getDayOfWeek(_64a,1,_64b);var _64e=0;var _64f=0;var _650;var j;for(j=0;j<42;j++){if(j%7==0){_64e++;_64f=1;}else{_64f++;}_650=j-_64d+1;_64c=(_64a<10)?"0"+_64a:_64a;tempCalDay=(_650<10)?"0"+_650:_650;eval("this.tempSpan = this.calendar_row"+_64e+"_col"+_64f+".firstChild;");if(_650>0&&_650<=this._getMonthNumDays(_64a,_64b)){var _652="this.tempSpan = this.calendar_row"+_64e+"_col"+_64f+".childNodes[0];";eval(_652);this.tempSpan.setAttribute("id",this.id+"_"+_64c+"_"+tempCalDay+"_"+_64b);this.tempSpan.innerHTML=_650;var _653=dojo.date.locale.format(new Date(),{selector:"date",datePattern:"MM/dd/yyyy"});var _654=_653!=_64c+"/"+tempCalDay+"/"+_64b;var _655=new Date();_655.setFullYear(_64b,_64a-1,_650);if(_654&&0==dojo.date.compare(_655,new Date(),"date")){this.tempSpan.className="pastday";}else{this.tempSpan.className="defaultday";}}else{this.tempSpan.innerHTML="&nbsp;";this.tempSpan.setAttribute("id","");this.tempSpan.className="blankspace";}}}catch(err){console.debug("CalendarWidget.drawBlankCalendar-error: "+err.message);}},_getMonthNumDays:function(_656,_657){var _658=0;switch(parseInt(_656,10)){case 1:case 3:case 5:case 7:case 8:case 10:case 12:_658=31;break;case 2:if((_657%4)==0){_658=29;}else{_658=28;}break;default:_658=30;break;}return _658;},onDateSelect:function(_659,_65a,evt,_65c){},onCalendarDayClick:function(evt){try{if(evt){evt.stopPropagation();evt.cancelBubble=true;}var _65e=evt.srcElement?evt.srcElement:evt.originalTarget;var _65f=_65e.getAttribute("id")+"";var _660=this.id+"_";var _661=_65f.substring(_660.length);this.onDateSelect(_661,_65e,evt,this.id);}catch(err){console.debug("CalendarWidget.onCalendarDayClick-error: "+err.message);}},_getDayOfWeek:function(_662,_663,_664){var _665=new Date();_665.setFullYear(parseInt(_664,10),parseInt(_662,10)-1,parseInt(_663,10));return parseInt(_665.getDay(),10);},initialize:function(){this.drawBlankCalendar();},_replaceSubstring:function(_666,from,to){var _669="";while(_666.length>=from.length&&_666.length>0&&from.length>0){if(_666.substring(0,from.length)==from){_669+=to;_666=_666.substring(from.length);}else{_669+=_666.substring(0,1);_666=_666.substring(1);}}return _669+_666;},displayAvailability:function(){try{var _66a;var _66b;var _66c;var _66d;for(_66c=1;_66c<=this.calendarData.getNumDays();_66c++){if(!this.calendarData.getDayData(_66c)){continue;}var _66e=this.calendarData.getDayData(_66c);var _66f=_66e.getDate();var _670=this._replaceSubstring(_66f,"/","_");var _671=dojo.byId(this.id+"_"+_670);_66a=_66e.getNumberAvailable();_66b=true;_66d=_66e.getRestriction();if(_66b&&(_66a>0)&&(_66d==""||_66d+0==0)){dojo.removeClass(_671,"defaultday");dojo.addClass(_671,"availableday");}else{if((_66a>0)&&(_66d!=""||_66d+0>0)){dojo.removeClass(_671,"defaultday");dojo.addClass(_671,"withrestrictions");}else{if(parseInt(_66e.getOtherRoom(),10)>0){dojo.removeClass(_671,"defaultday");dojo.addClass(_671,"otherrooms_availableday");}else{dojo.removeClass(_671,"defaultday");dojo.addClass(_671,"soldoutday");}}}}}catch(err){console.debug("CalendarWidget.displayAvailability-error: "+err.message);}},onLoaderDone:function(_672,_673){try{if(this.calendarData){if(this.calendarData.hNum!=""){this.displayAvailability();}}}catch(err){console.debug("CalendarWidget.onLoaderDone-error: "+err.message);}},postCreate:function(){},startup:function(){var _674;var _675;this.monthSpanNode.innerHTML=this._getMonthString(this.month);this.yearSpanNode.innerHTML=this.year;this.initialize();if(!this.calendarData){try{try{this.calendarData=new CalendarData(this.month,this.year,this.siteId,this.availCalSource);if(this.calendarData.loader&&this.availCalSource&&this.availCalSource!=""){this.calendarData.loader.availCalSource=this.availCalSource;}}catch(err){}this.calendarData.setHNum(this.hotelId);this.calendarData.setPromoCode(this.promoCode);this.calendarData.setRoomType(this.roomId);this.calendarData.setRatePlan(this.ratePlanId);_675=this.calendarData.loader;dojo.connect(_675,"onLoaderDone",this,"onLoaderDone");if(this.hotelId!=""&&this.siteId!=""){_675.ajaxCalendarRequest(_675.loadCalendar);}else{var _676=false;this.onLoaderDone(null,null,_676);}}catch(err){console.debug("CalendarWidget.startup-error: "+err.message);}}}});}if(!dojo._hasResource["topaz.widget.CalendarsPanel"]){dojo._hasResource["topaz.widget.CalendarsPanel"]=true;dojo.provide("topaz.widget.CalendarsPanel");dojo.declare("topaz.widget.CalendarsPanel",[dijit._Widget,dijit._Templated,dijit._Container],{declaredClass:"CalendarsPanel",templateString:"<div id=\"${id}\" widgetId=\"${id}\" dojoAttachPoint=\"mainNode\" class=\"calendarspanel\">\r\n  <div   dojoAttachEvent=\"onclick:onPanelClick\">\r\n\t<div class=\"close\">\r\n\t\t<span class=\"closeControl\" dojoAttachEvent=\"onclick:_onCloseClick\">\r\n\t\t\t<IMG id=\"${id}_close\" dojoAttachPoint=\"closeControlImg\" src=\"${topazRoot}/widget/images/closeButton.gif\" style=\"cursor:pointer; text-decoration: underline;\" ALT=\"Close\">\r\n\t\t</span>\r\n\t</div>  \r\n\t<div class=\"control\">\r\n\t\t<span class=\"prevControl\" dojoAttachEvent=\"onclick:onPrevClick\">\r\n\t\t\t<IMG id=\"${id}_prev\" dojoAttachPoint=\"prevControlImg\" src=\"${topazRoot}/widget/images/prev.gif\" style=\"cursor:pointer; text-decoration: underline;\" ALT=\"Prev\">\r\n\t\t</span>\r\n\t\t&nbsp;\r\n\t\t<span class=\"nextControl\" dojoAttachEvent=\"onclick:onNextClick\">\r\n\t\t\t<IMG dojoAttachPoint=\"nextControlImg\" src=\"${topazRoot}/widget/images/next.gif\"  style=\"cursor:pointer; text-decoration: underline;\" ALT=\"Next\">\t\t\t\t\r\n\t\t</span>\r\n\t\t<br>\r\n\t</div>\r\n\t<div dojoAttachPoint=\"ratePlanContextNode\" id=\"${id}_ratePlanContext\" class=\"context ratePlanContext\">\r\n\t</div>\t\t\r\n\t<div dojoAttachPoint=\"roomTypeContextNode\" id=\"${id}_roomTypeContext\" class=\"context roomTypeContext\">\r\n\t</div>\t\t\r\n\t<div dojoAttachPoint=\"calendarsContainerNode\" class=\"calendarContainer\">\r\n\t</div>\r\n\t<div dojoAttachPoint=\"instructionsNode\" id=\"${id}_instructions\" class=\"instructions\">&nbsp;\r\n\t</div>\t\r\n\t<div class=\"legendNode\" dojoAttachPoint=\"legendNode\">\r\n\t\t<table class=\"legend\">\r\n\t\t   <tr class=\"legendrow_availableday\">\r\n\t\t\t<td class=\"availableday\">15</td>\r\n\t\t\t<td class=\"legend_descr\" dojoAttachPoint=\"availDayLegendDescrNode\">${availableDayLegendString}</td>\r\n\t\t   </tr>\r\n\t\t   <tr class=\"legendrow_withrestrictions\">\r\n\t\t\t<td class=\"withrestrictions\">15</td>\r\n\t\t\t<td class=\"legend_descr\" dojoAttachPoint=\"withRestrLegendDescrNode\">${withRestrictionsLegendString}</td>\r\n\t\t   </tr>\t\t   \r\n\t\t   <tr dojoAttachPoint=\"otherRmsRowNode\" class=\"legendrow_otherrooms_avail\">\r\n\t\t\t<td class=\"otherrooms_availableday\">15</td>\r\n\t\t\t<td class=\"legend_descr\" dojoAttachPoint=\"otherRmsAvailLegendDescrNode\">${otherAvailLegendString}</td>\r\n\t\t   </tr>\r\n\t\t   <tr class=\"legendrow_soldout\">\r\n\t\t\t<td class=\"soldoutday\">15</td>\r\n\t\t\t<td class=\"legend_descr\">${soldoutDayLegendString}</td>\r\n\t\t   </tr>\r\n\t\t</table>\t\t\r\n\t</div>\t\r\n\t<div dojoAttachPoint=\"loadingImageDivNode\" class=\"loadingImage\">\r\n\t\t<img src=\"${topazRoot}/widget/images/loading.gif\" alt=\"Refreshing Calendars...\" />\r\n\t</div>\r\n   </div>\t\t\t\r\n</div>\r\n",dojoRoot:dojo.baseUrl,topazRoot:dojo.moduleUrl("topaz"),id:"",siteId:"",hotelId:"",roomId:"",promoCode:"",ratePlanId:"",readCookies:false,clearRoomOnHotelChange:false,hotelContextOnly:false,numCals:2,autoInitialize:true,resetInstructions:true,calCtr:0,rangeSelect:true,onlyAutoRefreshForHotelId:"",onlyAutoRefreshForRoomId:"",onlyAutoRefreshForRatePlanId:"",calendars:[],availCalSource:"",startMonth:"",startYear:"",availableDayLegendString:"Selected room available",otherAvailLegendString:"Other rooms available",soldoutDayLegendString:"Sold-out",withRestrictionsLegendString:"Avail. w/Restrictions",instrArrText:"CLICK ARRIVAL DATE",instrDepText:"CLICK DEPARTURE DATE",selectMode:"arrival",numDaysAdvance:0,arrivalDate:"",departureDate:"",lastArrivalDate:"",lastDepartureDate:"",instructionShown:true,requireAvailability:false,clickedDates:[],calendarIds:[],timeoutRef:null,timeoutDelay:1000,loadedCals:0,loadTimeout:20000,loadingTimer:null,mainNode:null,instructionsNode:null,legendNode:null,prevControlImg:null,nextControlImg:null,closeControlImg:null,availDayLegendDescrNode:null,otherRmsAvailLegendDescrNode:null,otherRmsRowNode:null,withRestrLegendDescrNode:null,tooltipNode:null,loadingImageDivNode:null,calendarsContainerNode:null,ratePlanContextNode:null,roomTypeContextNode:null,setRatePlanContextHtml:function(_677){if(!this.hotelContextOnly){this.ratePlanContextNode.innerHTML=_677;}},setRoomTypeContextHtml:function(_678){if(!this.hotelContextOnly){this.roomTypeContextNode.innerHTML=_678;}},whichCalIndex:function(_679){try{var _67a=this._extractmonth(_679)+0;var _67b=parseInt(this.startMonth,10);if(_67b<=_67a){return _67a-_67b;}else{}return _67a+12-_67b;}catch(err){console.debug("CalendarsPanel.whichCalIndex-error: "+err.message);}},getCalId:function(_67c){return this.calendarIds[this.whichCalIndex(_67c)];},setInstructionsHtml:function(_67d){this.instructionsNode.innerHTML=_67d;},getFormattedArrivalDate:function(_67e){if(!_67e){_67e="MM/dd/yyyy";}var d=new Date();d.setFullYear(this._extractyear(this.arrivalDate),this._extractmonth(this.arrivalDate)-1,this._extractday(this.arrivalDate));console.debug(d);return dojo.date.locale.format(d,{selector:"date",datePattern:_67e});},showOtherRoomsLegend:function(){dojo.removeClass(this.otherRmsRowNode,"noshow");},hideOtherRoomsLegend:function(){dojo.addClass(this.otherRmsRowNode,"noshow");},getHotelId:function(){return this.hotelId;},setLoading:function(){dojo.removeClass(this.loadingImageDivNode,"noshow");this.loadingTimer=setTimeout(dojo.hitch(this,function(){this.resetLoading();}),this.loadTimeout);},resetLoading:function(){dojo.addClass(this.loadingImageDivNode,"noshow");if(this.loadingTimer){clearTimeout(this.loadingTimer);}},setAvailDayLegendDescr:function(_680){this.availDayLegendDescrNode.innerHTML=_680;},setOtherAvailLegendDescr:function(_681){this.otherRmsAvailLegendDescrNode.innerHTML=_681;},_extractday:function(_682){_682+="";return parseInt(_682.substring(3,5),10);},_extractyear:function(_683){_683+="";return parseInt(_683.substring(6,10),10);},_extractmonth:function(_684){_684+="";console.debug("CalendarsPanel._extractmonth('"+_684+"') ==>"+parseInt(_684.substring(0,2),10));return parseInt(_684.substring(0,2),10);},_dateAdd:function(_685,_686){var _687=parseInt(this._extractmonth(_685),10);var _688=parseInt(this._extractday(_685),10);var _689=parseInt(this._extractyear(_685),10);var _68a=this._getMonthNumDays(_687,_689);_688+=parseInt(_686,10);while(_688>_68a){_688=_688-_68a;_687++;if(_687>12){_687=1;_689++;}_68a=this._getMonthNumDays(_687,_689);}_687=_687<10?"0"+_687:""+_687;_688=_688<10?"0"+_688:""+_688;return _687+"/"+_688+"/"+_689;},computeNightstay:function(){var _68b=this.arrivalDate;var _68c=this.departureDate;var _68d=0;var _68e=_68b;while(_68d<62&&_68e!=_68c){_68e=this._dateAdd(_68e,"01");_68d++;}return _68d;},setSiteId:function(_68f){this.siteId=_68f;},setHotelId:function(_690){this.hotelId=_690;},_checkAvailabilityForDate:function(_691){try{_691=_691.substring(0,2)+"/"+_691.substring(3,5)+"/"+_691.substring(6);console.debug("CalendarsPanel._checkAvailabilityForDate start. thisDate="+_691);var _692=false;dojo.query("#"+this.id+" DIV.calendar SPAN").forEach(function(node,_694,arr){if(dojo.hasClass(node,"availableday")){var _696=node.id+"";var _697=_696.substring(_696.length-10);_697=_697.substring(0,2)+"/"+_697.substring(3,5)+"/"+_697.substring(6);if(_691==_697){_692=true;}}});console.debug("CalendarsPanel._checkAvailabilityForDate finish. thisDate="+_691+", found="+_692);return _692;}catch(err){console.debug("CalendarsPanel._checkAvailabilityForDate-error: "+err.message);}},_getMonthForCalendarNumber:function(_698){var _699=parseInt(this.startMonth,10)+_698-1;return _699>12?_699-12:_699;},_getYearForCalendarNumber:function(_69a){if(_69a==2&&this.startMonth==12){return parseInt(this.startYear,10)+1;}else{return parseInt(this.startYear,10);}},onDayClick:function(_69b,_69c,evt,_69e){evt.stopPropagation();evt.cancelBubble=true;_69b+="";console.debug("CalendarsPanel.onDayClick, thisDateStr="+_69b+", calWidgetId="+_69e);if(this.clickedDates==null){this.clickedDates=new Array();}this.clickedDates[this.clickedDates.length]=_69e+"_"+_69b;_69b=_69b.substring(0,2)+"/"+_69b.substring(3,5)+"/"+_69b.substring(6);if(this.rangeSelect){console.debug("CalendarsPanel thisSpanObj.id="+_69c.id);console.debug("CalendarsPanel thisDateStr="+_69b);dojo.addClass(_69c,"clicked_date");this.setLoading();setTimeout(dojo.hitch(this,function(){this._setArrivalDeparture(_69c);this.resetLoading();}),300);}else{this._undoHighlightStayDates(this.lastArrivalDate,this.lastDepartureDate);this._highlightStayDates(_69b,_69b);this.lastArrivalDate=_69b;this.lastDepartureDate=_69b;}this.onDateClick(_69b);},onDateClick:function(_69f){console.debug("CalendarsPanel.onDateClick, thisDateStr="+_69f);},onFirstCalendarLoaderDone:function(_6a0,_6a1,_6a2){if(this.numCals==1){this.resetLoading();}},onLoaderDone:function(){this.loadedCals++;if(this.numCals==this.loadedCals){this.onAvailabilityReady();}},onAvailabilityReady:function(){},drawCalendars:function(){try{this.calendarsContainerNode.innerHTML="";delete this.calendars;this.calendars=new Array();var i;var _6a4=parseInt(this.startMonth,10),_6a5=parseInt(this.startYear,10);var _6a6=this.calendars;console.debug("In CalendarsPanel.drawCalendars, this.hotelId = "+this.hotelId+", this.promoCode = "+this.promoCode+", this.roomId = "+this.roomId);if(this.hotelId==""){this.resetLoading();}if(this.calendarIds!=null){delete this.calendarIds;}this.calendarIds=new Array();this.loadedCals=0;for(i=0;i<this.numCals;i++){console.debug(this.id+" Adding cal for: "+_6a4+"/"+_6a5);var _6a7=document.createElement("div");this.calendarsContainerNode.appendChild(_6a7);_6a7.setAttribute("id",this.id+"_cal"+this.calCtr);this.calendarIds[i]=this.id+"_cal"+this.calCtr;var _6a8="";if(this.availCalSource!=""){_6a8=this.availCalSource;}console.debug("this.availCalSource = "+this.availCalSource);console.debug("useThisACSource = "+_6a8);var _6a9={widgetId:this.id+"_cal"+this.calCtr,month:_6a4,year:_6a5,hotelId:this.hotelId,siteId:this.siteId,promoCode:this.promoCode,roomId:this.hotelContextOnly?"":this.roomId,ratePlanId:this.hotelContextOnly?"":this.ratePlanId,availCalSource:_6a8,containerId:this.id};this.calCtr++;_6a6[i]=new topaz.widget.CalendarWidget(_6a9,_6a7);_6a6[i].onDateSelect=dojo.hitch(this,this.onDayClick);if(i==0){dojo.connect(_6a6[0],"onLoaderDone",this,"onFirstCalendarLoaderDone");}dojo.connect(_6a6[i],"onLoaderDone",this,"onLoaderDone");_6a6[i].startup();_6a4++;if(_6a4>12){_6a4=1;_6a5++;}}this._highlightStayDates(this.arrivalDate,this.departureDate);}catch(err){console.debug("CalendarsPanel.drawCalendars-error: "+err.message);}},_getMonthNumDays:function(_6aa,_6ab){var _6ac=0;switch(parseInt(_6aa,10)){case 1:case 3:case 5:case 7:case 8:case 10:case 12:_6ac=31;break;case 2:if((_6ab%4)==0){_6ac=29;}else{_6ac=28;}break;default:_6ac=30;break;}return _6ac;},onPanelClick:function(evt){console.debug("CalendarsPanel.onPanelClick");evt.stopPropagation();evt.cancelBubble=true;},_onCloseClick:function(evt){console.debug("[CLOSE]");evt.stopPropagation();evt.cancelBubble=true;this.onCloseClick(evt);},onCloseClick:function(evt){},onPrevClick:function(evt){evt.stopPropagation();evt.cancelBubble=true;console.debug("[PREV]");this.setLoading();dojo.addClass(this.prevControlImg,"hide");setTimeout(dojo.hitch(this,function(){dojo.removeClass(this.prevControlImg,"hide");}),200);this.startMonth=parseInt(this.startMonth,10)-1;if(this.startMonth<1){this.startYear=parseInt(this.startYear,10)-1;this.startMonth=12;}if(this.startMonth<10){this.startMonth="0"+this.startMonth;}else{this.startMonth+="";}this.startYear+="";clearTimeout(this.timeoutRef);this.timeoutRef=setTimeout(dojo.hitch(this,function(){this.initialize();}),this.timeoutDelay);},onNextClick:function(evt){evt.stopPropagation();evt.cancelBubble=true;console.debug("[NEXT]");this.setLoading();dojo.addClass(this.nextControlImg,"hide");setTimeout(dojo.hitch(this,function(){dojo.removeClass(this.nextControlImg,"hide");}),200);this.startMonth=parseInt(this.startMonth,10)+1;if(this.startMonth>12){this.startYear=parseInt(this.startYear,10)+1;this.startMonth=1;}if(this.startMonth<10){this.startMonth="0"+this.startMonth;}else{this.startMonth+="";}this.startYear+="";clearTimeout(this.timeoutRef);this.timeoutRef=setTimeout(dojo.hitch(this,function(){this.initialize();}),this.timeoutDelay);},_getDayOfWeek:function(_6b2,_6b3,_6b4){var _6b5=new Date();_6b5.setFullYear(parseInt(_6b4,10),parseInt(_6b2,10)-1,parseInt(_6b3,10));return parseInt(_6b5.getDay(),10);},setRoomId:function(_6b6){this.roomId=_6b6;},setPromoCode:function(_6b7){this.promoCode=_6b7;},getStartMonthFromArrival:function(){var x=parseInt(this.arrivalDate.substring(0,2),10);return x;},getStartYearFromArrival:function(){var x=parseInt(this.arrivalDate.substring(6,10),10);return x;},initialize:function(){try{this.setLoading();var _6ba=dojo.date.locale.format(new Date(),{selector:"date",datePattern:"MM/dd/yyyy"});console.debug("CalendarsPanel.initialize, this.arrivalDate =  "+this.arrivalDate);if(this.arrivalDate==""){this.arrivalDate=this._dateAdd(_6ba,this.numDaysAdvance);console.debug("CalendarsPanel.initialize: Have just set CalendarsPanel.arrivalDate to "+this.arrivalDate);this.departureDate=this._dateAdd(this.arrivalDate,"1");}console.debug("About to set this.lastArrivalDate = "+this.arrivalDate);this.lastArrivalDate=this.arrivalDate;console.debug("About to set this.lastDepartureDate = "+this.departureDate);this.lastDepartureDate=this.departureDate;this.onDefaultStayDatesSet();var _6bb=this;var _6bc=new Date();console.debug("startYear="+_6bb.startYear);if(!_6bb.startYear||_6bb.startYear==""){_6bb.startYear=this.getStartYearFromArrival();}console.debug("startYear="+this.startYear);console.debug("startMonth="+this.startMonth);if(!_6bb.startMonth||_6bb.startMonth==""){_6bb.startMonth=this.getStartMonthFromArrival();}console.debug("startMonth="+_6bb.startMonth);this.drawCalendars();}catch(err){console.debug("CalendarsPanel.initialize-error:"+err.message);this.resetLoading();}},_checkStayRangeIsAvailable:function(_6bd,_6be){var _6bf=_6bd;var _6c0=true;var ctr=0;while(_6bf!=_6be&&ctr<29){_6c0=_6c0&&this._checkAvailabilityForDate(_6bf);_6bf=this._dateAdd(_6bf,"01");ctr++;}_6c0=_6c0&&ctr<29;return _6c0;},_getDateObject:function(_6c2,_6c3){if(!_6c3){_6c3="MM/dd/yyyy";}return dojo.date.locale.parse(_6c2,{selector:"date",datePattern:_6c3});},getArrivalMonth:function(){var _6c4=this._getDateObject(this.arrivalDate);return _6c4.getMonth()+1;},_highlightStayDates:function(_6c5,_6c6){try{console.debug("CalendarsPanel._highlightStayDates start");var _6c7;var _6c8=_6c5;var ctr=0;if(dojo.date.compare(this._getDateObject(_6c6),this._getDateObject(_6c5),"date")>=0){_6c7=this.getCalId(_6c8)+"_"+this._replaceSubstring(_6c8,"/","_");dojo.addClass(dojo.byId(_6c7),"highlighted");if(this.rangeSelect){while(_6c8!=_6c6&&ctr<29){_6c8=this._dateAdd(_6c8,"01");_6c7=this.getCalId(_6c8)+"_"+this._replaceSubstring(_6c8,"/","_");dojo.addClass(dojo.byId(_6c7),"highlighted");ctr++;}}}}catch(err){console.debug("CalendarsPanel._highlightStayDates-error: "+err.message);}},_unclickDates:function(){setTimeout(dojo.hitch(this,function(){var i;if(this.clickedDates!=null){for(i=0;i<this.clickedDates.length;i++){try{if(dojo.byId(this.clickedDates[i])){dojo.removeClass(dojo.byId(this.clickedDates[i]),"clicked_date");}}catch(err){console.debug("CalendarsPanel._unclickDates: ignored error: "+err.message);}}}this.clickedDates=null;}),500);},_undoHighlightStayDates:function(_6cb,_6cc){console.debug("About to _undoHighlightStayDates "+_6cb+"-"+_6cc);var _6cd;var _6ce=_6cb;var ctr=0;if(_6cb!=""&&_6cc!=""){try{_6cd=this.getCalId(_6cb)+"_"+this._replaceSubstring(_6cb,"/","_");dojo.removeClass(dojo.byId(_6cd),"clicked_date");_6cd=this.getCalId(_6cc)+"_"+this._replaceSubstring(_6cc,"/","_");dojo.removeClass(dojo.byId(_6cd),"clicked_date");if(dojo.date.compare(this._getDateObject(_6cc),this._getDateObject(_6cb),"date")>=0){_6cd=this.getCalId(_6ce)+"_"+this._replaceSubstring(_6ce,"/","_");dojo.removeClass(dojo.byId(_6cd),"highlighted");while(_6ce!=_6cc&&ctr<29){_6ce=this._dateAdd(_6ce,"01");_6cd=this.getCalId(_6ce)+"_"+this._replaceSubstring(_6ce,"/","_");dojo.removeClass(dojo.byId(_6cd),"highlighted");ctr++;}}}catch(err){console.debug("CalendarsPanel._undoHighlightStayDates: arrival and/or departure dates to undo are not in view.");}}},onDateRangeSelected:function(){},updateCookies:function(){dojo.cookie("arrivalDate",this.arrivalDate);dojo.cookie("departureDate",this.departureDate);dojo.cookie("nightstay",parseInt(this.computeNightstay(),10));},_stringRight:function(str,n){if(n<=0){return "";}else{if(n>String(str).length){return str;}else{var iLen=String(str).length;return String(str).substring(iLen,iLen-n);}}},_setArrivalDeparture:function(_6d3){console.debug("CalendarsPanel._setArrivalDeparture begin");var _6d4=false;var _6d5="";var _6d6,_6d7,_6d8,_6d9,_6da;var _6db;_6db=this._stringRight(_6d3.id+"",10);if(_6db.substring(2,3)=="_"){console.debug("CalendarsPanel.lastArrivalDate="+this.lastArrivalDate);console.debug("CalendarsPanel.lastDepartureDate="+this.lastDepartureDate);switch(this.selectMode){case "arrival":this._undoHighlightStayDates(this.lastArrivalDate,this.lastDepartureDate);this.arrivalDate=this._replaceSubstring(_6db,"_","/");this.departureDate=this._dateAdd(this.arrivalDate,1);this.selectMode="departure";if(this.instructionShown){this.instructionsNode.innerHTML="Arriving on "+this.arrivalDate+"<br><span class=\"instruct_bold\">"+this.instrDepText+"</span>"+_6d5;}break;case "departure":_6d8=this._replaceSubstring(_6db,"_","/");_6d9=this._extractmonth(_6d8);_6da=this._extractday(_6d8);_6d7=""+this._extractyear(_6d8)+(_6d9<10?"0"+_6d9:_6d9)+(_6da<10?"0"+_6da:_6da);_6d9=this._extractmonth(this.arrivalDate);_6da=this._extractday(this.arrivalDate);_6d6=""+this._extractyear(this.arrivalDate)+(_6d9<10?"0"+_6d9:_6d9)+(_6da<10?"0"+_6da:_6da);if(!this.requireAvailability||this.requireAvailability=="false"||this._checkStayRangeIsAvailable(this.arrivalDate,_6d8+"")){if(_6d7>_6d6){this.selectMode="arrival";this.departureDate=_6d8;if(this.instructionShown){this.instructionsNode.innerHTML="Arriving on "+this.arrivalDate+"<br>Departing on "+this.departureDate+"<br>"+_6d5;if(this.resetInstructions&&this.instructionShown){setTimeout(dojo.hitch(this,function(){this.instructionsNode.innerHTML="<span class=\"instruct_bold\">"+this.instrArrText+"</span>";}),2000);}}this.daterangeSelected=true;this.onDateRangeSelected();this._unclickDates();this._undoHighlightStayDates(this.lastArrivalDate,this.lastDepartureDate);this._highlightStayDates(this.arrivalDate,this.departureDate);this.lastArrivalDate=this.arrivalDate;this.lastDepartureDate=this.departureDate;this.updateCookies();setTimeout(dojo.hitch(this,function(){dojo.publish("stayDatesChange",[this.arrivalDate,this.departureDate]);}),300);}_6d4=true;}else{alert("Selected dates have at least one that is non-available.  Please select other dates.");console.debug("Reverting back...unhighlighting "+this.arrivalDate+" - "+this.departureDate);this._undoHighlightStayDates(this.arrivalDate,this.departureDate);this._highlightStayDates(this.lastArrivalDate,this.lastDepartureDate);this._unclickDates();this.selectMode="arrival";this.arrivalDate=this.lastArrivalDate;this.departureDate=this.lastDepartureDate;if(_6d7>_6d6){if(this.instructionShown){this.instructionsNode.innerHTML="<span class=\"instruct_bold\">"+this.instrArrText+"</span>";}}else{if(this.instructionShown){this.instructionsNode.innerHTML="Arriving on "+this.arrivalDate+"<br> Departing on "+this.departureDate+"<br>";if(this.resetInstructions&&this.instructionShown){setTimeout(dojo.hitch(this,function(){this.instructionsNode.innerHTML="<span class=\"instruct_bold\">"+this.instrArrText+"</span>";}),2000);}}}}break;}}console.debug("CalendarsPanel._setArrivalDeparture end");return _6d4;},_replaceSubstring:function(_6dc,from,to){var _6df="";while(_6dc.length>=from.length&&_6dc.length>0&&from.length>0){if(_6dc.substring(0,from.length)==from){_6df+=to;_6dc=_6dc.substring(from.length);}else{_6df+=_6dc.substring(0,1);_6dc=_6dc.substring(1);}}return _6df+_6dc;},onDefaultStayDatesSet:function(){},setParametersFromCookies:function(){if(dojo.cookie("hotelId")){this.hotelId=dojo.cookie("hotelId");}if(dojo.cookie("roomId")){this.roomId=dojo.cookie("roomId");}if(dojo.cookie("promoCode")){this.promoCode=dojo.cookie("promoCode");}this.ratePlanId=dojo.cookie("ratePlanId");if(!dojo.cookie("ratePlanId")){this.ratePlanId="";}},refresh:function(){if(this.readCookies){this.setParametersFromCookies();}if(dojo.cookie("arrivalDate")&&dojo.cookie("departureDate")){this.arrivalDate=dojo.cookie("arrivalDate");this.departureDate=dojo.cookie("departureDate");}this.initialize();},refreshForHotelChange:function(){if(this.onlyAutoRefreshForHotelId==""||this.onlyAutoRefreshForHotelId==dojo.cookie("hotelId")){if(this.clearRoomOnHotelChange){dojo.cookie("roomId","");this.roomId="";this.setRoomTypeContextHtml("");}this.refresh();}},refreshForRoomTypeChange:function(_6e0,_6e1){if(this.onlyAutoRefreshForRoomId==""||this.onlyAutoRefreshForRoomId==dojo.cookie("roomId")){if(_6e0!=""){this.setRoomTypeContextHtml(_6e1);}else{this.setRoomTypeContextHtml("");}if(!globRatePlanBeforeRoom){this.ratePlanId="";}this.refresh();}},refreshForRatePlanChange:function(_6e2,_6e3){if(this.onlyAutoRefreshForRatePlanId==""||this.onlyAutoRefreshForRatePlanId==dojo.cookie("ratePlanId")){if(_6e2!=""&&_6e3&&_6e3!="undefined"){this.setRatePlanContextHtml(_6e3);}else{this.setRatePlanContextHtml("");}if(globRatePlanBeforeRoom){this.roomId="";}this.refresh();}},postCreate:function(){console.debug("CalendarsPanel.postCreate");},startup:function(){try{console.debug("CalendarsPanel.startup");if(this.readCookies){this.setParametersFromCookies();}if(dojo.cookie("arrivalDate")&&dojo.cookie("departureDate")){this.arrivalDate=dojo.cookie("arrivalDate");this.departureDate=dojo.cookie("departureDate");}this.calendars=new Array();if(this.startMonth==""){if(this.month!=""&&this.month!=null){this.startMonth=this.month;}}if(this.startYear==""){if(this.year!=""&&this.year!=null){this.startYear=this.year;}}if(this.instructionShown){this.instructionsNode.innerHTML="<span class=\"instruct_bold\">"+this.instrArrText+"</span>";}if(this.autoInitialize&&this.autoInitialize!="false"){console.debug("About to auto-initialize");this.initialize();}else{this.resetLoading();}dojo.subscribe("selectedHotelChange",this,"refreshForHotelChange");dojo.subscribe("selectedRoomTypeChange",this,"refreshForRoomTypeChange");dojo.subscribe("selectedRatePlanChange",this,"refreshForRatePlanChange");dojo.subscribe("stayDatesChange",this,"refresh");}catch(err){console.debug("CalendarsPanel.startup-error: "+err.message);}}});}if(!dojo._hasResource["topaz.widget.DatepickerPanel_WithAvailabilityCalendar"]){dojo._hasResource["topaz.widget.DatepickerPanel_WithAvailabilityCalendar"]=true;dojo.provide("topaz.widget.DatepickerPanel_WithAvailabilityCalendar");dojo.declare("topaz.widget.DatepickerPanel_WithAvailabilityCalendar",[dijit._Widget,dijit._Templated,dijit._Container],{declaredClass:"DatepickerPanel_WithAvailabilityCalendar",widgetsInTemplate:true,templateString:"<div id=\"${id}\" dojoAttachPoint=\"mainNode\" class=\"datepickerpanel_withavailabilitycalendar\">\r\n\t<div class=\"innerContainer\" dojoAttachPoint=\"innerContainerNode\">\t\t\r\n\t\t<div class=\"datepickerContainer\" dojoAttachPoint=\"dpContainerNode\">\r\n\t\t\t<div id=\"${id}_datepicker\" dojoType=\"topaz.widget.DatepickerPanel\"  dojoAttachPoint=\"datepickerObject\"\r\n\t\t\t\tsiteId=\"${siteId}\"\r\n\t\t\t\thnum=\"${hotelId}\" \r\n\t\t\t\tsubmitHandler=\"${submitHandler}\"\r\n\t\t\t\tsubmitMode=\"${submitMode}\"\r\n\t\t\t\tsubmitButtonImageSrc=\"${submitButtonImageSrc}\"\r\n\t\t\t\tarrivalLabel=\"${arrivalLabel}\"\r\n\t\t\t\tdepartureLabel=\"${departureLabel}\"\r\n\t\t\t\tnumGuestsLabel=\"${numGuestsLabel}\"\r\n\t\t\t\thideButtonUntilValid=\"${hideButtonUntilValid}\"\r\n\t\t\t\tinitialArrVal=\"${initialArrVal}\"\r\n\t\t\t\tinitialDepVal=\"${initialDepVal}\"\r\n\t\t\t\tnumGuests=\"${numGuests}\"\r\n\t\t\t\tmaxGuests=\"${maxGuests}\"\r\n\t\t\t\tautoSubmit=\"${autoSubmit}\"\r\n\t\t\t\treadCookies=\"${readCookies}\"\r\n\t\t\t></div>\r\n\t\t</div>\r\n\t\t<div id=\"${id}_calendars\" dojoType=\"topaz.widget.CalendarsPanel\"  dojoAttachPoint=\"calendarsObject\"\r\n\t\t\tsiteId = \"${siteId}\"\r\n\t\t\thotelId = \"${hotelId}\"\r\n\t\t\tdomainName=\"${domainName}\"\r\n\t\t\tnumCals=\"${numCalendars}\"\r\n\t\t\trangeSelect=\"false\"\r\n\t\t\tinstrArrText=\"${instructionsText}\"\r\n\t\t\treadCookies=\"true\"\r\n\t\t\tavailableDayLegendString=\"${availableDayLegendString}\"\r\n\t\t\tavailCalSource=\"${availCalSource}\"\r\n\t\t></div>\r\n\t\t<div dojoAttachEvent=\"onclick:onArrivalCalClick\" class=\"calendarIcon arrivalCalendarIcon\">\r\n\t\t</div>\r\n\t\t<div dojoAttachEvent=\"onclick:onDepartureCalClick\" class=\"calendarIcon departureCalendarIcon\">\r\n\t\t</div>\t\t\t\t\t\r\n\t\t<div dojoAttachPoint=\"blockerNode\" class=\"blocker noshow\" dojoAttachEvent=\"onclick:onBlockerClick\">\r\n\t\t</div>\r\n\t</div>\t\t\r\n\t<div id=\"${id}_alt\" class=\"altDatepicker\" dojoAttachPoint=\"altDatepickerNode\" dojoType=\"topaz.widget.DatepickerPanel_ArrivalNightsSelect\"\r\n\t\tsiteId=\"${siteId}\"\r\n\t\thotelId=\"${hotelId}\"\r\n\t\tdaysInAdvance=\"${daysInAdvance}\"\r\n\t\tsubmitMode=\"BA2_SETDATE\"\r\n\t\tvertical=\"true\"\r\n\t>\r\n\t</div>\r\n</div>\r\n",id:"",siteId:"",hotelId:"",domainName:"",numCalendars:1,daysInAdvance:0,setDefaultDates:true,readCookies:true,submitMode:"EXECUTE_JS",submitHandler:"this.defaultSubmitHandler",submitButtonImageSrc:"",instructionsText:"Click to select date",inputState:"ARRIVAL",lastInputState:"",arrivalLabel:"Arrival Date:",departureLabel:"Departure Date:",numGuestsLabel:"Number of Guests:",initialArrVal:"ex: 07/30/2009",initialDepVal:"ex: 07/31/2009",numGuests:2,maxGuests:6,autoSubmit:false,hideButtonUntilValid:false,availableDayLegendString:"Rooms are available",availCalSource:"",checkBrowser:true,mainNode:null,datepickerObject:null,calendarsObject:null,setInstructionsHtml:function(_6e4){if(this.calendarsObject){this.calendarsObject.setInstructionsHtml(_6e4);}},setArrivalDepartureDates:function(_6e5){try{console.debug("DP_WAC.setArrivalDepartureDates: skipCheck="+_6e5+", this.readCookies="+this.readCookies);if(this.datepickerObject){if(this.readCookies&&dojo.cookie("arrivalDate")&&dojo.cookie("departureDate")){this.datepickerObject.arrivalInput.value=dojo.cookie("arrivalDate");this.datepickerObject.fadeInputText(false,"ARRIVAL");this.datepickerObject.departureInput.value=dojo.cookie("departureDate");this.datepickerObject.fadeInputText(false,"DEPARTURE");if(!_6e5){this.datepickerObject.checkInputBoxes();}}else{if(this.setDefaultDates){var _6e6=new Date();var _6e7=dojo.date.locale.format(dojo.date.add(_6e6,"day",this.daysInAdvance),{selector:"date",datePattern:"MM/dd/yyyy"});this.datepickerObject.setArrivalDate(_6e7);this.datepickerObject.fadeInputText(false,"ARRIVAL");this.datepickerObject.setDepartureDate(this.datepickerObject._dateAdd(_6e7,1));this.datepickerObject.fadeInputText(false,"DEPARTURE");if(!_6e5){this.datepickerObject.checkInputBoxes();}}}}}catch(err){console.debug("DatepickerPanel_WithAvailabilityCalendar.setArrivalDepartureDates-error: "+err.message);}},onValidateFail:function(){console.debug("DatepickerPanel.onValidateFail");var _6e8=true;this.setArrivalDepartureDates(_6e8);this.hideCalendars();},hideCalendars:function(){if(this.calendarsObject){if(this.calendarsObject.mainNode){dojo.addClass(this.calendarsObject.mainNode,"noshow");}}this.hideBlocker();},showCalendars:function(){if(this.calendarsObject){if(this.calendarsObject.mainNode){dojo.removeClass(this.calendarsObject.mainNode,"noshow");this.showBlocker();}}},setInputState:function(_6e9){console.debug("About to call setInputState("+_6e9+")");this.lastInputState=this.inputState;if(_6e9=="DEPARTURE"){this.inputState="DEPARTURE";}else{this.inputState="ARRIVAL";}},onArrivalCalClick:function(evt){console.debug("DatepickerPanel_WithAvailabilityCalendar.onArrivalCalClick");this.setInputState("ARRIVAL");this.setInstructionsHtml("Click to select Arrival Date");if(this.calendarsObject){dojo.removeClass(this.calendarsObject.mainNode,"departureState");dojo.addClass(this.calendarsObject.mainNode,"arrivalState");}if(this.datepickerObject){this.datepickerObject.fadeInputText(false,"ARRIVAL");}this.showCalendars();},onDepartureCalClick:function(evt){console.debug("DatepickerPanel_WithAvailabilityCalendar.onDepartureFocus");this.setInputState("DEPARTURE");this.setInstructionsHtml("Click to select Departure Date");if(this.calendarsObject){dojo.removeClass(this.calendarsObject.mainNode,"arrivalState");dojo.addClass(this.calendarsObject.mainNode,"departureState");}if(this.datepickerObject){this.datepickerObject.fadeInputText(false,"DEPARTURE");}this.showCalendars();},onArrivalFocus:function(){console.debug("DatepickerPanel_WithAvailabilityCalendar.onArrivalFocus");this.setInputState("ARRIVAL");this.setInstructionsHtml("Click to select Arrival Date");if(this.calendarsObject){dojo.removeClass(this.calendarsObject.mainNode,"departureState");dojo.addClass(this.calendarsObject.mainNode,"arrivalState");}this.showCalendars();},onDepartureFocus:function(){console.debug("DatepickerPanel_WithAvailabilityCalendar.onDepartureFocus");this.setInputState("DEPARTURE");this.setInstructionsHtml("Click to select Departure Date");if(this.calendarsObject){dojo.removeClass(this.calendarsObject.mainNode,"arrivalState");dojo.addClass(this.calendarsObject.mainNode,"departureState");}this.showCalendars();},onArrivalBlur:function(evt){console.debug("DatepickerPanel_WithAvailabilityCalendar.onArrivalBlur");setTimeout(dojo.hitch(this,function(){if(this.inputState==""){this.hideCalendars();}}),125);},onDepartureBlur:function(evt){console.debug("DatepickerPanel_WithAvailabilityCalendar.onDepartureBlur");setTimeout(dojo.hitch(this,function(){if(this.inputState==""){this.hideCalendars();}}),125);},_onSubmit:function(){if(!this.datepickerObject.testBrowser()){this.submitMode="BA2_SETDATE";}else{this.onSubmit();}},onSubmit:function(){this.hideCalendars();},onCalPanelClick:function(evt){console.debug("DatepickerPanel_WithAvailabilityCalendar.onCalPanelClick, this.inputState="+this.inputState);this.setInputState(this.lastInputState);},onCalPrevClick:function(evt){},onCalNextClick:function(evt){},onCalDayClick:function(_6f1){console.debug("DatepickerPanel_WithAvailabilityCalendar.onCalDayClick: "+_6f1);try{if(this.inputState=="ARRIVAL"){console.debug("About to set arrival date to: "+_6f1);dojo.cookie("arrivalDate",_6f1);this.datepickerObject.setArrivalDate(_6f1);this.datepickerObject.fadeInputText(false,"ARRIVAL");}else{if(this.inputState=="DEPARTURE"){console.debug("About to set departure date to: "+_6f1);dojo.cookie("departureDate",_6f1);this.datepickerObject.setDepartureDate(_6f1);this.datepickerObject.fadeInputText(false,"DEPARTURE");}}if(this.autoSubmit&&this.datepickerObject){this.datepickerObject.onSubmit();}this.setInputState(this.lastInputState);this.hideCalendars();}catch(err){console.debug("DatepickerPanel_WAC-error: "+err.message);}},postCreate:function(){dojo.connect(this.calendarsObject,"onDateClick",this,"onCalDayClick");dojo.connect(this.calendarsObject,"onCloseClick",this,"onCloseClick");dojo.connect(this.datepickerObject,"onArrivalFocus",this,"onArrivalFocus");dojo.connect(this.datepickerObject,"onDepartureFocus",this,"onDepartureFocus");dojo.connect(this.calendarsObject,"onPrevClick",this,"onCalPrevClick");dojo.connect(this.calendarsObject,"onNextClick",this,"onCalNextClick");dojo.connect(this.calendarsObject,"onPanelClick",this,"onCalPanelClick");dojo.connect(this.datepickerObject,"onArrivalBlur",this,"onArrivalBlur");dojo.connect(this.datepickerObject,"onDepartureBlur",this,"onDepartureBlur");dojo.connect(this.datepickerObject,"onSubmit",this,"_onSubmit");dojo.connect(this.datepickerObject,"onValidateFail",this,"onValidateFail");},showBlocker:function(){dojo.removeClass(this.blockerNode,"noshow");},hideBlocker:function(){dojo.addClass(this.blockerNode,"noshow");},onCloseClick:function(evt){console.debug("DatepickerPanel_WAC-onCloseClick");evt.stopPropagation();evt.cancelBubble=true;this.onBlockerClick(evt);},onBlockerClick:function(evt){try{console.debug("DatepickerPanel_WAC-onBlockerClick");this.hideCalendars();this.setInputState("");var _6f4=true;this.setArrivalDepartureDates(_6f4);if(this.datepickerObject){this.datepickerObject.validate();}}catch(err){console.debug("DatepickerPanel_WAC-error: "+err.message);}},startup:function(){if(this.siteId==""){this.siteId=globalSiteId;}if(!baHelper.browserSupported()&&this.checkBrowser){dojo.addClass(this.innerContainerNode,"noshow");}else{this.hideCalendars();if(this.autoSubmit&&this.datepickerObject){dojo.addClass(this.datepickerObject.submitButtonImageNode,"noshow");}if(this.submitButtonImageSrc==""){this.submitButtonImageSrc=dojo.moduleUrl("topaz","widget/images/checkavailability.gif");}this.setArrivalDepartureDates();dojo.addClass(this.altDatepickerNode.mainNode,"noshow");}}});}dojo.i18n._preloadLocalizations("dojo.nls.topaz_datepicker",["ROOT","ar","ca","cs","da","de","de-de","el","en","en-gb","en-us","es","es-es","fi","fi-fi","fr","fr-fr","he","he-il","hu","it","it-it","ja","ja-jp","ko","ko-kr","nl","nl-nl","no","pl","pt","pt-br","pt-pt","ru","sk","sl","sv","th","tr","xx","zh","zh-cn","zh-tw"]);

