﻿// JScript File

//Funcion que controla la eleccion máxima de los pasajeros
function NumPasajeros(elem, NmaxPasajeros)
{
    var i;
    var SelAdultos;
    var lstPrincipal, lstSecundario;
    var lstnumInfant=document.getElementById('ctl00_MainContentPlaceHolder_UC_Buscador1_lstNumInf');            
    
    var NUsuInfant = lstnumInfant.value;        
    
    if (elem.id == 'ctl00_MainContentPlaceHolder_UC_Buscador1_lstNumAdultos')
    {
        lstPrincipal=elem;    
        lstSecundario=document.getElementById("ctl00_MainContentPlaceHolder_UC_Buscador1_lstNumChd");        
        SelAdultos = true;
    }
    else
    {
        lstSecundario=document.getElementById('ctl00_MainContentPlaceHolder_UC_Buscador1_lstNumAdultos');    
        lstPrincipal=elem;
        SelAdultos = false;            
    }
            
    var NUsuPrincipal = lstPrincipal.value;        
    var NRestantes = NmaxPasajeros - NUsuPrincipal;            
    var NTotalSecundario = parseInt(lstSecundario.length) - 1;
    
    if (NRestantes <= NTotalSecundario)
    {
        if (!SelAdultos)
        {
            NmaxPasajeros--;
            NRestantes--;
        }
    
        var NUsuSecundario = lstSecundario.value;
        
        do
        {
            lstSecundario.remove(NmaxPasajeros);

            if ((!SelAdultos) && NUsuInfant > 0)
            {
                lstnumInfant.remove((NmaxPasajeros + 1));
            }

            NmaxPasajeros--;
        }
        while(NmaxPasajeros > NRestantes);            
        
        if (NUsuSecundario > NmaxPasajeros)
        {
            lstSecundario.selectedIndex = NmaxPasajeros;
        }

        if (!SelAdultos)
        {
            if (NUsuInfant > lstSecundario.value)
            {
                lstnumInfant.selectedIndex = lstSecundario.value;
                
                GuardarNumInfants(lstnumInfant);                    
            }                
        }
    }
    else
    {
        var StartInsert = lstSecundario.options.length;
        
        if (!SelAdultos)
        {
            StartInsert++;
        }

        for(i=StartInsert;i<=NRestantes;i++)
        {
            var newOption= new Option (i,i);
            var insertAt = lstSecundario.options.length;

            lstSecundario.options.length=lstSecundario.options.length + 1;
            lstSecundario.options[insertAt] = newOption;
        }            
    }
    
    if (SelAdultos)
    {
        var NTotalInfant = parseInt(lstnumInfant.length);
        var NInfantAñadir = NUsuPrincipal - (NTotalInfant - 1);
        
        if (NInfantAñadir >= 0)
        {
            for(i=lstnumInfant.length;i<=NUsuPrincipal;i++)
            {
                var newOption= new Option (i,i);
                var insertAt = lstnumInfant.options.length;

                lstnumInfant.options.length=lstnumInfant.options.length + 1;
                lstnumInfant.options[insertAt] = newOption;
            }                                
        }
        else
        {
            NInfantAñadir = -NInfantAñadir;
            
            for (i=0; i<=NInfantAñadir; i++)
            {
                lstnumInfant.remove(NTotalInfant - i);
            }
            
            if (NUsuInfant > NUsuPrincipal)
            {
                lstnumInfant.selectedIndex = NUsuPrincipal;
                
                GuardarNumInfants(lstnumInfant);
            }
        }
    }
}

function GuardarNumInfants(elem)
{
    lstnumInfant=elem;
    NumInfSel=document.getElementById("ctl00_MainContentPlaceHolder_UC_Buscador1_NumInfOculto");
    
    NumInfSel.value=lstnumInfant.options[lstnumInfant.selectedIndex].value;
}

function abrirVentana(url,alto,ancho)
{
    var urlaux = ObtDireccion(url);
    var winprops = 'height='+alto+',width='+ancho+',resizable=no,toolbar=no,directories=no,menubar=no,status=no,noresize,scrollbars=yes,';
    var ventana = window.open(urlaux,"ventana",winprops);
}

function AbrirVentana(direccion,elemento1,nombre,opciones)
{
    var obj=null;
    var dia="ctl00_MainContentPlaceHolder_"+elemento1;
    
    if (document.getElementById)
    {
        obj=document.getElementById(dia);
    }
    else
    {
        if (document.all)
        {
            obj=document.all[dia];
        }
        else
        {
            obj=eval(dia);	        
        }
    }
    //Si la venrtana es del control de busqueda
    if(obj==null)
       {
        dia="ctl00_MainContentPlaceHolder_UC_Buscador1_"+elemento1;
        obj=document.getElementById(dia);
    }
    //
    if (obj!=null)
    {
        var mostrar_popup=(navigator.userAgent.indexOf("MSIE")>=0);
        if (mostrar_popup)
        {
            var v=window.showModalDialog(direccion,elemento1,opciones);
            return v;
        }
        else
        {
            window.open(direccion+"?elemento="+elemento1,nombre,opciones)
            return "";
        }
    }
}

//Muestra errores si falta algún parámetro de búsqueda
function mostrarErroresBuscador(event)
{   
    var lstOrigen=document.getElementById('ctl00_MainContentPlaceHolder_UC_Buscador1_UC_OriDest1_lstOrigen');
    var lstDestino=document.getElementById('ctl00_MainContentPlaceHolder_UC_Buscador1_UC_OriDest1_lstDestino');

    if(lstOrigen.value=="Origen")
    {
        BuscarErrorCache(event,"82000001");//El campo de Origen no puede estar vacío.
        return false;
    }
    else if(lstDestino.value=="Destino")
    {
        BuscarErrorCache(event,"82000002");//El campo de Destino no puede estar vacío.
        return false;
    }

    var lstnumInfant = document.getElementById('ctl00_MainContentPlaceHolder_UC_Buscador1_lstNumInf');
    
    GuardarNumInfants(lstnumInfant);
    
    Procesado = document.getElementById("ctl00_MainContentPlaceHolder_UC_Buscador1_Procesado");
    Procesado.value = "S";
    
    return true;
}