 /** 
 * Função: executaCarrosel(object nomeContainer, int vel, int tempo, int visiveis)
 * @author - Gustavo Sá <gustavo.sa@webadvisor.com.br>
 * @param nomeContainer - Um elemento do DOM, div container que receberá a lista de imagens do carrosel 
 * @param vel - Velocidade do efeito de transição entre as imagens. Defina 0 para anular o efeito.
 * @param tempo - Tempo de espera entre a mudança de uma imagem para outra.
 * @param visiveis - Numero de imagens visiveis ao mesmo tempo no carrosel
 * Tudo referente a tempo é em milisegundos - Ex: 1000ms = 1seg / Essa funçao se utiliza do jCarouselLite para funcionar
 */
			function executaCarrosel(nomeContainer, vel, tempo, visiveis){
				/** Configuração do carrosel **/
				var velocidadeSlide = vel;
				var tempoEspera = tempo;
				var numImgsVisiveis = visiveis;
				
				$(nomeContainer).jCarouselLite({
					circular: true,
					visible: numImgsVisiveis,
					auto: tempoEspera,
					pause: true,
					speed: velocidadeSlide,
					beforeStart: function(a) {
						/** Captura caixa que possui a classe selecionado **/
						var caixa = $('.conjuntoBox .texto[class *= "selecionado"]');
						// Filtros de algumas posições
	
						/** Desce a caixa com classe selecionado **/
						animaBox(caixa,0);
						caixa.removeClass('selecionado');
						
						/** Efeito de fade 
						* Comentado pois provoca conflito na diferenciação do fade nativo jQuery
						* e da solução encontrado pelo jCarouselLite
						* $(a).parent().fadeTo(500, 0); 
						var bg = $(a).find('img').attr('src');
						$(nomeContainer).css({
							backgroundImage: "url("+bg+")"
						}, 500);*/
					},
					afterEnd: function(a) {
						/** Define posicionamentos das caixas enquanto o carrosel roda **/
						var caixa = $('.conjuntoBox .box');
						var iBox = a.index() - 1;
						
						// Filtros de algumas posições
						if(iBox == -1) iBox = 3; if(iBox == 4) iBox = 0;
						
						/** Desce a anterior **/
						animaBox(caixa.eq(iBox).find('.texto'),0);
						caixa.eq(iBox).find('.texto').removeClass('selecionado');
						
						/** Efeito de fade
						* Comentado pois provoca conflito na diferenciação do fade nativo jQuery
						* e da solução encontrado pelo jCarouselLite
						$(a).parent().fadeTo(500, 1);*/
						
						/** Sobe a atual **/
						animaBox(caixa.eq(iBox).find('.texto'),1);
						caixa.eq(iBox).find('.texto').addClass('selecionado');
						
						
					}	
				});
				
				/** Função que atribui aos box informativos a tarefa de simular um gatilho de ação no box do carrosel **/
				$('.conjuntoBox .box').bind({
					mouseover: function(){
						$(nomeContainer).trigger('mouseover');
					},
					click: function(){
						$(nomeContainer).trigger('mouseover');
					},
					mouseout: function(){
						$(nomeContainer).trigger('mouseout');
					}
				});
			}


/** 
 * Função: animaBox(object el, int direcao)
 * @author - Gustavo Sá <gustavo.sa@webadvisor.com.br>
 * @param el - Um elemento do DOM
 * @param direcao - (1) para animar pra cima, (0) para animar pra baixo
 */
var animacaoEmAndamento = false;
function animaBox(el, direcao) {
    if (!animacaoEmAndamento) {
        //Anima click - Inicio
        if (direcao == 1) {
            animacaoEmAndamento = true;
            el.queue(function () {
                el.find('h6').css('color', '#d92534');
                el.find('.barra div').fadeTo(500, 0);
                el.dequeue();
            }).animate({
                top: '-10px'
            }, 400);

            if ($('.boxExibicao img:hidden').length > 1) {
                var indice = el.parent().index();
                $('.boxExibicao img').hide();
                $('.boxExibicao img').eq(indice).fadeIn(500, function () {
                    $('.boxExibicao img').eq(indice).css('display', 'block');
                });
            }
            animacaoEmAndamento = false;
        }
        //Anima click - Fim
        //Anima pra baixo - Inicio
        if (direcao == 0) {
            animacaoEmAndamento = true;
            el.queue(function () {
                el.find('h6').css('color', '');
                el.find('.barra div').fadeTo(500, 1);
                el.dequeue();
            }).animate({
                top: '0'
            }, 400);
            animacaoEmAndamento = false;
        }
        //Anima pra baixo - Fim
        //Mouse over - Inicio
        if (direcao == 2) {
            animacaoEmAndamento = true;
            el.find('.barra div').css('opacity', 0)
            el.find('h6').css('color', '#d92534');
            animacaoEmAndamento = false;
        }
        //Mouse over - Fim
        //Mouse out - Inicio
        if (direcao == 3) {
            animacaoEmAndamento = true;
            el.find('.barra div').css('opacity', 1);
            el.find('h6').css('color', '');
            animacaoEmAndamento = false;
        }
        //Mouse out - Fim
    }
} /** Função animaBox - FIM **/

/** 
 * Função: ponteiroBoxHome()
 * @void - Realiza controle do componente de banners da pagina principal
 */
function ponteiroBoxHome() {
	
	/** Associa box selecionada a objeto animbaBox **/
    var boxInicial = $('.conjuntoBox .texto[class *= "selecionado"]');
    animaBox(boxInicial, 1);

	/** Eventos de box com o mouse **/
    $('.conjuntoBox .box .texto').bind({
        //Click
        click: function () {
			
		
            var anterior = $('.conjuntoBox .texto[class *= "selecionado"]');
            var posicaoAnterior = $('.conjuntoBox .texto[class *= "selecionado"]').parent().index();
            var posicaoThis = $(this).parent().index();
            var boxOver = $(this);
		
		/** Bloco que reposiciona a listagem de imagens do carrosel - INICIO **/
			posicaoNova = ((posicaoThis+1) * -941) + 'px';
			$('.boxExibicao ul').animate({
				left: posicaoNova
			}, 400);
			
		/** Bloco que reposiciona a listagem de imagens do carrosel - FIM **/	
		
		/** Bloco para resolver problemas de animação - INICIO **/	
            if (posicaoThis != posicaoAnterior) {
                animaBox(anterior, 0);
                anterior.removeClass('selecionado');
                boxOver.addClass('selecionado');
                animaBox(boxOver, 1);
            }
		/** Bloco para resolver problemas de animação - FIM **/	
        },
        //Mouse Out
        mouseout: function () {
            var boxOut = $(this);
            if ($(this).attr('class') != 'texto selecionado') animaBox(boxOut, 3);
        },
        //Mouse Over
        mouseover: function () {
            var boxOut = $(this);
            animaBox(boxOut, 2);
        }
    });

} /** Função ponteiroBoxHomee - FIM **/

/** 
 * Função: aumentaDiminuiFonte()
 * @void - Realiza controle do tamanho das fontes
 * @param padrao - Define o  tamanho padrao da fonte do site
 * @param elAumentar - Elemento da pagina que aumentara as fotnes
 * @param elDiminuir - Elemento da pagina que diminuirá as fotnes
 */
function aumentaDiminuiFonte(padrao, elAumentar, elDiminuir){

	var fonte = padrao; 
	$(elAumentar).click(function(){   
		if (fonte<20){   
			fonte = fonte+1;   
			$("body *").css({"font-size" : fonte+"px"});   
		}else{
			$("body *").css({"font-size" : ""});
			fonte = fonte;
		} 
	});
	$(elDiminuir).click(function(){   
		if (fonte>8){   
			fonte = fonte-1;  
			$("body *").css({"font-size" : fonte+"px"});   
		}else{
			$("body *").css({"font-size" : ""});
			fonte = fonte;
		}   
	});
}
