initialize=function(js_search,language){function handleTxt(type,args,obj){var dates=args[0];var date=dates[0];var year=date[0],month=date[1],day=date[2];today=new Date();currentMonth=eval(today.getMonth()+1);resta=month-currentMonth;month1=(resta>=1?month-1:month);month1=(month1<10)?"0"+month1:month1;month=(month<10)?"0"+month:month;day=(day<10)?"0"+day:day;var hiddenInDay=document.getElementById(js_search.prefix+"_checkin_day");var hiddenInMonthYear=document.getElementById(js_search.prefix+"_month_year_checkin");hiddenInMonthYear.value=month+"/"+year;js_search.mostrarDias(js_search.prefix+"_month_year_checkin",js_search.prefix+"_inoptions",js_search.prefix+"_checkin_day",js_search.prefix+"_checkin_day",1,1,1,day);hiddenInDay.value=day;checkinDate=month+"/"+day+"/"+year;checkinMonthYear=month+"/"+year;caloutpagedate=month1+"/"+year;calout.cfg.setProperty("pagedate",caloutpagedate);calout.cfg.setProperty("mindate",checkinDate);calout.cfg.setProperty("mindate",checkinDate,false);calout.cfg.setProperty("selected",checkinDate);calout.render();js_search.changeCheckOutDate();calin.hide()}function handleTxt2(type,args,obj){var dates=args[0];var date=dates[0];var year=date[0],month=date[1],day=date[2];var hiddenOutDay=document.getElementById(js_search.prefix+"_checkout_day");var hiddenOutMonthYear=document.getElementById(js_search.prefix+"_month_year_checkout");month=(month<10)?"0"+month:month;day=(day<10)?"0"+day:day;hiddenOutMonthYear.value=month+"/"+year;js_search.mostrarDias(js_search.prefix+"_month_year_checkout",js_search.prefix+"_outoptions",js_search.prefix+"_checkout_day",js_search.prefix+"_checkout_day",2,js_search.days_before_checkin,0,day);hiddenOutDay.value=day;calout.hide()}function _getDateStrForcalendars(fecha){return eval(fecha.getMonth()+1)+"/"+fecha.getDate()+"/"+fecha.getFullYear()}function _configureCalendar(calendar,fecha_inicial){if(language=="ar"||language=="ja"||language=="zt"){locale_weekdays="long"}else{locale_weekdays="short"}calendar.cfg.setProperty("LOCALE_WEEKDAYS",locale_weekdays);calendar.cfg.setProperty("hide_blank_weeks",true);calendar.cfg.setProperty("START_WEEKDAY",1);var str=_getDateStrForcalendars(fecha_inicial);calendar.cfg.setProperty("mindate",str);calendar.cfg.setProperty("selected",str);var fecha_final=new Date(fecha_inicial);fecha_final.setFullYear(fecha_final.getFullYear()+1);calendar.cfg.setProperty("maxdate",_getDateStrForcalendars(fecha_final));calendar.cfg.setProperty("close",true)}function _addDaysToDate(fecha,dias){t=fecha.getTime();t+=1000*60*60*24*dias;fecha.setTime(t)}var calin=new YAHOO.widget.CalendarGroup("calin",js_search.prefix+"_calinContainer",{pages:2,close:true});var calout=new YAHOO.widget.CalendarGroup("calout",js_search.prefix+"_caloutContainer",{pages:2,close:true});calin.selectEvent.subscribe(handleTxt,calin,true);calout.selectEvent.subscribe(handleTxt2,calout,true);var calin_fecha_inicial=new Date();_addDaysToDate(calin_fecha_inicial,js_search.days_before_checkin);_configureCalendar(calin,calin_fecha_inicial);var calout_fecha_inicial=calin_fecha_inicial;_addDaysToDate(calout_fecha_inicial,1);_configureCalendar(calout,calout_fecha_inicial);localeArrays=getLocaleLabels(language);localeProperties=getLocaleProperties();for(i=0;i<localeArrays.length;i++){calin.cfg.setProperty(localeProperties[i],localeArrays[i]);calout.cfg.setProperty(localeProperties[i],localeArrays[i])}calin.render();calout.render();YAHOO.util.Event.addListener(js_search.prefix+"_show1up","click",calin.show,calin,true);YAHOO.util.Event.addListener(js_search.prefix+"_show2up","click",calout.show,calout,true)};function TransportSearch(){this.TransportSearch=function(){this.days_before_checkin=1};var _getElementValue=function(element_id){if(document.getElementById(element_id)){return document.getElementById(element_id).value}else{alert("El elemento con id "+element_id+" no existe.")}};var _setElementValue=function(element_id,element_value){if(document.getElementById(element_id)){document.getElementById(element_id).value=element_value}else{alert("El elemento con id "+element_id+" no existe.")}};var _getElement=function(element_id){return document.getElementById(element_id)};var _calculateDifference=function(laterdate,earlierdate){var difference=laterdate.getTime()-earlierdate.getTime();var milliseconds_in_day=1000*60*60*24;var daysDifference=Math.round(difference/milliseconds_in_day);return daysDifference};var _daysInMonth=function(month,year){var dd=new Date(year,month,0);return dd.getDate()};this.mostrarDias=function(id_campo_meses,targetID,id_campo_dias,name_campo_dias,inicio,dias_mas,check_in,selected_day,reset){var sDay="";if(_getElement(id_campo_dias)!=null){sDay=_getElementValue(id_campo_dias)}if((selected_day!=0)&&(selected_day!="00")){sDay=selected_day}var monthYear=_getElementValue(id_campo_meses);var thismonth=monthYear.slice(0,2);var thisyear=parseInt(monthYear.slice(3,7));var maxdays=_daysInMonth(thismonth,thisyear);var maxdays2=_daysInMonth(thismonth-1,thisyear);if((selected_day!=0)&&(selected_day!="00")&&!reset){var tDate=new Date(thisyear,thismonth-1,sDay)}else{var tDate=new Date()}if((sDay!="")&&(sDay!="00")&&!reset){tDate.setDate(sDay)}else{cday=eval(tDate.getDate()+dias_mas);tDate.setDate(cday)}switch(inicio){case 1:if((sDay=="")||(sDay=="00")){var yesterday=tDate.getDate();if(yesterday==eval(maxdays+1)){var today=1;if(thismonth==12){var month=1;var year=eval(thisyear+1)}else{var month=eval(thismonth+1);var year=thisyear}}else{if(yesterday==1){var today=1;if(thismonth==1){var month=1;var year=eval(thisyear+1)}else{var month=eval(thismonth);var year=thisyear}}else{var today=tDate.getDate();var month=thismonth;var year=thisyear}}month=(month<10)?"0"+month:month;_getElement(id_campo_meses).value=month+"/"+year}else{var today=tDate.getDate()}break;case 2:if((sDay=="")||(sDay=="00")||reset){var yesterday=tDate.getDate();if(yesterday==maxdays){var today=1;if(thismonth==12){var month=1;var year=eval(thisyear+1)}else{var month=eval(thismonth);var year=thisyear}}else{if(yesterday==1){var month=thismonth;var today=eval(tDate.getDate()+1);var year=thisyear}else{var today=eval(tDate.getDate()+1);var month=thismonth;var year=thisyear}}month=(month<10)?"0"+month:month;_getElement(id_campo_meses).value=month+"/"+year}else{var today=tDate.getDate()}break}var options="";var selected="";for(x=1;x<=maxdays;x++){if(x<10){xStr="0"+x}else{xStr=x}if(x==today){selected='selected = "selected"'}else{selected=""}options=options+"<option "+selected+" value='"+xStr+"'>"+x+"</option>"}var output="<select name='"+name_campo_dias+"' onchange='";if(check_in==1){output=output+" "+this.my_name+".changeCheckOutDate();"}output=output+" "+this.my_name+".updateCalendarDates();'";output=output+"' class='txt05' id='"+id_campo_dias+"'>"+options+"</select>";target=_getElement(targetID);target.innerHTML=output};this.mostrarMeses=function(flag){if((flag=="")||(flag=="00")){var ms_day=24*60*60*1000;var antelacion_ms=parseInt(ms_day*this.days_before_checkin);var d=new Date();var today_ms=d.getTime();d.setTime(parseInt(today_ms+antelacion_ms));var ci_month=eval(d.getMonth()+1);ci_month=(ci_month.toString().length==1?"0":"")+ci_month;var ci_year=eval(d.getFullYear());var ci_month_year=ci_month+"/"+ci_year;d.setTime(parseInt(today_ms+antelacion_ms+ms_day));var co_month=eval(d.getMonth()+1);co_month=(co_month.toString().length==1?"0":"")+co_month;var co_year=eval(d.getFullYear());var co_month_year=co_month+"/"+co_year;_setElementValue(this.prefix+"_month_year_checkin",ci_month_year);_setElementValue(this.prefix+"_month_year_checkout",co_month_year)}};var _getTodayDate=function(){current_date=new Date();current_date.setHours(0);current_date.setMinutes(0);current_date.setSeconds(0);return current_date};var _getMyDate=function(day_form_id,monthyear_form_id){dia=document.getElementById(day_form_id).value;mes=document.getElementById(monthyear_form_id).value.substring(0,2);anno=document.getElementById(monthyear_form_id).value.substring(3,7);calculated_date=new Date(anno,mes-1,dia);return(calculated_date.getDate()!=dia?0:calculated_date)};this._validateDatewithSelect=function(check_in_day_form_id,check_in_monthyear_form_id,check_out_day_form_id,check_out_monthyear_form_id){Error=new Array(3);Error=0;var current_date=_getTodayDate();var earlierdate=_getMyDate(check_in_day_form_id,check_in_monthyear_form_id);var laterdate=_getMyDate(check_out_day_form_id,check_out_monthyear_form_id);if(earlierdate==0){Error=1222}else{if(laterdate==0){Error=1525}if(_getElementValue(this.prefix+"_num_nights")<1){Error=427}if(Error==0){daysDifference=_calculateDifference(earlierdate,current_date);if(daysDifference<0){Error=421}if(daysDifference>334){Error=1205}if(earlierdate==laterdate){Error=427}}datesDifference=_calculateDifference(laterdate,earlierdate);if(datesDifference<=0){Error=428}}return Error};this.changeCheckOutDate=function(){var num_nights=1;checkout_date=new Date(_getElementValue(this.prefix+"_month_year_checkin").substr(0,2)+"/"+_getElementValue(this.prefix+"_checkin_day")+"/"+_getElementValue(this.prefix+"_month_year_checkin").substr(3,6)+" 01:00");checkout_date.setTime(checkout_date.getTime()+num_nights*1000*60*60*24);checkoutmonth=checkout_date.getMonth();checkoutmonth++;checkmonth=checkoutmonth.toString();if(checkmonth.length==1){checkmonth="0"+checkmonth}checkoutyear=checkout_date.getFullYear();_setElementValue(this.prefix+"_month_year_checkout",checkmonth+"/"+checkoutyear);this.mostrarDias(this.prefix+"_month_year_checkout",this.prefix+"_outoptions",this.prefix+"_checkout_day",this.prefix+"_checkout_day",num_nights,1,0,0);checkoutday=checkout_date.getDate();checkout=checkoutday.toString();lenday=checkout.length;if(lenday==1){checkout="0"+checkout}_setElementValue(this.prefix+"_checkout_day",checkout)};this.onChangeMonthYear=function(id_campo_meses,targetID,id_campo_dias,name_campo_dias,inicio,dias_mas,check_in){this.mostrarDias(id_campo_meses,targetID,id_campo_dias,name_campo_dias,inicio,dias_mas,check_in,0);if(check_in==1){this.changeCheckOutDate()}};this._validateRelease=function(){var current_date=_getTodayDate();var earlierdate=_getMyDate(this.prefix+"_checkin_day",this.prefix+"_month_year_checkin");daysDifference=_calculateDifference(earlierdate,current_date);if(daysDifference<this.days_before_checkin){error=4432}else{error=0}return error};this.clearInput=function(element,valor){if(valor==element.value){element.value=""}};this.updateCalendarDates=function(filter_in,filter_out){if(!filter_in){this.updateCalendarInDate()}if(!filter_out){this.updateCalendarOutDate()}};this.updateCalendarInDate=function(){var day=$("#"+this.prefix+"_checkin_day").val();var month_year=$("#"+this.prefix+"_month_year_checkin").val();$("#s_0_airsearchhtmlformview_airsearchflighthtmlformview_depart_date").val(day+"/"+month_year);this.showMonth(parseInt(month_year.substring(0,2),10),"in")};this.updateCalendarOutDate=function(){var day=$("#"+this.prefix+"_checkout_day").val();var month_year=$("#"+this.prefix+"_month_year_checkout").val();$("#s_1_airsearchhtmlformview_airsearchflighthtmlformview_depart_date").val(day+"/"+month_year);$("#s_1_airsearchhtmlformview_airsearchflighthtmlformview_depart_date").datepick("option",{minDate:$("#"+this.prefix+"_checkin_day").val()+"/"+$("#"+this.prefix+"_month_year_checkin").val()});this.showMonth(parseInt(month_year.substring(0,2),10),"out")};this.showMonth=function(mes,action){var element;if(action=="in"){element="s_0_airsearchhtmlformview_airsearchflighthtmlformview_depart_date"}else{element="s_1_airsearchhtmlformview_airsearchflighthtmlformview_depart_date"}if(mes>this.month){$("#"+element).datepick("option",{monthsOffset:1})}else{$("#"+element).datepick("option",{monthsOffset:0})}};this.handleInDates=function(date){var year=date.substring(6,10),month=date.substring(3,5),day=date.substring(0,2);var hiddenInDay=document.getElementById(this.prefix+"_checkin_day");var hiddenInMonthYear=document.getElementById(this.prefix+"_month_year_checkin");hiddenInMonthYear.value=month+"/"+year;this.mostrarDias(this.prefix+"_month_year_checkin",this.prefix+"_inoptions",this.prefix+"_checkin_day",this.prefix+"_checkin_day",1,1,1,day);hiddenInDay.value=day;checkinDate=month+"/"+day+"/"+year;checkinMonthYear=month+"/"+year;this.changeCheckOutDate()};this.clearInput=function(element,valor){if(valor==element.value){element.value=""}};this.handleOutDates=function(date){var year=date.substring(6,10),month=date.substring(3,5),day=date.substring(0,2);var hiddenOutDay=document.getElementById(this.prefix+"_checkout_day");var hiddenOutMonthYear=document.getElementById(this.prefix+"_month_year_checkout");hiddenOutMonthYear.value=month+"/"+year;this.mostrarDias(this.prefix+"_month_year_checkout",this.prefix+"_outoptions",this.prefix+"_checkout_day",this.prefix+"_checkout_day",1,1,0,day);hiddenOutDay.value=day}};
