if((!this["console"])||(!console["firebug"])){
this.console={};
}
$A(["assert","count","debug","dir","dirxml","error","group","groupEnd","info","log","profile","profileEnd","time","timeEnd","trace","warn"]).each(function(_1){
if(!console[_1]){
console[_1]=function(){
};
}
});
var ct={console:console,cookies:{create:function(_2,_3,_4){
var _5;
if(_4){
var _6=new Date();
_6.setTime(_6.getTime()+(_4*24*60*60*1000));
_5="; expires="+_6.toGMTString();
}else{
_5="";
}
document.cookie=_2+"="+_3+_5+"; path=/";
},read:function(_7){
var _8=_7+"=";
var ca=document.cookie.split(";");
for(var i=0;i<ca.length;i++){
var c=ca[i];
while(c.charAt(0)==" "){
c=c.substring(1,c.length);
}
if(c.indexOf(_8)===0){
return c.substring(_8.length,c.length);
}
}
return null;
},erase:function(_c){
ct.cookies.create(_c,"",-1);
}},dates:{isValidDateString:function(_d){
var _e=/[0-9]+\/[0-9]+\/([0-9][0-9][0-9][0-9])+/;
return (_e.test(_d));
},fromString:function(_f){
var _10=_f;
var day=_10.substring(0,_10.indexOf("/"));
var _12=_10.substring(_10.indexOf("/")+1,_10.indexOf("/",_10.indexOf("/")+1));
var _13=_10.substring(_10.indexOf("/",_10.indexOf("/")+1)+1,_10.length);
if(_13.length==2){
_13="20"+_13;
}
var _14=new Date();
_14.setFullYear(parseInt(_13,10),parseInt(_12,10)-1,parseInt(day,10));
_14.setHours(0,0,0,0);
return _14;
},toString:function(_15,_16){
if(!_16){
return _15.getDate()+"/"+(_15.getMonth()+1)+"/"+_15.getFullYear();
}else{
return _15.getFullYear()+""+((_15.getMonth()+1<10)?"0"+(_15.getMonth()+1):(_15.getMonth()+1))+((_15.getDate()<10)?("0"+_15.getDate()):_15.getDate());
}
},isPast:function(_17,_18){
if(!_18){
return (ct.dates.compare(_17,new Date())===1);
}
return (ct.dates.compare(_17,_18)===1);
},compare:function(_19,_1a){
if(_19.getYear()<_1a.getYear()){
return 1;
}else{
if((_19.getYear()==_1a.getYear())&&(_19.getMonth()<_1a.getMonth())){
return 1;
}else{
if((_19.getYear()==_1a.getYear())&&(_19.getMonth()==_1a.getMonth())&&(_19.getDate()<_1a.getDate())){
return 1;
}else{
if(_19.getDate()==_1a.getDate()&&_19.getMonth()==_1a.getMonth()&&_19.getYear()==_1a.getYear()){
return 0;
}else{
return -1;
}
}
}
}
},monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],getTimestamp:function(){
var _1b=new Date();
var ts=""+_1b.getHours()+_1b.getMinutes()+_1b.getSeconds()+_1b.getMilliseconds();
return ts;
},setMonth:function(_1d,_1e){
var _1f=_1d.getMonth();
_1d.setMonth(_1e);
_1e%=12;
var _20=_1d.getMonth();
if(_20===_1e){
return _1d;
}else{
_1d.setDate(0);
return _1d;
}
},fromApacheDirective:function(_21){
var _22=_21.split(" ")[1].split("-");
var _23=$A([]);
$A(ct.dates.monthNames).each(function(_24){
_24=_24.substr(0,3);
_23.push(_24);
});
return new Date(_22[2],$A(_23).indexOf(_22[1]),_22[0]);
}},validator:{_attachedFields:$A([]),attachValidation:function(_25,_26,_27){
ct.validator._attachedFields.push({field:$(_25),errorMessage:_26,condition:_27});
},_initializeForms:function(){
var _28=$A(document.getElementsByTagName("form"));
_28.each(function(_29){
$(_29).observe("submit",ct.validator._validateForm);
_29.ct_validationFailed=true;
});
ct.validator.parseDomTree();
},classNames:{required:"required",number:"number",password:"password",email:"email",creditCardNumber:"creditCardNumber",cvvCodeCredit:"cvvCodeCredit",cvvCodeDebit:"cvvCodeDebit",calendarControl:"datePicker"},validationConditions:{requiredFieldCondition:function(_2a){
if(_2a.readAttribute("selfLabel")!==null){
return ($F(_2a)!==_2a.labelText);
}else{
return ($F(_2a).length!==0);
}
},spaceCondition:function(_2b){
var _2c=/^\s/;
var _2d=_2c.test($F(_2b));
return _2d?false:true;
},validateNumber:function(_2e){
if($F(_2e)!==""){
if($(_2e).readAttribute("selfLabel")===$F(_2e)){
return true;
}
return ($F(_2e)>0);
}else{
return true;
}
},emailCondition:function(_2f){
if($F(_2f)!==""){
if($F(_2f)===""){
return false;
}
var _30=_2f.value;
var _31=_30.indexOf("@");
var _32=_30.lastIndexOf(".");
var _33=_30.indexOf(" ");
if(_31<0||_32<0||_33!=-1){
return false;
}
var _34=/^[A-Za-z0-9._%+-]+@(?:[A-Za-z0-9-]+\.)+[A-Za-z]{2,4}$/;
var _35=_34.test(_30);
return _35?true:false;
}else{
return true;
}
},requiredDropdownCondition:function(_36){
return (_36.selectedIndex!==0);
},validCreditCardCondition:function(_37){
var _38=$F(_37),_39;
if(_38!==""){
var _3a=_38;
_3a=_38.replace(/-/g,"");
_3a=_38.replace(/ /g,"");
_38=_3a.valueOf();
if(_38===null||_38.length<13||_38.search(/[a-zA-Z]+/)!=-1){
return false;
}
var _3b=_38.split("");
_3b.reverse();
var _3c=0;
var tmp=0;
for(var i=0;i<_3b.length;i++){
if((i%2)>0){
tmp=_3b[i]*2;
tmp=(tmp<9?tmp:(tmp-9));
_3c+=tmp;
}else{
_3c+=Number(_3b[i]);
}
}
_39=((_3c%10)===0);
if(_39&&_37.readAttribute("cardtypefieldname")){
var _3f={1:{identifier:[4],length:[13,16]},2:{identifier:[51,52,53,54,55],length:[16]},3:{identifier:[34,37],length:[15]},4:{identifier:[300,301,302,303,304,305,36,38],length:[14]}};
var _40=ct.dom.getParentByTagName(_37,"form")[_37.readAttribute("cardtypefieldname")];
var _41;
$A(_40).each(function(_42){
if(_42.checked){
_41=_42;
}
});
var _43=_3f[_41.value];
if(_43.length.indexOf(_38.length)===-1){
_39=false;
}else{
var _44=false;
for(i=0;i<_43.identifier.length;i++){
if(_38.substr(0,(_43.identifier[i]+"").length)==_43.identifier[i]){
_44=true;
break;
}
}
_39=_44;
}
}
}else{
_39=true;
}
return _39;
},validateMobilePhoneNumberCondition:function(_45){
if($F(_45)!==""){
if(_45.readAttribute("selfLabel")===$F(_45)){
return true;
}else{
if(ct.stringFormatting.stripAlphaChars($F(_45)).length<10){
return false;
}else{
var _46=/[0-9](.)*[0-9](.)*[0-9](.)*[0-9](.)*[0-9](.)*[0-9](.)*[0-9](.)*[0-9](.)*[0-9](.)*[0-9]/;
var _47=_46.test($F(_45));
return (_47)?true:false;
}
}
}else{
return true;
}
},validateLandLanePhoneNumberCondition:function(_48){
if($F(_48)!==""){
if(_48.readAttribute("selfLabel")===$F(_48)){
return true;
}else{
var _49=/[0-9](.)*[0-9](.)*[0-9](.)*[0-9](.)*[0-9](.)*[0-9](.)*[0-9](.)*[0-9]/;
var _4a=_49.test($F(_48));
return (_4a)?true:false;
}
}else{
return true;
}
},validateCvvCodeForCreditCard:function(_4b,_4c){
var _4d;
$A(document.getElementsByName(_4c)).each(function(_4e){
if(_4e.checked){
_4d=$F(_4e);
}
});
if($F(_4b)===""){
return true;
}
var re=null;
if(_4d!=="0"){
if(_4d=="3"){
re=/^\d{4}$/;
}else{
re=/^\d{3}$/;
}
return re.test($F(_4b));
}
return true;
},validateCvvCodeForDebitCard:function(_50){
if($F(_50)===""){
return true;
}
re=/^\d{3}$/;
return re.test($F(_50));
},validateDate:function(_51){
if($F(_51)!==""){
if(_51.readAttribute("selfLabel")===$F(_51)){
return true;
}else{
return (ct.dates.isValidDateString($F(_51)));
}
}else{
return true;
}
},validateMinDate:function(_52,_53){
if($F(_52)===""||_52.readAttribute("selfLabel")===$F(_52)){
return true;
}else{
if(!_53){
_53=_52.readAttribute("mindate");
}
if(_53){
var _54=ct.dates.fromString(_53);
if(_52.readAttribute("offsetdays")){
_54.setDate(_54.getDate()+parseInt(_52.readAttribute("offsetdays"),10));
}
var _55=ct.dates.compare(ct.dates.fromString($F(_52)),_54);
return (_55===0)||(_55===-1);
}else{
return true;
}
}
},validateMaxDate:function(_56){
if($F(_56)===""||_56.readAttribute("selfLabel")===$F(_56)){
return true;
}else{
if(_56.readAttribute("maxdate")){
var _57=ct.dates.fromString(_56.readAttribute("maxdate"));
var _58=ct.dates.compare(ct.dates.fromString($F(_56)),_57);
return (_58===0)||(_58===1);
}else{
return true;
}
}
}},parseDomTree:function(_59){
_59=$(_59?_59:document.body);
if(document.location.protocol==="https:"){
$(document.body).select("a.forceHttp").each(function(_5a){
_5a.href=_5a.href.replace("https","http");
});
}
var _5b=$A($(_59).getElementsByTagName("input"));
_5b.each(function(_5c){
var _5d=ct.validator.attachValidation;
var _5e=ct.validator.validationConditions;
var _5f=ct.validator.classNames;
_5c=$(_5c);
if(((_5c.type.toLowerCase()==="text")||_5c.type.toLowerCase()==="password")&&_5c.hasClassName(_5f.required)){
_5d(_5c,_5c.title+" is a required field.",_5e.requiredFieldCondition);
}
if(((_5c.type.toLowerCase()==="text")||_5c.type.toLowerCase()==="password")&&_5c.hasClassName(_5f.required)){
_5d(_5c,_5c.title+" cannot start with a space.",_5e.spaceCondition);
}
if(((_5c.type.toLowerCase()==="text")||_5c.type.toLowerCase()==="password")&&_5c.hasClassName(_5f.number)){
_5d(_5c,_5c.title+" is not a valid number.",_5e.validateNumber);
}
if(_5c.type.toLowerCase()==="password"&&_5c.hasClassName(_5f.required)&&_5c.hasClassName(_5f.password)){
_5d(_5c,_5c.title+" should be at least 6 characters long. If you have forgotten your password you can follow the link below the field.",function(_60){
if($F(_60)===""){
return true;
}
return ($F(_60).length>=6);
});
}
if(_5c.hasClassName(_5f.cvvCodeCredit)){
if(!_5c.readAttribute("cardtypefieldname")&&!$(_5c.readAttribute("cardtypefieldname"))){
throw new Error("cardtypefieldname attribute not specified for the cvv field. Could not attach validation.");
}else{
_5c.setAttribute("autocomplete","off");
_5d(_5c,"The CVV code entered is not valid",function(_61){
return _5e.validateCvvCodeForCreditCard(_61,_61.readAttribute("cardtypefieldname"));
});
}
}
if(_5c.type.toLowerCase()==="password"&&_5c.hasClassName(_5f.cvvCodeDebit)){
_5c.setAttribute("autocomplete","off");
_5d(_5c,"The CVV code entered is not valid",_5e.validateCvvCodeForDebitCard);
}
if(_5c.type.toLowerCase()==="text"&&_5c.hasClassName(_5f.email)){
_5d(_5c,_5c.title+" should be a valid email address.",_5e.emailCondition);
}
if(_5c.type.toLowerCase()==="text"&&_5c.hasClassName(_5f.creditCardNumber)){
_5c.setAttribute("autocomplete","off");
_5d(_5c,_5c.title+" is not valid.",_5e.validCreditCardCondition);
}
if(_5c.type.toLowerCase()==="text"&&_5c.hasClassName(_5f.calendarControl)){
_5d(_5c,"Please enter a valid "+_5c.title.toLowerCase()+" (dd/mm/yyyy)",_5e.validateDate);
if(_5c.readAttribute("mindate")){
_5d(_5c,"Please choose "+_5c.title.toLowerCase()+" on or after "+_5c.readAttribute("mindate")+" (dd/mm/yyyy).",_5e.validateMinDate);
}else{
if(_5c.readAttribute("mindatefieldid")){
var _62="Please choose a "+_5c.title.toLowerCase();
var _63=_5c.readAttribute("offsetDays");
if(_63){
if(_63==1){
_62+=" at least a day";
}else{
_62+=" at least "+_63+" days";
}
}
_62+=" after the "+$(_5c.readAttribute("mindatefieldid")).title.toLowerCase()+" (dd/mm/yyyy).";
_5d(_5c,_62,function(_64){
return _5e.validateMinDate(_64,$(_5c.readAttribute("mindatefieldid")).value);
});
}
}
if(_5c.readAttribute("maxdate")){
_5d(_5c,"Please choose "+_5c.title.toLowerCase()+" on or before "+_5c.readAttribute("maxdate")+" (dd/mm/yyyy).",_5e.validateMaxDate);
}
}
if((_5c.type.toLowerCase()==="file")&&_5c.hasClassName(_5f.required)){
_5d(_5c,_5c.title+" is a required field.",_5e.requiredFieldCondition);
}
});
var _65=$A(_59.getElementsByTagName("select"));
_65.each(function(_66){
_66=$(_66);
if(_66.hasClassName(ct.validator.classNames.required)){
ct.validator.attachValidation(_66,_66.title+" is a required field.",ct.validator.validationConditions.requiredDropdownCondition);
}
});
var _67=$A(_59.getElementsByTagName("textarea"));
_67.each(function(_68){
_68=$(_68);
if(_68.hasClassName(ct.validator.classNames.required)){
ct.validator.attachValidation(_68,_68.title+" is a required field.",ct.validator.validationConditions.requiredFieldCondition);
}
if((_68.type.toLowerCase()==="textarea")&&_68.hasClassName(ct.validator.classNames.required)){
ct.validator.attachValidation(_68,_68.title+" cannot start with a space.",ct.validator.validationConditions.spaceCondition);
}
});
},_validateForm:function(_69){
var _6a=[],val=ct.validator;
var _6c=$((this.nodeName.toLowerCase()==="form")?this:ct.dom.getParentByTagName(this,"form"));
$A(document.forms).each(function(_6d){
Form.getElements(_6d).each(ct.validator._hideErrorArrow);
});
_6c.ct_validationFailed=false;
var _6e=_6c.getElements();
ct.validator.errors=null;
if($("autocompleteOptionsContainer")){
_69.stop();
return;
}
_6e.each(function(_6f){
val._hideErrorArrow(_6f);
val._attachedFields.each(function(_70){
if(_70.field===_6f){
if(_70.field.disabled===true){
return;
}
if(!_70.condition(_70.field)){
_6a.push({field:_6f,message:_70.errorMessage});
_6c.ct_validationFailed=true;
val._showErrorArrow(_6f);
val.errors=_6a;
}
}
});
});
if(_6c.ct_validationFailed){
_69.stop();
_6c.errors=_6a;
val._showFormErrors(_6c);
}else{
_6c.errors=null;
val._hideFormErrors(_6c);
}
},_showFormErrors:function(_71){
if(_71.readAttribute("errorblockid")&&$(_71.readAttribute("errorblockid"))){
var ol=$(_71.getAttribute("errorblockid")).getElementsByTagName("ol")[0];
while(ol.childNodes.length>0){
ol.removeChild(ol.childNodes[0]);
}
$A(_71.errors).each(function(_73){
ol.appendChild((new Element("li")).update(_73.message));
});
$(_71.readAttribute("errorblockid")).style.display="block";
}
},_hideFormErrors:function(_74){
if(_74.readAttribute("errorblockid")&&$(_74.readAttribute("errorblockid"))){
$(_74.readAttribute("errorblockid")).style.display="none";
}
},_showErrorArrow:function(_75){
if(!_75.previous()||!_75.previous().hasClassName("err_arrow")){
var _76=document.createElement("span");
$(_76).addClassName("err_arrow");
$(_76).innerHTML="&nbsp;";
_75.parentNode.insertBefore(_76,_75);
}
},_hideErrorArrow:function(_77){
if(_77.previous()&&_77.previous().hasClassName("err_arrow")){
_77.previous().remove();
}
}},selfLabels:{addSelfLabel:function(_78,_79){
_78=$(_78);
_78.labelText=_79;
_78.writeAttribute("selfLabel",_79);
_78.observe("focus",function(){
if($F(this)===_79){
this.value="";
$(this).removeClassName("selflabel");
}
});
_78.observe("blur",function(){
if($F(this)===""){
this.value=_79;
$(this).addClassName("selflabel");
}
});
setTimeout(function(){
if($F(_78)===""){
if(document.activeElement){
if(document.activeElement!==_78){
_78.value=_79;
$(_78).addClassName("selflabel");
}
}else{
_78.value=_79;
$(_78).addClassName("selflabel");
}
}
},1000);
},parseDomTree:function(_7a){
_7a=$(_7a?_7a:document.body);
_7a.getElementsBySelector("input[selfLabel]","textarea[selfLabel]").each(function(_7b){
ct.selfLabels.addSelfLabel(_7b,_7b.getAttribute("selfLabel"));
});
}},bubbles:{addBehavior:function(_7c,_7d,_7e){
_7e=_7e?_7e:{};
_7c=$(_7c);
_7c.href="javascript: void(0);";
var _7f;
_7c.observe("click",function(_80){
var _81=false;
if($("ct_bubbleNode")){
if($("ct_bubbleNode").associatedLink==_7c){
_81=true;
}
ct.dom.removeIEIframeFix($("ct_bubbleNode"));
$("ct_bubbleNode").remove();
}
if(!_81){
var _82=new Element("a",{href:"javascript: void(0);"});
_82.update("close");
_82.observe("click",function(){
ct.dom.removeIEIframeFix($("ct_bubbleNode"));
$(_7f).remove();
});
_7f=new Element("div",{"class":"bubble",id:"ct_bubbleNode"});
_7f.associatedLink=_7c;
_7f.appendChild(new Element("div",{"class":"top_border"}));
_7f.childNodes[0].appendChild(_82);
var _83=new Element("div",{"class":"bubble_body"});
_7f.appendChild(_83);
_7f.appendChild(new Element("div",{"class":"bottom_border"}));
_83.innerHTML=(new Template(_7d)).evaluate(_7e);
_7f=$(_7f);
var pos=_7c.cumulativeOffset();
var _85;
if(self.innerWidth){
_85=self.innerWidth;
}else{
if(document.documentElement&&document.documentElement.clientWidth){
_85=document.documentElement.clientWidth;
}else{
if(document.body){
_85=document.body.clientWidth;
}
}
}
if(parseInt(pos[0],10)>(_85/2)){
_7f.addClassName("right_bubble");
_7f.removeClassName("left");
_7f.setStyle({left:"auto",right:(_85-parseInt(pos[0],10)-5)+"px",top:(parseInt(pos[1],10)-20)+"px"});
document.body.appendChild(_7f);
ct.dom.addIEIframeFix(_7f,[0,-20,0,10]);
}else{
_7f.addClassName("left");
_7f.removeClassName("right_bubble");
_7f.setStyle({right:"auto",left:(parseInt(pos[0],10)+55)+"px",top:(parseInt(pos[1],10)-20)+"px"});
document.body.appendChild(_7f);
ct.dom.addIEIframeFix(_7f,[0,-10,0,10]);
}
_7f.observe("click",function(_86){
_86.stop();
});
}
_80.stop();
});
},parseDomTree:function(_87){
_87=$(_87?_87:document.body);
_87.getElementsBySelector("a[bubbleBlock]","a[bubbleblock]").each(function(_88){
if($(_88.getAttribute("bubbleBlock"))){
var _89=$(_88.getAttribute("bubbleBlock"));
var _8a=_89.innerHTML;
_89.style.display="none";
ct.bubbles.addBehavior(_88,_8a);
}else{
ct.console.error("Tried initializing a bubble block for link, but either the bubbleBlock attribute isn't specified, or it doesn't point to a valid block in the DOM.",_88);
}
});
}},dom:{getParentByTagName:function(_8b,_8c){
var _8d=Element.ancestors(_8b);
for(var i=0;i<_8d.length;i++){
if(_8d[i].nodeName.toLowerCase()===_8c.toLowerCase()){
return _8d[i];
}
}
return null;
},addIEIframeFix:function(_8f,_90){
if(Prototype.Browser.IE&&!_8f._fixedIframe){
var _91=document.createElement("iframe");
_90=_90||[0,0,0,0];
_8f=$(_8f);
_91.frameBorder=0;
_91.scrolling="no";
_91.src=window.location.protocol==="https:"?"/blank.html":"about:blank";
_91.style.position="absolute";
_91.style.width=_8f.getWidth()+_90[1]+"px";
_91.style.height=_8f.getHeight()+_90[2]+"px";
var _92=_8f.cumulativeOffset();
_91.style.top=_92[1]+_90[0]+"px";
_91.style.left=_92[0]+_90[3]+"px";
_8f._fixedIframe=_91;
document.body.appendChild(_91);
}
},removeIEIframeFix:function(_93){
if(_93._fixedIframe){
document.body.removeChild(_93._fixedIframe);
_93._fixedIframe=null;
}
}},forms:{rememberCurrentValues:function(_94){
$(_94).getElements().each(function(_95){
switch(_95.nodeName.toLowerCase()){
case "input":
switch(_95.type.toLowerCase()){
case "text":
_95.oldValue=$F(_95);
break;
case "checkbox":
case "radio":
_95.oldValue=_95.checked?"Y":"N";
break;
default:
break;
}
break;
case "textarea":
_95.oldValue=$F(_95);
break;
case "select":
_95.oldValue=_95.selectedIndex;
break;
}
});
},restoreOldValues:function(_96){
$(_96).getElements().each(function(_97){
if(_97.oldValue){
switch(_97.nodeName.toLowerCase()){
case "input":
switch(_97.type.toLowerCase()){
case "text":
_97.value=_97.oldValue;
break;
case "checkbox":
case "radio":
_97.checked=(_97.oldValue==="Y")?true:false;
break;
default:
break;
}
break;
case "textarea":
_97.value=_97.oldValue;
break;
case "select":
_97.selectedIndex=_97.oldValue;
break;
}
}
});
},populate:function(_98,_99){
var _9a=Form.getElements(_98);
Object.keys(_99).each(function(key){
_9a.each(function(_9c){
if(_9c.id===key&&_99[key]){
if(_9c.nodeName.toLowerCase()==="input"){
switch(_9c.type.toLowerCase()){
case "text":
case "password":
case "hidden":
_9c.value=_99[key];
break;
case "checkbox":
case "radio":
if(_99[key].toString().toLowerCase()==="true"){
_9c.checked=true;
}else{
_9c.checked=false;
}
break;
}
}else{
if(_9c.nodeName.toLowerCase()==="select"){
for(var i=0;i<_9c.options.length;i++){
if(_9c.options[i].value.toLowerCase()===_99[key].toString().toLowerCase()){
_9c.selectedIndex=i;
break;
}
}
}else{
if(_9c.nodeName.toLowerCase()==="textarea"){
_9c.value=_99[key];
}
}
}
if($(_9c).hasClassName("selflabel")){
$(_9c).removeClassName("selflabel");
}
}
});
});
},addHiddenField:function(_9e,_9f,_a0){
if(_9e[_9f]){
_9e[_9f].value=_a0;
}else{
_9e.appendChild(new Element("input",{type:"hidden",value:_a0,name:_9f}));
}
}},domIsLoaded:false,stringFormatting:{stripAlphaChars:function(_a1){
var _a2=_a1+"";
return _a2.replace(/[^0-9]/g,"");
},formatForCurrency:function(_a3,_a4){
var _a5="",num,dec;
var _a8=ct.currentCurrency.symbol?ct.currentCurrency.symbol:"Rs.";
_a3/=ct.currentCurrency.rate?ct.currentCurrency.rate:1;
if(_a4){
num=parseFloat(_a3);
num=parseInt(_a3*100,10)/100+"";
dec=num.split(".").length>1?num.split(".")[1]:"";
num=num.split(".")[0];
while(dec.length<2){
dec+="0";
}
}else{
num=parseInt(Math.round(_a3),10)+"";
}
if(num.length>3){
_a5=num.substring(num.length-3,num.length);
num=num.substring(0,num.length-3);
while(num.length>2){
_a5=num.substring(num.length-2,num.length)+","+_a5;
num=num.substring(0,num.length-2);
}
num+=","+_a5;
}
if(_a4){
num+="."+dec;
}
return _a8+" "+num;
}},stickyBlocks:{_definedStickyBlocks:$A([]),makeBlockSticky:function(_a9){
ct.stickyBlocks._definedStickyBlocks.push(_a9);
ct.stickyBlocks.recalculateTop(_a9);
_a9.style.zIndex="2";
},recalculateTop:function(_aa){
_aa.startTop=$(_aa).cumulativeOffset().top;
},parseDomTree:function(_ab){
_ab=$(_ab?_ab:document.body);
$A(_ab.select(".stickyBlock")).each(function(_ac){
ct.stickyBlocks.makeBlockSticky(_ac);
});
function stickyBlockWindowScrollHandler(){
var _ad;
if(self.pageYOffset){
_ad=self.pageYOffset;
}else{
if(document.documentElement&&document.documentElement.scrollTop){
_ad=document.documentElement.scrollTop;
}else{
if(document.body){
_ad=document.body.scrollTop;
}
}
}
$A(ct.stickyBlocks._definedStickyBlocks).each(function(_ae){
var _af;
if(_ad<_ae.startTop){
_af=0;
}else{
if(_ad<_ae.cumulativeOffset().top){
_af=_ad-_ae.startTop;
}else{
if((_ae.getDimensions().height<document.viewport.getHeight())||(_ad>(_ae.cumulativeOffset().top+_ae.getDimensions().height))){
_af=_ad-_ae.startTop;
}else{
_af=_ae.cumulativeOffset().top;
return;
}
}
}
_ae.setStyle({marginTop:_af+"px"});
});
}
Event.stopObserving(window,"scroll",stickyBlockWindowScrollHandler);
Event.observe(window,"scroll",stickyBlockWindowScrollHandler);
}},helperFunctions:{showCVVHintCc:function(_b0,_b1){
$(_b1).style.display="block";
switch(_b0.toLowerCase()){
case "3":
$(_b1).innerHTML="<img src='/images/cvv_images/cc_amex.gif' alt='American Express Verification Code' />";
break;
default:
$(_b1).innerHTML="<img src='/images/cvv_images/cvv_help.gif' alt='Credit Card Verification Code' />";
break;
}
},showCVVHintDc:function(_b2,_b3){
$(_b3).innerHTML="<img src='/images/cvv_images/cc_visa.gif' alt='Visa Verification Code' />";
},toHomeForm:function(_b4,_b5){
ct.cookies.erase("tab");
ct.cookies.create("tab",_b4,365);
if(_b5){
window.location.href="http://"+location.host+"/index.shtml";
}
return false;
},addRooms:function(_b6,_b7,_b8){
var _b9=new Template("<tr class=\"rm_info\"><td></td><td class=\"rm_num\">Room #{num}:</td><td><select id=\"adults#{num}\" name=\"adults#{num}\" size=\"1\" onchange=\"alterChildren('#{num}')\"><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option></select></td><td><select id=\"children#{num}\" name=\"children#{num}\" size=\"1\"><option value=\"0\">0</option><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option></select></td></tr>");
var _ba=new Template("<tr class=\"rm_info\"><td colspan=\"2\"><table><tr><td colspan=\"2\" class=\"room_no\"><label class=\"required\">Room #{num}:</label></td></tr><tr><td><label for=\"adults1\">Adults <span class=\"weak\">(12+ yrs)</span></label><select id=\"adults#{num}\" name=\"adults#{num}\" size=\"1\" onchange=\"alterChildren('#{num}')\"><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option></select></td><td><label for=\"children1\">Children <span class=\"weak\">(0-11 yrs)</span></label><select id=\"children#{num}\" name=\"children#{num}\" size=\"1\"><option value=\"0\">0</option><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option></select></td></tr></table></td></tr>");
var num=parseInt($F(_b6),10);
var _bc=document.getElementById("dynamic_rooms");
var tr,td,_bf,_c0,_c1;
var _c2=document.getElementsByClassName("rm_info",_bc);
var _c3=_c2.length+1;
var _c4;
var _c5;
if(_b7=="include"){
_c5=_ba;
}else{
_c5=_b9;
}
if(num>_c3){
for(var g=_c3+1;g<=num;g++){
_c4=_c5.evaluate({num:g});
if(_b8){
var _c7="";
for(var i=0;i<=_b8;i++){
_c7+="<td></td>";
}
_c4=_c4.replace("<td></td>",_c7);
}
new Insertion.Bottom(_bc,_c4);
}
}else{
if(num<_c3){
for(var h=_c3;h>num;h--){
Element.remove(_c2[h-2]);
}
}
}
},alterChildren:function(num){
var _cb=$("children"+num);
var _cc=_cb.getElementsByTagName("option");
var _cd=parseInt($F("adults"+num),10);
var _ce=_cc.length;
for(var q=0;q<_ce;q++){
if(parseInt(_cc[q].value,10)+_cd>4){
_cb.options[q]=null;
--_ce;
--q;
}
}
var _d0;
if((q-1)<(_d0=4-_cd)){
for(q;q<=_d0;q++){
_cb.options[q]=new Option(q,q);
}
}
},showModalDialog:function(_d1,_d2,_d3,_d4){
var _d5;
if(document.all){
if(self.pageYOffset){
_d5=self.pageYOffset;
}else{
if(document.documentElement&&document.documentElement.scrollTop){
_d5=document.documentElement.scrollTop;
}else{
if(document.body){
_d5=document.body.scrollTop;
}
}
}
function prepareIE(_d6,_d7){
bod=window.top.document.getElementsByTagName("body")[0];
bod.style.height=_d6;
bod.style.overflow=_d7;
htm=window.top.document.getElementsByTagName("html")[0];
htm.style.height=_d6;
htm.style.overflow=_d7;
}
function toggleSelects(_d8){
selects=window.top.document.getElementsByTagName("select");
for(i=0;i<selects.length;i++){
selects[i].style.visibility=_d8;
}
}
prepareIE("100%","hidden");
window.scrollTo(0,0);
toggleSelects("hidden");
}
function resizeHandler(){
if(document.all){
try{
if(Prototype.Browser.IE){
$("TranslucentLayer").style.height=_d9+"px";
}else{
$("TranslucentLayer").style.height=(document.body.offsetHeight>_d9)?document.body.offsetHeight+"px":_d9+"px";
}
}
catch(e){
}
}
_da.style.left=((document.body.offsetWidth-_da.offsetWidth)/2)+"px";
}
Event.observe(window,"resize",resizeHandler);
function closePopup(){
if(document.all){
window.top.scrollTo(0,_d5);
prepareIE("auto","auto");
toggleSelects("visible");
}
Event.stopObserving(window,"resize",resizeHandler);
window.top.document.getElementById("TranslucentLayer").remove();
window.top.document.getElementById("ModalFrame").remove();
}
ct.helperFunctions.hideModalDialog=closePopup;
var _db=new Element("div",{id:"TranslucentLayer"});
$(_db).observe("click",closePopup);
var _da=new Element("div",{id:"ModalFrame"});
var _dc=new Element("div",{"class":"topBorder"});
_dc.appendChild(new Element("a",{id:"close",href:"javascript: window.top.ct.helperFunctions.hideModalDialog();",title:"Close window"}));
_da.appendChild(_dc);
_da.appendChild(new Element("iframe",{src:_d1,frameborder:0,framespacing:0,width:"100%",height:"100%",scrolling:_d4?"no":"yes"}));
_da.setStyle({width:(_d2||"700px"),height:(_d3||"70%")});
document.body.appendChild(_db);
document.body.appendChild(_da);
_da.style.left=((document.body.offsetWidth-_da.offsetWidth)/2)+"px";
var _dd=_da.getHeight();
var _d9=$(document).viewport.getHeight();
_da.setStyle({top:(_d9-_dd)*100/(2*_d9)+"%"});
if(Prototype.Browser.IE){
_db.style.height=_d9+"px";
}else{
_db.style.height=(document.body.offsetHeight>_d9)?document.body.offsetHeight+"px":_d9+"px";
}
},openPopup:function(_de){
var _df=document.viewport.getDimensions();
_de=_de||{};
_de.height=_de.height||(_df.height/2);
_de.width=_de.width||(_df.width/2);
_de.left=_de.left||((_df.width-_de.width)/2);
_de.top=_de.top||((_df.height-_de.height)/2);
_de.toolbar=_de.toolbar?1:0;
_de.location=_de.location?1:0;
_de.status=_de.status?1:0;
_de.menubar=_de.menubar?1:0;
_de.scrollbars=_de.scrollbars?1:0;
_de.resizable=_de.resizable?1:0;
window.open(_de.url||"about:blank","wnd"+Math.round(Math.random()*1000),"toolbar="+_de.toolbar+",location="+_de.location+",status="+_de.status+",menubar="+_de.menubar+",scrollbars="+_de.scrollbars+",resizable="+_de.resizable+",width="+_de.width+",height="+_de.height+",left="+_de.left+",top="+_de.top);
},prefetchResources:function(){
$$("link[rel=prefetch]").each(function(_e0){
new Ajax.Request(_e0.href,{method:"get"});
});
},showThawteLogo:function(_e1){
var _e2=new Element("iframe",{src:"/includes/thwarte-logo.html",frameBorder:0,width:"0",height:"0",scrolling:"no"});
function resizeIframe(){
var _e3=_e2.contentWindow.document||_e2.document;
_e2.style.width="100%";
_e2.style.height=_e3.body.scrollHeight+"px";
}
_e2.onload=resizeIframe;
_e2.onreadystatechange=function(){
if(_e2.readyState==="complete"){
resizeIframe();
}
};
_e1.appendChild(_e2);
},logToServer:function(app,tag,_e6){
try{
new Ajax.Request("/urltrack/"+app+"_"+tag,{parameters:_e6||{},method:"get"});
}
catch(e){
}
},resetCurrency:function(_e7){
ct.currentCurrency={name:"Indian Rupees",code:"INR",rate:1,symbol:"Rs."};
if(_e7){
ct.cookies.erase("currency-pref");
}
}},genericBlocks:{consentBlock:function(_e8){
if($(_e8).hasClassName("required")){
ct.validator.attachValidation($("consent"),"Please go through the booking policies and terms that are linked from below. Then mark the checkbox if you agree, we know it&rsquo;s boring but it&rsquo;s important.",function(_e9){
return (_e9.checked);
});
}
},signupBlock:function(_ea){
ct.validator.attachValidation($("confirmUname"),"The email addresses you have entered do not match. Please re-check these fields.",function(){
if($F("confirmUname")===""||$F("newUname")===""){
return true;
}
return ($F("confirmUname")===$F("newUname"));
});
},paymentBlock:function(_eb){
$A(document.getElementsByName("card_type")).each(function(_ec){
Event.observe(_ec,"click",function(){
ct.helperFunctions.showCVVHintCc($F(_ec),"cvvImageCc");
});
var _ed=$("cc_disclaimer"),_ee=$("dt_cc_disclaimer");
if($("vTabs").getElementsByTagName("a")[1]&&_ed){
Event.observe(_ec,"click",function(){
if($F(_ec)==3){
$(_ed,_ee).invoke("setStyle",{display:"block"});
_ed.innerHTML="We accept only American Express cards issued in India";
}else{
if($F(_ec)==4){
$(_ed,_ee).invoke("setStyle",{display:"block"});
_ed.innerHTML="We accept only Citibank Diners cards issued in India";
}else{
$(_ed,_ee).invoke("setStyle",{display:"none"});
}
}
});
}else{
if(_ed){
$(_ed,_ee).invoke("setStyle",{display:"block"});
_ed.innerHTML="We accept only credit cards issued in India";
}
}
});
var _ef=$("vTabs").select("li");
_ef.each(function(tab,_f1){
if(_f1===0){
$(tab).addClassName("active");
$(tab.id.split("_tab")[0]).style.display="block";
}
$(tab.getElementsByTagName("a")[0]).observe("click",function(){
_ef.each(function(_f2){
if(_f2===tab){
$(_f2).select("a")[0].addClassName("active");
$(_f2.id.split("_tab")[0]).style.display="block";
}else{
$(_f2).select("a")[0].removeClassName("active");
$(_f2.id.split("_tab")[0]).style.display="none";
}
});
});
});
$("CCNotAccepted","DCNotAccepted").invoke("hide");
if($("copyContactToBilling")){
$("copyContactToBilling").observe("click",function(){
try{
function populateField(_f3,_f4){
if($F(_f3)&&$F(_f3)!==$(_f3).readAttribute("selflabel")){
if($(_f3).id==="contactCountry"){
if($F(_f3).toLowerCase().strip()==="india"){
$(_f4).value="India";
$(_f4).removeClassName("selflabel");
$("billCountryCode").value="IN";
}else{
$(_f4).value=$(_f4).readAttribute("selflabel");
$("billCountryCode").value="";
}
}else{
$(_f4).value=$F(_f3);
$(_f4).removeClassName("selflabel");
}
}
}
var _f5=[{f:"contactFirstName",t:"billFirstName"},{f:"contactLastName",t:"billLastName"},{f:"contactAddress",t:"billAddress"},{f:"contactCity",t:"billCity"},{f:"contactState",t:"billState"},{f:"contactPin",t:"billPin"},{f:"contactCountry",t:"billCountry"}];
$A(_f5).each(function(_f6){
populateField(_f6.f,_f6.t);
});
}
catch(e){
console.log(e);
}
});
}
if(_eb.hasClassName("withVerification")){
function performVerification(_f7){
var _f8=Event.findElement(_f7,"form");
if(!_f8.ct_validationFailed){
var _f9="product="+_eb.readAttribute("product")+"&";
var _fa;
if(_f8.id=="credit_card"){
var _fb;
$A(document.getElementsByName("card_type")).each(function(_fc){
if(_fc.checked){
_fb=$F(_fc);
}
});
_f9+="payment_mode=C&card_type="+_fb+"&card_number="+$F("creditCardNumber");
_fa=$("CCNotAccepted");
}else{
_f9+="payment_mode=D&issuing_bank="+$F("issuingBank")+"&card_number="+$F("debitCardNumber");
_fa=$("DCNotAccepted");
}
if(_eb.readAttribute("product").toUpperCase()==="H"){
var _fd=_f8.id;
var _fe=document.forms[_fd];
_f9+="&userid="+_fe.userid.value+"&title="+_fe.title.value+"&firstName="+_fe.firstName.value+"&lastName="+_fe.lastName.value+"&username="+_fe.username.value+"&contact1="+_fe.contact1.value+"&contact2="+_fe.contact2.value;
_f9+="&cvv_code="+_fe.cvv_code.value+"&bill_name="+_fe.bill_name.value+"&card_expiration_month="+_fe.card_expiration_month.value+"&card_expiration_year="+_fe.card_expiration_year.value;
_f9+="&hotelid="+_fe.hotelid.value+"&bookingCode="+_fe.bookingCode.value+"&roomtypecode="+_fe.roomtypecode.value+"&bookParams="+escape(_fe.bookParams.value);
var _ff;
var _100=$("loyaltyCash").value;
_fe.loyaltyCP.value=_100;
if(_100===""||parseInt(_100,10)===0){
_ff="N";
}else{
if($("cleartripCashY").checked&&(_100!==""&&_100!=="0")){
_ff="Y";
}else{
_ff="N";
}
}
_fe.loyaltyYN.value=_ff;
_f9+="&loyaltyYN="+_fe.loyaltyYN.value+"&loyaltyCP="+_fe.loyaltyCP.value;
}
_f9+="&ts="+ct.dates.getTimestamp();
function failureHandler(){
_fa.style.display="block";
$(_f8).enable();
}
$("progress_img").style.display="";
_fa.style.display="none";
$(_f8).disable();
new Ajax.Request(_eb.readAttribute("verificationurl"),{method:(_eb.readAttribute("product").toUpperCase()==="H")?"post":"get",parameters:_f9,onSuccess:function(_101){
switch(_101.responseText.toLowerCase()){
case "true":
$(_f8).enable();
_f8.submit();
break;
default:
failureHandler();
break;
}
$("progress_img").style.display="none";
},onFailure:function(_102){
$("progress_img").style.display="none";
$(_f8).enable();
_f8.submit();
}});
Event.stop(_f7);
}
}
if($("credit_card")){
$("credit_card").observe("submit",performVerification);
}
if($("debit_card")){
$("debit_card").observe("submit",performVerification);
}
$A(["credit_card","debit_card","net_banking"]).each(function(_103){
if($(_103)){
$(_103).setAttribute("autocomplete","off");
$(_103).observe("submit",function(evt){
if($("cleartripCashY")){
ct.forms.addHiddenField(evt.findElement("form"),"redeem",($("cleartripCashY").checked?"true":"false"));
if(_103==="net_banking"&&!$(_103).ct_validationFailed){
$(_103).submit();
}
}
});
}
});
}
},addPaymentBehaviorFromJSON:function(_105,_106){
_105.jsonData=_106;
$("cleartripCashApplicable").innerHTML=ct.stringFormatting.formatForCurrency(_105.jsonData.lp);
if(!_105.eventsAttached){
var _107=$A(["cc","dc","nb"]),_108;
function paymentModeChanged(mode){
mode=(_107.indexOf(mode)!==-1)?mode:_108;
_108=mode;
var _10a=getCurrentValue(mode),_10b=_105.jsonData.availability,_10c=_105.jsonData.tot,_10d=$A([]),_10e;
if(!_105.jsonData.err&&_105.jsonData.lp&&$("cleartripCashY").checked){
_10c-=_105.jsonData.lp;
_10e=true;
if($("rtLoyaltyLabel")){
$("rtLoyaltyLabel","rtLoyaltyAmount").invoke("show");
$("rtLoyaltyAmount").innerHTML="("+ct.stringFormatting.formatForCurrency(_105.jsonData.lp)+")";
if($("loyaltyCash")){
$("loyaltyCash").value=_105.jsonData.lp;
}
_10d.push("rtLoyaltyLabel");
_10d.push("rtLoyaltyAmount");
}
}else{
if($("rtLoyaltyLabel")){
_10e=false;
$("rtLoyaltyLabel","rtLoyaltyAmount").invoke("hide");
}
}
if(_10a===null||_10a===undefined){
if($("rtProcessingLabel")){
$("rtProcessingLabel","rtProcessingAmount").invoke("hide");
}
$("ProcessingFee").hide();
}else{
if($("rtProcessingLabel")){
if(_105.jsonData[mode][_10a].pc===0){
$("rtProcessingLabel","rtProcessingAmount").invoke("hide");
}else{
$("rtProcessingLabel","rtProcessingAmount").invoke("show");
$("rtProcessingAmount").innerHTML=ct.stringFormatting.formatForCurrency(_105.jsonData[mode][_10a][(_10e?"wl":"xl")],true);
_10d.push("rtProcessingLabel");
_10d.push("rtProcessingAmount");
}
}
$("processingFeeAmount").innerHTML=_105.jsonData[mode][_10a].pc;
if(_105.jsonData[mode][_10a].pc===0){
$("ProcessingFee").hide();
}else{
$("ProcessingFee").show();
_10d.push("processingFeeAmount");
}
_10c+=_105.jsonData[mode][_10a][(_10e?"wl":"xl")];
}
_10c=Math.round(_10c);
if($("rtTotalLabel")){
_10d.push("rtTotalLabel");
_10d.push("rtTotalAmount");
$("rtTotalAmount").innerHTML=ct.stringFormatting.formatForCurrency(_10c);
}
if($("trainsAvailability")&&_10b){
$("trainsAvailability").show();
$("trainsAvailabilityValue").innerHTML=_10b;
}
$("formTotal").innerHTML=ct.stringFormatting.formatForCurrency(_10c);
_10d.push("formTotal");
if(window.Effect){
_10d.each(function(_10f){
new Effect.Highlight($(_10f));
});
}
}
function getCurrentValue(mode){
var _111;
switch(_107.indexOf(mode)){
case 0:
$A(document.getElementsByName("card_type")).each(function(_112){
if(_112.checked){
_111=$F(_112);
}
});
break;
case 1:
_111=$F("issuingBank");
_111=(_111==="0")?null:_111;
break;
case 2:
_111=$F("transferBank");
_111=(_111==="0")?null:_111;
break;
}
return _111;
}
$("vTabs").select("li a").each(function(tab,_114){
$(tab).observe("click",function(){
paymentModeChanged(_107[_114]);
});
if($(ct.dom.getParentByTagName(tab,"li")).hasClassName("active")){
paymentModeChanged(_107[_114]);
}
});
$A(document.getElementsByName("card_type")).invoke("observe","click",function(){
paymentModeChanged(_107[0]);
});
$("issuingBank").observe("change",function(){
paymentModeChanged(_107[1]);
});
$("transferBank").observe("change",function(){
paymentModeChanged(_107[2]);
});
$("cleartripCashY","cleartripCashN").invoke("observe","click",paymentModeChanged);
if(_105.jsonData.lp===0||_105.jsonData.err){
$("CleartripCash").hide();
$("cleartripCashN").checked=false;
}else{
$("CleartripCash").show();
$("cleartripCashY").checked=true;
}
$("paymentSubmit").observe("click",function(){
var _115=$(["credit_card","debit_card","net_banking"][_107.indexOf(_108)]),evt;
if(document.createEvent){
evt=document.createEvent("HTMLEvents");
evt.initEvent("submit",true,true);
evt.eventName="submit";
}else{
evt=document.createEventObject();
evt.eventType="onsubmit";
evt.eventName="submit";
}
if(document.createEvent){
_115.dispatchEvent(evt);
}else{
_115.fireEvent(evt.eventType,evt);
}
});
_105.eventsAttached=true;
}
},flightForm:function(_117){
function isInternational(){
for(var i=0,_119=ct.airports.all.length;i<_119;i++){
if(ct.airports.all[i].k===$("from").value.toUpperCase()||ct.airports.all[i].k===$("to").value.toUpperCase()){
return false;
}
}
return true;
}
function modifyDropdowns(){
var _11a=$F("adults"),_11b=$F("children"),_11c=$F("infants"),i,_11e;
$A($("children").childNodes).each(Element.remove);
$A($("infants").childNodes).each(Element.remove);
for(i=0;i<=_11a;i++){
_11e=new Element("option",{value:i}).update(i);
if(_11c==i){
_11e.setAttribute("selected","selected");
}
$("infants").appendChild(_11e);
}
for(i=0;i<(10-_11a);i++){
_11e=new Element("option",{value:i}).update(i);
if(_11b==i){
_11e.setAttribute("selected","selected");
}
$("children").appendChild(_11e);
}
}
function prepopulateForm(){
var _11f=ct.cookies.read("flight_sr");
_117.action="/flights/search";
if(_11f){
function populateTextField(_120,_121){
if(document.activeElement){
if(document.activeElement!==_120){
_120.value=_121;
}
}else{
_120.value=_121;
}
}
_11f=_11f.toQueryParams("&");
if((_11f.rnd_one==="R")||(_11f.rnd_one==="C")){
if(!ct.dates.isPast(ct.dates.fromString(_11f.depart_date))){
populateTextField(_117.depart_date,_11f.depart_date);
}
if(!ct.dates.isPast(ct.dates.fromString(_11f.return_date))){
populateTextField(_117.return_date,_11f.return_date);
}
$("rnd_trip").checked=true;
makeRoundTrip();
}else{
if(_11f.rnd_one==="O"){
$("one_way").checked=true;
makeOneWay();
if(!ct.dates.isPast(ct.dates.fromString(_11f.depart_date))){
populateTextField(_117.depart_date,_11f.depart_date);
}
}
}
$(_117.from).writeAttribute("preselect",_11f.from);
if(_117.origin){
_117.origin.value=_11f.origin||"";
}
_117.from.value=_11f.from||"";
_117.destination.value=_11f.destination||"";
_117.to.value=_11f.to||"";
_117.adults.value=_11f.adults;
_117.childs.value=_11f.childs;
_117.infants.value=_11f.infants;
if(_11f.flexi_search){
if($("flexi_search")){
_117.flexi_search.checked=true;
}
}
}
}
$("adults","children","infants").each(function(_122){
$A(_122.childNodes).each(Element.remove);
var _123=(_122.id==="adults")?1:0;
for(var i=_123;i<10;i++){
_122.appendChild(new Element("option",{value:i}).update(i));
}
});
$("adults").observe("change",modifyDropdowns);
if(!_117.hasClassName("dontprepopulate")){
prepopulateForm();
modifyDropdowns();
}
$(_117).observe("submit",function(_125){
if(!(_117.errors&&_117.errors.length>0)&&!$(_117).hasClassName("noCookie")){
ct.cookies.create("flight_sr",$(_117).serialize(),365);
}
if(isInternational()){
if(_117.hasClassName("external_offers")){
_117.action="http://www.cleartrip.com/flights/international/search";
}else{
_117.action="/flights/international/search";
}
}else{
if(_117.hasClassName("external_offers")){
_117.action="http://www.cleartrip.com/flights/search";
}else{
_117.action="/flights/search";
}
}
});
if($("adv_link")){
$("adv_link").observe("click",function(_126){
setAdvCookie();
$("advanced_search1").toggle();
$("adv_link").toggleClassName("toggle_open");
$("adv_link").toggleClassName("toggle_closed");
});
}
(function(){
var _127=ct.cookies.read("adv1");
if($("adv_link")&&_127==="off"&&$("advanced_search1").style.display==="none"){
$("advanced_search1").toggle();
$("adv_link").toggleClassName("toggle_open");
$("adv_link").toggleClassName("toggle_closed");
}
})();
var _128=ct.validator.attachValidation;
_128($("destination_autocomplete"),"Please choose a destination that is different from your origin.",function(){
if(($F("from")!=="")&&($F("to")!=="")){
return $F("from")!==$F("to");
}else{
return true;
}
});
_128($("infants"),"You cannot have more infants than adults travelling on a flight.",function(){
return $F("infants")<=$F("adults");
});
_128($("dpt_date"),"Please choose a departure date at least two days from today for international flights",function(){
if(!isInternational()){
return true;
}else{
if(!ct.dates.isValidDateString($F("dpt_date"))){
return true;
}else{
var _129=ct.dates.fromString($("dpt_date").readAttribute("mindate"));
_129.setDate(_129.getDate()+1);
return (ct.dates.fromString($F("dpt_date"))-_129)>0;
}
}
});
function toggleModifySearch(){
$("modify_search_open").toggle();
$("mod_link").toggleClassName("toggle_open");
$("mod_link").toggleClassName("toggle_closed");
ct.stickyBlocks.recalculateTop($("filter"));
}
$("rnd_trip").observe("click",makeRoundTrip);
$("one_way").observe("click",makeOneWay);
if($("mod_link")){
$("mod_link").observe("click",toggleModifySearch);
}
if($("close_link")){
$("close_link").observe("click",toggleModifySearch);
}
if(!ct.genericBlocks.flightForm.helpers){
ct.genericBlocks.flightForm.helpers={};
}
var _12a=ct.genericBlocks.flightForm.helpers;
function makeOneWay(){
$("rtn_date").setAttribute("disabled","disabled");
$("ret_time").setAttribute("disabled","disabled");
_117.action="/flights/search";
}
function makeRoundTrip(){
$("rtn_date").removeAttribute("disabled");
$("ret_time").removeAttribute("disabled");
_117.action="/flights/search";
}
_12a.makeOneWay=makeOneWay;
_12a.makeRoundTrip=makeRoundTrip;
if($("one_way").checked){
makeOneWay();
}else{
if($("rnd_trip").checked){
makeRoundTrip();
}
}
function setAdvCookie(){
var _12b=ct.cookies.read("adv1");
if(_12b===""||_12b===null||_12b==="off"){
ct.cookies.erase("adv1");
ct.cookies.create("adv1","on",365);
}else{
ct.cookies.erase("adv1");
ct.cookies.create("adv1","off",365);
}
}
},hotelForm:function(_12c){
ct.validator.attachValidation($("rooms"),"Please check the number of rooms you have chosen.",function(){
var _12d=parseInt($F("rooms"),10);
for(var i=0;i<_12d;i++){
if($("adults"+(i+1))===null||$("children"+(i+1))===null){
return false;
}
}
return true;
});
if(!_12c.hasClassName("dontprepopulate")){
(function(){
if(ct.cookies.read("hotel_sr")&&!(_12c.id==="fetch_rates")){
var _12f=ct.cookies.read("hotel_sr").toQueryParams("&");
_12c.city.value=_12f.city;
_12c.state.value=_12f.state;
_12c.country.value=_12f.country;
_12c.dest_code.value=_12f.dest_code;
if(!ct.dates.isPast(ct.dates.fromString(_12f.chk_in))){
_12c.chk_in.value=_12f.chk_in;
}
if(!ct.dates.isPast(ct.dates.fromString(_12f.chk_out))){
_12c.chk_out.value=_12f.chk_out;
}
$("rooms").value=_12f.num_rooms;
if($("showDebug")&&_12f.showDebug){
$("showDebug").checked=true;
}
if($("NonResident2")!==null&&$("NonResident2")!==undefined){
$("NonResident2").checked=false;
}
ct.helperFunctions.addRooms(_12c.num_rooms);
switch(_12f.num_rooms){
case "1":
case "2":
case "3":
case "4":
$("adults1").value=_12f.adults1;
$("children1").value=_12f.children1;
if(_12f.num_rooms=="1"){
break;
}
case "2":
case "3":
case "4":
$("adults2").value=_12f.adults2;
$("children2").value=_12f.children2;
if(_12f.num_rooms=="2"){
break;
}
case "3":
case "4":
$("adults3").value=_12f.adults3;
$("children3").value=_12f.children3;
if(_12f.num_rooms=="3"){
break;
}
case "4":
$("adults4").value=_12f.adults4;
$("children4").value=_12f.children4;
break;
}
}
})();
}
$(_12c).observe("submit",function(_130){
if(!_12c.errors){
var _131=false;
if($("NonResident2")!==null&&$("NonResident2")!==undefined&&$("NonResident2").checked){
_131=true;
}
if($F("dest_code")==="WCT"||_131){
_12c.action="/hotels/search";
}else{
if($("price_form")){
_12c.action=$("price_form").value;
}else{
_12c.action="/hotels/search";
}
if(_12c.readAttribute("campaign")){
_12c.action+="?campaign="+_12c.readAttribute("campaign");
}
}
if($F("dest_code")=="WCT"||_131){
var _132=$("checkin_date").value.split("/");
$("doa_dd").value=_132[0];
$("doa_mm").value=_132[1];
$("doa_yy").value=_132[2];
var _133=$("checkout_date").value.split("/");
$("dod_dd").value=_133[0];
$("dod_mm").value=_133[1];
$("dod_yy").value=_133[2];
var _134=$F("rooms");
var _135=0;
var _136=0;
for(var a=0;a<parseInt(_134,10);a++){
_135+=parseInt(_12c["adults"+(a+1)].value,10);
_136+=parseInt(_12c["children"+(a+1)].value,10);
}
$("num_adults").value=Math.ceil(_135/parseInt(_134,10));
$("num_children").value=Math.ceil(_136/parseInt(_134,10));
}
ct.cookies.create("hotel_sr",$(_12c).serialize(),365);
if(_12c.id==="fetch_rates"){
$("wait_img").show();
Event.stop(_130);
var _138=window.location.href;
var _139="/hotels/roomrates";
if(_138.indexOf("allowed_form")!=-1){
_139=_139+"?allowed_form=true";
}
new Ajax.Request(_139,{method:"get",parameters:$(_12c.id).serialize()+"&ts="+ct.dates.getTimestamp(),onSuccess:function(_13a){
_12c.enable();
$("wait_img").hide();
if(_13a.responseText==="NO HOTELS"){
$("RoomRatesTable").innerHTML="<p><strong>Sorry, we couldn't find any available rooms for the dates you picked.</p></strong><p>You can try again with different dates.</p>";
}else{
$("RoomRatesTable").innerHTML=_13a.responseText;
_12c.hide();
}
if(window.Effect){
new Effect.Appear("RoomRatesTable");
}else{
$("RoomRatesTable").style.display="block";
}
},onFailure:function(_13b){
$("fetch_rates").enable();
$("wait_img").hide();
alert("Sorry, we weren't able to get room rates for this hotel at this time. Please try again later.");
}});
_12c.disable();
}
}
});
function toggleModifySearch(){
$("modify_search_open").toggle();
$("mod_link").toggleClassName("toggle_open");
$("mod_link").toggleClassName("toggle_closed");
ct.stickyBlocks.recalculateTop($("filter"));
}
if($("mod_link")){
$("mod_link").observe("click",toggleModifySearch);
}
if($("close_link")){
$("close_link").observe("click",toggleModifySearch);
}
},trainForm:function(_13c){
var _13d=ct.validator.attachValidation;
_13d($("train_adults"),"You cannot search for more than a total of 6 passengers.",function(){
return (+$F("train_adults")+(+$F("train_children"))+(+$F("train_male_seniors"))+(+$F("train_female_seniors")))<=6;
});
_13d($("train_adults"),"You must have at least 1 passenger to search.",function(){
return (+$F("train_adults")+(+$F("train_children"))+(+$F("train_male_seniors"))+(+$F("train_female_seniors")))>0;
});
_13d($("to_station"),"Please choose a destination that is different from your origin.",function(){
return $F("from_station")!==$F("to_station");
});
function prepopulateForm(){
var _13e=ct.cookies.read("train_sr");
if(_13e){
function populateTextField(_13f,_140){
if(document.activeElement){
if(document.activeElement!==_13f){
_13f.value=_140;
}
}else{
_13f.value=_140;
}
}
_13e=_13e.toQueryParams("&");
populateTextField(_13c.from_station,_13e.from_station);
populateTextField(_13c.to_station,_13e.to_station);
if(!ct.dates.isPast(ct.dates.fromString(_13e.depart_date))){
populateTextField(_13c.depart_date,_13e.depart_date);
}
_13c.adults.value=_13e.adults;
_13c.children.value=_13e.children;
_13c.male_seniors.value=_13e.male_seniors;
_13c.female_seniors.value=_13e.female_seniors;
_13c["train[class]"].value=_13e["train[class]"];
}
}
prepopulateForm();
function toggleModifySearch(){
$("modify_search_open").toggle();
$("mod_link").toggleClassName("toggle_open");
$("mod_link").toggleClassName("toggle_closed");
ct.stickyBlocks.recalculateTop($("filter"));
}
if($("mod_link")){
$("mod_link").observe("click",toggleModifySearch);
}
if($("close_link")){
$("close_link").observe("click",toggleModifySearch);
}
$(_13c).observe("submit",function(){
ct.cookies.create("train_sr",$(_13c).serialize(),365);
});
},primaryNavFlyoutMenu:function(){
if($("MainTabs")){
var _141=$($("MainTabs").getElementsByTagName("li")[3]);
if($("more_menu")){
$("more_menu").setStyle({top:(_141.cumulativeOffset().top+_141.getHeight()+6)+"px",left:_141.cumulativeOffset().left+"px"});
$(_141.getElementsByTagName("a")[0]).observe("click",function(evt){
if($("more_menu").style.display==="none"){
$("more_menu").style.display="block";
$(_141).addClassName("show_menu");
ct.dom.addIEIframeFix($("more_menu"));
}else{
$("more_menu").style.display="none";
ct.dom.removeIEIframeFix($("more_menu"));
$(_141).removeClassName("show_menu");
}
evt.stop();
});
Event.observe(document,"click",function(){
if($("more_menu").style.display==="block"){
$("more_menu").style.display="none";
ct.dom.removeIEIframeFix($("more_menu"));
$(_141).removeClassName("show_menu");
}
});
}
}
},parseDomTree:function(_143){
_143=_143||document.body;
$A(document.getElementsByClassName("consent")).each(ct.genericBlocks.consentBlock);
$A(document.getElementsByClassName("paymentBlock")).each(ct.genericBlocks.paymentBlock);
$A(document.getElementsByClassName("loginBlock")).each(ct.genericBlocks.signupBlock);
if($("AirSearch")){
ct.genericBlocks.flightForm($("AirSearch"));
}
if($("modify_air_search")){
ct.genericBlocks.flightForm($("modify_air_search"));
}
if($("home_hotels")){
ct.genericBlocks.hotelForm($("home_hotels"));
}
if($("hotelModifySearch")){
ct.genericBlocks.hotelForm($("hotelModifySearch"));
}
if($("fetch_rates")){
ct.genericBlocks.hotelForm($("fetch_rates"));
}
if($("rail_search")){
ct.genericBlocks.trainForm($("rail_search"));
}
setTimeout(ct.genericBlocks.primaryNavFlyoutMenu,1);
}},airports:{featured:[{k:"BLR",v:"Bangalore"},{k:"BOM",v:"Bombay"},{k:"CCU",v:"Calcutta"},{k:"DEL",v:"Delhi"},{k:"GOI",v:"Goa"},{k:"HYD",v:"Hyderabad"},{k:"MAA",v:"Madras"},{k:"PNQ",v:"Pune"}],all:[{k:"IXA",v:"Agartala"},{k:"AGX",v:"Agatti Island"},{k:"AGR",v:"Agra"},{k:"AMD",v:"Ahmedabad"},{k:"AJL",v:"Aizawl"},{k:"IXD",v:"Allahabad"},{k:"ATQ",v:"Amritsar"},{k:"IXU",v:"Aurangabad"},{k:"IXB",v:"Bagdogra"},{k:"BLR",v:"Bengaluru"},{k:"BLR",v:"Bangalore"},{k:"IXG",v:"Belgaum"},{k:"BEP",v:"Bellary"},{k:"BHU",v:"Bhavnagar"},{k:"BHO",v:"Bhopal"},{k:"BBI",v:"Bhubaneswar"},{k:"BHJ",v:"Bhuj"},{k:"BOM",v:"Bombay"},{k:"CCU",v:"Calcutta"},{k:"CCJ",v:"Calicut"},{k:"IXC",v:"Chandigarh"},{k:"MAA",v:"Chennai"},{k:"COK",v:"Cochin"},{k:"CJB",v:"Coimbatore"},{k:"DED",v:"Dehradun"},{k:"DEL",v:"Delhi"},{k:"DHM",v:"Dharamsala"},{k:"DIB",v:"Dibrugarh"},{k:"DMU",v:"Dimapur"},{k:"DIU",v:"Diu"},{k:"GAY",v:"Gaya"},{k:"GOI",v:"Goa"},{k:"GOP",v:"Gorakhpur"},{k:"GAU",v:"Guwahati"},{k:"GWL",v:"Gwalior"},{k:"HBX",v:"Hubli"},{k:"HYD",v:"Hyderabad"},{k:"IMF",v:"Imphal"},{k:"IDR",v:"Indore"},{k:"JLR",v:"Jabalpur"},{k:"JAI",v:"Jaipur"},{k:"JSA",v:"Jaisalmer"},{k:"IXJ",v:"Jammu"},{k:"JGA",v:"Jamnagar"},{k:"IXW",v:"Jamshedpur"},{k:"JDH",v:"Jodhpur"},{k:"JRH",v:"Jorhat"},{k:"IXH",v:"Kailashahar"},{k:"IXY",v:"Kandla"},{k:"KNU",v:"Kanpur"},{k:"KAT",v:"Katra"},{k:"HJR",v:"Khajuraho"},{k:"COK",v:"Kochi"},{k:"KLH",v:"Kolhapur"},{k:"CCU",v:"Kolkata"},{k:"KTU",v:"Kota"},{k:"CCJ",v:"Kozhikode"},{k:"KUU",v:"Kulu"},{k:"IXL",v:"Leh"},{k:"IXI",v:"Lilabari"},{k:"LKO",v:"Lucknow"},{k:"LUH",v:"Ludhiana"},{k:"MAA",v:"Madras"},{k:"IXM",v:"Madurai"},{k:"IXE",v:"Mangalore"},{k:"BOM",v:"Mumbai"},{k:"NAG",v:"Nagpur"},{k:"DEL",v:"New Delhi"},{k:"IXP",v:"Pathankot"},{k:"PAT",v:"Patna"},{k:"PNQ",v:"Poona"},{k:"PBD",v:"Porbandar"},{k:"IXZ",v:"Port Blair"},{k:"PNQ",v:"Pune"},{k:"BEK",v:"Puttaparthi"},{k:"RPR",v:"Raipur"},{k:"RJA",v:"Rajahmundry"},{k:"RAJ",v:"Rajkot"},{k:"IXR",v:"Ranchi"},{k:"SHL",v:"Shillong"},{k:"SLV",v:"Shimla"},{k:"IXS",v:"Silchar"},{k:"SXR",v:"Srinagar"},{k:"STV",v:"Surat"},{k:"TEZ",v:"Tezpur"},{k:"TEI",v:"Tezu"},{k:"TIR",v:"Thirupati"},{k:"TRV",v:"Thiruvananthapuram"},{k:"TRZ",v:"Tiruchirapally"},{k:"TIR",v:"Tirupati"},{k:"TRV",v:"Trivandrum"},{k:"TCR",v:"Tuticorn"},{k:"UDR",v:"Udaipur"},{k:"BDQ",v:"Vadodara"},{k:"SAN",v:"Vaishnodevi"},{k:"VNS",v:"Varanasi"},{k:"VGA",v:"Vijayawada"},{k:"VTZ",v:"Visakhapatnam"},{k:"VTZ",v:"Vishakhapatnam"},{k:"WGC",v:"Warangal"}]},controls:{Calendar:function(_144,_145){
var _146=$(document.createElement("a"));
var self=this,_148;
if(!_145){
_145={};
}
_145.firstDayOfWeek=_145.firstDayOfWeek||(_144.readAttribute("firstday")?parseInt(_144.readAttribute("firstday"),10):1);
_145.minDate=_145.minDate||(_144.readAttribute("mindate")?ct.dates.fromString(_144.readAttribute("mindate")):new Date());
_145.minDateField=_145.minDateField||(_144.readAttribute("mindatefieldid")?$(_144.readAttribute("mindatefieldid")):null);
_145.calendarCount=_145.calendarCount||(_144.readAttribute("calendarcount")?parseInt(_144.readAttribute("calendarcount"),10):2);
_145.maxDate=_145.maxDate||(_144.readAttribute("maxdate")?ct.dates.fromString(_144.readAttribute("maxdate")):(new Date(new Date(_145.minDate).setFullYear(_145.minDate.getFullYear()+1))));
_145.offsetDays=_145.offsetDays||(_144.readAttribute("offsetdays")?parseInt(_144.readAttribute("offsetdays"),10):0);
_145.defaultDate=_145.defaultDate||(_144.readAttribute("defaultdate")?ct.dates.fromString(_144.readAttribute("defaultdate")):null);
var _149=null;
(function(){
if(!_144.readAttribute("size")){
_144.writeAttribute("size",10);
}
_144.writeAttribute("maxdate",ct.dates.toString(_145.maxDate));
ct.selfLabels.addSelfLabel(_144,"dd/mm/yyyy");
if(_144.nextSibling){
_144.parentNode.insertBefore(_146,_144.nextSibling);
}else{
_144.parentNode.appendChild(_146);
}
_146.href="javascript: void(0);";
_146.className="cal_openLink";
var _14a=document.createElement("img");
_14a.alt="Calendar";
_14a.title="Click to open calendar";
_14a.src="cal_Images/calendar_icon.gif";
_14a.border="0";
_146.appendChild(_14a);
_146.observe("click",function(_14b){
self.showDatePicker();
Event.stop(_14b);
});
_144.observe("focus",function(_14c){
self.showDatePicker();
});
_144.observe("click",function(_14d){
Event.stop(_14d);
});
_149=getMinDate();
})();
function getCalendarTableMarkup(){
var doc=document,ce="createElement",sa="setAttribute",ac="appendChild";
function addCol(_152,_153){
for(var i=0;i<_153;i++){
_152[ac](doc[ce]("col"));
}
}
var _155=doc[ce]("table");
_155[sa]("cellpadding","0");
_155[sa]("cellspacing","0");
_155[sa]("border","0");
var _156=doc[ce]("colgroup");
addCol(_156,5);
_155[ac](_156);
_156=doc[ce]("colgroup");
_156.className="weekend";
addCol(_156,2);
_155[ac](_156);
var _157=doc[ce]("thead");
var _158=doc[ce]("tr");
var _159=["S","M","T","W","T","F","S"];
var _15a=doc[ce]("tr");
var _15b=_145.firstDayOfWeek;
var _15c=doc[ce]("th");
_15c[sa]("colSpan","7");
$(_15c).addClassName("month");
_158[ac](_15c);
for(var i=0;i<7;i++){
_15b=_15b%7;
var _15e=doc[ce]("th");
if(i===5||i===6){
_15e.className="weekend";
}
_15e[ac](doc.createTextNode($A(_159)[_15b]));
_15a[ac](_15e);
_15b++;
}
_157[ac](_158);
_157[ac](_15a);
_155[ac](_157);
var _15f=doc[ce]("tbody");
var _160=doc[ce]("tr");
for(i=0;i<7;i++){
var _161=doc[ce]("td");
if(i===5||i===6){
_161.className="weekend";
}
_161[ac](doc.createTextNode(" "));
_160[ac](_161);
}
for(i=0;i<6;i++){
_15f[ac](_160.cloneNode(true));
}
_155[ac](_15f);
return _155;
}
function getCalendarMarkupOutline(){
var doc=document,ce="createElement",sa="setAttribute",ac="appendChild";
var _166=doc[ce]("div");
_166[sa]("id","datePickerContainer");
_166.style.display="block";
var _167=doc[ce]("div");
_167.id="close";
$(_167).addClassName("dt_control");
var _168=doc[ce]("a");
_168[sa]("href","javascript: void(0);");
_168[sa]("id","cal_closeCalendar");
_168[sa]("title","Close");
_168[ac](doc.createTextNode(" "));
_167[ac](_168);
_166[ac](_167);
var _169=doc[ce]("div");
_169.id="previous";
$(_169).addClassName("dt_control");
var _16a=doc[ce]("a");
_16a[ac](doc.createTextNode(" "));
_16a[sa]("href","javascript: void(0);");
_16a[sa]("id","cal_showPreviousMonth");
_16a[sa]("title","Previous month");
_169[ac](_16a);
_166[ac](_169);
var _16b=getCalendarTableMarkup();
var _16c=doc[ce]("div");
_16c.setAttribute("id","datePickerWrapper");
_16c.style.overflow="hidden";
for(var i=0;i<_145.calendarCount;i++){
_16c[ac](_16b.cloneNode(true));
}
_166[ac](_16c);
var _16e=doc[ce]("div");
_16e.id="next";
$(_16e).addClassName("dt_control");
var _16f=doc[ce]("a");
_16f[ac](doc.createTextNode(" "));
_16f[sa]("href","javascript: void(0);");
_16f[sa]("id","cal_showNextMonth");
_16f[sa]("title","Next month");
_16e[ac](_16f);
_166[ac](_16e);
$(_166).observe("click",globalEventHandler);
return _166;
}
function globalEventHandler(_170){
try{
switch(Event.findElement(_170,"a").id){
case "cal_closeCalendar":
self.hideDatePicker();
break;
case "cal_showPreviousMonth":
if(!Event.findElement(_170,"a").hasClassName("disabled")){
showPreviousMonth();
}
break;
case "cal_showNextMonth":
if(!Event.findElement(_170,"a").hasClassName("disabled")){
showNextMonth();
}
break;
default:
selectDate(Event.findElement(_170,"a"));
}
}
catch(e){
}
Event.stop(_170);
}
function bodyClickHandler(_171){
self.hideDatePicker();
}
function selectDate(_172){
if(_172&&_172.timeStamp){
var _173=new Date(_172.timeStamp);
var _174=(_173.getDate())+"/";
_174+=(_173.getMonth()+1)+"/";
_174+=_173.getFullYear();
_144.value=_174;
self.hideDatePicker();
_149=new Date(_173);
if(_144.readAttribute("selflabel")){
_144.removeClassName("selflabel");
}
}
}
function adjustPreviousNextLinksDisplay(){
var _175=getMinDate();
var _176=new Date(_175);
var _177=_148;
while(_177<0){
_177+=12;
}
_176.setMonth(_177);
if(_176.getMonth()<=_175.getMonth()&&_176.getFullYear()<=_175.getFullYear()){
$("cal_showPreviousMonth").addClassName("disabled");
}else{
$("cal_showPreviousMonth").removeClassName("disabled");
}
var _178=getMaxDate();
_176=new Date(_175);
var _179=_148+_145.calendarCount-1;
while(_179>12){
_179-=12;
}
_176.setMonth(_179);
if(_176.getMonth()>=_178.getMonth()&&_176.getFullYear()>=_178.getFullYear()){
$("cal_showNextMonth").addClassName("disabled");
}else{
$("cal_showNextMonth").removeClassName("disabled");
}
}
function showPreviousMonth(){
var _17a=getCalendarTableMarkup();
$("datePickerWrapper").insertBefore(_17a,$("datePickerWrapper").firstChild);
populateCalendarTable(_148-1,_17a,getMinDate(),getMaxDate());
_148--;
adjustPreviousNextLinksDisplay();
$($("datePickerWrapper").getElementsByTagName("table")[_145.calendarCount]).remove();
ct.dom.removeIEIframeFix($("datePickerContainer"));
ct.dom.addIEIframeFix($("datePickerContainer"));
}
function showNextMonth(){
var _17b=getCalendarTableMarkup();
$("datePickerWrapper").appendChild(_17b);
populateCalendarTable(_148+_145.calendarCount,_17b,getMinDate(),getMaxDate());
_148++;
adjustPreviousNextLinksDisplay();
$($("datePickerWrapper").getElementsByTagName("table")[0]).remove();
ct.dom.removeIEIframeFix($("datePickerContainer"));
ct.dom.addIEIframeFix($("datePickerContainer"));
}
function getMinDate(){
var _17c;
if(_145.minDateField){
if(ct.dates.isValidDateString($F(_145.minDateField))){
_17c=ct.dates.fromString($F(_145.minDateField));
}else{
_17c=ct.dates.fromString($(_145.minDateField).readAttribute("mindate"));
}
}else{
_17c=_145.minDate;
}
if(_17c){
_17c.setDate(_17c.getDate()+_145.offsetDays);
}
return new Date(_17c);
}
function getMaxDate(){
if(_145.maxDate){
return new Date(_145.maxDate);
}else{
maxDate=new Date(getMinDate());
maxDate.setFullYear(maxDate.getFullYear()+1);
return maxDate;
}
}
function populateCalendarTable(_17d,_17e,_17f,_180){
var _181=new Date(_17f);
var _182=["January","February","March","April","May","June","July","August","September","October","November","December"];
ct.dates.setMonth(_181,_17d);
_181.setDate(1);
_17d%=12;
_17e.getElementsByTagName("th")[0].appendChild(document.createTextNode(_182[_17d]+" "+_181.getFullYear()));
var _183=_17e.getElementsByTagName("tbody")[0].getElementsByTagName("td");
if(ct.dates.isValidDateString($F(_144))){
_149=ct.dates.fromString($F(_144));
}else{
_149=getMinDate();
}
var _184=_145.firstDayOfWeek;
$A(_183).each(function(cell){
if(_184===_181.getDay()&&_181.getMonth()===_17d){
if(ct.dates.compare(_181,_17f)===1||ct.dates.compare(_181,_180)===-1){
cell.appendChild(document.createTextNode(_181.getDate()));
}else{
var link=document.createElement("a");
link.href="javascript: void(0);";
link.timeStamp=_181.valueOf();
link.appendChild(document.createTextNode(_181.getDate()));
cell.appendChild(link);
}
if(_149.toString()==_181.toString()){
$(cell).addClassName("selected");
}
_181.setDate(_181.getDate()+1);
}else{
cell.appendChild(document.createTextNode(" "));
}
_184++;
_184%=7;
});
}
var _187=null;
this.showDatePicker=function(){
if(!_144.disabled){
this.hideDatePicker();
var _188=getCalendarMarkupOutline();
if(_145.minDateField&&ct.dates.isValidDateString($F(_145.minDateField))&&ct.dates.isValidDateString($F(_144))&&(ct.dates.fromString($F(_145.minDateField)).toString()>ct.dates.fromString($F(_144)).toString())){
_148=ct.dates.fromString($F(_145.minDateField)).getMonth()+(ct.dates.fromString($F(_145.minDateField)).getFullYear()-getMinDate().getFullYear())*12;
}else{
if(ct.dates.isValidDateString($F(_144))){
_148=ct.dates.fromString($F(_144)).getMonth()+(ct.dates.fromString($F(_144)).getFullYear()-getMinDate().getFullYear())*12;
}else{
if(_145.defaultDate){
_148=_145.defaultDate.getMonth()+(_145.defaultDate.getFullYear()-getMinDate().getFullYear())*12;
}else{
_148=getMinDate().getMonth();
}
}
}
document.body.appendChild(_188);
for(var i=0;i<_145.calendarCount;i++){
populateCalendarTable(_148+i,_188.getElementsByTagName("table")[i],getMinDate(),getMaxDate());
}
var pos=$(_144).cumulativeOffset();
var _18b=document.viewport.getDimensions();
var _18c=_188.getDimensions();
_188.style.position="absolute";
if((_18b.height-_18c.height-pos.top)>0){
_188.style.top=(pos.top+$(_144).getHeight())+"px";
}else{
_188.style.top=(pos.top-_18c.height)+"px";
}
if((_18b.width-pos.left-_18c.width)>0){
_188.style.left=(pos.left)+"px";
}else{
_188.style.right=_18b.width-pos.left-_144.getWidth()+"px";
}
adjustPreviousNextLinksDisplay();
ct.dom.addIEIframeFix(_188);
$(document.body).observe("click",bodyClickHandler);
}
};
this.hideDatePicker=function(){
if($("datePickerContainer")){
$("datePickerContainer").stopObserving("click",globalEventHandler);
ct.dom.removeIEIframeFix($("datePickerContainer"));
$("datePickerContainer").remove();
$(document.body).stopObserving("click",bodyClickHandler);
}
};
},AirportsDropdown:function(_18d,_18e){
var self=this;
if(!_18e){
_18e={};
}
_18e.showFeaturedAirports=_18e.showFeaturedAirports||(_18d.readAttribute("showfeatured")&&_18d.readAttribute("showfeatured").toLowerCase()==="no")?false:true;
_18e.preselectAirportCode=_18e.preselectAirportCode||(_18d.readAttribute("preselect")&&_18d.readAttribute("preselect")!=="")?_18d.readAttribute("preselect"):null;
_18e.cookieSelection=_18e.cookieSelection||(_18d.readAttribute("cookieselection")&&_18d.readAttribute("cookieselection")==="no")?false:true;
try{
_18e.extraValues=_18e.extraValues||(_18d.readAttribute("extras")&&_18d.readAttribute("extras").strip().length>0)?eval("({"+_18d.readAttribute("extras").strip()+"})"):null;
}
catch(e){
alert("here");
_18e.extraValues=null;
}
if(_18e.cookieSelection&&_18d.readAttribute("cookiename")){
if(_18d.readAttribute("cookiename")===""){
throw new Error("Error initializing the airports dropdown. There was no cookie name found to store the selection. Use cookiename=\"some_cookie_name\" to specify the cookie name or cookieselection=\"no\" to disable saving cookies.");
}
}else{
_18e.cookieName=_18d.readAttribute("cookiename");
}
ct.validator.attachValidation(_18d,"Please choose from the available "+_18d.title.toLowerCase()+".",function(){
return $F(_18d)!=="";
});
this.populate=function(){
if(_18d.firstChild){
_18d.removeChild(_18d.firstChild);
}
var key;
if(_18e.extraValues){
Object.keys(_18e.extraValues).each(function(key){
var _192=new Element("option",{value:key}).update(_18e.extraValues[key]);
if(_18e.preselectAirportCode&&_18e.preselectAirportCode===_18e.extraValues[key]){
_192.setAttribute("selected","selected");
}
_18d.appendChild(_192);
});
}else{
_18d.appendChild(new Element("option",{value:""}).update("Select location"));
}
_18d.appendChild(new Element("option",{value:""}).update("------------"));
if(_18e.showFeaturedAirports){
$A(ct.airports.featured).each(function(_193){
_18d.appendChild(new Element("option",{value:_193.k}).update(_193.v));
});
_18d.appendChild(new Element("option",{value:""}).update("------------"));
}
$A(ct.airports.all).each(function(_194){
var _195=new Element("option",{value:_194.k}).update(_194.v);
if(_18e.preselectAirportCode&&_18e.preselectAirportCode===_194.k){
_195.writeAttribute("selected","selected");
}
_18d.appendChild(_195);
});
};
self.populate();
},AutoCompleteTextbox:function(_196,_197){
var _198={up:38,down:40,enter:13,escape:27};
var _199=0,_19a="autocompleteOptionsContainer",_19b=[],_19c=null;
var _19d="/images/indicators/arrows_circle.gif";
if(!ct.controls.AutoCompleteTextboxCache){
ct.controls.AutoCompleteTextboxCache={};
}
_197=_197||{};
_197.queryUrl=_197.queryUrl||_196.getAttribute("queryurl")||null;
_197.includeKeys=_197.includeKeys||_196.hasClassName("includeKeys");
_197.idField=_197.idField||_196.getAttribute("idfield")||null;
_197.displayRowCount=parseInt(_197.displayRowCount||_196.getAttribute("displayrows")||10,10);
_197.minChars=parseInt(_197.minChars||_196.getAttribute("minchars")||3,10);
_197.selectionHandler=_197.selectionHandler||_196.getAttribute("selectionhandler")||null;
if($(_196).hasClassName("forceKey")){
ct.validator.attachValidation(_196,"We do not have the "+_196.title.toLowerCase()+" you entered on record. Please pick from one of the options that appear as you type.",function(){
if($(_196).value===""){
return true;
}
if(_196.readAttribute("selfLabel")===$F(_196)){
return true;
}
return $(_197.idField).value;
});
}
if(typeof _197.selectionHandler==="string"){
try{
_197.selectionHandler=eval(_197.selectionHandler);
}
catch(e){
throw new Error("From ct.controls.AutoCompleteTextbox: Unable to understand the selectionhandler attribute.");
}
}
if(!_197.idField){
throw new Error("From ct.controls.AutoCompleteTextbox: idfield attribute not defined.");
}
if(!$(_197.idField)){
_196.parentNode.appendChild(new Element("input",{type:"hidden",id:_197.idField,name:_197.idField}));
}
if(ct.dom.getParentByTagName(_196,"form")){
$(ct.dom.getParentByTagName(_196,"form")).observe("submit",function(_19e){
if($(_19a)){
_19e.stop();
}
});
}
$(_196).observe("blur",function(){
if($(_19a)){
keyEnterPress();
}
removeAutocompleteDropdown();
});
$(_196).observe("keypress",function(_19f){
if($(_19a)&&_19f.keyCode===_198.enter){
_19f.stop();
}
});
if(_197.queryUrl){
_197.queryUrl=new Template(_197.queryUrl);
$(_196).observe("keyup",function(_1a0){
if(_1a0.keyCode!==_198.enter){
$(_197.idField).value="";
}
if($F(_196)===""){
removeAutocompleteDropdown();
}else{
if($F(_196).length>=_197.minChars){
var key=$F(_196).toLowerCase();
if(ct.controls.AutoCompleteTextboxCache[key]){
keystrokeHandler(_1a0,ct.controls.AutoCompleteTextboxCache[key]);
}else{
if(_19b[key]){
return;
}else{
clearTimeout(_19c);
_19c=setTimeout(function(){
_19b.push(key);
_196.setStyle({backgroundPosition:"center right",backgroundImage:"url(\""+_19d+"\")",backgroundRepeat:"no-repeat"});
new Ajax.Request(_197.queryUrl.evaluate({q:key}),{method:"get",onSuccess:function(_1a2){
ct.controls.AutoCompleteTextboxCache[key]=eval(_1a2.responseText);
_19b.splice(key,1);
if(key===$F(_196).toLowerCase()){
keystrokeHandler(_1a0,ct.controls.AutoCompleteTextboxCache[key]);
}
_196.setStyle({backgroundImage:"none"});
},onFailure:function(){
ct.controls.AutoCompleteTextboxCache.splice($A(ct.controls.AutoCompleteTextboxCache).indexOf(key),1);
}});
},200);
}
}
}
}
});
}
_196.setAttribute("autocomplete","off");
function keystrokeHandler(evt,data){
var _1a5=null;
try{
_1a5=evt.keyCode;
}
catch(e){
}
switch(_1a5){
case _198.up:
keyUpPress();
Event.stop(evt);
break;
case _198.down:
keyDownPress();
Event.stop(evt);
break;
case _198.escape:
removeAutocompleteDropdown();
Event.stop(evt);
break;
case _198.enter:
if($("autocompleteOptionsContainer")){
keyEnterPress(evt);
Event.stop(evt);
}
break;
default:
showAutocompleteDropdown(filterDataset(data));
break;
}
}
function filterDataset(_1a6){
return _1a6;
}
function showAutocompleteDropdown(_1a7){
if(_1a7.length>0){
var _1a8;
if($(_19a)){
while($(_19a).firstChild){
$($(_19a).firstChild).remove();
}
_1a8=$(_19a);
ct.dom.removeIEIframeFix(_1a8);
}else{
_1a8=new Element("ul",{"class":"aa",style:"visibility: hidden",id:_19a});
}
var _1a9=(_197.displayRowCount<_1a7.length)?_197.displayRowCount:_1a7.length;
for(var i=0;i<_1a9;i++){
var li=new Element("li",{keyName:_1a7[i].k,index:i}).update(_1a7[i].d||_1a7[i].v);
li.dataObject=Object.clone(_1a7[i]);
_1a8.appendChild(li);
}
document.body.appendChild(_1a8);
var _1ac=_196.cumulativeOffset();
_1a8.setStyle({top:_1ac.top+_196.getHeight()+"px",left:_1ac.left+"px",position:"absolute",visibility:"visible",width:_196.getWidth()+"px"});
ct.dom.addIEIframeFix(_1a8);
_1a8.observe("click",mouseClickHandler);
_1a8.observe("mouseover",mouseOverHandler);
highlightSelection();
}else{
$(_197.idField).value="";
removeAutocompleteDropdown();
}
}
function mouseClickHandler(_1ad){
if(_1ad.findElement("li")&&_1ad.findElement("li").nodeName.toLowerCase()==="li"){
_199=_1ad.findElement("li").getAttribute("index");
highlightSelection();
keyEnterPress();
}
_1ad.stop();
}
function mouseOverHandler(_1ae){
if(_1ae.findElement("li")&&_1ae.findElement("li").nodeName.toLowerCase()==="li"){
_199=_1ae.findElement("li").getAttribute("index");
highlightSelection();
}
_1ae.stop();
}
function removeAutocompleteDropdown(){
if($(_19a)){
ct.dom.removeIEIframeFix($(_19a));
$(_19a).stopObserving("click",mouseClickHandler);
$(_19a).remove();
_199=0;
}
}
function keyDownPress(){
_199++;
highlightSelection();
}
function keyUpPress(){
_199--;
highlightSelection();
}
function keyEnterPress(evt){
if($(_19a)&&$(_19a).childNodes[_199]){
var _1b0=$(_19a).childNodes[_199];
$(_197.idField).value=_1b0.readAttribute("keyName");
_196.value=_1b0.dataObject.v;
if(_197.selectionHandler){
_197.selectionHandler(_1b0.dataObject);
}
if(evt){
evt.stop();
}
}
removeAutocompleteDropdown();
}
function highlightSelection(){
if($(_19a)){
var _1b1=$(_19a).childNodes.length;
_199=parseInt(_199,10);
if(_199>=_1b1){
_199=0;
}else{
if(_199<0){
_199=_1b1-1;
}
}
$A($(_19a).childNodes).each(function(li,_1b3){
if(_1b3===_199){
li.addClassName("highlight");
}else{
li.removeClassName("highlight");
}
});
}
}
},Slider:function(_1b4){
var _1b5=$(_1b4).getElementsBySelector("input[type=text]");
var _1b6=new Element("div",{"class":"track"});
_1b4.appendChild(_1b6);
var _1b7=new Element("div",{"class":"leftDisabled"}),_1b8=new Element("div",{"class":"rightDisabled"});
var _1b9=parseFloat($(_1b4).readAttribute("minvalue")||0),_1ba=parseFloat($(_1b4).readAttribute("maxvalue")||10),_1bb=parseFloat($(_1b4).readAttribute("stepvalue")||1);
var _1bc=0,_1bd=_1b6.getWidth();
var _1be=(_1bd-_1bc)/(_1ba-_1b9);
var _1bf=Math.ceil(_1bb*_1be);
function getSliderRange(){
var _1c0=[];
var _1c1=_1bc;
while(_1c1<_1bd){
_1c0.push(_1c1);
_1c1+=_1bf;
}
_1c0.push(_1bd);
return _1c0;
}
function scaleToInternal(_1c2){
return ((_1c2-_1b9)*_1be);
}
function scaleToUser(_1c3){
if(_1c3===_1bc){
return _1b9;
}else{
if(_1c3===_1bd){
return _1ba;
}
}
var _1c4=(_1c3/_1be)+_1b9;
var _1c5=_1c4%_1bb;
if(_1c5<_1bb/2){
return _1c4-_1c5;
}else{
return _1c4+(_1bb-_1c5);
}
}
_1b4.minValue=_1b9;
_1b4.maxValue=_1ba;
if(_1b5.length===1){
if(_1b4.readAttribute("highlight")&&_1b4.readAttribute("highlight").toLowerCase()==="left"){
_1b6.appendChild(_1b8);
}else{
_1b8=null;
}
if(_1b4.readAttribute("highlight")&&_1b4.readAttribute("highlight").toLowerCase()==="right"){
_1b6.appendChild(_1b7);
}else{
_1b7=null;
}
var _1c6=new Element("div",{"class":"leftHandle"});
_1b6.appendChild(_1c6);
_1b4.sliderObj=new Control.Slider(_1c6,_1b6,{axis:"horizontal",range:$R(_1bc,_1bd),sliderValue:scaleToInternal(parseFloat(_1b5[0].getAttribute("value"))),startSpan:_1b7,endSpan:_1b8,values:getSliderRange(),onChange:function(vals){
vals=scaleToUser(vals);
_1b5[0].setAttribute("value",vals);
_1b5[0].value=vals;
_1b4.values=[vals];
_1b4.fire("ctslider:onChange");
},onSlide:function(vals){
_1b4.inSlideValues=scaleToUser(vals);
_1b4.fire("ctslider:onSlide");
}});
_1b4.sliderObj.setValue([scaleToInternal(parseFloat(_1b5[0].getAttribute("value")))]);
_1b4.inSlideValues=[parseFloat(_1b5[0].value)];
}else{
if(_1b5.length===2){
var _1c9=new Element("div",{id:"rangeHandleMin1","class":"leftHandle"});
var _1ca=new Element("div",{id:"rangeHandleMax1","class":"rightHandle"});
_1b6.appendChild(_1b7);
_1b6.appendChild(_1b8);
_1b6.appendChild(_1c9);
_1b6.appendChild(_1ca);
_1b4.sliderObj=new Control.Slider([_1c9,_1ca],_1b6,{axis:"horizontal",range:$R(_1bc,_1bd),sliderValue:[scaleToInternal(_1b5[0].getAttribute("value")),scaleToInternal(_1b5[1].getAttribute("value"))],startSpan:_1b7,endSpan:_1b8,values:getSliderRange(),restricted:true,onChange:function(vals){
var min=scaleToUser(vals[0]);
var max=scaleToUser(vals[1]);
var _1ce=_1b4.values;
if(!_1ce||(_1ce[0]!==min||_1ce[1]!==max)){
_1b5[0].setAttribute("value",min);
_1b5[1].setAttribute("value",max);
_1b5[0].value=min;
_1b5[1].value=max;
_1b4.values=[min,max];
_1b4.fire("ctslider:onChange");
}
},onSlide:function(vals){
var _1d0=_1b4.inSlideValues;
if(!_1d0||(_1d0[0]!==scaleToUser(vals[0])||_1d0[1]!==scaleToUser(vals[1]))){
_1b4.inSlideValues=[scaleToUser(vals[0]),scaleToUser(vals[1])];
_1b4.fire("ctslider:onSlide");
}
}});
_1b4.setValues=function(){
var _1d1=_1b4.sliderObj;
var vals=[_1b5[0].getAttribute("value"),_1b5[1].getAttribute("value")];
_1d1.setValue(scaleToInternal(vals[0]),0);
_1d1.setValue(scaleToInternal(vals[1]),1);
_1b4.inSlideValues=[vals[0],vals[1]];
_1b4.fire("ctslider:onSlide");
};
_1b4.setValues();
}
}
},CurrencyDropdown:function(_1d3){
if(window.currencies&&!_1d3.loaded){
var _1d4=false,_1d5=window.location.href.toQueryParams().currency||ct.cookies.read("currency-pref");
function addCurrency(_1d6){
var _1d7=new Element("option",{value:_1d6.code,title:_1d6.name}).update(_1d6.code+" "+_1d6.symbol+" - "+_1d6.name);
if(_1d6.code===_1d5&&!_1d4){
ct.currentCurrency=_1d6;
_1d7.writeAttribute("selected","selected");
_1d4=true;
}
_1d3.appendChild(_1d7);
}
$A(currencies.top).each(addCurrency);
_1d3.appendChild(new Element("option",{value:"",title:""}).update("----------"));
$A(currencies.all).each(addCurrency);
if(!_1d4){
var _1d8=$(_1d3).getElementsByTagName("option");
for(var i=0;i<_1d8.length;i++){
if(_1d8[i].value==="INR"){
_1d8[i].writeAttribute("selected","selected");
break;
}
}
}
$(_1d3).observe("change",function(){
var _1da=false;
$A(currencies.all).each(function(_1db){
if(_1db.code===$F(_1d3)){
ct.currentCurrency=_1db;
ct.cookies.create("currency-pref",_1db.code,365);
_1da=true;
}
});
if(!_1da){
ct.helperFunctions.resetCurrency(true);
}else{
ct.helperFunctions.logToServer("currency","changed",{to:ct.currentCurrency.code});
}
$(_1d3).fire("ctcurrency:change");
});
$(_1d3).loaded=true;
}
},parseDomTree:function(_1dc){
_1dc=$(_1dc||document.body);
var _1dd=ct.controls;
_1dc.getElementsBySelector("input.datePicker").each(function(_1de){
new _1dd.Calendar(_1de);
});
_1dc.getElementsBySelector("select.airportsDropdown").each(function(_1df){
new _1dd.AirportsDropdown(_1df);
});
_1dc.getElementsBySelector("input.autocomplete").each(function(_1e0){
new _1dd.AutoCompleteTextbox(_1e0);
});
if(window.Control&&Control.Slider){
var _1e1=new Date();
_1dc.select(".slider").each(function(_1e2){
if(!_1e2.sliderObj){
new _1dd.Slider(_1e2);
}
});
console.log("Slider creation total time: ",new Date()-_1e1);
}
if($("currency_dropdown")){
new ct.controls.CurrencyDropdown($("currency_dropdown"));
}
}},ajaxTimeoutHandler:{onCreate:function(_1e3){
_1e3.timeoutId=window.setTimeout(function(){
if($A([1,2,3]).indexOf(parseInt(_1e3.transport.readyState,10))!==-1){
_1e3.transport.abort();
alert("The server has taken too long to respond. This might be a problem with our servers, or your Internet connection.\n\nPlease try again later.");
if(_1e3.options.onFailure){
_1e3.options.onFailure(_1e3.transport,_1e3.json);
}
}
},90000);
},onComplete:function(_1e4){
window.clearTimeout(_1e4.timeoutId);
}}};
compareDates=ct.dates.compare;
toHomeForm=ct.helperFunctions.toHomeForm;
addRooms=ct.helperFunctions.addRooms;
alterChildren=ct.helperFunctions.alterChildren;
ct.genericBlocks.hotelForm.handleCitySelection=function(data){
$("country").value=data.c;
$("state").value=data.s;
};
ct.controls.Calendar._markupOutlineCache=null;
ct.helperFunctions.resetCurrency(false);
(function(){
function startupCode(){
ct.domIsLoaded=true;
ct.validator._initializeForms();
ct.selfLabels.parseDomTree();
ct.bubbles.parseDomTree();
ct.stickyBlocks.parseDomTree();
ct.genericBlocks.parseDomTree();
ct.controls.parseDomTree();
Event.observe(document,"click",function(){
if($("ct_bubbleNode")){
ct.dom.removeIEIframeFix($("ct_bubbleNode"));
$("ct_bubbleNode").remove();
}
});
setTimeout(ct.helperFunctions.prefetchResources,3000);
var _1e6=new Image();
var loc=window.location;
_1e6.src=loc.protocol+"//"+loc.host+"/images/elements/error_arrow.gif";
ct.cookies.erase("ct-dom-style");
}
Event.observe(window,"load",startupCode);
Event.observe(window,"pageshow",function(evt){
if(evt.persisted){
startupCode();
}
});
})();
Ajax.Responders.register(ct.ajaxTimeoutHandler);

