///////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////
//funções para alterar o background do texto quando se pesquisa por tema
//para chamar a função basta enviar o nome dos divs
//notitiasState('nome div que contem toda a noticia', 
// 	'nome div contem o titulo da noticia', 'nome div contem o texto da noticia')
if($('email') != null)
	verifyEmail($('email').value);

function notitiasState(divAllNot, divTitNot, divDescNot){
	var divArray = document.getElementsByTagName("div");
	for (var i = 0; i<divArray.length; i++){
		var idNoticia = divArray[i].id;
		var myRegExp = new RegExp(divAllNot, "gi" );
		var result = idNoticia.search(myRegExp);
		if(result != -1){
			var arrId = (divArray[i].id).split(divAllNot);
			var idDivNot = divDescNot + arrId[1]; 
			var idDivTNot = divTitNot + arrId[1]; 
			
			var noticiaDiv = getText($(idDivNot));
			var tituloDiv =	$(idDivTNot).innerHTML;	
			var inText = $('pesquisaTema').value;
			var regNot = new RegExp(inText, "gi" ); 
			var resultNot = noticiaDiv.search(regNot);
			var resTitulo = tituloDiv.search(regNot);
			if(resultNot != -1 || resTitulo != -1){
				$(divArray[i].id).style.visibility = 'visible';
				$(divArray[i].id).style.display = '';

				$(idDivNot).innerHTML = noticiaDiv.highlight(inText, insertSpan, false);
			}else{				
				$(divArray[i].id).style.visibility = 'hidden';
				$(divArray[i].id).style.display = 'none';
			}
		}
	}	
}

String.prototype.highlight = function(f, c, i){
    var r = this, t = /([(){}|*+?.,^$\[\]\\])/g, i = !i ? "i" : "", rf = function(t, i){
        return r.lastIndexOf("<", i) > r.lastIndexOf(">", i) ? t : c(t, p);
    };
    for(var p = -1, l = (f = f instanceof Array ? f : [f]).length; ++p < l;)
        r = r.replace(new RegExp(f[p].replace(t, "\\\$1"), "gm" + i), rf);
    return r;
}

function insertSpan(s){
    return '<span class="sublinhado">' + s + '</span>';
}
function getText(obj)
{
	var text= "";
	
	if(obj.innerText)
	    text = obj.innerText;
	else if(obj.textContent)
	    text = obj.textContent;
	else if(obj.value)
	    text = obj.value;
    
	return text;
}

function leftTrim(sString)
{
	while (sString.substring(0,1) == ' ')
	{
	sString = sString.substring(1, sString.length);
	}
return sString;
}

function rightTrim(sString)
{
	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
	sString = sString.substring(0,sString.length-1);
	}
return sString;
}

function trimAll(sString)
{
	while (sString.substring(0,1) == ' ')
	{
	sString = sString.substring(1, sString.length);
	}
	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
	sString = sString.substring(0,sString.length-1);
	}
return sString;
}

function verifyEmail(mail){
	var status = false;     
	var emailRegEx = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i;
	     if (mail.search(emailRegEx) == -1) {
	          // alert("Please enter a valid email address.");
	          var status = false;  
	     }else {
	          // alert("Woohoo!  The email address is in the correct format and they are the same.");
	          status = true;
	     }
	     return status;
}

// fim das funções que alteram o background do texto na pesquisa
///////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////

//janela pop-up do envio de emails

function dialog(numero) {
	$('resultop').innerHTML = "";
	$('resultop').style.display = 'none';
	Dialog.confirm($('msg').innerHTML, 
			{className:"alphacube", width:290, buttonClass: "btn3", okLabel: "Enviar", cancelLabel: "Cancelar",
			onOk:function(win){ 			
			if(verifyEmail($('emailamigo').value) && verifyEmail($('email').value)){
				sendMailToFriend(numero);
				//Windows.focusedWindow.updateHeight(); new Effect.Shake(Windows.focusedWindow.getId());
				return false;
			}else{
				$('msg_error_msg').innerHTML = '<span style="color: black;">E-Mail inválido.</span>';
				$('msg_error_msg').show(); Windows.focusedWindow.updateHeight(); //new Effect.Shake(Windows.focusedWindow.getId());
				return false;
			}
			}}); 
}

function sendMailToFriend(numero){
	var url = 'sendmailtofriend.do2';
	var pars = $('formemail').serialize() + '&numero=' + $('numero').value + '&action=save';
	var myAjax = new Ajax.Updater( 'resultop',
	url,
	{
		method: 'post',
		parameters: pars,
		evalScripts: true,
		onComplete: closeMyDialog
	});
}
function closeMyDialog(request)
{
	
	if(request.responseText == "1"){
		$('msg_error_msg').show();
		$('msg_error_msg').innerHTML = "<span style='color:black;'>E-Mail enviado com sucesso, espere 3 segundos...</span>";
		$('msg_error_msg').show();
		Windows.focusedWindow.updateHeight();
		setTimeout("delayEnd2()", 1000);
	}else if(request.responseText == "2"){
		$('msg_error_msg').innerHTML = "<span style='color:#FF0000;'>Formulário incompleto.</span>";
	}else{
		$('msg_error_msg').innerHTML = "<span style='color:#FF0000;'>Ocorreu um erro ao tentar enviar o e-mail.</span>";
	}
	
	$('msg_error_msg').show();
	Windows.focusedWindow.updateHeight();	
}


function delayEnd2(){
	$('msg_error_msg').innerHTML = "<span style=color:black;>E-Mail enviado com sucesso, espere 2 segundos...</span>";
	setTimeout("delayEnd1()", 1000);
}

function delayEnd1(){
	$('msg_error_msg').innerHTML = "<span style=color:black;>E-Mail enviado com sucesso, espere 1 segundos...</span>";
	setTimeout("delayEnd()", 1000);
}

function delayEnd(){
	Dialog.cancelCallback();
}

function seeMap(){
	if(clang.toUpperCase() == 'AO'){
		$('mapa').innerHTML = '<br/><p><strong>Sinfic - Miramar</strong></p><p><iframe width="550" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps/ms?msa=0&amp;msid=115168517770964791428.00045c0b03c764b91cd8d&amp;ie=UTF8&amp;t=h&amp;ll=-8.810885,13.250971&amp;spn=0.003711,0.005901&amp;z=17&amp;output=embed"></iframe></p>';
	}else{
		$('mapa').innerHTML = '<strong>Como Chegar à Sinfic:</strong></p><p><u>De Transportes Públicos:</u></p><ul><li>162 - VIMECA - Falagueira - Algés (em frente a Sinfic)</li><li>185 - VIMECA - Marquês de Pombal - Hospital Amadora Sintra (Montepio - Lateral a Sinfic)</li><li>799 - CARRIS - Colégio Militar - Alfragide Norte - (Montepio - Lateral a Sinfic)</li></ul><br/><p><strong>Sinfic - Alfragide</strong></p><p><iframe height="350" marginheight="0" src="http://maps.google.com/maps/ms?msa=0&msid=100268651672065322559.0004372ca44fe629b84ba&ie=UTF8&t=h&source=embed&ll=38.741055,-9.223806&spn=0.002929,0.005901&z=17&output=embed" frameborder="0" width="550" marginwidth="0" scrolling="no" /></p>';
	}
}

function closeMenuLateral(){
	SetCookie( "selopt", "" );
	SetCookie( "lastopend", "" );
}

function restartBreadcrumb(){
	SetCookie("breadcrumb", "");
	SetCookie("breadcrumbtitulo", "");
}

/////////////////////////////////////////////////////////////////////////////

//janela pop-up do envio de emails

function dialogFaleConosco() {
	$('resultadofl').innerHTML = "";
	$('resultadofl').style.display = 'none';
	Dialog.confirm($('msgfl').innerHTML, 
			{className:"alphacube", width:290, buttonClass: "btn3", okLabel: "Enviar", cancelLabel: "Cancelar",
			onOk:function(win){ 			
			if(verifyEmail($('email').value) && $('nome').value != '' && $('mensagem').value != ''){
				sendMailFaleConosco();
				//Windows.focusedWindow.updateHeight(); new Effect.Shake(Windows.focusedWindow.getId());
				return false;
			}else if($('nome').value == ''){
				$('msg_error_msg').innerHTML = '<span style="color: black;">Nome é de preenchimento obrigatório.</span>';
				$('msg_error_msg').show(); Windows.focusedWindow.updateHeight(); //new Effect.Shake(Windows.focusedWindow.getId());
				return false;
			}else if(!verifyEmail($('email').value)){
				$('msg_error_msg').innerHTML = '<span style="color: black;">E-Mail inválido.</span>';
				$('msg_error_msg').show(); Windows.focusedWindow.updateHeight(); //new Effect.Shake(Windows.focusedWindow.getId());
				return false;
			}else if($('mensagem').value == ''){
				$('msg_error_msg').innerHTML = '<span style="color: black;">Mensagem é de preenchimento obrigatório.</span>';
				$('msg_error_msg').show(); Windows.focusedWindow.updateHeight(); //new Effect.Shake(Windows.focusedWindow.getId());
				return false;
			}
			}}); 
}

function sendMailFaleConosco(){
	var url = 'fconnosco.do2';
	var pars = $('formemailfl').serialize() + '&action=save';
	var myAjax = new Ajax.Updater( 'resultadofl',
	url,
	{
		method: 'post',
		parameters: pars,
		evalScripts: true,
		onComplete: closeMyDialogFL
	});
}
function closeMyDialogFL(request)
{
	
	if(request.responseText == "1"){
		$('msg_error_msg').show();
		$('msg_error_msg').innerHTML = "<span style='color:black;'>E-Mail enviado com sucesso, espere 3 segundos...</span>";
		$('msg_error_msg').show();
		Windows.focusedWindow.updateHeight();
		setTimeout("delayEndFL2()", 1000);
	}else if(request.responseText == "2"){
		$('msg_error_msg').innerHTML = "<span style='color:#FF0000;'>Formulário incompleto.</span>";
	}else{
		$('msg_error_msg').innerHTML = "<span style='color:#FF0000;'>Ocorreu um erro ao tentar enviar o e-mail.</span>";
	}
	
	$('msg_error_msg').show();
	Windows.focusedWindow.updateHeight();	
}


function delayEndFL2(){
	$('msg_error_msg').innerHTML = "<span style=color:black;>E-Mail enviado com sucesso, espere 2 segundos...</span>";
	setTimeout("delayEndFL1()", 1000);
}

function delayEndFL1(){
	$('msg_error_msg').innerHTML = "<span style=color:black;>E-Mail enviado com sucesso, espere 1 segundos...</span>";
	setTimeout("delayEndFL()", 1000);
}

function delayEndFL(){
	Dialog.cancelCallback();
}
