var SLIDESHOW = {

    carregando_width: 190,
    imagem_qual: 1,
    interval: 8000,
    interval_texto: 500,
    interval_nova: 1000,
    interval_principal: 1000,
    interval_timeout: 0,
    slide_height: 320,
    slide_width: 600,

    imagem: function (ID){

        clearTimeout (this.interval_timeout);

        if (ID > this.imagens_total){

            ID = 1;
            var direcao = 'down';

        }else{

            if (ID < this.imagem_qual){
            var direcao = 'up';
            }else{
            var direcao = 'down';
            }

        }

        var imagem_div = document.createElement('div');
        imagem_div.setAttribute ('id', 'imagem_' +ID);
        imagem_div.className = 'slide_cada';
        imagem_div.style.background = 'url(' + this.url_raiz + this.imagens[ID] + ') top center no-repeat';

        switch (direcao){

            case 'down':

                var nova_top = - SLIDESHOW.slide_height;
                var anterior_top = SLIDESHOW.slide_height;

            break;

            case 'up':

                var nova_top = SLIDESHOW.slide_height;
                var anterior_top = - SLIDESHOW.slide_height;

            break;

        }

        $('slideshow_load_2').style.visibility = 'visible';

        imagem_div.style.top = nova_top + 'px';

        $('slideshow_hold').appendChild (imagem_div);
        $('imagem_' + ID).set('tween', {duration: this.interval_nova});
        $('imagem_' + ID).tween ('top', [nova_top, 0]);

        this.texto_set (ID);
        this.links_set (ID);

        var some_principal = new Fx.Tween($('imagem_' + SLIDESHOW.imagem_qual), {

            duration: this.interval_principal,
            property: 'top',
            onComplete: function (){

                $('slideshow_hold').removeChild ($('imagem_' + SLIDESHOW.imagem_qual));

                SLIDESHOW.imagem_qual = ID;
                var next = ID + 1;
                SLIDESHOW.interval_timeout = setTimeout ('SLIDESHOW.imagem(' + next + ')', SLIDESHOW.interval);

                $('slideshow_load_2').style.visibility = 'hidden';

            }

        });

        some_principal.start (0, anterior_top);

    },

    imagem_carrega: function (ID){

        $('carregando_barra').style.width = ((this.carregando_width / this.imagens_total) * ID) + 'px';
        $('imagem_qual').innerHTML = ID + ' ';

        var imagem = new Image ();

        imagem.onload = function (){

            if (ID < SLIDESHOW.imagens_total){

                if (ID == 1){
                SLIDESHOW.imagem_carrega_primeira ();
                }

                ID++;
                SLIDESHOW.imagem_carrega (ID);

            }else{
            SLIDESHOW.inicia ();
            }

        }

        imagem.src = this.url_raiz + this.imagens[ID];

    },

    imagem_carrega_primeira: function (){

        var imagem_div = document.createElement('div');
        imagem_div.setAttribute ('id', 'imagem_1');
        imagem_div.className = 'slide_cada';
        imagem_div.style.background = 'url(' + this.url_raiz + this.imagens[1] + ') top center no-repeat';
        $('slideshow_hold').appendChild(imagem_div);
        this.texto (1);
        this.links_set (1);

    },

    inicia: function (){

        $('carregando').fade ('out');
        this.interval_timeout = setTimeout ('SLIDESHOW.imagem(2)', this.interval);

    },

    links_set: function (ID){

        $('imagem_' +ID).addEvents({

            'click': function (){
            window.location = SLIDESHOW.urls[ID];
            }

        });

    },

    start: function (){

        $('imagens_total').innerHTML = this.imagens_total;
        this.imagem_carrega (1);

    },

    texto: function (ID){

        var data = this.datas[ID].split('|');

        $('slideshow_roda').innerHTML = '<div class="slideshow_data"><p class="semana">' +data[0]+ '</p><p class="dia">' +data[1]+ '</p></div> \
                                         <div class="slideshow_div"><!-- --></div> \
                                         <p class="slideshow_local">' +this.lugares[ID]+ '</p> \
                                         <p class="slideshow_titulo"><a href="' +this.urls[ID]+ '">' +this.titulos[ID]+ '</a></p> \
                                         <p class="slideshow_dados">' +this.total_imagens[ID]+ ' fotos<span>|</span>' +this.total_visitas[ID]+ ' visitas<span>|</span>' +this.total_comentarios[ID]+ ' comentários</p>';

        $('slideshow_roda').addEvents({

            'click': function (){
            window.location = SLIDESHOW.urls[ID];
            }

        });

    },

    texto_set: function (ID){

        $('slideshow_roda').set('tween', {duration: this.interval_texto});

        var some_texto = new Fx.Tween ($('slideshow_roda'), {

            property: 'top',
            onComplete: function (){

                SLIDESHOW.texto (ID);
                $('slideshow_roda').tween ('top', [-80, 0]);

            }

        });

        some_texto.start (0, 80);

    },

    imagem_switch: function (qual){

        switch (qual){

            case 'prox':
            var muda = this.imagem_qual + 1;
            break;

            case 'ant':
            var muda = this.imagem_qual - 1;
            break;

        }

        this.imagem (muda);

    }

};

