var num_max_hab=5;
var oPanel_huespedes_dist = '';
function isObject(a) { return (typeof a == 'object'); }
function mostrar_error(errores_current)
{
    if (errores_current.length>0)
    {
        var error_message = new String();
        error_message = error_header + "\n\n";
        for ( var i=0; i < errores_current.length; i++ )
        {
            error_message = error_message.concat("  - "+errores_current[i]+"\n");
        }
        alert(error_message);
    }
}
// Destruye un objeto
function destruirObjeto(oElm) { oElm.destroy(); }
//Prototype to YUI
if(cod_idioma && cod_idioma == 'it') {
    var months_long=["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"];
    var day_short=["Do", "Lu", "Ma", "Me", "Gi", "Ve", "Sa"];
}else if(cod_idioma && cod_idioma == 'fr') {
    months_long = [ "Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre "];
    day_short = [ "Di", "Lu", "Ma", "Me", "Je", "Ve", "Sa"];
}
else if(cod_idioma && cod_idioma == 'pt') {
        months_long = [ "Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro "];
        day_short = [ "Dom","Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"];
}
else {
    var months_long=["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"];
    var day_short=["Do", "Lu", "Ma", "Mi", "Ju", "Vi", "Sa"];
}
var d = new Date();
var hoy = new Date(d.getFullYear(), d.getMonth(), d.getDate());
try {
    var $ = YAHOO.util.Dom.get;
} catch(ex) {}

function $F(id) { if($(id)) return $(id).value; }

//Calendarios

/***************************/
function setUpCalendar()
{
	if(!$('fecha_salida')){ setTimeout('setUpCalendar();',200);return;}
    var calOptions ={iframe:true,PAGES:2,close:true,pagedate: (d.getMonth()+1)+"/"+d.getFullYear(),  mindate: (d.getMonth()+1)+"/"+d.getDate()+"/"+d.getFullYear(),  maxdate: (d.getMonth()+1)+"/"+d.getDate()+"/"+(d.getFullYear()+1)};
    var calOptions2={iframe:true,PAGES:2,close:true,pagedate: (d.getMonth()+1)+"/"+d.getFullYear(),  mindate: (d.getMonth()+1)+"/"+d.getDate()+"/"+d.getFullYear(),  maxdate: (d.getMonth()+1)+"/"+d.getDate()+"/"+(d.getFullYear()+1)};
    cal1 = new YAHOO.widget.CalendarGroup("cal1","cal1Container",calOptions);
    cal2 = new YAHOO.widget.CalendarGroup("cal2","cal2Container",calOptions2);

    if(!is_gecko) {
    	YAHOO.util.Event.removeListener("salida-trigger");
    	YAHOO.util.Event.addListener("salida-trigger", "click", showCal, cal1, true);
    }

    YAHOO.util.Event.removeListener("fecha_salida");
    YAHOO.util.Event.addListener("fecha_salida", "click", showCal, cal1, true);

    if(!is_gecko) {
    	YAHOO.util.Event.removeListener("regreso-trigger");
    	YAHOO.util.Event.addListener("regreso-trigger", "click", showCal, cal2, true);
    }

    YAHOO.util.Event.removeListener("fecha_regreso");
    YAHOO.util.Event.addListener("fecha_regreso", "click", showCal, cal2, true);

    if($('fecha_regreso')) $('fecha_regreso').setAttribute('autocomplete', 'off');
    if($('fecha_salida'))  $('fecha_salida').setAttribute('autocomplete', 'off');

    cal1.selectEvent.subscribe(calSelectDate, cal1, true);
    cal2.selectEvent.subscribe(calSelectDate, cal2, true);
    cal1.cfg.setProperty("MONTHS_LONG",months_long);
    cal1.cfg.setProperty("WEEKDAYS_SHORT",day_short);
    cal1.cfg.setProperty("START_WEEKDAY",1);
    cal1.cfg.setProperty("NAV_ARROW_LEFT","/images_new/flecha_iz.gif");
    cal1.cfg.setProperty("NAV_ARROW_RIGHT","/images_new/flecha_de.gif");
    cal2.cfg.setProperty("MONTHS_LONG",months_long);
    cal2.cfg.setProperty("WEEKDAYS_SHORT",day_short);
    cal2.cfg.setProperty("START_WEEKDAY",1);
    cal2.cfg.setProperty("NAV_ARROW_LEFT","/images_new/flecha_iz.gif");
    cal2.cfg.setProperty("NAV_ARROW_RIGHT","/images_new/flecha_de.gif");

    var a_fecha = $('fecha_salida').value.split('/');
    var s_dia = a_fecha[0];
    var s_mes = a_fecha[1];
    var s_any = a_fecha[2];
    if(($('fecha_salida').value!='') && (checkDate(s_dia,s_mes-1,s_any)))
    {
        tmp=$('fecha_salida').value.split("/");
        cal1.cfg.setProperty("selected",tmp[1]+'/'+tmp[0]+'/'+tmp[2],false);
        cal1.cfg.setProperty("pagedate",tmp[1]+'/'+tmp[2],false);
    }

    var a_fecha = $('fecha_regreso').value.split('/');
    var s_dia = a_fecha[0];
    var s_mes = a_fecha[1];
    var s_any = a_fecha[2];

    if(($('fecha_regreso').value!='') && (checkDate(s_dia,s_mes-1,s_any)))
    {
        tmp=$('fecha_regreso').value.split("/");
        //cal2.cfg.setProperty("selected",tmp[1]+'/'+tmp[0]+'/'+tmp[2],false);
        cal2.cfg.setProperty("pagedate",tmp[1]+'/'+tmp[2],false);
    }

    cal1.render();
    cal2.render();
}

function setUpCalendar_microsites(fecha_act, fecha_min, fecha_max)
{
    var calOptions ={iframe:true,PAGES:2,close:true,pagedate: fecha_act, mindate: fecha_min, maxdate: fecha_max};
    var calOptions2={iframe:true,PAGES:2,close:true,pagedate: fecha_act, mindate: fecha_min, maxdate: fecha_max};
    cal1 = new YAHOO.widget.CalendarGroup("cal1","cal1Container",calOptions);
    cal2 = new YAHOO.widget.CalendarGroup("cal2","cal2Container",calOptions2);
    YAHOO.util.Event.removeListener("salida-trigger");
    YAHOO.util.Event.addListener("salida-trigger", "click", showCal, cal1, true);
    YAHOO.util.Event.removeListener("fecha_salida");
    YAHOO.util.Event.addListener("fecha_salida", "click", showCal, cal1, true);
    YAHOO.util.Event.removeListener("regreso-trigger");
    YAHOO.util.Event.addListener("regreso-trigger", "click", showCal, cal2, true);
    YAHOO.util.Event.removeListener("fecha_regreso");
    YAHOO.util.Event.addListener("fecha_regreso", "click", showCal, cal2, true);
    cal1.selectEvent.subscribe(calSelectDate, cal1, true);
    cal2.selectEvent.subscribe(calSelectDate, cal2, true);
    cal1.cfg.setProperty("MONTHS_LONG",months_long);
    cal1.cfg.setProperty("WEEKDAYS_SHORT",day_short);
    cal1.cfg.setProperty("START_WEEKDAY",1);
    cal1.cfg.setProperty("NAV_ARROW_LEFT","/images_new/flecha_iz.gif");
    cal1.cfg.setProperty("NAV_ARROW_RIGHT","/images_new/flecha_de.gif");
    cal2.cfg.setProperty("MONTHS_LONG",months_long);
    cal2.cfg.setProperty("WEEKDAYS_SHORT",day_short);
    cal2.cfg.setProperty("START_WEEKDAY",1);
    cal2.cfg.setProperty("NAV_ARROW_LEFT","/images_new/flecha_iz.gif");
    cal2.cfg.setProperty("NAV_ARROW_RIGHT","/images_new/flecha_de.gif");
    if($('fecha_salida').value!='')
    {
        tmp=$('fecha_salida').value.split("/");
        cal1.cfg.setProperty("selected",tmp[1]+'/'+tmp[0]+'/'+tmp[2],false);
        cal1.cfg.setProperty("pagedate",tmp[1]+'/'+tmp[2],false);
    }
    if($('fecha_regreso').value!='')
    {
        tmp=$('fecha_regreso').value.split("/");
        //cal2.cfg.setProperty("selected",tmp[1]+'/'+tmp[0]+'/'+tmp[2],false);
        cal2.cfg.setProperty("pagedate",tmp[1]+'/'+tmp[2],false);
    }
    cal1.render();
    cal2.render();
}

function calSelectDate(type,args,obj)
{

    var dates = args[0][0];
    var year = dates[0], month = dates[1], day = dates[2];
    if(obj.id=="cal1")
    {

    	if ($('fecha_regreso').value != 'dd/mm/aaaa' && $('fecha_regreso').value)
    		var fechaSalida = $('fecha_regreso').value.split('/');
    	else
			var fechaSalida = null;

		if(fechaSalida!=null)
        {
            var fechaEntrada=$('fecha_salida').value.split('/');
            if(!$('fecha_salida').value) fechaEntrada=[dates[2],dates[1], dates[0]];
            var fecha_ini=new Date(parseInt(fechaEntrada[2], 10),parseInt(fechaEntrada[1], 10)-1,parseInt(fechaEntrada[0], 10));
            var fecha_fin=new Date(parseInt(fechaSalida[2], 10),parseInt(fechaSalida[1], 10)-1,parseInt(fechaSalida[0], 10));
            $('num_noches').value=Math.round((fecha_fin.getTime()-fecha_ini.getTime())/(1000*3600*24));
        }else{
            $('num_noches').value=1;
        }

		var num_n = parseInt($('num_noches').value);

		var next_day=new Date(year, month-1, day+num_n);
		var nday=next_day.getDate();
		var nmonth=next_day.getMonth()+1;
        var nyear=next_day.getFullYear();

        if(parseInt(nday)<10) nday="0"+nday;
        if(parseInt(nmonth)<10) nmonth="0"+nmonth;
        if(parseInt(day)<10) day="0"+day;
        if(parseInt(month)<10) month="0"+month;
		//cal2.setMonth(nmonth-1);

        $('fecha_salida').value =day + "/" + month + "/" + year;

 		cal2.cfg.setProperty("mindate",month + "/" + day + "/" + year, false);
		cal2.pages[0].cfg.setProperty("pagedate",cal1.pages[0].cfg.getProperty("pagedate"), false);
		cal2.pages[1].cfg.setProperty("pagedate",cal1.pages[1].cfg.getProperty("pagedate"), false);
		cal2.render();

    }else if(obj.id=="cal2")
    {
        if($('fecha_salida').value)
        {

            fechaSalida=[dates[2],dates[1], dates[0]];
            var fechaEntrada=$('fecha_salida').value.split('/');
            var fecha_ini=new Date(parseInt(fechaEntrada[2], 10),parseInt(fechaEntrada[1], 10)-1,parseInt(fechaEntrada[0], 10));
            var fecha_fin=new Date(parseInt(fechaSalida[2], 10),parseInt(fechaSalida[1], 10)-1,parseInt(fechaSalida[0], 10));
            if(parseInt(day)<10) day="0"+day;
            if(parseInt(month)<10) month="0"+month;
            $('fecha_regreso').value = day + "/" + month + "/" + year;
        }
        else{

            var pday=d.getDate();
            var pmonth=d.getMonth()+1;
            var pyear=d.getFullYear();
            if(parseInt(pday)<10) pday="0"+pday;
            if(parseInt(pmonth)<10) pmonth="0"+pmonth;
            if(parseInt(day)<10) day="0"+day;
            if(parseInt(month)<10) month="0"+month;
            //$('fecha_entrada').value = pday + "/" + pmonth + "/" + pyear;
            $('fecha_regreso').value = day + "/" + month + "/" + year;
        }
        //cal1.render();
    }
    eval(obj.id+".hide()");
}
/***************************/


function showCal(even,obj)
{

    if(obj.oDomContainer.style.display=='none' || obj.oDomContainer.style.display=='')
    {
    	if(obj.id=='cal1') {
            cal1.show(); cal2.hide();
        }else{
            cal1.hide(); cal2.show();
        }
    }else {
    	eval(obj.id+".hide()");
    }

}
function mostrarHome(campo)
{
	if (document.getElementById(campo))
	{
    	if (document.getElementById(campo).style.display=='none') document.getElementById(campo).style.display = '';
    	else document.getElementById(campo).style.display = 'none';
	}
}
function in_array(needle, haystack) {
    for (var i = 0; i < haystack.length; i++) {
        if (haystack[i] == needle) {
            return true;
        }
    }
    return false;
}
//Funcion para cargar javascripts on demand
function include_js(script_filename,force)
{
    if (!in_array(script_filename, included_js_files) || force === true) {
            var html_doc = document.getElementsByTagName('head').item(0);
            var js = document.createElement('script');
            js.setAttribute('language', 'javascript');
            js.setAttribute('type', 'text/javascript');
            js.setAttribute('src', script_filename);
            html_doc.appendChild(js);
            included_js_files[included_js_files.length] = script_filename;
    }
}
function setUpVmh()
{
    $('fecha_entrada').value=fs;
    $('fecha_salida').value=fr;
    $('s_hora').value=hs;
    $('r_hora').value=hr;
    $('nombre_origen1').value=or;
    $('nombre_origen').value=or;
    $('nombre_destino1').value=de;
    $('nombre_destino').value=de;
    if(aero_dest.length==3) $('id_aeropuerto_destino').value=aero_dest;
    if(aero_orig.length==3) $('id_aeropuerto_origen').value=aero_orig;
    include_js('/common/jst/fs.21',true);
    setTimeout("pasajeros2huespedes(adult,ninos,bebes);",500);
}
function distribuirEdadesNinos(n)
{
    var edades=[];
    for(var i=1;i<=n;i++)
        if(parseInt($('edad_ninos_'+i).value,10)>1 && parseInt($('edad_ninos_'+i).value,10)<13)
        {
           edades[edades.length]=parseInt($('edad_ninos_'+i).value,10);
        }
    return edades;
}
function pasajeros2huespedes(a,n,b)
{
    try{
        var doubles=parseInt(a/2);
        var singles=a%2;
        var nin=parseInt(n)+parseInt(b);
        if((doubles*3)>nin)
        {
            ninxdou=parseInt(nin/doubles);
            ninxdou_resto=parseInt(nin%doubles);
        }else{
            ninxdou=parseInt(nin/(doubles+singles));
            ninxdou_resto=parseInt(nin%(doubles+singles));
        }
        $('num_habitaciones').value=(doubles+singles);
        if(singles>0)
        {
            $('num_adultos_'+$('num_habitaciones').value).value=1;
        }
        var contador_ninos=0;
        var edades = distribuirEdadesNinos($('ninos').value);
        for(var i=1;i<=doubles;i++)
        {
            $('num_adultos_'+i).value=2;
            $('num_ninos_'+1)[ninxdou].selected = true;
            for(var y=1;y<=ninxdou;y++)
            {
                edad=edades[contador_ninos] ? edades[contador_ninos]:(b)?1:5;
                edad=parseInt(edad,10)+1;
                $('edad_'+i+'_'+y)[edad].selected = true;
                contador_ninos++;
            }
        }
        if(singles>0)
        {
            $('num_adultos_'+$('num_habitaciones').value).value=1;
            if (contador_ninos != n)
            {
                i = $('num_habitaciones').value;
                if(isNaN(ninxdou) && doubles==0) ninxdou=n;
                $('num_ninos_'+1)[ninxdou].selected = true;
                for(y=1;y<=ninxdou;y++)
                {
                    edad=edades[contador_ninos] ? edades[contador_ninos]:5;
                    edad=parseInt(edad,10)+1;
                    $('edad_'+i+'_'+y)[edad].selected = true;
                    contador_ninos++;
                }
            }
        }
        if(ninxdou_resto==1)
        {
            t=ninxdou+ninxdou_resto;
            $('num_ninos_1').selectedIndex=t;
            $('num_ninos_'+1)[t].selected = true;
            $('edad_1_'+t)[parseInt((edades[contador_ninos])?(edades[contador_ninos]):(b)?1:5,10)+1].selected = true;
        }
        recuperarDatos();
    }catch(e){};
}

function huespedes2pasajeros()
{
    var num_hab=$('num_habitaciones').value;
    var num_max_hab=5;
    var adult=0;
    var ninos=0;
    var bebes=0;
    for(var i=1;i<=num_hab;i++) {
        adult+=parseInt($('num_adultos_'+i).value);
        for(y=1;y<4;y++)
        {
            if($('edad_'+i+'_'+y))
            {
                if($('edad_'+i+'_'+y).value>2) ninos++;
                else
				{
					if ( ($('edad_'+i+'_'+y).value != '') && ($('edad_'+i+'_'+y).value>=0) && ($('edad_'+i+'_'+y).value<=2)) bebes++;
				}
            }
        }
    }
}
function setUpVue()
{
    if(solida){
        $('soloida_2').checked=true;
        $('soloida_1').checked=false;
        if($('regreso1').style.display!='none')
        {
            ida_radio = false;
            soloIda(true);
        }else ida_radio = true;
    }else{
        $('soloida_2').checked=false;
        $('soloida_1').checked=true;
        if($('regreso1').style.display=='none')
        {
            ida_radio = true;
            soloIda(false);
        }else ida_radio = false;
    }
    $('fecha_salida').value=fs;
    $('fecha_regreso').value=fr;
    $('s_hora').value=hs;
    $('r_hora').value=hr;
    $('origen').value=or;
    $('destino').value=de;
    $('adultos').value=adult;
    $('ninos').value=ninos;
    $('bebes').value=bebes;
    setUpCalendar();
}
function loadBuscador(vmh)
{
    if(vmh==1)
    {
       $('tb_vmh').disabled=true;
       $('tb_vue').disabled=false;
       fs=$('fecha_salida').value;
       fr=$('fecha_regreso').value;
       hs=$('s_hora').value;
       hr=$('r_hora').value;
       or=$('origen').value.replace(/\(\S*\)/,'');
       de=$('destino').value.replace(/\(\S*\)/,'');
       aero_orig=$('origen').value.substr($('origen').value.search(/\(\S*\)/,'')+1,3);
       aero_dest=$('destino').value.substr($('destino').value.search(/\(\S*\)/,'')+1,3);
       adult=parseInt($('adultos').value);
       ninos=$('ninos').value;
       bebes=$('bebes').value;
       ninos=parseInt($('ninos').value);
       for(i=1;i<=$('ninos').value;i++)
       {
           if($('edad_ninos_'+i).value>12) { adult++; ninos--; }
       }
       if(adult==0) adult=2;
       solida=$('soloida_2').checked;
       if(or.indexOf(',')>0)
       {
           tmp=or.split(',');
           or=tmp[0];
       }
       if(de.indexOf(',')>0)
       {
           tmp=de.split(',');
           de=tmp[0];
       }
       if(bus_vmh=='')
       {
            pestanaya_activa=0;
            num_max_hab=parseInt(5);
            bus_hot=$('caja_buscadores').innerHTML;
            YAHOO.util.Connect.asyncRequest('GET', '/vuelo+hotel/index.php?pg=buscador',
            {
                success: function(response)
                         {
                             $('caja_buscadores').innerHTML=bus_vmh=response.responseText;
                             $('id_home').value = randomString();
                             YAHOO.util.Event.onAvailable('vmh_trigger', function() {setUpVmh();});
                         }
            });
       }else{
            $('caja_buscadores').innerHTML=bus_vmh;
            $('id_home').value = randomString();
            setTimeout('setUpVmh();',1000);
       }
    }else{
        //include_js("/js_new"+dir_vuelos+"comun.js?v="+cvs_vuelos,true);
    	include_js('/common/jst/fs.35',true);// "/js_new"+dir_vuelos+"home_buscador.js?v="+cvs_vuelos,true);
        $('tb_vmh').disabled=false;
        $('tb_vue').disabled=true;
        fs=$('fecha_entrada').value;
        fr=$('fecha_salida').value;
        hs=$('s_hora').value;
        hr=$('r_hora').value;
        or=$('nombre_origen1').value.replace(/\(\S*\)/,'');
        de=$('nombre_destino1').value.replace(/\(\S*\)/,'');
        huespedes2pasajeros();
        if(bus_hot=='') return
        else $('caja_buscadores').innerHTML=bus_hot;
        $('id_home').value = randomString();
        setTimeout("setUpVue();",500);
    }
}
function pasajeros2huespedesEnVue(a,n,b)
{
    try{
        var errorp2h=false;
        var doubles=parseInt(a/2,10);
        var singles=a%2;
        var nin=parseInt(n,10)+parseInt(b,10);
        var ninxdou=parseInt(nin/doubles,10);
        var ninxdou_resto=parseInt(nin%doubles,10);

        $('num_habitaciones').value=(doubles+singles);
        if(b>0 || n>2 || a==3) errorp2h=true;

        if(errorp2h==false)
        {
            var contador_ninos=0;
            var edades = distribuirEdadesNinos($('ninos').value);
            for(var i=1;i<=doubles;i++)
            {
                $('num_adultos_'+i)[1].selected = true;
                $('num_ninos_'+i)[ninxdou].selected = true;

                for(y=1;y<=ninxdou;y++)
                {
                    edad=edades[contador_ninos] ? edades[contador_ninos]:5;
                    edad=parseInt(edad,10)+1;
                    $('edad_'+i+'_'+y)[edad].selected = true;
                    contador_ninos++;
                }
            }
            if(singles>0)
            {
                $('num_adultos_'+$('num_habitaciones').value).value=1;
                if (contador_ninos != n)
                {
                        i = $('num_habitaciones').value;
                        if(isNaN(ninxdou) && doubles==0 ) ninxdou=n;
                        $('num_ninos_'+i)[ninxdou].selected = true;
                        for(y=1;y<=ninxdou;y++)
                        {
                            edad=edades[contador_ninos] ? edades[contador_ninos]:5;
                            edad=parseInt(edad,10)+1;
                            $('edad_'+i+'_'+y)[edad].selected = true;
                            contador_ninos++;
                        }
                 }
            }
            if(ninxdou_resto==1)
            {
                t=ninxdou+ninxdou_resto;
                $('num_ninos_'+1)[t].selected = true;
                $('edad_1_'+t)[parseInt((edades[contador_ninos])?(edades[contador_ninos]):(b)?1:5,10)+1].selected = true;
            }
        }
        var ocupacion=a+"_"+n+"_"+b;

        if(errorp2h==true)
        {
            switch(ocupacion)
            {
                case '1_0_1':
                    $('num_adultos_1').value=1;
                    $('num_ninos_1').value=1;
                    $('edad_1_1')[(1+1)].selected = true;
                    $('num_habitaciones').value=1;
                    break;
                case '1_1_0':
                    $('num_adultos_1').value=1;
                    $('num_ninos_1').value=1;
                    edad=parseInt($('edad_ninos_1')[$('edad_ninos_1').selectedIndex].value,10)+1;
                    $('edad_1_1')[edad].selected = true;
                    break;
                case '1_1_1':
                    $('num_adultos_1').value=1;
                    $('num_ninos_1').value=2;
                    $('edad_1_1')[(1+1)].selected = true;
                    $('edad_1_1').selectedIndex = 1;
                    edad=parseInt($('edad_ninos_1')[$('edad_ninos_1').selectedIndex].value,10)+1;
                    $('edad_1_2')[edad].selected = true;
                    $('num_habitaciones').value=1;
                    break;
                case '2_0_1':
                    $('num_adultos_1').value=2;
                    $('num_ninos_1').value=1;
                    $('edad_1_1')[(1+1)].selected = true;
                    $('num_habitaciones').value=1;
                    break;
                case '2_1_1':
                    $('num_adultos_1').value=2;
                    $('num_ninos_1').value=2;
                    $('edad_1_1')[(1+1)].selected = true;
                    edad=parseInt($('edad_ninos_1')[$('edad_ninos_1').selectedIndex].value,10)+1;
                    $('edad_1_2')[edad].selected = true;
                    $('num_habitaciones').value=1;
                    break;
                case '2_0_2':
                    $('num_adultos_1').value=2;
                    $('num_ninos_1').value=2;
                    $('edad_1_1')[(1+1)].selected = true;
                    $('edad_1_2')[(1+1)].selected = true;
                    $('num_habitaciones').value=1;
                    break;
                case '4_0_1':
                    $('num_adultos_1').value=2;
                    $('num_ninos_1').value=1;
                    $('edad_1_1')[(1+1)].selected = true;
                    $('num_adultos_2').value=2;
                    $('num_habitaciones').value=2;
                    break;
                case '4_0_2':
                    $('num_adultos_1').value=2;
                    $('num_ninos_1').value=1;
                    $('edad_1_1')[(1+1)].selected = true;
                    $('num_adultos_2').value=2;
                    $('num_ninos_2').value=1;
                    $('edad_2_1')[(1+1)].selected = true;
                    $('num_habitaciones').value=2;
                    break;
                case '4_1_1':
                    $('num_adultos_1').value=2;
                    $('num_adultos_2').value=2;

                    $('edad_1_1').value=1;
                    edad=parseInt($('edad_ninos_1')[$('edad_ninos_1').selectedIndex].value,10)+1;
                    $('edad_1_2')[edad].selected = true;
                    $('num_habitaciones').value=2;
                    break;
                case '4_2_1':
                    $('num_adultos_1').value=2;
                    $('num_adultos_2').value=2;
                    $('num_ninos_1').value=2;
                    $('num_ninos_2').value=1;
                    $('num_habitaciones').value=2;
                    $('edad_1_1')[(1+1)].selected = true;
                    edad=parseInt($('edad_ninos_1')[$('edad_ninos_1').selectedIndex].value,10)+1;
                    $('edad_1_2')[edad].selected = true;
                    edad=parseInt($('edad_ninos_2')[$('edad_ninos_2').selectedIndex].value,10)+1;
                    $('edad_2_1')[edad].selected = true;
                    break;
                case '4_2_2':
                    $('num_adultos_1').value=2;
                    $('num_adultos_2').value=2;
                    $('num_ninos_1').value=2;
                    $('num_ninos_2').value=2;
                    $('num_habitaciones').value=2;
                    $('edad_1_1')[(1+1)].selected = true;
                    $('edad_2_1')[(1+1)].selected = true;
                    edad=parseInt($('edad_ninos_1')[$('edad_ninos_1').selectedIndex].value,10)+1;
                    $('edad_1_2')[edad].selected = true;
                    edad=parseInt($('edad_ninos_2')[$('edad_ninos_2').selectedIndex].value,10)+1;
                    $('edad_2_2')[edad].selected = true;
                    break;
                case '4_3_0':
                    $('num_adultos_1').value=2;
                    $('num_adultos_2').value=2;
                    $('num_ninos_1').value=2;
                    $('num_ninos_2').value=1;
                    edad=parseInt($('edad_ninos_1')[$('edad_ninos_1').selectedIndex].value,10)+1;
                    $('edad_1_1')[edad].selected = true;
                    edad=parseInt($('edad_ninos_2')[$('edad_ninos_2').selectedIndex].value,10)+1;
                    $('edad_1_2')[edad].selected = true;
                    edad=parseInt($('edad_ninos_3')[$('edad_ninos_3').selectedIndex].value,10)+1;
                    $('edad_2_1')[edad].selected = true;
                    $('num_habitaciones').value=2;
                    break;
                case '7_2_2':
                    $('num_adultos_1').value=2;
                    $('num_adultos_2').value=2;
                    $('num_adultos_3').value=2;
                    $('num_adultos_4').value=1;
                    $('num_ninos_1').value=2;
                    $('num_ninos_2').value=2;
                    $('edad_1_1')[(1+1)].selected = true;
                    $('edad_2_1')[(1+1)].selected = true;
                    edad=parseInt($('edad_ninos_1')[$('edad_ninos_1').selectedIndex].value,10)+1;
                    $('edad_1_2')[edad].selected = true;
                    edad=parseInt($('edad_ninos_2')[$('edad_ninos_2').selectedIndex].value,10)+1;
                    $('edad_2_2')[edad].selected = true;
                    $('num_habitaciones').value=4;
                    break;
                default:
                    pasajeros2huespedes(a,n,b);
                    return false;
                    break;
            }
        }
    }catch(e){};
   	return true;
}
//Metodo que genera formulario para vmh
function enviar_form_vmh(home)
{
	try{

    	if ($('fecha_salida').value==$('fecha_regreso').value)
    	{
    		errores.push(new Error('12','999','000',"La fecha de salida no puede ser la misma que la fecha de regreso","setErrorBackColor($('fecha_regreso'));"));
    		errores.show();
    		return false;
    	}else
    	{
    		ninos=parseInt($('ninos').value);
    		adultos=parseInt($('adultos').value);
    		for(i=1;i<=$('ninos').value;i++)
    		{
    			if($('edad_ninos_'+i).value>12) { adultos++; ninos--; }
    		}
    		//de=$('destino').value.replace(/\(\S*\)/,'');
    		de=document.forms.busqueda.destino.value.replace(/\(\S*\)/,'');
    		if(de.indexOf(",")>0) de=de.substr(0,de.search(/,/,''));
    		fs=$('fecha_salida').value;
    		fr=$('fecha_regreso').value;
    		$('nombre_destino1').value=de;
    		$('nombre_destino').value=de;
    		if (($('barco') && $('barco').checked==true) || $('solo_barco')) valid_barco();
    		es_posible = pasajeros2huespedesEnVue(adultos,ninos,$('bebes').value);
    		if (!es_posible)
    		{
    			mostrarFilasHabitaciones($('num_habitaciones').value);
    			if(oPanel_huespedes_dist=='')
    			{
    				oPanel_huespedes_dist = new YAHOO.widget.Panel("huespedes_dist",{ width:"300px",
    				height:"auto", constraintoviewport: true,
    				underlay:"none", close:true, draggable:false,
    				fixedcenter:true, zIndex:1000,iframe:true});
    				oPanel_huespedes_dist.render($('busqueda_vmh'));
    			}else{
    				oPanel_huespedes_dist.show();
    			}
    			//Forzamos a mostrar el panel (display block) por un problema raro
    			//que provoca que en Afferralo no se muestre el panel
    			//Lo mas probable es que los iframes de los banners molesten el
    			//renderizado de este panel, ya que en Atrapalo no hay solapamiento
    			//entre panel y banners y se ve todo correcto a la primera
    			YAHOO.util.Dom.setStyle('huespedes_dist','display','block');
    			return false;
    		}
    		fin_enviar_form_vmh();
    	}
    }catch(ex){}

    return false;
}
function fin_enviar_form_vmh()
{
    try{
        if($('origen').value.search(/\(\S*\)/,'')>0)
        {
            $('id_aeropuerto_origen').value=$('origen').value.substr($('origen').value.search(/\(\S*\)/,'')+1,3);
        }else{
            $('nombre_origen').value=$('origen').value;
        }

        if(document.forms.busqueda.destino.value.search(/\(\S*\)/,'')>0)
        {
            $('id_aeropuerto_destino').value = document.forms.busqueda.destino.value.substr(document.forms.busqueda.destino.value.search(/\(\S*\)/,'')+1,3);
        }else{
            $('nombre_destino').value = document.forms.busqueda.destino.value;
        }

        $('id_origen').value=$('id_aeropuerto_origen').value;
        formulario=$("busqueda_vmh");
        a=document.createElement("input");
        a.name="id_home";
        a.type='hidden';
        a.value=randomString();
        formulario.appendChild(a);
        a=document.createElement("input");
        a.name="fecha_entrada";
        a.type='hidden';
        a.value=fs;
        formulario.appendChild(a);
        a=document.createElement("input");
        a.name="fecha_salida";
        a.type='hidden';
        a.value=fr;
        formulario.appendChild(a);
        a=document.createElement("input");
        a.name="s_hora";
        a.type='hidden';
        a.value=$('s_hora').value;
        formulario.appendChild(a);
        a=document.createElement("input");
        a.name="r_hora";
        a.type='hidden';
        a.value=$('r_hora').value;
        formulario.appendChild(a);
        if($('sin_ciudades_secundarias'))
        {
            a=document.createElement("input");
            a.name="sin_ciudades_secundarias";
            a.type='hidden';
            if ($('sin_ciudades_secundarias').checked) a.value=$('sin_ciudades_secundarias').value;
            formulario.appendChild(a);
            a=document.createElement("input");
            a.name="solo_vue_directos";
            a.type='hidden';
            if ($('solo_vue_directos').checked) a.value=$('solo_vue_directos').value;
            formulario.appendChild(a);
        }
        if ($('renfe'))
        {
        	a=document.createElement("input");
        	a.name="renfe";
        	a.type='hidden';
        	if ($('renfe').checked)
        		a.value=1;
			else
				a.value=0;
			formulario.appendChild(a);
        }
        if ($('barco'))
        {
        	a=document.createElement("input");
        	a.name="barco";
        	a.type='hidden';
        	if ($('barco').checked)
        		a.value=1;
			else
				a.value=0;
			formulario.appendChild(a);
        }
        if ($('solo_barco'))
        {
        	a=document.createElement("input");
        	a.name="solo_barco";
        	a.type='hidden';
        	if ($('solo_barco').checked)
        		a.value=1;
			else
				a.value=0;
			formulario.appendChild(a);
        }
        if ($('vehiculoa') && $('vehiculoa')!='')
        {
        	a=document.createElement("input");
        	a.name='vehiculoa';
        	a.type='hidden';
        	a.value=$('vehiculoa').value;
			formulario.appendChild(a);
			a=$('longitud_vehiculoa').cloneNode(true);
			a.type='hidden';
			formulario.appendChild(a);
        }
        if ($('vehiculob') && $('vehiculob')!='')
        {
        	a=document.createElement("input");
        	a.name='vehiculob';
        	a.type='hidden';
        	a.value=$('vehiculob').value;
			formulario.appendChild(a);
			a=$('longitud_vehiculob').cloneNode(true);
			a.type='hidden';
			formulario.appendChild(a);
        }


        //mostrarSplash();
        formulario.submit();
    }catch(ex){}
}
var valid_form_vmh = function ()
{
    try{
        if(!valid_form()) return false;
        var ninos=parseInt($('ninos').value);
        var bebes=parseInt($('bebes').value);
        var adultos=parseInt($('adultos').value);
        var i = 1;
        while (i<=$('num_habitaciones')[$('num_habitaciones').selectedIndex].value)
        {
            var j = 1;
            var f = i;
            var n = $('num_ninos_'+f);
            if(n[n.selectedIndex])
            {
                while(j<=n[n.selectedIndex].value)
                {
                    if ($('edad_'+f+'_'+j).selectedIndex==0)  errores.push(new Error('12','999','000',"Debe especificar la edad del niño "+j+" de la habitación "+f,"setErrorBackColor($('edad_"+f+"_"+j+"'));"));
                    j++;
                }
            }
            i++;
        }
        if (errores.cuantos()>0)
        {
            errores.show();
            return false;
        }
        var a = 0;
        var n = 0;
        var t_a = 0;
        var t_n = 0;
        for(var i=1;i<=$('ninos').value;i++) { if($('edad_ninos_'+i).value>12) { adultos++; ninos--; } }
        for(i=1;i<=$('num_habitaciones').value;i++)
        {
            a = $('num_adultos_'+i).value;
            n = $('num_ninos_'+i).value;
            t_a += parseInt(a,10);
            t_n += parseInt(n,10);
        }
        if(t_a==adultos && t_n==(ninos+bebes)) fin_enviar_form_vmh();
        else{
            errores.push(new Error('10','0','0','El n&uacute;mero de viajeros y h&uacute;espedes no coincide'));
            errores.show();
        }
        }catch(ex){}
    return false;
}
function mostrarFilasHabitaciones(cantidad)
{
    if(cantidad>1 && $('hab1')) $('hab1').style.display='block';
    else if($('hab1')) $('hab1').style.display='none';
    for(var i=1;i<(num_max_hab+1);i++)
    {
        if (i<=cantidad)
        {
            if($('fila_hab_'+i+'_a'))
            {
                $('fila_hab_'+i+'_a').style.display = (is_ie ? 'block' : 'table-row');
                $('fila_hab_'+i+'_b').style.display = (is_ie ? 'block' : 'table-row');
                $('fila_hab_'+i+'_c').style.display = (is_ie ? 'block' : 'table-row');
                if (!$('num_ninos_'+i)[0].selected)
                {
                    mostrarInputsEdades($('num_ninos_'+i)[$('num_ninos_'+i).selectedIndex].value,i);
                }
            }
        }else{
            $('fila_hab_'+i+'_a').style.display = 'none';
            $('fila_hab_'+i+'_b').style.display = 'none';
            $('fila_hab_'+i+'_c').style.display = 'none';
            $('label_edad_'+i).style.display    = 'none';
        }
    }
}
function actualizaNinos(fila)
{
    var lim = 0;
    var i=0;
    var a = $('num_adultos_'+fila);
    var n = $('num_ninos_'+fila);
    var nAd = parseInt(a[a.selectedIndex].value);
    var nNi = parseInt(n[n.selectedIndex].value);
    n.options.length = 0;
    lim = (nAd > 0) ? nAd + 1 : nAd;
    if(nAd<4) lim++;
    while ((i<lim) && ((nAd+i) <= 6))
    {
        n.options[i] = new Option(i,i);
        if (i == (nNi-0)) n.options[i].selected = true;
        i++;
    }
}
function actualizaAdultos(fila)
{
    var a = $('num_adultos_'+fila);
    var n = $('num_ninos_'+fila);
    nNi = parseInt(n[n.selectedIndex].value);
    nAd = parseInt(a[a.selectedIndex].value);
    if (nNi > 3)
    {
        errores.push(new Error('12','999','001'));
        errores.show();
        n.selectedIndex = 0;
        return false;
    }else{
        a.options.length=0;
        if (nNi == 0) i = 1;
        else i = nNi - 1;
        j=0;
        while ((i+nNi) <= 6)
        {
            a.options[j] = new Option(i,i);
            if (i == nAd) a.options[j].selected = true;
            j++; i++;
        }
    }
}

function mostrarInputsEdades(cant,enFila)
{
    for(var i=1;i<=3;i++)
    {
         $('edad_'+enFila+'_'+i).style.display = (cant>=i ? '' : 'none');
    }
    if($('div_edades_'+enFila)) $('div_edades_'+enFila).style.display = (cant>0) ? '' : 'none';
    if($('label_edad_'+enFila)) $('label_edad_'+enFila).style.display = (cant>0)?(!is_ie)? 'table-row' : 'block' : 'none';
}

function mostrarSplash()
{

	// Asinamos los valores a la pagina de espera. VUE
	if ($('sp_origen') && $('origen'))
		$('sp_origen').innerHTML = $('origen').value;
	if ($('sp_destino') && $('destino'))
	{
		$('sp_destino').innerHTML = $('destino').value;
	    $('sp_destino2').innerHTML = $('destino').value;
	}
	if ($('sp_salida') && $('fecha_salida'))
		$('sp_salida').innerHTML = $('fecha_salida').value;
	if ($('sp_llegada') && $('fecha_regreso'))
		$('sp_llegada').innerHTML = $('fecha_regreso').value;
	if ($('sp_adultos') && $('adultos'))
		$('sp_adultos').innerHTML = $('adultos').value;
	if ($('sp_ninos') && $('ninos'))
		$('sp_ninos').innerHTML = $('ninos').value;
	if ($('sp_bebes') && $('bebes'))
		$('sp_bebes').innerHTML = $('bebes').value;


    mostrar_splash();
}

