/* ---------------------------------------------------
	Recurso para controlar o tamanho do texto      
--------------------------------------------------- */

function validarLogin(formulario)
{	
	var emailPattern = /^[a-z0-9._-]+@([a-z0-9]+[a-z0-9_-]*)+(\.[a-z0-9]+)+$/;
	var senhaPattern = /^(.){1,20}$/;
	
	if (!emailPattern.test(formulario["login"].value.split(' ').join(''))) {
		
		alert("Por favor, preencha o campo e-mail.");
		formulario["login"].focus();
		formulario["login"].select();
		
		return false;
		
	} else {
		formulario["login"].value = formulario["login"].value.split(' ').join(''); 
	}
	
	if (!senhaPattern.test(formulario["senha"].value.split(' ').join('')) || formulario["senha"].value.split(' ').join('').length < 1) {
		
		alert("Por favor, preencha o campo senha.");
		formulario["senha"].focus();
		formulario["senha"].select();		
		
		return false;
	}	
	
	return true;
}

/* ---------------------------------------------------
	Recurso para controlar o tamanho do texto      
--------------------------------------------------- */

// tipo de evento que dispara a função para alterar o tamanho da fonte
var tamanhoDaLetra_EVENTTYPE = "click"; // mouseover

// comportamento dos seletores do tamanho de fonte do texto do portal
behavior_tamanhoDaLetra = function(e)
{	
	// objeto que contém informações sobre o evento que executou a função    
	var evento = (typeof(e) == 'undefined') ? window.event : e;
	
	// elemento que disparou o evento 
	var autor_do_disparo = evento.target ? evento.target : evento.srcElement;
	
	// elemento pai do elemento que disparou o evento 
	autor_do_disparo = autor_do_disparo.parentNode;

	/**
	  * Alterado por Thiago Silveira - 14-02-2007
	  * Motivo: Foi solicitado que ao "carregar" a home do site o botão de texto menor não apareça,
	  *         entretando quando clica-se no botão de "A+" o botão de A- aparece
	  */
	
	if ( autor_do_disparo.id == 'letramenor' ){
		document.getElementById("letramenor").style.display = 'none';
		document.getElementById("letramaior").style.display = 'inline';
	}else{
		document.getElementById("letramaior").style.display = 'none';
		document.getElementById("letramenor").style.display = 'inline';
	}	

	/**
	  *	FIM da Alteração
	  */
	
	
	// altera a posição do background de todos os links 
	document.getElementById("letramenor").style.backgroundPosition = "left center";
	document.getElementById("letramaior").style.backgroundPosition = "left center";
	
	// altera a posição do background do link ativo
	autor_do_disparo.style.backgroundPosition = "right center";	

	// elemento "<link .../>" responsável por carregar o css que será manipulado para alterar o tamanho do texto
	var cssTexto = document.getElementById("css-texto");
	
	// string contida no atributo "href" do elemento capturado no procedimento anterior transformada em um array
	var cssTextoHrefParts = cssTexto.attributes["href"].value.split("/");
	
	// remoção do último valor do array que é o nome do arquivo css, ex: ensp_texto-pequeno.css  
	cssTextoHrefParts.splice(cssTextoHrefParts.length-1,1); 
	
	// reverção do array para string acrescentando o nome do novo arquivo css (correspondente a nova fonte selecionada) 
	var tamanhoDoTexto = (autor_do_disparo.id == "letramenor") ? "texto-medio" : "texto-grande";
	var cssTextoValue = cssTextoHrefParts.join("/") + "/ensp_" + tamanhoDoTexto + ".css";	
	
	// troca a folha de estilo
	cssTexto.attributes["href"].value = cssTextoValue;	
	
	// cookie com o tamanho do texto aplicado	
	var partes = tamanhoDoTexto.split("-");	
	var data = new Date();	
	data.setYear(data.getFullYear() + 1);
	document.cookie = "ensp_texto=" + partes[1] + "; expires=" + data.toGMTString() +"; path=/"; 	
	
}

/**
 * Função que pega o cookie pelo nome
 * autor: Leandro Vieira Pinho
 * site: http://leandrovieira.com
 */
function getCookie(strName) 
{

	var strNameIgual = strName + "=";
	var arrCookies = document.cookie.split(";");
	
	for ( var i = 0, strCookie; strCookie = arrCookies[i]; i++ ) {
		while ( strCookie.charAt(0) == " ") {
			strCookie = strCookie.substring(1,strCookie.length);
		}
		if ( strCookie.indexOf(strNameIgual) == 0 ) {
			return strCookie.substring(strNameIgual.length,strCookie.length);
		}
	}
	
	return null;
}

init_tamanhoDaLetra = function()
{
	// referência para o link que usuário clica para escolher o texto médio 
	var letramenor = document.getElementById("letramenor");
	// referência para o link que usuário clica para escolher o texto grande 
	var letramaior = document.getElementById("letramaior");	
	
	/**
	  * Alterado por Thiago Silveira - 14-02-2007
	  * Motivo: Foi solicitado que ao "carregar" a home do site o botão de texto menor não apareça,
	  *         entretando quando clica-se no botão de "A+" o botão de A- aparece
	  */
	
	// Chamando a função getCookie com o objetivo de saber o valor do cookie e sumir com o botão respectivo
	if ( getCookie('ensp_texto') == 'medio' ){
		letramaior.style.display = 'inline';
		letramenor.style.display = 'none';
	}else{
		letramaior.style.display = 'none';
		letramenor.style.display = 'inline';	
	}
	
	/**
	  *	FIM da Alteração
	  */
	
	// sobrescreve o valor do href original de cada link
	// se o dispositivo do usuário não suportar javascript, a url original não será sobrescrita
	letramenor.attributes["href"].value = "javascript:void(0)";
	letramaior.attributes["href"].value = "javascript:void(0)";
	
	// relaciona a função "behavior_tamanhoDaLetra" com cada link
	addEvent(letramenor, tamanhoDaLetra_EVENTTYPE, behavior_tamanhoDaLetra);
	addEvent(letramaior, tamanhoDaLetra_EVENTTYPE, behavior_tamanhoDaLetra);	
}

/* ---------------------------------------------------
	Comportamento da select box links rápidos   
--------------------------------------------------- */

behavior_linksRapidos = function()
{	
		var selectbox = document.getElementById("select-links-rapidos");
		
		for (i=0; i<selectbox.options.length; i++) {
			if (selectbox.options[i].selected)
				if (selectbox.options[i].value != null)
					document.location.href = selectbox.options[i].value;
		}
}

init_linksRapidos = function()
{		
		var selectbox = document.getElementById("select-links-rapidos");
		
		selectbox.style.marginRight = "0";
		
		document.getElementById("submit-links-rapidos").style.display = 'none';				
		
		addEvent(selectbox, "change", behavior_linksRapidos);				
}

/* -----------------------------------------------------------------
	Comportamento do campo (termo) do formulário de busca 
------------------------------------------------------------------ */

behavior_buscaTexto_focus = function()
{
	var campo = document.getElementById("form-busca-texto");
	
	if (campo.value == "O que deseja buscar?")
		campo.value = "";   
}

behavior_buscaTexto_blur = function()
{
	var campo = document.getElementById("form-busca-texto");
	
	if (campo.value.split(" ").join("") == "")
		campo.value = "O que deseja buscar?";   
}

init_buscaTexto = function()
{
	var campo = document.getElementById("form-busca-texto");
	
	addEvent(campo, "focus", behavior_buscaTexto_focus);
	addEvent(campo, "blur", behavior_buscaTexto_blur);	
}


/* -------------------------
	Painel Inteligente 
------------------------- */

var divs_painelInteligente_array = new Array();

behavior_painelInteligente = function(e)
{
	// variável: evento, com o objeto que contém informações sobre o evento que executou esta função    
	var evento = (typeof(e) == 'undefined') ? window.event : e;
	
	// variável: autor_do_disparo, com uma referência para o elemento que disparou o evento 
	var autor_do_disparo = evento.target ? evento.target : evento.srcElement;
		
	// tratamento para asegurar que o conteúdo da variável "autor_do_disparo" é a referência para um elemento (uma tag, e não o conteúdo "texto" da tag)    
	if (autor_do_disparo.nodeType == 3)
		autor_do_disparo = autor_do_disparo.parentNode;	
		
	// recolhe todas as divs antes de abrir a div escolhida pelo usuário
	for (div in divs_painelInteligente_array)
		divs_painelInteligente_array[div].style.display = "none";
	
	// abre a div escolhida pelo usuário	
	divs_painelInteligente_array[autor_do_disparo.className].style.display = "block";
}

init_painelInteligente = function()
{
	var divs_do_documento = document.getElementsByTagName("div");
	
	// procura divs com nome de classe: painel-inteligente
	for (i=0; i<divs_do_documento.length; i++) {		
		
		// div com nome de classe: painel-inteligente      
		if (divs_do_documento[i].className == "painel-inteligente") {
			
			// array com divs filhas da div com nome de classe: painel-inteligente  
			var divs = divs_do_documento[i].getElementsByTagName("div");						
			
			// recolhendo (ocultando) as divs e preenchendo o array divs_painelInteligente_array						
			for (j=0; j<divs.length; j++) {				
				
				if (divs[j].className.lastIndexOf("conteudo") != -1) {	
				
					divs_painelInteligente_array[divs[j].className.split(" ")[1]] = divs[j];					
					
					if (j > 0)
						divs[j].style.display = "none";
				}				
			}
			
			// array com os elementos h4 da div com nome de classe: painel-inteligente  
			var hs = divs_do_documento[i].getElementsByTagName("h4");												
			
			// array com as ancoras filhas dos elementos h4 da div com nome de classe: painel-inteligente			
			for (j=0; j<hs.length; j++) {
			
				var as = hs[j].getElementsByTagName("a"); 
			
				for (l=0; l<as.length; l++) {
					as[l].attributes["href"].value = "javascript:void(0)"; 
					addEvent(as[l], "click", behavior_painelInteligente);				
				}
			}
			
			break;
		}
	}
}

/* --------------
	Login 
-------------- */

init_login = function()
{	
	if (document.getElementById("form-login"))
	{
		//...	
	}	
}

init_slideshows = function()
{
		if (document.getElementById('container-destaques')) {
			
			var banner1 = '';
			
			banner1 += '<object id="flash-destaques" style="display:block; margin: 0 auto 20px auto;" type="application/x-shockwave-flash" data="_slideshow/app/slideshow.swf" width="604" height="89">';
			banner1 += '<param name="flashvars" value="pathtoxml=_slideshow/xml/destaques&pathtoslideshow=_slideshow/app"/>';
			banner1 += '<param name="movie" value="_slideshow/app/slideshow.swf"/>';
			banner1 += '</object>';	
			
			document.getElementById('container-destaques').innerHTML = banner1;
		}
		
		if (document.getElementById('dbsites')) {
			
			var banner2 = '';
			
			banner2 += '<object id="slideshow" style="display:block; margin: 0 auto 30px auto;" type="application/x-shockwave-flash" data="_slideshow/app/slideshow.swf" width="240" height="130">';
			banner2 += '<param name="flashvars" value="pathtoxml=_slideshow/xml/mais_sites&pathtoslideshow=_slideshow/app"/>';
			banner2 += '<param name="movie" value="_slideshow/app/slideshow.swf"/>';
			banner2 += '</object>';
			
			document.getElementById('dbsites').innerHTML = banner2;
		}		
}

/* --------------
	Início  
-------------- */

init = function()
{
	init_tamanhoDaLetra();
	//init_linksRapidos();
	init_painelInteligente();	
	//init_buscaTexto();
	//init_login();
	init_slideshows();
}

addEvent = function(obj, evType, fn)
{
	if (obj.addEventListener)
		obj.addEventListener(evType, fn, false);
	
	if (obj.attachEvent)
		obj.attachEvent("on" + evType, fn);
}

addEvent(window, "load", init);