﻿var settings = 
{
    //ID DOS NÚMEROS DAS NOTÍCIAS
    IdPaginacao: "",
    //ID DO BOTÃO ANTERIOR
    BtnAnterior: "",
    //ID DO BOTÃO PRÓXOIMO
    BtnProximo: "",
    //ID DA LEGENDA DO DESTAQUE
    IdLegenda: "",
    //ID DAS FOTOS DE DESTAQUE
    idFotosDestaques: "banners",
    //NOME DA CLASSE QUE VAI MARCAR O NÚMERO
    ClasseMarcado: "",
    //TEMPO DE TROCA DAS NOTÍCIAS
    Tempo: 5000
}

//DECLARAÇÃO DE VARIÁVEIS GLOBAIS PARA USO NAS FUNÇÕES DE TROCA DE NOTÍCIAS
var IndiceNoticiaAtual, IndiceNoticiaAnterior, interval, lenNoticias = null;

//FUNCÃO PRINCIPAL QUE É CHAMADA NA HOME, PARA ALTERNAR AS NOTÍCIAS
function trocarNoticias() 
{
	lenNoticias = ($("#" + settings.idFotosDestaques).find("img").length - 1);
    IndiceNoticiaAtual = 0;
	mostrarNoticia();
    initInterval();
}

//FUNÇÃO PARA ESCONDER A NOTÍCIA QUE ESTÁ SENDO MOSTRADA ATUALMENTE
function esconderNoticia() 
{
    //ESCONDO A FOTO DA NOTÍCIA ATUAL
    $("#" + settings.idFotosDestaques + " img:eq(" + IndiceNoticiaAnterior + ")").hide();
}

//FUNÇÃO PARA MOSTRAR A NOTICIA SELECIONADA PELO USUÁRIO
function mostrarNoticia()
{
    //MOSTRO A IMAGEM DA NOTÍCIA SELECIONADA PELO USUÁRIO
    $("#" + settings.idFotosDestaques + " img:eq(" + IndiceNoticiaAtual + ")").show();

    //ATRIBUO MINHA NOTICIA ATUAL, COMO SE JÁ FOSSE A ANTERIOR
    IndiceNoticiaAnterior = IndiceNoticiaAtual;
}

//FUNÇÃO PARA INICIAR O INTERVALO DE TROCA DE NOTICIAS
function initInterval() 
{
    //ATRIBUO MEU INTERVALO A UMA VARIÁVEL, PARA PODER LIMPAR O INTERVALO
    interval = setInterval(function() 
        {
            //VERIFICO SE JÁ ESTA NO ÚLTIMO INDICE
            if (IndiceNoticiaAnterior > (lenNoticias - 1)) 
            {
                //SE ESTIVER NA ÚLTIMA NOTÍCIA, ATRIBUO O MEU ÚLTIMO INDICE[4]
                IndiceNoticiaAnterior = lenNoticias;

                //E ESCONDO A NOTÍCIA
                esconderNoticia();

                //E MINHA NOTÍCIA ATUAL, FICA COMO SENDO A PRIMEIRA
                IndiceNoticiaAtual = 0;

                //MOSTRO A PRIMEIRA
                mostrarNoticia();

                //SAIO DO INTERVALO
                return;
            }
            //ELSE

            //MINHA NOTÍCIA QUE ESTÁ SENDO MOSTRADA, VIRA A NOTÍCIA ANTERIOR
            IndiceNoticiaAnterior = IndiceNoticiaAtual;

            //ESCONDO A NOTÍCIA ANTERIOR
            esconderNoticia();

            //ATRIBUO +1 NO INDICE ATUAL, PARA VIRAR O PRÓXIMO
            IndiceNoticiaAtual++;

            //MOSTRO A NOTÍCIA
            mostrarNoticia();

            //DEFINO O INTERVALO    
        }, settings.Tempo);
}

//FUNÇÃO PARA LIMPAR O INTERVALO
function limparInterval()
{
    //LIMPO O INTERVAL
    clearInterval(interval);
}

