if(!this.JSON){JSON={}}(function(){function f(n){return n<10?"0"+n:n}if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z"};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf()}}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+string+'"'}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==="object"&&typeof value.toJSON==="function"){value=value.toJSON(key)}if(typeof rep==="function"){value=rep.call(holder,key,value)}switch(typeof value){case"string":return quote(value);case"number":return isFinite(value)?String(value):"null";case"boolean":case"null":return String(value);case"object":if(!value){return"null"}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==="[object Array]"){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||"null"}v=partial.length===0?"[]":gap?"[\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"]":"["+partial.join(",")+"]";gap=mind;return v}if(rep&&typeof rep==="object"){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==="string"){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}v=partial.length===0?"{}":gap?"{\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"}":"{"+partial.join(",")+"}";gap=mind;return v}}if(typeof JSON.stringify!=="function"){JSON.stringify=function(value,replacer,space){var i;gap="";indent="";if(typeof space==="number"){for(i=0;i<space;i+=1){indent+=" "}}else{if(typeof space==="string"){indent=space}}rep=replacer;if(replacer&&typeof replacer!=="function"&&(typeof replacer!=="object"||typeof replacer.length!=="number")){throw new Error("JSON.stringify")}return str("",{"":value})}}if(typeof JSON.parse!=="function"){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==="object"){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return reviver.call(holder,key,value)}cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){j=eval("("+text+")");return typeof reviver==="function"?walk({"":j},""):j}throw new SyntaxError("JSON.parse")}}})();jQuery.fn.indexOf=function(b){for(var a=0;a<this.length;a++){if(this[a]==b){return a}}return -1};registerNameSpace("FrameworkJS.Common");FrameworkJS.Common.AutocompleteGlobalCache=function(a){this.options=a||{};this.options.matchStartOnly=this.options.matchStartOnly||true;this.options.type=this.options.type||"general";this.options.splitBy=this.options.splitBy||", -();:.";this.cache=new Array();this.cache[this.options.type]={data:{},preCache:{}}};FrameworkJS.Common.AutocompleteGlobalCache.prototype.addType=function(a){if(!FrameworkJS.Common.AutocompleteGlobalCache.cache[a]){FrameworkJS.Common.AutocompleteGlobalCache.cache[a]={data:{},preCache:{}}}};FrameworkJS.Common.AutocompleteGlobalCache.prototype.loadFromCache=function(l,k,c,g,n){if(n==undefined){n=FrameworkJS.Common.AutocompleteGlobalCache.options.type}if(!l){return null}if(FrameworkJS.Common.AutocompleteGlobalCache.cache[n].data[l]){return FrameworkJS.Common.AutocompleteGlobalCache.cache[n].data[l]}if(g){var o=false;var f=l.substr(0,k);var d=FrameworkJS.Common.AutocompleteGlobalCache.cache[n].data[f];if(!d&&FrameworkJS.Common.AutocompleteGlobalCache.cache[n].preCache.length>0){d=FrameworkJS.Common.AutocompleteGlobalCache.cache[n].preCache;o=true}if(d){var a=[];a.cachedBefore=o;var b=FrameworkJS.Common.AutocompleteGlobalCache.splitString(l,this.options.splitBy);for(var e=0;e<d.length;e++){var p=d[e];if(FrameworkJS.Common.AutocompleteGlobalCache.matchSubset(p.m+", "+p.n+", "+p.a,b,c)){a[a.length]=p}}return a.length>0||!a.cachedBefore?a:null}}return null};FrameworkJS.Common.AutocompleteGlobalCache.prototype.addToCache=function(c,b,a){if(a==undefined){a=FrameworkJS.Common.AutocompleteGlobalCache.options.type}if(!b||!c){return}FrameworkJS.Common.AutocompleteGlobalCache.cache[a].data[c]=b};FrameworkJS.Common.AutocompleteGlobalCache.prototype.accentInsentiveRegex=function(a){var c="";for(var b=0;b<a.length;b++){switch(a.charAt(b)){case"a":case"á":case"A":case"Á":case"ã":case"Ã":case"â":case"Â":c+="[aáãâ]";break;case"e":case"é":case"E":case"É":case"ê":case"Ê":c+="[eéê]";break;case"i":case"í":case"I":case"Í":c+="[ií]";break;case"o":case"ó":case"O":case"Ó":case"õ":case"Õ":case"ô":case"Ô":c+="[oóõô]";break;case"u":case"ú":case"U":case"Ú":c+="[uú]";break;default:c+=a.charAt(b);break}}return c};FrameworkJS.Common.AutocompleteGlobalCache.prototype.splitString=function(a,g){var c=new RegExp("["+g+"]","ig");var a=a.replace(c,"|");var f=a.split("|");var e=new Array();var b=0;for(var d=0;d<f.length;d++){if(jQuery.trim(f[d])!=""){e[b]=f[d];b++}}return e};FrameworkJS.Common.AutocompleteGlobalCache.prototype.matchSubset=function(c,f,g,e){var d=false;for(j=0;j<f.length;j++){var a=new RegExp(FrameworkJS.Common.AutocompleteGlobalCache.accentInsentiveRegex(f[j]));if(!g){c=c.toLowerCase()}var b=c.search(a);if(b==-1){d=false}if(b>-1){d=true}if(d&&FrameworkJS.Common.AutocompleteGlobalCache.options.matchStartOnly){a=new RegExp(FrameworkJS.Common.AutocompleteGlobalCache.accentInsentiveRegex("(^"+f[j]+")|(["+this.options.splitBy+"]"+f[j]+")"));b=c.search(a);if(b==-1){d=false}}if(!d){break}}return d};FrameworkJS.Common.AutocompleteGlobalCache.prototype.preCache=function(a,b){if(b==undefined){b=this.options.type}FrameworkJS.Common.AutocompleteGlobalCache.cache[b].preCache=a};registerNameSpace("FrameworkJS.Common");FrameworkJS.Common.Autocomplete=function(l,o){this.options=window._options||{};this.options.splitBy=this.options.splitBy||", ();:.";$.fn.autocomplete.initialValue=function(p,q){f.initialValue(p,q)};this.initialValue=function(s,t,p,r){var q=s;if(o.showValue&&t!=""&&t!=undefined&&!r){q=q+" ("+t+")"}$(l).val(q);$(l).data("dataValue",t);$(l).data("dataType",p)};this.hideResultsNow=function(){if(k){clearTimeout(k)}if(n.is(":visible")){d.innerHTML="";n.hide()}};this.trim=function(r){var r=r.replace(/^\s\s*/,""),p=/\s/,q=r.length;while(p.test(r.charAt(--q))){}return r.slice(0,q+1)};this.onChange=function(){if(e==46||(e>8&&e<32)){return n.hide()}if(e>45&&e<112){g.data("dataValue","");g.data("dataType",o.initialType)}var r=f.trim(g.val());if(r==c){return}c=r;if(r.length>=o.minChars){this.requestData(r)}else{n.hide();if(o.minCharsLeyend){n.html("");var q=document.createElement("ul");var p=document.createElement("li");p.innerHTML=o.minCharsText1+o.minChars+o.minCharsText2;q.appendChild(p);$(p).addClass("minCharsLeyend");d.appendChild(q);this.showResults()}}g.removeClass("default")};this.moveSelect=function(q){var p=$("li",d);if(!p){return}b+=q;if(b<0){b=0}else{if(b>=p.length){b=p.length-1}}p.removeClass(o.liOverClass);$(p[b]).addClass(o.liOverClass);if(b>o.maxItemsToShow-1||(this.scrollNum!=0)){if((this.scrollNum>=-1&&q>0)){p[b].scrollIntoView(false)}if(q==-1&&this.scrollNum>0){this.scrollNum=0}if(this.scrollNum>((-1)*(o.maxItemsToShow))||q==1){this.scrollNum=this.scrollNum+q}if(this.scrollNum<=((-1)*(o.maxItemsToShow))){p[b].scrollIntoView(true)}}};this.selectCurrent=function(){var q=false;var s=false;var p=$("li."+o.liOverClass,d)[0];if(!p){s=true;var r;if(o.selectOnly){r=$("li",d);if(r.length==1){p=r[0]}}else{if(o.selectFirst){r=$("li:first",d);p=r[0]}}}if(p){if($(p).hasClass("additionalOptions")){if(!s){$(p).click()}q=false}else{if($(p).hasClass("moreOptions")){q=true}else{if($(p).hasClass("minCharsLeyend")){q=false}else{this.selectItem(p);q=false}}}return q}else{return false}};this.selectItem=function(q){var p;var s;var r;if(!q){p="";s="";r=o.initialType}else{p=this.liData[q.id][0];s=this.liData[q.id][1];r=this.liData[q.id][2]}g.data("lastSelected",p);c=p;g.val(p);if(o.showValue){g.val(g.val()+" ("+s+")")}g.data("dataValue",s);g.data("dataType",r);if(s.length==3&&o.callBackFunction){o.callBackFunction()}};this.createSelection=function(s,q){var r=g.get(0);if(r.createTextRange){var p=r.createTextRange();p.collapse(true);p.moveStart("character",s);p.moveEnd("character",q);p.select()}else{if(r.setSelectionRange){r.setSelectionRange(s,q)}else{if(r.selectionStart){r.selectionStart=s;r.selectionEnd=q}}}r.focus()};this.autoFill=function(p){if(e!=8){g.val(g.val()+p.substr(c.length));this.createSelection(c.length,p.length)}};this.showResults=function(){var q=this.findPos(l);if(o.classListWidth){var p=parseInt(g.width())+"px";n.css({width:p}).children().css({width:100+"%"})}n.css({top:(q.y+l.offsetHeight)+"px",left:q.x+"px"}).show()};this.hideResults=function(){if(k){clearTimeout(k)}k=setTimeout(this.hideResultsNow,0)};this.receiveData=function(t,s){if((!a&&(!s.cachedBefore||!o.showMoreResults))||(s==null&&o.additionalOptions.length==0)){return this.hideResultsNow()}if(s.getingCache){s.cachedBefore=false;s.getingCache=false}if($.browser.msie){n.append(document.createElement("iframe"))}var q=document.createElement("ul");n.html("").append(q);this.dataToDom(s,t,q);if(o.autoFill&&(g.val().toLowerCase()==t.toLowerCase())){this.autoFill(s[0].n)}this.showResults();if(s!=null){if(s.length>o.maxItemsToShow){$li=n.children("ul").children("li:eq(0)");var r=$li.outerHeight();for(var p=1;p<o.maxItemsToShow;p++){$li=$li.next();r=r+$li.outerHeight()}n.children("ul").height(r).css("overflow-y","auto").css("overflow-x","hidden")}if(s.length==0){f.showNoResultsError()}}else{f.showNoResultsError()}};this.dataToDom=function(t,z,y){if(t){var u=t.length;var x=0;var q=FrameworkJS.Common.AutocompleteGlobalCache.splitString(z,this.options.splitBy);var w="";for(j=0;j<q.length;j++){w+="("+FrameworkJS.Common.AutocompleteGlobalCache.accentInsentiveRegex(q[j])+")";if(j<q.length-1){w+="|"}}var v=z.length;var B=new RegExp(w,"ig");var r="";this.liData=[];for(var s=0;s<u;s++){var C=t[s];if(!C){continue}r=("<li id='"+l.id+s+"'>");var p="";for(j=1;j<=q.length;j++){p+="$"+j}r+=C.n.replace(B,"<b>"+p+"</b>");if(o.showValue){r+=" ("+C.m.toUpperCase()+")"}r+="</li>";$(y).append(r);this.liData[(l.id+s)]=new Array(2);this.liData[(l.id+s)][0]=C.n;this.liData[(l.id+s)][1]=C.m;this.liData[(l.id+s)][2]=C.t}$(y).children("li").hover(function(){$("li."+o.liOverClass,y).removeClass(o.liOverClass);$(this).addClass(o.liOverClass);b=$("li",y).indexOf($(this).get(0))},function(){$(this).removeClass(o.liOverClass)})}if(o.additionalOptions.length>0){for(var s=0;s<o.additionalOptions.length;s++){var A=document.createElement("li");A.innerHTML=o.additionalOptions[s].text;y.appendChild(A);$(A).addClass("additionalOptions").hover(function(){$("li",y).removeClass(o.liOverClass);$(this).addClass(o.liOverClass);b=$("li",y).indexOf($(this).get(0))},function(){$(this).removeClass(o.liOverClass)}).bind("click",o.additionalOptions[s].callbackFunction)}}if(t.cachedBefore&&o.showMoreResults){var A=document.createElement("li");A.innerHTML=o.seeMoreResultsText;y.appendChild(A);$(A).addClass("moreOptions").hover(function(){$("li",y).removeClass(o.liOverClass);$(this).addClass(o.liOverClass);b=$("li",y).indexOf($(this).get(0))},function(){$(this).removeClass(o.liOverClass)})}};this.showMoreResults=function(){this.searchResults(g.val())};this.requestData=function(q){if(!o.matchCase){q=q.toLowerCase()}var p=FrameworkJS.Common.AutocompleteGlobalCache.loadFromCache(q,o.minChars,o.matchCase,o.matchSubset,o.type);if(p){this.receiveData(q,p)}else{if((typeof o.url=="string")&&(o.url.length>0)){f.searchResults(q)}}};this.convertXMLtoJSON=function(p){oJSON=new Array();$("option",p).each(function(q){oJSON.push({a:$(this).attr("a"),m:$(this).attr("m"),n:$(this).attr("n"),t:$(this).attr("t")})});return oJSON};this.searchResults=function(p){p=f.trim(p);$.ajax({type:"GET",dataType:o.serviceType.toLowerCase(),url:this.makeUrl(p.substr(0,o.minChars)),success:function(q){if(o.serviceType=="XML"){q=f.convertXMLtoJSON(q)}else{if(o.serviceType=="JSON"){if(q.data){q=q.data}}}FrameworkJS.Common.AutocompleteGlobalCache.addToCache(p.substr(0,o.minChars),q,o.type);if(p.length>o.minChars){q=FrameworkJS.Common.AutocompleteGlobalCache.loadFromCache(p,o.minChars,o.matchCase,o.matchSubset,o.type)}q.cachedBefore=true;q.getingCache=true;f.receiveData(p,q)},error:function(q,s,r){$(l).data("dataValue","");f.showNoResultsError();if(window.console){console.error("Hubo un error en el servicio de AutoComplete ",q,s,r)}}})};this.showNoResultsError=function(){n.hide();if(o.noResultsError){n.html("");var q=document.createElement("ul");var p=document.createElement("li");p.innerHTML=o.noResultsError+$(l).val();q.appendChild(p);$(p).addClass("minCharsLeyend");d.appendChild(q);f.showResults()}};this.getExtraParamValue=function(p){if(typeof p!="function"){return p}else{return p()}};this.makeUrl=function(s){var q=o.url;if(!o.useQueryString){for(var r in o.extraParamsValue){var p=this.getExtraParamValue(o.extraParamsValue[r]);q+="/"+encodeURI(p)}q+="/"+encodeURI(s)}else{q=q+"?";for(var r in o.extraParamsValue){var p=this.getExtraParamValue(o.extraParamsValue[r]);var t=o.extraParamsName[r]?o.extraParamsName[r]:"param"+[r];q+=t+"="+encodeURI(p)+"&"}q+=o.extraParamSearchPatternName+"="+encodeURI(s)}return q};this.findPos=function(q){var r=q.offsetLeft||0;var p=q.offsetTop||0;while(q=q.offsetParent){r+=q.offsetLeft;p+=q.offsetTop}return{x:r,y:p}};o=o||{};o.languaje=o.languaje||"es";o.url=o.url||"";o.useQueryString=o.useQueryString||false;o.extraParams=o.extraParams||[];o.extraParamsName=o.extraParamsName||[];o.extraParamsValue=o.extraParamsValue||o.extraParams;o.extraParamSearchPatternName=o.extraParamSearchPatternName||"pattern";o.inputClass=o.inputClass||"ac_input";o.initialText=o.initialText||"";o.initialValue=o.initialValue||"";o.initialType=o.initialType||"1";o.seeMoreResultsText=o.seeMoreResultsText||"Ver más resultados...";o.noResultsError=o.noResultsError||"No se encontraron ciudades que coincidan con: ";o.minCharsText1=o.minCharsText1||"Ingrese al menos las primeras ";o.minCharsText2=o.minCharsText2||" letras, y aguarde a ver los resultados";o.autoFill=o.autoFill||false;o.resultsClass=o.resultsClass||"ac_results";o.liOverClass=o.liOverClass||"ac_over";o.minChars=o.minChars||3;o.minCharsLeyend=o.minCharsLeyend||false;o.delay=o.delay||100;o.matchCase=o.matchCase||0;o.matchSubset=o.matchSubset||1;o.selectFirst=o.selectFirst||true;o.selectOnly=o.selectOnly||false;o.maxItemsToShow=o.maxItemsToShow||10;o.classListWidth=o.classListWidth||false;o.additionalOptions=o.additionalOptions||[];o.showValue=o.showValue||false;o.preCacheData=o.preCacheData||{};o.showMoreResults=o.showMoreResults||false;o.type=o.type||"general";o.serviceType=o.serviceType||"JSON";o.callBackFunction=o.callBackFunction||false;var f=this;if(typeof FrameworkJS.Common.AutocompleteGlobalCache!="object"){FrameworkJS.Common.AutocompleteGlobalCache=new FrameworkJS.Common.AutocompleteGlobalCache({type:o.type})}else{FrameworkJS.Common.AutocompleteGlobalCache.addType(o.type)}if(o.preCacheData.length>0){FrameworkJS.Common.AutocompleteGlobalCache.preCache(o.preCacheData,o.type)}var g=$(l).attr("autocomplete","off");if(o.inputClass){g.addClass(o.inputClass)}var d=document.createElement("div");d.id="results-"+g.attr("id");var n=$(d);n.hide().addClass(o.resultsClass).css("position","absolute");n.children("ul").children("li").live("click",function(p){p.preventDefault();p.stopPropagation();f.selectItem(this)});$("body").append(d);l.autocompleter=f;var k=null;var c="";var b=-1;var a=false;var e=null;this.initialValue(o.initialText,o.initialValue,o.initialType);this.scrollNum=0;this.liData=[];g.keydown(function(p){e=p.keyCode;switch(p.keyCode){case 38:p.preventDefault();f.moveSelect(-1);break;case 40:p.preventDefault();f.moveSelect(1);break;case 13:g.get(0).blur();p.preventDefault();break;default:b=-1;if(k){clearTimeout(k)}k=setTimeout(function(){f.onChange()},o.delay);break}}).focus(function(){var p=o.initialText;if(o.initialValue!=""){p+=" ("+o.initialValue+")"}if(!a&&f.trim($(l).val())==p){$(this).val("")}else{this.select()}a=true}).blur(function(y){a=false;if(n.is(":visible")){var u=false;if(navigator.appName=="Microsoft Internet Explorer"){var t=y.clientX;var r=y.clientY;var s=18;var w=document.documentElement.scrollTop?document.documentElement.scrollTop:document.body.scrollTop;var p=d.clientLeft+d.offsetLeft+d.clientWidth-s;var A=p+s;var z=d.clientTop+d.offsetTop-w;var v=z+d.clientHeight;if(t>p&&t<A&&r>z&&r<v){u=true}else{u=false}}if(!u){var x=f.selectCurrent();f.hideResults();if(x){a=true;f.showMoreResults();setTimeout("document.getElementById('"+l.id+"').focus()",1)}}else{setTimeout("document.getElementById('"+l.id+"').focus()",1)}}var q=f.trim($(l).val());if(q==""){f.initialValue(o.initialText,o.initialValue,o.initialType)}});this.hideResultsNow();if(o.initialValue==""){g.addClass("default")}};registerNameSpace("Common.Utils");Common.Utils.Ajax=function(a){return($.ajax(a).responseText)};Common.Utils.Ajax.LoadScript=function(a,d){var b=document.getElementsByTagName("head")[0];var c;c=document.createElement("script");c.src=a;c.type="text/javascript";if(d!=undefined){c.onload=c.onreadystatechange=d}b.appendChild(c)};registerNameSpace("Common.Utils");Common.Utils.Cookie=function(){};Common.Utils.Cookie.prototype.CreateCookie=function(c,d,e){if(e){var b=new Date();b.setTime(b.getTime()+(e*24*60*60*1000));var a="; expires="+b.toGMTString()}else{var a=""}document.cookie=c+"="+d+a+"; path=/"};Common.Utils.Cookie.prototype.ReadCookie=function(b){var e=b+"=";var a=document.cookie.split(";");for(var d=0;d<a.length;d++){var f=a[d];while(f.charAt(0)==" "){f=f.substring(1,f.length)}if(f.indexOf(e)==0){return f.substring(e.length,f.length)}}return null};Common.Utils.Cookie.prototype.EraseCookie=function(a){this.CreateCookie(a,"",-1)};Common.Utils.Cookie=new Common.Utils.Cookie();registerNameSpace("Common.Utils");Common.Utils.GetUrlBrand=function(c,a){c=c.toLowerCase();a=a.toLowerCase();var b={decolar:{br:"www.decolar.com"},despegar:{ar:"www.despegar.com.ar",br:"www.decolar.com",cl:"www.cl.despegar.com",co:"www.co.despegar.com",ec:"www.ec.despegar.com",mx:"www.mx.despegar.com",pe:"www.pe.despegar.com",us:"www.us.despegar.com",uy:"www.uy.despegar.com",ve:"www.ve.despegar.com","default":"www.mx.despegar.com"},viajo:{ar:"www.viajo.com.ar",br:"www.viajo.com.br",mx:"www.viajo.com.mx","default":"www.viajo.com.mx"},previaje:{br:"www.previagem.com","default":"www.previaje.com"}};if(b[c]){return b[c][a]?b[c][a]:b[c]["default"]}else{return null}};registerNameSpace("Common.Utils");Common.Utils.Mask=function(b,c){b=b.toString();c=c.toString();var a=null;if(c.length>=b.length){a=c}else{a=b.substr(0,b.length-c.length);a=a+c}return a};registerNameSpace("Despegar");Despegar.Date=function(a){this.day;this.month;this.year;this.monthText;this.dayOfWeek;this.serverURL="ajaxTimeStamp.asp";this.test="aaaa";this.language=a||"es"};Despegar.Date.prototype.getDaysName=function(a){if(typeof this.daysName!="object"){this.daysName=new Array();if(this.language=="pt"){this.daysName[0]=!a?"Do":"Domingo".substr(0,a);this.daysName[1]=!a?"Se":"Segunda-feira".substr(0,a);this.daysName[2]=!a?"Te":"Terça-feira".substr(0,a);this.daysName[3]=!a?"Qu":"Quarta-feira".substr(0,a);this.daysName[4]=!a?"Qi":"Quinta-feira".substr(0,a);this.daysName[5]=!a?"Se":"Sexta-feira".substr(0,a);this.daysName[6]=!a?"Sa":"Sabado".substr(0,a)}else{this.daysName[0]=!a?"Domingo".substr(0,2):"Domingo".substr(0,a);this.daysName[1]=!a?"Lunes".substr(0,2):"Lunes".substr(0,a);this.daysName[2]=!a?"Martes".substr(0,2):"Martes".substr(0,a);this.daysName[3]=!a?"Miércoles".substr(0,2):"Miércoles".substr(0,a);this.daysName[4]=!a?"Jueves".substr(0,2):"Jueves".substr(0,a);this.daysName[5]=!a?"Viernes".substr(0,2):"Viernes".substr(0,a);this.daysName[6]=!a?"Sábado".substr(0,2):"Sábado".substr(0,a)}this.daysName[7]=this.daysName[0]}return this.daysName};Despegar.Date.prototype.getMonthsName=function(a){if(typeof this.monthsName!="object"){this.monthsName=new Array();if(this.language=="pt"){this.monthsName[1]=!a?"Janeiro":"Janeiro".substr(0,a);this.monthsName[2]=!a?"Fevereiro":"Fevereiro".substr(0,a);this.monthsName[3]=!a?"Março":"Março".substr(0,a);this.monthsName[4]=!a?"Abril":"Abril".substr(0,a);this.monthsName[5]=!a?"Maio":"Maio".substr(0,a);this.monthsName[6]=!a?"Junho":"Junho".substr(0,a);this.monthsName[7]=!a?"Julho":"Julho".substr(0,a);this.monthsName[8]=!a?"Agosto":"Agosto".substr(0,a);this.monthsName[9]=!a?"Setembro":"Setembro".substr(0,a);this.monthsName[10]=!a?"Outubro":"Outubro".substr(0,a);this.monthsName[11]=!a?"Novembro":"Novembro".substr(0,a);this.monthsName[12]=!a?"Dezembro":"Dezembro".substr(0,a)}else{this.monthsName[1]=!a?"Enero":"Enero".substr(0,a);this.monthsName[2]=!a?"Febrero":"Febrero".substr(0,a);this.monthsName[3]=!a?"Marzo":"Marzo".substr(0,a);this.monthsName[4]=!a?"Abril":"Abril".substr(0,a);this.monthsName[5]=!a?"Mayo":"Mayo".substr(0,a);this.monthsName[6]=!a?"Junio":"Junio".substr(0,a);this.monthsName[7]=!a?"Julio":"Julio".substr(0,a);this.monthsName[8]=!a?"Agosto":"Agosto".substr(0,a);this.monthsName[9]=!a?"Septiembre":"Septiembre".substr(0,a);this.monthsName[10]=!a?"Octubre":"Octubre".substr(0,a);this.monthsName[11]=!a?"Noviembre":"Noviembre".substr(0,a);this.monthsName[12]=!a?"Diciembre":"Diciembre".substr(0,a)}}return this.monthsName};Despegar.Date.prototype.setEmpty=function(){this.day=undefined;this.month=undefined;this.year=undefined};Despegar.Date.prototype.isEmpty=function(){if(this.day==undefined||this.month==undefined||this.year==undefined){return true}else{return false}};Despegar.Date.prototype.addDays=function(a){jDate=new Date();jDate=this.getJSDate();jDate.setDate(jDate.getDate()+a);this.day=jDate.getDate();this.month=jDate.getMonth()+1;this.year=jDate.getFullYear()};Despegar.Date.prototype.addMonths=function(a){jDate=new Date(this.year,this.month,1);jDate.setMonth(jDate.getMonth()-1+a);this.year=jDate.getFullYear();this.month=jDate.getMonth()+1};Despegar.Date.prototype.setddmmaaaa=function(a,b){if(b!=undefined){var c=a.split(b);this.day=parseInt(c[0],10);this.month=parseInt(c[1],10);this.year=parseInt(c[2],10)}else{this.day=parseInt(a.substr(0,2),10);this.month=parseInt(a.substr(2,2),10);this.year=parseInt(a.substr(4,4),10)}};Despegar.Date.prototype.setFullDate=function(b,c,a){this.day=parseInt(a,10);this.month=parseInt(c,10);this.year=parseInt(b,10)};Despegar.Date.prototype.setDateFromJSDate=function(a){this.day=a.getDate();this.month=a.getMonth()+1;this.year=a.getFullYear()};Despegar.Date.prototype.getDate=function(){return Common.Utils.Mask("00",this.day.toString())};Despegar.Date.prototype.getMonth=function(){return Common.Utils.Mask("00",this.month.toString())};Despegar.Date.prototype.getYear=function(){return Common.Utils.Mask("2000",this.year.toString())};Despegar.Date.prototype.getddmmaaaa=function(){return Common.Utils.Mask("00",this.day.toString())+"/"+Common.Utils.Mask("00",this.month.toString())+"/"+Common.Utils.Mask("2000",this.year.toString())};Despegar.Date.prototype.getddmm=function(){return Common.Utils.Mask("00",this.day.toString())+"/"+Common.Utils.Mask("00",this.month.toString())};Despegar.Date.prototype.getaaaamm=function(){return Common.Utils.Mask("2000",this.year.toString())+Common.Utils.Mask("00",this.month.toString())};Despegar.Date.prototype.getmmaaaa=function(){return Common.Utils.Mask("00",this.month.toString())+"/"+Common.Utils.Mask("2000",this.year.toString())};Despegar.Date.prototype.getiso=function(){return Common.Utils.Mask("2000",this.year.toString())+Common.Utils.Mask("00",this.month.toString())+Common.Utils.Mask("00",this.day.toString())};Despegar.Date.prototype.getServerDate=function(boolAsync,URLServer,callBackFunction){if(URLServer+"X"!="X"){this.serverURL=URLServer}oDate=this;var JSON=$.ajax({url:this.serverURL,async:boolAsync,success:function(data){sJSON=data;var oJson=eval("("+sJSON+")");this.parentObj.year=oJson.year;this.parentObj.month=oJson.month;this.parentObj.day=oJson.day;this.callBack()},parentObj:oDate,callBack:callBackFunction})};Despegar.Date.prototype.compareTo=function(b){var a=this.getiso();if(a<b){return -1}else{if(a==b){return 0}else{return 1}}};Despegar.Date.prototype.compareToJSDate=function(b){var a=new Despegar.Date();a.setDateFromJSDate(b);return this.compareTo(a.getiso())};Despegar.Date.prototype.getota=function(){return Common.Utils.Mask("2000",this.year.toString())+"-"+Common.Utils.Mask("00",this.month.toString())+"-"+Common.Utils.Mask("00",this.day.toString())};Despegar.Date.prototype.getJSDate=function(){return new Date(this.year,this.month-1,this.day)};Despegar.Date.prototype.getFirstDayOfMonthInWeek=function(){var b=this.day;this.day=1;var a=this.getJSDate();var c=a.getDay()+6;c=c%7;this.day=b;return c};Despegar.Date.prototype.createJSonDate=function(a){var b=Date.UTC(a.getUTCFullYear(),a.getUTCMonth(),a.getUTCDate(),a.getUTCHours(),a.getUTCMinutes(),a.getUTCSeconds(),a.getUTCMilliseconds());return"/Date("+b+")/"};Despegar.Date.prototype.getAmericandDate=function(a){var b=a.split(new RegExp("/","gi"));return b[1]+"/"+b[0]+"/"+b[2]};Despegar.Date.prototype.isLeapYear=function(){return(this.year%4==0&&this.year%100!=0)||this.year%400==0};Despegar.Date.prototype.isValidDate=function(){var a;switch(this.month){case 1:case 3:case 5:case 7:case 8:case 10:case 12:a=31;break;case 4:case 6:case 9:case 11:a=30;break;case 2:if(this.isLeapYear()){a=29}else{a=28}break;default:return false}if(this.day>a||this.day==0){return false}return true};Despegar.Date.prototype.convertDateToString=function(a){return this.getDaysName(3)[a.getUTCDay()]+" "+a.getUTCDate().toString()+" "+this.getMonthsName(3)[a.getUTCMonth()+1]+" "+a.getUTCFullYear().toString().substr(2,2)};registerNameSpace("Common");Common.Calendar=function(){this.drawCalendar=function(){var o=$("<div class='monthsContainer'></div>");var l=$("<div></div>");var y=null;var w=null;var r=null;var q=null;var s=null;var n=new Despegar.Date(this.options.language);var e=null;if(this.calendarContainer.hasClass("created")){e=1}else{e=this.options.shownMonths}for(var c=0;c<e;c++){if(this.calendarContainer.hasClass("created")){c=$(".monthsContainer > div",$(".calendarContainer")).length}n.setddmmaaaa(1+"/"+((this.today.getMonth())+1)+"/"+this.today.getFullYear(),"/");n.addMonths(c);var f=n.getJSDate();var p=n.getFirstDayOfMonthInWeek();l=$("<div id="+n.getaaaamm()+"></div>");r=$("<div class='daysGrid'></div>");w=$("<div class='daysNameContainer'></div>");q=$("<p></p>");if(this.calendarContainer.hasClass("created")==false){if(e==1){this.firstMonth=parseInt(n.getaaaamm());this.lastMonth=parseInt(n.getaaaamm())}else{switch(c){case 0:this.firstMonth=parseInt(n.getaaaamm());break;case e-1:this.lastMonth=parseInt(n.getaaaamm());break}}}var u=n.getMonthsName();y=$("<div class='monthHeader'></div>");y.append($("<h3>"+u[f.getMonth()+1]+" "+f.getFullYear()+"</h3>"));var x=$("<p class='monthsSwitchingArrows'></p>");var k=$("<p class='arrowContainer previous'></p>");var t=$("<a style='font-family: Arial;'>"+String.fromCharCode(9668)+"</a>");t.click(function(){a.showPreviousMonth()});k.append(t);x.append(k);k=$("<p class='arrowContainer next'></p>");t=$("<a style='font-family: Arial;'>"+String.fromCharCode(9658)+"</a>");t.click(function(){a.showNextMonth()});k.append(t);x.append(k);if(this.calendarContainer.hasClass("created")==false){if(e==1){l.addClass("firstMonth");x.addClass("noPrev");l.addClass("lastMonth")}else{switch(c){case 0:l.addClass("firstMonth");x.addClass("noPrev");break;case e-1:l.addClass("lastMonth");break}}}if(($(l).attr("id")>=a.lastAvailableDay.getaaaamm())&&(c>=e-1)){x.addClass("noNext")}y.append(x);l.append(y);var d=n.getDaysName();for(var b=1;b<=7;b++){w.append('<span class="dayName">'+d[b]+"</span>")}l.append(w);n.setddmmaaaa("1/"+(this.today.getMonth()+c+1)+"/"+this.today.getFullYear(),"/");n.addDays(-p-1);var v=null;for(var g=0;g<42;g++){n.addDays(1);v=n.getJSDate();if(v.getMonth()!=f.getMonth()){q.append($("<span class='noCurrentMonth'>"+v.getDate()+"</span>"))}else{if(v>=this.today){s=$("<span id='"+n.getiso()+"'>"+v.getDate()+"</span>").attr("id",n.getiso()).data("date",n.getddmmaaaa()).mouseup(function(){if($(this).hasClass("selectable")){if($(".focused").attr("id")==a.inputGo.attr("id")){$(a.inputGo).val($(this).data("date").toString()).removeClass("settingDateError").data("isValid",true).trigger("change")}else{$(a.inputReturn).val($(this).data("date").toString()).removeClass("settingDateError").data("isValid",true).trigger("change")}}}).click(function(){if($(this).hasClass("selectable")){a.hideCalendar();if($(".focused").attr("id")==a.inputGo.attr("id")){a.checkTextDefault($(a.inputGo))}else{a.checkTextDefault($(a.inputReturn))}}});s=this.setIEDaysHover(s);if(v<this.firstAvailableDay.getJSDate()||v>=this.lastAvailableDay.getJSDate()){s.addClass("nonSelectable")}else{s.addClass("selectable")}if(v.getDate()==this.today.getDate()&&v<=this.firstAvailableDay.getJSDate()){s.addClass("today")}}else{s=$("<span class='pastDate'>"+v.getDate()+"</span>")}q.append(s)}if(g%7==6){r.append(q);if((g+1)/7!=6){q=$("<p></p>")}}}r.append(q);l.append(r);$(l).addClass("calendarVisible");o.append(l)}return o};this.generateCalendar=function(){this.calendarContainer.appendTo("body");this.calendarContainer.append(this.drawCalendar());var b=null;if(this.options.language=="pt"){b="Fechar"}else{b="Cerrar"}this.calendarContainer.append($("<div class='closeCalendar'></div>").append($("<a>"+b+"</a>").click(function(){a.hideCalendar()})));if(this.isIE6){$(".closeCalendar > a",$(".calendarContainer")).hover(function(){$(this).css("color","aqua").css("cursor","pointer")},function(){$(this).css("color","#0066CC").css("cursor","default")})}this.calendarContainer.addClass("created");this.calendarContainer.css("position","absolute");this.calendarContainer.data("language",this.options.language)};this.showCalendar=function(b){this.calendarContainer.show().css("z-index",1001).css("top",((b.offset().top+b.outerHeight())+"px")).css("left",(b.offset().left+"px"));if(a.isIE6){if($("#calendarIframe").length==0){$("<iframe id='calendarIframe'></iframe>").css("position","absolute").css("z-index",1000).appendTo("body")}$("#calendarIframe").show().css("width",a.calendarContainer.outerWidth()).css("height",a.calendarContainer.outerHeight()).css("top",a.calendarContainer.offset().top).css("left",a.calendarContainer.offset().left)}};this.hideCalendar=function(){this.calendarContainer.hide();$("#calendarIframe").hide()};this.setIEDaysHover=function(b){if(this.isIE6){$(b).hover(function(){if($(this).hasClass("selectable")&&$(this).hasClass("selected")==false){$(this).css("border-bottom-color","black").css("border-right-color","black").css("background-color","#CCD9B8")}},function(){if($(this).hasClass("selectable")&&$(this).hasClass("selected")==false){$(this).css("border-bottom-color","white").css("border-right-color","white").css("background-color","white")}})}return b};this.showNextMonth=function(){if($(".lastMonth",$(".calendarContainer")).find(".noNext").length==0){this.firstMonth++;this.lastMonth++;var c=this.firstMonth.toString();var b=this.lastMonth.toString();if(c.substr(4,2)>"12"){this.firstMonth=this.firstMonth-12+parseInt(parseInt(c.substr(4,2))/12)*100}if(b.substr(4,2)>"12"){this.lastMonth=this.lastMonth-12+parseInt(parseInt(b.substr(4,2))/12)*100}this.setMonthsClasses()}};this.showPreviousMonth=function(){if($(".firstMonth",$(".calendarContainer")).find(".noPrev").length==0){this.firstMonth--;this.lastMonth--;var c=this.firstMonth.toString();var b=this.lastMonth.toString();if(c.substr(4,2)<"01"){this.firstMonth=this.firstMonth+12-100}if(b.substr(4,2)<"01"){this.lastMonth=this.lastMonth+12-100}this.setMonthsClasses()}};this.setMonthsClasses=function(){$(".calendarVisible",$(".calendarContainer")).addClass("hiddenMonth").removeClass("calendarVisible").removeClass("firstMonth").removeClass("lastMonth");if(typeof a.anticipationDays!="undefined"){while($("#"+this.lastMonth).length==0){$(".monthsContainer",$(".calendarContainer")).append($(this.drawCalendar()).children(".calendarVisible"))}}else{alert("There was a failure in the calendar configuration")}var c=$(".monthsContainer",$(".calendarContainer")).children().index($("#"+this.firstMonth));var b=$(".monthsContainer",$(".calendarContainer")).children().index($("#"+this.lastMonth));$(".hiddenMonth:lt("+b+"):gt("+c+")",$(".calendarContainer")).addClass("calendarVisible").removeClass("hiddenMonth");$("#"+this.lastMonth).addClass("lastMonth").addClass("calendarVisible").removeClass("hiddenMonth");$("#"+this.firstMonth).addClass("firstMonth").addClass("calendarVisible").removeClass("hiddenMonth")};this.getConfigAndProcess=function(){this.processConfiguration(this.getConfigurationFromServer())};this.getConfigurationFromServer=function(){var b=null;$.ajax({url:a.options.serverURL,async:false,success:function(d){b=d},error:function(d,f,e){},dataType:"json"});if(b==null){var c=new Date();b={};b.today={day:c.getDate(),month:(c.getMonth()+1),year:c.getFullYear()};b.products={cod:"default",data:{anticipationDays:3,availableDays:330}}}return b};this.processConfiguration=function(c){a.configuration=new Array();a.today=new Date(c.today.year,c.today.month-1,c.today.day);var b=null;if($(c.products).length==1){a.configuration[c.products.cod]=c.products.data}else{for(i=0;i<$(c.products).length;i++){b=c.products[i];a.configuration[b.cod]=b.data}}};this.setProduct=function(c){if(typeof this.productData[c]=="undefined"){var b=null;if(typeof this.configuration[c]=="undefined"){b="default"}else{b=c}this.productData[c]=new Object();this.productData[c].availableDays=this.configuration[b].availableDays;this.productData[c].anticipationDays=this.configuration[b].anticipationDays;this.productData[c].firstAvailableDay=new Despegar.Date();this.productData[c].firstAvailableDay.setddmmaaaa(this.today.getDate()+"/"+(this.today.getMonth()+1)+"/"+this.today.getFullYear(),"/");this.productData[c].firstAvailableDay.addDays(this.productData[c].anticipationDays);this.productData[c].lastAvailableDay=new Despegar.Date();this.productData[c].lastAvailableDay.setddmmaaaa(this.productData[c].firstAvailableDay.getddmmaaaa(),"/");this.productData[c].lastAvailableDay.addDays(this.productData[c].availableDays)}this.anticipationDays=this.productData[c].anticipationDays;this.availableDays=this.productData[c].availableDays;this.firstAvailableDay=this.productData[c].firstAvailableDay;this.lastAvailableDay=this.productData[c].lastAvailableDay;if(this.calendarContainer.hasClass("created")){this.setAvailableDays(c)}};this.setAvailableDays=function(){$(".nonSelectable",$(".calendarContainer")).removeClass("nonSelectable").addClass("selectable");$(".selectable:lt("+a.anticipationDays+"),.selectable:gt("+(a.availableDays+a.anticipationDays-1)+")",$(".calendarContainer")).addClass("nonSelectable").removeClass("selectable");$(".noNext",$(".calendarContainer")).removeClass("noNext");if($("#"+this.lastAvailableDay.getaaaamm()).length==1){if(this.lastAvailableDay.getaaaamm()<=$(".monthsContainer",$(".calendarContainer")).children().eq(this.options.shownMonths-1).attr("id")){$(".monthsContainer",$(".calendarContainer")).children().eq(this.options.shownMonths-1).find(".monthsSwitchingArrows").addClass("noNext")}else{$("#"+this.lastAvailableDay.getaaaamm()).find(".monthsSwitchingArrows").addClass("noNext")}}};this.changeLanguage=function(f){if(this.options.language=="pt"){closeLinkText="Fechar"}else{closeLinkText="Cerrar"}$(".closeCalendar > a",$(".calendarContainer")).text(closeLinkText);var c=new Despegar.Date(f);var b=c.getDaysName();$(".dayName",$(".calendarContainer")).each(function(g){this.innerHTML=b[(g%7)+1]});var e=c.getMonthsName();var d=$(".monthsContainer > div:first").attr("id");c.setFullDate(d.substr(0,4),d.substr(4,2),1);$(".monthHeader > h3",$(".calendarContainer")).each(function(g){this.innerHTML=e[c.month]+" "+c.getYear();c.addMonths(1)})};this.setInputEvents=function(b){var c=$(b);b.setValue=function(f){this.value=f;$(this).blur()};var e=false;if(a.options.defaultDate!="dd/mm/aaaa"){e=true}else{c.addClass("default")}c.val(a.options.defaultDate).data("relatedID",a.options.inputRelatedID).data("tripType",a.options.tripType).data("product",a.options.product).data("shownMonths",a.options.shownMonths).data("language",a.options.language).data("isValid",e).addClass("isCalendar").blur(function(){c.data("isValid",false);if(a.calendarContainer.hasClass("active")==false){a.hideCalendar()}var g=/[0-9]{1,2}\/[0-9]{1,2}\/[0-9]{2,4}/;var f=c.val();if(f.match(g)){var k=new Despegar.Date();k.setddmmaaaa(c.val(),"/");if(!(k.isValidDate())||k.compareTo(a.lastAvailableDay.getiso())==1||k.compareTo(a.firstAvailableDay.getiso())==-1||k.month==0||k.day==0){c.addClass("settingDateError").data("isValid",false)}else{if($("#"+k.getiso()).length==1&&$("#"+k.getiso()).hasClass("selectable")){c.val(k.getddmmaaaa());c.removeClass("settingDateError");c.data("isValid",true);if($(".focused").attr("id")==a.inputGo.attr("id")){$("#"+k.getiso()).addClass("go")}else{$("#"+k.getiso()).addClass("return")}}else{c.removeClass("settingDateError");if(typeof a.anticipationDays!="undefined"){while($("#"+k.getiso()).length==0){$(".monthsContainer",$(".calendarContainer")).append($(a.drawCalendar()).children(".calendarVisible"))}}else{alert("There was a failure in the calendar configuration")}if($("#"+k.getiso()).hasClass("selectable")==false){c.addClass("settingDateError").data("isValid",false)}else{c.data("isValid",true)}}}}else{if(f==""||f=="dd/mm/aaaa"){c.val("dd/mm/aaaa");c.removeClass("settingDateError")}else{c.addClass("settingDateError").data("isValid",false)}}c.trigger("change");a.checkTextDefault(c)}).keypress(function(f){a.checkTextDefault(c);switch(f.keyCode){case 13:c.blur();case 27:c.blur();break;default:c.removeClass("settingDateError")}}).focus(function(){if(!a.IsHoverFocus){if(a.options.shownMonths!=c.data("shownMonths")){a.options.shownMonths=c.data("shownMonths")}if(a.calendarContainer.hasClass("created")==false){a.setProduct(c.data("product"));a.generateCalendar()}if(a.calendarContainer.data("language")!=c.data("language")||a.calendarContainer.data("language")!=a.options.language){a.options.language=c.data("language");a.calendarContainer.data("language",a.options.language);a.changeLanguage(a.options.language)}$(".focused").removeClass("focused");c.addClass("focused").select();if(c.data("tripType")=="go"){a.inputGo=c;a.inputReturn=$("#"+c.data("relatedID"))}else{a.inputReturn=c;a.inputGo=$("#"+c.data("relatedID"))}if(a.options.product!=c.data("product")){a.setProduct(c.data("product"));a.options.product=c.data("product")}oDateGo=new Despegar.Date();oDateReturn=new Despegar.Date();$(".selected",$(".calendarContainer")).removeClass("selected");$(".go",$(".calendarContainer")).removeClass("go");$(".return",$(".calendarContainer")).removeClass("return");if($(a.inputGo).hasClass("isCalendar")){oDateGo.setddmmaaaa($(a.inputGo).val(),"/");if($(a.inputGo).hasClass("settingDateError")==false&&$("#"+oDateGo.getiso()).hasClass("selectable")){$("#"+oDateGo.getiso()).addClass("go")}else{oDateGo.setddmmaaaa("0/0/00","/")}}else{oDateGo.setddmmaaaa("0/0/00","/")}if($(a.inputReturn).hasClass("isCalendar")){oDateReturn.setddmmaaaa($(a.inputReturn).val(),"/");if($(a.inputReturn).hasClass("settingDateError")==false&&$("#"+oDateReturn.getiso()).hasClass("selectable")){$("#"+oDateReturn.getiso()).addClass("return")}else{oDateReturn.setddmmaaaa("0/0/00","/")}}else{oDateReturn.setddmmaaaa("0/0/00","/")}selectedGo=$(".go",$(".calendarContainer"));selectedReturn=$(".return",$(".calendarContainer"));oDateLoopController=new Despegar.Date();if($(".calendarContainer.created").length==1&&(selectedGo.length==0&&selectedReturn.length==0)){oDateLoopController.setddmmaaaa(a.today.getDate()+"/"+(a.today.getMonth()+1)+"/"+a.today.getFullYear(),"/");a.firstMonth=oDateLoopController.getaaaamm();oDateLoopController.addMonths(a.options.shownMonths-1);a.lastMonth=oDateLoopController.getaaaamm()}else{if((selectedGo.length==1&&selectedReturn.length==0)||(selectedGo.length==1&&selectedReturn.length==1&&$(".focused").attr("id")==a.inputGo.attr("id"))||(selectedGo.length==1&&selectedReturn.length==1&&(oDateGo.getaaaamm())==(oDateReturn.getaaaamm()))){oDateLoopController.setddmmaaaa(oDateGo.getddmmaaaa(),"/");a.firstMonth=oDateLoopController.getaaaamm();oDateLoopController.addMonths(a.options.shownMonths-1);a.lastMonth=oDateLoopController.getaaaamm();oDateLoopController.setddmmaaaa(a.lastAvailableDay.getddmmaaaa(),"/");if(a.lastMonth>oDateLoopController.getaaaamm()){a.lastMonth=oDateLoopController.getaaaamm();oDateLoopController.addMonths(-a.options.shownMonths+1);a.firstMonth=oDateLoopController.getaaaamm()}}else{if((selectedGo.length==0&&selectedReturn.length==1)||(selectedGo.length==1&&selectedReturn.length==1&&$(".focused").attr("id")==a.inputReturn.attr("id"))){oDateLoopController.setddmmaaaa(oDateReturn.getddmmaaaa(),"/");a.lastMonth=oDateLoopController.getaaaamm();oDateLoopController.addMonths(-a.options.shownMonths+1);a.firstMonth=oDateLoopController.getaaaamm();oDateLoopController.setddmmaaaa((a.today.getDate())+"/"+(a.today.getMonth()+1)+"/"+a.today.getFullYear(),"/");if(a.firstMonth<oDateLoopController.getaaaamm()){a.firstMonth=oDateLoopController.getaaaamm();oDateLoopController.addMonths(a.options.shownMonths-1);a.lastMonth=oDateLoopController.getaaaamm()}}}}a.setMonthsClasses();if($("#"+oDateGo.getiso()).length==1&&$("#"+oDateGo.getiso()).hasClass("selectable")){$("#"+oDateGo.getiso()).addClass("selected")}if($("#"+oDateReturn.getiso()).length==1&&$("#"+oDateReturn.getiso()).hasClass("selectable")){$("#"+oDateReturn.getiso()).addClass("selected")}a.showCalendar(c)}else{a.IsHoverFocus=false}});var d=$("<div class='mainSprite buttonCalendarOn calendarImage'></div>").hover(function(){a.calendarContainer.addClass("active")},function(){a.calendarContainer.removeClass("active")});c.after(d);d.click(function(){if(a.calendarContainer.css("display")=="block"&&$(this).parent().find("input").hasClass("focused")){a.hideCalendar();c.trigger("blur")}else{if(!a.firstClick){c.trigger("blur").trigger("focus")}else{c.trigger("focus").trigger("blur").trigger("focus");a.firstClick=false}}})};this.checkTextDefault=function(b){if(b.val()=="dd/mm/aaaa"){b.addClass("default")}else{b.removeClass("default")}};this.setOptions=function(b){this.options=b||{};this.options.tripType=b.tripType||"go";this.options.inputRelatedID=b.inputRelatedID||"";this.options.defaultDate=b.defaultDate||"dd/mm/aaaa";this.options.product=b.product||"vue";this.options.shownMonths=b.shownMonths||2;if(this.options.shownMonths>12){this.options.shownMonths=12}this.options.language=b.language||"es";this.options.configuration=b.configuration||false;if(this.options.configuration==false){if(typeof this.configuration=="undefined"||(this.options.serverURL!=b.serverURL&&b.serverURL!=null)){this.options.serverURL=b.serverURL||"/Contents/Servicies/CalendarService.ashx";this.getConfigAndProcess();this.productData=new Array()}}else{this.processConfiguration(this.options.configuration);this.productData=new Array()}};this.initializeInput=function(b,c){this.setOptions(c);this.setProduct(this.options.product);this.setInputEvents(b)};this.isIE6=false;if($.browser.msie){if($.browser.version=="6.0"){this.isIE6=true}}this.inputGo=null;this.inputReturn=null;this.firstMonth=null;this.lastMonth=null;this.productData=new Array();this.anticipationDays=null;this.availableDays=null;this.firstAvailableDay=null;this.lastAvailableDay=null;this.calendarContainer=$("<div class='calendarContainer'></div>");this.calendarContainer.hover(function(){a.calendarContainer.addClass("active")},function(){a.calendarContainer.removeClass("active")});this.calendarContainer.mouseleave(function(){if(a.calendarContainer.css("display")=="block"){a.IsHoverFocus=true;$(".focused").trigger("focus")}});this.firstClick=true;this.IsHoverFocus=false;var a=this};Common.Calendar=new Common.Calendar();jQuery.fn.calendar=function(a){this.each(function(){Common.Calendar.initializeInput(this,a)});return this};jQuery.fn.autocomplete=function(a){this.each(function(c,d){var b=this;d.obj=new FrameworkJS.Common.Autocomplete(b,a)});return this};registerNameSpace("Despegar");Despegar.HotelsReportLogData=function(){var b=new Despegar.Date();var a=new Despegar.Logger();this.__type="HotelsReportLogData:#Despegar.Common.Logging";this.Category=15;this.ClientTime=b.createJSonDate(new Date());this.CheckIn;this.CheckOut;this.Distribution;this.Destination;this.Stage;this.ResultCount;this.ResultDelay;this.DetailDisponibility;this.PriceVariation;this.IsCache;this.IsPromotion;this.HotelOrder;this.Provider;this.ClientId=a.getClientId()};registerNameSpace("Despegar");Despegar.Logger=function(){var a=this;this.LogReport=function(d){var b="/Despegar.Services/Logging.svc/LogReport";var c=JSON.stringify(d);$.ajax({url:b,type:"POST",data:c,contentType:"application/json"})};this.getClientId=function(){var b;var c=new Date();var d=Common.Utils.Cookie.ReadCookie("revClientId");if(d==null){b=Math.floor(1000*(Math.random()));b=a.md5(b.toString().concat(c.getTime().toString()));Common.Utils.Cookie.CreateCookie("revClientId",b.toString(),1);d=b}return d};this.md5=function(G){var H;var B=function(c,b){return(c<<b)|(c>>>(32-b))};var L=function(x,c){var aa,b,k,Z,d;k=(x&2147483648);Z=(c&2147483648);aa=(x&1073741824);b=(c&1073741824);d=(x&1073741823)+(c&1073741823);if(aa&b){return(d^2147483648^k^Z)}if(aa|b){if(d&1073741824){return(d^3221225472^k^Z)}else{return(d^1073741824^k^Z)}}else{return(d^k^Z)}};var v=function(b,d,c){return(b&d)|((~b)&c)};var u=function(b,d,c){return(b&c)|(d&(~c))};var t=function(b,d,c){return(b^d^c)};var r=function(b,d,c){return(d^(b|(~c)))};var z=function(aa,Z,af,ae,k,ab,ad){aa=L(aa,L(L(v(Z,af,ae),k),ad));return L(B(aa,ab),Z)};var f=function(aa,Z,af,ae,k,ab,ad){aa=L(aa,L(L(u(Z,af,ae),k),ad));return L(B(aa,ab),Z)};var J=function(aa,Z,af,ae,k,ab,ad){aa=L(aa,L(L(t(Z,af,ae),k),ad));return L(B(aa,ab),Z)};var y=function(aa,Z,af,ae,k,ab,ad){aa=L(aa,L(L(r(Z,af,ae),k),ad));return L(B(aa,ab),Z)};var e=function(aa){var ab;var k=aa.length;var d=k+8;var c=(d-(d%64))/64;var Z=(c+1)*16;var ac=new Array(Z-1);var b=0;var x=0;while(x<k){ab=(x-(x%4))/4;b=(x%4)*8;ac[ab]=(ac[ab]|(aa.charCodeAt(x)<<b));x++}ab=(x-(x%4))/4;b=(x%4)*8;ac[ab]=ac[ab]|(128<<b);ac[Z-2]=k<<3;ac[Z-1]=k>>>29;return ac};var w=function(k){var b="",c="",x,d;for(d=0;d<=3;d++){x=(k>>>(d*8))&255;c="0"+x.toString(16);b=b+c.substr(c.length-2,2)}return b};var I=[],P,l,K,A,g,Y,X,W,V,S=7,Q=12,N=17,M=22,F=5,E=9,D=14,C=20,s=4,q=11,p=16,o=23,U=6,T=10,R=15,O=21;G=a.utf8_encode(G);I=e(G);Y=1732584193;X=4023233417;W=2562383102;V=271733878;H=I.length;for(P=0;P<H;P+=16){l=Y;K=X;A=W;g=V;Y=z(Y,X,W,V,I[P+0],S,3614090360);V=z(V,Y,X,W,I[P+1],Q,3905402710);W=z(W,V,Y,X,I[P+2],N,606105819);X=z(X,W,V,Y,I[P+3],M,3250441966);Y=z(Y,X,W,V,I[P+4],S,4118548399);V=z(V,Y,X,W,I[P+5],Q,1200080426);W=z(W,V,Y,X,I[P+6],N,2821735955);X=z(X,W,V,Y,I[P+7],M,4249261313);Y=z(Y,X,W,V,I[P+8],S,1770035416);V=z(V,Y,X,W,I[P+9],Q,2336552879);W=z(W,V,Y,X,I[P+10],N,4294925233);X=z(X,W,V,Y,I[P+11],M,2304563134);Y=z(Y,X,W,V,I[P+12],S,1804603682);V=z(V,Y,X,W,I[P+13],Q,4254626195);W=z(W,V,Y,X,I[P+14],N,2792965006);X=z(X,W,V,Y,I[P+15],M,1236535329);Y=f(Y,X,W,V,I[P+1],F,4129170786);V=f(V,Y,X,W,I[P+6],E,3225465664);W=f(W,V,Y,X,I[P+11],D,643717713);X=f(X,W,V,Y,I[P+0],C,3921069994);Y=f(Y,X,W,V,I[P+5],F,3593408605);V=f(V,Y,X,W,I[P+10],E,38016083);W=f(W,V,Y,X,I[P+15],D,3634488961);X=f(X,W,V,Y,I[P+4],C,3889429448);Y=f(Y,X,W,V,I[P+9],F,568446438);V=f(V,Y,X,W,I[P+14],E,3275163606);W=f(W,V,Y,X,I[P+3],D,4107603335);X=f(X,W,V,Y,I[P+8],C,1163531501);Y=f(Y,X,W,V,I[P+13],F,2850285829);V=f(V,Y,X,W,I[P+2],E,4243563512);W=f(W,V,Y,X,I[P+7],D,1735328473);X=f(X,W,V,Y,I[P+12],C,2368359562);Y=J(Y,X,W,V,I[P+5],s,4294588738);V=J(V,Y,X,W,I[P+8],q,2272392833);W=J(W,V,Y,X,I[P+11],p,1839030562);X=J(X,W,V,Y,I[P+14],o,4259657740);Y=J(Y,X,W,V,I[P+1],s,2763975236);V=J(V,Y,X,W,I[P+4],q,1272893353);W=J(W,V,Y,X,I[P+7],p,4139469664);X=J(X,W,V,Y,I[P+10],o,3200236656);Y=J(Y,X,W,V,I[P+13],s,681279174);V=J(V,Y,X,W,I[P+0],q,3936430074);W=J(W,V,Y,X,I[P+3],p,3572445317);X=J(X,W,V,Y,I[P+6],o,76029189);Y=J(Y,X,W,V,I[P+9],s,3654602809);V=J(V,Y,X,W,I[P+12],q,3873151461);W=J(W,V,Y,X,I[P+15],p,530742520);X=J(X,W,V,Y,I[P+2],o,3299628645);Y=y(Y,X,W,V,I[P+0],U,4096336452);V=y(V,Y,X,W,I[P+7],T,1126891415);W=y(W,V,Y,X,I[P+14],R,2878612391);X=y(X,W,V,Y,I[P+5],O,4237533241);Y=y(Y,X,W,V,I[P+12],U,1700485571);V=y(V,Y,X,W,I[P+3],T,2399980690);W=y(W,V,Y,X,I[P+10],R,4293915773);X=y(X,W,V,Y,I[P+1],O,2240044497);Y=y(Y,X,W,V,I[P+8],U,1873313359);V=y(V,Y,X,W,I[P+15],T,4264355552);W=y(W,V,Y,X,I[P+6],R,2734768916);X=y(X,W,V,Y,I[P+13],O,1309151649);Y=y(Y,X,W,V,I[P+4],U,4149444226);V=y(V,Y,X,W,I[P+11],T,3174756917);W=y(W,V,Y,X,I[P+2],R,718787259);X=y(X,W,V,Y,I[P+9],O,3951481745);Y=L(Y,l);X=L(X,K);W=L(W,A);V=L(V,g)}var n=w(Y)+w(X)+w(W)+w(V);return n.toLowerCase()};this.utf8_encode=function(b){var l=(b+"").replace(/\r\n/g,"\n").replace(/\r/g,"\n");var o="";var c,f;var d=0;c=f=0;d=l.length;for(var e=0;e<d;e++){var k=l.charCodeAt(e);var g=null;if(k<128){f++}else{if((k>127)&&(k<2048)){g=String.fromCharCode((k>>6)|192)+String.fromCharCode((k&63)|128)}else{g=String.fromCharCode((k>>12)|224)+String.fromCharCode(((k>>6)&63)|128)+String.fromCharCode((k&63)|128)}}if(g!==null){if(f>c){o+=l.substring(c,f)}o+=g;c=f=e+1}}if(f>c){o+=l.substring(c,l.length)}return o}};registerNameSpace("Despegar");Despegar.Form=function(a,c,d,b){this.action=a;this.method=c.toString().toUpperCase();this.id=d;this.name=b;this.oForm=document.createElement("form");this.oForm.name=b;this.oForm.action=a;this.oForm.method=c.toString().toUpperCase();this.oElements=new Array();switch(this.method){case"POST":case"GET":this.oForm.method=this.method;break;case"REST":this.oForm.method="GET";break;default:this.oForm.method="POST"}};Despegar.Form.prototype.addInput=function(b,d,c){var a=document.createElement("input");a.id=d;a.name=b;a.value=c;a.type="hidden";this.oForm.appendChild(a)};Despegar.Form.prototype.post=function(){if(this.method!="REST"){document.body.appendChild(this.oForm);this.oForm.submit()}else{window.location.href=this.action}};registerNameSpace("Despegar.Cars");Despegar.Cars.SearchBoxCars=function(target,options){this.exists=false;this.target=target;this.defaultsearchflow="Asp";var me=this;this.boxtemplate='										<p id="cityget" class="cityget"> 											<label id="labelcityget" for="citygetcar"></label> 											<input type="text" id="citygetcar" class="autocompleteInput"/> 											<span class="mainSprite errorIcon"></span> 											<span class="errorText"></span> 										</p> 										<p id="cityreturn" class="cityreturn"> 											<label id="labelcityreturn" for="cityreturncar"></label> 											<input type="text" id="cityreturncar" class="autocompleteInput"/> 											<span class="mainSprite errorIcon"></span> 											<span class="errorText"></span> 										</p> 										<p id="dategetline" class="dategetline"> 												<label id="labeldateget" for="dateget"></label> 												<input type="text" id="dateget" class="dateInput"/> 												<span class="mainSprite errorIcon"></span> 										</p> 										<p id="datereturnline" class="datereturnline"> 												<label id="labeldatereturn" for="datereturn"></label> 												<input type="text" id="datereturn" class="dateInput"/> 												<span class="mainSprite errorIcon"></span> 												<span class="errorText"></span> 										</p> 										<div class="btnLine"> 										<button class="btnRed buscarBtn" type="button"> 											<span> 												<em id="btnLabel"></em> 											</span> 										</button> 									</div>';this.labels={es:{citygetLabel:"Ciudad de Alquiler:",cityreturnLabel:"Ciudad de Devolucion:",btnLabel:"Buscar autos",dategetdateLabel:"Inicio:",datereturndateLabel:"Finalizacion:",defaultDescGet:"Ingrese donde desea recibir el vehículo",defaultDescReturn:"Ingrese donde desea entregar el vehículo",minCharsText1:"Ingrese al menos las primeras ",minCharsText2:" letras, y aguarde a ver los resultados",errorGet:"La ciudad de alquiler no es válida",errorReturn:"La ciudad de devolución no es válida",errorPreviousDate:"La finalización debe ser posterior al inicio"},pt:{citygetLabel:"Retirada:",cityreturnLabel:"Devolução:",btnLabel:"Procurar Carros",dategetdateLabel:"Inicio:",datereturndateLabel:"Termino:",defaultDescGet:"Escreva onde deseja retirar o veículo",defaultDescReturn:"Escreva onde deseja entregar o veículo",minCharsText1:"Por favor insira as primeiras ",minCharsText2:" letras  e aguardo para ver os resultados",errorGet:"A cidade de retirada não é valida",errorReturn:"A cidade de devolução não é valida",errorPreviousDate:"A data de entrega deve ser depois a data de retirada"}};this.render=function(){var searchboxCarsBox=$(document.createElement("div")).html(this.boxtemplate);$("#labelcityget",searchboxCarsBox).html(this.labels[options.language]["citygetLabel"]);$("#labelcityreturn",searchboxCarsBox).html(this.labels[options.language]["cityreturnLabel"]);$("#labeldateget",searchboxCarsBox).html(this.labels[options.language]["dategetdateLabel"]);$("#labeldatereturn",searchboxCarsBox).html(this.labels[options.language]["datereturndateLabel"]);$("#btnLabel",searchboxCarsBox).html(this.labels[options.language]["btnLabel"]);$("#citygetcar",searchboxCarsBox).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:options.defaultValue,initialText:options.defaultDescGet,maxItemsToShow:5,showValue:true,showMoreResults:true,type:"autos",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true,minCharsText1:this.labels[options.language]["minCharsText1"],minCharsText2:this.labels[options.language]["minCharsText2"],callBackFunction:me.sameCityAutocomplete});$("#cityreturncar",searchboxCarsBox).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:options.defaultValue,initialText:options.defaultDescReturn,maxItemsToShow:5,showValue:true,showMoreResults:true,type:"autos",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true,minCharsText1:this.labels[options.language]["minCharsText1"],minCharsText2:this.labels[options.language]["minCharsText2"]});$("#datereturn",searchboxCarsBox).calendar({tripType:"return",inputRelatedID:"dateget",shownMonths:2,language:options.language,product:"hot"});$("#dateget",searchboxCarsBox).calendar({tripType:"go",inputRelatedID:"datereturn",language:options.language,shownMonths:2,product:"hot"});$(".buscarBtn",searchboxCarsBox).click(function(e){if(me.validate(searchboxCarsBox)){me.searchCars()}});$(target).append(searchboxCarsBox)};this.setCity=function(name,value){$("#citygetcar",target)[0].obj.initialValue(name,value)};this.sameCityAutocomplete=function(){var cityGet=$("#citygetcar",target);var cityReturn=$("#cityreturncar",target);if(cityReturn.val()==options.defaultDescReturn){cityReturn[0].obj.initialValue(cityGet.val(),cityGet.data("dataValue"),cityGet.data("dataType"),true);cityReturn.removeClass("default")}};this.setVisibility=function(visibility){if(visibility==1){$("#cityreturn").addClass("hidereturn")}else{$("#cityreturn").removeClass("hidereturn")}};this.validate=function(searchboxCarsBox){var valid=true;var cityget=$("#citygetcar",searchboxCarsBox);var cityreturn=$("#cityreturncar",searchboxCarsBox);var dateget=$("#dateget",searchboxCarsBox);var datereturn=$("#datereturn",searchboxCarsBox);if(cityget.val()!=this.labels[options.language]["defaultText"]){cityget.parent()}if(cityreturn.val()!=this.labels[options.language]["defaultText"]){cityreturn.parent()}if(cityget.data("dataValue").length==3){cityget.parent().removeClass("errorLabel");cityget.parent().find(".errorText").html("")}else{cityget.parent().addClass("errorLabel");if(cityget.val()!=options.defaultDescGet){cityget.parent().find(".errorText").html(me.labels[options.language]["errorGet"])}valid=false}cityreturn.parent().find(".errorText").html("");if(cityreturn.data("dataValue").length==3){cityreturn.parent().removeClass("errorLabel")}else{cityreturn.parent().addClass("errorLabel");if(cityreturn.val()!=options.defaultDescReturn){cityreturn.parent().find(".errorText").html(me.labels[options.language]["errorReturn"])}valid=false}if(dateget.data("isValid")&&dateget.val()!="dd/mm/aaaa"){dateget.parent().removeClass("errorLabel")}else{dateget.parent().addClass("errorLabel");valid=false}if(datereturn.data("isValid")&&datereturn.val()!="dd/mm/aaaa"){datereturn.parent().removeClass("errorLabel");datereturn.parent().find(".errorText").html("");var datein=new Despegar.Date();datein.setddmmaaaa(dateget.val(),"/");var dateout=new Despegar.Date();dateout.setddmmaaaa(datereturn.val(),"/");if(datein.compareTo(dateout.getiso())==1){datereturn.parent().addClass("errorLabel");datereturn.parent().find(".errorText").html(this.labels[options.language]["errorPreviousDate"]);valid=false}}else{datereturn.parent().addClass("errorLabel");datereturn.parent().find(".errorText");valid=false}return valid};this.searchCars=function(){var cityreturn=$("#cityreturncar",$(target)).data("dataValue");var cityreturndescript=$("#cityreturncar",$(target)).val();if(cityreturn==$("#citygetcar",$(target)).data("dataValue")){var samecity="S"}else{var samecity="N"}var parameters={samecity:samecity,country:options.country,searchpage:options.searchpage,citygetcar:$("#citygetcar",$(target)).data("dataValue"),citygetcardescription:$("#citygetcar",$(target)).val(),cityreturncar:cityreturn,cityreturncardescription:cityreturndescript,dateget:$("#dateget",$(target)).val(),datereturn:$("#datereturn",$(target)).val()};if(eval("Despegar.Cars.CarsFlows."+options.searchflow)!=undefined){eval("var searchObject = new Despegar.Cars.CarsFlows."+options.searchflow);searchObject.searchCars(parameters)}else{eval("var searchObject = new Despegar.Cars.CarsFlows."+this.defaultsearchflow);searchObject.searchCars(parameters)}};var options=options||{};options.country=options.country||"mx";options.language=options.language||"es";options.searchpage=options.searchpage||"homepagev3";options.searchflow=options.searchflow||this.defaultsearchflow;options.defaultDescGet=options.defaultDescGet||this.labels[options.language]["defaultDescGet"];options.defaultDescReturn=options.defaultDescReturn||this.labels[options.language]["defaultDescReturn"];options.TC=options.TC||(typeof(TC)!="undefined"?TC:{});this.render()};registerNameSpace("Despegar.Cars.CarsFlows");Despegar.Cars.CarsFlows.Asp=function(){var a=this;this.getCodeCountry=function(c){var b={ar:"1",br:"10",mx:"86",ve:"82",us:"2",cl:"6",uy:"5",ec:"8",pe:"7",co:"9"};return(b[c])};this.searchCars=function(c){var b=new Despegar.Form("/paginas/autos/resultadoBusquedaAutos.asp","POST","FormSearchCars","FormSearchCars");b.addInput("sMismaCiudad","sMismaCiudad",c.samecity);b.addInput("sCiudadHasta","sCiudadHasta",c.cityreturncar);b.addInput("sCiudadHastaAutos","sCiudadHastaAutos",c.cityreturncar);b.addInput("descripcionDestinationLocation1","descripcionDestinationLocation1",c.cityreturncardescription);b.addInput("sPaginaBuscador","sPaginaBuscador",c.searchpage);b.addInput("sCiudadDesde","sCiudadDesde",c.citygetcar);b.addInput("sCiudadDesdeAutos","sCiudadDesdeAutos",c.citygetcar);b.addInput("DescripcionOriginLocation1","DescripcionOriginLocation1",c.citygetcardescription);b.addInput("sFlowType","sFlowType","a");b.addInput("sFlow","sFlow","a");b.addInput("vPais","vPais",a.getCodeCountry(c.country));b.addInput("DepartureDate1","DepartureDate1",c.dateget);b.addInput("DepartureDate2","DepartureDate2",c.datereturn);b.addInput("FechaSalidaAuto","FechaSalidaAuto",c.dateget);b.addInput("FechaRegresoAuto","FechaRegresoAuto",c.datereturn);b.addInput("dFechaRetiro","dFechaRetiro",c.dateget.substr(0,5));b.addInput("dFechaDevolucion","dFechaDevolucion",c.datereturn.substr(0,5));b.post()}};jQuery.fn.searchBoxCars=function(a){this.each(function(b,c){var d=this;c.obj=new Despegar.Cars.SearchBoxCars(d,a)});return this};registerNameSpace("Despegar.Packages");Despegar.Packages.SearchBoxPackages=function(target,options){this.exists=false;this.target=target;this.defaultsearchflow="ASPPackage";var me=this;this.boxtemplate='										<p id="originline" class="originline"> 											<label id="labelorigin" for="pkgOrigin"></label> 											<select id="pkgOrigin" class="originselect"></select> 											<span class="errorText"></span> 										</p> 										<p id="destinationline" class="destinationline"> 											<label id="labeldestination" for="destination"></label> 											<input type="text" id="destination" class="autocompleteInput"/> 											<span class="errorText"></span> 										</p> 										<p id="checkinline" class="checkinline"> 												<label id="labelcheckin" for="checkin"></label> 												<input type="text" id="checkin" class="dateInput"/> 												<label id="labelcheckout" for="checkout"></label> 												<input type="text" id="checkout" class="dateInput"/> 												<span class="errorText"></span> 										</p> 										<p id="daysline" class="daysline"> 											<label id="labeldays" for="days"></label> 											<select id="days" class="daysselect"></select> 											<span class="errorText"></span> 										</p> 										<div id="paxselection" class="paxselection"> 												<div id="paxdetails" class="paxdetails"> 													<div class="labels">														<label id="labeladt" class="labeladt" for="adtPax"></label> 														<label id="labelcnn" class="labelcnn" for="cnnPax"></label> 														<label id="labelage" class="labelage" for="paxCnnAges"></label> 													</div>												</div> 												<div id="paxdetails" class="paxdetails"> 													<div class="combocontainer"> 														<p><select id="adtPax"></select></p> 														<p><select id="cnnPax"></select></p> 														<p id="paxCnnAges"></p> 													</div>												</div> 										</div> 										<div class="btnLine"> 											<button class="btnRed buscarBtn" type="button">                     						<span>                         						<em id="btnLabel"></em>                     						</span>                 						</button> 										</div>';this.labels={es:{adtLabel:"Adultos <span class='passengerAge'>(12+)</span>",cnnLabel:"Niños <span class='passengerAge'>(0-11)</span>",ageLabel:"Edad",optionAgeDefault:"Elija edad niño ",ageLabelMessage:"años",ageLabelMessageOneYear:"año",daysRange0:"Todas las disponibles","daysRange1-5":"1 a 5 dias","daysRange6-10":"6 a 10 dias","daysRange11-9999":"11 dias o más",originLabel:"Ciudad de origen:",destinationLabel:"Destino:",checkindateLabel:"Partiendo entre:",checkoutdateLabel:"y el:",daysLabel:"Estadía aproximada:",defaultDestinationDesc:"Escriba ciudad, región o país",defaultDestination:"",btnLabel:"Buscar paquetes",errorDestination:"Ingrese una ciudad de destino",errorDate:"La fecha no es válida",errorPreviousDate:"La fecha de salida debe ser posterior a la fecha de llegada",errorSelectAge:"Elija una edad"},pt:{adtLabel:"Adultos <span class='passengerAge'>(12+)</span>",cnnLabel:"Crianças <span class='passengerAge'>(0-11)</span>",ageLabel:"Idade",optionAgeDefault:"Idade da criança ",ageLabelMessage:"anos",ageLabelMessageOneYear:"ano",daysRange0:"Todas as disponíveis","daysRange1-5":"1 a 5 dias","daysRange6-10":"6 a 10 dias","daysRange11-9999":"11 dias ou mais",destinationLabel:"Destino",originLabel:"Cidade de origem",checkindateLabel:"Posso partir entre",checkoutdateLabel:"e",daysLabel:"Estada aproximada",defaultDestinationDesc:"Escreva a cidade de destino",defaultDestination:"",btnLabel:"Procurar pacotes",errorDestination:"Digite a cidade de destino",errorDate:"Digite a data",errorPreviousDate:"A data de partida deve ser posterior à data de regresso",errorSelectAge:"Escolha a idade"}};this.render=function(){var searchBoxPackage=$(document.createElement("div")).html(this.boxtemplate);$("#labelorigin",searchBoxPackage).html(this.labels[options.language]["originLabel"]);$("#labeldestination",searchBoxPackage).html(this.labels[options.language]["destinationLabel"]);$("#labelcheckin",searchBoxPackage).html(this.labels[options.language]["checkindateLabel"]);$("#labelcheckout",searchBoxPackage).html(this.labels[options.language]["checkoutdateLabel"]);$("#labeldays",searchBoxPackage).html(this.labels[options.language]["daysLabel"]);$("#labeladt",searchBoxPackage).html(this.labels[options.language]["adtLabel"]);$("#labelcnn",searchBoxPackage).html(this.labels[options.language]["cnnLabel"]);$("#labelage",searchBoxPackage).html(this.labels[options.language]["ageLabel"]).hide();$("#btnLabel",searchBoxPackage).html(this.labels[options.language]["btnLabel"]);$("#destination",searchBoxPackage).autocomplete({url:"/paginas/autoComplete/completerpaqXML.aspx",minChars:3,initialValue:options.defaultdestination,initialText:options.defaultdestinationdesc,maxItemsToShow:5,showValue:true,showMoreResults:true,type:"packages",useQueryString:true,extraParamsName:["lang","locator","codOrigen"],extraParamsValue:[options.language,"descripcionDestinoPaquetes",this.getOriginValue],extraParamSearchPatternName:"input",minCharsLeyend:true,serviceType:"XML"});$("#checkout",searchBoxPackage).calendar({tripType:"return",inputRelatedID:"checkin",shownMonths:2,language:options.language,product:"paq"});$("#checkin",searchBoxPackage).calendar({tripType:"go",inputRelatedID:"checkout",shownMonths:2,language:options.language,product:"paq"});$(".buscarBtn",searchBoxPackage).click(function(e){if(me.validate(searchBoxPackage)){me.searchPackages()}});this.setOrigins($("#pkgOrigin",searchBoxPackage));this.setDays($("#days",searchBoxPackage));this.getPaxOptions($("#adtPax",searchBoxPackage),"adt",options.minadtpax,options.maxadtpax);this.getPaxOptions($("#cnnPax",searchBoxPackage),"cnn",options.mincnnpax,options.maxcnnpax);$(target).append(searchBoxPackage)};this.setDestination=function(name,value){$("#destination",target)[0].obj.initialValue(name,value)};this.getOriginValue=function(){return $("#pkgOrigin").val()};this.setOrigins=function(oSelect){var sOptions="";for(var i=0;i<options.origins.length;i++){sOptions+='<option value="'+options.origins[i].cityCode+'">'+options.origins[i].cityName+"</option>\n"}oSelect.append(sOptions)};this.setDays=function(oSelect){var sOptions="";sOptions+='<option value="0">'+this.labels[options.language]["daysRange0"]+"</option>\n";sOptions+='<option value="1-5">'+this.labels[options.language]["daysRange1-5"]+"</option>\n";sOptions+='<option value="6-10">'+this.labels[options.language]["daysRange6-10"]+"</option>\n";sOptions+='<option value="11-9999">'+this.labels[options.language]["daysRange11-9999"]+"</option>\n";oSelect.append(sOptions)};this.getPaxOptions=function(oSelect,type,min,max){switch(type){case"adt":oSelect.bind("change",function(e){me.updatePaxOptions(e.target)});break;case"cnn":oSelect.bind("change",function(e){me.setCnnAges(e.target.selectedIndex,$("#paxCnnAges"));me.updatePaxOptions(e.target)});break}var sOptions="";for(var i=min;i<=max;i++){sOptions+='<option value="'+i+'">'+i+"</option>\n"}var selected=oSelect.val();oSelect.empty();oSelect.append(sOptions);if(selected!=null){oSelect.val(selected)}};this.updatePaxOptions=function(oSelect){var adtCant=parseInt($("#paxdetails #adtPax").val(),10);var cnnCant=parseInt($("#paxdetails #cnnPax").val(),10);switch(oSelect.id){case"adtPax":me.getPaxOptions($("#paxdetails #cnnPax"),"cnn",options.mincnnpax,options.maxpaxpkg-adtCant);break;case"cnnPax":me.getPaxOptions($("#paxdetails #adtPax"),"adt",options.minadtpax,options.maxpaxpkg-cnnCant);break}};this.setCnnAges=function(quantity,oContainer){var selects="";for(var i=0;i<options.maxcnnpax;i++){$("#errorTextCnn").remove();if(i<quantity&&$(".cnnAge"+i,oContainer).length<1){selects+='<select class="cnnAge'+i+'" id="cnnAge'+i+'">';selects+='<option value="0">'+this.labels[options.language]["optionAgeDefault"]+(i+1)+"</option>\n";selects+='<option value="'+1+'">'+1+" "+this.labels[options.language]["ageLabelMessageOneYear"]+"</option>\n";for(var x=2;x<=options.maxcnnage;x++){selects+='<option value="'+x+'">'+x+" "+this.labels[options.language]["ageLabelMessage"]+"</option>\n"}selects+="</select> \n"}else{if(i>=quantity){$(".cnnAge"+i,oContainer).remove()}}}if(quantity>0){$("#labelage","#paxdetails").html(this.labels[options.language]["ageLabel"]).show()}else{$("#labelage","#paxdetails").html(this.labels[options.language]["ageLabel"]).hide()}oContainer.append(selects);oContainer.append('<span class="errorText cnnErrorText" id="errorTextCnn"></span>')};this.getCnnQuantity=function(){var cnnQuantity=0;$.each($("#paxCnnAges select"),function(e){if($(this).val()>=2){cnnQuantity++}});return cnnQuantity};this.getInfQuantity=function(){var infQuantity=0;$.each($("#paxCnnAges select"),function(e){if($(this).val()<2){infQuantity++}});return infQuantity};this.validate=function(searchBoxPackage){var valid=true;var CnnValid=true;var checkin=$("#checkin",searchBoxPackage);var checkout=$("#checkout",searchBoxPackage);var inputDestination=$("#destination",searchBoxPackage);if(checkin.data("isValid")&&checkin.val()!="dd/mm/aaaa"){checkin.parent().removeClass("errorLabel");checkin.parent().find(".errorText").html("")}else{checkin.parent().addClass("errorLabel");checkin.parent().find(".errorText").html(this.labels[options.language]["errorDate"]);valid=false}if(checkout.data("isValid")&&checkout.val()!="dd/mm/aaaa"){checkout.parent().removeClass("errorLabel");checkout.parent().find(".errorText").html("");if(valid){var datein=new Despegar.Date();datein.setddmmaaaa(checkin.val(),"/");var dateout=new Despegar.Date();dateout.setddmmaaaa(checkout.val(),"/");if(datein.compareTo(dateout.getiso())==1){checkout.parent().addClass("errorLabel");checkout.parent().find(".errorText").html(this.labels[options.language]["errorPreviousDate"]);valid=false}}}else{checkout.parent().addClass("errorLabel");checkout.parent().find(".errorText").html(this.labels[options.language]["errorDate"]);valid=false}if(inputDestination.data("dataValue").length>=2){inputDestination.parent().removeClass("errorLabel");inputDestination.parent().find(".errorText").html("")}else{inputDestination.parent().addClass("errorLabel");inputDestination.parent().find(".errorText").html(this.labels[options.language]["errorDestination"]);valid=false}for(var i=0;i<options.maxcnnpax;i++){var selectedAge=$("#cnnAge"+i);if($(selectedAge).is(":visible")){if(selectedAge.val()==0){selectedAge.addClass("errorLabelSelect");valid=false;CnnValid=false}else{selectedAge.removeClass("errorLabelSelect")}}}if(CnnValid==false){$("#errorTextCnn").html(this.labels[options.language]["errorSelectAge"])}else{$("#errorTextCnn").html("")}return valid};this.searchPackages=function(){var parameters={searchpage:options.searchpage,origin:this.getOriginValue(),destination:$("#destination",$(target)).data("dataValue"),destinationDesc:$("#destination",$(target)).val(),checkin:$("#checkin",$(target)).val(),checkout:$("#checkout",$(target)).val(),country:options.country,destinationType:$("#destination",$(target)).data("dataType"),daysRange:$("#days",$(target)).val(),adtPax:$("#adtPax",$(target)).val(),cnnPax:this.getCnnQuantity(),infPax:this.getInfQuantity(),searchBoxType:options.searchboxtype};if(eval("Despegar.Packages.PackageFlows."+options.searchflow)!=undefined){eval("var searchObject = new Despegar.Packages.PackageFlows."+options.searchflow);searchObject.searchPackages(parameters)}else{eval("var searchObject = new Despegar.Packages.PackageFlows."+this.defaultsearchflow);searchObject.searchPackages(parameters)}};var options=options||{};options.origins=options.origins||[{cityCode:"",cityName:"Seleccione una ciudad"}];options.country=options.country||"mx";options.language=options.language||"es";options.maxroomsquantity=options.maxroomsquantity||4;options.defaultrooms=options.defaultrooms||1;options.searchflow=options.searchflow||this.defaultsearchflow;options.maxpaxpkg=options.maxpaxpkg||6;options.minadtpax=options.maxadtpax||1;options.maxadtpax=options.maxadtpax||6;options.mincnnpax=options.maxcnnpax||0;options.maxcnnpax=options.maxcnnpax||5;options.maxcnnage=options.maxcnnage||11;options.defaultdestination=options.defaultdestination||this.labels[options.language]["defaultDestination"];options.defaultdestinationdesc=options.defaultdestinationdesc||this.labels[options.language]["defaultDestinationDesc"];options.searchpage=options.searchpage||"homepagev3";options.searchboxtype=options.searchboxtype||"Home";this.render()};registerNameSpace("Despegar.Packages.PackageFlows");Despegar.Packages.PackageFlows.ASPPackage=function(){var a=this;this.getCodeCountry=function(c){var b={ar:"1",br:"10",mx:"86",ve:"82",us:"2",cl:"6",uy:"5",ec:"8",pe:"7",co:"9"};return(b[c])};this.searchPackages=function(c){var b=new Despegar.Form("http://www.ar.despegar.com/paginas/paquetes/resultadobusquedapaquetes.asp","POST","FormSearchPackages","FormSearchPackages");b.addInput("sPaginaBuscador","sPaginaBuscador",c.searchpage);b.addInput("OriginLocation1","OriginLocation1",c.origin);b.addInput("DestinationLocation2Hidden","DestinationLocation2Hidden",c.destination);b.addInput("DestinationLocation1","DestinationLocation1",c.destination);b.addInput("DestinationLocation2","DestinationLocation2",c.destinationDesc);b.addInput("sFlowType","sFlowType","P");b.addInput("DescripcionOriginLocation1","DescripcionOriginLocation1","");b.addInput("DescripcionDestinationLocation1","DescripcionDestinationLocation1","");b.addInput("sFlow","sFlow","p");b.addInput("FechaSalida1","FechaSalida1",c.checkin);b.addInput("FechaSalida2","FechaSalida2",c.checkout);b.addInput("idPais","idPais",a.getCodeCountry(c.country));b.addInput("TipoDestino","TipoDestino",c.destinationType);b.addInput("MultipleDestino","MultipleDestino","");b.addInput("ComboDuracion","ComboDuracion",c.daysRange);b.addInput("ADT","ADT",c.adtPax);b.addInput("CNN","CNN",c.cnnPax);b.addInput("INF","INF",c.infPax);b.addInput("sBusqFiltro","sBusqFiltro","N");b.addInput("TipoBuscador","TipoBuscador",c.searchBoxType);b.addInput("sRegionDesc","sRegionDesc","");b.addInput("sMesSalidaDesc","sMesSalidaDesc","");b.addInput("FechaRegreso2","FechaRegreso2","");b.addInput("FechaRegreso1","FechaRegreso1","");b.post()}};jQuery.fn.searchBoxPackages=function(a){this.each(function(b,c){var d=this;c.obj=new Despegar.Packages.SearchBoxPackages(d,a)});return this};registerNameSpace("Despegar.Flights");Despegar.Flights.SearchBoxFlights=function(target,options){this.exists=false;this.target=target;this.defaultsearchflow="Revancha";var me=this;var cookieSearch=false;this.boxtemplate='										<ul class="tripType">											<li>												<input id="roundtrip" type="radio" checked="checked" name="tripType" value="RoundTrip"/>												<label for="roundtrip" id="roundtriplbl" class="lblRadio"></label>											</li>											<li>												<input id="oneway" type="radio" name="tripType" value="oneWay"/>												<label for="oneway" id="onewaylbl" class="lblRadio"></label>											</li>											<li>												<input id="multipleDestinations" type="radio" name="tripType" value="MultipleDestinations"/>												<label for="multipleDestinations" id="multipleDestinationslbl" class="lblRadio"></label>											</li>										</ul>										<div class="roundtripContainer">    									<p id="originline" class="originline"> 											<label id="labelorigin" for="origin"></label> 											<input type="text" id="origin" class="autocompleteInput"/> 											<span class="mainSprite errorIcon"></span> 										</p> 										<p id="destinationline" class="destinationline"> 											<label id="labeldestination" for="destination"></label> 											<input type="text" id="destination" class="autocompleteInput"/> 											<span class="mainSprite errorIcon"></span> 											<span class="errorText"></span> 										</p> 										<p id="departuredateline" class="departuredateline"> 												<label id="labeldeparture" for="departure"></label> 												<input type="text" id="departure" class="dateInput"/> 												<span class="mainSprite errorIcon"></span> 										</p> 										<p id="returndateline" class="returnline"> 												<label id="labelreturn" for="return"></label> 												<input type="text" id="return" class="dateInput"/> 												<span class="mainSprite errorIcon"></span> 												<span class="errorText"></span> 										</p> 										</div>										<div id="paxselection" class="paxselection"> 												<div id="roomsdetails" class="roomsdetails"> 													<div class="adtselectline">														<label id="labeladt" class="labeladt" for="selectAdtFlights"></label> 													</div>													<div class="childselectsbox">														<label id="labelcnn" class="labelcnn" for="selectCnnFlights"></label> 													</div>													<div class="ageselectsbox">														<label id="labelageflights" class="labelage"></label> 													</div>												</div> 												<div style="clear:both"></div>										</div>										<div class="otherOptions">											<p class="seeFinancingOptions">												<input type="checkbox" class="seeFinancingOptionsChkBox" id="seeFinancingOptionsChkBox" checked="true" />												<label for="seeFinancingOptionsChkBox" class="seeFinancingOptionsChkBoxLbl"></label>											</p>											<p class="searchHotelsToo">												<input type="checkbox" class="searchHotelsTooChkBox" id="searchHotelsTooChkBox"/>												<label for="searchHotelsTooChkBox" class="searchHotelsTooChkBoxLbl"></label>											</p>										</div>										<p class="advOptionsContainer">											<a class="advOptionsLink"></a>										</p>										<div class="btnLine"> 											<button class="btnRed buscarBtn" type="button">                     						<span>                         						<em id="btnLabel"></em>                     						</span>                 						</button> 										</div>';this.selectAgeTemplate='										<p class="selectAgeLine">										 <select class="selectAge">										 	<option value="-1"></option>    										<option value="0"></option>    										<option value="3"></option>    										<option value="4"></option>    										<option value="12"></option>    										</select>										 <span class="ageMsg"></span>										 </p>';this.labels={es:{adtLabel:'Adultos: <span class="passengerAge">(12+)</span>',cnnLabel:'Menores: <span class="passengerAge">(0-11)</span>',ageLabelMessage:"años",destinationLabel:"Destino:",originLabel:"Origen:",checkindateLabel:"Partida:",checkoutdateLabel:"Regreso:",defaultDestinationDesc:"Ingrese una ciudad de destino",defaultDestination:"",defaultOriginDesc:"Ingrese una ciudad de origen",defaultOrigin:"",advOptionsLink:"Opciones avanzadas",btnLabel:"Buscar vuelos",errorDestinationEqualOrigin:"El destino debe ser diferente del origen",errorInfQuantity:"No puede ingresar mas bebés que adultos",errorAgeQuantity:"Debe ingresar la edad de los niños.",errorPreviousDate:"El regreso debe ser posterior a la partida",errorPreviousDateMD:"La partida de este tramo, debe ser posterior a la del tramo anterior",optionAgeDefault:"Elija edad niño ",optionAgeOne:"0 a 24 meses (en brazos)",optionAgeTwo:"0 a 24 meses (en asiento)",optionAgeThree:"2 a 11 años",optionAgeFour:"12 años o más",labelAgeStart:"Edad al",labelPriceInf:"Tarifa Bebé",labelPriceCnn:"Tarifa Niño",labelPriceAdt:"Tarifa Adulto",labelOneWay:"Sólo ida",labelRoundTrip:"Ida y vuelta",labelMultipleDestinations:"Múltiples Destinos",ageTitle1:"Edad al ",ageTitle2:"finalizar el viaje",Tract:"Tramo ",lblAddTract:"Agregar nuevo Tramo",labelSearchHotelsToo:'también quiero ver Hoteles <div class="message">(se abrirá una ventana nueva)</div>',labelSeeFinancingOptions:"Mostrar opciones de financiación",minCharsText1:"Ingrese al menos las primeras ",minCharsText2:" letras, y aguarde a ver los resultados"},pt:{adtLabel:'Adultos <span class="passengerAge">(12+)</span>',cnnLabel:'Crianças <span class="passengerAge">(0-11)</span>',ageLabelMessage:"anos",destinationLabel:"Destino:",originLabel:"Origem:",checkindateLabel:"Ida:",checkoutdateLabel:"Volta:",defaultDestinationDesc:"Digite a cidade de destino",defaultDestination:"",defaultOriginDesc:"Digite a cidade de partida",defaultOrigin:"",advOptionsLink:"Opções avançadas",btnLabel:"Procurar voos",errorDestinationEqualOrigin:"O destino deve ser diferente da origem",errorInfQuantity:"Não podem viajar mais bebês que adultos",errorAgeQuantity:"Debe ingresar la edad de los niños.",errorPreviousDate:"A volta deve ser depois a data de ida",errorPreviousDateMD:"A partida deste trajeto deverá ser posterior a do trajeto anterior.",optionAgeDefault:"Selecione a idade da criança ",optionAgeOne:"0 a 24 meses (nos braços)",optionAgeTwo:"0 a 24 meses (no assento)",optionAgeThree:"Até 11 anos",optionAgeFour:"12 anos ou mais",labelAgeStart:"Idade ao",labelPriceInf:"Tarifa Bebê",labelPriceCnn:"Tarifa Criança",labelPriceAdt:"Tarifa Adulto",labelOneWay:"Somente ida",labelRoundTrip:"Ida e volta",labelMultipleDestinations:"Múltiplos Destinos",ageTitle1:"Idade ao ",ageTitle2:"finalizar a viagem ",Tract:"Trajeto ",lblAddTract:"Agregar novo trajeto",labelSearchHotelsToo:"Pesquisar também hotéis",labelSeeFinancingOptions:"Mostrar opções de financiamento",minCharsText1:"Por favor insira as primeiras ",minCharsText2:" letras  e aguardo para ver os resultados"}};this.render=function(){if(options.remembersearch==1){try{var parametersCookie=Common.Utils.Cookie.ReadCookie("flight-"+options.searchflow);cookieSearch=true;if(parametersCookie){var parametersObj=JSON.parse(parametersCookie);options.datedeparture=parametersObj.departure;options.datereturn=parametersObj.returnDate;options.datedeparture=parametersObj.departureDate;options.defaultdestination=parametersObj.destination;options.defaultorigin=parametersObj.origin;options.defaultorigindesc=parametersObj.originDesc.replace(" ("+parametersObj.origin+")","");options.defaultdestinationdesc=parametersObj.destinationDesc.replace(" ("+parametersObj.destination+")","");options.defaultpaxs=parametersObj.adt;options.defaultpaxscnn=parseInt(parametersObj.cnn)+parseInt(parametersObj.inf)}}catch(e){if(window.console){console.error("Despegar remembers the search parameters in a cookie, but somehow the cookie was corrputed and we can't retrieve those parameters. We hope that reentering your search doesn't cause you to leave.",e)}}}var searchboxFlightBox=$(document.createElement("div")).html(this.boxtemplate);$("#labeldestination",searchboxFlightBox).html(this.labels[options.language]["destinationLabel"]);$("#labelorigin",searchboxFlightBox).html(this.labels[options.language]["originLabel"]);$("#labeldeparture",searchboxFlightBox).html(this.labels[options.language]["checkindateLabel"]);$("#labelreturn",searchboxFlightBox).html(this.labels[options.language]["checkoutdateLabel"]);$("#labeladt",searchboxFlightBox).html(this.labels[options.language]["adtLabel"]);$("#labelcnn",searchboxFlightBox).html(this.labels[options.language]["cnnLabel"]);$("#labelageflights",searchboxFlightBox).html(this.labels[options.language]["ageTitle1"]+this.labels[options.language]["ageTitle2"]).hide();$("#btnLabel",searchboxFlightBox).html(this.labels[options.language]["btnLabel"]);$(".advOptionsLink",searchboxFlightBox).html('<span class="mainSprite littleArrowBlackRight floatLeft advOptionsArrow"></span> <span class="floatLeft">'+this.labels[options.language]["advOptionsLink"]+"</span>");$("#onewaylbl",searchboxFlightBox).html(this.labels[options.language]["labelOneWay"]);$("#roundtriplbl",searchboxFlightBox).html(this.labels[options.language]["labelRoundTrip"]).addClass("lblRadioSelected");$("#multipleDestinationslbl",searchboxFlightBox).html(this.labels[options.language]["labelMultipleDestinations"]);$(".searchHotelsTooChkBoxLbl",searchboxFlightBox).html(this.labels[options.language]["labelSearchHotelsToo"]);$(".seeFinancingOptionsChkBoxLbl",searchboxFlightBox).html(this.labels[options.language]["labelSeeFinancingOptions"]);$("#origin",searchboxFlightBox).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:options.defaultorigin,initialText:options.defaultorigindesc,maxItemsToShow:5,showValue:true,showMoreResults:true,type:"vuelos",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true,minCharsText1:this.labels[options.language]["minCharsText1"],minCharsText2:this.labels[options.language]["minCharsText2"]});$("#destination",searchboxFlightBox).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:options.defaultdestination,initialText:options.defaultdestinationdesc,maxItemsToShow:5,showValue:true,showMoreResults:true,type:"vuelos",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true,minCharsText1:this.labels[options.language]["minCharsText1"],minCharsText2:this.labels[options.language]["minCharsText2"]});$("#departure",searchboxFlightBox).calendar({tripType:"go",inputRelatedID:"return",defaultDate:options.datedeparture,shownMonths:2,language:options.language,product:"vue"});$("#return",searchboxFlightBox).calendar({tripType:"return",inputRelatedID:"departure",language:options.language,defaultDate:options.datereturn,shownMonths:2,product:"vue"});$(".advOptionsLink",searchboxFlightBox).click(function(e){me.renderAdvancedOptions($(this));$(this).html('<span class="mainSprite littleArrowBlackDown floatLeft advOptionsArrow"></span> <span class="floatLeft">'+me.labels[options.language]["advOptionsLink"]+"</span>")});$(".buscarBtn",searchboxFlightBox).click(function(e){if(me.validate(searchboxFlightBox)){me.searchFlights()}});$("#return",searchboxFlightBox).change(updateLabelAge);function updateLabelAge(e,clear){if($("#return",searchboxFlightBox).data("isValid")&&!clear){$("#labelageflights",$(".roomsdetails")).html(me.labels[options.language]["ageTitle1"]+$("#return",searchboxFlightBox).val())}else{$("#labelageflights",$(".roomsdetails")).html(me.labels[options.language]["ageTitle1"]+me.labels[options.language]["ageTitle2"])}}$("#multipleDestinations",searchboxFlightBox).click(function(e){me.multipleDestinations(this);updateLabelAge(null,true);$("#paxselection",searchboxFlightBox).addClass("paxselectionMargin")});$("#roundtrip",searchboxFlightBox).click(function(e){$(".roundtripContainer").slideDown("slow");$(".multipleDestinationContainer").slideUp("fast");$("#roundtriplbl").addClass("lblRadioSelected");$("#multipleDestinationslbl").removeClass("lblRadioSelected");$("#onewaylbl").removeClass("lblRadioSelected");$(".returnline",$(".roundtripContainer")).slideDown();$(".returnTimeLine",$(".advancedOptions")).show();$(".advOptionsContainer",$(".roundtripContainer").parent()).fadeIn("slow");updateLabelAge();$("#paxselection",searchboxFlightBox).removeClass("paxselectionMargin")});$("#oneway",searchboxFlightBox).click(function(e){$(".roundtripContainer").slideDown("slow");$(".multipleDestinationContainer").slideUp("fast");$("#roundtriplbl").removeClass("lblRadioSelected");$("#multipleDestinationslbl").removeClass("lblRadioSelected");$("#onewaylbl").addClass("lblRadioSelected");$(".returnline",$(".roundtripContainer")).slideUp();$(".returnTimeLine",$(".advancedOptions")).hide();updateLabelAge(null,true);$(".advOptionsContainer",$(".roundtripContainer").parent()).fadeIn("slow");$("#paxselection",searchboxFlightBox).removeClass("paxselectionMargin")});this.createPassangers(searchboxFlightBox);$(target).append(searchboxFlightBox);updateLabelAge()};this.createPassangers=function(obj){var maxPassangers=options.maxpax;maxPassangers=maxPassangers-options.defaultpaxscnn;var selectAdt=$(document.createElement("select")).attr("id","selectAdtFlights").addClass("selectAdt").html(this.createOptionsDropdown(maxPassangers,options.defaultpaxs,1)).change(function(e){me.changeAdt(this)});$(".adtselectline",obj).append(selectAdt);var maxCnnInitial=options.maxpax-options.defaultpaxs;if(maxCnnInitial>options.maxcnn){maxCnnInitial=options.maxcnn}var selectCnn=$(document.createElement("select")).attr("id","selectCnnFlights").html(this.createOptionsDropdown(maxCnnInitial,options.defaultpaxscnn,0)).addClass("selectCnn").change(function(e){me.changeCnn(this)});$(".childselectsbox",obj).append(selectCnn);this.createCnnAgeSelect(obj,options.defaultpaxscnn)};this.createCnnAgeSelect=function(obj,defaultCnn){for(h=1;h<=options.maxcnn;h++){var objSelects=$(this.selectAgeTemplate);$("select",objSelects).change(function(e){me.setLabelAge($(this))});$("option:eq(0)",$("select",objSelects)).html(this.labels[options.language]["optionAgeDefault"]+h);$(".ageselectsbox",obj).append(objSelects);objSelects.hide()}var selectsAges=$("select",$(".ageselectsbox",obj));$("option:eq(1)",selectsAges).html(this.labels[options.language]["optionAgeOne"]);$("option:eq(2)",selectsAges).html(this.labels[options.language]["optionAgeTwo"]);$("option:eq(3)",selectsAges).html(this.labels[options.language]["optionAgeThree"]);$("option:eq(4)",selectsAges).html(this.labels[options.language]["optionAgeFour"]);if(defaultCnn>0){if(options.datereturn!="dd/mm/aaaa"){$("#labelageflights",$(".roomsdetails",obj)).html(this.labels[options.language]["ageTitle1"]+options.datereturn);$("#labelageflights",$(".roomsdetails",obj)).show()}$(".selectAgeLine:lt("+defaultCnn+")",$(".ageselectsbox",obj)).show()}};this.setLabelAge=function(obj){var labelSpan=obj.next();if(labelSpan.hasClass("errorIcon")){var errorIcon=labelSpan;labelSpan=labelSpan.next();errorIcon.remove()}labelSpan.hide();switch(obj.val()){case"-1":labelSpan.html("");break;case"0":labelSpan.html(this.labels[options.language]["labelPriceInf"]).removeClass("adultPriceWarning");break;case"3":labelSpan.html(this.labels[options.language]["labelPriceCnn"]).removeClass("adultPriceWarning");break;case"4":labelSpan.html(this.labels[options.language]["labelPriceCnn"]).removeClass("adultPriceWarning");break;case"12":labelSpan.html(this.labels[options.language]["labelPriceAdt"]).addClass("adultPriceWarning");break}labelSpan.fadeIn("slow")};this.createOptionsDropdown=function(options,defaultOption,minvalue){var returnValue="";for(i=0;i<=options;i++){if(i>=minvalue){if(i==defaultOption){returnValue+='<option value="'+i+'" selected="selected">'+i+"</option>"}else{returnValue+='<option value="'+i+'">'+i+"</option>"}}}return returnValue};this.changeAdt=function(obj){var selectCnn=$(".selectCnn",$(obj).parent().next());var valueCnnSelected=selectCnn.val();var valueAdtSelected=$(obj).val();var maxCnns=options.maxpaxroom-valueAdtSelected;if(maxCnns>options.maxcnnroom){maxCnns=options.maxcnnroom}selectCnn.html(this.createOptionsDropdown(maxCnns,0,0));selectCnn.val(valueCnnSelected);if(valueAdtSelected==options.maxpaxroom){selectCnn.attr("disabled","disabled")}else{selectCnn.attr("disabled","")}};this.changeCnn=function(obj){var lblAge=$("#labelageflights",$(".roomsdetails"));var qty=$(obj).val();var selectAdt=$(".selectAdt",$(obj).parent().prev());var valueSelectedAdt=selectAdt.val();var maxAdts=options.maxpaxroom-$(obj).val();selectAdt.html(this.createOptionsDropdown(maxAdts,options.defaultpaxs,1));selectAdt.val(valueSelectedAdt);if(qty>0){$(".ageselectsbox").addClass("ageselectsboxMargin");lblAge.show();$(".selectAgeLine",$(".ageselectsbox")).hide();var selectsAge=$(".selectAgeLine:lt("+qty+")",$(".ageselectsbox"));selectsAge.show()}else{$(".ageselectsbox").removeClass("ageselectsboxMargin");var visibleSelectsAge=$(".selectAgeLine:visible",$(".ageselectsbox"));var thisSelects=$(".selectAgeLine:visible",$(".ageselectsbox"));thisSelects.hide();if(visibleSelectsAge.length==thisSelects.length){lblAge.hide()}}};this.renderAdvancedOptions=function(obj){var advOptionsTemplate='    									<div class="advancedOptions">										<p>										<label class="lblDepartureTime"></label>										<select class="departureTime"></select>										<span class="departureTimeMsg"></span>										</p>										<p class="returnTimeLine">										<label class="lblReturnTime"></label>										<select class="returnTime"></select>										<span class="returnTimeMsg"></span>										</p>										<p>										<label class="lblStopQuantity"></label>										<select class="stopQuantity"></select>										<span class="stopQuantityMsg"></span>										</p>										<p>										<label class="lblClassPref"></label>										<select class="classPref"></select>										<span class="classPrefMsg"></span>										</p>										<p>										<label class="lblAirlinePref"></label>										<input class="airlinePref"/>										<span class="airlinePrefMsg"></span>										</p>										</div><div style="clear:both;"></div>';var labelsAdvOptions={es:{departureTime:"Horario de salida:",returnTimeLbl:"Hora de regreso:",classPrefLbl:"Clase de boleto:",stopQuantityLbl:"Escalas:",airlinePrefLbl:"Aerolínea:",defaultOption:"Sin Preferencias",midday:"Mediodia",midnight:"Medianoche",prefixStops:"Hasta",stop:"Escala",stops:"Escalas",directFlight:"Sólo vuelos directos",defaultAirlines:"Escriba una aerolinea",economicwr:"Turista con restricciones",economicnr:"Turista sin restricciones",business:"Ejecutiva/Business",firstClass:"Primera clase",minCharsText1Airline:"Ingrese al menos las ",minCharsText2Airline:" primeras letras del nombre de la aerolinea"},pt:{departureTime:"Horário de partida:",returnTimeLbl:"Horário de retorno:",classPrefLbl:"Classe de bilhete:",stopQuantityLbl:"Escalas:",airlinePrefLbl:"Cia. Aérea:",defaultOption:"Sem preferências",midday:"Meia-noite",midnight:"Meio-dia",prefixStops:"Até",stop:"Escala",stops:"Escalas",directFlight:"Somente vôo direto",defaultAirlines:"Escreva uma cia. aérea",economicwr:"Turistica com restriçoes",economicnr:"Turistica sem restriçoes",business:"Executiva/Business",firstClass:"Primeira Classe",minCharsText1Airline:"Digite pelo menos ",minCharsText2Airline:" primeiras letras do nome da cia. aérea e aguarde a ver os resultados."}};var advOptions=$(advOptionsTemplate);$(".lblDepartureTime",advOptions).html(labelsAdvOptions[options.language]["departureTime"]);$(".lblReturnTime",advOptions).html(labelsAdvOptions[options.language]["returnTimeLbl"]);$(".lblClassPref",advOptions).html(labelsAdvOptions[options.language]["classPrefLbl"]);$(".lblStopQuantity",advOptions).html(labelsAdvOptions[options.language]["stopQuantityLbl"]);$(".lblAirlinePref",advOptions).html(labelsAdvOptions[options.language]["airlinePrefLbl"]);var optionsTimeTemplate='			 						<option value="NA">aaa</option>									<option value="00">aaa</option>									<option value="01">1 AM</option>									<option value="02">2 AM</option>									<option value="03">3 AM</option>									<option value="04">4 AM</option>									<option value="05">5 AM</option>									<option value="06">6 AM</option>									<option value="07">7 AM</option>									<option value="08">8 AM</option>									<option value="09">9 AM</option>									<option value="10">10 AM</option>									<option value="11">11 AM</option>									<option value="12">aaa</option>									<option value="13">1 PM</option>									<option value="14">2 PM</option>									<option value="15">3 PM</option>									<option value="16">4 PM</option>									<option value="17">5 PM</option>									<option value="18">6 PM</option>									<option value="19">7 PM</option>									<option value="20">8 PM</option>									<option value="21">9 PM</option>									<option value="22">10 PM</option>									<option value="23">11 PM</option>';$(".returnTime",advOptions).append(optionsTimeTemplate);$(".departureTime",advOptions).append(optionsTimeTemplate);$("option:eq(0)",$(".returnTime",advOptions)).text(labelsAdvOptions[options.language]["defaultOption"]);$("option:eq(1)",$(".returnTime",advOptions)).text(labelsAdvOptions[options.language]["midnight"]);$("option:eq(13)",$(".returnTime",advOptions)).text(labelsAdvOptions[options.language]["midday"]);$("option:eq(0)",$(".departureTime",advOptions)).text(labelsAdvOptions[options.language]["defaultOption"]);$("option:eq(1)",$(".departureTime",advOptions)).text(labelsAdvOptions[options.language]["midnight"]);$("option:eq(13)",$(".departureTime",advOptions)).text(labelsAdvOptions[options.language]["midday"]);var optionsStops='<option value="NA">'+labelsAdvOptions[options.language]["defaultOption"]+"</option>";for(i=0;i<9;i++){if(i==0){optionsStops+='<option value="'+i+'">'+labelsAdvOptions[options.language]["directFlight"]+"</option>"}else{if(i==1){optionsStops+='<option value="'+i+'">'+labelsAdvOptions[options.language]["prefixStops"]+" "+i+" "+labelsAdvOptions[options.language]["stop"]+"</option>"}else{optionsStops+='<option value="'+i+'">'+labelsAdvOptions[options.language]["prefixStops"]+" "+i+" "+labelsAdvOptions[options.language]["stops"]+"</option>"}}}$(".stopQuantity",advOptions).append(optionsStops);var optionsTicketClassTemplate='			 											  <option value="NA">			 											  </option><option value="YC">			 											  </option><option value="YS">			 											  </option><option value="C">			 											  </option><option value="F"></option>';$(".classPref",advOptions).append(optionsTicketClassTemplate);$("option:eq(0)",$(".classPref",advOptions)).text(labelsAdvOptions[options.language]["defaultOption"]);$("option:eq(1)",$(".classPref",advOptions)).text(labelsAdvOptions[options.language]["economicwr"]);$("option:eq(2)",$(".classPref",advOptions)).text(labelsAdvOptions[options.language]["economicnr"]);$("option:eq(3)",$(".classPref",advOptions)).text(labelsAdvOptions[options.language]["business"]);$("option:eq(4)",$(".classPref",advOptions)).text(labelsAdvOptions[options.language]["firstClass"]);$(".airlinePref",advOptions).autocomplete({url:"",minChars:2,initialValue:"",initialText:labelsAdvOptions[options.language]["defaultAirlines"],maxItemsToShow:10,showValue:true,showMoreResults:false,type:"aer",extraParams:[options.language],minCharsLeyend:true,preCacheData:options.TA,minCharsText1:labelsAdvOptions[options.language]["minCharsText1Airline"],minCharsText2:labelsAdvOptions[options.language]["minCharsText2Airline"]});obj.after(advOptions);if($("#oneway").attr("checked")==true){$(".returnTimeLine",$(".advancedOptions")).hide()}obj.unbind("click");obj.click(function(e){if($(".advancedOptions").css("display")=="none"){$(".advancedOptions").css("display","block");$(".advOptionsLink").html('<span class="mainSprite littleArrowBlackDown floatLeft advOptionsArrow"></span> <span class="floatLeft">'+me.labels[options.language]["advOptionsLink"]+"</span>")}else{$(".advancedOptions").css("display","none");$(".advOptionsLink").html('<span class="mainSprite littleArrowBlackRight floatLeft advOptionsArrow"></span> <span class="floatLeft">'+me.labels[options.language]["advOptionsLink"]+"</span>")}})};this.templateMultipleDestinations='														  <div class="lineMD">														  <h3 class="titleMD"></h3>														  <p>														  		<label class="LblAutocompleteMultipleDestinationsOrigin"></label>														  		<input class="autocompleteMultipleDestinationsOrigin" type="text" />																<span class="mainSprite errorIcon"></span> 														  </p>														  <p>														  		<label class="LblAutocompleteMultipleDestinationsDestination">b</label>														  		<input class="autocompleteMultipleDestinationsDestination" type="text" />																<span class="mainSprite errorIcon"></span> 														  		<span class="errorText"></span> 														  </p>														  <p class="calendarLine">														  		<label class="LblCalendarMultipleDestinations">a</label>														  		<input class="calendarMultipleDestinations" type="text" />																<span class="mainSprite errorIcon"></span> 														  		<span class="errorText"></span> 														  </p></div>';this.multipleDestinations=function(obj){var multipleDestinationsBox=$("<div></div>").addClass("multipleDestinationContainer").hide();for(i=1;i<=options.multipledestinationsQuantity;i++){var templateLine=$(this.templateMultipleDestinations).clone();$(".calendarMultipleDestinations",templateLine).attr("id","mdCalendar"+i);$(".titleMD",templateLine).html(this.labels[options.language]["Tract"]+i);var optionsCalendar={};if(i>1){optionsCalendar={tripType:"return",shownMonths:2,product:"vue",inputRelatedID:"mdCalendar"+(i-1),language:options.language};$(".autocompleteMultipleDestinationsOrigin",templateLine).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:this.labels[options.language]["defaultOrigin"],initialText:this.labels[options.language]["defaultOriginDesc"],maxItemsToShow:5,showValue:true,showMoreResults:true,language:options.language,type:"vuelos",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true})}else{optionsCalendar={tripType:"go",shownMonths:2,product:"vue",inputRelatedID:"mdCalendar"+i,language:options.language};$(".autocompleteMultipleDestinationsOrigin",templateLine).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:options.defaultorigin,initialText:options.defaultorigindesc,maxItemsToShow:5,showValue:true,showMoreResults:true,type:"vuelos",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true})}$(".autocompleteMultipleDestinationsDestination",templateLine).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:this.labels[options.language]["defaultDestination"],initialText:this.labels[options.language]["defaultDestinationDesc"],maxItemsToShow:5,showValue:true,showMoreResults:true,type:"vuelos",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true});$(".calendarMultipleDestinations",templateLine).calendar(optionsCalendar);multipleDestinationsBox.append(templateLine)}$(".LblAutocompleteMultipleDestinationsOrigin",multipleDestinationsBox).html(this.labels[options.language]["originLabel"]);$(".LblAutocompleteMultipleDestinationsDestination",multipleDestinationsBox).html(this.labels[options.language]["destinationLabel"]);$(".LblCalendarMultipleDestinations",multipleDestinationsBox).html(this.labels[options.language]["checkindateLabel"]);$(".roundtripContainer").hide();$("#roundtriplbl").removeClass("lblRadioSelected");$("#multipleDestinationslbl").addClass("lblRadioSelected");$("#onewaylbl").removeClass("lblRadioSelected");multipleDestinationsBox.append($("<a></a>").addClass("linkAddMore").html(me.labels[options.language]["lblAddTract"]).click(function(e){var quantity=$(".lineMD",$(".multipleDestinationContainer")).length;if(quantity<6){var templateLine=$(me.templateMultipleDestinations).clone().hide();$(".calendarMultipleDestinations",templateLine).attr("id","mdCalendar"+(quantity+1));$(".titleMD",templateLine).html(me.labels[options.language]["Tract"]+(quantity+1));if(quantity==5){$(".linkAddMore",$(".multipleDestinationContainer")).hide()}var optionsCalendar={};optionsCalendar={tripType:"return",language:options.language,shownMonths:2,product:"vue",inputRelatedID:"mdCalendar"+(quantity)};$(".autocompleteMultipleDestinationsOrigin",templateLine).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:me.labels[options.language]["defaultOrigin"],initialText:me.labels[options.language]["defaultOriginDesc"],maxItemsToShow:5,showValue:true,showMoreResults:true,type:"vuelos",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true});$(".autocompleteMultipleDestinationsDestination",templateLine).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:me.labels[options.language]["defaultDestination"],initialText:me.labels[options.language]["defaultDestinationDesc"],maxItemsToShow:5,showValue:true,showMoreResults:true,type:"vuelos",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true});$(".calendarMultipleDestinations",templateLine).calendar(optionsCalendar);$(".LblAutocompleteMultipleDestinationsOrigin",templateLine).html(me.labels[options.language]["originLabel"]);$(".LblAutocompleteMultipleDestinationsDestination",templateLine).html(me.labels[options.language]["destinationLabel"]);$(".LblCalendarMultipleDestinations",templateLine).html(me.labels[options.language]["checkindateLabel"]);$(".linkAddMore",$(".multipleDestinationContainer")).before(templateLine);templateLine.slideDown("slow")}}));$(".tripType").after(multipleDestinationsBox);if($.browser.msie&&$.browser.version.substr(0,1)<7){multipleDestinationsBox.slideDown("fast")}else{multipleDestinationsBox.slideDown("slow")}$(".advOptionsContainer",multipleDestinationsBox.parent()).slideUp("fast");$(obj).unbind("click");$(obj).click(function(e){$("#labelageflights",$(".roomsdetails")).html(me.labels[options.language]["ageTitle1"]+me.labels[options.language]["ageTitle2"]);$(".roundtripContainer").slideUp("fast");$(".roundtripContainer").hide();$(".multipleDestinationContainer").slideDown("slow");$("#roundtriplbl").removeClass("lblRadioSelected");$("#multipleDestinationslbl").addClass("lblRadioSelected");$("#onewaylbl").removeClass("lblRadioSelected");$(".advOptionsContainer",$(".multipleDestinationContainer").parent()).fadeOut("slow");$("#paxselection").addClass("paxselectionMargin")})};this.validate=function(searchboxFlightBox){var valid=true;var tripType=$("input[type=radio]:checked",searchboxFlightBox).val();switch(tripType){case"MultipleDestinations":var Tracts=$(".lineMD",searchboxFlightBox);var TractActual;var inputOriginTractActual;var inputDestinationTractActual;var inputDateTractActual;var lastValidTractDate;$.each(Tracts,function(e){TractActual=Tracts[e];inputOriginTractActual=$(".autocompleteMultipleDestinationsOrigin",TractActual);inputDestinationTractActual=$(".autocompleteMultipleDestinationsDestination",TractActual);inputDateTractActual=$(".calendarMultipleDestinations",TractActual);if(e==0||(inputOriginTractActual.val()&&inputOriginTractActual.val()!=me.labels[options.language]["defaultOriginDesc"])||(inputDestinationTractActual.val()&&inputDestinationTractActual.val()!=me.labels[options.language]["defaultDestinationDesc"])){inputDateTractActual.parent().find(".errorText").html("");if(inputDateTractActual.data("isValid")){inputDateTractActual.parent().removeClass("errorLabel");if(lastValidTractDate){var datein=new Despegar.Date();datein.setddmmaaaa(lastValidTractDate.val(),"/");var dateout=new Despegar.Date();dateout.setddmmaaaa(inputDateTractActual.val(),"/");if(datein.compareTo(dateout.getiso())==1){inputDateTractActual.parent().addClass("errorLabel");inputDateTractActual.parent().find(".errorText").html(me.labels[options.language]["errorPreviousDateMD"]);valid=false}}lastValidTractDate=inputDateTractActual}else{inputDateTractActual.parent().addClass("errorLabel");valid=false}if(inputOriginTractActual.val()&&inputOriginTractActual.val()!=me.labels[options.language]["defaultOriginDesc"]){inputOriginTractActual.parent().removeClass("errorLabel")}else{inputOriginTractActual.parent().addClass("errorLabel");valid=false}if(inputDestinationTractActual.val()&&inputDestinationTractActual.val()!=me.labels[options.language]["defaultDestinationDesc"]){inputDestinationTractActual.parent().removeClass("errorLabel");inputDestinationTractActual.parent().find(".errorText").html("");if(inputDestinationTractActual.val()==inputOriginTractActual.val()){inputDestinationTractActual.parent().addClass("errorLabel");inputDestinationTractActual.parent().find(".errorText").html(me.labels[options.language]["errorDestinationEqualOrigin"]);valid=false}if(inputDestinationTractActual.data("dataValue").length==3&&inputOriginTractActual.data("dataValue").length==3){if(inputOriginTractActual.data("dataValue")==inputDestinationTractActual.data("dataValue")){inputDestinationTractActual.parent().addClass("errorLabel");inputDestinationTractActual.parent().find(".errorText").html(me.labels[options.language]["errorDestinationEqualOrigin"]);valid=false}}}else{inputDestinationTractActual.parent().addClass("errorLabel");valid=false}}else{inputOriginTractActual.parent().removeClass("errorLabel");inputDestinationTractActual.parent().removeClass("errorLabel");inputDestinationTractActual.parent().find(".errorText").html("");inputDateTractActual.parent().removeClass("errorLabel");inputDateTractActual.parent().find(".errorText").html("")}});var validPassengers=this.validatePassengers(searchboxFlightBox);if(valid){valid=validPassengers}break;default:var inputReturn=$("#return",searchboxFlightBox);var inputDeparture=$("#departure",searchboxFlightBox);var inputOrigin=$("#origin",searchboxFlightBox);var inputDestination=$("#destination",searchboxFlightBox);valid=this.validatePassengers(searchboxFlightBox);if(inputDeparture.data("isValid")){inputDeparture.parent().removeClass("errorLabel")}else{inputDeparture.parent().addClass("errorLabel");valid=false}if(tripType=="RoundTrip"){inputReturn.parent().find(".errorText").html("");if(inputReturn.data("isValid")){inputReturn.parent().removeClass("errorLabel");if(valid){var datein=new Despegar.Date();datein.setddmmaaaa(inputDeparture.val(),"/");var dateout=new Despegar.Date();dateout.setddmmaaaa(inputReturn.val(),"/");if(datein.compareTo(dateout.getiso())==1){inputReturn.parent().addClass("errorLabel");inputReturn.parent().find(".errorText").html(this.labels[options.language]["errorPreviousDate"]);valid=false}}}else{inputReturn.parent().addClass("errorLabel");valid=false}}if(inputDestination.val().length==0||inputDestination.val()==this.labels[options.language]["defaultDestinationDesc"]){inputDestination.parent().addClass("errorLabel");valid=false}else{if(inputDestination.val()==inputOrigin.val()){inputDestination.parent().addClass("errorLabel");inputDestination.parent().find(".errorText").html(this.labels[options.language]["errorDestinationEqualOrigin"]);valid=false}else{inputDestination.parent().removeClass("errorLabel");inputDestination.parent().find(".errorText").html("")}if(inputDestination.data("dataValue").length==3&&inputOrigin.data("dataValue").length==3){if(inputOrigin.data("dataValue")!=inputDestination.data("dataValue")){inputDestination.parent().removeClass("errorLabel");inputDestination.parent().find(".errorText").html("")}else{inputDestination.parent().addClass("errorLabel");inputDestination.parent().find(".errorText").html(this.labels[options.language]["errorDestinationEqualOrigin"]);valid=false}}}if(inputOrigin.val().length==0||inputOrigin.val()==this.labels[options.language]["defaultOriginDesc"]){inputOrigin.parent().addClass("errorLabel");valid=false}else{inputOrigin.parent().removeClass("errorLabel")}break}return valid};this.validatePassengers=function(searchboxFlightBox){var valid=true;var noAgeChilds=$(".selectAge[value=-1]:visible").length;var infQuantity=$(".selectAge[value=0]:visible").length;var adtQuantity=parseInt($(".selectAge[value=12]:visible").length)+parseInt($(".selectAdt").val());var cnnQuantity=parseInt($(".selectAge[value=3]:visible").length)+parseInt($(".selectAge[value=4]:visible").length);$("#paxselection",searchboxFlightBox).removeClass("errorLabel");$(".ageselectsbox .errorText",$("#paxselection",searchboxFlightBox)).remove();$(".selectAge").removeClass("errorCustom");$(".errorIcon",$("#paxselection")).remove();if(noAgeChilds==0){if(adtQuantity<infQuantity){$("#paxselection",searchboxFlightBox).addClass("errorLabel");$(".ageselectsbox",$("#paxselection",searchboxFlightBox)).append($("<span class='errorText'></span>").html(this.labels[options.language]["errorInfQuantity"]));$(".selectAge[value=0]:visible").addClass("errorCustom");$("#selectCnnFlights",searchboxFlightBox).addClass("errorCustom");valid=false}}else{$("#paxselection",searchboxFlightBox).addClass("errorLabel");$(".selectAge[value=-1]:visible").addClass("errorCustom").after('<span class="mainSprite errorIcon"></span>');valid=false}return valid};this.searchFlights=function(){var mdParameters=new Array();var mdRepeater=$(".lineMD:visible",$(".multipleDestinationContainer"));var airlinePref="NA";if($(".advancedOptions:visible",$(".advOptionsContainer")).length>0){if($(".airlinePref",$(target)).data("dataValue").length>0){airlinePref=$(".airlinePref",$(target)).data("dataValue")}}$.each(mdRepeater,function(e){var actualTract=mdRepeater[e];var tract={origin:$(".autocompleteMultipleDestinationsOrigin",actualTract).data("dataValue"),destination:$(".autocompleteMultipleDestinationsDestination",actualTract).data("dataValue"),originDesc:$(".autocompleteMultipleDestinationsOrigin",actualTract).val(),destinationDesc:$(".autocompleteMultipleDestinationsDestination",actualTract).val(),date:$(".calendarMultipleDestinations",actualTract).val()};mdParameters.push(tract)});var parameters={country:options.country,origin:$("#origin",$(target)).data("dataValue"),destination:$("#destination",$(target)).data("dataValue"),originDesc:$("#origin",$(target)).val(),destinationDesc:$("#destination",$(target)).val(),departureDate:$("#departure",$(target)).val(),returnDate:$("#return",$(target)).val(),tripType:$("input[type=radio]:checked",$(target)).val(),inf:$(".selectAge[value=0]:visible").length,adt:parseInt($(".selectAge[value=12]:visible").length)+parseInt($(".selectAdt").val()),cnn:parseInt($(".selectAge[value=3]:visible").length)+parseInt($(".selectAge[value=4]:visible").length),advSearch:$(".advancedOptions:visible",$(".advOptionsContainer")).length,stopQuantity:$(".stopQuantity",$(target)).val(),airlinePref:airlinePref,classPref:$(".classPref",$(target)).val(),departureTime:$(".departureTime",$(target)).val(),returnTime:$(".returnTime",$(target)).val(),mdtracts:mdRepeater.length,mdParameters:mdParameters,searchHotelsToo:$("#searchHotelsTooChkBox:checked",$(target)).length};if(parameters.tripType!="MultipleDestinations"){if(parameters.origin==""||parameters.destination==""){var dateSplited=parameters.departureDate.split("/");var departureDate=dateSplited[2]+"-"+dateSplited[1]+"-"+dateSplited[0];dateSplited=parameters.returnDate.split("/");var returnDate=dateSplited[2]+"-"+dateSplited[1]+"-"+dateSplited[0];parameters.disambiguation='{ "ItineraryType" : 0,"Origins" : ["'+parameters.origin+'"],"OriginsNames" : ["'+parameters.originDesc+'"],"Destinations" : ["'+parameters.destination+'"],"DestinationsNames" : ["'+parameters.destinationDesc+'"],"DepartureDates" : ["'+departureDate+'"],"ReturnDate" : "'+returnDate+'","Adults" : '+parameters.adt+',"Children" : '+parameters.cnn+',"Infants" : '+parameters.inf+" }"}}else{var mdDisambiguate=false;var origins="",destinations="",originsNames="",destinationsNames="",dates="";$.each(parameters.mdParameters,function(e){var actualTract=parameters.mdParameters[e];if((actualTract.origin!=""||(actualTract.originDesc!=""&&actualTract.originDesc!=me.labels[options.language]["defaultOriginDesc"]))&&(actualTract.destination!=""||(actualTract.destinationDesc!=""&&actualTract.destinationDesc!=me.labels[options.language]["defaultDestinationDesc"]))&&actualTract.date!=""&&actualTract.date!="dd/mm/aaaa"){if(actualTract.origin==""||actualTract.destination==""){mdDisambiguate=true}if(e!=0){origins+=",";destinations+=",",originsNames+=",";destinationsNames+=",",dates+=","}origins+='"'+actualTract.origin+'"';destinations+='"'+actualTract.destination+'"';originsNames+='"'+actualTract.originDesc+'"';destinationsNames+='"'+actualTract.destinationDesc+'"';var dateSplited=actualTract.date.split("/");dates+='"'+dateSplited[2]+"-"+dateSplited[1]+"-"+dateSplited[0]+'"'}});if(mdDisambiguate){parameters.disambiguation='{ "ItineraryType" : 3,"Origins" : ['+origins+'],"OriginsNames" : ['+originsNames+'],"Destinations" : ['+destinations+'],"DestinationsNames" : ['+destinationsNames+'],"DepartureDates" : ['+dates+'],"ReturnDate" : "","Adults" : '+parameters.adt+',"Children" : '+parameters.cnn+',"Infants" : '+parameters.inf+" }"}}var tracking={cod:options.trackingCod,id:options.trackingId};if(eval("Despegar.Flights.FlightFlows."+options.searchflow)!=undefined){eval("var searchObject = new Despegar.Flights.FlightFlows."+options.searchflow);if(options.remembersearch==1){searchObject.saveSearchOnCookie(parameters)}searchObject.searchFlights(parameters,location.host,tracking)}else{eval("var searchObject = new Despegar.Flights.FlightFlows."+this.defaultsearchflow);searchObject.searchFlights(parameters,location.host,tracking)}};var options=options||{};options.country=options.country||"mx";options.datedeparture=options.datedeparture||"dd/mm/aaaa";options.datereturn=options.datereturn||"dd/mm/aaaa";options.language=options.language||"es";options.searchflow=options.searchflow||this.defaultsearchflow;options.maxpaxroom=options.maxpax||8;options.defaultpaxs=options.defaultpaxs||1;options.defaultpaxscnn=options.defaultpaxscnn||0;options.maxcnnroom=options.maxcnn||7;options.multipledestinationsQuantity=options.multipledestinationsQuantity||3;options.defaultdestination=options.defaultdestination||this.labels[options.language]["defaultDestination"];options.defaultdestinationdesc=options.defaultdestinationdesc||this.labels[options.language]["defaultDestinationDesc"];options.defaultorigin=options.defaultorigin||this.labels[options.language]["defaultOrigin"];options.defaultorigindesc=options.defaultorigindesc||this.labels[options.language]["defaultOriginDesc"];options.smallRooms=options.smallRooms||0;options.trackingCod=options.trackingCod||"cob";options.trackingId=options.trackingId||null;options.remembersearch=options.remembersearch||0;options.TC=options.TC||(typeof(TC)!="undefined"?TC:{});options.TA=options.TA||(typeof(TA)!="undefined"?TA:{});this.render()};registerNameSpace("Despegar.Flights.FlightFlows");Despegar.Flights.FlightFlows.Revancha=function(){var a=this;this.searchFlights=function(d,c,g){var f=a.buildParameters(d);if(d.searchHotelsToo==1){a.searchHotelsForThisTrip(c,d)}if(typeof d.disambiguation=="undefined"){if(g.id!=null){window.open(a.trackingParameters(g)+escape(f))}else{location.href=f}}else{var e=null;var b=$("<form method='post'></form>");if(g.id!=null){$(b).attr("target","_blank");e=a.trackingParameters(g)+escape("/search/Disambiguation/Disambiguation.aspx")}else{e="/search/Disambiguation/Disambiguation.aspx"}$(b).attr("action",e);b.appendTo("body");b.html($("<input id='inputHiddenData' name='data' type='hidden' value='"+d.disambiguation+"'/>"));b.submit()}};this.trackingParameters=function(b){return"http://www."+b.brand+".com/Contents/Tracking/"+b.cod+"/"+b.id+"?url2post="};this.saveSearchOnCookie=function(b){Common.Utils.Cookie.CreateCookie("flight-Revancha",JSON.stringify(b))};this.buildParameters=function(o){switch(o.tripType){case"oneWay":var d="";if(o.advSearch==1){if(o.tripType=="oneWay"){d="/"+o.departureTime+"/"+o.classPref+"/"+o.stopQuantity+"/"+o.airlinePref}else{d="/"+o.departureTime+"/"+o.returnTime+"/"+o.classPref+"/"+o.stopQuantity+"/"+o.airlinePref}}var f="/search/flights/"+o.tripType+"/"+o.origin+"/"+o.destination+"/"+a.dateTransform(o.departureDate)+"/"+o.adt+"/"+o.cnn+"/"+o.inf+d;o.hotelCheckInDate=o.departureDate;o.hotelCheckOutDate=o.departureDate;break;case"MultipleDestinations":var l="";var g="";var b="";var k;var c;var n=0;$.each(o.mdParameters,function(q){var p=o.mdParameters[q];if(p.origin!=""&&p.destination!=""&&p.date!="dd/mm/aaaa"){if(q!=0){l+=",";g+=",",b+=","}l+=p.origin;g+=p.destination;b+=a.dateTransform(p.date);n++}});var e;if(n>1){e=o.tripType;k=o.mdParameters[1].date;c=o.mdParameters[0].date}else{e="oneWay";c=o.departureDate;k=o.returnDate}var f="/search/flights/"+e+"/"+l+"/"+g+"/"+b+"/"+o.adt+"/"+o.cnn+"/"+o.inf;o.hotelCheckInDate=c;o.hotelCheckOutDate=k;o.destination=o.mdParameters[0].destination;break;default:var d="";if(o.advSearch==1){d="/"+o.departureTime+"/"+o.returnTime+"/"+o.classPref+"/"+o.stopQuantity+"/"+o.airlinePref}var f="/search/flights/"+o.tripType+"/"+o.origin+"/"+o.destination+"/"+a.dateTransform(o.departureDate)+"/"+a.dateTransform(o.returnDate)+"/"+o.adt+"/"+o.cnn+"/"+o.inf+d;o.hotelCheckInDate=o.departureDate;o.hotelCheckOutDate=o.returnDate;break}return f};this.reportLog=function(f){var d=new Despegar.HotelsReportLogData();var c=new a.FlowStage();var e=new Despegar.Date();d.CheckIn=e.createJSonDate(new Date(e.getAmericandDate(f.checkin)));d.CheckOut=e.createJSonDate(new Date(e.getAmericandDate(f.checkout)));d.Distribution=f.roomsDetails.roomsSerialize;d.Destination=f.destination;d.Stage=c.Home;var b=new Despegar.Logger();b.LogReport(d)};this.dateTransform=function(b){var c=b.split("/");return c[2]+"-"+c[1]+"-"+c[0]};this.urlTransform=function(c){var b;if(c=="localhost"){b=["desa","mx","despegar","com"]}else{b=c.split(".")}var e="http://";if(b.length==3){var d=Common.Utils.Ajax({url:"http://"+c+"/IpService/IPWatcher.ashx",async:false});if(!d){d="mx"}e+=(Common.Utils.GetUrlBrand(b[1],d))}else{if(b[b.length-1].indexOf("com")>=0||b[b.length-1].indexOf("it")>=0){e+=c}else{e+=(Common.Utils.GetUrlBrand(b[1],b[3]))}}return e};this.FlowStage=function(){this.Home=0;this.FlightAdvSearch=1;this.FlightMultidestination=2;this.FlightNewSearch=3;this.FlightResults=4;this.Checkout=5;this.Thanks=6;this.Booking=7;this.HotelSearch=8;this.HotelDetails=9;this.HotelServiceDetails=10;this.HotelServiceSearch=11;this.HotelLanding=12};this.searchHotelsForThisTrip=function(e,c){var d=true;for(var b=0;b<1;b++){d=(d&&a.singlewindow(b,"Despegar",1,c,e))}window.focus();return d};this.singlewindow=function(f,c,o,p,e){if(!p.destination){return false}var k=c;try{var l=p.adt+p.cnn+p.inf;if(l>4){l=2}var n="height=800,width=800,menubar=1,location=1,resizable=1,scrollbars=1,toolbar=1";var b="/search/Hotels/"+p.destination+"/"+a.dateTransform(p.hotelCheckInDate)+"/"+a.dateTransform(p.hotelCheckOutDate)+"/"+l+"/";var g=window.open(b,k,n);g.focus()}catch(d){return false}return true}};jQuery.fn.searchBoxFlights=function(a){this.each(function(b,c){var d=this;c.obj=new Despegar.Flights.SearchBoxFlights(d,a)});return this};registerNameSpace("Despegar.Hotels");Despegar.Hotels.SearchBoxHotels=function(target,options){this.exists=false;this.target=target;this.defaultsearchflow="Revancha";var me=this;this.boxtemplate='										<p id="destinationline" class="destinationline"> 											<label id="labeldestination" for="destination"></label> 											<input type="text" id="destination" class="autocompleteInput"/> 											<span class="mainSprite errorIcon"></span> 											<span class="errorText"></span> 										</p> 										<p id="checkinline" class="checkinline"> 												<label id="labelcheckin" for="checkin"></label> 												<input type="text" id="checkin" class="dateInput"/> 												<span class="mainSprite errorIcon"></span> 												<span class="errorText"></span> 										</p> 										<p id="checkoutline" class="checkoutline"> 												<label id="labelcheckout" for="checkout"></label> 												<input type="text" id="checkout" class="dateInput"/> 												<span class="mainSprite errorIcon"></span> 												<span class="errorText"></span> 										</p> 										<div id="paxselection" class="paxselection"> 												<label id="labelrooms" for="rooms"></label> 												<select id="rooms" class="roomselect"></select> 												<div id="roomsdetails" class="roomsdetails"> 													<div class="labels">														<label id="labeladt" class="labeladt" for="selectAdtHotels"></label> 														<label id="labelcnn" class="labelcnn" for="selectCnnHotels"></label> 														<label id="labelagehotels" class="labelage"></label> 													</div>												</div> 										</div> 										<p id="checksearch" class="checksearch"> 												<input type="checkbox" id="checksearchinput" class="checksearchInput"/> 												<label id="checksearchlabel" class="checksearchLabel" for="checksearchinput"></label>  												<input type="text" id="sHotelInput" class="sHotelInput"/> 										</p> 										<div class="btnLine"> 											<button class="btnRed buscarBtn" type="button"> 	                    						<span> 	                        						<em id="btnLabel"></em> 	                    						</span> 											</button> 										</div>';this.roomtemplate='										<div class="roomline"> 											<label class="roomnumberlabel"></label> 											<label class="singleLabel"></label> 											<p class="adtselectline"></p> 											<p class="childselectsbox"></p> 											<p class="ageselectsbox"></p> 											<div class="clearBox"></div> 										</div>';this.labels={es:{adtLabel:"Adultos <span class='passengerAge'>(12+)</span>",cnnLabel:"Menores <span class='passengerAge'>(0-11)</span>",ageLabel:"Edad <span class='yearOldLabel'>(años)</span>",ageLabelMessage:"años",destinationLabel:"Ciudad:",checkindateLabel:"Entrada:",checkoutdateLabel:"Salida:",checkSearchLabel:"Buscar por nombre de hotel",defaultDestinationDesc:"Escriba donde desea hospedarse",defaultDestination:"",roomslabel:"Cantidad:",ageselect:"- ? -",oneSmallRoom:"Hab.",oneRoom:"Habitación",singleRoom:"Huespedes:",rooms:"Habitaciones",btnLabel:"Buscar hoteles",errorCity:"La ciudad ingresada no es valida",errorPreviousDate:"La salida debe ser posterior a la entrada",minCharsText1:"Ingrese al menos las primeras ",minCharsText2:" letras, y aguarde a ver los resultados"},pt:{adtLabel:"Adultos <span class='passengerAge'>(12+)</span>",cnnLabel:"Crianças  <span class='passengerAge'>(0-11)</span>",ageLabel:"Idade <span class='yearOldLabel'>(anos)</span>",ageLabelMessage:"anos",destinationLabel:"Cidade:",checkindateLabel:"Entrada:",checkoutdateLabel:"Saída:",checkSearchLabel:"Procurar hotel por nome",defaultDestinationDesc:"Escreva onde deseja se hospedar",defaultDestination:"",roomslabel:"Quantidade:",ageselect:"- ? -",oneSmallRoom:"Qua.",oneRoom:"Quarto",singleRoom:"Hóspedes:",rooms:"Quartos",btnLabel:"Procurar hotéis",errorCity:"A cidade informada não é valida",errorPreviousDate:"A saída deve ser depois da entrada",minCharsText1:"Por favor insira as primeiras ",minCharsText2:" letras  e aguardo para ver os resultados"}};this.render=function(){var searchboxHotelBox=$(document.createElement("div")).html(this.boxtemplate);$("#labeldestination",searchboxHotelBox).html(this.labels[options.language]["destinationLabel"]);$("#labelcheckin",searchboxHotelBox).html(this.labels[options.language]["checkindateLabel"]);$("#labelcheckout",searchboxHotelBox).html(this.labels[options.language]["checkoutdateLabel"]);$("#labelrooms",searchboxHotelBox).html(this.labels[options.language]["roomslabel"]);$("#checksearchlabel",searchboxHotelBox).html(this.labels[options.language]["checkSearchLabel"]);$("#labeladt",searchboxHotelBox).html(this.labels[options.language]["adtLabel"]);$("#labelcnn",searchboxHotelBox).html(this.labels[options.language]["cnnLabel"]);$("#labelagehotels",searchboxHotelBox).html(this.labels[options.language]["ageLabel"]).hide();$("#btnLabel",searchboxHotelBox).html(this.labels[options.language]["btnLabel"]);$("#destination",searchboxHotelBox).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:options.defaultdestination,initialText:options.defaultdestinationdesc,maxItemsToShow:5,showValue:true,showMoreResults:true,type:"hoteles",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true,minCharsText1:this.labels[options.language]["minCharsText1"],minCharsText2:this.labels[options.language]["minCharsText2"]});$("#checkout",searchboxHotelBox).calendar({tripType:"return",inputRelatedID:"checkin",shownMonths:2,language:options.language,product:"hot"});$("#checkin",searchboxHotelBox).calendar({tripType:"go",inputRelatedID:"checkout",shownMonths:2,language:options.language,product:"hot"});$(".buscarBtn",searchboxHotelBox).click(function(e){if(me.validate(searchboxHotelBox)){me.searchHotels()}});if(!options.showYearOld){$(".yearOldLabel",searchboxHotelBox).hide()}this.createRoomsDropdown($("#rooms",searchboxHotelBox));this.createRoomsRows($("#roomsdetails",searchboxHotelBox));$("#checksearchinput",searchboxHotelBox).click(function(e){$("#sHotelInput",searchboxHotelBox).toggle()});$(target).append(searchboxHotelBox)};this.setDestination=function(name,value){$("#destination",target)[0].obj.initialValue(name,value)};this.createRoomsDropdown=function(obj){var htmlOptions="";for(i=0;i<options.maxroomsquantity;i++){if(i==0){currentText=this.labels[options.language]["oneRoom"]}else{currentText=this.labels[options.language]["rooms"]}htmlOptions+='<option value="'+(i+1)+'">'+(i+1)+" "+currentText+"</option>"}obj.append(htmlOptions);obj.val(options.defaultrooms);obj.change(function(e){me.changeRooms(this)})};this.createRoomsRows=function(obj){for(m=1;m<=options.maxroomsquantity;m++){var row=$(document.createElement("div")).html(this.roomtemplate).addClass("rowPaxsHotel");if(m==1){$(".singleLabel",row).html(this.labels[options.language]["singleRoom"])}if(options.smallRooms==0){$(".roomnumberlabel",row).html(this.labels[options.language]["oneRoom"]+" "+(m)+":")}else{$(".roomnumberlabel",row).html(this.labels[options.language]["oneSmallRoom"]+" "+(m)+":")}var selectAdt=$(document.createElement("select")).attr("id","selectAdtHotels").addClass("selectAdt").html(this.createOptionsDropdown(options.maxpaxroom,options.defaultpaxs,1)).change(function(e){me.changeAdt(this)});$(".adtselectline",row).append(selectAdt);var maxCnnInitial=options.maxpaxroom-options.defaultpaxs;if(maxCnnInitial>options.maxcnnroom){maxCnnInitial=options.maxcnnroom}var selectCnn=$(document.createElement("select")).attr("id","selectCnnHotels").html(this.createOptionsDropdown(maxCnnInitial,options.defaultpaxscnn,0)).addClass("selectCnn").change(function(e){me.changeCnn(this)});$(".childselectsbox",row).append(selectCnn);for(h=1;h<=options.maxcnnroom;h++){var selectCnnAge=$(document.createElement("select")).attr("id","selectCnnAge"+m+h).addClass("selectCnnAge").html('<option selected="selected" id="ageselectdescription" value="NA">'+this.labels[options.language]["ageselect"]+"</option>"+this.createOptionsDropdown(options.maxcnnage,null,0));$(".ageselectsbox",row).append(selectCnnAge);selectCnnAge.hide()}obj.append(row);if(m>options.defaultrooms){row.hide()}}};this.createOptionsDropdown=function(options,defaultOption,minvalue){var returnValue="";for(i=0;i<=options;i++){if(i>=minvalue){if(i==defaultOption){returnValue+='<option value="'+i+'" selected="selected">'+i+"</option>"}else{returnValue+='<option value="'+i+'">'+i+"</option>"}}}return returnValue};this.changeRooms=function(obj){if($(obj).val()==1){$(".singleLabel",$(".rowPaxsHotel:eq(0)")).show();$(".roomnumberlabel",$(".rowPaxsHotel:eq(0)")).hide()}else{$(".singleLabel",$(".rowPaxsHotel")).hide();$(".roomnumberlabel",$(".rowPaxsHotel")).show()}$(".rowPaxsHotel").hide();$(".rowPaxsHotel:lt("+$(obj).val()+")").show()};this.changeAdt=function(obj){var selectCnn=$(".selectCnn",$(obj).parent().next());var valueCnnSelected=selectCnn.val();var valueAdtSelected=$(obj).val();var maxCnns=options.maxpaxroom-valueAdtSelected;if(maxCnns>options.maxcnnroom){maxCnns=options.maxcnnroom}selectCnn.html(this.createOptionsDropdown(maxCnns,0,0));selectCnn.val(valueCnnSelected);if(valueAdtSelected==options.maxpaxroom){selectCnn.attr("disabled","disabled")}else{selectCnn.attr("disabled","")}};this.changeCnn=function(obj){var lblAge=$("#labelagehotels",$(".roomsdetails"));var qty=$(obj).val();var selectAdt=$(".selectAdt",$(obj).parent().prev());var valueSelectedAdt=selectAdt.val();var maxAdts=options.maxpaxroom-$(obj).val();selectAdt.html(this.createOptionsDropdown(maxAdts,options.defaultpaxs,1));selectAdt.val(valueSelectedAdt);if(qty>0){lblAge.show();$("select",$(obj).parent().next()).hide();var selectsAge=$(".selectCnnAge:lt("+qty+")",$(obj).parent().next());selectsAge.parent().show();selectsAge.show()}else{var visibleSelectsAge=$(".selectCnnAge:visible",$(".ageselectsbox"));var thisSelects=$(".selectCnnAge:visible",$(obj).parent().next());thisSelects.hide();if(visibleSelectsAge.length==thisSelects.length){lblAge.hide()}}};this.getRoomsDetails=function(){var rooms=$("#rooms").val();var adtVisible=$(".selectAdt",$(".rowPaxsHotel:visible"));var qtyPax=0;var qtyAdt=0;var actualQty=0;var roomsSerialize="";$.each(adtVisible,function(e){var meRooms=$(this);actualQty=parseInt(meRooms.val());qtyAdt+=actualQty;qtyPax+=actualQty;roomsSerialize+=meRooms.val();var ageCnnCombos=$(this).parent().next().next().find(".selectCnnAge:visible");$.each(ageCnnCombos,function(i){qtyPax++;roomsSerialize+="-"+$(this).val()});roomsSerialize+="!"});roomsSerialize=roomsSerialize.substr(0,roomsSerialize.length-1);var objReturn=new Object();objReturn.qtyAdt=qtyAdt;objReturn.qtyPax=qtyPax;objReturn.roomsSerialize=roomsSerialize;objReturn.rooms=rooms;return objReturn};this.validate=function(searchboxHotelBox){var valid=true;var checkin=$("#checkin",searchboxHotelBox);var checkout=$("#checkout",searchboxHotelBox);var inputDestination=$("#destination",searchboxHotelBox);if(checkin.data("isValid")&&checkin.val()!="dd/mm/aaaa"){checkin.parent().removeClass("errorLabel")}else{checkin.parent().addClass("errorLabel");valid=false}checkout.parent().find(".errorText").html("");if(checkout.data("isValid")&&checkout.val()!="dd/mm/aaaa"){checkout.parent().removeClass("errorLabel");if(valid){var datein=new Despegar.Date();datein.setddmmaaaa(checkin.val(),"/");var dateout=new Despegar.Date();dateout.setddmmaaaa(checkout.val(),"/");if(datein.compareTo(dateout.getiso())==1){checkout.parent().addClass("errorLabel");checkout.parent().find(".errorText").html(this.labels[options.language]["errorPreviousDate"]);valid=false}}}else{checkout.parent().addClass("errorLabel");valid=false}if(inputDestination.data("dataValue").length==3){inputDestination.parent().removeClass("errorLabel");inputDestination.parent().find(".errorText").html("")}else{inputDestination.parent().addClass("errorLabel");if(inputDestination.val()!=options.defaultdestinationdesc){inputDestination.parent().find(".errorText").html(me.labels[options.language]["errorCity"])}valid=false}$(".errorIcon",$(".roomline")).remove();for(m=1;m<=options.maxroomsquantity;m++){for(h=1;h<=options.maxcnnroom;h++){var selectedAge=$("#selectCnnAge"+m+h);if($(selectedAge).is(":visible")){if(selectedAge.val()=="NA"){selectedAge.addClass("errorLabel");selectedAge.after('<span class="mainSprite errorIcon"></span>');valid=false}else{selectedAge.removeClass("errorLabel");$("#errorText"+m+h).html("")}}}}return valid};this.searchHotels=function(){var hotel="";if($("#checksearchinput",$(target)).attr("checked")==true){hotel=$("#sHotelInput",$(target)).val()}var parameters={country:options.country,roomsDetails:me.getRoomsDetails(),checkin:$("#checkin",$(target)).val(),checkout:$("#checkout",$(target)).val(),destination:$("#destination",$(target)).data("dataValue"),hotel:hotel};var tracking={cod:options.trackingCod,id:options.trackingId,brand:options.trackingBrand};if(eval("Despegar.Hotels.HotelFlows."+options.searchflow)!=undefined){eval("var searchObject = new Despegar.Hotels.HotelFlows."+options.searchflow);searchObject.searchHotels(parameters,location.host,tracking)}else{eval("var searchObject = new Despegar.Hotels.HotelFlows."+this.defaultsearchflow);searchObject.searchHotels(parameters,location.host,tracking)}};var options=options||{};options.country=options.country||"mx";options.language=options.language||"es";options.maxroomsquantity=options.maxroomsquantity||4;options.defaultrooms=options.defaultrooms||1;options.searchflow=options.searchflow||this.defaultsearchflow;options.maxpaxroom=options.maxpaxroom||6;options.defaultpaxs=options.defaultpaxs||2;options.defaultpaxscnn=options.defaultpaxscnn||0;options.maxcnnroom=options.maxcnnroom||3;options.maxcnnage=options.maxcnnage||11;options.defaultdestination=options.defaultdestination||this.labels[options.language]["defaultDestination"];options.defaultdestinationdesc=options.defaultdestinationdesc||this.labels[options.language]["defaultDestinationDesc"];options.smallRooms=options.smallRooms||0;options.trackingCod=options.trackingCod||"cob";options.trackingId=options.trackingId||null;options.trackingBrand=options.trackingBrand||"despegar";options.showYearOld=options.showYearOld||false;options.TC=options.TC||(typeof(TC)!="undefined"?TC:{});this.render()};jQuery.fn.searchBoxHotels=function(a){this.each(function(b,c){var d=this;c.obj=new Despegar.Hotels.SearchBoxHotels(d,a)});return this};registerNameSpace("Despegar.Hotels.HotelFlows");Despegar.Hotels.HotelFlows.Revancha=function(){var a=this;this.searchHotels=function(c,b,e){a.reportLog(c);var d;if($.trim(c.hotel)==""){d="/search/Hotels/"+c.destination+"/"+a.dateTransform(c.checkin)+"/"+a.dateTransform(c.checkout)+"/"+c.roomsDetails.roomsSerialize}else{d="/search/Hotels/"+c.destination+"/"+a.dateTransform(c.checkin)+"/"+a.dateTransform(c.checkout)+"/"+c.roomsDetails.roomsSerialize+"/#n="+c.hotel}if(e.id!=null){window.open(a.trackingParameters(e)+escape(d))}else{location.href=d}};this.trackingParameters=function(b){return"http://www."+b.brand+".com/Contents/Tracking/"+b.cod+"/"+b.id+"?url2post="};this.reportLog=function(f){var d=new Despegar.HotelsReportLogData();var c=new a.FlowStage();var e=new Despegar.Date();d.CheckIn=e.createJSonDate(new Date(e.getAmericandDate(f.checkin)));d.CheckOut=e.createJSonDate(new Date(e.getAmericandDate(f.checkout)));d.Distribution=f.roomsDetails.roomsSerialize;d.Destination=f.destination;d.Stage=c.Home;var b=new Despegar.Logger();b.LogReport(d)};this.dateTransform=function(b){var c=b.split("/");return c[2]+"-"+c[1]+"-"+c[0]};this.urlTransform=function(c){var b=c.split(".");var e="http://";if(b.length==3&&b[1]!="decolar"){var d=Common.Utils.Ajax({url:"http://"+c+"/IpService/IPWatcher.ashx",async:false});if(!d){d="mx"}e+=(Common.Utils.GetUrlBrand(b[1],d))}else{if(b[b.length-1].indexOf("it")>=0){e+=c}else{if(b[b.length-1].indexOf("com")>=0){e+=c}else{e+=(Common.Utils.GetUrlBrand(b[1],b[3]))}}}return e};this.FlowStage=function(){this.Home=0;this.FlightAdvSearch=1;this.FlightMultidestination=2;this.FlightNewSearch=3;this.FlightResults=4;this.Checkout=5;this.Thanks=6;this.Booking=7;this.HotelSearch=8;this.HotelDetails=9;this.HotelServiceDetails=10;this.HotelServiceSearch=11;this.HotelLanding=12}};registerNameSpace("Despegar.Hotels.HotelFlows");Despegar.Hotels.HotelFlows.Travelocity=function(){var a=this;this.maxRooms=1;this.searchHotels=function(d,c,e){if(d.roomsDetails.rooms<=a.maxRooms){urlBase="http://hoteles.despegar.com/nexres/search/search_results.cgi?avail=Y&smoking_pref=NP&bed_type=NP&src=10024605&tab=tab0&Go.x=13&Go.y=13";urlBase+="&num_rooms="+d.roomsDetails.rooms;urlBase+="&num_adults="+d.roomsDetails.qtyAdt;urlBase+="&lang=SPN";urlBase+="&avail=Y";urlBase+="&num_children="+(d.roomsDetails.qtyPax-d.roomsDetails.qtyAdt);urlBase+="&currency_id="+a.getCurrecyId(d.country);urlBase+=a.getUrlDatePart(d);urlBase+="&city="+d.destination;location.href=urlBase}else{var b=new Despegar.Hotels.HotelFlows.Revancha();b.searchHotels(d,c,e)}};this.getUrlDatePart=function(d){var c="";var e=d.checkin.split("/");var b=d.checkout.split("/");c+="&chk_in="+e[1]+"/"+e[0]+"/"+e[2];c+="&doa_mm="+e[1];c+="&doa_dd="+e[0];c+="&doa_yy="+e[2];c+="&chk_out="+b[1]+"/"+b[0]+"/"+b[2];c+="&dod_mm="+b[1];c+="&dod_dd="+b[0];c+="&dod_yy="+b[2];return c};this.getCurrecyId=function(b){switch(b){case"ve":return"VEB";default:return"USD"}}};registerNameSpace("Despegar.FlightsAndHotels");Despegar.FlightsAndHotels.SearchBoxFlightsAndHotels=function(target,options){this.exists=false;this.target=target;this.defaultsearchflow="ezrez";var me=this;var searchboxFlightsAndHotelBox;this.boxtemplate='				<p id="originline" class="originline"> 											<label id="labelorigin" for="origin"></label> 											<input type="text" id="origin" class="autocompleteInput"/> 											<span class="mainSprite errorIcon"></span> 											<span class="errorText"></span> 										</p> 										<p id="destinationline" class="destinationline"> 											<label id="labeldestination" for="destination"></label> 											<input type="text" id="destination" class="autocompleteInput"/> 											<span class="mainSprite errorIcon"></span> 											<span class="errorText"></span> 										</p> 										<p id="checkinline" class="checkinline"> 											<label id="labelcheckin" for="checkin"></label> 											<input type="text" id="checkin" class="dateInput"/> 											<span class="mainSprite errorIcon"></span> 											<span class="errorText"></span> 										</p> 										<p id="checkoutline" class="checkoutline"> 											<label id="labelcheckout" for="checkout"></label> 											<input type="text" id="checkout" class="dateInput"/> 											<span class="mainSprite errorIcon"></span> 											<span class="errorText"></span> 										</p> 										<div id="paxselection" class="paxselection"> 											<label id="labelrooms" for="rooms"></label> 											<select id="rooms" class="roomselect"></select> 											<div id="roomsdetails" class="roomsdetails"> 												<div class="labels">													<label id="labeladt" class="labeladt" ></label> 													<label id="labelcnn" class="labelcnn" ></label> 													<label id="labelage" class="labelage" ></label> 													'+(options.requestCnnAge?'<label id="labelageinfs" class="labelageinfs" for="checkout"></label><div class="clearBox"></div>':"")+' 												</div>											</div> 											<span class="errorText" id="errorTextAdt"></span> 											<span class="errorText" id="errorTextChld"></span> 										</div>';if(options.searchCarsTooBox){this.boxtemplate='<ul class="tripType">													<li>														<input id="flightshotels" type="radio" checked="checked" name="tripType" value="FlightsHotels"/>														<label for="flightshotels" id="flightshotelslbl"></label>													</li>													<li>														<input id="flightshotelscars" type="radio" name="tripType" value="FlightsHotelsCars"/>														<label for="flightshotelscars" id="flightshotelscarslbl"></label>													</li>												</ul>'+this.boxtemplate}this.boxtemplate+='<div class="btnLine"> 												<button class="btnRed buscarBtn" type="button"> 		                    						<span> 		                        						<em id="btnLabel"></em> 		                    						</span> 												</button> 											</div>';this.roomtemplate='										<div class="roomline"> 											<label class="roomnumberlabel"></label> 											<label class="singleLabel"></label> 											<p class="adtselectline"></p> 											<p class="childselectsbox"></p> 											<p class="ageselectsbox"></p> 											'+(options.requestCnnAge?'<p class="ageselectsboxinfs"></p><div class="clearBox"></div>':"")+" 										</div>";this.labels={es:{adtLabel:"Adultos <span class='passengerAge'>(12+)</span>",cnnLabel:"Menores <span class='passengerAge'>(0-11)</span>",ageLabel:"Edad <span class='yearOldLabel'>(años)</span>",ageLabelMessage:"años",originLabel:"Origen:",destinationLabel:"Destino:",checkindateLabel:"Partida:",checkoutdateLabel:"Regreso:",defaultDestinationDesc:"Ingrese una ciudad de destino",defaultDestination:"",defaultOriginDesc:"Ingrese una ciudad de origen",defaultOrigin:"",roomslabel:"Alojamiento:",flightshotelsLabel:"Vuelo y Hotel",flightshotelscarsLabel:"Vuelo, Hotel y Auto",ageselect:"Elija edad del niño",ageselectShort:"?",oneSmallRoom:"Hab.",oneRoom:"Habitación",singleRoom:"Huespedes:",rooms:"Habitaciones",btnLabel:"Buscar paquetes",errorNumAdt:"El número de adultos debe ser menor que 8",errorNumChld:"El número de niños debe ser menor que 4",errorNumInf:"No puede ingresar mas bebés que adultos",errorNumTot:"Por favor, seleccione hasta ocho pasajeros",errorPreviousDate:"El regreso debe ser posterior a la partida",errorOrigin:"El origen ingresado no es valido",errorDestination:"El destino ingresado no es valido",errorDestinationEqualOrigin:"El destino debe ser diferente del origen",howTravel:"Como viaja?",onSeat:"En asiento",onArms:"En brazos",minCharsText1:"Ingrese al menos las primeras ",minCharsText2:" letras, y aguarde a ver los resultados"},pt:{adtLabel:"Adultos",cnnLabel:"Crianças",ageLabel:"Idade <span class='yearOldLabel'>(anos)</span>",ageLabelMessage:"anos",originLabel:"Origem:",destinationLabel:"Destino:",checkindateLabel:"Ida:",checkoutdateLabel:"Volta:",defaultDestinationDesc:"Digite a cidade de destino",defaultDestination:"",defaultOriginDesc:"Digite a cidade de partida",defaultOrigin:"",roomslabel:"Acomodação:",ageselect:"Escolha a idade da criança",ageselectShort:"?",oneSmallRoom:"Qua.",oneRoom:"Quarto",singleRoom:"Hóspedes:",rooms:"Quartos",btnLabel:"Procurar pacotes",errorNumAdt:"",errorNumChld:"",errorNumInf:"Não podem viajar mais bebês que adultos",errorNumTot:"Po favor, selecione até oito passageiros",errorPreviousDate:"A volta deve ser depois a data de ida",errorOrigin:"O origem informado não é valido",errorDestination:"O destino informado não é valido",errorDestinationEqualOrigin:"O destino deve ser diferente da origem",howTravel:"Como viaja?",onSeat:"Com assento",onArms:"No colo",minCharsText1:"Por favor insira as primeiras ",minCharsText2:" letras  e aguardo para ver os resultados"}};this.render=function(){searchboxFlightsAndHotelBox=$(document.createElement("div")).html(this.boxtemplate);$("#labelorigin",searchboxFlightsAndHotelBox).html(this.labels[options.language]["originLabel"]);$("#labeldestination",searchboxFlightsAndHotelBox).html(this.labels[options.language]["destinationLabel"]);$("#labelcheckin",searchboxFlightsAndHotelBox).html(this.labels[options.language]["checkindateLabel"]);$("#labelcheckout",searchboxFlightsAndHotelBox).html(this.labels[options.language]["checkoutdateLabel"]);$("#labelrooms",searchboxFlightsAndHotelBox).html(this.labels[options.language]["roomslabel"]);if(options.searchCarsTooBox){$("#flightshotelslbl",searchboxFlightsAndHotelBox).html(this.labels[options.language]["flightshotelsLabel"]).addClass("lblRadioSelected")}$("#flightshotelscarslbl",searchboxFlightsAndHotelBox).html(this.labels[options.language]["flightshotelscarsLabel"]);$("#labeladt",searchboxFlightsAndHotelBox).html(this.labels[options.language]["adtLabel"]);$("#labelcnn",searchboxFlightsAndHotelBox).html(this.labels[options.language]["cnnLabel"]);$("#labelage",searchboxFlightsAndHotelBox).html(this.labels[options.language]["ageLabel"]).hide();$("#btnLabel",searchboxFlightsAndHotelBox).html(this.labels[options.language]["btnLabel"]);$("#labelageinfs",searchboxFlightsAndHotelBox).html(this.labels[options.language]["howTravel"]).hide();$("#origin",searchboxFlightsAndHotelBox).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:options.defaultOrigin,initialText:options.defaultOriginDesc,maxItemsToShow:5,showValue:true,showMoreResults:true,type:"vuelos",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true,minCharsText1:this.labels[options.language]["minCharsText1"],minCharsText2:this.labels[options.language]["minCharsText2"]});$("#destination",searchboxFlightsAndHotelBox).autocomplete({url:"/Autocomplete/AutoComplete.svc",minChars:3,initialValue:options.defaultdestination,initialText:options.defaultdestinationdesc,maxItemsToShow:5,showValue:true,showMoreResults:true,type:"hoteles",preCacheData:options.TC,extraParams:[options.language],minCharsLeyend:true,minCharsText1:this.labels[options.language]["minCharsText1"],minCharsText2:this.labels[options.language]["minCharsText2"]});$("#checkin",searchboxFlightsAndHotelBox).calendar({tripType:"go",inputRelatedID:"checkout",shownMonths:2,product:"hot",defaultDate:options.departureDate,language:options.language});$("#checkout",searchboxFlightsAndHotelBox).calendar({tripType:"return",inputRelatedID:"checkin",shownMonths:2,product:"hot",defaultDate:options.returnDate,language:options.language});if(options.searchCarsTooBox){$("#flightshotels",searchboxFlightsAndHotelBox).click(function(e){$("#flightshotelslbl").addClass("lblRadioSelected");$("#flightshotelscarslbl").removeClass("lblRadioSelected")});$("#flightshotelscars",searchboxFlightsAndHotelBox).click(function(e){$("#flightshotelscarslbl").addClass("lblRadioSelected");$("#flightshotelslbl").removeClass("lblRadioSelected")})}$(".buscarBtn",searchboxFlightsAndHotelBox).click(function(e){if(me.validate(searchboxFlightsAndHotelBox)){me.searchFlightsAndHotels()}});if(!options.showYearOld){$(".yearOldLabel",searchboxFlightsAndHotelBox).hide()}this.createRoomsDropdown($("#rooms",searchboxFlightsAndHotelBox));this.createRoomsRows($("#roomsdetails",searchboxFlightsAndHotelBox));$(target).append(searchboxFlightsAndHotelBox);if(options.distribution){var roomsDist=options.distribution.split("!");$("#rooms",searchboxFlightsAndHotelBox).val(roomsDist.length).trigger("change");for(var i=0;i<roomsDist.length;i++){var oPassengers=roomsDist[i].split("-");var actualRoom=$(".rowPaxs:eq("+i+")",searchboxFlightsAndHotelBox);var actualAdt=$(".selectAdt",actualRoom).val(oPassengers[0]);var actualCnn=$(".selectCnn",actualRoom).val(oPassengers.length-1);actualAdt.trigger("change");actualCnn.trigger("change");for(var j=1;j<oPassengers.length;j++){$(".selectCnnAge:eq("+(j-1)+")",actualRoom).val(oPassengers[j]).trigger("change")}}}if(options.noPassengerAge){$(".passengerAge",searchboxFlightsAndHotelBox).hide()}};this.setDestination=function(name,value){$("#destination",target)[0].obj.initialValue(name,value)};this.createRoomsDropdown=function(obj){var htmlOptions="";for(i=0;i<options.maxroomsquantity;i++){if(i==0){currentText=this.labels[options.language]["oneRoom"]}else{currentText=this.labels[options.language]["rooms"]}htmlOptions+='<option value="'+(i+1)+'">'+(i+1)+" "+currentText+"</option>"}obj.append(htmlOptions);obj.val(options.defaultrooms);obj.change(function(e){me.changeRooms(this)})};this.createRoomsRows=function(obj){for(m=1;m<=options.maxroomsquantity;m++){var row=$(document.createElement("div")).html(this.roomtemplate).addClass("rowPaxs");if(m==1){$(".singleLabel",row).html(this.labels[options.language]["singleRoom"])}if(options.smallRooms==0){$(".roomnumberlabel",row).html(this.labels[options.language]["oneRoom"]+" "+(m)+":")}else{$(".roomnumberlabel",row).html(this.labels[options.language]["oneSmallRoom"]+" "+(m)+":")}var selectAdt=$(document.createElement("select")).addClass("selectAdt").attr("id","selectAdt"+m).html(this.createOptionsDropdown(options.maxpaxroom,options.defaultpaxs,1)).change(function(e){me.changeAdt(this)});$(".adtselectline",row).append(selectAdt);var maxCnnInitial=options.maxpaxroom-options.defaultpaxs;if(maxCnnInitial>options.maxcnnroom){maxCnnInitial=options.maxcnnroom}var selectCnn=$(document.createElement("select")).attr("id","selectCnn"+m).html(this.createOptionsDropdown(maxCnnInitial,options.defaultpaxscnn,0)).addClass("selectCnn").change(function(e){me.changeCnn(this)});$(".childselectsbox",row).append(selectCnn);for(h=1;h<=options.maxcnnroom;h++){var selectCnnAge=$(document.createElement("select")).attr("id","selectCnnAge"+m+h).addClass("selectCnnAge").html('<option selected="selected" id="ageselectdescription" value="NA">'+(options.ageselectShort?this.labels[options.language]["ageselectShort"]:this.labels[options.language]["ageselect"]+" "+h)+"</option>"+this.createOptionsDropdown(options.maxcnnage,null,0));$(".ageselectsbox",row).append(selectCnnAge);if(options.requestCnnAge){selectCnnAge.data("index",""+m+h);var selectCnnInfs=$(document.createElement("span")).attr("id","selectCnnInfs"+m+h+"Cont").addClass("selectCnnInfsCont HideDiv").html('<select id="selectCnnInfs'+m+h+'" class="selectCnnInfs"><option selected="selected" value="0">'+this.labels[options.language]["onSeat"]+'</option><option value="1">'+this.labels[options.language]["onArms"]+"</option></select>");$(".ageselectsboxinfs",row).append(selectCnnInfs);selectCnnInfs.addClass("HideDiv");$(selectCnnAge).change(function(){if($(this).val()>=0&&$(this).val()<=2){$("#selectCnnInfs"+$(this).data("index")+"Cont:hidden",searchboxFlightsAndHotelBox).removeClass("HideDiv");$("#selectCnnInfs"+$(this).data("index")+":hidden",searchboxFlightsAndHotelBox).removeClass("HideDiv");$("#labelageinfs",$(".roomsdetails")).show()}else{$("#selectCnnInfs"+$(this).data("index")+":visible",searchboxFlightsAndHotelBox).addClass("HideDiv");$("#selectCnnInfs"+$(this).data("index")+"Cont:visible",searchboxFlightsAndHotelBox).addClass("HideDiv");if($(".selectCnnInfs:visible",$(".roomsdetails")).length==0){$("#labelageinfs",$(".roomsdetails")).hide()}}var index=$(".selectCnnInfs",searchboxFlightsAndHotelBox).index($(".selectCnnInfs:visible:last",searchboxFlightsAndHotelBox));$(".selectCnnInfsCont",searchboxFlightsAndHotelBox).addClass("HideDiv");$(".selectCnnAge:lt("+(index+1)+"):visible",searchboxFlightsAndHotelBox).each(function(){$(".selectCnnInfsCont:eq("+$(".selectCnnAge",searchboxFlightsAndHotelBox).index(this)+")",searchboxFlightsAndHotelBox).removeClass("HideDiv")})});$(".selectCnnInfs",$(selectCnnInfs)).change(function(){if($(this).val()==1){$(this).addClass("Inf")}else{$(this).removeClass("Inf")}})}selectCnnAge.hide()}obj.append(row);if(m>options.defaultrooms){row.hide()}}};this.createOptionsDropdown=function(options,defaultOption,minvalue){var returnValue="";for(i=0;i<=options;i++){if(i>=minvalue){if(i==defaultOption){returnValue+='<option value="'+i+'" selected="selected">'+i+"</option>"}else{returnValue+='<option value="'+i+'">'+i+"</option>"}}}return returnValue};this.changeRooms=function(obj){if($(obj).val()==1){$(".singleLabel",$(".rowPaxs:eq(0)")).show();$(".roomnumberlabel",$(".rowPaxs:eq(0)")).hide()}else{$(".singleLabel",$(".rowPaxs")).hide();$(".roomnumberlabel",$(".rowPaxs")).show()}var lblAge=$("#labelage",$(".roomsdetails"));$(".rowPaxs",searchboxFlightsAndHotelBox).hide();$(".rowPaxs:lt("+$(obj).val()+")",searchboxFlightsAndHotelBox).show();var visibleSelectsAge=$(".selectCnnAge:visible",searchboxFlightsAndHotelBox);if(visibleSelectsAge.length==0){lblAge.hide()}};this.changeAdt=function(obj){var selectCnn=$(".selectCnn",$(obj).parent().next());var valueCnnSelected=selectCnn.val();var valueAdtSelected=$(obj).val();var maxCnns=options.maxpaxroom-valueAdtSelected;if(maxCnns>options.maxcnnroom){maxCnns=options.maxcnnroom}selectCnn.html(this.createOptionsDropdown(maxCnns,0,0));selectCnn.val(valueCnnSelected);if(valueAdtSelected==options.maxpaxroom){selectCnn.attr("disabled","disabled")}else{selectCnn.attr("disabled","")}};this.changeCnn=function(obj){var lblAge=$("#labelage",$(".roomsdetails"));var lblAgeInfs=$("#labelageinfs",$(".roomsdetails"));var qty=parseInt($(obj).val());var selectAdt=$(".selectAdt",$(obj).parent().prev());var valueSelectedAdt=selectAdt.val();var maxAdts=options.maxpaxroom-$(obj).val();selectAdt.html(this.createOptionsDropdown(maxAdts,options.defaultpaxs,1));selectAdt.val(valueSelectedAdt);$("select",$(obj).parent().next()).hide();$("span",$(obj).parent().next()).hide();if(qty>0){lblAge.show();$("select",$(obj).parent().next().next()).addClass("HideDiv");var selectsAge=$(".selectCnnAge:lt("+qty+")",$(obj).parent().next());var spanAge=$(".errorText:lt("+qty+")",$(obj).parent().next());selectsAge.parent().show();selectsAge.show();spanAge.show();selectsAge.change();$(".errorText:lt("+qty+")",$(obj).parent().next()).show();$(".errorText:gt("+(qty-1)+")",$(obj).parent().next()).hide();if($(".selectCnnInfs:visible",$(".ageselectsboxinfs")).length>0){lblAgeInfs.show()}else{lblAgeInfs.hide()}}else{var visibleSelectsAge=$(".selectCnnAge:visible",$(".ageselectsbox"));var visibleSelectsAgeInfs=$(".selectCnnInfs:visible",$(".ageselectsboxinfs"));var thisSelects=$(".selectCnnAge:visible",$(obj).parent().next());var thisSelectsInfs=$(".selectCnnInfs:visible",$(obj).parent().next().next());$(".errorText",$(obj).parent().next()).hide();thisSelects.hide();thisSelectsInfs.addClass("HideDiv");if(visibleSelectsAge.length==thisSelects.length){lblAge.hide()}if($(".selectCnnInfs:visible",$(".ageselectsboxinfs")).length>0){lblAgeInfs.show()}else{lblAgeInfs.hide()}}var index=$(".selectCnnInfs").index($(".selectCnnInfs:visible:last"));$(".selectCnnInfsCont").addClass("HideDiv");$(".selectCnnAge:lt("+(index+1)+"):visible").each(function(){$(".selectCnnInfsCont:eq("+$(".selectCnnAge").index(this)+")").removeClass("HideDiv")})};this.getRoomsDetails=function(){var rooms=$("#rooms").val();var adtVisible=$(".selectAdt",$(".rowPaxs:visible"));var qtyPax=0;var qtyAdt=0;var actualQty=0;var roomsSerialize="";$.each(adtVisible,function(e){var meRooms=$(this);actualQty=parseInt(meRooms.val());qtyAdt+=actualQty;qtyPax+=actualQty;roomsSerialize+=meRooms.val();var ageCnnCombos=$(this).parent().next().next().find(".selectCnnAge:visible");$.each(ageCnnCombos,function(i){qtyPax++;roomsSerialize+="-"+$(this).val()});roomsSerialize+="!"});roomsSerialize=roomsSerialize.substr(0,roomsSerialize.length-1);var objReturn=new Object();objReturn.qtyAdt=qtyAdt;objReturn.qtyPax=qtyPax;objReturn.roomsSerialize=roomsSerialize;objReturn.rooms=rooms;return objReturn};this.validate=function(searchboxFlightsAndHotelBox){var valid=true;var checkin=$("#checkin",searchboxFlightsAndHotelBox);var checkout=$("#checkout",searchboxFlightsAndHotelBox);var inputOrigin=$("#origin",searchboxFlightsAndHotelBox);var inputDestination=$("#destination",searchboxFlightsAndHotelBox);if(checkin.data("isValid")&&checkin.val()!="dd/mm/aaaa"){checkin.parent().removeClass("errorLabel")}else{checkin.parent().addClass("errorLabel");valid=false}checkout.parent().find(".errorText").html("");if(checkout.data("isValid")&&checkout.val()!="dd/mm/aaaa"){checkout.parent().removeClass("errorLabel");if(valid){var datein=new Despegar.Date();datein.setddmmaaaa(checkin.val(),"/");var dateout=new Despegar.Date();dateout.setddmmaaaa(checkout.val(),"/");if(datein.compareTo(dateout.getiso())>=0){checkout.parent().addClass("errorLabel");checkout.parent().find(".errorText").html(this.labels[options.language]["errorPreviousDate"]);valid=false}}}else{checkout.parent().addClass("errorLabel");valid=false}if(inputOrigin.data("dataValue").length==3){inputOrigin.parent().removeClass("errorLabel");inputOrigin.parent().find(".errorText").html("")}else{inputOrigin.parent().addClass("errorLabel");if(inputOrigin.val()!=options.defaultOriginDesc){inputOrigin.parent().find(".errorText").html(me.labels[options.language]["errorOrigin"])}valid=false}if(inputDestination.data("dataValue").length==3){inputDestination.parent().removeClass("errorLabel");inputDestination.parent().find(".errorText").html("");if(inputDestination.val()==inputOrigin.val()){inputDestination.parent().addClass("errorLabel");inputDestination.parent().find(".errorText").html(me.labels[options.language]["errorDestinationEqualOrigin"]);valid=false}if(inputDestination.data("dataValue").length==3&&inputDestination.data("dataValue").length==3){if(inputDestination.data("dataValue")==inputOrigin.data("dataValue")){inputDestination.parent().addClass("errorLabel");inputDestination.parent().find(".errorText").html(me.labels[options.language]["errorDestinationEqualOrigin"]);valid=false}}}else{inputDestination.parent().addClass("errorLabel");if(inputDestination.val()!=options.defaultdestinationdesc){inputDestination.parent().find(".errorText").html(me.labels[options.language]["errorDestination"])}valid=false}$(".errorIcon",$(".rowPaxs")).remove();$(".ageselectsbox",$(".rowPaxs")).removeClass("error");$(".labelage",$("#paxselection")).removeClass("error");for(m=1;m<=options.maxroomsquantity;m++){for(h=1;h<=options.maxcnnroom;h++){var selectedAge=$("#selectCnnAge"+m+h,searchboxFlightsAndHotelBox);if($(selectedAge).is(":visible")){if(selectedAge.val()=="NA"){selectedAge.addClass("errorLabel");selectedAge.after('<span class="mainSprite errorIcon"></span>');selectedAge.parent().addClass("error");$(".labelage",$("#paxselection")).addClass("error");valid=false}else{selectedAge.removeClass("errorLabel")}}}}var numHab=$("#rooms",searchboxFlightsAndHotelBox).val();var qHabAdt=0;var qHabCnn=0;for(m=1;m<=numHab;m++){qHabAdt+=parseInt($("#selectAdt"+m+" option:selected",searchboxFlightsAndHotelBox).val());qHabCnn+=parseInt($("#selectCnn"+m+" option:selected",searchboxFlightsAndHotelBox).val())}if((options.searchflow=="Revancha"&&(qHabAdt+qHabCnn)>8)||((options.searchflow=="ezrez")&&qHabAdt>7)){$(".selectAdt:visible",searchboxFlightsAndHotelBox).addClass("errorLabelSelect");if(options.searchflow=="ezrez"){$("#paxselection",searchboxFlightsAndHotelBox).parent().find("#errorTextAdt").html(this.labels[options.language]["errorNumAdt"])}else{$("#paxselection",searchboxFlightsAndHotelBox).parent().find("#errorTextAdt").html(this.labels[options.language]["errorNumTot"])}valid=false}else{$(".selectAdt",searchboxFlightsAndHotelBox).removeClass("errorLabelSelect");$("#paxselection",searchboxFlightsAndHotelBox).parent().find("#errorTextAdt").html("")}if(options.searchflow=="Revancha"){if(qHabAdt<($(".Inf:visible",$(".ageselectsboxinfs")).length)){$("#paxselection",searchboxFlightsAndHotelBox).parent().find("#errorTextChld").html(this.labels[options.language]["errorNumInf"]);$("#paxselection",searchboxFlightsAndHotelBox).parent().find("#errorTextChld").css("display","inline");valid=false}else{$("#paxselection",searchboxFlightsAndHotelBox).parent().find("#errorTextChld").html("")}}if(options.searchflow=="ezrez"){if(qHabCnn>3){for(m=1;m<=numHab;m++){$("#selectCnn"+m,searchboxFlightsAndHotelBox).addClass("errorLabelSelect")}$("#paxselection",searchboxFlightsAndHotelBox).parent().find("#errorTextChld").html(this.labels[options.language]["errorNumChld"]);valid=false}else{for(m=1;m<=numHab;m++){$("#selectCnn"+m,searchboxFlightsAndHotelBox).removeClass("errorLabelSelect")}$("#paxselection",searchboxFlightsAndHotelBox).parent().find("#errorTextChld").html("")}}return valid};this.searchFlightsAndHotels=function(){var searchCars=false;if($("#flightshotelscars:checked",$(target)).length>0){searchCars=true}var parameters={origin:$("#origin",$(target)).data("dataValue"),originDesc:$("#origin",$(target)).val(),country:options.country,roomsDetails:me.getRoomsDetails(),checkin:$("#checkin",$(target)).val(),checkout:$("#checkout",$(target)).val(),destination:$("#destination",$(target)).data("dataValue"),destinationDesc:$("#destination",$(target)).val(),searchCarsToo:searchCars};var tracking={cod:options.trackingCod,id:options.trackingId,brand:options.trackingBrand};if(eval("Despegar.FlightsAndHotels.FlightsAndHotelFlows."+options.searchflow)!=undefined){eval("var searchObject = new Despegar.FlightsAndHotels.FlightsAndHotelFlows."+options.searchflow);searchObject.searchFlightsAndHotels(parameters,location.host,tracking)}else{eval("var searchObject = new Despegar.FlightsAndHotels.FlightsAndHotelFlows."+this.defaultsearchflow);searchObject.searchFlightsAndHotels(parameters,location.host,tracking)}};var options=options||{};options.country=options.country||"mx";options.language=options.language||"es";options.maxroomsquantity=options.maxroomsquantity||4;options.defaultrooms=options.defaultrooms||1;options.searchflow=options.searchflow||this.defaultsearchflow;options.maxpaxroom=options.maxpaxroom||6;options.defaultpaxs=options.defaultpaxs||2;options.defaultpaxscnn=options.defaultpaxscnn||0;options.maxcnnroom=options.maxcnnroom||3;options.maxcnnage=options.maxcnnage||11;options.defaultdestination=options.defaultdestination||this.labels[options.language]["defaultDestination"];options.defaultdestinationdesc=options.defaultdestinationdesc||this.labels[options.language]["defaultDestinationDesc"];options.defaultOrigin=options.defaultOrigin||this.labels[options.language]["defaultOrigin"];options.defaultOriginDesc=options.defaultOriginDesc||this.labels[options.language]["defaultOriginDesc"];options.smallRooms=options.smallRooms||0;options.trackingCod=options.trackingCod||"cob";options.trackingId=options.trackingId||null;options.trackingBrand=options.trackingBrand||"despegar";options.TC=options.TC||(typeof(TC)!="undefined"?TC:{});options.searchCarsTooBox=options.searchCarsTooBox||false;options.ageselectShort=options.ageselectShort||false;options.requestCnnAge=options.requestCnnAge||false;options.departureDate=options.departureDate||"dd/mm/aaaa";options.returnDate=options.returnDate||"dd/mm/aaaa";options.distribution=options.distribution||false;options.noPassengerAge=options.noPassengerAge||false;options.showYearOld=options.showYearOld||false;this.render()};jQuery.fn.SearchBoxFlightsAndHotels=function(a){this.each(function(b,c){var d=this;c.obj=new Despegar.FlightsAndHotels.SearchBoxFlightsAndHotels(d,a)});return this};registerNameSpace("Despegar.FlightsAndHotels.FlightsAndHotelFlows");Despegar.FlightsAndHotels.FlightsAndHotelFlows.ezrez=function(){var a=this;this.noAirportCity=function(c){var b={PCM:"CUN",PG1:"REC",MRX:"PMV",ONX:"PTY",VC1:"COR",GU2:"GRU",PA9:"GIG",MO1:"SSA",AN2:"BCR",CS2:"SSA",PI1:"MDQ",AR1:"BPS",BB1:"FLN",PR1:"NAT",CA6:"MDQ",GU3:"BJX",QJO:"GRU",JRS:"TLV",GBI:"FPO",PF1:"GRU",CO4:"ONX",QCN:"POA",TDL:"MDQ",UBT:"GRU",CL1:"SJD",QPE:"GIG",BO2:"CGR",BOC:"PTY",POO:"GRU",GU5:"OPO",QNT:"GIG",GU6:"VIX",QMI:"GRU",OCO:"SJO",CYO:"HAV",AT3:"CJC",ISJ:"CUN",ESE:"TIJ",TR1:"BPS",PQM:"VSA",PI5:"EZE",OL1:"REC",AG1:"AGU",AN3:"ANU",BE1:"GRU",TNO:"SJO",BR1:"OST",BCT:"MIA",IT7:"FLN",TE2:"QRO",QVH:"VIX",WKL:"KOA",MCM:"NCE",MYC:"CCS",SN1:"GRU",QTZ:"VER",RLO:"COR",ANA:"LAX",MA3:"PDP",IC1:"PMV",BGV:"PA",JA1:"SJO",RRO:"NAP",BA1:"SDQ",ITJ:"NVT",PCZ:"UPC",TO1:"MAD",SM1:"QRO",CBP:"OPO",MP0:"MDQ",PL2:"PCY",YEA:"YEG",YEA:"YXD",MFT:"LIM",RCU:"COR",QHT:"GIG",RUI:"ELP",COW:"SCL",HFA:"HFA",RG0:"PVR",ODB:"COR",UKY:"ITM",PMZ:"SJO",TA3:"GRU",ALV:"BCN",STY:"SFN",SMC:"BOG",QSR:"NAP",TI3:"POA",PRJ:"NAP",ESM:"UIO",SBH:"SBH",IT8:"GRU",OL2:"ATH",VN1:"SCL",TA1:"TUC",MT1:"ITM",QGN:"BCN",PGZ:"CWB",IN1:"GRU",PA1:"VLL",MVF:"NAT",WSG:"BWI",AOH:"DAY",TSQ:"POA",SXY:"GTF",MA1:"SJO",QSB:"GRU",TFC:"CTA",EY1:"PMV",LIP:"GRU",CY1:"CCC",YZD:"YYZ",CH5:"AQP",NTY:"JNB",SL1:"THE",CFG:"HAV",NZA:"LIM",MRK:"MIA",QSC:"GRU",AQ1:"FOR",PDF:"BPS",VXX:"MEX",MJR:"MDQ",SC1:"MJR",YIW:"PEK",PA3:"PYA",BZC:"RIO"};return b[c]};this.searchFlightsAndHotels=function(u,v,c){var r=new Array();var t="http://wstest.ar.despegar.com/tempfolder/searchboxFlightsAndHotels.html";var o=new Array();var q=new Array(3);var w=0;var b=new Array(r.length);r=u.roomsDetails.roomsSerialize.split("!");for(var g=0;g<r.length;g++){b[g]=r[g].split("-")}for(var g=0;g<r.length;g++){w=w+b[g].length-1}var d=0;for(var g=0;g<b.length;g++){for(var e=0;e<b[g].length-1;e++){if((typeof b[g][e+1]!="undefined")&&(b[g][e+1]!="NA")){o[d]=b[g][e+1];d++}}}for(g=o.length;g<3;g++){o[g]=-1}for(var g=0;g<3;g++){if((o[g]>=0)&&(o[g]<2)){q[g]="in_lap"}else{if(o[g]>=2){q[g]="in_seat"}else{q[g]="NULL"}}}var s=this.noAirportCity(u.origin);if(!s){s=u.origin}var p=this.noAirportCity(u.destination);var f="";if(!p){p=u.destination}else{var n=u.destinationDesc.split(",");f=n[0];n=f.split("(");f=n[0]}if(f!=""){p=f+"("+p+")"}var l="air1=true&roundtrip=true&serviceclass=coach&area1="+s+"&area2="+p+"&date1="+u.checkin+"&time1=1&date2="+u.checkout+"&time2=1&adults="+u.roomsDetails.qtyAdt+"&dynamic_children="+w+"&child_age1="+o[0]+"&child_age2="+o[1]+"&child_age3="+o[2]+"&infant1="+q[0]+"&infant2="+q[1]+"&infant3="+q[2]+"&room1=true&num_rooms="+u.roomsDetails.rooms+"&origin="+t+"&car1="+u.searchCarsToo;location.href=("http://paquetes.despegar.com/travel/arc_waiting.cfm?"+l)}};registerNameSpace("Despegar.FlightsAndHotels.FlightsAndHotelFlows");function dateTransform(a){var b=a.split("/");return b[2]+"-"+b[1]+"-"+b[0]}Despegar.FlightsAndHotels.FlightsAndHotelFlows.Revancha=function(){var a=this;this.searchFlightsAndHotels=function(d,c,f){var b=new Despegar.Date();var g=dateTransform(d.checkin);var e=dateTransform(d.checkout);location.href=("/Search/Packages/"+d.origin+"/"+d.destination+"/"+g+"/"+e+"/"+d.roomsDetails.roomsSerialize+"/"+$(".Inf:visible",$(".ageselectsboxinfs")).length)}};registerNameSpace("Despegar.SearchBoxes");Despegar.SearchBoxes.SearchBox=function(c,a){this.exists=false;this.target=$(c);var d="";var b=this;this.renderTabs=function(){var e=$("<ul></ul>");$.each(this.options.tabs,function(f,g){$("<li></li>").appendTo(e).attr("id",g.id).html("<span>"+g.text+"</span>").click(function(){b.renderSearchBox(g);b.switchSearchBox(g)});if(g.id==b.options.selectedTabId){d=g}});this.target.append($('<div class="searchBoxMenu"></div>').html(e));$("#"+this.options.selectedTabId,this.target).addClass("selected")};this.switchSearchBox=function(e){$("#"+d.id,this.target).removeClass("selected");$("#"+e.id,this.target).addClass("selected");$("#searchBoxFor"+d.id,this.target).hide();$("#searchBoxFor"+e.id,this.target).show();d=e};this.renderSearchBox=function(e){switch(e.product){case"hotels":$('<div class="searchBoxHotels"></div>').attr("id","searchBoxFor"+e.id).prependTo(this.searchBoxesContainer).searchBoxHotels(e.options);break;case"flights":$('<div class="searchBoxFlights"></div>').attr("id","searchBoxFor"+e.id).prependTo(this.searchBoxesContainer).searchBoxFlights(e.options);break;case"packages":$('<div class="searchBoxPackages"></div>').attr("id","searchBoxFor"+e.id).prependTo(this.searchBoxesContainer).searchBoxPackages(e.options);break;case"flightsandhotels":$('<div class="searchBoxHotelsAndFlights"></div>').attr("id","searchBoxFor"+e.id).prependTo(this.searchBoxesContainer).SearchBoxFlightsAndHotels(e.options);break;case"cars":$('<div class="searchBoxCars"></div>').attr("id","searchBoxFor"+e.id).prependTo(this.searchBoxesContainer).searchBoxCars(e.options);break}if(typeof e.externalFunction!="undefined"){e.externalFunction()}$("#"+e.id).unbind("click").click(function(){if(e.id!=d.id){b.switchSearchBox(e)}if(typeof e.externalFunction!="undefined"){e.externalFunction()}})};this.initialize=function(){this.renderTabs();this.searchBoxContainer=$('<div class="searchBoxContainer"></div>');this.searchBoxesContainerTop=$('<div class="searchBoxesTop"></div>');this.searchBoxesContainer=$('<div class="searchBoxesContainer"></div>');this.searchBoxesContainerFooter=$('<div class="searchBoxesBottom"></div>');this.target.append(this.searchBoxContainer);this.searchBoxContainer.append(this.searchBoxesContainerTop);this.searchBoxContainer.append(this.searchBoxesContainer);this.searchBoxContainer.append(this.searchBoxesContainerFooter);this.renderSearchBox(d)};this.options=a||{};this.options.tabs=a.tabs||{};this.options.language=a.language||"es";this.initialize()};jQuery.fn.searchBox=function(a){this.each(function(b,c){var d=this;c.obj=new Despegar.SearchBoxes.SearchBox(d,a)});return this};