var Galerias = Array();
var intializa = false;
var tamanoContenedor = 0;

var AuxTipo3 = Array();

function inciarGalerias() {
    if (!intializa) {
        tamanoContenedor = document.getElementById("contenedorGaleria").offsetWidth;
        setInterval(selectorDeModo, tiempo);
        //setTimeout(selectorDeModo, 1);
        //setTimeout(selectorDeModo, 100);
    }
}

function addGaleria(idGaleria, tipo) {
    Galerias[Galerias.length] = idGaleria;
    Galerias[Galerias.length] = tipo;
}


function selectorDeModo() {
    var aux;
    for (aux = 1; aux < Galerias.length; aux = aux + 2) {
        switch (Galerias[aux]) {
            case 1:
                {
                    AnimacionTipo1(Galerias[aux - 1]);
                    break;
                }
            case 2:
                {
                    AnimacionTipo2(Galerias[aux - 1]);
                    break;
                }
            default :
                {
                    AnimacionTipo3(Galerias[aux - 1]);
                    break;
                }
        }
    }
}

function AnimacionTipo1(idContenedor) {
    var tamMax = 0;
    tamMax = parseInt(document.getElementById(idContenedor).style.width) - (parseInt(document.getElementById(idContenedor).style.width) * 2);
    if (parseInt(document.getElementById(idContenedor).style.left) <= tamMax)//Comprobamos que no halla legado al final
        document.getElementById(idContenedor).style.left = tamanoContenedor+"px";
    document.getElementById(idContenedor).style.left = (parseInt(document.getElementById(idContenedor).style.left) - 1) + "px";

}

function AnimacionTipo2(idContenedor) {
    var tamMax = 0;
    tamMax = parseInt(document.getElementById(idContenedor).style.width);  //- (parseInt(document.getElementById(idContenedor).style.width) * 2);
    if (parseInt(document.getElementById(idContenedor).style.left) >= tamanoContenedor)//Comprobamos que no halla legado al final
        document.getElementById(idContenedor).style.left = "-"+tamMax+"px";
    document.getElementById(idContenedor).style.left = (parseInt(document.getElementById(idContenedor).style.left) + 1) + "px";

}

function AnimacionTipo3(idContenedor) {
    var imagenes = idContenedor.split("|")[1];
    var idContenedores = idContenedor.split("|")[0];

    var aux = 0;
    var encontrado = -1;
    //Estructura del array auxiliar IdContenedor|nImagen|S,B (subiendo o bajando)

    for (aux = 0; aux < AuxTipo3.length && encontrado == -1; aux++) {
        if (AuxTipo3[aux].split("|")[0] == idContenedores)
            encontrado = aux;
    }
    //Si no estaba ya procesado lo incluyo
    if (encontrado == -1) {
        encontrado = AuxTipo3.length;
        AuxTipo3[AuxTipo3.length] = "" + idContenedores + "|0|B|99";
        
    }
    //Obtenemos los parametros
    var imagenEnProceso = AuxTipo3[encontrado].split("|")[1];
    var modo = AuxTipo3[encontrado].split("|")[2];
    var valor = AuxTipo3[encontrado].split("|")[3];

    /*******
    Tenemos el idContenedores que es el ID General
    imagenes es la cantidad de imagenes que hay (cuidado con que la primera es el 0)
    imagenEnProceso es la ultima modifica
    modo si esta subiendo o bajando la opacidad
    valor indica el ultimo valor (0 < valor < 101)
    ***********/



    switch (modo) {
        case "S":
            {
                if (valor <= 200) {
                    if (valor == 0) {
                        document.getElementById(idContenedores + "|" + imagenEnProceso).style.display = "";
                    }
                    if (document.all) //IE
                    {
                        document.getElementById(idContenedores + "|" + imagenEnProceso).style.filter = 'alpha(opacity=' + (++valor) + ')';

                    }
                    else {
                        document.getElementById(idContenedores + "|" + imagenEnProceso).style.opacity = "" + ((++valor) / 100);
                    }
                }
                else {
                    modo = "B";
                }
                break;
            }
        case "B":
            {
                if (valor >= 0) {

                    if (document.all) //IE
                    {
                        document.getElementById(idContenedores + "|" + imagenEnProceso).style.filter = 'alpha(opacity=' + (--valor) + ')';

                    }
                    else {
                        document.getElementById(idContenedores + "|" + imagenEnProceso).style.opacity =  "" + ((--valor) / 100);;
                    }
                }
                else {
                    document.getElementById(idContenedores + "|" + imagenEnProceso).style.display = "none";
                    modo = "S";
                    if (imagenEnProceso == imagenes - 1) {
                        imagenEnProceso = 0;
                    }
                    else
                        imagenEnProceso++;
                }
                break;
            }
        default:
            {
                break;
            }
    }
    AuxTipo3[encontrado] = "" + idContenedores + "|" + imagenEnProceso + "|" + modo + "|" + valor;
}


